=== release 1.21.2 === 2022-11-07 23:53:59 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.21.2 2022-11-07 23:53:57 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.21.2 2020-12-08 16:55:26 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: srt: Add a property to disable automatic reconnect This adds a new boolean property `auto-reconnect`, defaulting to `true`. Setting it to `false` makes the elements (in caller mode) immediately report an error to the application instead of trying to reconnect. Part-of: 2022-10-26 18:04:17 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasetransform.c: vabasetransform: Fail if cannot import the input buffer. Otherwise got a buffer double free. Part-of: 2022-11-06 01:53:46 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturedshow.cpp: * sys/mediafoundation/gstmfcapturedshow.h: * sys/mediafoundation/gstmfdevice.cpp: * sys/mediafoundation/gstmfsourceobject.cpp: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmfvideosrc.cpp: * sys/mediafoundation/meson.build: mfvideosrc: Add support for DirectShow capture filter Adding DirecShow video capture filter mode, in addition to existing MediaFoundation and WinRT(UWP) mode, to support DirectShow only filters (not KS driver compatible) such as custom virtual camera filters. Part-of: 2021-12-01 16:23:41 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: * gst/rtmp2/rtmp/rtmpclient.c: rtmp2: Improve error messages Part-of: 2021-12-01 16:04:24 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2/connection: Pass triggering GError in 'error' signal Part-of: 2021-12-01 16:02:53 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2/connection: Pass triggering GError to _emit_error Part-of: 2021-12-01 16:01:10 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2/connection: Discern reasons for cancelling all commands Part-of: 2021-12-01 15:53:13 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2/connection: Handle EOF like error Part-of: 2021-12-01 15:49:22 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpclient.c: rtmp2/client: Make sure 'salt' is not NULL Part-of: 2021-12-01 15:46:42 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpclient.c: rtmp2/client: Make sure 'reason' is not NULL Part-of: 2021-12-01 16:13:42 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpclient.c: rtmp2/client: Make sure 'desc' is not NULL Part-of: 2021-12-01 16:11:31 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpclient.c: rtmp2/client: Make sure 'code' is not NULL Part-of: 2022-11-07 07:45:53 +0100 Edward Hervey * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcstats.c: * ext/webrtc/transportstream.c: * ext/webrtc/utils.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcsdp.c: webrtcbin: Don't duplicate enum string values Some were leaked when debugging was enabled. Instead just directly use the static strings as-is. Part-of: 2022-11-04 14:24:58 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: * gst/debugutils/gstvideocodectestsink.c: videocodectestsink: Add YUV422 support Part-of: 2022-11-05 21:35:08 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11videosink: Always clear back buffer on resize Swapchain may not need to be resized if the size of backbuffer is equal to the previous size. Then previously rendered frame will be stay on the screen. Do clear back buffer whenever resize() is called Part-of: 2022-11-05 00:00:43 +0900 Seungha Yang * sys/qsv/gstqsvallocator_va.cpp: qsv: Fix encoding error when input memory belongs to other GPU Copy frame if VA display of input buffer is different from that of encoder, like we've been doing on Windows Part-of: 2022-11-04 21:52:39 +0800 He Junyan * sys/va/gstvabaseenc.c: va: baseenc: Do not import the VA surface from other display. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1167 Part-of: 2022-11-04 21:26:23 +0800 He Junyan * sys/va/gstvacompositor.c: va: compositor: Do not use allocator and pool from other display. Just like the va decoder, the compositor should not use allocator and pool from other display. Also, when importing the input buffer, if it is from other display, we should fallback to memory copy. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1167 Part-of: 2022-11-04 17:12:22 +0800 He Junyan * sys/va/gstvabasetransform.c: va: basetransform: Do not use allocator and pool from other display. Just like the va decoder, the vpp and deinterlace should not use allocator and pool from other display. Also, when importing the input buffer, if it is from other display, we should fallback to memory copy. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1167 Part-of: 2022-11-04 17:08:12 +0800 He Junyan * sys/va/gstvabasedec.c: va: basedec: Do not use allocator and pool from other display. The command line such as: gst-launch-1.0 -vf filesrc location=1.264 ! h264parse ! vah264dec ! varenderD129postproc ! fakesink The decoder here gets the allocation proposal from the vpp which is on another GPU device. The allocator and pool belong to other display and should not be used in the decoder. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1167 Part-of: 2022-11-04 20:28:34 +0800 He Junyan * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvaallocator.h: libs: va: Add API to peek the va buffer's display. Part-of: 2022-11-04 20:28:34 +0800 He Junyan * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvaallocator.h: libs: va: Add API to peek the va memory's display. Part-of: 2022-11-04 17:06:37 +0800 He Junyan * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvaallocator.h: libs: va: Add API to peek the allocator's display. Part-of: 2022-11-04 17:03:35 +0800 He Junyan * gst-libs/gst/va/gstvaallocator.h: libs: va: Fix code style in gstvaallocator.h Replace all tabs with spaces. Part-of: 2022-11-05 05:32:52 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Update plugin description Direct3D is too generic (there are various version numbers). Clarify that this element is using the Direct3D9 API Part-of: 2022-11-04 08:41:10 +0100 Edward Hervey * ext/lv2/gstlv2.c: lv2: Don't leak plugin information on registration Part-of: 2022-11-04 08:40:24 +0100 Edward Hervey * ext/ladspa/gstladspa.c: ladspa: Don't leak plugin information on registration Part-of: 2022-11-04 08:09:52 +0100 Edward Hervey * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Properly terminate GEnumValue table It should be terminated with a NULL entry, otherwise we just stray into the realms of cryptographic libraries^W^W random memory usage. Part-of: 2022-07-27 15:59:35 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Remove callers for which srt_bstats fails This keeps them from accumulating in the element and in the stats while the sink is not being fed, as long as we at least periodically grab stats. Part-of: 2022-07-29 11:53:18 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Use simpler list operations for callers Avoid `g_list_append` and `g_list_remove` (which have to scan the list) and replace them with `g_list_prepend` and `g_list_delete_link`. Part-of: 2020-11-10 10:06:37 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Clean up poll/sock lifecycle Make sure `srtobject->poll_id` is never invalid as long as `srtobject` exists. Only remove our caller socket from it when the socket becomes invalid. Part-of: 2022-06-08 16:35:54 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Clean up error handling - Make the srt_epoll_wait loops more uniform. - Error only via GError when possible; let the element send the error message. Avoids a second error message. - Return 0 when cancelled. Avoids an error message from the element. - Don't send an error message from send_headers when we're a server sink. Part-of: 2022-10-11 11:14:59 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Simplify socket stats Don't hide stats depending on whether we're a sending or receiving socket. While we're here, add some more debug logs. Part-of: 2020-10-05 19:50:13 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: srt: Replace stats accumulation with naive byte counting srt_bstats cannot be used to get the stats of closed connections, so the best we can do is keep the running count ourselves. Part-of: 2022-11-04 18:32:05 +0900 Seungha Yang * sys/directshow/gstdshow.cpp: directshow: Validate enumerated AM_MEDIA_TYPE struct The video info struct can be null if format is undefined Part-of: 2022-11-03 23:40:00 +0900 Seungha Yang * tests/examples/d3d11/d3d11decoder-appsink.cpp: * tests/examples/d3d11/d3d11videosink-present.cpp: examples: d3d11: Fix GCC build error/warning Part-of: 2022-11-03 05:18:03 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/qsv/gstqsvjpegenc.cpp: qsvjpegenc: Add support for YUY2 format Now GstD3D11 defines YUY2 format Part-of: 2022-11-03 05:12:31 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/qsv/gstqsvallocator.cpp: * sys/qsv/gstqsvallocator.h: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvjpegdec.cpp: * sys/qsv/gstqsvjpegdec.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Add JPEG decoder Because DXVA does not define JPEG decoding, we need this vendor specific API for Windows Part-of: 2022-11-03 03:38:33 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/d3d11/gstd3d11-private.h: * gst-libs/gst/d3d11/gstd3d11converter.cpp: * gst-libs/gst/d3d11/gstd3d11device.cpp: d3d11: Add support for YUY2 format YUY2 is a primary YUV 4:2:2 format for DXVA. Part-of: 2022-11-01 09:47:38 +0800 Tong Wu * sys/msdk/gstmsdkcontext.c: msdkcontext: use gst_object_unref instead of g_object_unref Part-of: 2022-10-31 16:59:18 +0800 Tong Wu * sys/msdk/gstmsdkcontext.c: msdkcontext: use gst_object_ref for GstVaDisplay Part-of: 2022-10-31 16:56:32 +0800 Tong Wu * sys/msdk/gstmsdkcontext.c: msdkcontext: g_object_new() must not return nullptr Part-of: 2022-10-31 16:52:23 +0800 Tong Wu * sys/msdk/gstmsdkenc.c: msdkenc: use GST_CAPS_FEATURE_MEMORY_VA to check the feature Add macros to protect sinkpad_is_va(), since it is not defined on Windows. Part-of: 2022-11-01 12:03:24 +0100 Guillaume Desmottes * ext/wpe/gstwpevideosrc.cpp: wpe: fix wpevideosrc gst-play example wpe:// no longer works since 1.20, see wpesrc examples. Part-of: 2022-10-27 10:03:34 -0400 Eric Knapp * sys/va/gstvah264enc.c: vah264enc: Added option to insert CEA-708 closed captions Part-of: 2022-11-01 22:19:18 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/qsv/gstqsvav1enc.cpp: * sys/qsv/gstqsvh264dec.cpp: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265dec.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvjpegenc.cpp: * sys/qsv/gstqsvutils.h: * sys/qsv/gstqsvvp9dec.cpp: * sys/qsv/gstqsvvp9enc.cpp: qsv: Check 16K resolution support ... and remove duplicated code Part-of: 2021-05-14 10:24:05 +0200 Marijn Suijten * gst-libs/gst/vulkan/gstvkimageview.c: * gst-libs/gst/vulkan/gstvkimageview.h: vulkan: Mark gst_vulkan_image_view_new create_info as constant pointer Part-of: 2021-01-05 22:33:12 +0100 Marijn Suijten * gst-libs/gst/vulkan/gstvkcommandpool.c: * gst-libs/gst/vulkan/gstvkdescriptorpool.c: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: * gst-libs/gst/vulkan/gstvkqueue.c: vulkan: Remove unnecessary null checks These null checkes are slightly misleading when double-checking mutability for external language interop. None of the functions in these files allow the variable at hand to become `NULL` under normal operation, because they are checked at initialization and never (allowed to be) reassigned to `NULL`. Part-of: 2021-01-04 01:07:04 +0100 Marijn Suijten * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkqueue.c: vulkan: Add missing `(nullable)` annotation to `Returns` Most of these functions already state they might return `%NULL`, but this is not picked up by G-IR. Part-of: 2021-01-04 00:40:24 +0100 Marijn Suijten * gst-libs/gst/vulkan/gstvkdescriptorcache.c: * gst-libs/gst/vulkan/gstvkdescriptorpool.c: * gst-libs/gst/vulkan/gstvkdescriptorset.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkwindow.c: vulkan: Add missing `array length` and `(out)` annotation to parameters Add `array length` annotation for `layouts` such that `n_layouts` is properly marked as its length, and add `(out)` where a function returns in that parameter. Part-of: 2022-11-01 02:00:33 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Fix for VP9 decoding with odd resolution Fixing off by one mismatch when width and/or height of stream is odd number Part-of: 2022-10-28 03:25:38 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/qsv/gstqsvallocator.cpp: * sys/qsv/gstqsvallocator.h: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvvp9dec.cpp: * sys/qsv/gstqsvvp9dec.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Add VP9 decoder Recent Intel GPU supports 12bits VP9 decoding but only VP9 profile2 with 10bits is defined by DXVA spec. Thus, we need this vendor specific decoder element Part-of: 2022-10-30 19:01:54 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.cpp: d3d11vp9dec: Disallow Profile2 12bits stream Since DXVA does not support the format, specify bit-depth field to sinkpad template caps so that d3d11vp9dec can be skipped during autoplugging Part-of: 2022-10-30 18:37:55 +0900 Seungha Yang * gst/videoparsers/gstvp9parse.c: vp9parse: Set subsampling to src caps even if GBR stream Some muxer elements will need the subsampling information Part-of: 2022-10-30 18:35:08 +0900 Seungha Yang * gst/videoparsers/gstvp9parse.c: vp9parse: Delaying src caps until frame is parsed if profile > 0 subsampling and/or bitdepth information will be required for negotiation Part-of: 2022-10-29 16:17:53 +0530 Sanchayan Maity * docs/plugins/gst_plugins_cache.json: * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Update documentation to clarify bitrate and peak-bitrate bitrate property is only applicable for constant bitrate and peak-bitrate is only applicable for variable bitrate. Clarify the same. 2022-10-29 12:19:58 +0530 Sanchayan Maity * docs/plugins/gst_plugins_cache.json: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/gstfdkaacenc.h: fdkaacenc: Add support for setting bitrate mode 2021-01-31 22:00:36 +0530 Sanchayan Maity * docs/plugins/gst_plugins_cache.json: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/gstfdkaacenc.h: fdkaacenc: Add support for setting peak bitrate 2021-01-23 18:35:12 +0530 Sanchayan Maity * docs/plugins/gst_plugins_cache.json: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/gstfdkaacenc.h: fdkaacenc: Add support for enabling afterburner This is an additional quality parameter. In the default configuration this quality switch is deactivated because it would cause a workload increase which might be significant. If workload is not an issue in the application it can be recommended to activate this feature. 2020-11-26 19:23:11 +0530 Sanchayan Maity * ext/fdkaac/gstfdkaacdec.c: fdkaacdec: Do not report decoding error for flush request A flush request is done when set_format is called to empty internal bit buffer maintained by fdk-aac. When this happens, during the explicit call to handle_buffer, decodeFrame does not return a AAC_DEC_OK. This gets reported as a decoding error while no decoding error in fact took place. Since this can be confusing, just return a GST_FLOW_OK and log that an explicit flush was requested. 2022-10-25 13:22:30 +1100 Matthew Waters * gst-libs/gst/codecparsers/gstvp9parser.c: vp9parser: initialize subsampling to -1 The default value of 0 is a valid subsampling value and could be confused with an 'unset' value. Part-of: 2022-10-27 14:20:37 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: vaencoder: Reset attribute index to one. Further fix to 4ffb3663 where I forgot to reset the attribute index. Part-of: 2022-10-03 15:20:24 -0300 Thibault Saunier * ext/dash/gstdashdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Minor typo fix Part-of: 2022-09-20 15:32:52 -0300 Thibault Saunier * ext/dash/gstmpdclient.c: dash: Fix computing `repeat_index` when seeking in stream with a start !=0 on the first fragment Part-of: 2022-10-27 15:21:30 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265bitwriter.c: * gst-libs/gst/codecparsers/gsth265bitwriter.h: * tests/check/libs/h265bitwriter.c: h265bitwriter: Correct the all API to byte aligned. In fact, all the h265 bit writer have byte aligned output. So we change the API from bit size in unit to byte size, which is easy to use. Part-of: 2022-10-27 13:42:17 +0800 He Junyan * gst-libs/gst/codecparsers/gsth264bitwriter.c: * gst-libs/gst/codecparsers/gsth264bitwriter.h: * sys/va/gstvah264enc.c: * tests/check/libs/h264bitwriter.c: h264bitwriter: Correct the all API to byte aligned. In fact, all the h264 bit writer have byte aligned output except the slice header. So we change the API from bit size in unit to byte size, which is easy to use. For slice header, we add a extra "trail_bits_num" to return the unaligned bits number. Part-of: 2022-10-27 14:40:49 +0800 He Junyan * gst-libs/gst/codecparsers/gsth264bitwriter.c: * gst-libs/gst/codecparsers/gsth265bitwriter.c: bitwriter: Fix a nal conversion bug when input is not byte aligned. Part-of: 2022-10-24 11:56:51 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkvpp.c: msdkvpp: Set va mem caps as higher priority We use va pool as msdkvpp's bufferpool, which means both va memory and dma memory will be allocated by va pool. Considering drm modifier stuff is not ready, we use va memory with higher priortiry than dma memory when deciding vpp caps. Besides, this patch removes the specified "interlace-mode" in vpp caps. Part-of: 2022-10-18 03:36:23 +0000 Mengkejiergeli Ba * sys/msdk/gstmsdkav1enc.c: * sys/msdk/gstmsdkav1enc.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkav1enc: Remove reorder TU workaround Part-of: 2022-10-18 03:10:43 +0000 Mengkejiergeli Ba * sys/msdk/gstmsdkav1enc.c: * sys/msdk/gstmsdkav1enc.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkav1enc: Remove pts workaround Part-of: 2022-10-27 04:15:01 +0900 Seungha Yang * gst-libs/gst/codecparsers/meson.build: codecparsers: {h264,h265}bitwriter: Don't install headers yet Those APIs are quite early stage of development, and we might want to change them in the near future Part-of: 2022-10-18 16:34:41 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkvpp.c: msdkvpp: Fix upper frc Refact vpp commit 4c6b7194451ff6fbfe88834219d982302114d74b broke the upper FRC, here to fix this by using outbuf_new. Part-of: 2022-07-29 18:15:08 +0800 Mengkejiergeli Ba * docs/plugins/gst_plugins_cache.json: * sys/msdk/gstmsdkav1enc.c: bad: Add msdkav1enc docs Part-of: 2022-10-25 08:14:18 -0400 Nicolas Dufresne * gst/codecalpha/gstalphacombine.c: alphacombine: Add missing query handler for gaps The gap handling was in place, but there was no event handler to trigger it. Implement the alpha sink event handler for the gaps. This fixes handling of valid streams which may not refresh the alpha frames for every video frames. It will also allow a clean error if the stream was missing the initial alpha frame, at least until we find a better way to handle these invalid frames. Related to #1518 Part-of: 2022-10-26 11:47:43 +0200 Ignacio Casal Quinteiro * sys/applemedia/avfdeviceprovider.m: avfdeviceprovider: do not leak the properties Part-of: 2022-10-21 10:57:39 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: vaencoder: Fix caps semantics. When using gst_va_caps_from_profiles() the semantics of sink/src caps depends if the element is an encoder or a decoder. Part-of: 2022-10-19 16:44:07 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: * sys/va/gstvaencoder.c: va: Fix typos. Part-of: 2022-08-11 12:51:17 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvah264enc.c: vah264enc: Fail if unsupported rate control. Handle when encoder doesn't support rate control, which is set as VA_RC_NONE, and if the set rate control mode is not supported by the GStreamer element, the element configuration fails. Also it logs out max and target bitrate. Part-of: 2022-09-15 12:56:14 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Add todo item. Part-of: 2022-10-19 16:08:17 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: vaencoder: Honor entrypoint at constructor. The entrypoint is set when the encoder helper is constructed, nonetheless it was also passed as parameter when opening. That's buggy. In order to simplify the code, the entrypoint at construction is honored. But gst_va_encoder_has_profile_and_entrypoint() now doesn't rely in the internal list of profiles since it only contains those that belongs to codec and entrypoint, thus it queries directly the VA driver. Part-of: 2022-08-11 12:50:27 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.c: vabaseenc: Scope error bail out. Though this is not enforced by the GStreamer code style, it's clearer to add a nested scope for error handling using label/goto. Part-of: 2022-09-20 15:00:15 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.c: * sys/va/gstvabaseenc.h: * sys/va/gstvah264enc.c: vabaseenc: Use class entrypoint. Add a macro to access to class entrypoint and use it instead of move it to a variable. Part-of: 2022-10-26 02:55:34 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11-private.h: * gst-libs/gst/d3d11/gstd3d11format.h: d3d11: Move format defines to private header Those defines will be likely changed/deleted in the future, and we don't need to expose them to public at the moment Part-of: 2022-10-25 09:39:07 +0300 Sebastian Dröge * gst-libs/gst/transcoder/gsttranscoder.c: * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/vulkan/gstvkerror.c: Fix various warnings from gobject-introspection Part-of: 2022-10-22 11:13:10 +0100 Tim-Philipp Müller * tests/check/elements/fdkaac.c: * tests/check/meson.build: fdkaac: add minimal unit test Part-of: 2022-10-22 11:10:24 +0100 Tim-Philipp Müller * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: fix output caps in case of implicit signaling and HE-AAC Need to put the actual profile in the output caps otherwise any capsfilter after the encoder that was used to force the output profile will fail, such as fdkaacenc ! audio/mpeg,stream-format=adts,profile=he-aac-v1 ! .. because we put profile=lc in there to match the profile signaled in the ADTS header. This is expressed through the base-profile=lc in the GStreamer caps though, the profile needs to carry the 'real' profile. Part-of: 2022-10-21 17:10:57 +0100 Tim-Philipp Müller * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: don't set base-profile=lc for non-backwards compatible output Part-of: 2022-10-21 13:15:29 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: rename profile=sbr|ps to profile=he-aac-v1|he-aac-v2 Part-of: 2022-03-01 14:12:27 +0100 Piotrek Brzeziński * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: add support for AAC-LD Part-of: 2022-02-23 17:17:25 +0100 Piotrek Brzeziński * docs/plugins/gst_plugins_cache.json: * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: add support for HE-AACv1 and HE-AACv2 Part-of: 2022-10-22 04:28:03 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: gst-plugins-bad: Update Windows plugins cache Add/update d3d11, qsv, nvcodec, wic, directshow, and amfcodec plugins cache Part-of: 2022-10-22 03:02:56 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: * sys/nvcodec/gstnvencoder.cpp: * sys/nvcodec/gstnvh264encoder.cpp: * sys/nvcodec/gstnvh265encoder.cpp: nvcodec: Update for documentation * Use GST_PARAM_DOC_SHOW_DEFAULT flags for GPU ID related properties * Fix some typos * Add since markers Part-of: 2022-10-22 02:59:13 +0900 Seungha Yang * sys/mediafoundation/gstmfaudiodecoder.cpp: * sys/mediafoundation/gstmfaudioencoder.cpp: * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoencoder.cpp: * sys/mediafoundation/gstmfvp9enc.cpp: mediafoundation: Update for documentation * Use GST_PARAM_DOC_SHOW_DEFAULT flags for GPU ID related properties * Add doc caps * Add since markers Part-of: 2022-10-22 04:09:39 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoencoder.cpp: mfvideoencoder: Document only hardware encoders Part-of: 2022-10-22 22:37:33 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoencoder.cpp: mfvideoencoder: Fix device enumeration Although a GPU does not support the codec, the other GPU might be able to support the codec Part-of: 2022-10-22 02:56:23 +0900 Seungha Yang * sys/amfcodec/gstamfh264enc.cpp: * sys/amfcodec/gstamfh265enc.cpp: amfcodec: Update for documentation * Use GST_PARAM_DOC_SHOW_DEFAULT flags for GPU ID related properties * Add doc caps Part-of: 2022-10-22 02:53:16 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvencoder.cpp: qsv: Use GST_PARAM_DOC_SHOW_DEFAULT flag Part-of: 2022-10-22 02:49:00 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11videosink.cpp: d3d11: Update for documentation * Use GST_PARAM_DOC_SHOW_DEFAULT flags for GPU ID related properties * Add doc caps * Increase deinterlace max resolution Part-of: 2022-10-22 02:48:23 +0900 Seungha Yang * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11winrtcapture.cpp: d3d11: Run indent Part-of: 2022-10-22 22:33:01 +0900 Seungha Yang * sys/wic/plugin.cpp: wic: Add since marker Part-of: 2022-10-22 03:12:19 +0900 Seungha Yang * sys/directshow/plugin.cpp: directshow: Add since marker Part-of: 2022-10-21 23:20:47 +0900 Seungha Yang * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_config.cpp: * sys/qsv/libmfx/meson.build: * sys/qsv/meson.build: qsv: Enable MinGW toolchain support Use PCRE regex method to work around (likely) GCC std::regex bug, and enable building for non-MSVC Part-of: 2022-10-21 21:50:01 +0530 Nirbheek Chauhan * gst-libs/gst/vulkan/cocoa/gstvkcocoa_utils.h: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m: * gst-libs/gst/vulkan/ios/gstvkios_utils.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: gl/vulkan: Fix static linking on macOS duplicate symbol '__invoke_on_main' in: /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstvulkan-1.0.a(cocoa_gstvkwindow_cocoa.m.o) /Library/Frameworks/GStreamer.framework/Versions/1.0/lib/libgstgl-1.0.a(cocoa_gstglwindow_cocoa.m.o) ld: 1 duplicate symbol for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) Also make the same change in iOS for consistency. Continuation of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1132 Part-of: 2022-10-18 17:05:41 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: configure rtpulpfecdec passthrough property This allows downstream (payloaders mostly) to be able to correctly detect actual packet loss from rtp sequence numbers. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/581 for background. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1407 Part-of: 2022-10-07 04:20:29 +0900 Seungha Yang * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11screencapture.h: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11winrtcapture.cpp: * sys/d3d11/gstd3d11winrtcapture.h: * sys/d3d11/meson.build: d3d11screencapture: Add WinRT API based capture mode Add Windows Graphics Capture (WGC) API based screen capture mode. The conditions where this mode is used: * Explicitly requested by user (capture-api property) * To capture specific window * When DXGI desktop duplication API does not work on hybrid graphics systems (e.g., multi-gpu laptop) Full features of this implementation require Windows 11. And Windows 11 SDK is required to build this feature. Part-of: 2022-10-06 23:54:14 +0900 Seungha Yang * sys/d3d11/gstd3d11dxgicapture.cpp: * sys/d3d11/gstd3d11dxgicapture.h: * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11screencapture.h: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/meson.build: d3d11screencapture: Subclassing capture implementation Preparation to use WinRT capture API Part-of: 2022-10-21 19:08:49 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/qsv/gstqsvav1enc.cpp: * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvh264dec.cpp: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265dec.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvjpegenc.cpp: * sys/qsv/gstqsvvp9enc.cpp: * sys/qsv/plugin.cpp: qsv: Add plugin doc Part-of: 2022-07-09 05:38:05 +0900 Seungha Yang * sys/qsv/libmfx/api/vpl/mfx.h: * sys/qsv/libmfx/api/vpl/mfxcommon.h: * sys/qsv/libmfx/api/vpl/mfxdefs.h: * sys/qsv/libmfx/api/vpl/mfxencodestats.h: * sys/qsv/libmfx/api/vpl/mfxjpeg.h: * sys/qsv/libmfx/api/vpl/mfxstructures.h: * sys/qsv/libmfx/api/vpl/mfxvideo++.h: * sys/qsv/libmfx/api/vpl/mfxvideo.h: * sys/qsv/libmfx/dispatcher/linux/device_ids.h: * sys/qsv/libmfx/dispatcher/linux/mfxloader.cpp: * sys/qsv/libmfx/dispatcher/linux/mfxloader.h: * sys/qsv/libmfx/dispatcher/linux/mfxvideo_functions.h: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl.h: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_config.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_loader.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_lowlatency.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_msdk.cpp: * sys/qsv/libmfx/dispatcher/windows/main.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_critical_section.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_critical_section.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher_defs.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher_log.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher_log.h: * sys/qsv/libmfx/dispatcher/windows/mfx_driver_store_loader.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_driver_store_loader.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dxva2_device.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_dxva2_device.h: * sys/qsv/libmfx/dispatcher/windows/mfx_exposed_functions_list.h: * sys/qsv/libmfx/dispatcher/windows/mfx_function_table.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_library_iterator.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_library_iterator.h: * sys/qsv/libmfx/dispatcher/windows/mfx_load_dll.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_load_dll.h: * sys/qsv/libmfx/dispatcher/windows/mfx_vector.h: * sys/qsv/libmfx/dispatcher/windows/mfx_win_reg_key.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_win_reg_key.h: * sys/qsv/libmfx/dispatcher/windows/mfxvideo++.h: * sys/qsv/libmfx/dispatcher/windows/version.rc.in: * sys/qsv/libmfx/meson.build: qsv: Update SDK version to v2022.2.4 See release note https://github.com/oneapi-src/oneVPL/releases/tag/v2022.2.0 Part-of: 2022-10-14 16:05:28 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Correct the pts for frames and OBUs inside a TU. When the output alignment is smaller than the input alignment, for example, When the output alignment is "FRAME" and the parse is likely connecting to a decoder, the current PTS setting for AV1 frames inside a TU is not very correct. For example, a TU may begin with non-displayed frames and end with a displayed frame. The current way will assign the PTS to the first non-displayed frame, which is a decode-only frame and the PTS will be discarded in the video decoder. While the last displayed frame has invalid PTS, and so the video decoder needs to guess its PTS based on the frame rate and previous frame's PTS. This is not a decent and robust way. And more important, when the previous frames provide DTS, the video decoder will also guess the PTS based on the previous frames' DTS and trigger the warning like: gstvideodecoder.c:3147:gst_video_decoder_prepare_finish_frame: \ decreasing timestame It sets the reordered_output and makes the decoder in free run mode. We should correct the PTS for a TU, let the non-displayed frames have no PTS while set the correct PTS to the displayed one. Also, when the AV1 stream has multi spatial layers, there are more than one displayed frames inside one TU with the same PTS. Note: If the input alignment is not TU aligned, we can not know the exact PTS of this TU, and so we just clear the PTS of the decode only frame and leave others unchanged. We also correct all the PTS if the output is OBU aligned. All their PTS and DTS are set to the input buffer's PTS. Part-of: 2022-10-14 17:25:45 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Only check the TU bound when the alignment is TU. Part-of: 2022-10-14 15:46:16 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: push all data once when input alignment not smaller than output. When the incoming data has big alignment than the output, we do not need to call finish_frame() and exit the current handle_frame() for each splitted frame. We can push them all at one shot with in one handle_frame(), whcih may improve the performance and can help us to find the edge of TU. Part-of: 2022-10-14 15:27:52 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Set the output buffer flags correctly. The current code forgets to clear some flags and has some typo. Part-of: 2022-10-21 10:50:36 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: also add rtcp-fb ccm fir for video mlines by default In addition to the 'nack pli' already added. Both are supported by rtpbin/rtpsession by default already. Part-of: 2022-10-19 16:03:55 +0900 Sangchul Lee * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: webrtcbin: Improve documentation of 'turn-server' property Description about how to set time-limited credentials is added. Part-of: 2022-09-23 18:25:41 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * gst/debugutils/gstfakeaudiosink.c: * gst/debugutils/gstfakesinkutils.c: * gst/debugutils/gstfakesinkutils.h: * gst/debugutils/gstfakevideosink.c: fake{video|audio}sink: don't proxy properties at instance init. Instead proxy properties from the GstBaseSink class at class_init time, and duplicate the rest of the fakesink properties manually. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1442 Part-of: 2022-10-18 11:16:20 +0200 Alba Mendez * gst-libs/gst/webrtc/nice/nice.c: webrtcbin: support adding TURN servers after pipeline start Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1680 When a TURN server is added for the first time, propagate the change to all nice streams that already exist. This lets us add servers after the pipeline has been started (and streams have been added). Part-of: 2022-10-17 06:48:12 -0500 Fabian Orccon * ext/srtp/meson.build: srtp: Fix test skipping when plugin option is disabled Part-of: 2022-10-14 00:17:52 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * tests/examples/d3d11/d3d11videosink-present.cpp: d3d11videosink: Add "emit-present" property Controls the decision for "present" signal use, and allows delayed "present" signal handler install via the property Part-of: 2022-10-17 19:36:13 +0300 Sebastian Dröge * gst-libs/gst/play/gstplay-signal-adapter.c: play: Add/fix various annotations Part-of: 2022-10-17 11:29:02 +0300 Sebastian Dröge * gst-libs/gst/vulkan/android/gstvkdisplay_android.c: * gst-libs/gst/vulkan/cocoa/gstvkdisplay_cocoa.m: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkformat.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/ios/gstvkdisplay_ios.m: * gst-libs/gst/vulkan/wayland/gstvkdisplay_wayland.c: * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.c: vulkan: Add/fix various annotations And fix a memory leak in gst_vulkan_display_wayland_new() in error cases. Part-of: 2022-10-17 10:54:06 +0300 Sebastian Dröge * gst-libs/gst/d3d11/gstd3d11converter.cpp: * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11: Add/fix various annotations Part-of: 2022-10-17 10:51:42 +0300 Sebastian Dröge * gst-libs/gst/cuda/gstcudacontext.c: * gst-libs/gst/cuda/gstcudautils.c: cuda: Add/fix various annotations And fix a memory leak when creating a CUDA context fails. Part-of: 2022-10-17 10:47:02 +0300 Sebastian Dröge * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gstvp9decoder.h: codecs: Add/fix various annotations Part-of: 2022-10-17 10:44:24 +0300 Sebastian Dröge * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: badaudio: Add/fix annotations Part-of: 2022-10-14 21:51:17 +0300 Sebastian Dröge * gst-libs/gst/webrtc/ice.c: * gst-libs/gst/webrtc/ice.h: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/nice/nice.c: webrtc: Add/fix various annotations And mark string parameters as const. Part-of: 2022-10-17 00:40:46 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2client.h: * sys/wasapi2/gstwasapi2device.c: * sys/wasapi2/gstwasapi2ringbuffer.cpp: * sys/wasapi2/gstwasapi2ringbuffer.h: * sys/wasapi2/gstwasapi2sink.c: * sys/wasapi2/gstwasapi2src.c: * sys/wasapi2/gstwasapi2util.c: * sys/wasapi2/gstwasapi2util.h: wasapi2: Add support for process loopback capture Adding loopback capture mode for specified PID. Note that this feature requires Windows 10 build 20348 (Windows 11/Windows Server 2022 or later), and any process loopback related properties will not be exposed if OS does not support it. Example launch lines: * wasapi2src loopback-mode=include-process-tree loopback-target-pid= Captures audio generated by an application (specified by PID) and its child process * wasapi2src loopback-mode=exclude-process-tree loopback-target-pid= Captures desktop audio excluding PID and its child process Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1278 Part-of: 2022-10-14 16:21:07 -0400 Arun Raghavan * gst/rtmp2/gstrtmp2sink.c: rtmp2sink: Correctly return GST_FLOW_ERROR on error If there is an error while connecting, the streaming task will be stopped, and is_running() will be false, causing a GST_FLOW_FLUSHING to be returned. Instead, we perform the error check (!self->connection) first, to return an error if that's what occured. Part-of: 2022-10-14 18:51:43 +0200 Mathieu Duponchelle * gst-libs/gst/webrtc/nice/nice.c: webrtc/nice: fix small leak of split strings g_strfreev previously stopped at our manual NULL-termination. Fix by restoring the pointer after joining. Part-of: 2022-10-12 16:11:47 +0800 He Junyan * gst/videoparsers/gstvp9parse.c: vp9parse: The show_existing_frame buffer should not be decode only. Part-of: 2022-10-11 16:17:26 +0800 He Junyan * gst/videoparsers/gstvp9parse.c: vp9parse: Correct the pts for frames inside a super frame. When the alignment is "FRAME" and the parse is likely connecting to a decoder, the current PTS setting for VP9 frames inside a super frame is not very correct. For example, the super frame may begin with non-displayed frames and end with a displayed frame. The current way will assign the PTS to the first non-displayed frame, which is a decode-only frame and the PTS will be discarded in the video decoder. While the last displayed frame has invalid PTS, and so the video decoder needs to guess its PTS based on the frame rate and previous frame's PTS. This is not a decent and robust way. And more important, when the previous frames provide DTS, the video decoder will also guess the PTS based on the previous frames' DTS and trigger the warning like: gstvideodecoder.c:3147:gst_video_decoder_prepare_finish_frame: \ decreasing timestame It sets the reordered_output and makes the decoder in free run mode. We should correct the PTS for a super frame, let the non-displayed frames have no PTS while set the correct PTS to the displayed one. Part-of: 2022-10-08 00:29:03 +0200 Piotr Brzeziński * sys/applemedia/avfvideosrc.m: avfvideosrc: Allow specifying crop coordinates during screen capture Part-of: 2022-10-12 11:12:50 +0200 Edward Hervey * gst/mxf/gstmxfelement.c: * gst/mxf/meson.build: * gst/mxf/mxfcustom.c: * gst/mxf/mxfcustom.h: mxfdemux: Add support for Canon XF-HEVC Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1495 Part-of: 2022-10-12 11:12:14 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Don't leak index table segments on failures The segment was freed ... but not the contents :) Part-of: 2022-10-11 13:09:20 +0300 Sebastian Dröge * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Move GST_WEBRTC_ERROR_TYPE_ERROR at the end of the enum to keep ABI compatibility Part-of: 2022-10-06 20:37:45 +0900 Sangchul Lee * tests/check/elements/webrtcbin.c: tests/webrtc: Add test for 'add-turn-server' action signal It just checks return value of the action signal. Part-of: 2020-12-10 16:25:26 +0100 Johan Sternerup * ext/sctp/gstsctpenc.c: sctpenc: Prohibit sending of interleaved message parts Apparently we cannot start sending messages from another datachannel before the previous message was completely sent. usrsctplib will complain about being locked on another stream id and set errno=EINVAL. Part-of: 2022-10-07 08:30:05 +0200 Wojciech Kapsa * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: reset calculation of gst_decklink_video_src_update_time_mapping on no_signal. When the HDMI cable was disconnected for a long time, the calculation took too much time. SDI cable works fine. Part-of: 2022-10-07 07:56:21 -0400 Xavier Claessens * ext/dash/meson.build: Meson: Fix libxml2 fallback The variable xml2lib_dep does not exist. The correct name is already in the wrap file. Part-of: 2022-09-22 22:39:31 +0900 Sangchul Lee * ext/webrtc/gstwebrtcbin.c: webrtcbin: Fix pointer dereference before null check Part-of: 2022-09-26 13:57:15 +0200 Wojciech Kapsa * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkdeviceprovider.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add new persistent-id property and sort devices by persistent ID The order of the devices iterator from the SDK is undefined and can randomly change. Keep the device-number property for backwards compatibility and simplicity but prefer the persistent-id property and also use it for the device provider implementation. Part-of: 2022-10-04 19:19:57 -0300 Thibault Saunier * gst/transcode/gsttranscodebin.c: * gst/transcode/gsttranscodeelement.c: transcodebin: Implement support for upstream stream selection Part-of: 2022-10-05 05:38:54 +0530 Nirbheek Chauhan * gst-libs/gst/d3d11/gstd3d11device.cpp: d3d11: Fix debug build on UWP GstDXGIGetDebugInterface() is unused when targeting UWP. We directly call DXGIGetDebugInterface1() in that case. Fixes build failure: ../gst-libs/gst/d3d11/gstd3d11device.cpp(271): error C2440: '=': cannot convert from 'HRESULT (__cdecl *)(UINT,const IID &,void **)' to 'DXGIGetDebugInterface_t' ../gst-libs/gst/d3d11/gstd3d11device.cpp(271): note: This conversion requires a reinterpret_cast, a C-style cast or function-style cast Part-of: 2022-10-05 15:59:03 +0900 Sangchul Lee * gst-libs/gst/webrtc/nice/nice.c: webrtc/nice: Make sure to return NULL when validating turn server fails It affects 'add-turn-server' signal action and 'turn-server' property of webrtcbin. Part-of: 2022-03-21 10:29:21 +0100 Johan Sternerup * ext/webrtc/webrtcdatachannel.c: * gst-libs/gst/webrtc/datachannel.c: * gst-libs/gst/webrtc/datachannel.h: * gst-libs/gst/webrtc/webrtc-priv.h: * gst-libs/gst/webrtc/webrtc_fwd.h: * tests/check/elements/webrtcbin.c: webrtc: return error when sending on non-open datachannel According to W3C specification (https://w3c.github.io/webrtc-pc/#datachannel-send) we should return InvalidStateError exception when trying to send when the channel is not open. In the world of C/glib/gstreamer we don't have exceptions but have to rely on gboolean/GError instead. Introducing these calls for a change in function signature of the action signals used to send data on the datachannel. Changing the signature of the existing "send-string" and "send-data" signals would mean an immediate breaking change so instead we deprecate them. Furthermore, there is no way to express GError** as an argument to an action signal in a way that fits language bindings (pointer-to-pointer simply does not work) and we have to use regular functions instead. Therefore we introduce gst_webrtc_data_channel_send_data_full() and gst_webrtc_data_channel_send_string_full() while deprecating the old functions and corresponding signals. Part-of: 2022-09-23 17:18:35 +0200 Stéphane Cerveau * gst-libs/gst/codecparsers/gsth265bitwriter.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * sys/nvcodec/gstnvh265dec.c: * sys/va/gstvah265dec.c: * tests/check/libs/h265bitwriter.c: h265parse: fix typo in member of GstH265SPS Rename sps_extnsion_params to sps_extension_params Fix comment about vui_parameters_present_flag Part-of: 2022-10-04 03:57:31 +0100 Tim-Philipp Müller * meson.build: Back to development Part-of: === release 1.21.1 === 2022-10-04 01:14:01 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.21.1 2022-10-04 01:13:59 +0100 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.21.1 2022-09-29 14:34:31 +0300 Sebastian Dröge * gst/gaudieffects/gstgaussblur.c: gaussblur: Fix memory leak when setting caps multiple times Part-of: 2022-09-27 18:17:24 +0100 Christopher Obbard * sys/v4l2codecs/gstv4l2codecdevice.c: v4l2codecs: Warn user when no media devices are found Currently if the user is not able to access the devices under /dev/media*, either due to no media devices present on the system or simply no permission to access the device, v4l2codecs initialises with no features or debug messages. Since calling `GST_DEBUG="v4l2*:7" gst-inspect-1.0 v4l2codecs` is a typical way to diagnose why element(s) failed to enumerate, we should be more verbose here when the user is not able to access any /dev/media* device. So print a simple debug message in this case to aid debugging. Part-of: 2022-09-20 23:31:45 +0300 Mart Raudsepp * gst/mpegtsdemux/mpegtsbase.c: tsdemux: Don't trigger a program change when falling back to ignore-pcr behaviour Since commit a79a756b79aa1675e we could change to ignore-pcr automatically at 500ms into a live stream when no PCR is seen by then. However the stream counting in program change detection was wrongly considering ignore-pcr programs to have a separate PCR PID, even though we are actually ignoring the PCR PID completely, resulting in an erroneous program switch getting triggered from the different stream count. This in turn would send an EOS and switch out the pads for what actually is still the same program, while we intended to simply apply a workaround for broken encoders. Part-of: 2022-09-27 19:46:28 +0530 Nirbheek Chauhan * meson.build: meson: Remove builtin variable datadir from pkgconfig variables Fixes warning with meson 0.62: gst-plugins-bad| subprojects/gst-plugins-bad/meson.build:546: WARNING: Project targets '>= 0.62' but uses feature deprecated since '0.62.0': pkgconfig.generate variable for builtin directories. They will be automatically included when referenced and more. Part-of: 2022-09-22 09:14:57 +0530 Nirbheek Chauhan * tests/interactive/pitch-test.c: bad/soundtouch: Fix interactive test build on MSVC Needed for https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/930 Part-of: 2022-09-21 19:19:45 +0530 Nirbheek Chauhan * meson.build: meson: Use implicit builtin dirs in pkgconfig generation Starting with Meson 0.62, meson automatically populates the variables list in the pkgconfig file if you reference builtin directories in the pkgconfig file (whether via a custom pkgconfig variable or elsewhere). We need this, because ${prefix}/libexec is a hard-coded value which is incorrect on, for example, Debian. Bump requirement to 0.62, and remove version compares that retained support for older Meson versions. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1245 Part-of: 2022-09-20 13:38:26 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.c: vabaseenc: Move out encoder validation from assertion. Assertion can be disabled at compilation time. Still it's important to validate it the encoder object was opened by the subclass. This patch removes the assertion and returns if the encoder is open. Part-of: 2022-09-12 09:46:43 -0400 Xavier Claessens * tools/meson.build: meson: Set install_tag on some targets Trying to follow recommendation from Meson documentation: https://mesonbuild.com/Installing.html#installation-tags Move tools into 'bin' or 'bin-devel' categories to keep only libs and plugins in the default 'runtime' category. This simplifies distribution of GStreamer application skipping parts that are not needed, similarly to what Cerbero does by hardcoding huge list of files. Part-of: 2022-09-20 16:21:24 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkav1enc.c: msdkav1enc: We should not set other alignment here According to spec, we have 32bit alignment for height (progressive) and 16bit alignment for width, so here we don't need to add other alignment settings. Part-of: 2022-09-17 17:49:47 +0800 He Junyan * sys/va/gstvah264enc.c: va: h264enc: Fix rate control enum register failure for the second GPU. Part-of: 2022-09-17 10:14:40 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Avoid precision lost by just rounding up. The code where dividing by 16 and later multiplying by 16, which is spurious and a potential loose of precision. 2022-09-16 14:17:38 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Update AUD property if driver can't handle raw data. 2022-09-16 13:55:11 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Remove unused dispose method. 2022-09-16 15:45:11 -0400 Eric Knapp * sys/va/gstvadeinterlace.c: vadeinterlace: Fix passthrough latency query Part-of: 2022-09-17 05:01:55 +0900 Seungha Yang * sys/nvcodec/gstnvh265dec.c: nvh265sldec: Sync up with d3d11h265dec implementation Each RefPicSetStCurrBefore/RefPicSetStCurrAfter/RefPicSetLtCurr array might have empty element (i.e., reference pictures might not be stored sequentially). Don't error out for the empty element case, but instead, iterates each array and fill NVDEC's reference list as much as possible Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1441 Part-of: 2022-09-16 12:50:33 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.c: * sys/va/gstvabaseenc.h: * sys/va/gstvah264enc.c: va: baseenc: Fix gobject style for chained method. Part-of: 2022-09-13 23:20:54 +0900 Seungha Yang * gst/codectimestamper/gsth264timestamper.c: * gst/codectimestamper/gsth265timestamper.c: codectimestamper: Update document Add more description about those elements Part-of: 2022-06-09 22:32:16 +0800 He Junyan * sys/va/gstvaav1dec.c: va: av1dec: user internal buffer pool for non output layers. The AV1 support multi spatial layers within one TU with different resolutions, and only the highest spatial layer need to be output. For example, there are two spatial layer, base level is 800x600 and higher level is 1920x1080. We need to decode both because the higher level needs base layer as reference, but we only need to output 1920x1080 frames here. The current manner always renegotiates the caps once we detect the current picture resolution changes, so we renegotiate again and again between different layers. That's a big waste and has very low performance. We now only do the renegotiation for the highest output layer. For other non output layers, we just keep a internal buffer pool which is big enough to handle the surface allocation. Part-of: 2022-05-12 10:12:37 +0800 He Junyan * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1decoder.h: codecs: av1decoder: Add the highest_spatial_layer field. As SPEC says, when multi spatial layer exists, we should only output one frame with the highest spatial id from each TU. We now store the highest spatial layer information in the base class in order to let the sub class handle different layers easily. Part-of: 2022-09-15 00:52:14 +0000 Devin Anderson * ext/voamrwbenc/gstvoamrwbenc.c: * tests/check/elements/voamrwbenc.c: * tests/check/meson.build: voamrwbenc: Fix truncation of audio data at end-of-stream when audio data doesn't align on 20 millisecond frame size. The AMR-WB codec imposes a fixed 20 millisecond frame size. In its current form, the `voamrwbenc` plugin deals with this limitation by discarding any audio at the end of the stream that falls short of 20 milliseconds. This patch keeps the audio data, and appends silence to the end to preserve frame size alignment. The patch also adds tests to check for the updated behavior. I noticed that tests weren't being built, so I changed the build to allow for building the tests when the `tests` and `voamrwbenc` options are set. Part-of: 2022-09-15 21:56:27 +0900 Seungha Yang * gst/codectimestamper/gstcodectimestamper.c: codectimestamper: Fix for unknown framerate Use default framerate if numerator or denominator is unknown Part-of: 2022-08-26 08:43:34 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * sys/qsv/plugin.cpp: Build documentation for rust plugins - Update the docker image we use, starting using the standard one adding `gtk4-doc` as required by rust plugins - Update the plugins_doc_caches as required, some more plugins are built with the new image - Install ninja from pip as the version from F31 is too old - Avoid buildings all GSreamer plugins when building the doc as it takes time and resources for no good reason - Stop linking to `GInstanceInitFunc` as it is not present in latest GLib documentation, leading to warnings in hotdoc. Part-of: 2022-08-29 10:17:45 -0400 Thibault Saunier * docs/meson.build: doc: Do not build plugins to build the doc It is not actually necessary Part-of: 2022-09-15 12:14:56 +0100 Tim-Philipp Müller * tests/check/meson.build: tests: add a few more orc tests Part-of: 2022-09-14 00:58:37 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Fix for HEVC decoding when coded resolution is larger than display resolution As documented in the SDK header, we should set coded width/height values to the corresponding decoder configuration option, instead of display resolution Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1438 Part-of: 2022-09-13 04:06:02 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudaupload,cudadownload: Fix document * Fix typo, NVIDA -> NVIDIA * Add cudadownload doc to the source file Part-of: 2022-09-13 01:02:55 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudaupload,cudadownload: Use shared GstD3D11Device context if possible Handle d3d11 device context in set_context() method with additional device compatibility check so that only NVIDIA GPU associated d3d11 device can be configured in the element. And clear old d3d11 device per set_info() for d3d11 device to be updated as well. Part-of: 2022-09-13 01:02:50 +0900 Seungha Yang * gst-libs/gst/cuda/cuda-gst.h: * gst-libs/gst/cuda/gstcudacontext.c: * gst-libs/gst/cuda/gstcudaloader.c: * gst-libs/gst/cuda/gstcudautils.c: * gst-libs/gst/cuda/gstcudautils.h: * gst-libs/gst/cuda/meson.build: * gst-libs/gst/cuda/stub/cuda.h: * gst-libs/gst/cuda/stub/cudaD3D11.h: cuda: Remove GST_CUDA_HAS_D3D define from header ... and fix d3d11 specific enum type name GST_CUDA_HAS_D3D is a build time define which indicates whether GstD3D11 library is available or not, but DirectX SDK headers must be available on the build system already. Expose Direct3D related symbols if the build target is Windows (i.e., if G_OS_WIN32 is defined) Part-of: 2021-03-24 14:20:18 -0500 Zebediah Figura * meson.build: meson: Build with -Wl,-z,nodelete to prevent unloading of dynamic libraries and plugins GLib made the unfortunate decision to prevent libgobject from ever being unloaded, which means that now any library which registers a static type can't ever be unloaded either (and any library that depends on those, ad nauseam). Part-of: 2022-06-06 10:56:12 +0200 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: va: Remove from plugin cache. GstVA is not currently build by CI, because libva version is lower than expected. So, the gstva library is not build, thus some symbols aren't documented, breaking the documentation CI. To move things forward, let's just remove temporarly the va plugins from cache. While we decide on how to update the libva package in the CI. Part-of: 2022-06-27 18:56:01 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvaallocator.h: va: allocator: Fix parameter name to match signature. Part-of: 2022-02-07 17:34:57 +0100 Víctor Manuel Jáquez Leal * docs/libs/va/index.md: * docs/libs/va/sitemap.txt: * gst-libs/gst/va/gstva.h: * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvaallocator.h: * gst-libs/gst/va/gstvadisplay.c: * gst-libs/gst/va/gstvapool.c: * gst-libs/gst/va/gstvasurfacecopy.h: * gst-libs/gst/va/gstvautils.c: * gst-libs/gst/va/gstvavideoformat.c: * gst-libs/gst/va/meson.build: * sys/va/gstjpegdecoder.c: * sys/va/gstjpegdecoder.h: * sys/va/gstvabasetransform.c: * sys/va/gstvacompositor.c: * sys/va/gstvafilter.c: * sys/va/gstvah264enc.c: va: Complete library and plugin documentation. Part-of: 2022-09-13 14:46:37 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstva.h: * gst-libs/gst/va/meson.build: * sys/va/gstvabasedec.c: * sys/va/gstvacaps.c: * sys/va/gstvadecoder.c: * sys/va/gstvadisplay_priv.c: * sys/va/gstvaencoder.c: * sys/va/gstvafilter.c: * sys/va/gstvah264enc.c: * sys/va/gstvajpegdec.c: va: Move gstvavideoformat out of library headers. Since it's no needed for API consumers. Though it can be added later. Part-of: 2021-10-03 10:17:00 +0200 Víctor Manuel Jáquez Leal * docs/meson.build: * gst-libs/gst/va/meson.build: docs: Generate libgstva GI and pkg-config. Currently libgstva is only exposed internally to gst-plugins-bad. No headers are installed, no documentation generated, pkgconfig file, neither gobject-introspection files. This patch turn on all that. Part-of: 2022-05-19 00:44:40 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/codectimestamper/gstcodectimestamper.c: * gst/codectimestamper/gstcodectimestamper.h: * gst/codectimestamper/gsth264timestamper.c: * gst/codectimestamper/gsth264timestamper.h: * gst/codectimestamper/gsth265timestamper.c: * gst/codectimestamper/gsth265timestamper.h: * gst/codectimestamper/meson.build: * gst/codectimestamper/plugin.c: * gst/meson.build: * meson_options.txt: Add H.264/H.265 timestamp correction element Adding {h264,h265}timestamper element to correct timestamp of encoded frames. This initial version supports only DTS correction based on given PTS and SPS data. Part-of: 2022-09-07 11:22:45 -0400 Thibault Saunier * gst/debugutils/gsttestsrcbin.c: * tests/validate/meson.build: * tests/validate/testsrcbin/caps_spec.validatetest: * tests/validate/testsrcbin/caps_spec/flow-expectations/log-testsrcbin0-video_src_0-expected: testsrcbin: Add a way to specify caps for the output of the sources Part-of: 2022-09-08 17:29:37 -0400 Thibault Saunier * gst/debugutils/gsttestsrcbin.c: testsrcbin: Plug some leaks Part-of: 2020-11-19 18:34:00 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/debugutils/gsttestsrcbin.c: testsrcbin: Add an 'expose-sources-async' property Which allows simluating usual source which require decoding etc in decodebin for example Part-of: 2022-09-05 18:32:20 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvajpegdec.c: vajpegdec: Enhance explanation comment. Part-of: 2022-09-06 14:53:41 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: va: caps: Use G_STMT_START / END Part-of: 2022-09-05 16:59:12 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvajpegdec.c: vajpegdec: Check if driver has internal color conversion. Part-of: 2022-09-06 18:49:02 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: fix picking available payload types When picking an available payload type, we need to pick one that is available across all media. The previous code, when multiple media were present, looked at the first one, noticed it had pt 96 as the media pt, then simply looked at the next media, noticed it didn't, and decided 96 was available. Instead, check if the pt is used by any of the media, if it is, decide it is not available and go to the next pt. I'm fairly sure that was the original intent. Part-of: 2022-08-03 19:36:11 +0300 Jordan Petridis * ext/fluidsynth/gstfluiddec.c: fluidsynth: correctly version guard methods We bumped the minimum version to 2.1 but the api we used wasn't introduced till version 2.2 of fluidsynth Follow-up to gstreamer/gstreamer!2718 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2718 Part-of: 2022-08-21 03:37:40 +1000 Jan Schmidt * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdclient.c: * ext/dash/gstmpdclient.h: dashdemux: Preserve current representation on live manifest updates When updating a manifest during live playback, preserve the current representation for each stream. During update_fragment_info, if the current representation changed because it couldn't be matched, trigger a caps change and new header download. This reverts commit e0e1db212fd0df2239583b9099fc4361adeded05 and reapplies "dashdemux: Fix issue when manifest update sets slow start without passing necessary header & caps changes downstream" with changes. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/507 Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1729 Part-of: 2022-09-02 09:55:20 +0000 Florian Zwoch * sys/va/plugin.c: va: Fix log message when registering H264 encoder. The log message would report an error for the H264 decoder when registering failed, but we tried to register the H264 encoder instead. Part-of: 2022-07-05 17:14:37 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: Allow locked mlines with no caps, as the last ones Part-of: 2022-05-16 18:05:25 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: Reject creating an offer if a locked mline has no caps This avoids getting in a bunch of corner cases. We'd have to insert a "rejected" line from the start as a place-holder to get around this, but the rest of the code just becomes more complicated, so just disallow it for now. Part-of: 2022-05-16 17:17:13 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * tests/check/elements/webrtcbin.c: webrtcbin: Store pending mid to make create-offer idempotent If the mid is not stored in the transceiver, but it is stored in last_offer, then a further create-offer call will just ignore that transceiver. Also include unit test for ensure it doesn't regress. Part-of: 2022-05-26 18:17:16 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdkvpp: Add va memory when fixating src caps Part-of: 2022-06-08 12:31:56 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdkvpp : Use va pool at linux path and system pool for windows We use msdkvpp's own pool to allocate buffers instead of external frame allocator mfxFrameAllocator. Part-of: 2022-05-09 18:34:38 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkvpp.c: msdkvpp: Import buffer to msdk_surface If the buffer is not msdk_buffer, we can try to directly import the attached memory (i.e. va mem and dmabuf mem) by applying the common uitl function: import_to_msdk_function (). Here add a flag "from_qdata" in GstMsdkSurface to handle the cropping case, we should avoid updating the crop values when msdk_surface is from the memory's qdata, because the crop info from this surface is the already updated one. Part-of: 2022-05-09 18:19:01 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkvpp.c: msdkvpp: Add va caps at sink and src pad Part-of: 2022-08-25 17:28:36 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: msdkenc: Apply common util func to import mem as msdk_surface Part-of: 2022-05-27 17:56:33 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkallocator.c: * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkallocator_libva.h: * sys/msdk/meson.build: * sys/msdk/msdk.h: msdk: Add help functions to get mfxFrameSurface1 from GstBuffer and wrap it as GstMsdkSurface Note that the memory abstraction for system memory is for windows path. Part-of: 2022-05-19 19:18:21 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdkenc: Use va pool on linux and system pool for windows Part-of: 2022-05-19 18:57:50 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: msdkenc: Directly import dmabuf memory as mfx surface When input buffer is of dmabuf memory but not a msdk buffer (i.e., the allocator is not msdk_allocator), then we can try to get fd of this mem, create the corresponding va surface and wrap it as mfx surface. Part-of: 2022-04-21 17:27:09 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: msdkenc: Directly import va memory as mfx surface If input buffer is of va memory, we can directly obtain va surface from the buffer and wrap it as mfx surface. Part-of: 2022-03-03 10:07:19 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdk_va.c: * sys/msdk/gstmsdk_va.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/meson.build: msdk: Use va libs API to get VA surface from buffer Direct apply gst_va_buffer_get_surface to get VASurface from a buffer, so remove corresponding functions which are not used. Part-of: 2022-09-01 15:11:31 -0400 Thibault Saunier * ext/aes/meson.build: * ext/aom/meson.build: * ext/assrender/meson.build: * ext/avtp/meson.build: * ext/bs2b/meson.build: * ext/bz2/meson.build: * ext/chromaprint/meson.build: * ext/closedcaption/meson.build: * ext/colormanagement/meson.build: * ext/curl/meson.build: * ext/dash/meson.build: * ext/dc1394/meson.build: * ext/directfb/meson.build: * ext/dtls/meson.build: * ext/dts/meson.build: * ext/faac/meson.build: * ext/faad/meson.build: * ext/fdkaac/meson.build: * ext/flite/meson.build: * ext/fluidsynth/meson.build: * ext/gme/meson.build: * ext/gs/meson.build: * ext/gsm/meson.build: * ext/gtk/meson.build: * ext/hls/meson.build: * ext/iqa/meson.build: * ext/isac/meson.build: * ext/kate/meson.build: * ext/ladspa/meson.build: * ext/ldac/meson.build: * ext/libde265/meson.build: * ext/lv2/meson.build: * ext/mdns/meson.build: * ext/modplug/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: * ext/musepack/meson.build: * ext/neon/meson.build: * ext/onnx/meson.build: * ext/openal/meson.build: * ext/openaptx/meson.build: * ext/opencv/meson.build: * ext/openexr/meson.build: * ext/openh264/meson.build: * ext/openjpeg/meson.build: * ext/openmpt/meson.build: * ext/openni2/meson.build: * ext/opus/meson.build: * ext/qroverlay/meson.build: * ext/resindvd/meson.build: * ext/rsvg/meson.build: * ext/rtmp/meson.build: * ext/sbc/meson.build: * ext/sctp/meson.build: * ext/smoothstreaming/meson.build: * ext/sndfile/meson.build: * ext/soundtouch/meson.build: * ext/spandsp/meson.build: * ext/srt/meson.build: * ext/srtp/meson.build: * ext/svthevcenc/meson.build: * ext/teletextdec/meson.build: * ext/ttml/meson.build: * ext/voaacenc/meson.build: * ext/voamrwbenc/meson.build: * ext/vulkan/meson.build: * ext/wayland/meson.build: * ext/webp/meson.build: * ext/webrtc/meson.build: * ext/webrtcdsp/meson.build: * ext/wildmidi/meson.build: * ext/wpe/meson.build: * ext/x265/meson.build: * ext/zbar/meson.build: * ext/zxing/meson.build: * gst/accurip/meson.build: * gst/adpcmdec/meson.build: * gst/adpcmenc/meson.build: * gst/aiff/meson.build: * gst/asfmux/meson.build: * gst/audiobuffersplit/meson.build: * gst/audiofxbad/meson.build: * gst/audiolatency/meson.build: * gst/audiomixmatrix/meson.build: * gst/audiovisualizers/meson.build: * gst/autoconvert/meson.build: * gst/bayer/meson.build: * gst/camerabin2/meson.build: * gst/codecalpha/meson.build: * gst/coloreffects/meson.build: * gst/debugutils/meson.build: * gst/dvbsubenc/meson.build: * gst/dvbsuboverlay/meson.build: * gst/dvdspu/meson.build: * gst/faceoverlay/meson.build: * gst/festival/meson.build: * gst/fieldanalysis/meson.build: * gst/freeverb/meson.build: * gst/frei0r/meson.build: * gst/gaudieffects/meson.build: * gst/gdp/meson.build: * gst/geometrictransform/meson.build: * gst/id3tag/meson.build: * gst/inter/meson.build: * gst/interlace/meson.build: * gst/ivfparse/meson.build: * gst/ivtc/meson.build: * gst/jp2kdecimator/meson.build: * gst/jpegformat/meson.build: * gst/librfb/meson.build: * gst/midi/meson.build: * gst/mpegdemux/meson.build: * gst/mpegpsmux/meson.build: * gst/mpegtsdemux/meson.build: * gst/mpegtsmux/meson.build: * gst/mxf/meson.build: * gst/netsim/meson.build: * gst/onvif/meson.build: * gst/pcapparse/meson.build: * gst/pnm/meson.build: * gst/proxy/meson.build: * gst/rawparse/meson.build: * gst/removesilence/meson.build: * gst/rist/meson.build: * gst/rtmp2/meson.build: * gst/rtp/meson.build: * gst/sdp/meson.build: * gst/segmentclip/meson.build: * gst/siren/meson.build: * gst/smooth/meson.build: * gst/speed/meson.build: * gst/subenc/meson.build: * gst/switchbin/meson.build: * gst/timecode/meson.build: * gst/transcode/meson.build: * gst/videofilters/meson.build: * gst/videoframe_audiolevel/meson.build: * gst/videoparsers/meson.build: * gst/videosignal/meson.build: * gst/vmnc/meson.build: * gst/y4m/meson.build: * meson.build: * sys/amfcodec/meson.build: * sys/androidmedia/meson.build: * sys/applemedia/meson.build: * sys/asio/meson.build: * sys/bluez/meson.build: * sys/d3d11/meson.build: * sys/d3dvideosink/meson.build: * sys/decklink/meson.build: * sys/directshow/meson.build: * sys/directsound/meson.build: * sys/dvb/meson.build: * sys/fbdev/meson.build: * sys/ipcpipeline/meson.build: * sys/kms/meson.build: * sys/magicleap/meson.build: * sys/mediafoundation/meson.build: * sys/msdk/meson.build: * sys/nvcodec/meson.build: * sys/opensles/meson.build: * sys/qsv/meson.build: * sys/shm/meson.build: * sys/tinyalsa/meson.build: * sys/uvch264/meson.build: * sys/v4l2codecs/meson.build: * sys/va/meson.build: * sys/wasapi/meson.build: * sys/wasapi2/meson.build: * sys/wic/meson.build: * sys/winks/meson.build: * sys/winscreencap/meson.build: meson: Call pkgconfig.generate in the loop where we declare plugins dependencies Removing some copy pasted code Part-of: 2022-09-01 11:51:48 -0400 Thibault Saunier * docs/meson.build: * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/codecs/meson.build: * gst-libs/gst/cuda/meson.build: * gst-libs/gst/d3d11/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/play/meson.build: * gst-libs/gst/player/meson.build: * gst-libs/gst/sctp/meson.build: * gst-libs/gst/transcoder/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/va/meson.build: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/wayland/meson.build: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/nice/meson.build: * meson.build: meson: Namespace the plugins_doc_dep/libraries variables Part-of: 2022-09-01 10:28:13 -0400 Thibault Saunier * gst-libs/gst/cuda/meson.build: cuda: meson: Fix generating GstCuda gir file against gstreamer-full Part-of: 2022-08-31 18:44:14 -0400 Thibault Saunier * meson.build: meson: Rename plugins list and make them "dependency" objects Part-of: 2022-08-30 05:02:31 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11memory: Fix GstAllocator::mem_copy() implementation We were checking possible bind flags for the DXGI format of the source texture but that's never applied to the destination texture desc. Just use the already configured bind (and misc) flags of source texture for the destination texture allocation without additional check. Part-of: 2022-08-24 08:22:49 +0200 Robert Rosengren * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: curlbasesink: gst_curl_base_sink_transfer_thread_close is internal gst_curl_base_sink_transfer_thread_close is moved from external header to be static function, as it has no users. Part-of: 2022-07-07 09:20:04 +0200 Robert Rosengren * docs/plugins/gst_plugins_cache.json: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlhttpsink.h: curlhttpsink: Only set MIME as content-type if not set by property Setting the content-type property shall override internally detected MIME types, to make it possible to do as following example (where audio/basic to be used prior to audio/x-mulaw): gst-launch-1.0 ... ! mulawenc ! audio/x-mulaw,rate=8000,channels=1 ! curlhttpsink location= content-type=audio/basic Part-of: 2022-08-26 00:16:56 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11-private.h: * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11bufferpool.h: * gst-libs/gst/d3d11/gstd3d11compile.cpp: * gst-libs/gst/d3d11/gstd3d11converter.cpp: * gst-libs/gst/d3d11/gstd3d11converter.h: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11device.h: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * gst-libs/gst/d3d11/gstd3d11utils.cpp: * sys/d3d11/gstd3d11pluginutils.h: d3d11: Update library doc * Private header name is changed to gstd3d11-private.h to follow naming convention * Add Since mark everywhere * Update member variable names to be consistent with the other object implementations in this library * Correct outdated documentation Part-of: 2022-08-25 14:24:25 +0200 Piotr Brzeziński * sys/applemedia/avfvideosrc.m: avfvideosrc: Fix wrong default framerate value Current default G_MAXINT is not a correct value under any circumstances. This creates an issue with screen capture, during which we currently do not get any framerate info causing G_MAXINT to show up, where elements downstream can possibly misbehave - for example, `vtenc` causes a kernel panic. Replace with 30/1 to avoid such scenarios. Part-of: 2022-08-25 15:28:21 +0800 He Junyan * sys/va/gstjpegdecoder.c: jpegdecoder: return the real error of decode_scan and decode_frame. The current handle_frame() does not return the real error that happens in decode_scan and decode_frame, which makes the pipeline continue with the error and may trigger asserting later. We also return the error when decode_quant_table or decode_huffman_table fails. Part-of: 2022-08-19 21:54:48 +0900 Seungha Yang * tests/examples/d3d11/d3d11videosink-present.cpp: * tests/examples/d3d11/meson.build: examples: d3d11videosink: Add present signal example Add an example to show the usage of present singal. In this example, a text overlay with alpha blended background will be rendered on swapchain's backbuffer by using Direct3D11, Direct2D, and DirectWrite APIs. Part-of: 2022-08-24 00:13:21 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11videosink: Add display-format property Make swapchian's display format configurable, since some DXGI formats we can use for swapchain are not API interop compatible. For instance, BGRA format should be used for Direct2D interop. Part-of: 2022-08-19 20:25:31 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Add present signal The "present" signal will be emitted just before the IDXGISwapChain::Present() call. The client can perform additional GPU operation with given GstD3D11Device object and ID3D11RenderTargetView handle. Or, the client can read back the scene to be displayed on window using the signal. Part-of: 2022-08-19 04:49:53 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Update SpsMaxLatencyPictures properly The SpsMaxLatencyPictures value never gets back to zero even if it's needed. Update the value properly. Part-of: 2022-08-19 04:44:48 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Reorganize debug printing As of the MR https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2575 gst_h265_decoder_process_sps() is called per slice and it causes noisy debug message print. Reorganize related and the other debug printings at once. Part-of: 2022-08-20 16:15:15 +0100 Philippe Normand * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: openh264: Register debug categories earlier Otherwise the GST_ERROR message logged in case of ABI mismatch would be done on an uninitialized category. Part-of: 2022-08-20 16:57:27 +0100 Philippe Normand * ext/openh264/gstopenh264enc.cpp: openh264enc: Fix constrained-high encoding constrained-high is high without B-frames, there is no EProfileIdc for this, so assume high instead of hitting an assert down the line. Part-of: 2022-08-19 09:07:50 -0400 Thibault Saunier * gst-libs/gst/webrtc/ice.c: * gst-libs/gst/webrtc/ice.h: * gst-libs/gst/webrtc/nice/nice.c: webrtc:ice: Fix candidate stats related APIs for bindings null-terminated arrays of structures is not usable. Part-of: 2022-08-18 13:27:02 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Enable the scc_main_4:4:4_10 profile. We should enable this profile which is already allown in vaprofile.c after libva 1.8 version. Part-of: 2022-07-06 09:08:17 -0400 U. Artie Eoff * docs/plugins/gst_plugins_cache.json: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add fd property This allows an application to provide their own opened DRM device fd handle to kmssink. For example, an application can lease multiple fd's from a DRM master to display on different CRTC outputs at the same time with multiple kmssink instances. Specifying the fd property is not allowed when driver-name and/or bus-id properties are specified. Part-of: 2022-08-19 00:05:17 +0900 Seungha Yang * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11videosink.cpp: d3d11: Use CRITICAL_SECTION instead of GRecMutex The GRecMutex abstraction (and heap allocation happens in GLib) is unnecessary for this plugin. Part-of: 2022-08-17 11:18:54 -0400 Thibault Saunier * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: doc: Cleanup Since markers We hide some newly public symbols when moving some objects to the library which was not really correct in the end. Properly add the Since markers as needed. Part-of: 2022-08-16 08:59:00 -0400 Thibault Saunier * gst-libs/gst/webrtc/ice.h: webrtc:ice: Reindent header Part-of: 2022-08-15 21:27:06 -0400 Thibault Saunier * gst-libs/gst/webrtc/ice.h: webrtc:ice: Mark protected fields as such Part-of: 2022-08-15 21:25:25 -0400 Thibault Saunier * gst-libs/gst/webrtc/datachannel.c: * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/ice.c: * gst-libs/gst/webrtc/icestream.c: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtptransceiver.c: webrtc: Fix documentaton moving symbols in the right pages As those symbols are documented in a 'fwd' header smart indexing in hotdoc wasn't working. Part-of: 2022-08-15 11:52:50 -0400 Thibault Saunier * gst-libs/gst/webrtc/ice.c: * gst-libs/gst/webrtc/ice.h: * gst-libs/gst/webrtc/nice/nice.c: webrtc:ice: Avoid using GArray in public API And use plain null terminated C arrays instead. Part-of: 2022-08-15 11:37:57 -0400 Thibault Saunier * gst-libs/gst/webrtc/ice.c: webrtc:ice: Fix some annotations Part-of: 2022-08-15 11:36:25 -0400 Thibault Saunier * gst-libs/gst/webrtc/ice.c: * gst-libs/gst/webrtc/ice.h: webrtc: Make GstWebRTCIceCandidateStats a Boxed type Part-of: 2022-08-14 17:38:24 -0400 Thibault Saunier * gst-libs/gst/webrtc/ice.h: webrtc:ice: Add padding to structures Part-of: 2022-08-14 21:49:27 +0900 Seungha Yang * gst-libs/gst/cuda/cuda-gst.h: * gst-libs/gst/cuda/gstcudanvrtc.c: * gst-libs/gst/cuda/gstcudanvrtc.h: * gst-libs/gst/cuda/gstnvrtcloader.c: * gst-libs/gst/cuda/gstnvrtcloader.h: * gst-libs/gst/cuda/meson.build: * sys/nvcodec/gstcudafilter.c: cuda: Hide runtime compiler related header and symbols That's already abstracted via gst_cuda_nvrtc_compile() method and therefore, we do not need to expose such symbols yet. Part-of: 2022-08-17 12:22:38 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvajpegdec.c: vajpegdec: Fix memory leak. Free value content. Part-of: 2022-08-16 20:05:15 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvajpegdec.c: vajpegdec: Fix 4:2:2 for i965. Since i965 uses NV12 either for 4:2:0 and 4:2:2 chroma (using an internal color conversion) the chroma validation has to be shortcut. Part-of: 2022-08-16 19:50:49 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvavideoformat.c: va: libs: Add Y42B format. Enable 4:2:2 JPEG decoding in iHD. Part-of: 2022-08-16 16:06:20 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvavideoformat.c: * gst-libs/gst/va/gstvavideoformat.h: * sys/va/gstvacaps.c: va: Validate JPEG subsampling configurations. There are Mesa Gallium drivers that report subsampling but without any pixel format. So, strip out these subsamplings. Part-of: 2022-08-16 14:45:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: * sys/va/gstvaencoder.c: va: gst_va_create_raw_caps_from_config() may return NULL. This patch verifies if the function returns NULL in the caller. Part-of: 2022-08-17 11:42:09 -0400 Eric Knapp * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Validate video input format Part-of: 2022-08-15 11:23:56 -0400 Eric Knapp * sys/decklink/gstdecklink.cpp: decklink: Auto-detect 10-bit YUV Part-of: 2022-08-14 22:31:29 -0400 Daniel Morin * gst-libs/gst/play/gstplay-media-info.h: * gst-libs/gst/play/gstplay-signal-adapter.h: * gst-libs/gst/play/gstplay-video-overlay-video-renderer.h: * gst-libs/gst/play/gstplay-video-renderer.h: * gst-libs/gst/play/gstplay-visualization.h: gst-play: missing cleanup for g_autoptr Without this change cleanup function for g_autoptr is not defined for GstPlayMediaInfo, GstPlaySignalAdapter, GstPlayVideoRenderer, GstPlayVideoOverlayVideoRenderer and GstPlayVisualization. Cleanup function was defined in gstplay.h, but missing in other header files. Part-of: 2022-08-16 21:01:47 +0900 Seungha Yang * gst-libs/gst/d3d11/meson.build: meson: d3d11: Fix missing header install Install gstd3d11compile.h header file Part-of: 2022-08-15 01:50:15 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Do timer based DecoderBeginFrame retry ... instead of retry count based one, because the precision of Sleep() varies depending on system and application configuration. Also, don't retry DecoderBeginFrame if decoder is doing flush. Part-of: 2022-08-14 21:18:24 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudaupload,cudadownload: Don't simplify caps in transform_caps The simplified caps might not be a subset of filter caps and basetransform will complain about it. Part-of: 2022-08-15 00:22:14 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Do not use miniobject qdata The miniobject qdata uses global mutex. Use ID3D11DeviceChild::{Set,Get}PrivateData methods instead. Part-of: 2022-08-13 05:24:03 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: docs: Remove dxgiscreencapsrc from documentation The implementation was dropped in https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1750 Part-of: 2022-08-13 12:24:37 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer-media-info.c: player: Don't leak wrapped video info Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1373 Part-of: 2022-08-13 11:50:20 +0300 Sebastian Dröge * gst-libs/gst/play/gstplay.c: play: Make ownership of video-sink clearer in combination with floating references And correctly handle the case of VideoRenderer::create_video_sink() not actually returning a floating reference, which might be tricky for some bindings. Part-of: 2022-08-13 11:49:08 +0300 Sebastian Dröge * gst-libs/gst/play/gstplay.c: play: Fix object construction Ideally new() functions should simply call g_object_new() and not much else, so let's do that here and handle all the construction properly in a GObject way. Now a play object created via g_object_new() is actually usable. Part-of: 2022-08-13 11:39:59 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Fix object construction Ideally new() functions should simply call g_object_new() and not much else, so let's do that here and handle all the construction properly in a GObject way. Now a player object created via g_object_new() is actually usable. In addition, also fix the video-renderer property so that reading it returns an object of the correct type. Part-of: 2022-08-13 11:30:35 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Release signal adapter on finalize Part-of: 2022-08-08 23:37:11 +0900 Seungha Yang * gst/mxf/mxfaes-bwf.c: mxfdemux: Always calculate BlockAlign of raw audio Workaround for nBlockAlign and nBitsPerSample mismatch. Always use the formula described in the specification for BlockAlign value Part-of: 2022-08-12 22:05:36 +0900 Seungha Yang * gst-libs/gst/d3d11/meson.build: meson: d3d11: Fix build with GIR enabled ... and remove unused list Part-of: 2022-08-12 18:24:41 +0300 Matthias Clasen * gst-libs/gst/player/gstplayer.c: gstplayer: Plug a memory leak This was showing up as a memory leak in GTK's gstreamer media backend: 40 bytes in 1 blocks are definitely lost in loss record 18,487 of 40,868 at 0x484586F: malloc (vg_replace_malloc.c:381) by 0x50D5278: g_malloc (gmem.c:125) by 0x50EDBA5: g_slice_alloc (gslice.c:1072) by 0x50EFBCC: g_slice_alloc0 (gslice.c:1098) by 0x51F2F45: g_type_create_instance (gtype.c:1911) by 0x51DAE37: g_object_new_internal (gobject.c:2011) by 0x51DC080: g_object_new_with_properties (gobject.c:2181) by 0x51DCB20: g_object_new (gobject.c:1821) by 0x9855F86: UnknownInlinedFun (gstplayer-wrapped-video-renderer.c:109) by 0x9855F86: gst_player_new (gstplayer.c:579) Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1374 Part-of: 2022-08-12 11:32:45 +0200 Corentin Damman * sys/d3d11/gstd3d11window.cpp: d3d11window: fix DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING swap chain flag for full screen Fixes #1372 (regression introduced in 5eeec165) Part-of: 2022-08-10 11:12:37 +0100 Philippe Normand * ext/wpe/gstwpesrcbin.cpp: wpesrc: Switch URI handler to web+... protocols The web://http:// URIs were not compliant with RFC 3986. Using web+http:// allows us to use the GstUri parser to pass down a valid URI to `wpevideosrc`. Corresponding change for the CEF source element: https://github.com/centricular/gstcefsrc/commit/8d499495dd79cc0bf9a38ae82b03e374d78f68ae Part-of: 2022-08-09 12:24:53 +0200 Corentin Damman * sys/nvcodec/gstnvh264encoder.cpp: * sys/nvcodec/gstnvh265encoder.cpp: nvcodec: fix caps leaks in nvh264/h265encoder Part-of: 2022-08-09 12:29:34 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Set codec frame sync point if IDR This flag is used by GstVideoEncoder base class for certain configurations. Part-of: 2022-08-09 12:28:43 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: vah264enc: Packed headers can be zero. A driver can report back no packed header support (VA_ENC_PACKED_HEADER_NONE). This patch removes that false verification. Part-of: 2022-08-07 23:24:04 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11converter.cpp: * gst-libs/gst/d3d11/gstd3d11device.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11: Use WIN32 API directly for locking with RAII pattern Such abstraction is unnecessary for this library/plugin. Use WIN32 API directly instead of GLib wrappers. Part-of: 2022-08-07 22:41:07 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11memory: Remove unnecessary locking * memory map/unmap is already protected by d3d11 device lock. Don't need to take another memory lock. * Use WIN32 critical section and slim reader/writer lock APIs directly instead of GLib wrappers. Part-of: 2022-08-05 17:20:05 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Fix caps for mesa gallium. Radeon mesa gallium driver has a bug which adds P010_10LE sink caps format. This patch removes formats which arent 420 chroma. gst_caps_set_format_array() wasn't used because the fix traverse several structures with potential different formats. Part-of: 2022-08-05 15:54:39 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: * sys/va/gstvaprofile.c: vah264dec: Complete profiles in decoder. Instead of specifying all the H.264 "supported" profiles in the global hash table (used either by decoders and encoders), just complete them in the decoder only, since the encoder doesn't support them. Part-of: 2022-08-05 22:34:06 +0900 Seungha Yang * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/qsv/gstqsvallocator_d3d11.cpp: * tests/examples/d3d11/d3d11converter.cpp: * tests/examples/d3d11/d3d11videosink-appsrc.cpp: d3d11: Don't find global default allocator We were using global default allocator already. Pass null allocator object to *_alloc() methods then the method will use default allocator. Part-of: 2022-08-05 22:23:52 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11memory: Allow null GstD3D11Allocator to alloc methods Similar to gst_allocator_alloc(), use default GstD3D11Allocator when caller passes null allocator object Part-of: 2022-08-06 00:03:43 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11compile.cpp: * gst-libs/gst/d3d11/gstd3d11converter.cpp: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11utils.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11window.cpp: d3d11: Use std::call_once() g_once_init_enter() always takes global mutex for non-GCC build. Use C++ once call implementation Part-of: 2022-08-06 04:57:49 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.cpp: d3d11device: Use WIN32 critical section API directly GLib's GRecMutex will allocate another heap memory for CRITICAL_SECTION struct and g_rec_mutex_lock/g_rec_mutex_unlock use WIN32 APIs actually. We don't need such intermediate function calls and redundant heap allocation. Just call WIN32 APIs directly. Part-of: 2022-08-03 17:52:25 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.c: * sys/va/gstvabaseenc.h: * sys/va/gstvah264enc.c: vah264enc: Lock properties read/write. This is a first step for changing properties at runtime. And add missing bitrate upate and notification. Fixes: #1258 Part-of: 2022-08-04 13:02:00 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Use guint32 for rc_ctrl as it's for rc_ctrl_mode. Part-of: 2022-08-04 12:57:11 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Split aud property and its usage. Just as other property variables, it's split for ease it usage, particularly after adding access locks. Part-of: 2022-08-04 12:00:58 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.h: va: baseenc: Untabbify and format. Part-of: 2022-08-03 03:29:20 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Add gamma-mode and primaries-mode properties Allows controlling gamma remap and/or chromatic adaptation behavior. Part-of: 2022-08-03 01:47:46 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11videosink: Add gamma-mode and primaries-mode properties Allows controlling gamma remap and/or chromatic adaptation behavior. Part-of: 2022-08-03 01:19:41 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11convert: Add gamma-mode and primaries-mode properties Allows controlling gamma remap and/or chromatic adaptation behavior. Part-of: 2022-08-03 00:26:33 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11converter.cpp: * gst-libs/gst/d3d11/gstd3d11converter.h: d3d11converter: Add options for gamma and primaries conversion Gamma remap and/or primaries conversion requires additional processing which might be something user want to avoid, performance reason for example Part-of: 2022-08-01 13:04:47 +0200 Robert Mader * ext/wayland/gstwaylandsink.c: waylandsink: Logging code style updates For better readability of debug messages and to keep similar code in sync with `GstGtkWaylandsink`. Part-of: 2022-06-30 11:48:45 +0200 Robert Mader * ext/wayland/gstwaylandsink.c: waylandsink: Rename occurrences of GstWaylandSink to 'self' Rename all occurrences to `self`, making it consintent with `GstWl*` and `GstGtkWaylandsink`. Part-of: 2022-07-19 15:10:00 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Check for colorimetry changes. It uses what's merged in https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2765 Part-of: 2022-04-11 15:35:45 -0500 Olivier Crête * tests/examples/gtk/gtkwaylandsink.c: gtkwaylandsink test: Add navigationtest to example Part-of: 2021-12-08 10:30:21 +0200 George Kiagiadakis * docs/plugins/gst_plugins_cache.json: * ext/gtk/gstgtkutils.c: * ext/gtk/gstgtkutils.h: * ext/gtk/gstgtkwaylandsink.c: * ext/gtk/gstgtkwaylandsink.h: * ext/gtk/gstplugin.c: * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: * ext/gtk/gtkgstwaylandwidget.c: * ext/gtk/gtkgstwaylandwidget.h: * ext/gtk/meson.build: * ext/meson.build: * meson_options.txt: * tests/examples/gtk/gtkwaylandsink.c: * tests/examples/gtk/meson.build: * tests/examples/gtk/window.ui: * tests/examples/meson.build: Add new gtkwaylandsink element This is based on gtksink, but similar to waylandsink uses Wayland APIs directly instead of rendering with Gtk/Cairo primitives. Note that the long term plan is to move this into the existing extension in `-good`, which requires the Wayland library to move the as well. For this reason several files like `gstgtkutils.*` and `gtkgstbasewidget.*` are straight copies and should be kept in sync. Part-of: 2022-08-02 05:06:24 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Translate mouse position Converts mouse cursor position represented in display coordinates to stream coordinates. Part-of: 2022-08-02 04:16:31 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: d3d11videosink: Early terminate mouse/keyboard event handling ... and add missing null check (plus coding style fix) Part-of: 2022-07-30 17:28:41 +0100 Philippe Normand * gst-libs/gst/webrtc/nice/nice.c: * gst-libs/gst/webrtc/nice/nicestream.c: * gst-libs/gst/webrtc/nice/nicetransport.c: webrtc: nice: WeakRef access fixes The GstWebRTCNiceStream::ice property getter already hands-off a full reference, so there is no need to call g_weak_ref_get() in call sites. Fixes #1350 Part-of: 2022-07-30 17:19:42 +0100 Philippe Normand * gst-libs/gst/webrtc/ice.h: webrtc: ice: Fix GstWebRTCICE parent class It is a GstObject, not a GObject. Part-of: 2022-07-30 17:43:38 +0100 Philippe Normand * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: dtls: Properly name encoder/decoder logging categories Part-of: 2022-07-30 17:42:50 +0100 Philippe Normand * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlsagent.h: * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: dtls: Make agent and connection GstObjects Facilitates debug logs interpretation of GST_DEBUG_OBJECT() calls. Part-of: 2022-07-30 02:29:49 +0530 Nirbheek Chauhan * ext/sctp/usrsctp/meson.build: * sys/qsv/libmfx/meson.build: meson: Don't pass -Werror to vendored code Do it the correct way with libusrsctp -- override the option so that it's done in a compiler-agnostic and future-proof way. Part-of: 2022-05-25 18:40:30 +0530 Nirbheek Chauhan * gst/rtmp2/gstrtmp2locationhandler.c: * gst/rtmp2/rtmp/rtmpclient.c: rtsp+rtmp: Forward warning added to tls-validation-flags to our users With the 2.72 release, glib-networking developers have decided that TLS certificate validation cannot be implemented correctly by them, so they've deprecated it. In a nutshell: a cert can have several validation errors, but there are no guarantees that the TLS backend will return all those errors, and things are made even more complicated by the fact that the list of errors might refer to certs that are added for backwards-compat and won't actually be used by the TLS library. Our best option is to ignore the deprecation and pass the warning onto users so they can make an appropriate security decision regarding this. We can't deprecate the tls-validation-flags property because it is very useful when connecting to RTSP cameras that will never get updates to fix certificate errors. Relevant upstream merge requests / issues: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2214 https://gitlab.gnome.org/GNOME/glib-networking/-/issues/179 https://gitlab.gnome.org/GNOME/glib-networking/-/merge_requests/193 Part-of: 2022-05-25 16:03:22 +0530 Nirbheek Chauhan * ext/dtls/gstdtlscertificate.c: dtls: Disable OpenSSL 3.0 deprecation warnings for now Fedora 36 ships with OpenSSL 3.0, which deprecates all low-level APIs, so this code needs to be rewritten. There is no easy fix in the porting guide, and it recommends disabling the warnings if you can't use the high-level API. https://wiki.openssl.org/index.php/OpenSSL_3.0#Upgrading_to_OpenSSL_3.0_from_OpenSSL_1.1.1 Here's the replacement API: https://www.openssl.org/docs/man3.0/man7/migration_guide.html#Deprecated-low-level-object-creation Part-of: 2022-07-29 02:36:40 +0900 Seungha Yang * sys/wasapi2/gstwasapi2ringbuffer.cpp: wasapi2: Fix initial mute/volume setting Fix up volume/mute change flag setting Part-of: 2022-07-26 13:59:33 -0400 Eric Knapp * sys/va/gstvah264enc.c: va: h264enc: Make AUD the first NAL unit Part-of: 2022-07-26 15:49:32 -0400 U. Artie Eoff * ext/webrtc/meson.build: * gst-libs/gst/webrtc/nice/meson.build: meson: webrtc: ensure definition of libgstwebrtcnice_dep ... and skip if it's disabled. Fixes #1344 Part-of: 2022-04-18 23:25:13 +0530 yatinmaan * docs/plugins/gst_plugins_cache.json: * ext/webrtc/fwd.h: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcstats.c: * ext/webrtc/meson.build: * ext/webrtc/transportstream.c: * ext/webrtc/webrtcsctptransport.h: * gst-libs/gst/webrtc/ice.c: * gst-libs/gst/webrtc/ice.h: * gst-libs/gst/webrtc/icestream.c: * gst-libs/gst/webrtc/icestream.h: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/nice/meson.build: * gst-libs/gst/webrtc/nice/nice.c: * gst-libs/gst/webrtc/nice/nice.h: * gst-libs/gst/webrtc/nice/nice_fwd.h: * gst-libs/gst/webrtc/nice/nicestream.c: * gst-libs/gst/webrtc/nice/nicestream.h: * gst-libs/gst/webrtc/nice/nicetransport.c: * gst-libs/gst/webrtc/nice/nicetransport.h: * gst-libs/gst/webrtc/webrtc-priv.h: * gst-libs/gst/webrtc/webrtc.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Split WebRTCICE into base classes and implementation. Part-of: 2022-07-22 22:50:33 +0900 Seungha Yang * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvencoder.cpp: qsvencoder: Add support for D3D11 shared texture Although input texture belongs to the other d3d11 device, we can do GPU copy when its physical device is identical. Part-of: 2022-07-23 00:41:49 +0900 Seungha Yang * sys/amfcodec/gstamfencoder.cpp: * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/mediafoundation/gstmfvideoencoder.cpp: * sys/mediafoundation/gstmfvideoencoder.h: * sys/nvcodec/gstnvencoder.cpp: d3d11: Port to GstD3D11Fence Part-of: 2022-07-23 00:11:18 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_fwd.h: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11device.h: d3d11: Implement fence abstraction Depending on device feature level, d3d11 runtime can support ID3D11Fence which is equivalent to ID3D12Fence. Waiting using fence has performance-wise benefit over pulling ID3D11Query status. If ID3D11Fence is not supported by device, then ID3D11Query will be used instead. Part-of: 2022-06-08 15:44:26 +0200 Benjamin Gaignard * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265: Make sure that sps is processed just before decoding It may happens that bitstream doesn't provided SPS in decoding order (like in VPSSPSPPS_A_MainConcept_1 conformance test file). To be sure that the decoder got the correct SPS parameters process SPS just before start decoding the frame. Part-of: 2022-03-18 15:04:18 +0100 Sebastian Fricke * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265: Fix typos Fix multiple typos in warning and info messages. Part-of: 2022-05-16 15:27:40 +0200 Benjamin Gaignard * gst/videoparsers/gsth265parse.c: videoparsers: h265: Be less restrictive between PPS and SPS parsing order Allow to parse PPS to be parser even if SPS hasn't been parsered before. This help to parse VPSSPSPPS_A_MainConcept_1 conformance test Part-of: 2022-05-16 15:25:36 +0200 Benjamin Gaignard * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparsers: Defering computation of pps and sps fields While possible defer computataion of pps and sps fields until slice parsing since it may happens that bitstreams don't encoded them in expected order. A example weird ordered bitstreams is VPSSPSPPS_A_MainConcept_1 conformance test. Part-of: 2022-07-20 12:11:47 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Reset the number of slices on picture start This way, if we aborted a frame in the middle, we don't endup thinking there is multiple slices to send. Part-of: 2022-07-12 15:44:45 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Fix initialization of the slice array The function g_array_sized_new() leaves the len to 0, but the slice implementation assumes it would be set to 4. Sending multiple slices is not yet support for H.264 as no driver needed it yet, but if that code was to be used it would have overflowed as the array would never grow as multiple 0 by 2 always results in 0. Part-of: 2022-07-12 15:43:34 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Rename count variable to num_controls This is the counter for the used control slot. The term num_controls was introduced in the HEVC decoder and felt like a better choice. Part-of: 2022-06-20 12:22:20 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech265dec.c: v4l2codecs: hevc: Add an API check This adds an API check and bump recommended base kernel version to 5.20. Part-of: 2022-07-12 08:56:07 -0400 Benjamin Gaignard * sys/v4l2codecs/gstv4l2codech265dec.c: * sys/v4l2codecs/gstv4l2codech265dec.h: * sys/v4l2codecs/meson.build: * sys/v4l2codecs/plugin.c: v4l2codecs: Add v4l2 stateless H265 decoder Add v4l2 stateless H265 decoder. Co-authored-by: Nicolas Dufresne Co-authored-by: Sebastian Fricke Part-of: 2022-04-25 15:27:39 +0200 Benjamin Gaignard * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: Increase minimum payload size Fluster MAXBINS_{A-C}_TI_5 HEVC tests files require to store a payload larger than usual given their resolutions. Increase the minimum payload size to handle them correctly. Part-of: 2022-07-12 08:57:38 -0400 Nicolas Dufresne * sys/v4l2codecs/linux/v4l2-controls.h: * sys/v4l2codecs/linux/videodev2.h: v4l2codecs: Align v4l2 headers with HEVC final uAPI HEVC uAPI have landed for kernel 5.10. Part-of: 2022-04-29 12:10:05 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparsers: h265: Introduce long_term_ref_pic_set_size This is the size of the `if( long_term_ref_pics_present_flag )` inside slice_segment_header( ) syntax. This size in bit, and after de-emulation is needed by some HW. Part-of: 2022-07-21 16:11:03 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Actually store number of samples to drop in gapless mode Part-of: 2022-07-21 16:10:18 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Use input running time for comparison instead of the currently tracked running time Otherwise gapless mode would do completely wrong calculations on discontinuities and cause input/output to drift slowly. Part-of: 2022-07-21 13:38:22 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Combine two if expressions to reduce indentation Part-of: 2022-07-22 04:51:14 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Add support for crop meta GstD3D11Converter supports cropping already. Cropping is just a matter of setting source rectangle area to converter, from d3d11 point of view Part-of: 2022-07-18 00:41:00 +0900 Seungha Yang * tests/examples/d3d11/d3d11converter.cpp: * tests/examples/d3d11/meson.build: examples: d3d11: Add GstD3D11Converter example An example to demonstrate color space conversion, rescale and flip/rotation using GstD3D11Converter Part-of: 2022-07-21 05:13:21 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11.h: * gst-libs/gst/d3d11/gstd3d11_fwd.h: * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11converter.cpp: * gst-libs/gst/d3d11/gstd3d11converter.h: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/meson.build: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/meson.build: d3d11: Move GstD3D11Converter to gst-libs The object is equivalent to GstVideoConverter but for D3D11. Application can use this object directly for various conversions, such as color space conversion, rescale, crop and flip/rotation. Part-of: 2022-07-21 05:40:45 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * gst-libs/gst/d3d11/meson.build: d3d11: Define enum and flags types manually gnome.mkenums_simple() doesn't work well for GstD3D11, seems to be confused by numeric representation of D3D11, must be a bug in GLib or so. Just don't rely on the incomplete automagic. Part-of: 2022-07-21 05:39:58 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11format.cpp: d3d11: Run gst-indent Part-of: 2022-07-06 16:14:13 +0300 Jordan Petridis * ext/openmpt/gstopenmptdec.c: openmpt: update from now deprecated api https://lib.openmpt.org/doc/classopenmpt_1_1module.html#ab2695af0baa274054f5687741fa7c05b Part-of: 2022-04-29 19:27:16 +0800 Fan F He * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdkenc: Enable LowDelayBrc and MaxFrameSize for I/P frame Enable these features for accurate bitrate control. Feature introduction of LowDelayBRC, MaxFrameSizeI and MaxFrameSizeP could be found here: https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md Signed-off-by: Fan F He Part-of: 2022-07-20 05:28:51 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11converter.h: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11converter: Use GstStructure to set initialization options Runtime updatable options are exposed via object properties but there are a few options which should be known at initialization time. Use GstStructure to signal it and to be easily extensible Part-of: 2022-07-19 01:52:48 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: d3d11converter: Use primaries and transfer function compare methods Different enum values could be functionally equal, then we don't need to do full conversion. Part-of: 2022-07-17 04:48:24 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11window.cpp: d3d11format: Move DXGI color space mapping method to gst-libs Expose color space mapping method to public so that application can configure GstCaps or GstVideoInfo using DXGI color space Part-of: 2022-07-17 00:33:55 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11convert: Use new colorimetry compare function Avoid conversion if both are functionally identical Part-of: 2022-07-17 23:58:19 +0900 Seungha Yang * sys/d3d11/gstd3d11testsrc.cpp: d3d11testsrc: Fix SMPTE pattern rendering It was wrong vertex shader code Part-of: 2022-07-13 10:30:49 +0200 Piotr Brzeziński * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: Add HEVC support to vtenc and vtdec Part-of: 2022-06-16 03:57:37 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11.h: * gst-libs/gst/d3d11/gstd3d11compile.cpp: * gst-libs/gst/d3d11/gstd3d11compile.h: * gst-libs/gst/d3d11/meson.build: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11shader.cpp: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/meson.build: * sys/d3d11/plugin.cpp: d3d11: Move HLSL compiler to gst-libs We should move this functionality to gst-libs so that GstD3D11Converter can be moved to gst-libs. Another advantage is that applications can call our HLSL compiler wrapper method without any worry about OS version dependent system installed HLSL library. Note that there are multiple HLSL compiler library versions on Windows and system installed one would be OS version dependent. Part-of: 2022-06-04 18:07:16 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: webrtcbin: Add a signal to plug bandwidth estimator elements We need GStreamer elements to do the bandwidth estimation as this way they can also control the pacing of the transmission flow as specified in the [GCC] algorithm for example. Bandwidth estimator element are placed right before the "RTPSession" as an "rtp-aux-sender" element. This way they can use the "Transport-wide Congestion Control" RTCP feedback messages through the "RTPTwcc" custom events that are sent by the rtpsession. Applications are responsible to react to the bandwidth estimator element and set the encoder target bitrate etc... which means that we can not pass an estimator as an element factory, so a signal as been chosen instead. [GCC]: https://datatracker.ietf.org/doc/html/draft-ietf-rmcat-gcc-02 Part-of: 2022-07-08 00:16:02 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Report latency Similar to that of h264decoder Part-of: 2022-07-08 22:05:12 +0800 He Junyan * sys/va/gstvabaseenc.c: va: baseenc: Do not use codec frame structure again after finish_frame(). In _push_out_one_buffer(), we use codec frame structure again for error handling after we already call finish_frame(), which is a latent segment fault. Part-of: 2022-07-08 21:57:40 +0800 He Junyan * sys/va/gstvabaseenc.c: va: baseenc: Do not clear the codec frame twice when error. The current manner will clear the input codec frame twice if we fail to push the output data, which will trigger an assert. Part-of: 2022-07-05 18:21:12 +0300 Jordan Petridis * ext/fluidsynth/gstfluiddec.c: fluiddec: Remove workaround for version 1.1.9 We require >= 2.1 version since the previous commit Part-of: 2022-07-05 17:32:12 +0300 Jordan Petridis * ext/fluidsynth/gstfluiddec.c: * ext/fluidsynth/meson.build: fluidsynth: update from now deprecated api fluid_synth_set_chorus_on and fluid_synth_set_reverb_on were deprecated in favor of new funtions where you can also specify the fx_group the effect would apply. The behavior of the set_* variants was to apply to all groups so we pass -1 to the new functions as per documentation. https://www.fluidsynth.org/api/group__chorus__effect.html#ga3c48310eecdca9cd338799d19f19c32d and https://www.fluidsynth.org/api/group__reverb__effect.html#gacb7917564c988cf54f2e35189b509c8e and the introduction of the change: https://github.com/FluidSynth/fluidsynth/pull/673 Part-of: 2022-07-08 02:24:56 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11: Use scoped device lock Make code simpler and more deadlock-free Part-of: 2022-07-08 18:53:01 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: qsvencoder: Fix for latency report when B-frame is enabled QSV runtime will introduce additional delay when B-frame is enabled Part-of: 2022-07-08 19:05:19 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: qsvencoder: Do not query again if previous call succeeded Don't need to query multiple times Part-of: 2022-07-08 03:38:30 +0900 Seungha Yang * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11screencapture.h: * sys/d3d11/gstd3d11screencapturesrc.cpp: d3d11screencapturesrc: Set colorimetry to caps Make use of reported DXGI colorspace if possible Part-of: 2022-07-08 20:11:00 +0900 Seungha Yang * sys/d3d11/gstd3d11pluginutils.cpp: d3d11: Update colorspace map Map DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709 to sRGB colorimetry Part-of: 2022-07-08 04:37:33 +0900 Seungha Yang * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: d3d11: Add an utility method for DXGI colorspace conversion Add a method for DXGI_COLOR_SPACE_TYPE -> GstVideoColorimetry conversion Part-of: 2022-07-08 01:30:13 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11utils.cpp: d3d11: Serialize ensure_element_data() call It can be called any time from random thread. Thus, multiple device objects can be created for the same physical device if the call is not serialized, that's not a scenario we expect. Part-of: 2022-07-07 02:17:56 +0900 Seungha Yang * gst/proxy/gstproxysink.c: proxysink: Fix GstProxySrc leak Clear weak pointer to peer src when disposing. Part-of: 2022-07-06 03:14:25 +0900 Seungha Yang * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * tests/check/elements/proxysink.c: * tests/check/meson.build: proxysink: Make sure stream-start and caps events are forwarded There might be a sequence of event and buffer flow: - Got stream-start/caps/segment events - Got flush events - And then buffers with a new segment event In the above case, stream-start and caps event might not be reached to peer proxysrc if peer proxysrc is not ready to receive them. Part-of: 2022-03-04 14:28:21 +1100 Matthew Waters * ext/webrtc/gstwebrtcice.c: webrtc: implement support for asynchronous host resolution Doesn't block anymore if a mdns host resolution takes multiple seconds to complete in e.g. stun/turn/ice candidate usage. Part-of: 2022-07-04 22:27:34 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11converter.h: d3d11converter: Remove convert() method Expose only single convert_buffer() method. It's safer approach than passing arbitrary list of SRV/RTV pointers. Part-of: 2022-07-04 22:26:19 +0900 Seungha Yang * sys/d3d11/gstd3d11testsrc.cpp: d3d11testsrc: Use convert_buffer() method Part-of: 2022-07-04 22:01:49 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11videoprocessor.cpp: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/meson.build: d3d11: Remove video processor Processing using ID3D11VideoProcessor was integrated into GstD3D11Converter and GstD3D11VideoProcessor implementation is not used anymore. Part-of: 2022-07-04 21:57:42 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * tests/examples/d3d11/d3d11videosink-appsrc.cpp: d3d11memory: Update alloc_wrapped() API to avoid staging texture alloc Add size parameter and use it for CPU accessible memory size instead of allocating staging texture per API call. Part-of: 2022-06-30 11:04:29 +0200 Ignazio Pillai * sys/wasapi/gstwasapiutil.c: wasapi: Implement default audio channel mask Some multichannel capture devices does not provide a channel mask value which will result in a pipeline failure due to the empty channel mask. Implemented the same fix used for wasapi2 Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1204 Part-of: 2022-07-03 01:22:10 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Add support for rotation Adding "rotate-method" property Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1396 Part-of: 2022-07-03 01:18:19 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11videosink.h: d3d11videosink: Protect window with lock at every place Access to the object should be thread safe to support runtime property update Part-of: 2022-07-02 04:23:41 +0900 Seungha Yang * sys/d3d11/gstd3d11basefilter.cpp: * sys/d3d11/gstd3d11convert.cpp: d3d11convert: Add support for GstVideoOrientationMethod Add flip/rotation support via GstVideoDirectionInterface Part-of: 2022-07-02 02:15:00 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: d3d11converter: Add support for GstVideoOrientationMethod Shader can handle rotation/flip with other conversions at once in a single pipeline, and depending on device capability, videoprocessor may support it too. Part-of: 2022-07-01 23:49:49 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11videosink: Use single GstD3D11Converter object GstD3D11Converter supports videoprocessor and texture upload. Part-of: 2022-07-01 21:35:15 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11memory: Add private method for texture wrapped memory allocation Unlike public method gst_d3d11_allocator_alloc_wrapped(), newly added method by this commit will not calculate CPU accessible memory size, since staging texture must be allocated to calculate the size. Part-of: 2022-07-01 21:20:02 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * sys/d3d11/gstd3d11pluginutils.h: d3d11: Use library private header in plugin Part-of: 2022-07-01 20:47:37 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Use single GstD3D11Converter object ... and remove unnessary videoprocessor/upload/copy code Part-of: 2022-07-01 04:12:23 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11convert: Add border-color property Use user specified border-color instead of black color Part-of: 2022-07-01 20:13:29 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11convert: Use single GstD3D11Converter object ... and don't use GstD3D11VideoProcessor. Now GstD3D11Converter will be able to convert using videoprocessor, and texture upload is also supported by GstD3D11Converter. All the noisy code can be removed therefore. Part-of: 2022-06-22 02:44:26 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11converter.h: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11converter: Add support conversion using videoprocessor * Add videoprocessor feature to d3d11converter, in order to unifiy conversion flow. * Add convert_buffer() method to support automatic shader/videoprocessor selection. The method also supports texture upload if input memory cannot be used for conversion (e.g., system memory or so) Part-of: 2022-06-21 23:43:46 +0900 Seungha Yang * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11overlaycompositor.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11overlaycompositor: Objectify overlay render implementation Be consistent with other implementations Part-of: 2022-06-21 22:44:55 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11: Don't use const pointer to GstDxgiColorSpace Instead, fill values of passed GstDxgiColorSpace struct Part-of: 2022-06-28 16:40:55 +0300 Sebastian Dröge * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Pass video frames directly to the Decklink SDK without copying If the video frame is stored in PBO memory then we need to copy anyway as it might be stored in CPU-accessible GPU memory that can't be accessed from the Decklink driver. Part-of: 2022-05-10 14:11:06 +0800 Vincent Cheah Beng Keat * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/meson.build: msdkmjpegdec: Add support for error report Part-of: 2022-06-23 01:10:38 +0900 Seungha Yang * sys/nvcodec/gstnvencoder.cpp: * sys/nvcodec/gstnvencoder.h: * sys/nvcodec/gstnvh264encoder.cpp: * sys/nvcodec/gstnvh264encoder.h: * sys/nvcodec/gstnvh265encoder.cpp: * sys/nvcodec/gstnvh265encoder.h: * sys/nvcodec/plugin.c: nvencoder: Add support for dynamic GPU device selection Adding nvautogpu{h264,h265}enc class which will accept upstream logical GPU device object (GstCudaContext or GstD3D11Device) instead of using pre-assigned GPU instance. If upstream logical GPU device object is not NVENC compatible (e.g., D3D11 device of non-NVIDIA GPU) or it's system memory, then user specified "cuda-device-id" or "adapter-luid" property will be used for GPU device selection. Part-of: 2022-06-27 20:50:15 +0900 Seungha Yang * gst-libs/gst/cuda/gstcudautils.c: cuda: Protect gst_cuda_ensure_element_context() with lock Serialize the order of context setup since it can be called from multiple threads Part-of: 2022-06-30 16:45:46 +0900 Seungha Yang * gst-libs/gst/cuda/gstcudamemory.c: * sys/nvcodec/gstcudabasefilter.c: * sys/nvcodec/gstcudaformat.h: cuda: Add YUY2 and UYVY formats for GL interop Those formats are not supported conversion formats by CUDA convert/scale elements but would be useful for GL <-> CUDA interop use case. Part-of: 2022-06-30 17:47:05 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudadownload: Passthrough in case of CUDA -> SYSTEM GstCudaMemory supports CPU access via CUDA pinned host memory already and it would show faster memory transfer performance between GPU and CPU than copying from/to normal system memory. If downstream supports video meta, we can passthrough CUDA memory. Part-of: 2022-06-30 09:09:02 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Reject caps that are not valid for creating an SDP media. Part-of: 2022-04-22 16:37:34 +0200 Corentin Damman * sys/nvcodec/gstcudaformat.h: cudaformat: add support for planar 4:2:2 YUV formats in CUDA D3D11 interop Part-of: 2022-04-22 15:58:13 +0200 Corentin Damman * gst-libs/gst/cuda/gstcudamemory.c: * sys/nvcodec/gstcudaformat.h: cudamemory: add support for planar 4:2:2 YUV formats Part-of: 2021-06-22 14:43:29 +0200 Benjamin Gaignard * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: enumerate all possible formats Some decoder may also allow to (down) scale the decoded video. Use VIDIOC_ENUM_FRAMESIZES iotcl to enumerate the possible output formats resolutions. Part-of: 2022-06-26 22:26:29 +0900 Seungha Yang * sys/nvcodec/gstnvav1dec.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh264dec.h: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvh265dec.h: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp8dec.h: * sys/nvcodec/gstnvvp9dec.c: * sys/nvcodec/gstnvvp9dec.h: nvcodec: Add cuda-device-id read-only property to stateless decoders ... and remove unnecessary intermediate subclass from class hierarchy Part-of: 2022-06-26 21:09:50 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvcodec: Add cuda-device-id read-only property to CUVID decoders Similar to the other hardware decoder plugins, provides assigned device id via property Part-of: 2022-06-29 10:55:13 +0100 Tim-Philipp Müller * meson.build: coding style: allow declarations after statement See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1243/ and https://gitlab.freedesktop.org/gstreamer/gstreamer-project/-/issues/78 Part-of: 2022-06-29 00:31:01 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11convert: Add support for GstVideoCropMeta Performs crop, scale, and color space conversion all in a single render pipeline. Note that cropping related property is not added in this element (which will make negotiation very complicated), but user can configure videocrop element for crop meta to be attached on each buffer. Part-of: 2022-06-28 17:40:56 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: d3d11videosink: Fix for force-aspect-ratio setting when rendering on shared texture Set specified force-aspect-ratio value on window object in case of shared texture rendering as well Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1304 Part-of: 2022-06-26 06:39:54 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoencoder.cpp: * sys/mediafoundation/gstmfvideoencoder.h: mfvideoenc: Fix broken encoding when resolution is not an even number Width and height values of 4:2:0 subsampled YUV format should be even number, and if it's not the case, there should be padding which is not a contiguous memory layout. Do copy input frames to MediaFoundation's memory in that case for now. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1165 Part-of: 2022-06-28 01:29:06 +0100 Tim-Philipp Müller * ext/opus/gstopusheader.h: dv, opusparse: fix duplicate symbols in static build Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1262 Part-of: 2022-06-27 04:07:04 +0900 Seungha Yang * sys/d3d11/plugin.cpp: d3d11: Enumerate devices via native DXGI API D3D11CreateDevice() can fail for some reason (e.g., buggy GPU driver) and then gst_d3d11_device_new() will return nullptr. Use DXGI API directly instead of relying on the gst_d3d11_device_new() Part-of: 2022-06-25 01:15:17 +0900 Seungha Yang * tests/examples/d3d11/d3d11videosink-appsrc.cpp: * tests/examples/d3d11/meson.build: examples: Add an example for application texture sharing This example shows GstD3D11BufferPool usage and a way of D3D11 texture sharing between application and GStreamer via appsrc. Part-of: 2022-06-24 07:06:00 +0900 Seungha Yang * tests/examples/d3d11/d3d11decoder-appsink.cpp: * tests/examples/d3d11/meson.build: examples: Add d3d11decoder zero-copy rendering example This example code demonstrates D3D11 device sharing between application and GStreamer. Application can access texture using appsink and it can be rendered on application's window without any copy operation. Part-of: 2022-06-24 22:17:28 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11utils.cpp: * gst-libs/gst/d3d11/gstd3d11utils.h: d3d11: Add a helper method for GstContext creation Add gst_d3d11_context_new() method for application to create GstContext using GstD3D11Device. Part-of: 2022-06-24 01:00:00 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: d3d11memory: Add support for wrapping application texture Add gst_d3d11_allocator_alloc_wrapped() method to support wrapping application texture using GstD3D11Memory without copy. Part-of: 2022-06-24 01:25:07 +0900 Seungha Yang * gst-libs/gst/d3d11/d3d11-prelude.h: * gst-libs/gst/d3d11/gstd3d11.h: * gst-libs/gst/d3d11/gstd3d11_fwd.h: * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11bufferpool.h: * gst-libs/gst/d3d11/gstd3d11config.h.meson: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11device.h: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * gst-libs/gst/d3d11/gstd3d11utils.cpp: * gst-libs/gst/d3d11/gstd3d11utils.h: * gst-libs/gst/d3d11/meson.build: d3d11: Install library headers Our Direct3D11 abstraction layer has been improved and it gained good shape from API point of view. Also, On Windows, GstD3D11 has various advantages over GstGL in terms of compatibility/stability/feature/performance. Note that WGL implementation is known to be buggy for some drivers/vendors/scenario (that's a reason why Google implemented ANGLE). Moreover, GstGL is not fully optimized for Windows unfortunately. It's the time to open this interface to application developers for various optimized processing using our Direct3D11 infrastructure. Part-of: 2022-06-24 01:21:48 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * sys/amfcodec/gstamfencoder.cpp: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11upload.cpp: * sys/d3d11/gstd3d11videosink.cpp: * sys/nvcodec/gstnvencoder.cpp: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvencoder.cpp: d3d11: Update gst_d3d11_allocation_params_new() interface Define GST_D3D11_ALLOCATION_FLAG_DEFAULT (0) value instead of casting enum type everywhere. And pass D3D11_RESOURCE_MISC_FLAG value Part-of: 2022-06-27 12:06:50 -0400 U. Artie Eoff * sys/va/gstvavpp.c: va: postproc: add scale-method property Part-of: 2022-06-27 11:54:28 -0400 U. Artie Eoff * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: filter/postproc: move unconditional props to vavpp Only conditional/dynamic properties should be installed/handled by vafilter. Thus, move and install the unconditional/static properties in vavpp. Part-of: 2022-06-23 11:39:57 -0400 U. Artie Eoff * sys/va/gstvacompositor.c: * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: va: compositor/filter: use scale method setter Use the filter's scale method member instead of the sample's member. Removes the filter_flags member from the composite sample. Part-of: 2022-06-23 11:11:16 -0400 U. Artie Eoff * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: va: filter: add scale method field and setter Part-of: 2022-01-21 21:33:52 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.h: * sys/va/gstvajpegdec.c: * sys/va/gstvajpegdec.h: * sys/va/gstvaprofile.c: * sys/va/meson.build: * sys/va/plugin.c: va: Add vajpegdec element. Part-of: 2022-06-24 19:42:36 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstva.h: * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvaallocator.h: * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: va: allocator: Add hack for no fourcc when surface creation. This patch adds general mechanism for handling specific hacks. In this case for jpeg decoder in i965 driver, which cannot create surfaces with fourcc specified. From jpeg decoder to the allocator, which creates the surfaces, there's a non-simple path: basedec pseudo-class adds a hacks guint32 which will be set by actual elements (vajpegdec, in this case) and basedec will always set the hack to the allocator when the allocator is instantiated. Part-of: 2022-06-24 19:54:51 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvavideoformat.c: va: Add RGBP format definition. Part-of: 2022-04-28 13:16:03 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: va: caps: Add jpeg fields in coded caps. Given the supported rt formats in a profile/entrypoint config it's possible to know the supported JPEG colorspace and subsampling. This patch adds this information in coded caps to a safer autoplugging after jpegparser. Part-of: 2022-01-17 15:43:47 +0100 Víctor Manuel Jáquez Leal * sys/va/gstjpegdecoder.c: * sys/va/gstjpegdecoder.h: * sys/va/meson.build: va: Add jpegdecoder base class. This base class is intented for hardware accelerated decoders, but since only VA uses it, it will be kept internally in va plugin. It follows the same logic as the others video decoders in the library but. as JPEG are independet images, there's no need to handle a DBP so no need of a picture object. Instead a scan object is added with all the structures required to decode the image (huffman and quant tables, mcus, etc.). Part-of: 2022-06-27 12:36:29 +0200 Víctor Manuel Jáquez Leal * sys/va/meson.build: va: build: Remove duplicated source. Part-of: 2022-06-27 19:58:58 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudamemorycopy: Make sure writable caps before removing fields The caps to be modified may not be writable when D3D11/GL/NVMM are all disabled. Part-of: 2022-06-25 19:50:10 +0100 Tim-Philipp Müller * tests/check/meson.build: tests: skip unit tests for dependency-less elements that have been disabled Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1136 Part-of: 2022-06-23 14:31:10 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvaallocator.c: va: allocator: Use always lseek to get dmabuf size. Gallium drivers historically have reported strange dmabuf sizes, from always zero to the whole frame (multiple fds). The simplest solution is to use lseek SEEK_END to get the prime descriptor size. Also the allocator raises a warning if both values differ in order to report it to driver. Part-of: 2022-06-08 09:02:52 -0400 Nicolas Dufresne * gst-libs/gst/va/gstvaallocator.c: va: allocator: Fix translation of VADRMPRIMESurfaceDescriptor VADRMPRIMESurfaceDescriptor structure describes the offsets from the point of view of the specific handle (DMABuf). While GstVideoInfo (and the meta) describes offsets from the point of the view of the GstBuffer, an aggregate of all the GstMemory (1 per handle). This changes combined with [Mesa Fix](https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16813) fixes decoding failure with AMD driver. Fixes #1223 Part-of: 2022-06-23 21:43:11 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11.h: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.h: * gst-libs/gst/d3d11/meson.build: * sys/amfcodec/gstamfencoder.cpp: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11download.cpp: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11upload.cpp: * sys/d3d11/gstd3d11videosink.cpp: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvencoder.cpp: d3d11: Revert staging buffer pool implementation The staging buffer pool implementation was added to improve throughput performance since we can avoid per-frame CPU copy operation via staging texture but it turned out that we can not make it thread safe. See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1182 Reverting the staging texture implementation as it does not show any visible value. Part-of: 2022-06-23 21:35:23 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.cpp: qsvdecoder: Fix system memory alignment Do right padding, not left Part-of: 2022-06-23 21:41:24 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Fix texture download Stride applied to src/dst was reversed Part-of: 2022-06-16 17:02:43 +0200 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: Add YUV440 sampling support. Found some samples with this sampling, so in order to support it, JPEG2000 header cannot be used anymore, a this patch also adds the enums for each supported colorspace and sampling, avoiding hacks. Part-of: 2022-06-16 16:33:14 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvaallocator.c: * sys/va/gstvafilter.c: va: Use driver implementation macro rather than function. Part-of: 2022-06-18 10:36:53 +0800 He Junyan * gst/videoparsers/gsth265parse.c: h265parse: Fix uninitialized width and height when update src caps. The commit b90d0274 introduces uninitialized width and height when we consider to change the "pixel-aspect-ratio" for some interlaced stream. We need to check the resolution in the src caps, and if no resolution info found, there is no need to consider the aspect ratio. Part-of: 2022-06-21 20:04:15 +0900 Seungha Yang * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11window.cpp: d3d11: Fix some typos Fix up spelling and d3d11testsrc class meta. Part-of: 2022-06-18 20:14:22 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11compositor.h: * sys/d3d11/gstd3d11compositorbin.cpp: * sys/d3d11/gstd3d11compositorbin.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.cpp: d3d11compositor: Performance optimization Removing glvideomixer-like nuance (it was initially referenced) and rewriting element since it's not an optimal design at all from performance point of view. * Remove wrapper bin (and internal conversion/upload/download elements) which will waste CPU/GPU resources. Conversion/blending can be done by the d3d11compositor element at once. * Add support YUV blending without RGB conversion. The RGB <-> YUV conversion is completely unnecessary since YUV textures support blending as well. * Remove complicated blending operation properties since it's hard to use from application point of view. Instead, adding "operator" property like what compositor element does. Part-of: 2022-06-18 20:40:40 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: d3d11converter: Fix alpha factor update converter should set entire constant buffer values since it's mapped with write-discard flag Part-of: 2022-06-02 14:22:21 +0200 Robert Mader * docs/plugins/gst_plugins_cache.json: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * gst-libs/gst/wayland/gstwlwindow.c: * gst-libs/gst/wayland/gstwlwindow.h: gstwaylandsink: Add rotate-method property Similar to and inspired by glimagesink and gtkglsink. Using the Wayland buffer transform API allows to offload rotate operations to the Wayland compositor. This can have several advantages: - The Wayland compositor may be able to use hardware plane capabilities to do the rotation. - In case of pre-rotated content on rotated outputs the rotations may equal out, potentially allowing the compositor to use hardware planes even if they don't support rotate operations. Part-of: 2022-06-18 04:05:53 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.h: d3d11decoder: Check 16K resolution support 16K decoding is supported by some GPUs Part-of: 2022-06-17 05:11:08 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Add support for non-zero crop-{x,y} position AVC and HEVC define crop rectangle and the x/y coordinates might not be zero. This commit will address the non-zero x/y offset coordinates via GstVideoCropMeta if downstream supports the meta and d3d11 memory. Otherwise decoder will copy decoded texture into output frame. Part-of: 2022-06-17 02:45:51 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: d3d11converter: Implement filling border color Equivalent to GST_VIDEO_CONVERTER_OPT_BORDER_ARGB and GST_VIDEO_CONVERTER_OPT_FILL_BORDER options of GstVideoConverter Part-of: 2022-06-16 02:18:43 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11converter.h: * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/plugin.cpp: d3d11converter: Objectify converter ... and set conversion options via property Part-of: 2022-06-16 00:52:16 +0900 Seungha Yang * sys/d3d11/gstd3d11shader.cpp: * sys/d3d11/gstd3d11shader.h: d3d11shader: Remove GstD3D11Quad helper object It's not very generic to be used for various scenario. Use native D3D11 APIs directly instead. Part-of: 2022-06-16 00:50:12 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Don't use GstD3D11Quad The helper object will be removed Part-of: 2022-06-15 23:46:27 +0900 Seungha Yang * sys/d3d11/gstd3d11overlaycompositor.cpp: d3d11overlaycompositor: Fix HLSL compiler warning warning X3206: 'Sample': implicit truncation of vector type And don't use GstD3D11Quad since it will result in redundant API calls Part-of: 2022-02-01 23:46:43 +0100 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstcccombiner.h: cccombiner: expose output-padding property When schedule=true and output-padding=false, cccombiner will not inject padding in the output closed caption meta stream. The property has no effect when schedule=false. Part-of: 2022-06-15 15:06:20 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Limit sink query to sink pads This allows the reception of streams that don't exactly match the codec preferences. In particular, the ssrc in the codec preferences is local sender SSRC, the other side is expected to send a different SSRC. Part-of: 2022-06-08 19:18:48 +0300 Vivia Nikolaidou * gst/videoparsers/gsth265parse.c: avviddec, video.c, h265parse: Workaround for broken field-based interlaced encoders Some encoders (e.g. Makito) have H265 field-based interlacing, but then also specify an 1:2 pixel aspect ratio. That makes it kind-of work with decoders that don't properly support field-based decoding, but makes us end up with the wrong aspect ratio if we implement everything properly. As a workaround, detect 1:2 pixel aspect ratio for field-based interlacing, and check if making that 1:1 would make the new display aspect ratio common. In that case, we override it with 1:1. Part-of: 2021-05-19 16:03:22 +0200 Stéphane Cerveau * ext/srt/gstsrtsrc.c: * ext/srt/gstsrtsrc.h: srtsrc: add "keep-listening" property to avoid EOS on disconnect The property 'keep-listening' avoids EOS when the remote client disconnects. It can be useful to a keep a pipeline alive when the srt connection drops remotely. Part-of: 2021-05-19 16:00:13 +0200 Stéphane Cerveau * ext/srt/gstsrtsrc.c: srtsrc: remove dead code Remove code useless since 132e3a1af9deb1d2cdf84d22b954967207bcc03a Part-of: 2022-05-19 05:24:08 +0900 Seungha Yang * sys/qsv/gstqsvh264dec.cpp: qsvh264dec: Use newly added avcC data parsing API Use gst_h264_parser_parse_decoder_config_record() method to parse codec_data. Part-of: 2022-05-19 05:06:04 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: h264parse: Use newly added avcC data parsing API Use gst_h264_parser_parse_decoder_config_record() method to parse codec_data. Part-of: 2022-05-19 04:49:36 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Use newly added avcC data parsing API Use gst_h264_parser_parse_decoder_config_record() method to parse codec_data. Part-of: 2022-05-19 04:25:38 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * tests/check/libs/h264parser.c: h264parser: Add an API for AVCDecoderConfigurationRecord parsing Add a method for AVC configuration date parsing Part-of: 2022-06-15 10:07:26 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklinkvideosink: Fix selection of > PAL widescreen modes Part-of: 2022-06-07 16:30:36 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: va: basedec: Select output format with the used chroma in decoder. Currently, video format is decided with downstream caps intersection, but that's not correct since chroma is not considered. The video decoders have to decide the output format given the used chroma, not by the downstream caps negotiation. This patch changes that. Still, caps feature is selected by caps negotiation, then, with the preferred caps feature, the output format is search within that caps feature. Part-of: 2022-05-23 11:41:17 +1000 Matthew Waters * docs/plugins/gst_plugins_cache.json: * ext/vulkan/gstvulkan.c: * ext/vulkan/meson.build: * ext/vulkan/vkoverlaycompositor.c: * ext/vulkan/vkoverlaycompositor.h: vulkan: add vulkan overlay compositor element Part-of: 2022-05-23 11:26:24 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkfullscreenquad.c: * gst-libs/gst/vulkan/gstvkfullscreenquad.h: vkfullscreenquad: add support for disabling clearing e.g. if drawing over the top of an existing image, we don'w want to clear. Part-of: 2022-05-23 11:25:03 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkfullscreenquad.c: * gst-libs/gst/vulkan/gstvkfullscreenquad.h: vkfullscreenquad: support setting blend operations Allows e.g. blending with an existing image. Part-of: 2022-05-23 11:24:04 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkfullscreenquad.c: vkfullscreenaud: create the vulkan command pool upfront Allows outside to reuse the same command buffer pool much more easily. Part-of: 2022-05-17 17:07:49 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkbuffermemory.h: * gst-libs/gst/vulkan/gstvkbufferpool.h: * gst-libs/gst/vulkan/gstvkcommandbuffer.h: * gst-libs/gst/vulkan/gstvkdescriptorpool.h: * gst-libs/gst/vulkan/gstvkdescriptorset.h: * gst-libs/gst/vulkan/gstvkfence.h: * gst-libs/gst/vulkan/gstvkimagebufferpool.h: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/gstvkmemory.h: * gst-libs/gst/vulkan/gstvkvideofilter.h: vulkan: add some missing GAutoPtr definitions Part-of: 2022-05-17 16:32:09 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkimageview.h: vulkan: remove unneeded #ifdef for GAutoPtr Not necessary anymore as we depend on a new enough Glib version Part-of: 2022-05-17 13:22:33 +1000 Matthew Waters * ext/vulkan/gstvulkanelements.h: * ext/vulkan/vkcolorconvert.h: * ext/vulkan/vkdeviceprovider.h: * ext/vulkan/vkdownload.h: * ext/vulkan/vkimageidentity.h: * ext/vulkan/vkshaderspv.h: * ext/vulkan/vksink.h: * ext/vulkan/vkupload.h: * ext/vulkan/vkviewconvert.h: vulkan: move element register definition to relevant element headers Part-of: 2022-06-13 03:29:11 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: d3d11converter: Add support for colorimetry conversion Handle color primaries and gamma functions. HDR <-> SDR conversion (tone mapping) should be implemented as well but not a part of this patch. Part-of: 2022-06-14 03:15:42 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11convert: Don't passthrough if colorimetry conversion is required Different input/output colorimetry requires conversion Part-of: 2022-06-14 00:24:41 +0900 Seungha Yang * sys/d3d11/gstd3d11pluginutils.cpp: d3d11window: Use SDR colorspace whenever possible PQ uses completely different light level scale and it should not be used for SDR bt2020. Part-of: 2022-06-06 03:41:52 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11converter.h: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: d3d11converter: Rewrite conversion object Rewriting GstD3D11Converter (equivalent to GstVideoConverter) to optimize some conversion path and clean up. * Extract YUV <-> RGB conversion matrix building method to utils. It will be used by other implementation * Use calculated offset values for YCbCr <-> YPbPr conversion instead of hardcoded values * Handle color range adjustment * Move transform matrix building helper function to utils. The method will be used by other elements * Use single constant buffer. Multiple constatne buffer for conversion pipeline is almost pointless * Remove lots of duplicated HLSL code and split pixel shader code path into sampling -> colorspace conversion -> shader output packing * Avoid floating point precision error around UV coordinates * Optimize RGB -> YUV conversion path Part-of: 2022-05-24 10:40:26 +0200 Benjamin Gaignard * sys/v4l2codecs/gstv4l2format.c: * sys/v4l2codecs/gstv4l2format.h: * sys/v4l2codecs/linux/videodev2.h: v4l2codecs: Add P010 pixel format Copy V4L2_PIX_FMT_P010 define from linux header. V4L2_PIX_FMT_P010 is the little endian definition of P010 so map it GST_VIDEO_FORMAT_P010_10LE. Add it v4l2 default video formats to allows v4l2 decoders to enumerate and use it. Part-of: 2022-04-06 12:56:30 +0100 Tim-Philipp Müller * ext/gs/gstgscommon.cpp: * gst/mpegtsdemux/mpegtsbase.c: * gst/mxf/mxfdemux.c: * meson.build: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/va/vacompat.h: Bump GLib requirement to >= 2.62 Can't require 2.64 yet because of https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/323 Part-of: 2022-06-08 10:42:18 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Add support for 4K DCI, 8K/UHD2 and 8K DCI modes Part-of: 2022-06-02 06:06:48 +0900 Seungha Yang * sys/qsv/gstqsvallocator_d3d11.cpp: qsvencoder: Do not copy if input is D3D11 texture In case that input is D3D11 texture, QSV seems to work regardless of the alignment. Actually the alignment requirement seems to make only sense for system memory. Other Intel GPU dependent implementations (new VA encoder, and MediaFoundation) do not require such alignment nor other vendor specific ones (NVENC and AMF) Part-of: 2022-06-09 23:19:24 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Fix for alternate interlacing signalling Don't set d3d11+interlace caps feature. None of d3d11 elements support it Part-of: 2022-06-04 22:33:34 +0900 Seungha Yang * sys/d3d11/gstd3d11testsrc.cpp: * sys/d3d11/gstd3d11testsrc.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.cpp: d3d11: Add d3d11testsrc element Adding Direct3D11 based videotestsrc element Part-of: 2022-06-08 16:38:00 +0200 Mathieu Duponchelle * docs/meson.build: -bad/docs: be more selective about header files to exclude A few header files in -bad contain comments that start with the /** gtk-doc pattern, but should not actually be parsed (and warned about as such). Previously, we were using far-reaching wildcard patterns to avoid parsing those, but this had the unintended side effect of also excluding legitimate files, and creating confusion when comments were not parsed from those. Switch to excluding specific files instead. Part-of: 2022-05-27 05:15:13 +1000 Jan Schmidt * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstamcvideoenc.h: amc: Add H.265 encoder mapping. Add mime type mapping to enable the use of Android H.265 encoders Part-of: 2022-05-13 17:21:25 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: Decoder should use its own pool when downstream allocator is not recognizable Msdkdec should use it own pool when the allocation from downstream query is not any msdk_allocator (i.e. msdk_video_allocator, msdk_dmabuf_allocator and msdk_system_allocator). Otherwise, when using pipeline "msdkh264dec ! vah264enc !" to transcode a not 16-bit-aligned stream (i.e. 1920x1080), the transcoding will fail due to the size mismatch issue between decoder pool and encoder pool. Part-of: 2022-06-06 10:56:12 +0200 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: va: Update plugin cache. Part-of: 2022-05-29 13:43:29 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Guard logging functions .. and use spec for rate control rather than static switch. Part-of: 2022-05-30 10:20:11 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.c: * sys/va/gstvah264enc.c: vah264enc: Support default and none rate control. Part-of: 2022-05-29 12:09:05 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: va: encoder: Rate control property. Fixes: #1241 Part-of: 2022-05-30 11:26:24 +0100 Philippe Normand * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: Add a prepare-data-channel GObject signal This new signal allows data-channel consumers to configure signal handlers on a newly created data-channel, before any data or state change has been notified. The webrtcin unit-tests were refactored to make use of this new signal. Part-of: 2022-05-16 16:43:57 +0100 Philippe Normand * ext/webrtc/webrtcdatachannel.c: webrtcdatachannel: Chain to parent class constructed And add a debug log statement. Part-of: 2022-06-02 10:32:28 -0400 Eric Knapp * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Add 3G-SDI Level A output support Part-of: 2022-06-04 15:05:05 +0800 He Junyan * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Fix memory leaks in parse_user_data_unregistered(). Part-of: 2022-06-04 17:23:00 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpmessage.c: rtmp2: Fix allocation of GstRtmpMeta Use the right size. On 64-bit platforms, `GstMetaInfo` is larger than `GstRtmpMeta`, which masked this bug. On 32-bit platforms, it causes crashes. Thanks to @maxatka for discovering this. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1721 Part-of: 2022-06-02 16:38:55 +0200 Robert Mader * docs/plugins/gst_plugins_cache.json: * ext/wayland/gstwaylandsink.c: gstwaylandsink: Add support for the "render-rectangle" property We already implement the `set_render_rectangle` videooverlay interface, thus install the videooverlay property accordingly. Part-of: 2022-01-04 15:20:41 +0100 Robert Mader * docs/plugins/gst_plugins_cache.json: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/meson.build: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: * gst-libs/gst/wayland/gstwl_fwd.h: * gst-libs/gst/wayland/gstwlbuffer.c: * gst-libs/gst/wayland/gstwlbuffer.h: * gst-libs/gst/wayland/gstwlcontext.c: * gst-libs/gst/wayland/gstwlcontext.h: * gst-libs/gst/wayland/gstwldisplay.c: * gst-libs/gst/wayland/gstwldisplay.h: * gst-libs/gst/wayland/gstwllinuxdmabuf.c: * gst-libs/gst/wayland/gstwllinuxdmabuf.h: * gst-libs/gst/wayland/gstwlshmallocator.c: * gst-libs/gst/wayland/gstwlshmallocator.h: * gst-libs/gst/wayland/gstwlvideobufferpool.c: * gst-libs/gst/wayland/gstwlvideobufferpool.h: * gst-libs/gst/wayland/gstwlvideoformat.c: * gst-libs/gst/wayland/gstwlvideoformat.h: * gst-libs/gst/wayland/gstwlwindow.c: * gst-libs/gst/wayland/gstwlwindow.h: * gst-libs/gst/wayland/meson.build: * gst-libs/gst/wayland/wayland-prelude.h: * gst-libs/gst/wayland/wayland.c: * gst-libs/gst/wayland/wayland.h: * tests/examples/waylandsink/main.c: * tests/examples/waylandsink/wayland-threads.c: gstwayland: Move reusable parts of the waylandsink into a library In preparation for the new element `GstGtkWaylandSink`, move reusable parts out of `GstWaylandSink` into the already exisiting but very barebone library. Notable changes include: - the `GstWaylandVideo` interface was dropped - support for `wl-shell` was dropped - lots of renaming in order to match established naming patterns - lots of code modernisations, reducing boilerplate - members were made private wherever possible Part-of: 2022-06-06 00:30:15 +0200 Jan Alexander Steffens (heftig) * ext/opencv/gstcvtracker.cpp: * ext/opencv/gstcvtracker.h: * ext/opencv/meson.build: opencv: Allow building against 4.6.x Replace the broken version checks with one modeled after `GLIB_CHECK_VERSION`. Part-of: 2022-05-30 16:31:38 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: Reject answers that don't contain the same number of m-line as offer Otherwise, it segfaults later. Also add test to validate this. Part-of: 2022-03-15 12:44:20 +0100 Marc Leeman * docs/plugins/gst_plugins_cache.json: * gst/librfb/gstrfb-utils.c: * gst/librfb/gstrfb-utils.h: * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: * gst/librfb/meson.build: rfbsrc: add uri interface Adding a uri interface enables plugging in RFB/VNC sources to anything that makes use of uridecodebin: gst-play-1.0 rfb://:password@10.40.216.180:5903?shared=1 Use userinfo to pass user (ignored) and password, other key/value pairs can be encoded in the query part of the URI (see shared) Part-of: 2022-05-17 00:36:24 +0200 Andoni Morales Alastruey * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstvideoparseutils.c: * gst/videoparsers/gstvideoparseutils.h: videoparse: rename from _free to _clear The function does not free the structure but the data contained within. Part-of: 2022-05-16 14:21:53 +0200 Andoni Morales Alastruey * gst-libs/gst/codecparsers/gsth264parser.c: h264parse: fix leak in user data unregistered Part-of: 2022-02-27 18:41:12 +0000 Andoni Morales Alastruey * gst-libs/gst/codecparsers/gsth264parser.h: Fix documentation Part-of: 2022-02-17 15:55:19 +1100 Brad Hards * tests/check/elements/h264parse.c: h264parse: add unit test for Precision Time Stamp in SEI messages Part-of: 2021-12-19 19:14:05 +0100 Andoni Morales Alastruey * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: * gst/videoparsers/gstvideoparseutils.c: * gst/videoparsers/gstvideoparseutils.h: h264parse: add support Precision Time Stamp in SEI messages Expose User Data Unregistered as a new Meta and add API to parse Precision Time Stamp (ST 0604). Fixes #927 Part-of: 2022-06-02 02:22:19 +0900 Seungha Yang * gst-libs/gst/cuda/meson.build: meson: cuda: Add missing override_dependency() Required for GstCuda library to be consumed via "gstreamer-cuda-1.0" dependency. Part-of: 2022-06-02 21:25:38 +0900 Seungha Yang * gst-libs/gst/cuda/gstcudautils.c: cuda: Fix uninitialized debug category Make sure debug category init Part-of: 2022-04-22 06:46:07 +0000 Mengkejiergeli Ba * sys/msdk/gstmsdkav1enc.c: * sys/msdk/gstmsdkav1enc.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkav1enc: Reorder pts This is a workaround for pts because oneVPL cannot handle the pts correctly when there is b-frames. We first cache the input frame pts in a queue then retrive the smallest one for the output encoded frame as we always output the coded frame when this frame is displayable. Part-of: 2022-03-31 06:45:03 +0000 Mengkejiergeli Ba * sys/msdk/gstmsdkav1enc.c: * sys/msdk/gstmsdkav1enc.h: msdkav1enc: Add b-pyramid and p-pyramid Part-of: 2022-03-31 06:33:55 +0000 Mengkejiergeli Ba * sys/msdk/gstmsdkav1enc.c: * sys/msdk/gstmsdkav1enc.h: msdkav1enc: Add tile for encoding Part-of: 2022-03-31 06:03:36 +0000 Mengkejiergeli Ba * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkav1enc.c: * sys/msdk/gstmsdkav1enc.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/meson.build: msdk: Add msdkav1enc element Part-of: 2022-05-31 20:39:29 +0200 Jakub Adam * sys/amfcodec/gstamfencoder.cpp: amfencoder: always empty the queue when pushing output samples gst_amf_encoder_try_output() pushes at most one output buffer downstream although more may be ready. As a consequence, output samples will keep queueing up in AMFComponent whenever QueryOutput() returns AMF_REPEAT (and do_wait is FALSE). This has negative impact on latency when the video being encoded is a live stream. In order to avoid it, always retrieve and push all samples available in AMFComponent's output queue at once. Part-of: 2022-05-29 06:55:27 +0900 Seungha Yang * sys/directshow/gstdshowvideosrc.cpp: * sys/directshow/plugin.cpp: directshow: Fix for uninitialized debug category warning A method in the code is used in another place (device provider) Part-of: 2022-05-29 12:42:52 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabaseenc.c: * sys/va/gstvabasetransform.c: va: Register base classes as abstract. Part-of: 2022-05-29 12:09:22 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: va: encoder: Use entrypoint type. Part-of: 2022-05-27 14:47:21 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: va264enc: Fix typo. Part-of: 2022-05-27 14:45:51 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: va: encoder: Fix regression since commit 2042c2d4f0. There's no need to compare with the open entrypoint to query the encoder. This commit removes the checks to the configured entrypoint with the parameter. Part-of: 2022-03-26 23:48:46 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoencoder.cpp: * sys/mediafoundation/gstmfvideoencoder.h: * sys/mediafoundation/gstmfvp9enc.cpp: * tests/examples/mediafoundation/meson.build: * tests/examples/mediafoundation/mfvideoenc-dynamic-reconfigure.c: * tests/examples/meson.build: mfvideoencoder: Handle dynamic property update Re-init MFT on property update to apply new encoding options Part-of: 2022-03-26 23:50:24 +0900 Seungha Yang * sys/mediafoundation/plugin.cpp: mediafoundation: Run indent Part-of: 2022-03-26 22:24:27 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoencoder.cpp: mfvideoenc: Remove redundant bitwise or operation MFT_ENUM_FLAG_SORTANDFILTER_APPROVED_ONLY (0xc0) covers MFT_ENUM_FLAG_SORTANDFILTER (0x40) Part-of: 2022-03-26 21:47:10 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoencoder.cpp: mfvideoencoder: Early terminate d3d11 interop Shared texture will work only for the same GPU Part-of: 2022-03-26 21:43:50 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoencoder.cpp: mfvideoencoder: Check HRESULT code as well for GPU sync Part-of: 2022-03-26 21:40:47 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoencoder.cpp: mfvideoencoder: Don't specify keyed mutex misc flag Current implemetation copies textures using non-keyed mutex way. D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX is pointless Part-of: 2022-05-25 13:25:15 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacompositor.c: vacompositor: Pass video info pointer than copying it. Part-of: 2022-05-25 13:24:41 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacompositor.c: vacompositor: Remove useless consts. Part-of: 2022-05-27 21:13:43 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Work around Intel DXVA driver crash Intel DXVA driver crashes sometimes (from GPU thread) if ID3D11VideoDecoder is released while there are outstanding view objects. To make sure the object life cycle, holds an ID3D11VideoDecoder refcount in GstD3D11Memory object. Part-of: 2022-05-26 23:50:08 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: qsvencoder: Bind internal texture to render target ... so that memory allocator can initialize texture with black color Part-of: 2022-05-26 23:46:05 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11memory: Clear YUV texture with black color We prefer black color as an initial texture color and Direct3D11 runtime will initialize texture with zeros (except for alpha) which is fine for RGB formats. But UV components of YUV texture requires manual clear for black color. Part-of: 2022-05-24 12:54:05 -0400 U. Artie Eoff * tests/check/elements/vacompositor.c: * tests/check/meson.build: tests: va: add simple vacompositor test Part-of: 2022-04-22 16:29:56 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: Add intra refresh parameters Note that for msdkh265enc, intra refresh parameters are only supported under low-power mode. If these parameters are set without enabling lowpower, they will be simply ignored. Part-of: 2022-04-15 13:38:20 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdkh264enc: Add intra refresh parameters Part-of: 2022-05-23 00:36:50 +0900 Seungha Yang * tests/examples/d3d11/d3d11videosink-kb.c: * tests/examples/d3d11/d3d11videosink-kb.h: * tests/examples/d3d11/d3d11videosink.c: * tests/examples/d3d11/meson.build: * tests/examples/key-handler.c: * tests/examples/key-handler.h: * tests/examples/nvcodec/meson.build: * tests/examples/nvcodec/nvcodec-kb.c: * tests/examples/nvcodec/nvcodec.c: * tests/examples/nvcodec/nvcodec.h: * tests/examples/qsv/meson.build: * tests/examples/qsv/qsvenc-dynamic-reconfigure.c: tests: examples: Stop duplicating keyboard interaction handler code Extract the code from QSV and use it for D3D11 and NVCODEC examples Part-of: 2022-05-26 14:08:55 +0100 Tim-Philipp Müller * ext/webrtc/gstwebrtcice.c: webrtc: fix build with older libnice versions 1) check for right macro name when checking for NICE_VERSION_CHECK 2) if libnice version is 0.1.18.1 this should not satisfy a NICE_VERSION_CHECK(0,1,19). Fixes build with libnice 0.1.18.1 subproject checkout. Part-of: 2022-05-24 05:33:05 +1000 Jan Schmidt * sys/androidmedia/gstamc.c: amc: Don't map input buffer with write mode When copying data out of a GStreamer buffer, we don't need to map it writable. Part-of: 2022-05-11 09:17:46 +0100 Philippe Normand * ext/webrtc/gstwebrtcice.c: webrtc: Use new libnice API to get the candidate relay address Corresponding libnice API added in: https://gitlab.freedesktop.org/libnice/libnice/-/merge_requests/229 (0.1.19) https://gitlab.freedesktop.org/libnice/libnice/-/merge_requests/232 (0.1.20) Part-of: 2022-05-11 09:15:33 +0100 Philippe Normand * ext/webrtc/gstwebrtcice.c: * ext/webrtc/meson.build: webrtc: Ensure the NICE_CHECK_VERSION macro is available This macro was introduced in libnice 0.1.19.1, so until we bump our libnice dependency to 0.1.20 we have to vendor the macro. Part-of: 2022-03-26 12:36:46 +0000 Philippe Normand * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: * ext/webrtc/gstwebrtcstats.c: webrtc: Refactor ICECandidateStats freeing logic to a dedicated function Part-of: 2022-03-20 12:36:07 +0000 Philippe Normand * ext/webrtc/gstwebrtcbin.c: webrtcbin: Document IceCandidateStats and RTCIceCandidatePairStats Part-of: 2021-09-01 16:12:24 +0000 Sherrill Lin * tests/check/elements/webrtcbin.c: webrtcstats: Update unit test for outbound rtp stats "remote-id" is not guaranteed to present after commit 1deb034e3d873f577a38bc483e6256b0346ee874. Thus, we should not fail the test if "remote-id" is not found. Part-of: 2021-06-30 16:01:10 -0400 Sherrill Lin webrtcstats: Improve selected candidate pair stats by adding ICE candidate info The implementation follows w3.org specs: * https://www.w3.org/TR/webrtc-stats/#icecandidate-dict* * https://www.w3.org/TR/webrtc-stats/#candidatepair-dict* Corresponding unit tests are also added. Rebased and updated from https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1462 Fixes #1207 Part-of: 2022-05-23 20:58:47 +0800 He Junyan * sys/va/gstvabaseenc.c: * sys/va/gstvabaseenc.h: * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: * sys/va/gstvah264enc.h: * sys/va/plugin.c: va: H264enc: Add encoder for VAEntrypointEncSliceLP. We name vah264lpenc to support H264's VAEntrypointEncSliceLP encoder. Part-of: 2022-05-25 20:01:34 +0800 He Junyan * sys/va/gstvabaseenc.c: va: encoder: Do not reset the frame count when reconfig(). We should not reset the input/output_frame_count when some configure changes. For example, the if resolution changes, the current way just resets the frame count and make the PTS of the output buffer restart from the original PTS of the first frame. That causes a lot of QOS event and drop all the new frames. We should only reset them when encoder start(). Part-of: 2022-05-25 19:57:18 +0800 He Junyan * sys/va/gstvabaseenc.c: * sys/va/gstvabaseenc.h: * sys/va/gstvah264enc.c: va: encoder: change reset_state() to a virtual function of base class. Part-of: 2022-05-24 10:21:31 -0400 U. Artie Eoff * sys/va/gstvacompositor.c: vacompositor: check caps and info return values Check return values for get caps and video info from caps. This was flagged by static analysis. Part-of: 2022-05-25 02:38:01 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Don't print error log on negotiation failure It may not be a critical error and even expected when shutting down pipeline or flushing. Part-of: 2022-05-24 11:06:39 +0200 Erwann Gouesbet * sys/d3d11/gstd3d11screencapture.cpp: d3d11screencapture: Fix missing/outdated cursor shape d3d11screencapture can miss a cursor shape to draw or draw an outdated cursor shape. - AcquireNextFrame only provides cursor shape when there is one update - current d3d11screencapture skips cursor shape when mouse is not drawn So, if a gstreamer application uses d3d11screencapture with cursor initially not drawn "show-cursor"=false and then switches this property to true, the cursor will not be actually drawn until AcquireNextFrame provides a new cursor shape. This commit makes d3d11screencapture always update the cursor shape information, even if the mouse is not drawn. d3d11screencapture will always have the latest cursor shape when requested to draw it. Part-of: 2022-05-24 14:47:43 +0200 Víctor Manuel Jáquez Leal * sys/va/plugin.c: va: Avoid unused variable if logging is disabled. Part-of: 2022-05-22 10:10:38 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvah264enc.c: va: Keep include's code style Headers are in alphabetical order. Part-of: 2022-05-24 13:19:45 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: vafilter: Fix logging of unsupported alpha blending. Part-of: 2022-05-24 14:36:36 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: reuese the same fec/rtx/red payload types for the same media payload WHen bundling, if multiple medias are used with the same media payload, then each of the fec/rtx/red additions would add a distinct payload. This could very easily overflow the available payload space. Instead, track the relationship between the media payload value and the relevant fec/rtx/red payload values and reuse them whenever necessary, even when bundling. e.g. ... a=group:BUNDLE video0 video1 m=video 9 UDP/SAVPF 96 97 a=mid:video0 a=rtpmap:96 VP8/90000 a=rtpmap:97 rtx/90000 a=fmtp:97 apt=96 ... m=video 9 UDP/SAVPF 96 97 a=mid:video1 a=rtpmap:96 VP8/90000 a=rtpmap:97 rtx/90000 a=fmtp:97 apt=96 ... Part-of: 2022-05-23 00:04:03 +0900 Seungha Yang * tests/examples/qsv/qsvenc-dynamic-reconfigure.c: tests: examples: Fix typo in QSV encoder example Fixing width adjustment Part-of: 2022-05-22 22:44:11 +0900 Seungha Yang * sys/qsv/gstqsvav1enc.cpp: * sys/qsv/gstqsvav1enc.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: * tests/examples/qsv/qsvenc-dynamic-reconfigure.c: qsv: Add AV1 encoder element Part-of: 2022-05-22 21:38:34 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvjpegenc.cpp: * sys/qsv/gstqsvvp9enc.cpp: qsvencoder: Move common property to baseclass adapter-luid and device-path are common for all codecs Part-of: 2022-05-23 15:03:03 +0800 He Junyan * sys/va/gstvabaseenc.c: va: baseenc: No need to check the frame pointer in handle_frame(). No need to check the NULL pointer of "frame" in error handling, it is assured non-NULL by base class and we already use it everywhere in this function. Part-of: 2022-05-22 15:03:54 +0800 He Junyan * sys/va/gstvabaseenc.c: va: baseenc: include the "vacompat.h" for old version glib. Part-of: 2022-04-26 12:07:26 -0400 U. Artie Eoff * sys/va/plugin.c: va: vpp: enable compositor Part-of: 2022-04-26 12:06:17 -0400 U. Artie Eoff * sys/va/gstvacompositor.c: * sys/va/gstvacompositor.h: * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/meson.build: va: vpp: add compositor New implementation of a VA-API compositor with blend feature. Various chunks of code was taken from vavpp. Part-of: 2022-03-25 21:51:47 +0800 He Junyan * sys/va/gstvah264enc.c: va: Apply the va base encoder to the vah264enc. Part-of: 2022-03-25 21:48:05 +0800 He Junyan * sys/va/gstvabaseenc.c: * sys/va/gstvabaseenc.h: * sys/va/meson.build: va: Add the GstVaBaseEnc common object for all va encoders. Just like the GstVaBaseDec and GstVaBaseTransform, this base encoder will handle all common logic for all va encoders. Part-of: 2022-05-15 00:56:59 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: d3d11device: Enhance format enumeration and debugging * Enhance debug log to print human readable D3D11_FORMAT_SUPPORT flags value, instead of packed numeric flagset value. * Only device supported format will be added to format table. Depending on device feature level (i.e., D3D9 feature devices), 16bits formats will not be supported. Although there might be formats we deinfed but not supported, it will not be a major issue in practice since our D3D11 implementation does not support legacy devices already (known limitation) and also old d3dvideosink will be promoted in that case. Part-of: 2021-12-22 19:23:37 +0100 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: * gst/jpegformat/meson.build: * tests/check/elements/jpegparse.c: jpegparse: Rewrite element. Now it uses the JPEG parser in libgstcodecparsers, while the whole code is simplified by relying more in baseparser class for tag handling. The element now signals chroma-format and default framerate is 0/1, which is for still-images. Part-of: 2021-12-25 13:00:17 +0100 Víctor Manuel Jáquez Leal * tests/check/elements/jpegparse.c: tests: jpegparse: Mark data as static. Part-of: 2021-12-22 18:13:17 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjifmux.h: * gst/jpegformat/gstjpegformat.h: * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/meson.build: jpegformat: Use codecparsers' for JPEG markers. Instead of repeating JPEG markers definition, this patch uses those defined in gstcodecparsers library. Part-of: 2021-12-22 17:35:23 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: jpegparse: Headers cleanup Part-of: 2022-05-18 16:54:53 +0100 Philippe Normand * ext/webrtc/webrtcdatachannel.c: datachannel: Notify low buffered amount according to spec Quoting https://www.w3.org/TR/webrtc/#dom-rtcdatachannel-bufferedamountlowthreshold The bufferedAmountLowThreshold attribute sets the threshold at which the bufferedAmount is considered to be low. When the bufferedAmount decreases from above this threshold to **equal** or below it, the bufferedamountlow event fires. Part-of: 2022-05-17 14:15:40 +0300 Sebastian Dröge * gst/mpegtsmux/gstbasetsmux.c: tsmux: Make sure to set srcpad caps under all conditions before outputting the first buffer Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1218 Part-of: 2022-05-17 04:27:00 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.cpp: d3d11device: Don't print ERROR log on open failure Device open can be failed in various reasons, but it's unlikely our problem Part-of: 2022-05-17 14:02:28 +0300 Sebastian Dröge * gst/sdp/gstsdpdemux.c: sdpdemux: Release request pads from rtpbin when freeing a stream Otherwise the pads of the rtpbin stay around forever and are leaked. Part-of: 2022-05-17 03:32:10 +0900 Seungha Yang * sys/qsv/libmfx/meson.build: * sys/qsv/meson.build: qsv: Disable non-MSVC build on Windows ... and remove pointless UWP consideration that will never work. Cross-compiled binary has an issue which causes deadlock. Although cerbero will not build this plugin for non-MSVC build, people can still build this plugin and may complain its brokenness. See also https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/854 Part-of: 2022-04-28 16:02:26 +0100 Diogo Goncalves * sys/applemedia/avfvideosrc.m: avfvideosrc: fix wrong framerate selected for caps This fix solves an issue where a format that doesn't support the requested framerate would be selected. It ensures that we use the first format and framerate pair that supports the requested caps. Part-of: 2022-05-12 05:13:08 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Add hardcoded minimum resolution values to caps for NVIDIA NVIDIA GPUs have undocumented limitation regarding minimum resolution and it can be queried via a NVDEC API. However, since we don't want to bring CUDA/NVDEC API into D3D11, use hardcoded values for now until we find a nice way for capability check. Part-of: 2022-05-12 07:23:29 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Handle files produced by legacy FFmpeg Until March 2022, the FFmpeg MXF muxer would write the various index table segments with the same instance ID, which should only be used if it is a duplicate/repeated table. In order to cope with those, we first compare the other index table segment properties (body/index SID, start position) before comparing the instance ID. This will ensure that we don't consider them as duplicate, but can still detect "real" duplicates (which would have the same other properties). Part-of: 2022-05-03 16:23:09 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: va: basedec: Always select first available format. If the stream chroma doesn't match with any video format in the source caps template (generated from va config surface formats) instead of return unknown, return the first available format in the template, assuming that the driver would be capable to do color conversions. Part-of: 2022-05-07 03:15:44 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Improve robustness against malformed NAL packets Use newly added gst_h265_parser_identify_and_split_nalu_hevc() method to handle broken streams where packetized NAL unit contain start code prefix in it. It's obviously wrong stream but we know how to work around it and even need to support such broken streams since stateless decoder implementations are being a primary decoder element. Part-of: 2022-05-10 03:32:42 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * tests/check/libs/h265parser.c: h265parser: Add a new NAL parsing API to handle malformed packets Add gst_h265_parser_identify_and_split_nalu_hevc() method to handle a case where packetized stream contains start-code prefix. This new method behaves similar to exisiting gst_h265_parser_identify_nalu_hevc() but it will scan start-code prefix to split given data into NAL units. Part-of: 2022-03-30 17:19:54 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaav1dec.c: * sys/va/gstvabasedec.c: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: basedec: Select format from template or negotiated caps. Instead of using a hard-coded list of preferred formats according the chroma type, now if now caps are pre-negotiated, from template caps will choose the first format with the same chroma type. If pre-negotiated, then it will choose the first format, with same chroma type, from the first caps structure. Also all the decoders will check if GST_VIDEO_FORMAT_UNKNOWN is returned, failing the negotiation. Part-of: 2022-05-06 17:53:51 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvadisplay_drm.c: libs: va: Add O_CLOEXEC flag at opening drm device. So any other potential subprocess won't have access to it. Part-of: 2022-05-06 18:21:00 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: pcapparse: Set timestamp in DTS, not PTS This matches the behaviour of basesrc, in particular, it matches the behaviour of udpsrc, so it's easier to use to as a replacement to test rtpjitterbuffer and other similar elements. Part-of: 2022-01-16 15:51:32 +0300 Dmitry Osipenko * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/linux/v4l2-controls.h: v4l2codecs: h264: Set frame type flags V4L spec now requires decode_params flags to be set in accordance to the frame's type. In particular this is required by H.264 decoder of NVIDIA Tegra SoC to operate properly. Set the flags based on type of parsed slices. Part-of: 2022-05-06 10:50:59 +0800 Mengkejiergeli Ba * tests/check/meson.build: tests: Skip test if srtp element not built Part-of: 2022-05-06 01:46:36 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11memory: Protect against concurrent access from GPU and CPU to staging texture Staging texture does not allow GPU access while it's CPU mapped. But because we cannot block concurrent READ access by GstMemory design, additional staging texture is still required. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1182 Part-of: 2022-05-05 02:16:54 +0900 Seungha Yang * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11screencapture.h: * sys/d3d11/gstd3d11screencapturesrc.cpp: * tests/examples/d3d11/d3d11screencapturesrc.cpp: d3d11screencapturesrc: Fix crash when d3d11 device is different from owned one GstD3D11ScreenCapture object is pipeline-independent global object and the object can be shared by multiple src elements, in order to overcome a limitation of DXGI Desktop Duplication API. Note that the API allows only single capture session in a process for a monitor. Therefore GstD3D11ScreenCapture object must be able to handle a case where a src element holds different GstD3D11Device object. Which can happen when GstD3D11Device context is not shared by pipelines. What's changed: * Allocates capture texture with D3D11_RESOURCE_MISC_SHARED for the texture to be able to copied into other device's texture * Holds additional shader objects per src element and use it when drawing mouse Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1197 Part-of: 2022-05-05 20:35:57 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Disable aggregator's default negotiation mxfmux can't negotiate caps with upstream/downstream and always outputs specific caps based on the input streams. This will always happen before it produces the first buffers. By having the default aggregator negotiation enabled the same caps would be pushed twice in the beginning, and again every time a reconfigure event is received. Part-of: 2022-05-05 20:35:49 +0300 Sebastian Dröge * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Disable aggregator's default negotiation mpegtsmux can't negotiate caps with upstream/downstream and always outputs specific caps based on the input streams. This will always happen before it produces the first buffers. By having the default aggregator negotiation enabled the same caps would be pushed twice in the beginning, and again every time a reconfigure event is received. Part-of: 2022-05-05 00:24:26 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Fix for unhandled low-delay decoding case Baseclass calls get_preferred_output_delay() in a chain of sequence header parsing and then new_sequence() is called with required DPB size (includes render-delay) information. Thus latency query should happen before the sequence header parsing for subclass to report required render-delay accordingly via get_preferred_output_delay() method. (e.g., zero delay in case of live pipeline) This commit is to fix wrong liveness signalling in case of upstream packetized format. Part-of: 2022-05-05 00:49:27 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Fix for unhandled low-delay decoding case Baseclass calls get_preferred_output_delay() in a chain of sequence header parsing and then new_sequence() is called with required DPB size (includes render-delay) information. Thus latency query should happen before the sequence header parsing for subclass to report required render-delay accordingly via get_preferred_output_delay() method. (e.g., zero delay in case of live pipeline) This commit is to fix wrong liveness signalling in case of upstream packetized format. Part-of: 2022-05-04 23:36:30 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: nvh264dec,nvh265dec: Don't realloc bitstream buffer per slice Allocated memory size has not been updated which results in realloc per slice. Fixing it and also release bitstream buffer on ::close(), not finalize. Part-of: 2022-04-29 20:28:53 +0200 Jakub Adam * sys/d3d11/gstd3d11screencapture.cpp: d3d11screencapture: Set viewport when drawing mouse cursor If there weren't any moved/dirty regions in the captured frame, the viewport of the ID3D11DeviceContext would be left at whatever previous value it had, which could lead to the cursor being drawn in a wrong position and/or in an incorrect size. Part-of: 2022-05-02 22:59:59 +0900 Seungha Yang * sys/nvcodec/gstnvav1dec.c: * sys/nvcodec/gstnvav1dec.h: * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Add AV1 decoder Adding GstCodecs based AV1 decoder element Part-of: 2022-05-03 23:56:12 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1decoder.h: av1decoder: Add support for render delay Sync up with other decoder baseclass implementations Part-of: 2022-04-28 03:14:54 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1picture.h: av1decoder: Hold OBU temporal and spatial id in picture struct NVDEC API requires the information Part-of: 2022-05-04 01:03:37 +0900 Seungha Yang * sys/nvcodec/meson.build: meson: nvcodec: Remove unnecessary override option and fix build with non-MSVC cpp_std=c++11 was hack for macOS build but we don't build this plugin for Apple device anymore. And add "-Wno-deprecated-declarations" compile option for gcc/clang Part-of: 2021-12-17 17:22:22 +0900 Seungha Yang * sys/nvcodec/cuviddec.h: * sys/nvcodec/nvEncodeAPI.h: * sys/nvcodec/nvcuvid.h: nvcodec: Bump SDK header version to 11.1 Part-of: 2022-05-02 22:46:06 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: nvdecoder: Handle DPB size margin in a single place ... instead of each subclass Part-of: 2022-05-02 22:41:53 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Handle DPB size margin in a single place ... instead of each subclass Part-of: 2022-04-28 04:25:05 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1decoder.h: * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2decoder.h: * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp8decoder.h: * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2codecvp9dec.c: * sys/va/gstvaav1dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: codecs: Signal required DPB size for AV1,MPEG2,VP8, and VP9 via new_sequence() Make all codecs consistent so that subclass can know additional DPB size requirement depending on render-delay configuration regardless of codec. Note that render-delay feature is not implemented for AV1 yet but it's planned. Also, consider new_sequence() is mandatory requirement, not optional Part-of: 2022-04-12 12:17:09 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2format.c: v4l2codecs: Port to the new tile size helper This will complete the scaling of width/height shift scaling as only a partial implementation was made. Part-of: 2022-05-02 11:46:59 -0400 Thibault Saunier * gst-libs/gst/cuda/meson.build: cuda: Fix introspection warnings Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1183 Part-of: 2022-05-02 21:57:07 +0900 Seungha Yang * gst-libs/gst/cuda/gstcudautils.c: Revert "cuda: Fix GstCudaContext refcount bug" This reverts commit df7ee0e21518ab5586e4094f2089048f3767d5f5. We should not unref it since gst_message_new_have_context() takes ownership of the GstContext. Part-of: 2022-05-02 09:15:57 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: Demote warning to simple debug That issue is actually handled, so don't pollute the logs with such warning. Part-of: 2022-04-29 19:08:46 +0300 Sebastian Dröge * gst/interlace/gstinterlace.c: interlace: Also handle a missing "interlace-mode" field as progressive Otherwise caps negotiation will fail in situations that are supposed to work, like: "video/x-raw,framerate=(fraction)60/1" ! interlace field-pattern=0 ! "video/x-raw,framerate=(fraction)30/1" Part-of: 2022-04-29 19:08:32 +0300 Sebastian Dröge * gst/interlace/gstinterlace.c: interlace: Add some more debug output to the getcaps function Part-of: 2022-04-29 16:56:54 +0100 Myles Inglis * gst-libs/gst/cuda/gstcudautils.c: cuda: Fix GstCudaContext refcount bug Part-of: 2022-04-28 17:08:11 +0200 Ludvig Rappe * ext/webrtc/icestream.c: webrtc: Fix memory leak in icestream Since both g_value_set_object() and g_weak_ref_get() takes a reference there will be two new references to the GstWebRTCICE object when there should be only one. g_value_take_object() has the same functionality as g_value_set_object() but does not take a reference. Without this change, the GstWebRTCICE object will be leaked. Part-of: 2022-04-27 22:50:37 +0900 Seungha Yang * gst-libs/gst/cuda/gstcudautils.c: cuda: Correct CUDA device id field in GstContext structure device id is unsigned int, not signed. Part-of: 2022-04-28 13:23:39 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth265decoder.h: codecs: h265decoder: Fix documentation. Part-of: 2022-04-27 15:24:50 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegts: Handle "empty" PMT gracefully Some streams have 2 PMT sections in a single TS packet. The first one is "valid" but doesn't contain/define any streams. That causes an unrecoverable issue when we try to activate the 2nd (valid) PMT. Instead of doing that, pre-emptively refuse to process PMT without any streams present within. We still do post that section on the bus to inform applications. Fixes #1181 Part-of: 2022-04-26 09:11:07 +0200 Stéphane Cerveau * tests/check/elements/srtp.c: srtp: fix flaky unit test Use different port for each test to avoid other UDP packet to be received. Part-of: 2022-04-28 00:48:35 +0900 Seungha Yang * sys/d3d11/plugin.cpp: d3d11h265dec: Assign PRIMARY + 1 rank Promote d3d11h265dec to be default one if available Part-of: 2022-04-28 00:31:49 +0900 Seungha Yang * sys/nvcodec/gstnvvp9dec.c: nvvp9sldec: Increase DPB size to cover render delay This should've included in the previous MR https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/987 already, but missed. Part-of: 2022-03-07 15:44:04 +0000 Thibault Saunier * ext/qroverlay/gstqroverlay.c: qroverlay: Reset data_changed after we use the info It was never reset so it was always TRUE once the data was changed! Part-of: 2022-03-04 22:00:18 +0000 Thibault Saunier * ext/qroverlay/gstqroverlay.c: qroverlay: Add a GstQROverlay meta See documentation Part-of: 2022-04-27 00:27:06 +0200 Mathieu Duponchelle * gst/onvif/gstrtponviftimestamp.c: rtponviftimestamp: add extension data to all packets .. regardless of whether they are input as individual buffers or buffer lists. The ONVIF specification requires all packets to hold the extension, it makes no sense to behave differently when handling buffer lists. Part-of: 2022-03-08 21:26:16 +0000 Thibault Saunier * sys/nvcodec/gstcudaconvert.c: cudaconvert: Enhance debugging when setting video info fails Part-of: 2022-04-26 22:35:30 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265bitwriter.c: codecparsers: bitwriter: Calculate PicSizeInCtbsY when writing slice header. The slice->pps->PicWidthInCtbsY/PicHeightInCtbsY values are calculated when we parse the slice header. But they are not calculated in bitwriter and so may not have valid value when writing slice header. Part-of: 2022-04-24 17:26:03 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265bitwriter.c: codecparsers: bitwriter: Fix some coverity issues of H265 bitwriter. Part-of: 2022-04-24 00:02:18 +0800 He Junyan * sys/va/gstvabasedec.c: va: dec: Use gst_buffer_pool_config_set_va_alignment() to set alignment. Part-of: 2022-04-23 23:59:08 +0800 He Junyan * gst-libs/gst/va/gstvapool.h: va: pool: Replace all tabs with spaces in header file. Part-of: 2022-04-23 23:52:34 +0800 He Junyan * gst-libs/gst/va/gstvapool.c: va: pool: Delete the GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT. The va pool is used for GPU side surface/image, its alignment should not be changed arbitrarily by others. So we decide not to expose the GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT flag anymore. Instead, user can call gst_buffer_pool_config_set_va_alignment() to set its surface/image alignment. Part-of: 2022-04-23 23:40:14 +0800 He Junyan * gst-libs/gst/va/gstvapool.c: * gst-libs/gst/va/gstvapool.h: va: pool: Add set_va_alignment() API. We want to use gst_buffer_pool_config_set_va_alignment() to replace gst_buffer_pool_config_get_video_alignment(). The later one is specific for GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT option. Part-of: 2022-04-26 01:16:06 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Fix a latent memory leak in colorimetry setting. Also delete the useless "have_cinfo" judgement. Part-of: 2022-04-24 22:54:58 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Correct the meaning of color_range flag. According to spec: color range equal to 0 shall be referred to as the studio swing representation and color range equal to 1 shall be referred to as the full swing representation. The current status is just the opposite. Part-of: 2022-04-25 22:59:14 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: qsvencoder: Workaround for invalid DTS with VP9 SDK runtime seems to report zero DTS for all frames in case of VP9 but we don't need to use DTS for the codec. Part-of: 2022-04-24 00:37:40 +0900 Seungha Yang * gst-libs/gst/cuda/meson.build: * sys/nvcodec/meson.build: nvcodec: Stop building for non-{Windows,Linux} target The other platforms, specifically macOS have not been supported already because this plugin loads so or dll. Moreover, NVIDIA dropped support for macOS as of CUDA 11.0. See also https://developer.nvidia.com/nvidia-cuda-toolkit-11_0_0-developer-tools-mac-hosts Part-of: 2022-03-28 17:06:46 +0200 Stéphane Cerveau * tests/check/elements/srtp.c: * tests/check/meson.build: srtp: add unit tests Enable unit tests in meson.build Add test_play_key_error to check the stats Part-of: 2022-03-25 17:47:23 +0100 Stéphane Cerveau * docs/plugins/gst_plugins_cache.json: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: srtpdec: add counts in stats In order to count the buffers which have been received and dropped for decryption reason, add a stats to track it. Part-of: 2022-04-23 04:00:21 +0900 Seungha Yang * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Fix for unhandled mouse double click events Only window created with CS_DBLCLKS style can receive those mouse double click events, so we need to use the style for internal/external windows can get double click events. Also, passthrough mouse events to parent window in the same message pumping threads instead of manually forwarding each mouse event. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1172 Part-of: 2022-03-07 08:46:57 -0500 Xavier Claessens * gst-libs/gst/vulkan/meson.build: * sys/msdk/meson.build: Meson: Fix deprecation warnings Part-of: 2022-04-22 17:44:06 +0200 Stéphane Cerveau * ext/rsvg/gstrsvgdec.h: rvsg: fix cairo include Part-of: 2022-04-22 12:29:29 +0200 Corentin Damman * sys/nvcodec/cuda-converter.c: cuda-converter: fix nvrtc compilation on non-English locale systems Part-of: 2022-04-21 00:38:37 +0900 Sangchul Lee * ext/webrtc/gstwebrtcbin.c: webrtcbin: Avoid access of freed memory Part-of: 2022-04-15 22:19:09 +0800 He Junyan * sys/va/gstvah264enc.c: va: h264enc: Do not let L0 number surplus the HW limitation. The algorithm to calculate the L0/L1 number may let the L0 number surplus the HW limitation. We should ensure that limitation after that calculation. Part-of: 2022-03-02 14:42:42 +0800 He Junyan * tests/check/libs/h265bitwriter.c: * tests/check/meson.build: test: Add test cases for the H265 bitwriter. Part-of: 2022-03-02 14:31:05 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265bitwriter.c: * gst-libs/gst/codecparsers/gsth265bitwriter.h: * gst-libs/gst/codecparsers/meson.build: codecparsers: bitwriter: Add the common bit writer functions for H265. Part-of: 2022-04-20 13:18:34 +0800 He Junyan * sys/va/gstvavpp.c: va: vpp: Update the colorimetry and HDR fields when fixup src caps. When we fixup src caps, the current way of handling the HDR fields is not correct. 1. We trim the HDR fields only when the input caps is not a subset of the fixup src caps. But in fact, the input caps with HDR fields such as the "mastering-display-info" can possibly be the subset of the fixup src caps, if they have all same other fields. 2. We always copy the colorimetry from input caps to src caps if it is absent. But when hdr-tone-mapping is enabled, the HDR->SDR conversion makes the colorimetry change. We should use downstream's setting, or just use the default colorimetry of SDR. We changes to: 1. If hdr-tone-mapping is enabled, we trim all HDR fields and add a correct colorimetry. 2. Copy colorimetry from input if it is still absent. 3. Consider the subset replacement. Part-of: 2022-04-20 23:06:56 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.h: * sys/qsv/gstqsvh264dec.cpp: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265dec.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvjpegenc.cpp: * sys/qsv/gstqsvvp9enc.cpp: qsv: Add GPU description to element long-name on Windows Would be useful for a multi-Intel-GPU system Part-of: 2022-04-19 21:38:31 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Notify if hdr-tone-mapping property changes. Part-of: 2022-03-30 18:09:36 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/vasurfaceimage.c: * gst-libs/gst/va/vasurfaceimage.h: * sys/va/gstvafilter.c: * sys/va/gstvah264enc.c: va: Expose a couple va surface/buffer methods. And use them in va plugin. Also, set as default logging category the vadisplay one. Part-of: 2022-04-20 08:09:58 +0900 Wonchul Lee * ext/dash/gstdashsink.c: dashsink: Unlock when failed to get content Part-of: 2022-04-18 17:50:22 +0900 Camilo Celis Guzman * gst/videoparsers/gstav1parse.c: gstav1parse: fixup various possible logical errors Found via an analyzed build for Clang. Specifically we had: gstav1parse.c[1850,11] in gst_av1_parse_detect_stream_format: Logic error: The left operand of '==' is a garbage value gstav1parse.c[1606,11] in gst_av1_parse_handle_to_small_and_equal_align: Logic error: The left operand of '==' is a garbage value Also a couple of false-positives: gstav1parse.c[1398,24] in gst_av1_parse_handle_one_obu: Logic error: Branch condition evaluates to a garbage value gstav1parse.c[1440,37] in gst_av1_parse_handle_one_obu: Logic error: The left operand of '-' is a garbage value Part-of: 2022-03-25 10:18:34 -0400 Xavier Claessens * meson.build: Always define ENABLE_NLS GLib guarantees libintl API is always available, provided by proxy-libintl as last resort. GLib itself unconditionally define ENABLE_NLS. Part-of: 2022-03-25 10:20:24 -0400 Xavier Claessens * gst-libs/gst/gettext.h: * gst-libs/gst/gst-i18n-plugin.h: Delete unused i18n headers Part-of: 2022-03-25 09:59:23 -0400 Xavier Claessens * ext/curl/gstcurlelement.c: * ext/curl/gstcurlhttpsrc.c: * ext/dash/gstdashdemux.c: * ext/ladspa/gstladspa.c: * ext/openal/gstopenal.c: * ext/openal/gstopenalelement.c: * ext/opencv/gsttemplatematch.cpp: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/rtmp/gstrtmpsrc.c: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstsmoothstreaming-plugin.c: * ext/sndfile/gstsf.c: * ext/sndfile/gstsfdec.c: * ext/sndfile/gstsfelement.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst/aiff/aiffparse.c: * gst/aiff/gstaiffelement.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfparse.c: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstdigitalzoom.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/dvdspu/gstdvdspu.c: * gst/midi/midi.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/transcode/gsttranscodebin.c: * gst/transcode/gsttranscodeelement.c: * sys/dvb/gstdvb.c: * sys/dvb/gstdvbelement.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: 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: 2022-04-13 15:23:56 -0400 Thibault Saunier * gst-libs/gst/cuda/gstcudautils.c: * gst-libs/gst/cuda/gstcudautils.h: * sys/nvcodec/gstcudamemorycopy.c: cuda: Fix typo in gst_cuda_buffery_copy_type_to_string Part-of: 2021-12-12 13:19:52 +0000 Thibault Saunier * gst-libs/gst/cuda/gstcudacontext.c: * gst-libs/gst/cuda/gstcudacontext.h: * gst-libs/gst/cuda/gstcudautils.h: cuda: Add a `gst_cuda_context_new_wrapped` constructor So that application or people implementing cuda element from outside GStreamer itself can ensure that their contexts are used by GStreamer. Part-of: 2021-12-08 11:48:08 +0000 Thibault Saunier * docs/libs/cuda/index.md: * docs/libs/cuda/sitemap.txt: * docs/meson.build: * gst-libs/gst/cuda/cuda-gst.h: * gst-libs/gst/cuda/cuda-prelude.h: * gst-libs/gst/cuda/gstcudabufferpool.c: * gst-libs/gst/cuda/gstcudabufferpool.h: * gst-libs/gst/cuda/gstcudacontext.c: * gst-libs/gst/cuda/gstcudacontext.h: * gst-libs/gst/cuda/gstcudaloader.c: * gst-libs/gst/cuda/gstcudaloader.h: * gst-libs/gst/cuda/gstcudamemory.c: * gst-libs/gst/cuda/gstcudamemory.h: * gst-libs/gst/cuda/gstcudanvrtc.c: * gst-libs/gst/cuda/gstcudanvrtc.h: * gst-libs/gst/cuda/gstcudautils.c: * gst-libs/gst/cuda/gstcudautils.h: * gst-libs/gst/cuda/gstnvrtcloader.c: * gst-libs/gst/cuda/gstnvrtcloader.h: * gst-libs/gst/cuda/meson.build: * gst-libs/gst/cuda/stub/cuda.h: * gst-libs/gst/cuda/stub/cudaGL.h: * gst-libs/gst/cuda/stub/nvrtc.h: * gst-libs/gst/meson.build: * sys/nvcodec/cuda-converter.c: * sys/nvcodec/cuda-converter.h: * sys/nvcodec/gstcudabasefilter.c: * sys/nvcodec/gstcudabasetransform.c: * sys/nvcodec/gstcudabasetransform.h: * sys/nvcodec/gstcudaconvert.c: * sys/nvcodec/gstcudafilter.c: * sys/nvcodec/gstcudamemorycopy.c: * sys/nvcodec/gstcudascale.c: * sys/nvcodec/gstcuvidloader.h: * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/gstnvencoder.cpp: * sys/nvcodec/gstnvencoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh264encoder.cpp: * sys/nvcodec/gstnvh264encoder.h: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvh265encoder.cpp: * sys/nvcodec/gstnvh265encoder.h: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: cuda: Factor out a public GstCUDA library So applications and elements implemented outside GStreamer can reuse our infrastructure Part-of: 2021-12-03 13:12:42 +0000 Thibault Saunier * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvenc.c: nvenc: Give more details about errors Part-of: 2021-11-12 20:13:10 +0100 Ruben Gonzalez * docs/plugins/gst_plugins_cache.json: gst_plugin_load_file: force plugin reload if diff filename If a file includes a new version of a plugin that exits in the registry, the output of gst-inspect is incorrect. The output has the correct version but incorrect filename, and element description. This seems to have also fixed some documentation issues. Part-of: 2022-04-19 04:37:05 +0900 Seungha Yang * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Remove outdated comment d3dvideosink is not a primary video sink element Part-of: 2022-04-18 00:25:18 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth265decoder.c: h264decoder,h265decoder: Do not hold codec_data buffer ... also do not need to extract it from caps. Decoder uses codec_data only once per set_format() and baseclass will extract codec_data buffer already. Part-of: 2022-04-17 23:55:55 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Do not preallocate texture using downstream d3d11 buffer pool Our decoder implementation does not use downstream d3d11 pool for decoding because of special requirement of D3D11/DXVA. So preallocation using the downstream buffer pool will waste GPU memory in most cases. Part-of: 2022-04-14 13:22:03 +0300 Vivia Nikolaidou * gst/videoparsers/gsth264parse.c: h264parse: Include coded-picture-structure info in caps This reverts commit 652773de366a98e155332bf8ffb83ee5e6bea9e5 and modifies it to rename the caps field name to coded-picture-structure. It was previously removed because it confuses the decoder and we didn't have a valid use case for including it in the encoded caps at this stage. We now do have such a use case but still don't want to confuse the decoder, so the field is renamed. However, it is still not accurate without looking at the SEI picture structure of each frame, so it was named coded-picture-structure. If its value is "frame" it is most likely progressive, if it's "field" it is most likely interlaced or mixed. Part-of: 2022-04-18 12:44:19 +0800 He Junyan * sys/va/gstvah264enc.c: va: h264enc: Fix the forgotten unlock() when getting device path property. Part-of: 2022-04-17 22:25:14 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.cpp: qsvdecoder: Use system memory for non-d3d11 downstream QSV's memory download implementation seems to be more faster than our implementation Part-of: 2022-04-17 02:14:50 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvh265dec.cpp: * sys/qsv/gstqsvh265dec.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Add H.265 decoder Part-of: 2022-04-17 02:18:37 +0900 Seungha Yang * sys/qsv/gstqsvh264dec.cpp: * sys/qsv/gstqsvutils.cpp: * sys/qsv/plugin.cpp: qsv: Include single gstva.h Part-of: 2022-04-17 02:04:08 +0900 Seungha Yang * sys/qsv/gstqsvh264dec.cpp: qsvh264dec: Don't register element if it's not supported by device Part-of: 2022-04-17 01:27:10 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvdecoder.h: * sys/qsv/gstqsvh264dec.cpp: qsvh264dec: Add support for packetized format Handle avc/avc3 packetized formats Part-of: 2022-04-17 00:00:55 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvh264dec.cpp: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvjpegenc.cpp: * sys/qsv/gstqsvvp9enc.cpp: * sys/qsv/plugin.cpp: qsv: Move debug init into each source file Part-of: 2022-04-16 23:51:05 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.cpp: qsvdecoder: Reset next_task_index per init_session() Part-of: 2022-04-16 21:27:57 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Copy HDR10 related caps field manually If negotiate() is called from the set_format() chain, sinkpad may not hold caps yet, so baseclass cannot copy it over to srcpad caps. Copy them manually. Part-of: 2022-04-16 22:27:13 +0900 Seungha Yang * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: qsvencoder: Rename property name i-frames to idr-interval ... and clarify the meaning of the value for each h264 and h265 encoder since the usage of mfxInfoMFX::IdrInterval is different per codec. Part-of: 2022-04-16 21:26:55 +0900 Seungha Yang * sys/qsv/gstqsvh265enc.cpp: qsvh265enc: Write HDR10 metadata SEI If device supports HDR10 metadata API, write the information into bitstream per IDR. Part-of: 2022-04-13 06:19:40 +0200 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: gst_plugins_cache.json: Update va plugins. * Update conditionally-available attribute in vah264enc properties. * Update GstVaFeature usage. * Update GstVaEncoderRatecontrol usage. * Update vapostproc classification. * Add `add-borders` property in vapostproc. Part-of: 2022-04-13 05:58:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Use GstVaFeature enum for enabling MBBRC. GstVaFeature is a common enumeration for auto/disabled/enabled kind of property setting. Part-of: 2022-04-13 05:56:59 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: vah264enc: Move rate-control enum to encoder class helper. Since it's a common enumeration used, as user setting property, for most of codecs. Part-of: 2022-04-13 05:52:31 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Add device-path property. Part-of: 2022-04-15 13:19:36 +0000 Corentin Damman * sys/nvcodec/gstcudautils.c: cudautils: fix critical typo in gst_cuda_buffer_fallback_copy Part-of: 2022-04-14 20:10:46 +1000 Brad Hards * po/POTFILES.skip: * tests/interactive/meson.build: * tests/interactive/pitch-test.c: * tests/meson.build: tests: rename 'icles' subdir to be more descriptive Part-of: 2022-04-14 08:23:51 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix AC-4 detection This regression was introduced by https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1102 and has been present since 1.18 * Stream Type 0x06 is defined in the base mpeg-ts specification as Private PES Packets. Determining the content should be solely based on descriptors found within the PMT. * This was abused in that commit by defining a "bluray-only" stream type for AC4 : `ST_BD_AUDIO_AC4` * This should be entirely handled in the regular private pes handling further down in the code Fixes #1154 Part-of: 2022-04-10 17:28:03 +0800 He Junyan * sys/va/gstvah264enc.c: va: h264enc: Correct the hierarchical level name for pyramid-b frames. The current way names the level by the number of B frames it contains, the less it contains, the higher level it is. So the non ref B frames are in the lowest layer and the B frames in the highest level refer to I/P frames. But the widely used way is just the opposite, the ref B frames are in the lower level and non ref B frames are at the highest level. The is just a terminology change, and does not have any effect for compression result and quality. Part-of: 2022-04-12 10:34:27 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecs: av1parser: Fix a typo in seq_level_idx check. Part-of: 2022-04-13 01:46:34 +0900 Seungha Yang * sys/amfcodec/gstamfh265enc.cpp: amfh265enc: Handle preset option Add missing preset option handling Part-of: 2022-04-13 01:39:43 +0900 Seungha Yang * sys/amfcodec/gstamfencoder.cpp: amfencoder: Do shared resource copy only if texture belongs to other device Staging texture from the same d3d11device can be copied without shared resource handling Part-of: 2022-04-12 01:01:23 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/meson.build: win32: Enable high-resolution timer for MinGW build timeapi.h is missing in our MinGW toolchain. Include mmsystem.h header instead, which defines struct and APIs in case of our MinGW toolchain. Note that in case of native Windows10 SDK (MSVC build), mmsystem.h will include timeapi.h Part-of: 2022-04-11 16:03:41 -0500 Olivier Crête * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Give WebKit the keyboard, touch and pointer modifiers Part-of: 2022-04-11 15:56:19 -0500 Olivier Crête * ext/wpe/gstwpevideosrc.cpp: wpesrc: Convert from utf32 to support other keys This makes all of the non-letter keys work. Part-of: 2022-04-11 15:54:05 -0500 Olivier Crête * ext/wpe/gstwpevideosrc.cpp: wpesrc: Initialize key event to 0 Otherwise, WebKit sees random modifiers Part-of: 2022-04-12 11:20:00 +0200 Andoni Morales Alastruey * sys/amfcodec/gstamfh264enc.cpp: amfcodec: fix setting quality presets Part-of: 2022-04-11 10:32:40 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Fix issue with re-syncing In case of re-syncing (i.e. moving to another partition to avoid too much of an interleave), there was previously no checks to figure out whether a given partition was already fully handled (i.e. when coming across it again after a previous resync). In order to handle this at least for single-track partitions, check whether we have reached the essence track duration, and if so skip the partition. Part-of: 2022-04-11 10:31:15 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Don't double-increase track position The essence track position should only be overriden if we sucesfully switched to another position. In case of EOS we do not want to override it else we would increase the track position *again* at the end of this function Part-of: 2022-04-12 01:49:17 +0900 Seungha Yang * sys/amfcodec/gstamfencoder.cpp: * sys/amfcodec/gstamfh264enc.cpp: * sys/amfcodec/gstamfh265enc.cpp: * sys/amfcodec/meson.build: amfcodec: Fix for MinGW build timeapi.h header might not be missing depending on toolchain. Also do hard meson error if winmm dep is not available but amfcodec is explicitly enabled. And fixing various GCC build warning errors. Part-of: 2022-04-09 23:32:19 +0900 Seungha Yang * sys/qsv/gstqsvallocator.cpp: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvjpegenc.cpp: * sys/qsv/gstqsvjpegenc.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Add JPEG encoder Note that YUY2 is not supported yet, since the format support is not implemented now. Part-of: 2022-04-10 02:34:17 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/amfcodec/gstamfencoder.cpp: * sys/amfcodec/gstamfh264enc.cpp: * sys/amfcodec/gstamfh265enc.cpp: * sys/amfcodec/plugin.cpp: amfcodec: Update plugin cache Part-of: 2022-04-09 00:52:07 +0900 Seungha Yang * sys/nvcodec/gstnvencoder.cpp: * sys/nvcodec/gstnvencoder.h: * sys/nvcodec/gstnvh264encoder.cpp: * sys/nvcodec/gstnvh265encoder.cpp: * tests/examples/nvcodec/nvcodec.c: nvencoder: Update property names and default values Update properties of newly written D3D11/CUDA mode encoders to be consistent with Intel QSV plugin. And rename "zerolatency" to "zero-reorder-delay" because previous "zerolatency" may misleading Part-of: 2022-04-09 00:00:59 +0900 Seungha Yang * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvvp9enc.cpp: * tests/examples/qsv/qsvenc-dynamic-reconfigure.c: qsvencoder: Update property names and default values Stop using MSDK plugins property naming, instead use unified names and default values to be consistent with newly written NVIDIA encoders. Part-of: 2022-03-31 04:16:24 +0900 Seungha Yang * meson_options.txt: * sys/amfcodec/gstamfencoder.cpp: * sys/amfcodec/gstamfencoder.h: * sys/amfcodec/gstamfh264enc.cpp: * sys/amfcodec/gstamfh264enc.h: * sys/amfcodec/gstamfh265enc.cpp: * sys/amfcodec/gstamfh265enc.h: * sys/amfcodec/gstamfutils.cpp: * sys/amfcodec/gstamfutils.h: * sys/amfcodec/meson.build: * sys/amfcodec/plugin.cpp: * sys/meson.build: amfcodec: Add support for h264/h265 encoding New encoder implementations for AMD GPU using AMF API Part-of: 2022-03-31 01:36:37 +0900 Seungha Yang * sys/amfcodec/include/components/ColorSpace.h: * sys/amfcodec/include/components/Component.h: * sys/amfcodec/include/components/ComponentCaps.h: * sys/amfcodec/include/components/PreAnalysis.h: * sys/amfcodec/include/components/VideoDecoderUVD.h: * sys/amfcodec/include/components/VideoEncoderHEVC.h: * sys/amfcodec/include/components/VideoEncoderVCE.h: * sys/amfcodec/include/core/AudioBuffer.h: * sys/amfcodec/include/core/Buffer.h: * sys/amfcodec/include/core/Compute.h: * sys/amfcodec/include/core/ComputeFactory.h: * sys/amfcodec/include/core/Context.h: * sys/amfcodec/include/core/CurrentTime.h: * sys/amfcodec/include/core/D3D12AMF.h: * sys/amfcodec/include/core/Data.h: * sys/amfcodec/include/core/Debug.h: * sys/amfcodec/include/core/Dump.h: * sys/amfcodec/include/core/Factory.h: * sys/amfcodec/include/core/Interface.h: * sys/amfcodec/include/core/Plane.h: * sys/amfcodec/include/core/Platform.h: * sys/amfcodec/include/core/PropertyStorage.h: * sys/amfcodec/include/core/PropertyStorageEx.h: * sys/amfcodec/include/core/Result.h: * sys/amfcodec/include/core/Surface.h: * sys/amfcodec/include/core/Trace.h: * sys/amfcodec/include/core/Variant.h: * sys/amfcodec/include/core/Version.h: * sys/amfcodec/include/core/VulkanAMF.h: amfcodec: Import AMF SDK headers SDK version v1.4.24 at the commit of https://github.com/GPUOpen-LibrariesAndSDKs/AMF/commit/fbf12cd39fe1812ed902525a1c001307b94871b9 Part-of: 2022-04-09 02:13:57 +0900 Seungha Yang * sys/msdk/gstmsdkcontextutil.c: msdk: Fix Windows build Headers of gstva should not be included on Windows Part-of: 2022-04-08 04:24:36 +0900 Seungha Yang * sys/d3d11/gstd3d11window_win32.cpp: d3d11window: Use ANSI version WIN32 API explicitly We were using ANSI version APIs implicitly because UNICODE is not defined by ourselves. But potentially it can be broken if user defines UNICODE. Part-of: 2022-04-08 04:02:55 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11videosink.cpp: d3d11: Run indent Part-of: 2022-03-11 20:46:11 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Fix short_term_ref_pic_set() size calculation This field is used by DXVA/NVDEC/VA, and each specification describes (NVDEC is not well documented) that it's the number of bits used in short_term_ref_pic_set(). DXVA doesn't explicitly mention that whether the size of emulation preventation bytes (EPB) is inclusive or not, but VA is clearly specifying that it's the size after removing EPB. Excluding EPB size here makes more sense therefore. Part-of: 2022-04-06 11:21:25 +0200 Edward Hervey * gst/mxf/mxfvanc.c: mxfvanc: Handle empty VANC packets Some XDCAM recorders store empty packets for VANC, and don't even include the 2byte length. Handle them in the same way as VANC packets with 0 packets. Part-of: 2022-04-01 22:52:18 +0900 Sangchul Lee * gst-libs/gst/webrtc/datachannel.c: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc/datachannel: Change initial data channel state to CONNECTING It complies with http://w3c.github.io/webrtc-pc/#dom-rtcdatachannelstate. Part-of: 2022-04-04 20:47:03 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: qsvencoder: Don't use USAGE_HINT_ENCODER and enable derived image support Peformance issue by disabled derived image support was reported Part-of: 2022-04-04 20:36:14 +0900 Seungha Yang * sys/va/gstvah264enc.c: Revert "vah264enc: Disable derived image support" This reverts commit 0011feb0d660f331abde5b1e36f1c56e9cf3b014. The commit caused performance-wise regression for some platforms Part-of: 2022-04-01 15:35:17 +0800 Tong Wu * sys/msdk/msdk.c: msdk: use mfxU32 instead of uint32_t Msdk should use mfx variables defined in mfxdefs.h. Replace uint32_t with mfxU32. Part-of: 2022-04-01 15:00:01 +0200 Stéphane Cerveau * tests/examples/camerabin2/gst-camerabin2-test.c: bad: examples: fix unused res warning Part-of: 2022-03-29 14:42:04 +0200 Johan Sternerup * ext/webrtc/gstwebrtcice.c: * ext/webrtc/icestream.c: * ext/webrtc/icestream.h: * ext/webrtc/nicetransport.c: webrtc: Improve robustness of nice agent signal handlers NiceAgent and it's associated thread is alive for as long as GstWebRTCICE is alive so make sure any signal handlers connected to NiceAgent do not access data that is deleted earlier. Part-of: 2022-04-03 22:12:33 +0900 Seungha Yang * sys/nvcodec/gstnvh264encoder.cpp: * sys/nvcodec/gstnvh265encoder.cpp: nvcodec: Fix typos Part-of: 2022-04-03 22:08:51 +0900 Seungha Yang * sys/nvcodec/gstnvencoder.h: nvencoder: Fix operator overloading GUID equality check was inverted Part-of: 2022-04-01 21:09:10 +0100 Tim-Philipp Müller * gst-libs/gst/va/meson.build: libs: va: make sure va-enumtypes.h is generated before it's used Need to add a dep for the generated header file to the dependency() so that it gets generated before anyone tries to #include files from it (which may happen before the actual lib is built because that's only needed when stuff is linked together later). See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2057#note_1323236 and CI build failures in https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2096 Part-of: 2022-04-01 05:02:58 +0900 Seungha Yang * sys/va/gstvah264enc.c: vah264enc: Disable derived image support Behavior of derived image seems to be platform dependent and it's buggy in some cases. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1110 Part-of: 2022-04-01 22:47:07 +0800 He Junyan * sys/va/gstvah264enc.c: va: h264enc: Do not use USAGE_HINT_ENCODER for input pool. It seems that the VA_SURFACE_ATTRIB_USAGE_HINT_ENCODER is used only for the recon surfaces, if we set this flags for input raw surfaces, the alignment is wrong and we get broken result. Part-of: 2022-04-01 15:59:58 -0400 Nicolas Dufresne * gst-libs/gst/va/gstvaallocator.c: va: Fix printf format modifier for drm modifiers DRM modifiers are 64bit, the printf modifier is platform dependant. Use the G_GINT64_MODIFIER macro to make this printf portable. Part-of: 2022-03-30 11:06:02 -0400 Xavier Claessens * meson.build: Use gmodule-no-export-2.0 We don't need `-Wl,--export-dynamic`, that's used only for executables that needs to export an API to be used by plugins they load. Part-of: 2022-03-25 15:00:20 -0400 Xavier Claessens * ext/vulkan/meson.build: * ext/webrtc/meson.build: * gst-libs/gst/d3d11/meson.build: * gst/rtp/meson.build: * meson.build: * sys/bluez/meson.build: * sys/dvb/meson.build: * tests/check/meson.build: * tests/examples/ipcpipeline/meson.build: * tests/examples/opencv/meson.build: * tests/examples/webrtc/meson.build: * tests/examples/wpe/meson.build: * tests/icles/meson.build: Remove glib and gobject dependencies everywhere They are part of gst_dep already and we have to make sure to always have gst_dep. The order in dependencies matters, because it is also the order in which Meson will set -I args. We want gstreamer's config.h to take precedence over glib's private config.h when it's a subproject. While at it, remove useless fallback args for gmodule/gio dependencies, only gstreamer core needs it. Part-of: 2022-03-24 14:15:00 -0400 Xavier Claessens * ext/sctp/usrsctp/meson.build: * meson.build: Fix cross build with mingw32 At least on Ubuntu 20.04 the x86_64-w64-mingw32-gcc toolchain defaults to WinXP. We require at least Vista for FILE_STANDARD_INFO. Part-of: 2022-03-25 22:04:05 +0900 Seungha Yang * sys/qsv/gstqsvallocator_va.cpp: * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvvp9enc.cpp: qsvencoder: Add support for VA memory Use VA allocator and buffer pool implementation for zero-copy encoding with upstream VA elements Part-of: 2022-03-25 21:03:02 +0900 Seungha Yang * sys/qsv/gstqsvallocator_va.h: * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvencoder.cpp: qsv: Use pipeline's VA context Part-of: 2022-03-29 14:52:33 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstva.h: * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvaallocator.h: * gst-libs/gst/va/gstvapool.c: * gst-libs/gst/va/gstvapool.h: * gst-libs/gst/va/meson.build: * sys/va/gstvabasedec.c: * sys/va/gstvabasetransform.c: * sys/va/gstvaencoder.c: * sys/va/gstvah264enc.c: libs: va: add VA allocator parameter for derived images usage. Added GstVaFeature enum type, and new parameter for VA allocator's set_format() and get_format(). Also added a new parameter in VA pool gst_va_pool_new_with_config() and gst_buffer_pool_config_set_va_allocation_params(). This new parameter will define if derived images will by used for buffer mapping. Part-of: 2022-03-28 21:25:50 +0900 Sangchul Lee * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcstats.c: * tests/check/elements/webrtcbin.c: webrtcstats: Unify 'packets-lost' data type to int64 Previously, 'packets-lost' member of RTCReceivedRtpStreamStats had a value of G_TYPE_INT from rtpsource or a value of G_TYPE_UINT64 from rtpjitterbuffer. Because of the negative value of estimated amount of packets lost in rtpsource as well as the description in https://www.w3.org/TR/webrtc-stats/#dom-rtcreceivedrtpstreamstats it is fixed to set this value with G_TYPE_INT64. Part-of: 2022-03-30 12:12:34 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: va: encoder: Remove unused allocation config. Since it's also done inside of gst_va_pool_new_with_config(). Part-of: 2022-03-30 02:49:40 +0900 Seungha Yang * gst-libs/gst/va/gstvadisplay.c: * gst-libs/gst/va/gstvautils.c: vadisplay: Add description readonly property Expose description of vendor for user information, similar to the description property of d3d11device. Also, set description and DRM device path on GstContext structure so that user can read them and it will be printed on terminal when gst-launch-1.0 is used Part-of: 2022-03-30 07:03:59 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvapool.c: * gst-libs/gst/va/gstvapool.h: * gst-libs/gst/va/va_fwd.h: va: Don't expose internal classes. VA allocators and pools classes don't need to be exposed as external symbols. Part-of: 2022-03-30 12:01:20 +0800 Haihua Hu * gst-libs/gst/play/gstplay.c: gstplay: don't print error log in warning_cb Part-of: 2022-03-29 20:14:40 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Build classification dynamically. By default, the classification is "Converter/Filter/Colorspace/Scaler/Video/Hardware", but if VA post-processor driver supports either color balance, skin tone enhancement, sharpening or noise reduction, "Effect" is added. Thus, if vapostproc ranking is raised, it can be chosen by autovideosink. Part-of: 2022-02-21 14:02:52 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcstats.c: webrtc: produce stats for all relevant streams Instead of only using the last ssrc that was pushed into a sink pad. Part-of: 2022-02-11 16:50:42 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: avoid different versions of gnu-indent always wanting to change !! Add some sneaky parenthesis to avoid always having to use git commit -n or revert out hunk of the change. Part-of: 2021-11-26 22:04:14 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * tests/check/elements/webrtcbin.c: webrtc: implement initial simulcast fec/rtx usage Part-of: 2021-11-26 22:11:06 +1100 Matthew Waters * ext/webrtc/webrtcdatachannel.c: * gst-libs/gst/webrtc/datachannel.c: webrtc/datachannel: fix use-after-free in sctp state notification g_signal_disconnect*() doesn't stop any existing callbacks from running which means that if the notify::state callback is in progress in one thread and the data channel object is finalize()ed in another thread, then there could be a use-after-free trying lock the data channel object. We can't reasonably use a GWeakRef as we don't have a 'parent' object to free the GWeakRef after the data channel is finalized. This is also complicated by the fact that the application can hold a reference to the data channel object that would live beyond the lifetime of webrtcbin itself. We solve this by implementing a ghetto weak-ref solution internally with a list of outstanding data channels. Part-of: 2021-11-26 22:06:39 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: fix a use-after-free in test_data_channel_close g_object_weak_ref() is not thread-safe and the data channel object's refs/unrefs can happen on multiple threads. Part-of: 2021-11-26 21:51:57 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: fix a race in the tests related to state tracking If things progress fast enough, some state changes may not be seen be the waiting code. Fix by: 1. keeping a list of all the state changes 2. waiting checks each entry and if the relevant state is found, all states up to and including then are removed. This ensures that any waits will see all the state sets. Part-of: 2021-11-26 02:00:12 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: factor out src pad property checking to a separate function Part-of: 2021-11-16 19:27:11 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcstats.c: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * tests/check/elements/webrtcbin.c: webrtcbin: initial support for sending and receiving simulcast streams Input (sink pads) is the already-ssrc-muxed stream with the relevant rtp sdes header extensions already applied: - mid - stream-id - repaired-stream-id Output (src pads) have the pads separated into individual ssrc's as that's what rtpbin gives us. Part-of: 2021-11-16 18:11:49 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: test for enabled bundled fec/rtx Doesn't actually check that any fec/rtx happens, just that the pipeline is vaguely sane and doesn't error. Part-of: 2021-11-16 17:39:18 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: support multiple received streams for a single mline Each rtpbin exposed recv_src pad is now exposed as webrtcbin src_%u pad now with no meaining applied to the value of %u. Previously this used to mean the mline in the SDP. If this is is still required, then the transceiver can be retrieved from the pad and the "mlineindex" property from the transciever. The "mid" is also retrievable from the transceiver. Part-of: 2021-11-16 17:28:04 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: explicitly error out in a couple of renegotiation cases Part-of: 2021-11-16 17:21:31 +1100 Matthew Waters * ext/webrtc/transportstream.c: webrtc/transportstream: add debug category Part-of: 2021-11-03 21:18:53 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: also check valid mline for srcpad codec-preferences negotiation Part-of: 2021-11-03 20:46:23 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: don't name src pads based on the mline specifically anymore Naming based on the mline doesn't really work with e.g. simulcast scenarios. It is entirely possible to retrieve the transceiver and then the mline from that if that is so required. Part-of: 2021-10-29 18:40:04 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: webrtc/tests: print the correct media idx on error Instead of the attribute index Part-of: 2021-10-29 18:38:37 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: webrtc/tests: give slightly better names to the dot file dumps Don't use printf-specifiers with g_strconcat(). Part-of: 2021-07-21 17:48:34 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.h: * tests/check/elements/webrtcbin.c: webrtcbin: improve some debugging output - Put human readable names into debug strings. - Demote some frequent rtpbin signal logging - Don't use GST_PTR_FORMAT in g_set_error() Part-of: 2021-07-21 17:39:11 +1000 Matthew Waters * tests/check/elements/webrtcbin.c: webrtcbin: silence spurious warning when creating answer transceiver When creating a transceiver when creating an answer, the media kind of the transceiver was never set correctly initially. This would lead to a GST_WARNING being produced about changin a transceiver's media kind. Fix by retrieving the GstSDPMedia kind from the offer instead as the answer GstSDPMedia has not been set as the answer caps have not been chosen yet. Part-of: 2021-07-21 14:29:35 +1000 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: always use a unique SSRC for each stream Will become more relevant with mid/rid->ssrc mappings Part-of: 2021-07-21 14:14:30 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: add a specific find_transceiver_by_mid function Part-of: 2021-07-20 20:17:13 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: explicitly use a variable for the rtp session idx Slightly clearer in meaning. Part-of: 2021-07-01 15:54:34 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: support using an a=mid value from the sink/transceiver caps Part-of: 2022-03-25 15:56:01 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstva.h: * gst-libs/gst/va/gstvaallocator.h: * gst-libs/gst/va/gstvadisplay.c: * gst-libs/gst/va/gstvadisplay.h: * gst-libs/gst/va/gstvadisplay_drm.c: * gst-libs/gst/va/gstvadisplay_drm.h: * gst-libs/gst/va/gstvadisplay_wrapped.h: * gst-libs/gst/va/gstvapool.c: * gst-libs/gst/va/gstvapool.h: * gst-libs/gst/va/gstvasurfacecopy.h: * gst-libs/gst/va/gstvautils.c: * gst-libs/gst/va/gstvautils.h: * gst-libs/gst/va/gstvavideoformat.h: * gst-libs/gst/va/va_fwd.h: * gst-libs/gst/va/vasurfaceimage.h: * sys/va/gstvaav1dec.c: * sys/va/gstvabasedec.c: * sys/va/gstvabasetransform.c: * sys/va/gstvacaps.c: * sys/va/gstvadecoder.c: * sys/va/gstvadeinterlace.c: * sys/va/gstvadisplay_priv.c: * sys/va/gstvadisplay_priv.h: * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvafilter.c: * sys/va/gstvah264enc.c: * sys/va/gstvavpp.c: * tests/examples/va/main.c: * tests/examples/va/multiple-vpp.c: va: Set as library single point entry header. Part-of: 2022-02-23 15:40:19 +0800 He Junyan * gst-libs/gst/va/gstvaallocator.c: * gst-libs/gst/va/gstvaallocator.h: * gst-libs/gst/va/gstvapool.c: * gst-libs/gst/va/gstvapool.h: * gst-libs/gst/va/gstvasurfacecopy.c: * gst-libs/gst/va/gstvasurfacecopy.h: * gst-libs/gst/va/meson.build: * gst-libs/gst/va/vasurfaceimage.c: * gst-libs/gst/va/vasurfaceimage.h: * sys/va/gstvaav1dec.c: * sys/va/gstvabasedec.c: * sys/va/gstvabasetransform.c: * sys/va/gstvadecoder.c: * sys/va/gstvadeinterlace.c: * sys/va/gstvaencoder.c: * sys/va/gstvafilter.c: * sys/va/gstvah264enc.c: * sys/va/gstvavpp.c: * sys/va/meson.build: va: Move allocators and pool objects into gstva library. In order to other plugins use gstva objects, such as allocators and buffer pools, this merge request move them from the va plugin to the gstva library. This objects are not exposed in since they are not expected to be used by users, only by plugin implementators. Because of the surface copy design, which is used to implement allocator's mem_copy() virtual function, depends on the vafilter, which is kept inside the plugin, memory copy through VAPosproc is disabled and removed temporarly. Also added some missing parameter validation. Part-of: 2022-02-23 15:25:08 +0800 He Junyan * gst-libs/gst/va/gstvavideoformat.c: * gst-libs/gst/va/gstvavideoformat.h: * gst-libs/gst/va/meson.build: * sys/va/gstvaallocator.c: * sys/va/gstvabasedec.c: * sys/va/gstvacaps.c: * sys/va/gstvadecoder.c: * sys/va/gstvadisplay_priv.c: * sys/va/gstvafilter.c: * sys/va/meson.build: * sys/va/vasurfaceimage.c: va: Move the video format functions into gstlibva. Untabifying header file. The logging category was moved from the plugin generic category to the display category. It can argue that video formats hacks are display dependant. Added validations for input parameters. Part-of: 2022-03-27 23:27:54 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvencoder.h: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvvp9enc.cpp: * tests/examples/meson.build: * tests/examples/qsv/key-handler.c: * tests/examples/qsv/key-handler.h: * tests/examples/qsv/meson.build: * tests/examples/qsv/qsvenc-dynamic-reconfigure.c: qsvencoder: Add support for dynamic bitrate update ... and add more encoding options. QSV API supports dynamic bitrate change without IDR insertion. That's more efficient way of runtime encoding option update than starting from new sequence with IDR per bitrate option change. Part-of: 2022-03-25 23:15:33 +0900 Seungha Yang * sys/qsv/gstqsvh265enc.cpp: qsvh265enc: Add missing gop-size property Part-of: 2022-03-25 21:13:22 +0900 Seungha Yang * sys/qsv/gstqsvallocator.cpp: qsv: Fix mfxFrameAllocator::Lock for encoder Only read map is possible for encoder input system memory Part-of: 2022-03-28 20:51:35 +1100 Matthew Waters * sys/applemedia/videotexturecache.m: applemeida/texturecache: remove unused variable Fixes: ../sys/applemedia/videotexturecache.m:71:20: error: variable 'features' set but not used [-Werror,-Wunused-but-set-variable] GstCapsFeatures *features; ^ Part-of: 2022-03-28 20:50:27 +1100 Matthew Waters * sys/applemedia/corevideobuffer.c: applemedia/corevideobuffer: remove unused variable Fixes: ../sys/applemedia/corevideobuffer.c:209:19: error: variable 'video_meta' set but not used [-Werror,-Wunused-but-set-variable] GstVideoMeta *video_meta; ^ Part-of: 2022-03-28 20:49:01 +1100 Matthew Waters * sys/applemedia/iosurfaceglmemory.c: applemedia/iosgl: remove unused variable Fixes: ../sys/applemedia/iosurfaceglmemory.c:219:41: error: variable 'texfmt' set but not used [-Werror,-Wunused-but-set-variable] GLuint tex_id, tex_target, texifmt, texfmt; ^ Part-of: 2022-03-28 20:37:54 +1100 Matthew Waters * sys/applemedia/vtdec.c: vtdec: remove unused variable Fixes: ../sys/applemedia/vtdec.c:611:35: error: variable 'output_flags' set but not used [-Werror,-Wunused-but-set-variable] VTDecodeFrameFlags input_flags, output_flags; ^ Part-of: 2022-03-28 20:24:59 +1100 Matthew Waters * sys/applemedia/avsamplevideosink.m: avsamplevideosink: remove unused variable Fixes ../sys/applemedia/avsamplevideosink.m:80:20: error: variable 'gstelement_class' set but not used [-Werror,-Wunused-but-set-variable] GstElementClass *gstelement_class; ^ Part-of: 2022-03-28 20:11:29 +1100 Matthew Waters * sys/applemedia/avfassetsrc.m: avfassetsrc: fix unused-but-set warning ../sys/applemedia/avfassetsrc.m:1014:12: error: variable 'caps' set but not used [-Werror,-Wunused-but-set-variable] GstCaps *caps; ^ Part-of: 2022-03-28 19:42:04 +1100 Matthew Waters * gst/speed/gstspeed.c: speed: fix unused-but-set warning ../gst/speed/gstspeed.c:523:39: error: variable 'base' set but not used [-Werror,-Wunused-but-set-variable] gint64 start_value, stop_value, base; ^ Part-of: 2022-03-28 18:38:23 +1100 Matthew Waters * ext/resindvd/gstpesfilter.c: resindvd: silence unused-but-set warning ../ext/resindvd/gstpesfilter.c:117:11: error: variable 'STD_buffer_size_bound' set but not used [-Werror,-Wunused-but-set-variable] guint16 STD_buffer_size_bound; ^ Part-of: 2022-03-28 18:23:20 +1100 Matthew Waters * gst/mpegtsmux/gstbasetsmux.c: mpegts: don't shadow res variable Fixes unused-but-set warning: ../gst/mpegtsmux/gstbasetsmux.c:2115:43: error: variable 'res' set but not used [-Werror,-Wunused-but-set-variable] gboolean all_headers, done = FALSE, res = FALSE; ^ Part-of: 2022-03-28 18:12:43 +1100 Matthew Waters * gst-libs/gst/mpegts/gst-dvb-section.c: mpeg: fix unused-but-set warning ../gst-libs/gst/mpegts/gst-dvb-section.c:206:9: error: variable 'i' set but not used [-Werror,-Wunused-but-set-variable] guint i = 0, allocated_events = 12; ^ ../gst-libs/gst/mpegts/gst-dvb-section.c:365:9: error: variable 'i' set but not used [-Werror,-Wunused-but-set-variable] guint i = 0, allocated_streams = 12; ^ ../gst-libs/gst/mpegts/gst-dvb-section.c:543:9: error: variable 'i' set but not used [-Werror,-Wunused-but-set-variable] guint i = 0, allocated_streams = 12; ^ ../gst-libs/gst/mpegts/gst-dvb-section.c:885:9: error: variable 'i' set but not used [-Werror,-Wunused-but-set-variable] guint i = 0, allocated_services = 8; ^ ../gst-libs/gst/mpegts/gst-dvb-section.c:1316:9: error: variable 'i' set but not used [-Werror,-Wunused-but-set-variable] guint i = 0, allocated_services = 8; ^ Part-of: 2022-03-28 10:10:45 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: video-format: Move NV12_8L128 into the correct position in GST_VIDEO_FORMATS_ALL Part-of: 2022-03-28 15:56:22 +1100 Matthew Waters * gst/mpegdemux/gstpesfilter.c: mpegdemux: silence unused-but-set werror ../gst/mpegdemux/gstpesfilter.c:117:11: error: variable 'STD_buffer_size_bound' set but not used [-Werror,-Wunused-but-set-variable] guint16 STD_buffer_size_bound; ^ Part-of: 2022-03-25 14:25:02 +1100 Andrew Pritchard * sys/androidmedia/jni/gstamcsurfacetexture-jni.c: Fix GstAmcSurfaceTexture segfault Check that `self` and `self->callback` are defined. `self` can be set to `NULL` in `remove_listener`, and `self->callback` can be set to `NULL` inside `gst_amc_surface_texture_jni_set_on_frame_available_callback`. This can cause a segfault since the Java object can outlive the C object, and call the callback after `remove_listener` is called. Part-of: 2022-03-23 17:31:37 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: * tests/check/elements/ccconverter.c: ccconverter: ensure correct ordering of cea608 across output buffers e.g. if a 60fps output is configured, we can only produce a single field of cea608 that must alternate between field 1 and field 2. Part-of: 2022-03-23 15:13:10 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: ignore padding cea608 data even if marked as 'valid' Part-of: 2022-03-23 10:36:28 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: Detect missing M2M_HOLD_CAPTURE_BUF Produce an error if we try to use the feature of holding capture buffer but it is not supported by the driver. Ingoring this can lead to stalls as the driver will run-out of capture buffer to decode into. This affects slice decoders but also split-field interlaced decoding. Part-of: 2022-03-23 09:11:35 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Set other field poc if available Whenever the other field POC is available, pass it back to the driver. This should not be strictly required, but it makes things easier to debug and more forgiven. Part-of: 2021-12-21 10:59:37 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Trace request by it FD This helps when crossing the debug logs with the kernel logs. Part-of: 2021-12-21 10:55:58 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Fix dpb entry flag FLAG_FIELD The logic to guess back this value was broken. Use the value now saved into the picture instead. This was tested using LibreELEC patched 5.15 kernel, and fixed the interlaced decode issues. Part-of: 2021-12-21 10:52:32 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264: Save the field_pic_flag This flag is set when the stream is interlaced and the specific slice is made of single parity fields rather the paired at the macroblock layer. This is rarely needed in late decoding process but the Rockchip RKVDEC HW interface requires it, hence needs to be passed through V4L2 Stateless interface. Part-of: 2022-03-25 13:26:52 -0400 Xavier Claessens * tests/examples/d3d11/d3d11device.cpp: d3d11: Fix example build error ``` ../subprojects/gst-plugins-bad/tests/examples/d3d11/d3d11device.cpp:129:50: error: invalid conversion from ‘int’ to ‘DXGI_FORMAT’ [-fpermissive] 129 | D3D11_SHADER_RESOURCE_VIEW_DESC srv_desc = { 0, }; ``` Part-of: 2022-03-18 16:59:32 +0000 Thibault Saunier * ext/directfb/dfbvideosink.c: * ext/opencv/gsthanddetect.cpp: * ext/vulkan/vksink.c: * sys/d3d11/gstd3d11videosink.cpp: * sys/d3dvideosink/d3dhelpers.c: * tests/check/pipelines/ipcpipeline.c: navigation: Add support for key Modifiers in all relevant events Part-of: 2022-03-24 21:39:30 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Fix a crash because of missing reference frame. Some problematic H265 stream may miss the reference frame in the DPB, and get some message like: "No short term reference picture for xxx". So there may be empty entries in ref_pic_list0/1 when passing to decode_slice() function of sub class. We need to check the NULL pointer. Part-of: 2022-03-24 15:19:27 +0800 Chun-wei Fan * ext/openexr/meson.build: openexr: Specify modules when finding OpenEXR. Specify modules to look for OpenEXR when CMake is used, as we may have CMake config files instead of pkg-config files that result from building OpenEXR, which may be built with CMake which is typically the case on Visual Studio builds. In this case, Meson does seem to find the 'OpenEXR' package with CMake after trying pkg-config, but does not consider it enough without the 'modules:' argument. Part-of: 2022-03-22 00:30:28 +0900 Sangchul Lee * ext/webrtc/gstwebrtcbin.c: webrtcbin: Update documentation of 'get-stats' action signal Some stats fields are updated according to the current implementation. Part-of: 2022-03-25 00:27:42 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * tests/check/elements/webrtcbin.c: Revert "webrtcbin: fix msid line and allow customization" This reverts commit 3cad3455377d5a22faa138d9df840257059776c8. That commit was breaking the association between an audio and a video track in the standard case. In practice, to support carrying separate MediaStream, we are going a way to map what MediaStreamTrack belong to what MediaStream, but that will require some thinking about the API. Part-of: 2022-03-24 19:55:48 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't check SCTE events for being too far from the PCR Otherwise it happens that SCTE events can only be scheduled up to 15 seconds since the last seen PCR, which is a useless restriction. Part-of: 2022-03-21 23:03:36 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * tests/check/elements/webrtcbin.c: webrtcbin: fix msid line and allow customization From https://datatracker.ietf.org/doc/html/draft-ietf-mmusic-msid-16: > Multiple media descriptions with the same value for msid-id and > msid-appdata are not permitted. Our previous implementation of simply using the CNAME as the msid identifier and the name of the transceiver as the msid appdata was misguided and incorrect, and created issues when bundling multiple video streams together: the ontrack event was emitted with the same streams for the two bundled medias, at least in Firefox. Instead, use the transceiver name as the identifier, and expose a msid-appdata property on transceivers to allow for further customization by the application. When the property is not set, msid-appdata can be left empty as it is specified as optional. Part-of: 2022-01-05 10:15:34 -0300 Thibault Saunier * ext/wpe/gstwpesrcbin.cpp: wpe: Mark first audio buffer as discont Part-of: 2022-01-04 15:49:35 -0300 Thibault Saunier * ext/wpe/gstwpe.h: * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/gstwpevideosrc.cpp: * ext/wpe/meson.build: * tests/validate/meson.build: * tests/validate/wpe/load_bytes_first.validatetest: wpe: Use `about:blank` as default URL to support only using load-bytes WebKit is not going to render anything until a URI is set, leading to a WPE posting a `WPE View did not render a buffer` error message. To avoid requiring the user to know it if they only want to use `wpesrc::load-bytes` we can just use `about:blank` as default and everything will work as users would expect. Part-of: 2022-01-27 23:54:34 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/debugutils/gstfakeaudiosink.c: * gst/debugutils/gstfakeaudiosink.h: * gst/debugutils/gstfakevideosink.c: * gst/debugutils/gstfakevideosink.h: fakevideosink,fakeaudiosink: Proxy handoff and preroll-handoff signals Proxy signals for application to be able to consume them Part-of: 2021-12-24 19:49:34 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * ext/aom/gstav1enc.c: aom: av1enc: Specify Temporal Unit alignment Encoded bitstream consists of leading Temporal delimiter OBU with frame, that's Temporal Unit alignment. Part-of: 2022-03-24 02:52:45 +0900 Seungha Yang * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvvp9enc.cpp: qsvencoder: Clear caps after debug print Otherwise debug function will print (null) for alread cleared pointer Part-of: 2022-03-24 02:43:43 +0900 Seungha Yang * sys/qsv/gstqsvh264enc.cpp: qsvh264enc: Fix profile and level setting in codec data The profile field in SPS is located after header byte Part-of: 2022-03-16 04:58:16 +0900 Seungha Yang nvcodec: Add new Direct3D11/CUDA mode encoder implementation Adding new encoder elements nvd3d11{h264,h265}enc for Direct3D11 input support and re-written nvcuda{h264,h265}enc elements. Newly writeen elements have some differences compared with old nv{h264,h265}enc including non-backward compatible changes. * RGBA is not a supported input format any more: New elements will support only YUV formats to avoid implicit conversion done by hardware. Ideally it should be done by upstream element in order to have more control on it. Moreover, RGBA support can cause redundant RGBA -> YUV conversion if multiple encoders are used for the same RGBA input * Subsampled planar format support is dropped: I420 and YV12 format are not supported formats for Direct3D11. Although it's supported in CUDA mode, it's not a hardware friendly memory layout and it will waste GPU memory since UV planes will have large padding due to the memory layout requirement of NVENC. * GL support is dropped: Similar to the RGBA case, GL support in encoder would be suboptimal if GL input is used by multiple encoders, because each encoder will copy GL memory into CUDA memory. Upstream cudaupload element can be used for GL <-> CUDA interop instead. * No more pre-allocation of encoder input surfaces. New implementation will use input CUDA memory without copy (zero-copy) or will copy into a NVENC's input buffer struct in case of system memory input. Part-of: 2022-02-10 10:21:01 +0100 Vivienne Watermeier * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Add touch event support Dispatches a list of active touch events to the wpe view on each received TOUCH_FRAME event. Touch inputs currently only move the cursor, since wpe doesn't seem to support clicking/scrolling or zooming with touch input. Part-of: 2022-02-14 16:08:23 +0100 Vivienne Watermeier * ext/directfb/dfbvideosink.c: * ext/opencv/gsthanddetect.cpp: * ext/vulkan/vksink.c: * gst/librfb/gstrfbsrc.c: * sys/d3d11/gstd3d11videosink.cpp: * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: * sys/directshow/dshowvideosink.cpp: * sys/va/gstvavpp.c: * tests/check/pipelines/ipcpipeline.c: all: Use new navigation interface and API Use and implement the new navigation interface in all relevant sink elements, and use API functions everywhere instead of directy accessing the event structure. Part-of: 2022-03-22 10:37:59 +0800 Tong Wu * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp9enc.c: msdkenc: add macro definitions to avoid the gst-inspect error Since the strings are empty for GST_MSDK_CAPS_MAKE_WITH_DMABUF_FEATURE and GST_MSDK_CAPS_MAKE_WITH_VA_FEATURE, when excuting gst-inspect-1.0.exe msdkh265enc, there will be convert static caps error because of the extra semicolon between two empty strings. Now macro definitions are added to avoid this issue. Part-of: 2022-01-26 14:55:51 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: msdkdec: Check width and height of mfxVideoParam before allocation DecodeHeader must be called to fill the mfxVideoParam before allocation, and thus the check for width and height in mfxVideoParam is necessary. Part-of: 2022-03-18 16:34:38 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache after NV12_8L128 addition Part-of: 2022-03-21 13:01:03 +0100 Benjamin Gaignard * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: Fix memory leak Free pending_requests array when releasing decoder to avoid memory leak Part-of: 2022-02-02 10:05:16 -0300 Daniel Almeida * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1decoder.h: * gst-libs/gst/codecs/gstvp9decoder.c: * sys/d3d11/gstd3d11av1dec.cpp: * sys/va/gstvaav1dec.c: av1decoder: Sync duplicate_picture with VP9 one Pass the current frame to the duplicate_picture callback. This makes it easier to set the frame's output_buffer if we already have one available. Also documented that unlike VP9, it is not optional to implement this as the picture will populate the DPB if it is a key-frame. To ensure this, remove the default implementation. Part-of: 2022-03-18 15:59:21 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gstvp9decoder.c: vp9decoder: Copy system_frame_number in duplicate_picture Just like AV1, copy the system_frame_number from the original picture to make it clear they reference the same data. Part-of: 2022-03-09 16:35:56 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gstav1decoder.c: cdoecs: av1: Copy system_frame_number in duplicate_picture The system_frame_number is notably used by V4L2 decoder as a unique indentifier for the frame that was decoded. This value is used to tell driver which frame to reference, as V4L2 does not have an efficient mechanism to otherwise pass back the frames. For this reason, and because it is more ligical, copy the original system_frame_number into the duplicate picture instead of using the current frame. Part-of: 2022-03-21 22:03:53 +0900 Seungha Yang * sys/va/meson.build: meson: va: Define GST_USE_UNSTABLE_API Remove extra_c_args which is not defined in this meson file at all, and define GST_USE_UNSTABLE_API to avoid build warnings Part-of: 2022-03-16 13:17:21 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: * gst-libs/gst/codecs/gstav1decoder.c: codecs: av1: Fix state when we show existing keyframe Showing existing keyframe have special meaning in AV1. All the references frame will be refreshed with the original keyframe information. The refresh process (7.20) is implemented by saving data from the frame_header into the state. To fix this special case, load all the relevant information into the frame_header. As there is nothing happening in between this and the loading of the key-frame into the state, this patch also remove the separate API function, using it internally instead. Fixes #1090 Part-of: 2022-03-18 13:04:59 +0100 Jakub Adam * sys/d3d11/gstd3d11screencapture.cpp: d3d11: Fix some typos Part-of: 2022-03-18 13:42:27 +0530 Nirbheek Chauhan * meson.build: meson: Bump all meson requirements to 0.60 Lots of new warnings ever since https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1934 Part-of: 2022-03-18 13:37:30 +0530 Nirbheek Chauhan * ext/openexr/gstopenexrdec.cpp: openexr: Fix some warnings ``` ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:46:24: warning: ‘Imf_3_1::Int64’ is deprecated: use uint64_t [-Wdeprecated-declarations] 46 | virtual Int64 tellg (); | ^ In file included from ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:32: /usr/include/OpenEXR/ImfInt64.h:23:32: note: declared here 23 | typedef IMATH_NAMESPACE::Int64 Int64; | ^~~~~ ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:47:32: warning: ‘Imf_3_1::Int64’ is deprecated: use uint64_t [-Wdeprecated-declarations] 47 | virtual void seekg (Int64 pos); | ^ In file included from ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:32: /usr/include/OpenEXR/ImfInt64.h:23:32: note: declared here 23 | typedef IMATH_NAMESPACE::Int64 Int64; | ^~~~~ ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:67:26: warning: ‘Imf_3_1::Int64’ is deprecated: use uint64_t [-Wdeprecated-declarations] 67 | Int64 MemIStream::tellg () | ^ In file included from ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:32: /usr/include/OpenEXR/ImfInt64.h:23:32: note: declared here 23 | typedef IMATH_NAMESPACE::Int64 Int64; | ^~~~~ ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:73:29: warning: ‘Imf_3_1::Int64’ is deprecated: use uint64_t [-Wdeprecated-declarations] 73 | MemIStream::seekg (Int64 pos) | ^ In file included from ../subprojects/gst-plugins-bad/ext/openexr/gstopenexrdec.cpp:32: /usr/include/OpenEXR/ImfInt64.h:23:32: note: declared here 23 | typedef IMATH_NAMESPACE::Int64 Int64; | ^~~~~ ``` Part-of: 2022-03-18 09:48:46 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1parser: Fix a typo in FilmGrainParams comment. Part-of: 2022-03-10 17:37:26 +0100 Jakub Adam * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11screencapture.h: * sys/d3d11/gstd3d11screencapturesrc.cpp: d3d11screencapturesrc: Allow capturing screen sub-area Adds crop-x, crop-y, crop-width, crop-height properties specifying the screen area to capture. Part-of: 2022-03-15 17:01:59 +0530 Nirbheek Chauhan * ext/webrtc/gstwebrtcbin.c: webrtcbin: Warn when offer didn't intersect with transceiver caps We were silently falling back to creating a recvonly offer if the caps didn't intersect. Part-of: 2022-03-17 13:36:25 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: drop data with a warning if scratch buffers overflow Instead of asserting which could bring down the entire application. Part-of: 2022-03-11 17:02:55 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpe: Reintroduce persistent WebContext A WebContext leak was introduced in MR https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2252. If we wanted one WebContext per WebView we should also unref the WebKitWebContext when destroying the WebView. This patch reintroduces the persistent WebContext, initially part of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1484. Fixes #1084 Part-of: 2022-03-16 00:05:19 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: fix deadlock when setting up FEC encoder We bind transceivers' fec_percentage property to the FEC encoder percentage property, and with the binding bidirectional a deadlock was introduced by the latest changes from !1762: We take hold of the transceiver's object lock, then add the binding and set the property to its initial value on the encoder, which causes set_property to deadlock in the transceiver when the binding kicks in. Changing the binding type to DEFAULT (source to target) is enough to address the deadlock and still serves the original intent. Part-of: 2022-03-10 19:22:52 +0900 Sangchul Lee * ext/webrtc/gstwebrtcbin.c: webrtcbin: Check data channel transport for notifying 'ice-gathering-state' Previously, it did not care about data channel's. It is fixed by adding some conditions. Part-of: 2022-03-14 01:19:53 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: * sys/nvcodec/gstcudautils.c: * sys/nvcodec/gstcudautils.h: nvcodec: Move CUDA <-> GL, D3D11, NVMM copy function to utils This method can be used in other elements as well. Part-of: 2022-03-12 01:12:25 +0900 Seungha Yang * sys/nvcodec/gstnvh265dec.c: nvh265sldec: Add support for delayed output Delay 4 frames in case of non-live to improve throughput Part-of: 2022-03-12 21:54:45 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: h265decoder: Add support for delayed output Functionally identical to the other decoder baseclasses. Delayed output can improve throughput depending on decoding APIs. Part-of: 2022-03-12 00:53:04 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.h: h265decoder: Update documentation Sync up with other baseclasses Part-of: 2022-03-12 04:45:22 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265picture.h: h265decoder: Drain decoder on new_sequence() Holding previously decoded but not outputted pictures even after new_sequence is not a safe approach in various aspect. However, we cannot drain out DPB on new_sequence() unconditionally, because there is a case where decoder should drop decoded pictures if NoOutputOfPriorPicsFlag is set. To detect NoOutputOfPriorPicsFlag before the new_sequence() call, this patch splits decoding process into two path, one for nal unit parsing in order to detect NoOutputOfPriorPicsFlag and then each nal unit will be decoded. Part-of: 2022-03-12 03:15:48 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gsth265picture.h: h265decoder: Remove unused pts variable We can know timestamp from associated GstVideoCodecFrame Part-of: 2022-03-13 00:17:48 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Fix deadlock because of too strict buffer pool size The pool size might need to be larger than encoding surface pool size. Also, because we always copy input frame into internal CUDA memory, there's no reason to restrict max size of buffer pool. Part-of: 2022-03-12 10:31:13 +0800 He Junyan * sys/va/gstvah264enc.c: va: Fix a regression because of "Invert video codec frame dependency". 1. Always set the according GstVaH264EncFrame pointer when GstVideoCodecFrame pointer is assigned, which can make the logic safe. 2. Fix the forgotten change in _sort_by_frame_num. Its input pointer now is GstVideoCodecFrame type. Part-of: 2022-03-09 03:45:18 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1picture.c: * gst-libs/gst/codecs/gstav1picture.h: * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gsth265picture.h: * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2picture.c: * gst-libs/gst/codecs/gstmpeg2picture.h: * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp8picture.h: * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9picture.c: * gst-libs/gst/codecs/gstvp9picture.h: * sys/nvcodec/gstnvh264dec.c: * sys/va/gstvah264dec.c: codecs: Rename picture clear functions Our convention for clear method is gst_clear_foo_bar(). Part-of: 2022-03-11 23:20:26 +0900 Seungha Yang * sys/nvcodec/gstnvh265dec.c: nvh265sldec: Always fill SPS/PPS related parameters Address compare was not a valid approach since it works only if SPS/PPS id are changed. Otherwise it will always point to the same address of member variables of h265parser. Part-of: 2022-03-11 19:32:59 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: h264decoder: Fix invalid memory access gst_h264_dpb_needs_bump() can be called with null picture in case of live Part-of: 2022-02-10 08:01:02 +0100 Branko Subasic * docs/plugins/gst_plugins_cache.json: * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: * tests/check/elements/rtponviftimestamp.c: rtponviftimestamp: add support for using reference timestamps Make it posible to configure the element to obtain the timestamps from reference timestamp meta data instead of using the ntp-offset property, or estimating its own offset. Currently the only time format supported is "timestamp/x-unix", i.e. UTC time expressed in the unix time epoch. In addition the custom event GstNtpOffset has been renamed to GstOnvifTimestamp, to reflect that it is not necessarily used to convey the ntp-offset. As a consequence we had to modify a couple of files in the rtsp-server as well. Fixes #984 Part-of: 2022-03-10 18:40:12 +0000 Tim-Philipp Müller * gst/sdp/gstsdpdemux.c: sdpdemux: add media attributes to caps to fix ptp clock handling Those are needed by rtpjitterbuffer to do the right thing, e.g. a=ts-refclk:ptp=IEEE1588-2008:00-**-**-**-**-**-**-**:0 a=mediaclk:direct=1266592257 Part-of: 2022-03-08 16:20:27 +0100 Corentin Damman * sys/nvcodec/gstcudaformat.h: * sys/nvcodec/gstcudamemorycopy.c: cudamemorycopy: add D3D11 resource support Part-of: 2022-03-09 09:35:16 +0100 Corentin Damman * sys/nvcodec/gstcudacontext.c: * sys/nvcodec/meson.build: cudacontext: find associated DXGI Adapter LUID Part-of: 2022-02-28 14:40:51 +0100 Corentin Damman * sys/nvcodec/gstcudautils.c: * sys/nvcodec/gstcudautils.h: * sys/nvcodec/meson.build: * sys/nvcodec/stub/cuda.h: cudautils: add support of D3D11 resource as Cuda graphics resource type Part-of: 2022-02-28 11:24:31 +0100 Corentin Damman * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/stub/cuda.h: cudaloader: add D3D11 API Part-of: 2022-03-10 10:33:56 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegts: Handle glib < 2.58 By using a workaround to the lack of g_ptr_array_steal_index. Fixes #1078 Part-of: 2022-03-10 15:36:00 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: fix ulpfecenc passthrough pt ulpfecenc uses a value of pt=255 for passthrough. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1075 Part-of: 2022-03-10 02:28:11 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvh264dec,nvh265dec: Fix broken key-unit trick and reverse playback On GstVideoDecoder::{drain,flush}, we send null packet with CUVID_PKT_ENDOFSTREAM flag to drain out decoder. Which will reset CUVID parser as well. To continue decoding after the drain, the next input buffer should include sequence headers otherwise CUVID parser will not report any decodeable frame. Part-of: 2021-11-02 09:20:55 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: tsbase: Handle more program updates There could be a case where the new program has the same program number as the previous one ... but is actually located on a PID previously used for elementary stream. In that case the program is guaranteed to not be an update of the previous program but a completely new one. Part-of: 2021-11-02 09:18:57 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Use an array to track programs We need to be able to look for programs by their PID also. Using a hash table was a bit sub-par (and overkill) for storing a range of programs. This is needed because there could potentially be two programs with the same program id but different PMT PID (while one is being deactivated the new one would "exist"). Part-of: 2022-03-04 13:19:17 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Invert video codec frame dependency. Instead of using GstMiniObject to hold H264 frame, now it uses a plain structure. Besides, instead of holding a reference to GstVideoCodecFrame, the H264 frame structure is set as a GstVideoCodecFrame user data. Part-of: 2022-03-09 02:14:50 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudamemorycopy: Fix GL resource leak Clear GL resources on stop() Part-of: 2022-03-07 18:46:55 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Start last_ts with GST_CLOCK_TIME_NONE And use the output segment position for the outgoing timestamp while it is. This is needed to delay the calculation of `output_ts_offset` until we actually have a usable timestamp, as tsmux will output a few initial packets while `last_ts` is still unset. Without this, the calculation would use the initial `0` value, which did not have the intended effect of making VBR mode behave like CBR mode, but always calculated an offset equal to the selected start time. Part-of: 2022-03-07 18:46:08 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Use GST_CLOCK_STIME_NONE for output_ts_offset It's a GstClockTimeDiff, thus GST_CLOCK_TIME_NONE isn't appropriate. Part-of: 2022-03-08 01:26:50 +0900 Seungha Yang * sys/decklink/linux/DeckLinkAPI.h: * sys/decklink/linux/DeckLinkAPIConfiguration.h: * sys/decklink/linux/DeckLinkAPIDeckControl.h: * sys/decklink/linux/DeckLinkAPIDiscovery.h: * sys/decklink/linux/DeckLinkAPIDispatch.cpp: * sys/decklink/linux/DeckLinkAPIModes.h: * sys/decklink/linux/DeckLinkAPITypes.h: * sys/decklink/linux/DeckLinkAPIVersion.h: * sys/decklink/linux/LinuxCOM.h: * sys/decklink/osx/DeckLinkAPI.h: * sys/decklink/osx/DeckLinkAPIConfiguration.h: * sys/decklink/osx/DeckLinkAPIDeckControl.h: * sys/decklink/osx/DeckLinkAPIDiscovery.h: * sys/decklink/osx/DeckLinkAPIDispatch.cpp: * sys/decklink/osx/DeckLinkAPIModes.h: * sys/decklink/osx/DeckLinkAPIStreaming.h: * sys/decklink/osx/DeckLinkAPITypes.h: * sys/decklink/osx/DeckLinkAPIVersion.h: * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPI_i.c: decklink: Update SDK version to 12.2.2 Part-of: 2022-03-08 03:45:01 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudamemorycopy: Remove texture-target caps field It's GL specific field, and we can remove it unconditionally Part-of: 2022-03-05 02:30:24 +0900 Seungha Yang * sys/nvcodec/gstcudaformat.h: * sys/nvcodec/gstcudamemorycopy.c: * sys/nvcodec/gstcudanvmm.c: * sys/nvcodec/gstcudanvmm.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: cudaupload,cudadownload: Add support for dGPU NVMM Implement NVMM <-> CUDA, GL, SYSTEM memory conversion. Jetson is not supported yet. Note that NVMM <-> GL interop on Jetson platform is supported by GstGL Some example pipelines are: - Convert NVMM to GstGL memory nvv4l2decoder ! "video/x-raw(memory:NVMM)" ! cudadownload ! "video/x-raw(memory:GLMemory)" ! glimagesink - Upload system memory to NVMM and encode video/x-raw,format=NV12 ! cudaupload ! "video/x-raw(memory:NVMM)" ! nvv4l2h264enc - Convert NVMM to GstCUDA memory and encode nvvideoconvert ! "video/x-raw(memory:NVMM)" ! cudaupload ! "video/x-raw(memory:CUDAMemory)" ! nvh264enc Part-of: 2022-03-03 15:06:00 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: va: encoder: Don't preallocate reconstruct buffers. It's not required by VA to register the reconstruct buffers at context creation, just as in decoders. Part-of: 2022-03-07 10:19:53 +0000 Philippe Normand * tests/check/libs/play.c: gstplay: tests: Keep track of errors/warnings Part-of: 2022-03-07 10:16:36 +0000 Philippe Normand * gst-libs/gst/play/gstplay.c: gstplay: Do not error out on message parsing failures Specially when parsing errors and warnings, the details field can be NULL and the gst_structure_get() call would return FALSE in such cases, triggering false positive errors. Follow-up for #1063 Part-of: 2022-03-07 10:14:43 +0000 Philippe Normand * gst-libs/gst/play/gstplay.c: * gst-libs/gst/play/gstplay.h: gstplay: Fix warning parsing API The GError is an out parameter, so should be a ** parameter, like the details parameter. See also #1063 Part-of: 2022-03-07 18:59:37 +0900 Seungha Yang * sys/nvcodec/gstcudamemorycopy.c: cudamemorycopy: Fix build when gl is disabled Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1707 Part-of: 2022-03-02 09:15:12 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: msdkdec: Fix to not trigger SFC scaling when vpp at downstream When there is vpp scaling downstream, we need to make sure SFC is not triggered because vpp may fall into passthrough mode which causes the decoder negotiation to create src caps with vpp scaled width/height. This patch includes bitstream's original size in first query with downstream in gst_msdkdec_src_caps, which is the same for what we do for color format in this query. This is to ensure SFC scaling starts to work only when downstream directly asks for a different size instead of through vpp. Note that here SFC scaling follows the same behavior as msdkvpp: if user only changes width or height, e.g. dec ! video/x-raw,width=xx !, the height will be modified to the value which fits the original DAR. Part-of: 2022-03-06 19:18:20 +0900 Seungha Yang * sys/nvcodec/gstcudautils.c: nvcodec: Add missing null check in context sharing code Part-of: 2022-03-04 03:33:41 +0900 Seungha Yang * sys/nvcodec/gstcudadownload.c: * sys/nvcodec/gstcudadownload.h: * sys/nvcodec/gstcudaformat.h: * sys/nvcodec/gstcudamemorycopy.c: * sys/nvcodec/gstcudamemorycopy.h: * sys/nvcodec/gstcudaupload.c: * sys/nvcodec/gstcudaupload.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Refactor cudaupload/download and add support for GL memory * Implement new baseclass GstCudaMemoryCopy to remove duplicated cudaupload/download code * Add support for CUDA <-> GL memory conversion via cudaupload/download Part-of: 2022-03-03 03:25:47 +0900 Seungha Yang * sys/nvcodec/cuda-converter.c: * sys/nvcodec/cuda-converter.h: * sys/nvcodec/gstcudabasefilter.c: * sys/nvcodec/gstcudabufferpool.c: * sys/nvcodec/gstcudadownload.c: * sys/nvcodec/gstcudamemory.c: * sys/nvcodec/gstcudamemory.h: * sys/nvcodec/gstcudaupload.c: * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/plugin.c: nvcodec: Refactor GstCudaMemory abstraction * Hide GstCudaMemory member variables * Make GstCudaAllocator object GstCudaContext independent * Set offset/stride of memory correctly via video meta * Drop GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT support. This implementation actually does not support custom alignment because we allocate device memory via cuMemAllocPitch of which alignment is almost uncontrollable Part-of: 2022-03-02 22:03:54 +0900 Seungha Yang * sys/nvcodec/cuda-converter.h: * sys/nvcodec/gstcudabasefilter.c: * sys/nvcodec/gstcudabasefilter.h: * sys/nvcodec/gstcudabasetransform.c: * sys/nvcodec/gstcudabasetransform.h: * sys/nvcodec/gstcudaconvert.c: * sys/nvcodec/gstcudadownload.c: * sys/nvcodec/gstcudadownload.h: * sys/nvcodec/gstcudaformat.h: * sys/nvcodec/gstcudaupload.c: * sys/nvcodec/gstcudaupload.h: nvcodec: Refactor basetransform subclasses * cudaupload/download - Specify only formats actually we can deal with nvcodec elements, not all video formats - Supports CUDA output for download and input for upload in order to make passthrough possible, like other upload/download elements. * cudabasetransform - Reset conversion element if upstream CUDA memory holds different CUDA context and the element can accept it. This is the same behavior as corresponding d3d11 filter elements. Part-of: 2022-03-02 20:55:29 +0900 Seungha Yang * sys/nvcodec/gstcudabufferpool.c: * sys/nvcodec/gstcudabufferpool.h: cudabufferpool: Move GstCudaContext object to public member ... so that plugins can understand assosicated cuda context with the pool. Part-of: 2022-03-03 02:48:17 +0900 Seungha Yang * sys/nvcodec/gstcudacontext.c: * sys/nvcodec/gstcudacontext.h: * sys/nvcodec/gstcudautils.c: cudacontext: Require explicit gpu id instead of auto (-1) Sync up with GstD3D11Device implementation. The auto stuff should be handled in context sharing step, not device creation. Part-of: 2022-03-03 03:24:14 +0900 Seungha Yang * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudamemory.c: * sys/nvcodec/gstcudascale.c: * sys/nvcodec/gstcuvidloader.c: * sys/nvcodec/gstnvrtcloader.c: nvcodec: Indent update ... to prevent gnu indent version dependent diffs. Part-of: 2022-03-02 05:01:42 +0900 Seungha Yang * sys/nvcodec/gstcudacontext.c: cudacontext: Remove unnecessary cuInit() call It's already called at plugin init time Part-of: 2022-03-05 11:35:29 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Add a comment when the detection of TU fails. Also update the print message. Part-of: 2022-03-04 16:48:54 -0500 Nicolas Dufresne * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: Remove drain query This was to support very old V4L2 kernel. As we moved to DMABuf and can now detach buffers on renegotiation, the buffer it tries to fix no longer exist. The risk to blocking indefinitly the application does still exist though. Fixes #1070 Part-of: 2022-03-03 23:00:41 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: check the error return when parse_alignment_from_caps() Part-of: 2022-03-03 22:38:56 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Use the intersected caps to decide the alignment. When we negotiate with downstream, We should use the intersected caps of input and output to decide the alignment and stream format. The current code just uses the input caps which may lack the stream format. Part-of: 2022-03-03 21:30:00 +0800 He Junyan * gst/ivfparse/gstivfparse.c: ivfparse: Set the alignment to tu for AV1 stream. Just do the same as other demux. Part-of: 2022-03-03 17:51:11 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Only detect the stream format when input alignment is tu. The demux now outputs the AV1 stream in "tu" alignment, so we do not need to detect the input alignment. But the annex b stream format is not recognized by the demux, we still need to detect that stream format for the first input. Part-of: 2022-03-02 16:22:25 -0500 Nicolas Dufresne * gst/videoparsers/gstav1parse.c: av1parse: Save the default alignment Otherwise the transformation is not applied and decoders may not get the appropriate format despite the caps being negotiated correctly. Part-of: 2022-03-02 16:20:31 -0500 Nicolas Dufresne * gst/videoparsers/gstav1parse.c: av1parse: Remove duplicated check The case of both strings being empty is already checked in the helper function. No functional changes. Part-of: 2022-03-04 10:02:56 -0500 Nicolas Dufresne * gst/videoparsers/gstvp9parse.c: vp9parse: Fix auto-plugging of HW frame decoder Decoders that required frame aligmment and didn't have an associated alpha decoder were skipped. This is because the parser was constructing caps based on the software alpha decoder, which specify super-frame alignment. Iterate over the caps to filter the one that have a matching codec-alpha, with the semantic the no codec-alpha field means codec-alpha=false. Then if everything was removed, callback to the original, so that the first non-alpha decoder will be picked. Fixes #820 Part-of: 2022-03-04 14:17:47 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle PES headers bigger than a mpeg-ts packet While the actual PES header parser could notify us that it needed more data, we would never actually act on it. This commit will accumulate incoming packets in such situation and re-attempt the header parsing. Fixes #1027 Part-of: 2022-03-03 11:32:23 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasetransform.c: va: basetransform: Add device-path read-only property. Part-of: 2022-03-03 11:05:36 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: va: basedec: Add device-path read-only property. And elements will notify the used device-path if display is DRM. Part-of: 2022-03-04 13:34:50 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Remove GST_PARAM_CONDITIONALLY_AVAILABLE. Since it's used only when the property is conditionally installed, and these parameters are always installed. Part-of: 2022-03-04 09:15:42 +0100 He Junyan * sys/va/gstvaencoder.c: va: encoder: Clean dead code. Part-of: 2022-03-03 14:08:16 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: va: encoder: Fix error code path when open. Part-of: 2022-03-03 13:57:35 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvah264enc.c: vah264enc: Remove preferred_output_delay. In the current state of the encoder it's just dead code. Part-of: 2022-03-03 09:59:28 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: vah264enc: Avoid mapping coded buffer twice. Currently for copying the coded buffer onto a GStreamer buffer, the coded buffer is mapped two times: one for getting the size, and later for do the actual copy. We can avoid this by doing directly in the element rather than in the general encoder object. Part-of: 2022-03-02 20:53:16 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/gstvah264enc.c: vah264enc: Single parameter array per picture. There's no need, at least in H.264, to hold a global parameter array, since there's no need to submit SPS, trellis, hdr or quality in every buffer, but only on IDR ones. Part-of: 2022-03-02 20:06:01 +0100 Víctor Manuel Jáquez Leal * sys/va/plugin.c: va: Fix log message Part-of: 2022-03-04 09:57:02 +0000 Philippe Normand * gst-libs/gst/play/gstplay.c: * gst-libs/gst/play/gstplay.h: play: Fix error parsing API The GError is an out parameter, so should be a ** parameter, like the details parameter. Fixes #1063 Part-of: 2021-08-03 12:14:49 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * tests/check/elements/webrtcbin.c: webrtc: support renegotiating adding/removing RTX We need to always add the RTX/RED/ULPFEC elements as rtpbin will only call us once to request aux/fec senders/receivers. We also need to regenerate the media section of the SDP instead of blindly copying from the previous offer. Part-of: 2022-03-01 11:43:09 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: msdkenc: Change default ref frames number as 0 When user does not set ref-frames in pipeline, we should let MediaSDK decide the reference frame number via setting default value as 0 at gstreamer side. Part-of: 2022-03-04 04:18:06 +0900 Seungha Yang * sys/wic/meson.build: meson: wic: Fix typo Should check WIC build option, not MediaFoundation Part-of: 2022-03-03 04:22:15 +0900 Seungha Yang * sys/qsv/gstqsvdecoder.h: * sys/qsv/gstqsvencoder.h: * sys/qsv/gstqsvh264dec.cpp: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvvp9enc.cpp: qsv: Remove strcpy for DRM device path Simplify code. It's just one-time allocation, so don't need to worry about leaking. Part-of: 2022-03-03 04:57:42 +0900 Seungha Yang * sys/msdk/gstmsdkcontext.c: msdk: Don't print error log for missing DRM device path It's expected in case that such DRM device is unavailable for some reasons, specifically non-Intel platform or so Part-of: 2022-01-30 03:11:37 +0900 Seungha Yang * meson_options.txt: * sys/meson.build: * sys/wic/gstwicdecoder.cpp: * sys/wic/gstwicdecoder.h: * sys/wic/gstwicimagingfactory.cpp: * sys/wic/gstwicimagingfactory.h: * sys/wic/gstwicjpegdec.cpp: * sys/wic/gstwicjpegdec.h: * sys/wic/gstwicpngdec.cpp: * sys/wic/gstwicpngdec.h: * sys/wic/gstwicutils.cpp: * sys/wic/gstwicutils.h: * sys/wic/meson.build: * sys/wic/plugin.cpp: wic: Add support for JPEG and PNG decoding Adding Windows Imaging Component (WIC) plugin with JPEG/PNG decoding support. Part-of: 2022-03-02 06:17:22 +0900 Seungha Yang * sys/directshow/gstdshow.cpp: * sys/directshow/gstdshowvideodec.cpp: directshow: Fix for division by zero The AvgTimePerFrame value may be unknown. Use arbitrary value (30 fps) instead of crashing. Part-of: 2022-02-20 03:59:32 +0900 Seungha Yang * sys/qsv/gstqsvallocator.cpp: * sys/qsv/gstqsvallocator.h: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvallocator_va.cpp: * sys/qsv/gstqsvdecoder.cpp: * sys/qsv/gstqsvdecoder.h: * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvh264dec.cpp: * sys/qsv/gstqsvh264dec.h: * sys/qsv/gstqsvutils.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Add H.264 decoder Initial decoder implementation with baseclass Part-of: 2022-02-21 10:49:15 +0100 Sebastian Fricke * ext/wpe/WPEThreadedView.cpp: * ext/wpe/gstwpe.cpp: * ext/wpe/gstwpe.h: Remove the uninstalled term Remove the symbolic link `gst-uninstalled` which points to `gst-env`. The `uninstalled` is the old name and the project should stick to a single name for the procedure. Remove the term from all the files, exceptions are variables from dependencies like `uninstalled_variables` from pkgconfig and `meson-uninstalled`. Adjust mentions of the script in the documentation and README. Part-of: 2022-02-23 11:10:11 +0100 Sebastian Fricke * README.md: Maintain build instructions at a single location Do not maintain similar build instructions within each gst-plugins-* subproject and the subproject/gstreamer subproject. Use the build instructions from the mono-repository and link to them via hyperlink. Part-of: 2022-02-21 12:26:49 +0100 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: docs: Add vah264enc metadata. Part-of: 2021-10-05 01:53:19 +0800 He Junyan * sys/va/plugin.c: va: enable the H264 encoder. Part-of: 2021-10-05 01:51:48 +0800 He Junyan * sys/va/gstvah264enc.c: * sys/va/gstvah264enc.h: * sys/va/meson.build: va: Add H264 encoder. This a new VA-API implementation of a H264 encoder. It can control the GOP and parameter settings, while the MV searching, VCL and the rate control algorithm are implemented by VA drivers and HW. It supports most of the common usage options in H264, but still lacks of look ahead, field, B frame weighted prediction, etc. Co-authored-by: Victor Jaquez Part-of: 2021-10-05 01:50:07 +0800 He Junyan * sys/va/gstvaencoder.c: * sys/va/gstvaencoder.h: * sys/va/meson.build: va: Add a common encoder object. As the counterpart of the va decoder, this class handles all the common logic for the encoding routine and miscellaneous queries about encoding. Co-authored-by: Victor Jaquez Part-of: 2022-01-20 21:44:20 +0800 He Junyan * sys/va/vacompat.h: va: Add vacompat.h to wrap glib functions. The g_queue_clear_full() and g_array_copy() functions in the glib may not be available for the current glib version check, so we add helper functions to wrap it. This should be deleted after the glib version bumps. Part-of: 2021-10-21 22:56:23 +0800 He Junyan * sys/va/gstvaprofile.c: * sys/va/gstvaprofile.h: va: Add the profile string name into the profile_map. We also add a helper function of gst_va_profile_from_name to get the VA profile value by its profile string name. Part-of: 2021-10-05 01:53:47 +0800 He Junyan * sys/va/gstvaprofile.c: va: Change the H264 profile string order in the profile_map. The first one should be the one that matches the VA profile's name most precisely. Part-of: 2021-10-05 01:45:25 +0800 He Junyan * sys/va/gstvacaps.c: * sys/va/gstvacaps.h: va: caps: Expose gst_va_create_coded_caps as helper function. And allow free indentation for array declaration. Part-of: 2021-10-05 01:43:28 +0800 He Junyan * tests/check/libs/h264bitwriter.c: * tests/check/meson.build: test: Add test cases for the H264 bitwriter. Part-of: 2021-10-05 01:42:41 +0800 He Junyan * gst-libs/gst/codecparsers/gsth264bitwriter.c: * gst-libs/gst/codecparsers/gsth264bitwriter.h: * gst-libs/gst/codecparsers/meson.build: codecparsers: bitwriter: Add the common bit writer functions for H264. Part-of: 2021-10-05 01:41:07 +0800 He Junyan * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/codecparsers/nalutils.h: codecparsers: nalutils: Add nal_writer_reset_and_get_data help function. We not only want to create a NAL gstmemory, but also need to create and get the raw data of a NAL writer for the later usage. Part-of: 2022-02-28 16:33:23 +0100 Guillaume Desmottes * ext/gs/meson.build: gs: look for google_cloud_cpp_storage.pc storage_client.pc was legacy and has been removed: https://github.com/googleapis/google-cloud-cpp/commit/df6fa3611cdfbc37d40e1451afa91fd7d2e7d5f7#diff-bc35ad7c2fe631fd5578a06092412dba81c7ddd27bb25df7e17bb13771799afcL743 No need to keep looking for storage_client.pc as a fallback as 1.25.0, our minimum version, already ships google_cloud_cpp_storage.pc Part-of: 2022-02-25 15:00:05 +0800 jinsl00000 * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/meson.build: ipcpipeline: fix crash and error on windows with SOCKET or _pipe() The fd was in different meanings on windows: POSIX read and write use the fd as a file descriptor. The gst_poll use the fd as a WSASocket. This patch use WSASocket as default on windows. This is a temporary measure, because IPC has many different implement. There may be a better way in the future. See #1044 Part-of: 2022-02-14 16:15:46 +0800 Wu Tong * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkenc.c: MSDK: Add _context_query() and avoid compile error on Windows To avoid compile error on Windows, macro definitions are added to suppress va variables. In the meantime, add function _context_query() to query context on Windows. Part-of: 2022-02-24 20:26:46 +0530 Sanchayan Maity * ext/ldac/gstldacenc.c: ldac: Set eqmid in caps We set the eqmid in caps to be usable downstream by rtpldacpay for knowing the frame count. Part-of: 2022-01-31 16:13:32 +0200 Vivia Nikolaidou * gst/mpegtsmux/gstbasetsmux.c: tsmux: Skip empty buffers They can be created e.g. by aggregator when there is a gap. Such buffers should not be muxed at all. Part-of: 2022-02-21 11:37:26 -0500 Xavier Claessens * data/meson.build: * ext/voamrwbenc/meson.build: * gst/freeverb/meson.build: devenv: Add some missing GStreamer specific env variables This should make "meson devenv" closer to what "gst-env.py" sets. - GST_VALIDATE_SCENARIOS_PATH - GST_VALIDATE_APPS_DIR - GST_OMX_CONFIG_DIR - GST_ENCODING_TARGET_PATH - GST_PRESET_PATH - GST_PLUGIN_SCANNER - GST_PTP_HELPER - _GI_OVERRIDES_PATH Part-of: 2018-12-05 01:22:48 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacdec.h: fdkaacdec: Support arbitrary channel configs Try to match the config to GStreamer positions. If something doesn't fit, fall back to a set of unpositioned channels. Part-of: 2018-12-05 01:07:19 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacdec.h: fdkaacdec: Use predefined channel layouts This limits the decoder to the layouts predefined for the encoder (including the MPEG standard layouts) but greatly simplifies the implementation. Part-of: 2022-02-01 14:51:27 +0200 Vivia Nikolaidou * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: tsmux: Lock mux->tsmux, the programs hash table, and pad streams They contain implementations that are not thread-safe (e.g. GList, GHashTable). Part-of: 2022-02-17 15:16:40 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: msdkdec: Fix uninitialized variables Part-of: 2022-02-17 15:12:52 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkvpp.c: msdk: Fix unchecked return values There are several calls of gst_video_info_from_caps and gst_video_frame_copy without checks for the returned values. This patch adds all necessary function return checks. Part-of: 2022-02-22 05:19:51 +0900 Seungha Yang * sys/qsv/gstqsvencoder.cpp: qsvencoder: Fix caps leak in Linux build Part-of: 2022-02-22 05:15:04 +0900 Seungha Yang * sys/qsv/plugin.cpp: qsv: Fix debug category name of qsvallocator Remove gst prefix to make $env:GST_DEBUG="qsv*:6" work for qsvallocator as well Part-of: 2022-02-21 16:45:50 +0800 Mengkejiergeli Ba * docs/plugins/gst_plugins_cache.json: bad:docs: Add vaav1dec in documentation Part-of: 2022-02-21 14:17:11 +0200 Sebastian Dröge * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: d3d11: Remove non-existing gst_d3d11_memory_get_type() API from header Part-of: 2022-02-14 23:30:45 +0300 Dmitry Osipenko * sys/v4l2codecs/gstv4l2format.c: * sys/v4l2codecs/gstv4l2format.h: v4l2codecs: Support YUV420M format YUV420M format of V4L essentially is I420 with separate memory planes. It's used by NVIDIA Tegra V4L decoder. Support this format by v4l2codecs. Part-of: 2022-02-20 23:59:46 +0900 Seungha Yang * sys/d3d11/gstd3d11screencapturesrc.cpp: d3d11screencapturesrc: Use staging buffer pool for performance By using staging pool/buffer, we can avoid per frame staging texture -> system memory copy. Part-of: 2022-02-20 15:20:07 -0500 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Add NV12_16L32S into the cache Autogenerated by CI Part-of: 2022-01-26 13:39:40 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2format.c: * sys/v4l2codecs/gstv4l2format.h: v4l2codecs: Enable MediaTek MM21 (NV12_16L32S) Part-of: 2022-01-19 15:53:05 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2format.c: v4l2codecs: Add support for multi planar buffers V4L2 have some pixel formats that produces 2 dmabuf, this add support for these format. Part-of: 2022-01-25 14:08:47 -0500 Nicolas Dufresne * ext/wayland/wlshmallocator.c: * sys/kms/gstkmsallocator.c: * sys/v4l2codecs/gstv4l2format.c: Port plugins to gst_video_format_info_extrapolate_stride() This reduces code duplication and simplify addition of new pixel formats into related plugins. Part-of: 2022-02-20 06:36:45 +0900 Seungha Yang * sys/winscreencap/dxgicapture.c: * sys/winscreencap/dxgicapture.h: * sys/winscreencap/gstdxgiscreencapsrc.c: * sys/winscreencap/gstdxgiscreencapsrc.h: * sys/winscreencap/gstwinscreencap.c: * sys/winscreencap/meson.build: winscreencap: Remove dxgiscreencapsrc element We have the d3d11screencapturesrc element in d3d11 plugin which is obviously better than this element in terms of performance and design, so we don't need to make people be confused by two separate elements. Let's pick the better implementation and remove unnecessary one. Part-of: 2022-02-08 15:23:17 +0100 Jan Alexander Steffens (heftig) * ext/wpe/meson.build: wpe: Clean up build script Use feature.require to check for gstgl and exit early if 'wpe' is disabled (don't even check for wpe-webkit-1.1). Part-of: 2022-02-19 00:37:34 +0900 Seungha Yang * sys/directshow/dshowvideosink.cpp: * sys/directshow/gstdshowaudiodec.h: directshow: Fix build warnings Part-of: 2022-02-19 00:14:38 +0900 Seungha Yang * sys/directshow/dshowdecwrapper/gstdshowdecwrapper.cpp: * sys/directshow/dshowdecwrapper/gstdshowdecwrapper.h: * sys/directshow/dshowdecwrapper/meson.build: * sys/directshow/dshowdeviceprovider.cpp: * sys/directshow/dshowdeviceprovider.h: * sys/directshow/dshowsinkwrapper/meson.build: * sys/directshow/dshowsrcwrapper/meson.build: * sys/directshow/dshowvideofakesrc.cpp: * sys/directshow/dshowvideofakesrc.h: * sys/directshow/dshowvideosink.cpp: * sys/directshow/dshowvideosink.h: * sys/directshow/gstdshow.cpp: * sys/directshow/gstdshow.h: * sys/directshow/gstdshowaudiodec.cpp: * sys/directshow/gstdshowaudiodec.h: * sys/directshow/gstdshowaudiosrc.cpp: * sys/directshow/gstdshowaudiosrc.h: * sys/directshow/gstdshowfakesink.cpp: * sys/directshow/gstdshowfakesink.h: * sys/directshow/gstdshowfakesrc.cpp: * sys/directshow/gstdshowfakesrc.h: * sys/directshow/gstdshowutil.cpp: * sys/directshow/gstdshowutil.h: * sys/directshow/gstdshowvideodec.cpp: * sys/directshow/gstdshowvideodec.h: * sys/directshow/gstdshowvideosrc.cpp: * sys/directshow/gstdshowvideosrc.h: * sys/directshow/meson.build: * sys/directshow/plugin.cpp: directshow: Merge plugins into single directshow plugin ... and lower rank of dshowvideosink and dshowdeviceprovider to GST_RANK_MARGINAL since we don't prefer this plugin by default Part-of: 2022-02-19 00:12:55 +0900 Seungha Yang * sys/directshow/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/directshow/dshowdecwrapper/gstdshowaudiodec.h: * sys/directshow/dshowdecwrapper/gstdshowfakesrc.cpp: * sys/directshow/dshowdecwrapper/gstdshowfakesrc.h: * sys/directshow/dshowdecwrapper/gstdshowutil.cpp: * sys/directshow/dshowdecwrapper/gstdshowutil.h: * sys/directshow/dshowdecwrapper/gstdshowvideodec.cpp: * sys/directshow/dshowdecwrapper/gstdshowvideodec.h: * sys/directshow/dshowsinkwrapper/dshowvideofakesrc.cpp: * sys/directshow/dshowsinkwrapper/dshowvideosink.cpp: * sys/directshow/dshowsinkwrapper/dshowvideosink.h: * sys/directshow/dshowsrcwrapper/gstdshow.h: * sys/directshow/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/directshow/dshowsrcwrapper/gstdshowsrcwrapper.cpp: * sys/directshow/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/directshow/dshowsrcwrapper/gstdshowvideosrc.h: directshow: Remove white spaces Part-of: 2021-10-19 16:10:06 -0300 Martin Reboredo * docs/plugins/gst_plugins_cache.json: * ext/vulkan/gstvulkan.c: * ext/vulkan/gstvulkanelements.h: * ext/vulkan/meson.build: * ext/vulkan/vkshaderspv.c: * ext/vulkan/vkshaderspv.h: vulkanshaderspv: SPIRV based filter Part-of: 2022-02-18 16:23:09 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: vp9: Fix reset_frame_context parameter It was assumed that the kernel parameters would match with the bitstream value but instead the author when with another set of value. Surprisingly, this makes no difference with the resulting fluster score. Part-of: 2022-02-18 16:02:27 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: vp9: Only fill compressed headers if needed Fixes: 13944cf3ee871722 ("v4l2codecs: vp9: Make compressed hdr control optional") Part-of: 2022-01-14 23:42:27 -0600 Tim Mooney * sys/v4l2codecs/linux/types-compat.h: v4l2: include on Illumos Needed for _IOR/_IORW Part-of: 2022-01-26 21:06:45 +0100 Loic Le Page * sys/directshow/dshowsinkwrapper/dshowvideofakesrc.cpp: * sys/directshow/dshowsinkwrapper/dshowvideofakesrc.h: * sys/directshow/dshowsinkwrapper/dshowvideosink.cpp: * sys/directshow/dshowsinkwrapper/dshowvideosink.h: * sys/directshow/dshowsinkwrapper/meson.build: * sys/directshow/dshowvideosink/README: * sys/directshow/meson.build: Add build files and fix build for gst-plugins-bad dshowsinkwrapper plugin dshowsinkwrapper plugin is the old dshowvideosink plugin that has been renamed to be compliant with the actuel plugin name in the source code. Part-of: 2022-01-26 21:03:10 +0100 Loic Le Page * sys/directshow/dshowsrcwrapper/BUILD.txt: * sys/directshow/dshowsrcwrapper/CMakeLists.txt: * sys/directshow/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/directshow/dshowsrcwrapper/meson.build: * sys/directshow/meson.build: Add build files and fix build for gst-plugins-bad dshowsrcwrapper plugin Part-of: 2022-01-26 20:58:12 +0100 Loic Le Page * sys/directshow/dshowdecwrapper/CMakeLists.txt: * sys/directshow/dshowdecwrapper/gstdshowvideodec.cpp: * sys/directshow/dshowdecwrapper/meson.build: * sys/directshow/meson.build: Add build files and fix build for gst-plugins-bad dshowdecwrapper plugin Part-of: 2022-01-26 20:43:09 +0100 Loic Le Page * meson_options.txt: * sys/directshow/meson.build: * sys/directshow/strmbase/LICENSE: * sys/directshow/strmbase/baseclasses/amextra.cpp: * sys/directshow/strmbase/baseclasses/amextra.h: * sys/directshow/strmbase/baseclasses/amfilter.cpp: * sys/directshow/strmbase/baseclasses/amfilter.h: * sys/directshow/strmbase/baseclasses/amvideo.cpp: * sys/directshow/strmbase/baseclasses/arithutil.cpp: * sys/directshow/strmbase/baseclasses/cache.h: * sys/directshow/strmbase/baseclasses/checkbmi.h: * sys/directshow/strmbase/baseclasses/combase.cpp: * sys/directshow/strmbase/baseclasses/combase.h: * sys/directshow/strmbase/baseclasses/cprop.cpp: * sys/directshow/strmbase/baseclasses/cprop.h: * sys/directshow/strmbase/baseclasses/ctlutil.cpp: * sys/directshow/strmbase/baseclasses/ctlutil.h: * sys/directshow/strmbase/baseclasses/ddmm.cpp: * sys/directshow/strmbase/baseclasses/ddmm.h: * sys/directshow/strmbase/baseclasses/dllentry.cpp: * sys/directshow/strmbase/baseclasses/dllsetup.cpp: * sys/directshow/strmbase/baseclasses/dllsetup.h: * sys/directshow/strmbase/baseclasses/dxmperf.h: * sys/directshow/strmbase/baseclasses/fourcc.h: * sys/directshow/strmbase/baseclasses/measure.h: * sys/directshow/strmbase/baseclasses/msgthrd.h: * sys/directshow/strmbase/baseclasses/mtype.cpp: * sys/directshow/strmbase/baseclasses/mtype.h: * sys/directshow/strmbase/baseclasses/outputq.cpp: * sys/directshow/strmbase/baseclasses/outputq.h: * sys/directshow/strmbase/baseclasses/perflog.cpp: * sys/directshow/strmbase/baseclasses/perflog.h: * sys/directshow/strmbase/baseclasses/perfstruct.h: * sys/directshow/strmbase/baseclasses/pstream.cpp: * sys/directshow/strmbase/baseclasses/pstream.h: * sys/directshow/strmbase/baseclasses/pullpin.cpp: * sys/directshow/strmbase/baseclasses/pullpin.h: * sys/directshow/strmbase/baseclasses/refclock.cpp: * sys/directshow/strmbase/baseclasses/refclock.h: * sys/directshow/strmbase/baseclasses/reftime.h: * sys/directshow/strmbase/baseclasses/renbase.cpp: * sys/directshow/strmbase/baseclasses/renbase.h: * sys/directshow/strmbase/baseclasses/schedule.cpp: * sys/directshow/strmbase/baseclasses/schedule.h: * sys/directshow/strmbase/baseclasses/seekpt.cpp: * sys/directshow/strmbase/baseclasses/seekpt.h: * sys/directshow/strmbase/baseclasses/source.cpp: * sys/directshow/strmbase/baseclasses/source.h: * sys/directshow/strmbase/baseclasses/streams.h: * sys/directshow/strmbase/baseclasses/strmctl.cpp: * sys/directshow/strmbase/baseclasses/strmctl.h: * sys/directshow/strmbase/baseclasses/sysclock.cpp: * sys/directshow/strmbase/baseclasses/sysclock.h: * sys/directshow/strmbase/baseclasses/transfrm.cpp: * sys/directshow/strmbase/baseclasses/transfrm.h: * sys/directshow/strmbase/baseclasses/transip.cpp: * sys/directshow/strmbase/baseclasses/transip.h: * sys/directshow/strmbase/baseclasses/videoctl.cpp: * sys/directshow/strmbase/baseclasses/videoctl.h: * sys/directshow/strmbase/baseclasses/vtrans.cpp: * sys/directshow/strmbase/baseclasses/vtrans.h: * sys/directshow/strmbase/baseclasses/winctrl.cpp: * sys/directshow/strmbase/baseclasses/winctrl.h: * sys/directshow/strmbase/baseclasses/winutil.cpp: * sys/directshow/strmbase/baseclasses/winutil.h: * sys/directshow/strmbase/baseclasses/wxdebug.cpp: * sys/directshow/strmbase/baseclasses/wxdebug.h: * sys/directshow/strmbase/baseclasses/wxlist.cpp: * sys/directshow/strmbase/baseclasses/wxlist.h: * sys/directshow/strmbase/baseclasses/wxutil.cpp: * sys/directshow/strmbase/baseclasses/wxutil.h: * sys/directshow/strmbase/meson.build: * sys/meson.build: Add directshow strmbase library source code from Microsoft repo Original repo is here: https://github.com/microsoft/Windows-classic-samples Part-of: 2022-02-16 14:53:12 +0100 Loïc Le Page * sys/directshow/dshowdecwrapper/CMakeLists.txt: * sys/directshow/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/directshow/dshowdecwrapper/gstdshowaudiodec.h: * sys/directshow/dshowdecwrapper/gstdshowdecwrapper.cpp: * sys/directshow/dshowdecwrapper/gstdshowdecwrapper.h: * sys/directshow/dshowdecwrapper/gstdshowfakesrc.cpp: * sys/directshow/dshowdecwrapper/gstdshowfakesrc.h: * sys/directshow/dshowdecwrapper/gstdshowutil.cpp: * sys/directshow/dshowdecwrapper/gstdshowutil.h: * sys/directshow/dshowdecwrapper/gstdshowvideodec.cpp: * sys/directshow/dshowdecwrapper/gstdshowvideodec.h: * sys/directshow/dshowsrcwrapper/BUILD.txt: * sys/directshow/dshowsrcwrapper/CMakeLists.txt: * sys/directshow/dshowsrcwrapper/dshowdeviceprovider.cpp: * sys/directshow/dshowsrcwrapper/dshowdeviceprovider.h: * sys/directshow/dshowsrcwrapper/gstdshow.cpp: * sys/directshow/dshowsrcwrapper/gstdshow.h: * sys/directshow/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/directshow/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/directshow/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/directshow/dshowsrcwrapper/gstdshowfakesink.h: * sys/directshow/dshowsrcwrapper/gstdshowsrcwrapper.cpp: * sys/directshow/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/directshow/dshowsrcwrapper/gstdshowvideosrc.h: * sys/directshow/dshowvideosink/README: * sys/directshow/dshowvideosink/dshowvideofakesrc.cpp: * sys/directshow/dshowvideosink/dshowvideofakesrc.h: * sys/directshow/dshowvideosink/dshowvideosink.cpp: * sys/directshow/dshowvideosink/dshowvideosink.h: Move all directshow plugins to the same sub-folder Part-of: 2022-01-15 00:04:05 -0600 Tim Mooney * ext/curl/meson.build: * gst/festival/meson.build: * meson.build: * sys/shm/meson.build: meson: check for libsocket and libnsl If present, add '-lsocket' and '-lnsl' to network_deps. ext/curl/meson.build: add network_deps to dependencies gst/festival/meson.build: same sys/shm/meson.build: same Fixes linking issues on Illumos distros. Part-of: 2022-02-14 22:59:01 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11converter.cpp: * tests/check/elements/d3d11colorconvert.c: d3d11: Add support for AYUV, AYUV64, and RGBA64_LE formats Note that AYUV and AYUV64 formats will be used to expand format support, especially some packed YUV formats (e.g., Y410, YUY2) are common DXGI formats used for hardware decoder/encoder on Windows but those formats cannot be used as a render target. We need to handle them differently without pixel shader help, using compute shader for example. Part-of: 2022-02-13 20:32:48 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.cpp: d3d11: Reorganize format mapping table ... and handle GST <-> D3D11 format mapping in a single place to make adding format easier Part-of: 2022-02-13 04:36:39 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11device.h: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11upload.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/mediafoundation/plugin.cpp: d3d11: Store device format in struct Holding pointer to struct was unsafe approach because the pointer to d3d11 format will be invalidated once d3d11 device object is released Part-of: 2021-10-01 20:27:28 +0900 Seungha Yang * gst-libs/gst/vulkan/win32/gstvkwindow_win32.c: * gst/festival/gstfestival.c: * meson.build: * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/mediafoundation/gstmfvideoencoder.cpp: * tests/examples/nvcodec/nvcodec.c: meson: Do hard build error for some MSVC warnings Handle various MSVC warnings as errors for development version. Part-of: 2022-02-14 16:18:54 +0300 Dmitry Osipenko * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Correct scaling matrix ABI check Scaling matrix V4L UAPI control not presents on NVIDIA Tegra, the default matrix should be used in this case. Mark scaling matrix presence optional. Fixes: 47bfa71530c ("v4l2codecs: h264: Improve ABI check ") Part-of: 2022-01-21 15:32:09 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: Enable SFC scaling for AVC and HEVC Decoder SFC only supports down-scaling at most to 1/8. For example, given a 4K bistream, SFC can scale it to 1080p via: "msdkh265dec ! video/x-raw,width=1920,height=1080 ! glimagesink" Part-of: 2021-12-15 11:49:40 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkh265dec.c: msdkdec: Enable SFC csc for AVC and HEVC Decoder SFC will be triggered when default output format is not accept at downstream. One use case below can work without using msdkvpp: "! msdkh265dec ! "video/x-raw,format=BGRA" ! glimagesink", Part-of: 2021-11-17 17:05:09 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: Add SFC codes SFC refers to Scaler Format Converter, more details here: https://01.org/sites/default/files/documentation/intel-gfx-prm-osrc-kbl-vol15-sfc.pdf By attaching mfxExtDecVideoProcessing buffer to mfxVideoParam, decoder can do SFC for csc and scaling. MSDK will check if surface bitdepth equals to input when no SFC is triggered, which means in the case of SFC, there is no need to update surface bitdepth via gst_msdk_update_mfx_frame_info_from_mfx_video_param. Part-of: 2022-02-16 02:23:58 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: d3d11converter: Fix for missing GRAY conversion Add missing Y410 -> GRAY and GRAY -> semi-planar conversion Part-of: 2022-02-16 02:11:53 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: d3d11converter: Don't use FIXME_OBJECT for non-GstObject ... and print ERROR messages for unexpected input/output formats Part-of: 2021-11-10 15:18:24 +0800 He Junyan * gst-libs/gst/va/gstvadisplay.c: * gst-libs/gst/va/gstvadisplay.h: * sys/va/gstvacaps.c: * sys/va/gstvadecoder.c: * sys/va/gstvadisplay_priv.c: * sys/va/gstvafilter.c: * sys/va/gstvasurfacecopy.c: * sys/va/vasurfaceimage.c: va: Delete the display lock/unlock when we call VA-API. According to the VA-API's description, they are MT-safe, we do not need to care about that in our middleware layer. The lock/unlock operations have overhead and make the performance lower. Part-of: 2022-02-08 15:22:39 +0100 Jan Alexander Steffens (heftig) * ext/openaptx/gstopenaptxdec.h: * ext/openaptx/gstopenaptxenc.h: * ext/openaptx/meson.build: openaptx: Support libfreeaptx [libfreeaptx][1] is a fork of libopenapt 0.2.0, used by pipewire. [1]: https://github.com/iamthehorker/libfreeaptx Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1642 Closes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1589 Part-of: 2022-02-15 02:26:46 +0900 Seungha Yang * sys/d3d11/gstd3d11converter.cpp: d3d11converter: Fix RGB to GRAY conversion Fix typo in shader code Part-of: 2022-02-14 12:57:44 +0100 Stéphane Cerveau * gst/mpegtsdemux/tsdemux.c: tsdemux: unlock mutex on -1 start_offfset Closing #1013 Part-of: 2022-02-13 22:39:46 +0900 Seungha Yang * sys/d3d11/gstd3d11download.cpp: d3d11download: Fix decide_allocation Caps should be parsed in any cases. Part-of: 2022-02-13 10:49:31 +0800 He Junyan * sys/va/meson.build: meson: va: Add va option check into plugin's build. Because the liblibgstva is built unconditionally, we now move the va option check into va plugin's build. Part-of: 2022-02-13 10:39:37 +0800 He Junyan * gst-libs/gst/va/meson.build: meson: va: Remove va option check from gst-libs Building libgstva-1.0 unconditionally for the va implementation can be used by non-va plugins such as MSDK even when va plugin is disabled Part-of: 2022-02-12 10:05:11 +0000 Philippe Normand * gst-libs/gst/webrtc/dtlstransport.c: dtlstransport: Notify ICE transport property changes The application might track the underlying ICE transport, so not notifying changes might lead to use-after-free issues. Part-of: 2022-02-12 14:51:51 +0800 He Junyan * sys/va/gstvavpp.c: vavpp: Fix the caps leak in the transform_caps() function. Part-of: 2022-02-12 00:51:56 +0900 Seungha Yang * gst-libs/gst/d3d11/meson.build: meson: d3d11: Remove d3d11 option check from gst-libs Build gstd3d11-1.0 unconditionally for d3d11 implementation can be used by non-d3d11 plugins even when d3d11 plugin is disabled Part-of: 2022-02-10 22:31:06 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_fwd.h: * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11config.h.meson: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.cpp: * gst-libs/gst/d3d11/meson.build: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11screencapturedevice.h: * sys/d3d11/gstd3d11videoprocessor.cpp: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_win32.cpp: * sys/d3d11/meson.build: * sys/d3d11/plugin.cpp: * sys/mediafoundation/plugin.cpp: d3d11: Update build-time dependency Remove all the d3d11 and dxgi header version dependent ifdef and bump the minimum requirement to d3d11_4.h and dxgi1_6.h. We are already failing support old Visual Studio (Windows SDK actually) such as Visual Studio 2015. Note that our MinGW toolchain satisfies the requirement. From runtime point of view, this change should be fine since we are checking OS version with IUnknown::QueryInterface() everywhere in order to check API availability Part-of: 2021-05-08 17:54:34 +0800 He Junyan * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp9enc.c: * sys/msdk/msdk.h: MSDK: Import VA surface as encoder's input. We make all MSDK encoders declare "memory:VAMemory" feature. Then the pipeline such as: gst-launch-1.0 -vf filesrc location=xxx.h264 ! h264parse ! \ vah264dec ! msdkh265enc ! fakesink will choose VA memory caps between the VA decoder and MSDK encoder. Part-of: 2021-05-08 17:26:27 +0800 He Junyan * sys/msdk/gstmsdk_va.c: * sys/msdk/gstmsdk_va.h: * sys/msdk/meson.build: MSDK: Add helper function to peek VA surface of VA kind gstbuffer. Part-of: 2021-05-08 15:51:11 +0800 He Junyan * sys/msdk/gstmsdkenc.c: MSDK: Handle context query into the encoder's query function. The MSDK encoder's query function is not set and it just forwards all query to its base class. We now need to answer the context query correctly. Other VA plugins need to query the VA display. By the way, the current query of "gst.msdk.Context" is also missing. The other MSDK elements must depend on the bin's context message( sent in context_propagate()) to set their MsdkContext correctly. Part-of: 2021-08-17 22:36:59 +0800 He Junyan * sys/msdk/gstmsdkvpp.c: MSDK: Handle context query into the VPP's query function. The MSDK VPP's query function is not set and it just forwards all query to its base class. We now need to answer the context query correctly. Other VA plugins need to query the VA display. By the way, the current query of "gst.msdk.Context" is also missing. The other MSDK elements must depend on the bin's context message( sent in context_propagate()) to set their MsdkContext correctly. Part-of: 2021-08-17 22:34:43 +0800 He Junyan * sys/msdk/gstmsdkdec.c: MSDK: Handle context query into the decoder's query function. The MSDK decoder's query function is not set and it just forwards all query to its base class. We now need to answer the context query correctly. Other VA plugins need to query the VA display. By the way, the current query of "gst.msdk.Context" is also missing. The other MSDK elements must depend on the bin's context message( sent in context_propagate()) to set their MsdkContext correctly. Part-of: 2021-08-17 22:33:18 +0800 He Junyan * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkcontextutil.h: MSDK: Add a handle_context_query() helper function. Part-of: 2021-08-17 21:51:58 +0800 He Junyan * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkcontextutil.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: MSDK: Improve the GstContext setting logic. We now can use the gst va lib's display to create our MSDK context, and use its helper functions to simplify our code. The improved logic is like this: 1. Every MSDK element should use gst_msdk_context_find() to find a MSDK context from neighbour. If valid, reuse it. 2. Use gst_msdk_ensure_new_context(). It will first query neighbours about the GstVaDisplay, if found(e.g. some VA element is connected), use gst_msdk_context_from_external_display() to create a MSDK context. 3. Then, creating the MSDK context from scratch. It creates both the display and MSDK context. Part-of: 2021-05-08 13:49:23 +0800 He Junyan * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: MSDK: Add new_with_va_display() helper function to create context. Part-of: 2021-05-08 11:44:57 +0800 He Junyan * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: MSDK: Use the VA display object to replace the raw display handle. The VA display object from VA lib is a common defined object. which contain the whole display things. It is easier to use, and more important, we can share it with the other VA plugins and keep all the VA related plugins working on the same GPU device. We also delete the useless gst_msdk_context_get_fd() API. Part-of: 2022-02-11 11:11:03 +0800 He Junyan * sys/msdk/meson.build: MSDK: Add the gst va lib into MSDK's dependency. Part-of: 2022-02-10 12:52:30 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Add temporal unit check when TD is absent. The current manner for deciding the new temporal unit is based on temporal delimiter(TD) OBU. We only start a new temporal unit when the TD comes. But some streams do not have TD at all, which makes the output "TU" alignment fail to work. We now add check based on the relationship between the different layers and it can successfully judge the TU edge. Part-of: 2022-02-04 17:12:15 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: let the parse continue when MISSING_OBU_REFERENCE error. Some streams may have verbose OBUs before a valid sequence header. We should let the parse continue rather than return a error. Part-of: 2022-02-04 11:40:18 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Continue when we fail to detect the alignment. Some streams may have problematic OBUs at the beginning, which causes the parse fail to detect the alignment and return error. For example, there may be verbose OBUs before a valid sequence, which should be discarded until we meet a valid sequence. We should let the parse continue when we meet such cases, rather than just return error. Part-of: 2021-03-30 19:23:12 +0900 Seungha Yang * gst/ivfparse/gstivfparse.c: ivfparse: Don't set zero resolution on caps It could be zero if the information is not available at ivfparse side, or not implemented. In that case, simply don't set width/height on caps, otherwise downstream would be confused Part-of: 2022-01-29 01:52:26 +0900 Seungha Yang * sys/mediafoundation/gstmfmp3dec.cpp: * sys/mediafoundation/gstmfmp3dec.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.cpp: mediafoundation: Add support for MP3 decoding See also https://docs.microsoft.com/en-us/windows/win32/medfound/windows-media-mp3-decoder Part-of: 2022-01-27 02:20:37 +0900 Seungha Yang * sys/mediafoundation/gstmfaacdec.cpp: * sys/mediafoundation/gstmfaacdec.h: * sys/mediafoundation/gstmfaudiodecoder.cpp: * sys/mediafoundation/gstmfaudiodecoder.h: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfutils.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.cpp: mediafoundation: Add support for AAC decoding See also https://docs.microsoft.com/en-us/windows/win32/medfound/aac-decoder Part-of: 2022-01-28 01:45:30 +0900 Seungha Yang * sys/mediafoundation/gstmfaacenc.cpp: * sys/mediafoundation/gstmfaudioencoder.cpp: * sys/mediafoundation/gstmfaudioencoder.h: * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfmp3enc.cpp: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmfvideoencoder.cpp: * sys/mediafoundation/gstmfvideoencoder.h: * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.cpp: mediafoundation: Cosmetic changes Rename baseclass to be consistent with other Windows plugins Part-of: 2022-01-27 02:26:02 +0900 Seungha Yang * sys/mediafoundation/gstmfaudioenc.cpp: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: mediafoundation: Use & operator instead of GetAddressOf() Use shorter expression Part-of: 2022-01-24 02:41:29 +0900 Seungha Yang * sys/mediafoundation/gstmfaacenc.cpp: * sys/mediafoundation/gstmfaudioenc.cpp: * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfdevice.cpp: * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfmp3enc.cpp: * sys/mediafoundation/gstmfplatloader.cpp: * sys/mediafoundation/gstmfsourceobject.cpp: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfvideobuffer.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvideosrc.cpp: * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/gstwin32devicewatcher.cpp: * sys/mediafoundation/mediacapturewrapper.cpp: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.cpp: mediafoundation: Port to C++ Part-of: 2022-02-09 03:27:41 +0900 Seungha Yang * sys/d3d11/plugin.cpp: d3d11decoder: Promote rank to primary except for mpeg2 Our D3D11/DXVA codecs implementation has been verified during 1.18 and 1.20 development cycle and also via the Fluster test framework. Similar to the case of nvdec and vtdec, we can prefer hardware over software in most cases Part-of: 2022-02-09 15:05:14 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: vp9: Fix duplicating a duplicated picture Duplicating a picture what was already a dup was leading to a crash. Rename the custom picture flags as HOLDS_BUFFER to make its meaning clear. Then save then ref and store the picture as userdata, so it can be obtained when duplicating. Finally, mark the doplicated as HOLDS_BUFFER to avoid thinking it holds a request. Part-of: 2022-02-10 01:48:23 +0900 Seungha Yang * sys/mediafoundation/gstmfaudioenc.cpp: mfaudioenc: Handle empty IMFMediaBuffer IMFMediaBuffer may not hold encoded data, which seems to happen while draining. Part-of: 2022-02-03 10:10:44 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: va: decoder: Log profile name. Part-of: 2022-01-24 16:25:18 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: Log the added filter name. Part-of: 2021-10-25 13:41:49 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: vapostproc: Process HDR caps This patch adds a new parameter: hdr-tone-mapping (same as vaapipostproc), if the HDR capabilites are availabe in driver, and it's disabled by default. If hdr-tone-mapping is enabled then HDR fields in sink caps are processed in frames from HDR to SDR, removing those hdr fields in source pad caps too. hdr-tone-mapping is not enabled if a color conversion is also requested, since it fails to process in the iHD driver, so far. Part-of: 2021-09-30 17:42:19 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/meson.build: * sys/msdk/meson.build: build: Add libva dependency fallback. Then libva can be subproject and used by either gstreamer-vaapi, va and msdk in gst-plugins-bad. Part-of: 2022-02-06 23:20:32 +0900 Sangchul Lee * ext/webrtc/gstwebrtcice.c: webrtcice: Fix memory leaks in gst_webrtc_ice_add_candidate() Part-of: 2022-01-28 14:49:42 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: vp9: Make compressed hdr control optional This is to supported by Mediatek VP9 driver. Mediatek handles the forward probabilities in hardware hence does not need and does not implement support for V4L2_CID_STATELESS_VP9_COMPRESSED_HDR. Part-of: 2022-02-07 12:34:53 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/va/meson.build: va: Fix and simplify build recipe. 1. Use api_version variable rather than static string. 2. Remove pkgconfig generation since currently the library is not installed, only used internally. 3. Rely on dependency "required" to abort compilation. Part-of: 2022-02-07 11:27:57 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/va/meson.build: * sys/va/meson.build: va: Remove libgudev crumbs in library. In commit e699aaeb we moved linking of libgudev to the plugin rather the library, because it's only used in the plugin. But the dependency check is still done in library. This patch removes the dependency check in library, and updates the dependency check in plugin. Part-of: 2022-02-08 04:51:24 +0900 Seungha Yang * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: Fix for MFXUnload symbol re-definition build error Fix for libgstreamer-full build Part-of: 2021-12-25 00:13:04 +0900 Seungha Yang * sys/qsv/gstqsvh265enc.cpp: * sys/qsv/gstqsvh265enc.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Add support for HEVC encoding main and main-10 profiles are supported for now Part-of: 2021-12-19 21:39:53 +0900 Seungha Yang * sys/qsv/gstqsvallocator.cpp: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvvp9enc.cpp: * sys/qsv/gstqsvvp9enc.h: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Add support for VP9 encoding and more video formats Add VP9 encoder with 4:2:0 8 bits and 4:4:4 8/10 bits formats support Part-of: 2022-02-06 21:34:43 +0900 Seungha Yang * meson_options.txt: * sys/meson.build: * sys/qsv/gstqsvallocator.cpp: * sys/qsv/gstqsvallocator.h: * sys/qsv/gstqsvallocator_d3d11.cpp: * sys/qsv/gstqsvallocator_d3d11.h: * sys/qsv/gstqsvallocator_va.cpp: * sys/qsv/gstqsvallocator_va.h: * sys/qsv/gstqsvencoder.cpp: * sys/qsv/gstqsvencoder.h: * sys/qsv/gstqsvh264enc.cpp: * sys/qsv/gstqsvh264enc.h: * sys/qsv/gstqsvutils.cpp: * sys/qsv/gstqsvutils.h: * sys/qsv/libmfx/meson.build: * sys/qsv/meson.build: * sys/qsv/plugin.cpp: qsv: Introduce H.264 Intel Quick Sync Video Encoder A new implementation of Intel Quick Sync Video plugin. This plugin supports both Windows and Linux but optimization for VA/DMABuf is not implemented yet. This new plugin has some notable differences compared with existing MSDK plugin. * Encoder will expose formats which can be natively supported without internal conversion. This will make encoder control/negotiation flow much simpler and cleaner than that of MSDK plugin. * This plugin includes QSV specific library loading helper, called dispatcher, with QSV SDK headers as a part of this plugin. So, there will be no more SDK version dependent #ifdef in the code and also there will be no more build-time MSDK/oneVPL SDK dependency. * Memory allocator interop between GStreamer and QSV is re-designed and decoupled. Instead of implementing QSV specific allocator/bufferpool, this plugin will make use of generic GStreamer memory allocator/bufferpool (e.g., GstD3D11Allocator and GstD3D11BufferPool). Specifically, GstQsvAllocator object will help interop between GstMemory and mfxFrameAllocator memory abstraction layers. Note that because of the design decision, VA/DMABuf support is not made as a part of this initial commit. We can add the optimization for Linux later once GstVA library exposes allocator/bufferpool implementation as an API like GstD3D11. * Initial encoder implementation supports interop with GstD3D11 infrastructure, including zero-copy encoding with upstream D3D11 element. Part-of: 2021-12-01 22:18:42 +0900 Seungha Yang * sys/qsv/libmfx/dispatcher/windows/mfx_dxva2_device.h: qsv: Remove unnecessary pargma message We know what we are doing, just remove noisy build warnings Part-of: 2021-12-01 22:18:04 +0900 Seungha Yang * sys/qsv/libmfx/api/vpl/mfx.h: * sys/qsv/libmfx/api/vpl/mfxadapter.h: * sys/qsv/libmfx/api/vpl/mfxbrc.h: * sys/qsv/libmfx/api/vpl/mfxcommon.h: * sys/qsv/libmfx/api/vpl/mfxdefs.h: * sys/qsv/libmfx/api/vpl/mfxdispatcher.h: * sys/qsv/libmfx/api/vpl/mfxdispatcherprefixedfunctions.h: * sys/qsv/libmfx/api/vpl/mfximplcaps.h: * sys/qsv/libmfx/api/vpl/mfxjpeg.h: * sys/qsv/libmfx/api/vpl/mfxmvc.h: * sys/qsv/libmfx/api/vpl/mfxpcp.h: * sys/qsv/libmfx/api/vpl/mfxsession.h: * sys/qsv/libmfx/api/vpl/mfxstructures.h: * sys/qsv/libmfx/api/vpl/mfxsurfacepool.h: * sys/qsv/libmfx/api/vpl/mfxvideo++.h: * sys/qsv/libmfx/api/vpl/mfxvideo.h: * sys/qsv/libmfx/api/vpl/mfxvp8.h: * sys/qsv/libmfx/dispatcher/linux/device_ids.h: * sys/qsv/libmfx/dispatcher/linux/libvpl.map: * sys/qsv/libmfx/dispatcher/linux/mfxloader.cpp: * sys/qsv/libmfx/dispatcher/linux/mfxloader.h: * sys/qsv/libmfx/dispatcher/linux/mfxvideo_functions.h: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl.h: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_config.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_loader.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_log.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_log.h: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_lowlatency.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_msdk.cpp: * sys/qsv/libmfx/dispatcher/vpl/mfx_dispatcher_vpl_win.h: * sys/qsv/libmfx/dispatcher/windows/libmfx.def: * sys/qsv/libmfx/dispatcher/windows/main.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_critical_section.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_critical_section.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher_defs.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher_log.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_dispatcher_log.h: * sys/qsv/libmfx/dispatcher/windows/mfx_driver_store_loader.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_driver_store_loader.h: * sys/qsv/libmfx/dispatcher/windows/mfx_dxva2_device.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_dxva2_device.h: * sys/qsv/libmfx/dispatcher/windows/mfx_exposed_functions_list.h: * sys/qsv/libmfx/dispatcher/windows/mfx_function_table.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_library_iterator.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_library_iterator.h: * sys/qsv/libmfx/dispatcher/windows/mfx_load_dll.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_load_dll.h: * sys/qsv/libmfx/dispatcher/windows/mfx_vector.h: * sys/qsv/libmfx/dispatcher/windows/mfx_win_reg_key.cpp: * sys/qsv/libmfx/dispatcher/windows/mfx_win_reg_key.h: * sys/qsv/libmfx/dispatcher/windows/mfxvideo++.h: * sys/qsv/libmfx/dispatcher/windows/version.rc.in: qsv: Import libmfx API and dispatch code from oneVPL project Copied from oneVPL project (https://github.com/oneapi-src/oneVPL) v2022.0.3 tag at the commit of efc259f8b7ee5c334bca1a904a503186038bbbdd This is corresponding to MFX API version 2.6 Part-of: 2021-12-07 21:29:05 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.cpp: d3d11memory: Inform subresource index via GstMapInfo::user_data By using this way, caller does not need to call another method gst_d3d11_memory_get_subresource_index() Part-of: 2022-02-06 21:36:28 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11memory.h: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: d3d11memory: Add support for ID3D11Buffer Allow wrap ID3D11Buffer via GstD3D11Memory object At the moment, only staging ID3D11Buffer is supported. Part-of: 2022-02-01 00:50:53 +0900 Seungha Yang * sys/nvcodec/gstnvh265dec.c: nvh265sldec: Fix for decoding 12bits stream We've been exposing main-444-12 profile as a supported profile in its sinkpad template but not actaully. Adding code to covert 12 and 16 bits as well. Part-of: 2022-02-01 00:12:06 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: nvdecoder: Fix for HEVC 4:4:4 format decoding Map chroma_format_idc == 3 (which means 4:4:4 subsampling) correctly, also pass coded bitdepth for decoder initialization instead of inferring it from output format since they can be different. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/949 Part-of: 2022-02-07 22:38:02 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.cpp: d3d11stagingbufferpool: Fix typo in texture description Fixing typo, it should be height Part-of: 2021-10-27 11:08:39 +0800 He Junyan * gst-libs/gst/va/gstva.h: * gst-libs/gst/va/meson.build: * sys/va/gstvaallocator.h: * sys/va/gstvabasedec.c: * sys/va/gstvabasetransform.c: * sys/va/gstvacaps.h: * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvadeinterlace.c: * sys/va/gstvadevice.h: * sys/va/gstvafilter.h: * sys/va/gstvasurfacecopy.h: * sys/va/gstvavpp.c: * sys/va/vasurfaceimage.h: * tests/examples/va/main.c: * tests/examples/va/multiple-vpp.c: va: Add a gstva.h to include all va lib header files. And replacing all va lib headers with this new header files when including. Part-of: 2021-10-07 14:31:28 +0800 He Junyan * gst-libs/gst/va/gstvautils.c: * gst-libs/gst/va/gstvautils.h: * gst-libs/gst/va/meson.build: * sys/va/gstvabasedec.c: * sys/va/gstvabasetransform.c: * sys/va/gstvadeinterlace.c: * sys/va/gstvavpp.c: * sys/va/meson.build: va: Move the vautils into the gst va lib. The context query and handle are common logic for all va related elements. So we move it from va plugins to the common gst va lib. Part-of: 2021-10-24 22:07:38 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.h: * gst-libs/gst/codecs/gstmpeg2decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/nvcodec/gstnvh264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/va/gstvah264dec.c: * sys/va/gstvampeg2dec.c: codecs: Stop claiming constness for refcounted object It's almost pointless and makes little sense as subclass might want to modify refcount of the object or so. And all subclasses are already casting them to non-const version as well. In a general sense, we need to avoid passing refcounted object with const qualifier. Part-of: 2022-02-06 01:06:36 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: d3d11videosink: Use staging buffer pool for non-d3d11 upstream Part-of: 2022-02-06 00:53:34 +0900 Seungha Yang * sys/d3d11/gstd3d11download.cpp: * sys/d3d11/gstd3d11upload.cpp: d3d11upload,d3d11download: Use staging buffer pool Part-of: 2022-02-05 23:25:12 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Use staging buffer pool for non-d3d11 downstream In specific condition, this can show about 10% ~ 30% performance gain with non-d3d11 downstream element. Part-of: 2022-02-05 23:08:48 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11.h: * gst-libs/gst/d3d11/gstd3d11_fwd.h: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11stagingbufferpool.h: * gst-libs/gst/d3d11/meson.build: d3d11: Add new buffer pool implementation for staging texture staging buffer pool will allocate staging d3d11 texture for upload/download optimization. By using staging buffer, we can avoid per frame staging -> system memory copy operation. Part-of: 2022-02-02 00:15:34 -0300 Martin Reboredo * gst-libs/gst/vulkan/gstvkerror.c: * gst-libs/gst/vulkan/gstvkerror.h: gstvulkan: Expose gst_vulkan_result_to_string Part-of: 2022-02-05 17:36:41 +0300 Igor V. Kovalenko * meson_options.txt: qroverlay: move to plugins that need external deps qroverlay requires libqrencode dependency, move it next to similar plugins. Part-of: 2022-02-04 11:15:47 +0000 Tim-Philipp Müller * meson.build: Back to development Part-of: === release 1.20.0 === 2022-02-03 19:53:25 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * README: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.20.0 2022-02-03 19:53:18 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.20.0 2022-02-02 09:58:15 +0100 Stéphane Cerveau * ext/dash/gstdashsink.c: dashsink: doc cleanup Remove max-files mention in the command line test Fix some typos Use mpegtsdemux instead of tsdemux in the pipeline description Part-of: 2022-02-01 00:18:44 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: nvdecoder: Fix for display resolution setup Display resolution should be cropped rect, not coded resolution. Otherwise decoded output from NVDEC might be wrong. Part-of: 2022-02-01 03:00:41 +0530 Nirbheek Chauhan * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: * sys/applemedia/vtutil.c: * sys/applemedia/vtutil.h: applemedia: Disable 64RGBALE support on older macOS The kCVPixelFormatType_64RGBALE enum is only available on macOS Big Sur (11.3) and newer. We also cannot use that while configuring the encoder or decoder on older macOS. Define the symbol unconditionally, but only use it when we're running on Big Sur with __builtin_available(). Part-of: 2022-02-01 03:04:32 +0530 Nirbheek Chauhan * sys/applemedia/vtenc.c: applemedia: Remove some unnecessary variables Part-of: 2022-02-01 05:07:04 +0530 Nirbheek Chauhan * docs/meson.build: * sys/applemedia/avfassetsrc.m: * sys/applemedia/iosassetsrc.m: docs: Add objc and objcpp files to hotdoc gst_c_sources Hotdoc should be able to extract and parse comments out of these. Just need to be careful to only add the glob in directories that actually contain *.m (objc) and *.mm (objcpp) files. Also fix some doc comments and remove redundant ones. Part-of: 2022-01-14 11:26:42 +0100 Jan Alexander Steffens (heftig) * ext/wpe/meson.build: wpe: Support wpe-webkit-1.1 Part-of: 2022-01-29 10:24:36 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/gstwpe.cpp: * ext/wpe/gstwpe.h: * ext/wpe/meson.build: * ext/wpe/wpe-extension/meson.build: wpe: Install WebExtension in pkglibdir The uninstalled WebExtension takes precedence over the installed one, so that audio support works in local developer builds as well. Fixes #975 Part-of: 2022-01-30 19:06:29 +0530 Nirbheek Chauhan * sys/applemedia/plugin.m: * sys/applemedia/vtenc.c: docs: Rename "OS X" to "macOS" in some documentation No one uses the term "Mac OS X" anymore, it's "macOS". "OS X" is even worse, because people will usually start the search with "mac". Part-of: 2022-01-28 23:15:28 +0530 Nirbheek Chauhan * docs/plugins/gst_plugins_cache.json: * sys/applemedia/avfvideosrc.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: Document vtenc / vtdec elements Also preserve-alpha property should only be exposed on the vtenc_prores element since h264 does not support transparency. Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/94 Part-of: 2022-01-28 14:39:35 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Improve ABI check This moves the ABI check to the registration, so we don't expose decoders with the wrong ABI or that are just broken somehow. It also makes few enhancement: - Handle missing, but required controls - Prints the controls macro name instead of id This should fix RK3399 support with a currently release minor regression in the Hantro driver that cause errors. Part-of: 2022-01-28 17:11:41 +0000 Philippe Normand * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcsdp.c: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/webrtc.c: * gst-libs/gst/webrtc/webrtc_fwd.h: * tests/check/elements/webrtcbin.c: webrtc: Expose RTCError enum The error codes not complying with the spec are now notified with the GST_WEBRTC_ERROR_INTERNAL_FAILURE code. Part-of: 2022-01-29 04:46:24 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Fix typo in doc s/elemenet/element/g Part-of: === release 1.19.90 === 2022-01-28 14:28:35 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.19.90 2022-01-28 14:28:28 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.19.90 2022-01-27 11:22:54 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Make cb max values symmetrical to their min values. Intel drivers expose some colorbalance's maximum values much more bigger than their minimum values, given their middle values (default value). This means, in practice, that the real middle point between the maximum and minimum values implies a major change in the color balance, which is not expected by the GStreamer color balance logic. This patch makes the given maximum value symmetrical to the minimum value, given the middle one (default value). Part-of: 2022-01-27 11:49:53 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: Fix debug assertion in register functions As now, we warn if the decoder have no support src pixel format, but that warning is called before the type (hence the debug category) is initialized. Fix this by moving the debug category init out of the type initialization, into the register funcitons. This will fix an assertion that occures in the register function and allow relevant log to be seen by the users. Part-of: 2022-01-27 17:56:29 +0100 Jakub Adam * ext/webrtc/gstwebrtcbin.c: webrtcbin: Chain up to parent constructed method Failing to do so makes GstWebRTCBin invisible to the leaks tracer. Part-of: 2022-01-27 01:40:17 +0000 Tim-Philipp Müller * po/LINGUAS: * po/ro.po: gst-plugins-bad: update translations Part-of: 2022-01-27 03:10:39 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: d3d11av1dec: Fix typo in debug message Fixing copy and paste mistake, It's AV1 decoder not VP8 Part-of: 2022-01-25 12:32:50 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasetransform.c: va: basetransform: Pass component index not plane index. This is an issue detected and fixed in commit 3897b24f for other libraries and elements. Part-of: 2022-01-24 11:14:14 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: filter & postproc: Match color with caps features. When fixating color, there might be "other caps" with color spaces not supported by the caps features exposed in the vapostproc's source pad caps template (perhaps it's a bug somewhere else in GStreamer). This solution checks if the proposed format exists in the filter within the caps feature associated with the proposed format. The check is done with the new filter's function gst_va_filter_has_video_format(). Part-of: 2022-01-10 13:34:21 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: tsmux: Allow specifying PMT order via the prog-map Look for an entry `PMT_` in the `prog-map`, which specifies the relative index of the stream in the PMT. Part-of: 2022-01-10 14:16:28 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/tsmux/tsmux.c: tsmux: Deterministically order program streams by PID Part-of: 2022-01-10 12:59:58 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/tsmux/tsmux.c: tsmux: Deterministically order PAT programs by number Part-of: 2022-01-10 13:03:11 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: tsmux: Remove program_array_index It's only used for removal. Let's just scan the array. Part-of: 2022-01-10 12:31:42 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: tsmux: Replace streams GArray with GPtrArray This is more appropriate. Part-of: 2022-01-19 23:17:23 +0900 Sangchul Lee * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcsdp.c: webrtc: Fix memory leaks Redundant condition and unreachable codes are also removed. Part-of: 2020-07-14 11:11:11 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2codecvp9dec.c: * sys/v4l2codecs/gstv4l2format.h: v4l2codecs: Unify the src template caps format Notably NV12_4L4 ended up being applied to only VP9 decoder. This fixes the situation by using a central define for all static src pad templated formats. Part-of: 2022-01-21 14:13:39 -0500 Nicolas Dufresne * sys/v4l2codecs/linux/v4l2-controls.h: * sys/v4l2codecs/linux/videodev2.h: v4l2codecs: Sync kernel headers against 5.16.0 Part-of: 2022-01-21 11:13:55 +0100 Víctor Manuel Jáquez Leal * sys/msdk/msdk.c: msdk: Avoid noisy registry when no MSDK device. Part-of: 2022-01-21 10:53:21 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvadisplay.c: va: libs: Avoid noisy registry when no VA device. Part-of: 2022-01-20 05:59:36 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2util.c: * sys/wasapi2/gstwasapi2util.h: * sys/wasapi2/meson.build: wasapi2: Fix for device open failure on old OS To open automatic stream routing aware device, at least Windows10 Anniversary Update is required. Part-of: 2022-01-18 03:03:30 +0900 Seungha Yang * sys/wasapi2/gstwasapi2ringbuffer.cpp: wasapi2ringbuffer: Fix for desynced buffer-size and segsize GstAudioRingBufferSpec::segsize has been configured by using device period but GstWasapi2RingBuffer was referencing the buffer size returned by IAudioClient::GetBufferSize() which is most likely larger than device period. Fixing to sync them. Part-of: 2021-12-30 16:52:17 +0100 Robert Mader * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Ensure correct mapping of area_surface If the `area_surface` got unmapped when changing to the `READY` or `NULL` state, we currently don't remap it when playback resumes and `wp_viewporter` is supported. Without `wp_viewporter` we do remap it, but rather unintentionally and also when not wanted. On Weston this has not been a big problem as it so far wrongly maps subsurfaces of unmapped surfaces anyway - i.e. only the black background was missing on resume. On other compositors and future Weston this prevents the `video_surface` to get remapped. Shuffle things around to ensure `area_surface` is mapped in the right situations and do some minor cleanup. See also https://gitlab.freedesktop.org/wayland/weston/-/issues/426 Part-of: 2022-01-16 02:21:43 +0900 Seungha Yang * sys/d3d11/gstd3d11deinterlace.cpp: d3d11deinterlace: Do not restrict minimum resolution to 64x64 The value 64 was completely arbitrary one, and this element will be able to support smaller resolutions Part-of: 2022-01-06 22:00:11 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Don't try to read empty buffer The queued buffer may not be readable buffer in case that upstream sends GAP event or so. Part-of: 2022-01-13 14:17:09 +0100 Robert Mader * tests/examples/waylandsink/main.c: waylandsink: Fix alpha value for the test pattern in example The background-color property is in big-endian ARGB, resulting in a alpha value of `0`. This accidentally used to work on all common compositors, but on Weston this now correctly results in a black background. See also https://gitlab.freedesktop.org/wayland/weston/-/issues/577 Part-of: 2021-12-13 13:16:06 +0100 Robert Mader * ext/wayland/wldisplay.c: * ext/wayland/wlwindow.c: waylandsink: Use wl_surface_damage_buffer() instead of wl_surface_damage() The later, doing damage in surface coordinates instead of buffer coordinates, has been deprecated. The reason for that is that it is more prone to bugs, both on the client and the compositor side, especially when paired with buffer scale, `wp_viewporter` or buffer transforms. Unfortunately, on Weston this risks running into https://gitlab.freedesktop.org/wayland/weston/-/issues/446 (which causes trouble for several other projects as well). However, that bug only affects cases where we run in sync mode, i.e. only during resizes. In practise I haven't been able to observe the issue. Part-of: 2021-12-13 12:21:06 +0100 Robert Mader * ext/wayland/wlwindow.c: waylandsink: Use G_MAXINT32 for surface damage Each time we call `wl_surface_damage()` we want to do full surface damage. Like Mesa, just use `G_MAXINT32` to ensure we always do full damage, reducing the need to track the right dimensions. `window->video_rectangle` is now unused, but we keep it around for now as we may need it again in the future. Part-of: 2021-12-30 18:14:24 +0100 Robert Mader * ext/wayland/wlwindow.c: waylandsink: Only call wl_surface_damage() when buffer content changed From the spec: > This request is used to describe the regions where the pending > buffer is different from the current surface contents We currently also call `wl_surface_damage()` on surfaces without new or still compositor-hold buffers, e.g. when resizing the window. In that case we call it on `area_surface_wrapper`, even though it gets resized via `wp_viewport_set_destination()`, in which case the compositor is in charge of repainting the area on screen. Doing so is currently not forbidden by the spec, however it might be in the future, see https://gitlab.freedesktop.org/wayland/wayland/-/issues/267 Thus lets stay close to the spec and only call `wl_surface_damage()` when we just attached a buffer. Right now this prevents runtime assertions in Mutter. Part-of: 2021-12-13 14:31:06 +0100 Robert Mader * ext/wayland/wlwindow.c: waylandsink: Simplify input region handling We only need to unset the input region for the area surface when we don't have our own toplevel surface. By default, the input region covers the whole surface, thus no need to change it on resize. Part-of: 2021-12-13 12:00:10 +0100 Robert Mader * ext/wayland/wlwindow.c: waylandsink: Use G_MAXINT32 for opaque regions `gst_wl_window_set_opaque` does not get called on window resizes, potentially leaving opaque regions too small. According to the spec opaque regions can be bigger than the surface size - parts that fall outside of the surface will get ignored. Thus we can can simply use `G_MAXINT32` and be sure that the whole surfaces will always be covered. Part-of: 2022-01-11 13:21:55 -0500 Dave Piché * ext/webrtc/gstwebrtcbin.c: webrtc: fix log error message in function gst_webrtc_bin_set_local_description Part-of: 2022-01-13 11:31:55 +0000 Tim-Philipp Müller * gst/mxf/mxfvanc.c: mxfdemux: don't error out if VANC track only contains packets we don't handle If the VANC track does contain packets, but we skip over all packets, just treat it the same as if there hadn't been any packets at all and send a GAP event instead of erroring out with "Failed to handle essence element". We would error out because when we reach the end of the loop without having found a closed caption packet the flow return variable is still FLOW_ERROR which is what it has been initialised to. Part-of: 2022-01-13 10:36:24 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265parser: return invalid profile if len is 0. Though the profiles[0] is inited as GST_H265_PROFILE_INVALID in the gst_h265_profile_tier_level_get_profile(), the profile detecting may change its content later. So the return of profiles[0] may not be an invalid profile even the len is 0. Part-of: 2022-01-13 10:11:52 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265parser: Fix the index incrementation error in append_profile(). The current "*idx++" operation just refers the pointer and increment the pointer itself, not the content of the pointer. This causes that the count of the profiles is always 0. Part-of: 2022-01-04 04:56:55 +0300 Dmitry Osipenko * sys/kms/gstkmssink.c: kmssink: Support auto-detection of NVIDIA Tegra driver NVIDIA Tegra SoCs have a separate (from GPU) display controller. It's the primary display device on all Tegra SoCs. Add Tegra to the list of primary DRM drivers. Part-of: 2022-01-08 00:16:29 +0100 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: fix s334-1a scheduling The previous code was mistakenly trying to compute a cc_type out of the first byte in the byte triplet, whereas it is to be interpreted as: > Bit b7 of the LINE value is the field number (0 for field 2; 1 for field 1). > Bits b6 and b5 are 0. Bits b4-b0 form a 5-bit unsigned integer which > represents the offset The same mistake was made when creating padding packets. Part-of: 2022-01-05 22:48:31 +0100 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: merge buffers for both fields with caption type s334-1a Other elements such as line21encoder expect both fields to be present in the same meta, not one meta per field. Part-of: 2022-01-10 15:24:13 +0800 Mengkejiergeli Ba * gst-libs/gst/codecparsers/gstav1parser.h: av1parser: Fix data type of film grain param Fix cb_offset and cr_offset data type from guint8 to guint16. According to spec, cb_offset and cr_offset are 9 bit long, while guint8 can cause interger overflow, and thus change to guint16. Part-of: 2022-01-05 02:07:59 +0530 Nirbheek Chauhan * docs/meson.build: * ext/opencv/meson.build: * gst-libs/gst/vulkan/meson.build: * meson.build: * sys/msdk/meson.build: meson: Add explicit check: kwarg to all run_command() calls This is required since Meson 0.61.0, and causes a warning to be emitted otherwise: https://github.com/mesonbuild/meson/commit/2c079d855ed87488bdcc6c5c06f59abdb9b85b6c https://github.com/mesonbuild/meson/issues/9300 This exposed a bunch of places where we had broken run_command() calls, unnecessary run_command() calls, and places where check: true should be used. Part-of: 2022-01-05 10:53:55 +0100 Stéphane Cerveau * gst/codecalpha/gstalphacombine.c: alphacombine: update example launch line Fix typos and missing videoconvert element to demonstrate the alphacombine element. Part-of: 2021-12-24 23:09:59 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Set the "tu" as the default alignment. The tu(temporal unit) is more widely used than the current alignment. We now change the default alignment to tu. Part-of: 2021-12-24 21:50:01 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Fix the wrong DELTA_UNIT flag setting for key frames. Part-of: 2021-12-22 12:36:15 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Copy the PTS and DURATION when we create data. We need to create header buffers for annex b format. This kind of buffers should inherit the PTS and DURATION from the original buffers. Part-of: 2022-01-03 21:02:47 +0530 Nirbheek Chauhan * sys/applemedia/vtenc.c: vtenc: Signal ignored alpha component with ProRes When the image is opaque but the output ProRes format has an alpha component (4 component, 32 bits per pixel), Apple requires that we signal that it should be ignored by setting the depth to 24 bits per pixel. Not doing so causes the encoded files to fail validation. So we set that in the caps and qtmux sets the depth value in the container, which will be read by demuxers so that decoders can skip those bytes entirely. qtdemux does this, but vtdec does not use this information at present. The sister change was made in qtmux and qtdemux in: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/1061 Part-of: 2022-01-03 22:15:12 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265parser: Correct the read of slice_sao_chroma_flag. According to the SPEC, for parsing the slice header, we should read the slice_sao_chroma_flag only when ChromaArrayType is not equal to 0. Part-of: 2021-12-29 21:29:02 +0100 Rafał Dzięgiel * ext/assrender/gstassrender.c: assrender: Support RFC8081 mime types Old "application/*" are now as per RFC8081 deprecated in favor of new "font/*" mime types. Some new encoders are already using the updated mime types. We need to also add them to the support list in order for assrender to correctly identify them as fonts. Part-of: 2021-12-29 21:28:56 +0100 Rafał Dzięgiel * ext/assrender/gstassrender.c: assrender: Handle ".ttc" attachment extension TTC stands for "TrueType Collection" file. We can pass it into libass as any other attachment. Add it to the supported extensions list, so the fonts it contains will be used. Part-of: 2022-01-02 09:38:43 +0000 Philippe Normand * ext/webrtc/webrtcdatachannel.c: webrtcdatachannel: Notify buffered-amount property updates Part-of: 2021-12-27 03:15:10 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Negotiate again on the first output buffer ... unconditionally. There may be updated field in sinkpad caps after the new_sequence() call (HDR related ones for example), then we should signal the information to downstream. Part-of: 2021-12-29 15:02:03 +0000 Philippe Normand * ext/webrtc/gstwebrtcstats.c: webrtcstats: Fix null pointer dereference If there is no jitterbuffer stats we should not attempt to store them in the global stats structure. Also add a g_return_if_fail in _gst_structure_take_structure() about this because it is a programmer error to pass an invalid pointer address there. Part-of: 2021-08-12 19:14:16 +0800 He Junyan * gst/videoparsers/gstav1parse.c: codecparsers: av1parse: Add the DECODE_ONLY flag to output buffer. When the alignment is ALIGN_FRAME and the output buf contains a frame which is not to be shown, the GST_BUFFER_FLAG_DECODE_ONLY flag should be set. Part-of: 2021-12-14 12:38:25 -0500 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Fall back to last packet ssrc if caps dont provide it Part-of: 2021-12-14 11:28:42 -0500 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Use our own caps instead of the sticky event The sticky event seems to get cleared sometimes. Part-of: 2021-12-14 11:28:13 -0500 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: Store the ssrc of the last received packet Part-of: 2021-12-13 16:57:06 -0500 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtc stats: Remove duplicate structure get Part-of: 2021-12-13 16:56:37 -0500 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtc stats: Add more details about codecs into the stats This makes the output a little closer to what the upstream stats are. Part-of: 2021-12-23 10:06:58 +1100 Brad Hards * ChangeLog: * data/targets/file-extension/ts.gep: doc: typo fix for streaming Part-of: 2021-12-21 12:55:59 +0800 He Junyan * sys/va/gstvaprofile.c: va: av1dec: Use named profiles to replace the numeric ones. Use named AV1 profiles (i.e., main, high, and professional) to replace the old 0, 1, 2 profiles. Part-of: 2021-12-21 01:08:40 +0900 Seungha Yang * ext/aom/gstav1enc.c: av1enc: Update for newly designed AV1 profile signalling Accept named AV1 profiles (i.e., main, high, and professional) as well Part-of: 2021-12-19 21:48:51 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: d3d11av1dec: Update sinkpad template for profile Part-of: 2021-12-19 21:44:19 +0900 Seungha Yang * gst/videoparsers/gstav1parse.c: * tests/check/elements/av1parse.c: av1parse: Use descriptive profile name instead of numeric As per AV1 specification Annex A, AV1 profiles have explicit and descriptive names for each seq_profile. Part-of: 2021-12-19 21:47:18 +0900 Seungha Yang * gst/videoparsers/gstav1parse.c: av1parse: Remove trailing white space Part-of: 2021-12-17 22:24:57 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: d3d11av1dec: Fix for Cdef param av1parser will increase the sec_strength values by 1 if parsed values were equal to 3 as defined in spec. But DXVA wants unmodified ones. Part-of: 2021-12-17 19:49:42 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: d3d11av1dec: Sync DXVA AV1 data structure with released header Update AV1 data structure based on Windows 11 SDK header Part-of: 2021-12-15 12:27:24 +0100 Víctor Manuel Jáquez Leal * tests/check/libs/h265parser.c: tests: h265parser: Add test for multiple compatibility profiles. Part-of: 2021-12-14 19:56:48 +0100 Víctor Manuel Jáquez Leal * gst/videoparsers/gsth265parse.c: h265parser: Compare upstream profile with in SPS. Compare if upstream profile in caps is the same as the one parsed in the SPS. If they are different use the bigger for simplicity and more chances to decode it. Part-of: 2021-12-15 11:58:07 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265parser: Use a table map to get profile. Instead of a sequence of if statements, declare a table to map profile idc with profiles and traverse it. Also, first add the profile from the parsed profile idc and later add, into the profile array, the profile from the compatibility flags. Part-of: 2021-12-14 19:36:56 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265parser: Verify all possible profiles. It's possible a HEVC stream to have multiple profiles given the compatibility bits. Instead of returning a single profile, internal gst_h265_profile_tier_level_get_profiles() returns an array with all it possible profiles. Profiles are appended into the array only if the generated profile is not invalid. gst_h265_profile_tier_level_get_profile() is rewritten in terms of gst_h265_profile_tier_level_get_profiles(), returning the first profile found the array. And gst_h265_get_profile_from_sps() is also rewritten in terms of gst_h265_profile_tier_level_get_profiles(), but traversing the array verifying if the proposed profile is actually valid by Annex A.3.x of the specification. Part-of: 2021-12-09 03:00:56 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: bind transceiver's fec-percentage to encoder percentage Allows for dynamic control of the applied FEC overhead Part-of: 2021-12-07 23:55:22 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: webrtcbin: fix ulpfec / red for the BUNDLE case * Add fec / red encoders as direct children of webrtcbin, instead of providing them to rtpbin through the request-fec-encoder signal. That is because they need to be placed before the rtpfunnel, which is placed upstream of rtpbin. * Update configuration of red decoders to set a list of RED payloads on them, instead of setting the pt property. That is because there may be one RED pt per media in the same session. * Connect to request-fec-decoder-full instead of request-fec-decoder, in order to instantiate FEC decoders according to the payload type of the stream. Part-of: 2021-12-10 21:58:33 +0900 Seungha Yang * sys/d3d11/gstd3d11pluginutils.cpp: d3d11videosink: Use only tested color space for swapchain We are querying supported swapchain colorspace via CheckColorSpaceSupport() but it doesn't seem to be reliable. Use only tested full-range RGB formats which are: - sRGB - BT709 primaries with linear RGB - BT2020 primaries with PQ gamma Part-of: 2021-12-11 11:33:39 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/soundtouch/gstpitch.cc: pitch: Specify layout as required for negotiation There are cases where it might negotiate 'non-interleaved' while it is wrong. ``` gst-launch-1.0 audiotestsrc ! "audio/x-raw, format=(string)F32LE, layout=(string)non-interleaved" ! audioconvert ! audioresample ! pitch tempo=1.2 ! audioconvert ! "audio/x-raw,format=S16LE" ! fakesink Setting pipeline to PAUSED ... Pipeline is PREROLLING ... (gst-launch-1.0:3029628): GStreamer-Audio-CRITICAL **: 11:42:22.477: gst_audio_buffer_map: assertion '(!meta && info->layout == GST_AUDIO_LAYOUT_INTERLEAVED) || (meta && info->layout == meta->info.layout)' failed ERROR: from element /GstPipeline:pipeline0/GstAudioConvert:audioconvert1: The stream is in the wrong format. Additional debug info: ../subprojects/gst-plugins-base/gst/audioconvert/gstaudioconvert.c(876): gst_audio_convert_transform (): /GstPipeline:pipeline0/GstAudioConvert:audioconvert1: failed to map input buffer ERROR: pipeline doesn't want to preroll. ERROR: from element /GstPipeline:pipeline0/GstAudioTestSrc:audiotestsrc0: Internal data stream error. Setting pipeline to NULL ... Additional debug info: ../subprojects/gstreamer/libs/gst/base/gstbasesrc.c(3127): gst_base_src_loop (): /GstPipeline:pipeline0/GstAudioTestSrc:audiotestsrc0: streaming stopped, reason error (-5) ERROR: pipeline doesn't want to preroll. Freeing pipeline ... ``` Part-of: 2021-12-10 15:46:41 -0500 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update vp9alphadecodebin doc cache A new field was added to the template cpas. Part-of: 2021-12-10 15:18:56 -0500 Nicolas Dufresne * gst/codecalpha/gstalphacombine.c: alphacombine: Fix for early allocation queries When using playbin3, it seems that the alpha decode is always first to push caps and run an allocation query. As the format change from sink and alpha were not synchronized, the allocation query could endup being run before the caps are pushed. That may lead to failing query, which makes the decoder thinks there is no GstVideoMeta downstream and most likely CPU copy the frame. This patch implements a format cookie to track and synchronize the format changes on both pads fixing the racy performance issue. Part-of: 2021-12-10 14:09:44 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: * sys/v4l2codecs/gstv4l2codecvp9dec.h: * sys/v4l2codecs/plugin.c: v4l2codecs: vp9: Add alpha decodebin wrapper This will allow HW accelerated decoding of WebM alpha videos. Part-of: 2021-12-10 14:09:06 -0500 Nicolas Dufresne * sys/v4l2codecs/plugin.c: v4l2codecs: plugin: Minor style fix Part-of: 2021-12-10 14:08:32 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: decoder: Improve logging of timed out request Part-of: 2021-12-10 14:07:18 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: * sys/v4l2codecs/gstv4l2codecmpeg2dec.h: * sys/v4l2codecs/plugin.c: v4l2codecs: mpeg2: Check that the decoder output formats This is to avoid exposing a decoder for which we don't support any output format. This happens on platform using vendor formats or not yet supported tiles formats. Part-of: 2021-12-10 14:04:40 -0500 Nicolas Dufresne * gst/codecalpha/gstvp9alphadecodebin.c: vp9alphadecodebin: Fix auto-pluging v4l2slvp9dec This adds the alignment field to the template caps. Without this field set, the auto-plugger will see fixed caps and will use gst_caps_is_subset() against the caps produced by the parser. This is a challenge for all cases where a parser can do conversion. This is fixed by adding alignment field, which makes the auto-pluggers do an intersection of the caps as it gets unfixed caps after intersection now. Part-of: 2021-12-09 19:55:04 +0900 Seungha Yang * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11window.cpp: d3d11window: Remove hack related to color space selection Use input GstVideoColorPrimaries without any special case handling otherwise rendered image color would be very wrong. The hack was added to work around an issue that some Intel driver couldn't handle wide color gamut image without HDR10 metadata, specifically PQ image. But device capability can be checked via a method added in https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1723 so there's no issue now. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1175 Part-of: 2021-12-09 19:51:04 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Fix typo in debug message Part-of: 2021-12-08 11:08:30 +0100 Benjamin Gaignard * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Fix return value type Return value should be GstFlowReturn not gboolean Part-of: 2021-12-07 17:09:11 +0100 Benjamin Gaignard * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Fix return value if klass->new_picture isn't set If klass->new_picture isn't set we need to initialize ret with GST_FLOW_OK to avoid unwanted error case Fixes: 5b405d15858b ("codecs: h265decoder: Use GstFlowReturn everywhere") Part-of: 2021-12-06 16:47:14 +0000 Philippe Normand * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Use basesrc event vfunc Allows for basic default handling from the base class. Part-of: 2021-12-03 13:24:25 +0000 Tim-Philipp Müller * ext/teletextdec/gstteletextdec.c: teletextdec: fix minor string leak Part-of: 2021-12-02 15:52:06 +0100 Marc Leeman * gst/rist/gstristsink.c: ristsink: set properties on children early The properties on the udpsink/udpsrc elements need to be set before there is any state change. If not, in a network without default gateway, udpsink tries to bind an a NULL interface and fails. Part-of: 2021-12-03 07:53:54 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: v4l2codecs: mpeg2: Fix selected sizeimage Due to a copy paste bug, the bitdepth was never set and that was leading to requesting sizeimage of 0. Previously that worked since the driver would in that case pick a size for us. But now the we bumped the minimum to 4KB, the driver happily allocate 4KB of bitstream which lead to decoding error. As MPEG2 have a fixed bitdeph of 8, use a define instead of the run-time variable. Part-of: 2021-12-01 12:16:40 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: vp9: Drop frames on non-keyframe format change V4L2 does not yet support this feature, this will skip over the transition portion up to the next keyframe. Part-of: 2021-12-01 09:51:57 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: Fix renegotiation If we hold the last reference to the allocator, leaving the device streaming will cause an EBUSY error when trying to free the allocate buffers. Part-of: 2021-12-02 16:26:08 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.cpp: d3d11vp9dec: Drop frames on non-keyframe format change ... in case of NVIDIA GPU Part-of: 2021-12-02 16:04:21 +0900 Seungha Yang * sys/nvcodec/gstnvvp9dec.c: nvvp9sldec: Drop frames on non-keyframe format change NVDEC doesn't seem to be able to handle the case Part-of: 2021-12-02 16:03:14 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: codecs: vp9: Drop frames on non-keyframe format change ... if subclass does not support the case Part-of: 2021-12-01 12:10:42 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gstvp9decoder.c: codecs: vp9: Also consider render_width/height Also emits new_sequence if on keyframe and the render_width/height have change. The subclass can always optimize this if the frame resolution didn't change, the output caps needs to reflect this though. Part-of: 2021-11-30 10:24:37 +0100 Marc Leeman * gst/rtp/gstrtpsink.c: rtpsink: set properties on children early The properties on the udpsink/udpsrc elements need to be set before there is any state change. If not, in a network without default gateway, udpsink tries to bind an a NULL interface and fails. Part-of: 2021-11-30 14:48:03 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: vp9: Remove uneeded picture data The GstV4l2Request now holds a reference on the picture buffer and is recounted already. This effectively removes usage of GRefCount which is only available in GLib 2.58, while we support 2.56. Fixes #910 Part-of: 2021-11-30 17:05:22 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: decoder: Add method to get the pic_buf This helper will be needed for VP9 frame duplication. Part-of: 2021-11-30 16:08:18 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: vp9: Add missing error checks in decide_allocation This could otherwise lead to crash. Part-of: 2021-11-24 11:17:22 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Fix typo in comment Part-of: 2021-11-24 11:17:40 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Properly set pic_num/frame_num The V4L2 uAPI uses pic_num for both PicNum and ShortTermPicNum. It also doe the same for both FrameNum and LongTermFrameIdx. This change does not change the fluster score, but fixed a visual corruption noticed with some third party streams. Part-of: 2021-11-23 16:35:16 +0800 He Junyan * sys/va/gstvasurfacecopy.c: va: Use a lock to protect the surface copy by using vpp. If we use vpp to do the surface copy, its operation is not atomic. We need to maintain the filter's context unchanged during the whole copy progress. Part-of: 2021-11-23 21:10:55 +0800 He Junyan * sys/va/gstvaallocator.c: va: Use the GstVaSurfaceCopy of the allocator atomically. The mem_copy() of the allocator can be called simultaneously from different threads. We should use atomic pointer operations to create and use the GstVaSurfaceCopy of the allocator. Part-of: 2021-11-22 16:07:27 +0800 He Junyan * sys/va/gstvaallocator.c: va: DMA allocator: Set the copied memory properly when popped from pool. The current code does not set the copied memory correctly when it is popped from the surface cache pool. 1. We forget to ref the allocator, which causes the allocator to be freed unexpected, and we get a crash later because of the memory violation. 2. We forget to add ref_mems_count, which causes the surface leak because the surface can not be pushed back to the cache pool again. Part-of: 2021-04-22 16:29:20 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: gstv4l2decoder: set minimum sizeimage Set minimum sizeimage such that there is enough space for any overhead introduced by the codec. Notably fix a vp9 issue in which a small image would not have a bitstream buffer large enough to accomodate it. Part-of: 2021-04-07 16:15:32 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2codecvp9dec.c: v4l2codecs: gstv4l2codecsvp9dec: implement a render delay The v4l2 backend support delayed output for performance reasons. It is then possible to use render delays to queue multiple requests simultaneously, thus increasing performance. Part-of: 2021-03-30 13:30:46 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2codecvp9dec.c: * sys/v4l2codecs/gstv4l2codecvp9dec.h: * sys/v4l2codecs/gstv4l2format.c: * sys/v4l2codecs/linux/videodev2.h: * sys/v4l2codecs/meson.build: * sys/v4l2codecs/plugin.c: v4l2codecs: vp9dec: Implement VP9 v4l2 decoder Implement a v4l2 based vp9 decoder element based on the preexisting vp8 v4l2 decoder. Part-of: 2021-07-14 16:21:59 -0300 Daniel Almeida * sys/v4l2codecs/linux/v4l2-controls.h: * sys/v4l2codecs/linux/videodev2.h: v4l2codecs: update to the new uAPI The new VP9 stateless API is in its way to be destaged. Update our headers to match. Part-of: 2021-04-08 10:40:03 -0300 Daniel Almeida * gst-libs/gst/codecs/gstvp9decoder.c: codecs: gstvp9decoder: copy frame->system_frame_number into picture A comment in gstvp9picture.h states that picture->system_frame_number should get its value from frame->system_frame_number, but in fact it was never copied at all. Fix it. Part-of: 2021-04-08 10:38:55 -0300 Daniel Almeida * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * gst-libs/gst/codecs/gstvp9statefulparser.c: * gst-libs/gst/codecs/gstvp9statefulparser.h: codecs: gstvp9{decoder|statefulparser}: optionally parse compressed headers Rework gstvp9{decoder|statefulparser} to optionally parse compressed headers. The information in these headers might be needed for accelerators downstream, so optionally parse them if downstream requests it. Part-of: 2021-11-23 20:12:06 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: deduplicate extmaps When an extmap is defined twice for the same ID, firefox complains and errors out (chrome is smart enough to accept strict duplicates). To work around this, we deduplicate extmap attributes, and also error out when a different extmap is defined for the same ID. Part-of: 2021-11-23 13:30:17 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2decoder: drain() only when significant sequence changes. There are a lot of info in the mpeg2's sequence(also including ext display_ext and scalable_ext). We need to notify the subclass about its change, but not all the changes should trigger a drain(), which may change the output picture order. For example, the matrix changes in sequence header does not change the decoder context and so no need to trigger a drain(). Fixes: #899 Part-of: 2021-11-23 23:52:18 +0900 Seungha Yang * ext/openjpeg/gstopenjpegenc.h: openjpegenc: Fix build warning Compiling C object subprojects/gst-plugins-bad/ext/openjpeg/gstopenjpeg.dll.p/gstopenjpegenc.c.obj ../subprojects/gst-plugins-bad/ext/openjpeg/gstopenjpegenc.c(416): warning C4133: '=': incompatible types - from 'GstFlowReturn (__cdecl *)(GstVideoEncoder *,GstVideoCodecFrame *)' to 'gboolean (__cdecl *)(GstVideoEncoder *,GstVideoCodecFrame *)' ../subprojects/gst-plugins-bad/ext/openjpeg/gstopenjpegenc.c(418): warning C4133: '=': incompatible types - from 'GstFlowReturn (__cdecl *)(GstVideoEncoder *,GstVideoCodecFrame *)' to 'gboolean (__cdecl *)(GstVideoEncoder *,GstVideoCodecFrame *)' Part-of: 2021-11-23 09:28:57 +0100 Guillaume Desmottes * ext/gs/gstgssink.cpp: gssink: add metadata property This property can be used to set metadata on the storage object. Similar API has been added to the S3 sink already, see https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/613 Part-of: 2021-11-23 00:25:07 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11utils.cpp: d3d11: Update comments Remove copy & paste mistake (this is not GstGL) and add more description. Part-of: 2021-11-19 15:13:28 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasetransform.c: * sys/va/gstvabasetransform.h: * sys/va/gstvadeinterlace.c: * sys/va/gstvavpp.c: vapostproc, vadeinterlace: don't transform caps if no intersection. If caps to transform don't intersect with those supported by the VA filter (VAEntrypointVideoProc) then return them as is, because only pass-through mode is the only possibility. Part-of: 2021-11-16 10:40:03 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Append featured caps rather than merge. So it would be possible to honor upstream preference. Part-of: 2021-10-25 19:22:05 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Remove dead code. Part-of: 2021-10-25 19:22:19 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: Validate input parameter in internal function. Part-of: 2021-11-15 10:15:38 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: log drm modifier Part-of: 2021-11-22 17:34:22 +0800 He Junyan * sys/va/gstvavpp.c: va: vpp: Fix the memory leak in fixate_caps(). For the BaseTransform class, the function of fixate_caps(), takes the ownership of "othercaps". So we should clear it in our subclass. Part-of: 2021-11-13 12:22:36 +0000 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: Ensure the GstPlay is created before the wrapped renderer The GstPlayerWrappedVideoRenderer implicitely depends on GstPlay. Fixes #878 Part-of: 2021-11-13 12:17:23 +0000 Philippe Normand * gst-libs/gst/play/gstplay.c: play: Allow runtime configuration of video-renderer This is a requirement for GstPlayer when using the default overlay interface provided by the pipeline. The GstPlayerWrappedVideoRenderer requires a valid pipeline, but that's available only after the GstPlay thread has successfully started. Part-of: 2021-11-19 19:02:20 +0800 He Junyan * sys/va/gstvadecoder.c: va: decoder: Also ref the display when duplicating pictures. The _destroy_buffers() will check the display handle using the g_return_val_if_fail. we should not generate the invalid pointer warning. Part-of: 2021-11-17 22:51:00 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: docs: Update doc cache for Windows specific plugins Updating doc cache for d3d11, mediafoundation and wasapi2 plugins Part-of: 2021-11-18 00:16:41 +0900 Seungha Yang * sys/wasapi2/gstwasapi2sink.c: wasapi2: Fix typo in doc Part-of: 2021-11-17 22:46:17 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/plugin.c: mediafoundation: Skip doc for non-default encoder elements Part-of: 2021-10-21 19:41:15 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/d3d11/plugin.cpp: d3d11: Stop doc for non-default decoder and deinterlacer elements Just skip doc for non-default decoder/deinterlacer elements since there are multiple element in case that system has multiple GPUs. Part-of: 2021-11-19 13:27:54 +0900 Wonchul Lee * sys/d3d11/gstd3d11window_win32.cpp: d3d11: Fix deadlock while doing unprepare ShowWindow() could be blocked while doing gst_d3d11_window_win32_unprepare when external window handle provided to d3d11videosink in multi-threaded environment. The condition that issue happened is, UI thread is waiting for a background thread that changes d3d11videosink state to NULL, and the background thread would try to send a window message to the queue. The queue is already occupied by the UI thread, so the background thread will be blocked. Part-of: 2021-11-16 12:56:38 +0000 Philippe Normand * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Fix frame stuttering in GL rendering path Make sure the EGLImage we're rendering to the GL memory stays alive long enough, until the the GL memory has been destroyed. This change fixes tearing and black flashes artefacts that were happening because the EGLImage was sometimes destroyed before the sink actually rendered the associated texture. Fixes #889 Part-of: 2021-11-16 12:53:35 +0000 Philippe Normand * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Run through gst-indent Part-of: 2021-11-11 19:11:25 +0000 Tim-Philipp Müller * ext/rsvg/gstrsvgoverlay.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: docs: fix unnecessary ampersand, < and > escaping in code blocks Part-of: 2020-11-05 10:23:13 +0100 Timo Wischer * ext/avtp/gstavtpcrfbase.c: avtp: crf: Process also local CRF streams Without this patch locally generated CRF streams will be ignored. Therefore the same network interface could not be CRF talker and CRF listener. Part-of: 2021-11-09 15:10:21 +0100 Jean Felder * gst/id3tag/id3tag.c: id3tag: Map GST_TAG_MUSICBRAINZ_RELEASETRACKID Part-of: 2021-11-09 15:04:59 +0100 Jean Felder * gst/id3tag/id3tag.c: id3tag: Map GST_TAG_MUSICBRAINZ_RELEASEGROUPID Part-of: 2021-11-09 15:04:00 +0100 Jean Felder * gst/id3tag/id3tag.c: id3tag: Remove trailing whitespace Part-of: 2021-10-06 15:54:09 +0200 Timo Wischer * ext/avtp/gstavtpsrc.c: avtpsrc: Use correct size for provided buffers Without this patch the following pipeline would send packets containing garbage in the data section. $ gst-launch-1.0 avtpsrc ! avtpsink Part-of: 2020-10-15 14:49:58 +0200 Timo Wischer * ext/avtp/gstavtpcrfsync.c: avtp: crfsync: Warn when CRF package not yet received Part-of: 2021-03-03 10:08:57 +0100 Timo Wischer * tests/check/elements/avtpcrfbase.c: test: avtp: crf: Check for rounding errors on average period calculation. Part-of: 2020-11-11 16:50:28 +0100 Timo Wischer * ext/avtp/gstavtpcrfbase.c: * ext/avtp/gstavtpcrfbase.h: * tests/check/elements/avtpcrfbase.c: avtp: crf: Use double for average period calculation to also support CRF intervals like every 1,333,333ns 64 events Part-of: 2021-01-12 10:03:32 +0100 Timo Wischer * tests/check/elements/avtpcrfbase.c: tests: avtp: crf: Test for timestamp_interval > 1 in case of CRF AVTPDUs with single CRF timestamp. Part-of: 2020-09-16 17:12:32 +0200 Timo Wischer * ext/avtp/gstavtpcrfbase.c: * ext/avtp/gstavtpcrfbase.h: avtp: crf: Properly handling one timestamp per PDU The average_period should always represent the time between two events. The specification defines the event time as the time between audio samples, video frame sync, video line sync, etc. In case of one timestamp per PDU the timestamp_interval identifies the amount of events between the timestamp of one PDU and the timestamp of the next PDU. As described in IEEE 1722-2016 chapter "10.4.12 timestamp_interval field" timestamp_interval shall be nonzero. Part-of: 2021-11-08 20:18:51 +0100 Thomas Klausner * sys/shm/meson.build: shm: NetBSD build fix shm_unlink() and friends live in librt on NetBSD. Adapt build system. Part-of: 2021-05-21 16:56:33 -0300 Martin Reboredo * ext/aom/gstav1enc.c: aom: Set fixed_qp_offsets to a deactivated value aom only uses fixed_qp_offsets with the Constant Quality (Q) Rate Control mode, previously this was locking any usage with another Rate Control mode. Part-of: 2021-11-05 13:12:14 +0100 Antonio Ospite * sys/magicleap/meson.build: magicleap: update lumin_rt libraries names to the latest official version Part-of: 2021-10-05 01:07:57 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Calculate the latency by its bump mode. The current latency calculation just uses the num_reorder_frames, which is not very precise. We should consider the bump mode of the DPB, the faster it bumps, the lower latency we will have. Part-of: 2021-11-04 19:06:22 +0000 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * sys/nvcodec/gstcudabasefilter.c: * sys/nvcodec/gstcudabasetransform.c: * sys/nvcodec/gstcudaconvert.c: * sys/nvcodec/gstcudadownload.c: * sys/nvcodec/gstcudascale.c: * sys/nvcodec/gstcudaupload.c: * sys/nvcodec/gstnvdec.c: doc: Update nvdec documentation Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/870 Part-of: 2021-11-03 17:09:52 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Don't insert extra AUD if exists in bitstream already AUD nalu in packetized format is completely valid and therefore we should not assume that we should insert AUD for packetized -> bytestream conversion. Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/862 Part-of: 2021-11-03 20:36:09 +0900 Seungha Yang * tests/check/elements/h264parse.c: tests: h264parse: Add test for AUD insertion Part-of: 2021-11-04 16:36:05 +0900 Seungha Yang * sys/wasapi2/gstwasapi2ringbuffer.cpp: wasapi2ringbuffer: Fix client object leak Check whether ringbuffer is holding client object already since open_device() may be called multiple times Part-of: 2021-11-04 12:48:28 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Clear errors from finding codec preferences before the next iteration The media is just skipped and the error is not propagated to the caller, so keeping it around here would cause assertions a bit later when trying to set a new error over the old one. Part-of: 2021-11-04 12:45:34 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Move addition of attributes to the caps after making sure they're not empty or any Part-of: 2021-11-02 11:21:34 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Don't require fixed caps when querying caps for a transceiver pad to match it with a media Upstream caps might for example be application/x-rtp,media=audio,encoding-name={OPUS, X-GST-OPUS-DRAFT-SPITTKA-00, multiopus} and while that is not fixed caps it is enough to match it with a media. Only caps structures that have the correct structure name and that have the media and encoding-name field are preserved, but if both are present then these caps are used as "codec preferences". Part-of: 2021-11-03 18:44:03 +0000 Tim-Philipp Müller * meson.build: Back to development === release 1.19.3 === 2021-11-03 15:43:36 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.19.3 2021-11-03 15:43:32 +0000 Tim-Philipp Müller * ChangeLog: Update ChangeLogs for 1.19.3 2021-11-02 09:40:43 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2: Drain before a new_sequence get signalled The decoder may need to re-allocate the output buffer, it is easier if all pictured have been outputed. Part-of: 2021-04-08 16:24:49 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: v4l2codecs: gstv4l2codecsmpeg2dec: implement a render delay The v4l2 backend support delayed output for performance reasons. It is then possible to use render delays to queue multiple requests simultaneously, thus increasing performance. Part-of: 2021-04-08 16:07:23 -0300 Daniel Almeida * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2decoder.h: codecs: gstmpeg2decoder: add support for render delay Some decoding APIs support delayed output for performance reasons. One example would be to request decoding for multiple frames and then query for the oldest frame in the output queue. This also increases throughput for transcoding and improves seek performance when supported by the underlying backend. Introduce support in the mpeg2 base class, so that backends that support render delays can actually implement it. Part-of: 2021-04-06 16:40:28 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2codecmpeg2dec.c: * sys/v4l2codecs/gstv4l2codecmpeg2dec.h: * sys/v4l2codecs/meson.build: * sys/v4l2codecs/plugin.c: v4l2codecs: Implement a MPEG2 V4L2 decoder element Implement a MPEG2 V4L2 decoder element based on the previous h264 implementation. Part-of: 2021-04-06 16:42:54 -0300 Daniel Almeida * sys/v4l2codecs/linux/videodev2.h: v4l2codecs: mpeg2: update to the new uAPI The mpeg2 stateless api has undergone changes as it is being destage. Update the v4l2-controls header to match. Part-of: 2021-03-26 15:52:21 -0300 Daniel Almeida * sys/va/gstvampeg2dec.c: sys: va: GstVaMpeg2Dec: use slice sc_offset and size Seeing as how GstMpeg2Slice will now record the start code offset as well as its size with the above field taken into account, the manual computation in this class is not needed. Remove it. Part-of: 2021-03-26 15:31:51 -0300 Daniel Almeida * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2picture.h: codecs: GstMpeg2Slice: add field for sc_offset and size Downstream might need the start code offset when decoding. Previously this computation would be scattered in multiple sites. This is error prone, so move it to the base class. Subclasses can access slice->sc_offset directly without computing the address themselves knowing that the size will also take the start code into account. Part-of: 2021-10-20 12:11:49 +0100 James Cowgill * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2codecs: Handle allocator creation failure If `VIDIOC_REQBUFS` doesn't return enough buffers the allocator creation function can fail and return `NULL`. Handle this by generating an error and returning instead of segfaulting. Part-of: 2021-10-20 12:08:49 +0100 James Cowgill * sys/v4l2codecs/gstv4l2codecallocator.c: v4l2codecs: Fix segfault when destroying non-detached allocator The GstV4l2CodecAllocator dispose function clears `self->decoder` but the finalize function then tries to use it if the allocator has no been detached yet. Fix by detaching in the dispose function before we clear `self->decoder`. Part-of: 2021-10-29 16:08:20 -0400 Julian Bouzas * gst/codecalpha/gstalphacombine.c: alphacombine: use the same allocation query data for both decoders This allows downstream elements to set allocation query parameters for both decoders, which should be always the same. Part-of: 2021-10-31 13:43:40 +0530 Nirbheek Chauhan * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: Add ARGB64_BE, RGBA64_LE support to vtenc/vtdec We can add this now that ARGB64_BE videoconvert support was added in: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1247 Part-of: 2021-10-20 02:19:33 +0530 Nirbheek Chauhan * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Add FieldDetail properties for interlaced input Standard interlace handling: * If we have interlace-mode=interleaved and the field order, we just set it when creating the session * If we have interlace-mode=(interleaved|mixed) and no field order, we set the field order on the first buffer The encoder session does not support changing the FieldDetail after it has started encoding frames, so we cannot support mixed streams correctly. Part-of: 2021-10-20 01:49:29 +0530 Nirbheek Chauhan * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Add a property to forcibly ignore alpha values This PropertyKey is not documented in any headers anywhere, so we need to define it ourselves. Part-of: 2021-10-19 23:53:39 +0530 Nirbheek Chauhan * sys/applemedia/vtenc.c: vtenc: Set colorimetry information It looks like VideoToolbox doesn't support all our colorimetries. Part-of: 2021-10-17 18:54:10 +0530 Nirbheek Chauhan * sys/applemedia/coremediabuffer.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: * sys/applemedia/vtutil.c: * sys/applemedia/vtutil.h: applemedia: Add ProRes support to vtenc and vtdec For vtdec, we continue to prefer NV12; else we pick whatever downstream wants. In the special case where we're decoding 10-bit or 12-bit ProRes formats, we will prefer AYUV64. Part-of: 2021-10-17 19:19:15 +0530 Nirbheek Chauhan * sys/applemedia/vtenc.c: vtenc: Improve error reporting in chain function Otherwise it is quite difficult to figure out why the chain function failed. Also assert not reached for case statements that should not be hit. Part-of: 2021-10-14 12:14:49 +0530 Nirbheek Chauhan * sys/applemedia/vtdec.c: vtdec: Remove dead code in switch statement We never advertise these formats, so these cases will never be hit. Part-of: 2021-10-30 16:22:39 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: video: Fix order of new video formats Part-of: 2021-10-30 00:58:55 +0100 Tim-Philipp Müller * gst/mpegtsmux/gstatscmux.c: * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstmpegtsmux.c: Couple more g_memdup() -> g_memdup2() fixes Fixes deprecation warnings with newer GLib versions. Part-of: 2021-10-30 00:52:42 +0100 Tim-Philipp Müller * ext/dtls/gstdtlssrtpenc.c: dtls: don't use deprecated g_binding_get_source() with newer GLib versions Part-of: 2021-10-30 01:41:51 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Fix per-slice leak As documented, slice header parsed via gst_h265_parser_parse_slice_hdr() should be cleared, otherwise it would result in memory leak. Part-of: 2021-10-26 16:05:24 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Delay decoders downstream negotiation. Delay decoders downstream negotiation just before an output frame needs to be allocated. This is required, are least for H.264 and H.265 decoders, since codec_data might trigger a new sequence before finishing upstream negotiation, and sink pad caps need to set before setting source pad caps, particularly to forward HDR fields. The other decoders are changed too in order to keep the same structure among them. Part-of: 2021-10-26 09:41:53 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: vabasedec: Move warning message to decoder's category. Part-of: 2021-10-26 09:28:10 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaav1dec.c: * sys/va/gstvabasedec.h: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Move common variable need_negotiation to GstBaseDec. This is a common variable to all decoders, so it's sound to move it to the base helper. Part-of: 2021-10-26 09:23:42 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaav1dec.c: * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Move back parent_object to each element. Using GstBaseDec hack to access the parent_object of each element in the element itself is a bit fragile. It would be better to keep its own parent object as the usual global variable. It would make it resistant to code changes. The GstBaseDec macro to access the parent object now it's internal to base decoder. Part-of: 2021-10-23 00:44:57 +0200 Piotrek Brzeziński * docs/plugins/gst_plugins_cache.json: video-format: Add support for ARGB64 LE/BE and similar variants Co-authored-by: Sebastian Dröge Part-of: 2021-09-26 21:34:30 +0200 Heiko Becker * ext/neon/meson.build: neon: Allow building against neon 0.32.x No API/ABI changes: https://github.com/notroj/neon/blob/0.32.0/NEWS#L3 Part-of: 2021-10-25 11:37:45 +0100 Tim-Philipp Müller * meson.build: meson: require matching GStreamer dep versions for unstable development releases Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/929 Part-of: 2021-10-27 00:20:57 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.c: webrtcbin: fix check_negotiation computing on caps event It seems logical that check_negotiation be true if received_caps is *not* equal to the new caps. Also clean up handling of transceivers' ssrc events, as this patch triggered a leaky code path. Part-of: 2021-10-23 01:54:05 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: connect input stream when receiving caps .. if a current direction has already been set When `webrtcbin` has created an offer based on codec_preferences, it might not have received caps on its sinkpads by the time a remote description is set, in which case we want to connect the input stream upon actual reception of the caps instead. Part-of: 2021-10-18 15:23:48 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: consider pads with trans->codec_preferences ready .. when determining whether we can emit on-negotiation-needed Part-of: 2021-10-28 17:41:54 +0100 Tim-Philipp Müller * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: fix criticals trying to insert configs that don't exist yet With mpeg4videoparse drop=false config-interval=N|-1 we might be trying to insert a config before we have actually received one, in which case we'll try to map a NULL buffer which will generate lots of criticals. Fixes #855 Part-of: 2021-10-20 17:46:10 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkh265enc.c: msdk: Insert hdr sei at hevc encoder There are two HDR SEIs defined in spec: mastering display colour volume and content light level. Add insertion of HDR SEIs when they are available during encoding. Part-of: 2021-10-21 16:12:06 +0100 Rob Agar * ext/webrtc/gstwebrtcbin.c: webrtcbin: Also check data channel transport when collating connection state https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/838 Part-of: 2021-10-27 11:54:09 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Color fixation will choose othercaps' structure. gst_va_fixate_format() will iterate all othercaps' structures to find the one with less information lost at color conversion. If a structure with same color format is found, the iteration stops. It's like a smart truncation. Then, this function also will choose the caps feature. Later this structure is used fixate its size and no further truncation is needed. Don't intersect at fixate, since it kills possible resizing. Part-of: 2021-10-27 11:53:28 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Ignore direction at orientation swapping. It doesn't matter the direction of the negotiation. Part-of: 2021-10-27 10:31:04 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Consider video orientation for border calculation. Part-of: 2021-10-06 16:00:56 +0200 Timo Wischer * ext/avtp/gstavtpsrc.c: avtpsrc: Retry receive with same buffer size Without this patch in case of a retry recv() will be called with a negative size argument. Signed-off-by: Timo Wischer Part-of: 2021-10-26 16:00:36 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: fix default value when installing schedule property Part-of: 2021-10-26 15:58:26 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: fix emission of selected-samples in one case Detected while reading the code, cccombiner must set self->current_video_buffer to NULL *after* emitting selected-samples in order for the application to get a useful return when peeking the next video sample. Part-of: 2021-10-26 01:09:58 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: * tests/check/elements/cccombiner.c: cccombiner: stop attaching caption buffers when caption pad has gone EOS When schedule is true (as is the case by default), we insert padding when no caption data is present in the schedule queue, and previously weren't checking whether the caption pad had gone EOS, leading to infinite scheduling of padding after EOS on the caption pad. Rectify that by adding a "drain" parameter to dequeue_caption() In addition, update the captions_and_eos test to push valid cc_data in: without this cccombiner was attaching padding buffers it had generated itself, and with that patch would now stop attaching said padding to the second buffer. By pushing valid, non-padding cc_data we ensure a caption buffer is indeed attached to the first and second video buffers. Part-of: 2021-10-20 13:19:00 +0200 Mats Lindestam * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurlsshsink.h: * tests/check/elements/curlsftpsink.c: curlsftpsink: Add support for sha256 fingerprint Part-of: 2021-10-21 11:09:07 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkvpp.c: msdkvpp: Add 12bit formats Add 12bit formats for different chroma samplings at sink pad and src pad, including P012_LE, Y212_LE and Y412_LE. Part-of: 2021-10-25 18:52:24 +0200 Floris * ext/gs/README.md: gs: update README to use fixed versions Use specific versions, instead of relying on 'master'. Part-of: 2021-10-25 18:47:46 +0200 Floris * ext/gs/gstgssrc.cpp: gssrc: use default blocksize The blocksize is set to 3 * 1024 * 1024 / 2, which is the default download_size of Google-Cloud-CPP. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/846 Part-of: 2021-10-25 16:53:14 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah265dec.c: vah265dec: Fix end_picture() vmethod. Since commit 88437a9c the signature of h265decoder's end_picture() changed to return GstFlowReturn, but vah265dec was not updated. This commit fixes this regression. Part-of: 2021-10-12 17:32:30 +0800 Mengkejiergeli Ba * sys/va/gstvaallocator.c: va: allocator: Fix possible memory leaks At gst_va_dmabuf_allocator_setup_buffer_full, static code analysis tool does not know number of objects in descriptor is always larger than 0 if export_surface_to_dmabuf succeeds. Thus, the tool will assume buf is allocated with mem but not released when desc.num_objects equals to 0 and raise a mem leak issue. For gst_va_dambuf_memories_setup, we should also inform the tool that n_planes will be larger than 0 by checking the value at very beginning. Then, the defect similar to above will not be raised during static analysis. Part-of: 2021-10-25 01:02:28 +0100 Tim-Philipp Müller * po/af.po: * po/ast.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * po/zh_TW.po: gst-plugins-bad: update translations Fixes #656 Part-of: 2021-10-23 19:26:06 +0200 Andoni Morales Alastruey * gst-libs/gst/d3d11/gstd3d11device.cpp: d3d11: add support for new debug layer versions Part-of: 2021-01-20 12:04:48 +0100 Rafał Dzięgiel * ext/assrender/gstassrender.c: assrender: Add "application/vnd.ms-opentype" mimetype detection The "application/vnd.ms-opentype" mimetype is commonly used in many fonts attached in the matroska videos. Assrender should treat it as compatible without the need of parsing the file extension. Part-of: 2021-10-22 18:13:46 +0200 Stéphane Cerveau * ext/openjpeg/meson.build: wrap: libopenjp2: use patch version 7 Add support for win32 build Disable the binary to avoid the thirdparty dependency to be checked. Part-of: 2021-10-21 23:35:41 -0300 Martin Reboredo * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/gstvkutils.h: gstvulkan: Constify code in create_shader Part-of: 2021-10-21 00:33:06 +0100 Tim-Philipp Müller * meson_options.txt: meson: default to gpl=disabled for gst-plugins-bad and -ugly This will only affect individual/tarball module builds, as the options yield to the parent project which was set to gpl=disabled by default already. We kept it as auto in the original commit to accommodate the need to update cerbero as well, which had to be done separately after the initial commit. Part-of: 2021-01-20 13:38:03 +0100 Rafał Dzięgiel * ext/assrender/gstassrender.c: assrender: Do not iterate over mimetypes without filename No point spending time on iterating and comparing strings if we are going to reject the value due to missing filename anyway. Part-of: 2021-01-20 11:46:17 +0100 Rafał Dzięgiel * ext/assrender/gstassrender.c: assrender: Fix mimetype detection Previously gst_structure_has_name was used to get a string to compare with supported mimetypes. This is incorrect as above function returns a user defined structure name which is not the structure mimetype value. Part-of: 2021-10-21 19:17:18 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkdebug.c: * gst-libs/gst/vulkan/gstvkdebug.h: * gst-libs/gst/vulkan/gstvkswapper.c: vulkan/swapper: add some debug logging for surface size and present modes Part-of: 2021-10-21 00:28:25 +0200 Jan Alexander Steffens (heftig) * gst/interlace/gstinterlace.c: interlace: Replace custom lock with object lock The object lock is sufficient for the task of protecting against object property data races. Part-of: 2021-10-21 00:37:47 +0200 Jan Alexander Steffens (heftig) * gst/interlace/gstinterlace.c: interlace: Protect all properties with the lock Avoid blatant data races here. Part-of: 2021-10-21 00:36:47 +0200 Jan Alexander Steffens (heftig) * gst/interlace/gstinterlace.c: interlace: Reset src_fps_d together with src_fps_n These fields belong together. Part-of: 2021-10-21 00:35:00 +0200 Jan Alexander Steffens (heftig) * gst/interlace/gstinterlace.c: interlace: Clear stored_fields together with stored_frame These fields belong together. Part-of: 2021-10-21 00:31:24 +0200 Jan Alexander Steffens (heftig) * gst/interlace/gstinterlace.c: interlace: Reset after changing state to READY Trying to reset before the pads have been deactivated races with the streaming thread. There was also a buggy buffer clear leaving a dangling `stored_frame` pointer around. Use `gst_interlace_reset` so this happens properly. Part-of: 2021-10-20 14:34:42 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvh264enc.c: nvh264enc: add constrained-baseline to the caps profiles In practice, when baseline is requested from the encoder it produces constrained baseline, and it is already reflected in the profile-iop flags. Part-of: 2021-10-21 01:47:07 +0900 Seungha Yang * sys/mediafoundation/gstmfplatloader.c: * sys/mediafoundation/meson.build: mediafoundation: Fix for UWP build We don't support D3D11 interop for UWP because some APIs (specifically MFTEnum2) are desktop application only. However, the code for symbol loading is commonly used by both UWP and WIN32. Just link GModule unconditionally which is UWP compatible, and simply don't try to load any library/symbol dynamically when D3D11 interop is unavailable. Part-of: 2021-10-20 00:54:26 +0100 Tim-Philipp Müller * REQUIREMENTS: * docs/plugins/gst_plugins_cache.json: * ext/libmms/gstmms.c: * ext/libmms/gstmms.h: * ext/libmms/meson.build: * ext/meson.build: * meson_options.txt: mms: remove mmssrc plugin Doubtful that anyone still needs that or there are even any streams left out there. MMS was deprecated in 2003 (in favour of RTSP) and support for it was dropped with Microsoft Media Services 2008. https://en.wikipedia.org/wiki/Microsoft_Media_Server https://sdp.ppona.com/news2008.html Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/821 Part-of: 2021-10-19 18:18:25 +0100 Tim-Philipp Müller * sys/msdk/meson.build: * sys/va/meson.build: meson: va, msdk: simplify dep.get_variable() use With recent Meson versions we can just write dep.get_variable('foo') instead of dep.get_variable(pkgconfig: 'driverdir', internal: 'driverdir'). Part-of: 2021-10-18 15:47:00 +0100 Tim-Philipp Müller * tests/check/meson.build: * tests/validate/meson.build: meson: update for meson.build_root() and .build_source() deprecation -> use meson.project_build_root() or .global_build_root() instead. Part-of: 2021-10-18 00:40:14 +0100 Tim-Philipp Müller * docs/meson.build: * ext/onnx/meson.build: * ext/opencv/meson.build: * ext/wayland/meson.build: * meson.build: * sys/msdk/meson.build: * tests/check/meson.build: meson: update for dep.get_pkgconfig_variable() deprecation ... in favour of dep.get_variable('foo', ..) which in some cases allows for further cleanups in future since we can extract variables from pkg-config dependencies as well as internal dependencies using this mechanism. Part-of: 2021-10-18 00:03:47 +0100 Tim-Philipp Müller * meson.build: meson: clean up conditional paths after version bump Part-of: 2020-11-19 18:03:11 +0100 Rafał Dzięgiel * ext/assrender/gstassrender.c: assrender: fix smooth scaling by disabling hinting When ass hinting value is set to anything other than NONE, subtitles cannot use smooth scaling, thus all animations will jitter. The libass author warns about possibility of breaking some scripts when it is enabled, so lets do what is recommended and disable it to get the smooth scaling working. Part-of: 2021-05-07 11:11:31 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtsink.c: srt: Plug leak of headers Part-of: 2020-08-31 17:17:56 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Avoid crash when best pad gets flushed The 'best' pad might receive a flush event between us picking it and us popping the buffer. In this case, the buffer will be missing. Similar to https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/711 Part-of: 2021-10-17 11:39:57 +0100 Tim-Philipp Müller * tools/meson.build: tools: Define G_LOG_DOMAIN for various tools as well Part-of: 2021-10-01 15:31:18 +0100 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/codecs/meson.build: * gst-libs/gst/d3d11/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/isoff/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/play/meson.build: * gst-libs/gst/player/meson.build: * gst-libs/gst/sctp/meson.build: * gst-libs/gst/transcoder/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/va/meson.build: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/wayland/meson.build: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/winrt/meson.build: gst-plugins-bad: define G_LOG_DOMAIN for all libraries Fixes #634 Part-of: 2021-10-06 13:38:35 +0200 Antonio Ospite * ext/aes/meson.build: aes: specify the required OpenSSL version The code in the aes elements assumes OpenSSL >= 1.1.0: - implicit library initialization; - version retrieved with OpenSSL_version(OPENSSL_VERSION); and it fails to build with older versions. Specify the required OpenSSL version explicitly in meson.build so that the elements are excluded on older systems (e.g. Ubuntu 16.04) and the rest of GStreamer can still build. Part-of: 2021-10-11 13:05:24 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadeinterlace.c: vadeinterlace: Accept ANY feature. Part-of: 2021-10-11 13:04:19 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadeinterlace.c: vadeinterlace: Fixate interlace-mode and framerate accordingly. Part-of: 2021-10-14 07:03:26 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Accept ANY feature. Part-of: 2021-10-13 19:27:41 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Traverse caps features in gst_va_vpp_caps_remove_fields() The previous code had a potential failure for multiple caps features. Now each caps feature in each structure is reviewed, and if it has a supported feature, the structure is processed. Part-of: 2021-10-13 17:08:12 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Refactor gst_va_vpp_complete_caps_features() gst_va_vpp_complete_caps_features() now receives the @feature_name to add and return if @caps doesn't provide it. So, instead of two nested loops, now the function is a single loop, traversing @caps to find if each structure already contains the requested @features_name. It's important to add missing caps features with @caps, in order to not lost information. The function caller does the external loop by calling per each available caps feature. Part-of: 2021-10-11 18:57:48 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Split caps transform in two phases. In order to make more readable the caps transformation, the operation was split in two phases: 1. Rangify the supported caps structures. 2. Add the missing (and supported) caps features. Step 1 modified its logic, by copying any unrecognized structure. It's a previous step required for allowing ANY caps feature as passthrough. Part-of: 2021-10-08 12:38:04 +0300 Vivia Nikolaidou * gst/mpegtsdemux/tsdemux.c: tsdemux: Change many GST_{DEBUG, LOG, etc} into _OBJECT Log files with several demuxers running at once can otherwise get confusing Part-of: 2021-10-08 12:36:58 +0300 Vivia Nikolaidou * gst/mpegtsdemux/tsdemux.c: tsdemux: Issue GST_ELEMENT_WARNING for continuity errors The application might want to make use of these. Part-of: 2021-10-14 18:38:26 +0100 Tim-Philipp Müller * meson.build: meson: bump meson requirement to >= 0.59 For monorepo build and ugly/bad, for advanced feature option API like get_option('xyz').required(..) which we use in combination with the 'gpl' option. For rest of modules for consistency (people will likely use newer features based on the top-level requirement). Part-of: 2021-09-19 00:55:34 +0100 Tim-Philipp Müller * ext/dts/meson.build: * ext/faad/meson.build: * ext/iqa/iqa.c: * ext/iqa/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: * ext/resindvd/meson.build: * ext/x265/meson.build: * meson.build: * meson_options.txt: meson: add 'gpl' option and only build plugins with (A)GPL deps if explicitly enabled Require explicit opt-in to build plugins with (A)GPL dependencies. Keep ugly/bad options on 'auto' for now so cerbero doesn't fail. Part-of: 2020-10-30 16:02:22 +0200 Vivia Nikolaidou * gst/mpegtsmux/gstbasetsmux.c: basetsmux: Support for caps changes Part-of: 2020-11-12 12:17:14 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: basetsmux: Clean up gst_base_ts_mux_create_stream Part-of: 2021-08-31 16:35:06 +0300 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Search SCTE-35 DRF_ID_CUEI in multiple registration descriptors There are streams in the wild that have to add a SCTE-35 trigger in another e.g. GA94 stream. Most encoders would replace the GA94 descriptor ID with the CUEI one temporarily, but there are some that will add two registration ID descriptors, one with GA94 and one with CUEI. Failing to parse the CUEI registration ID in that case would return FALSE in _stream_is_private_section , therefore setting it as known PES and pushing packets downstream instead of calling handle_psi. Part-of: 2021-10-01 14:36:48 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Improve gap detection We should also take into account whether data is currently pending when checking for gap on streams. It could very well be that some streams have very low bitrate (and spread out) data. For those we don't want to push out a gap event. Part-of: 2021-09-05 11:57:18 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle "negative" timestamps This is only enabled in push time mode. Furthermore it's only enabled for now if PCR is to be ignored. The problem is dealing with streams where the initial PTS/DTS observation might be greater than following ones (from other PID for example). Before this patch, this would result in sending buffers without any timestamp which would cause a wide variety of issues. Instead, pad segment and buffer timestamps with an extra value (packetizer->extra_shift, default to 2s), to ensure that we can get valid timestamps on outgoing buffers (even if that means they are before the segment start). Part-of: 2021-09-05 11:55:55 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle streams with bogus PTS vs DTS PTS and DTS should be within a reasonable distance of each other. Part-of: 2021-09-05 11:53:05 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: Handle PTS->TS at wraparound This has been a FIXME for ages. Part-of: 2021-10-14 14:07:07 +0100 Rob Agar * ext/webrtc/gstwebrtcbin.c: webrtcbin: fix prevention of webrtcbin deletion due to ref held by probe callback https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/810 Part-of: 2021-10-16 19:01:27 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11: d3d11{convert,scale}: Add add-borders property Functionally identical to that of videoscale element. When disabled, d3d11convert or d3d11scale element will scale image without adding borders, meaning that display aspect ratio will not be preserved. Part-of: 2021-10-16 10:58:53 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: vapostproc: Add add-borders property to keep dar Just as videoscale, it enables add-borders property (FALSE by default) in vapostproc to add border, if necessary, to keep the display aspect ratio from the original image. Part-of: 2021-10-16 10:51:57 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Fix early fixation. First copy missing fields and then fixate all remaining fields. Part-of: 2021-10-14 19:08:49 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/meson.build: * ext/ofa/gstofa.c: * ext/ofa/gstofa.h: * ext/ofa/meson.build: * meson_options.txt: * tests/check/elements/ofa.c: ofa: remove ofa audio fingerprinting plugin I think the MusicIP database for this has been defunct for years, so I can't imagine this plugin is particularly useful or still used by anyone. See https://musicbrainz.org/doc/Fingerprinting#PUID Part-of: 2021-10-16 22:43:32 +0900 Seungha Yang * sys/mediafoundation/meson.build: * sys/wasapi2/meson.build: meson: wasapi2,mediafoundation: Work around Windows SDK header issue Some SDK headers are not standard compliant, so MSVC will complain when such headers are in use with "/permissive-" compile option. Use "/Zc:twoPhase-" to work around the issue as documented in https://docs.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-160#windows-header-issues Part-of: 2021-10-16 09:29:28 -0300 Thibault Saunier * ext/fdkaac/meson.build: meson: Mark newly fdkaac/ogg/vorbis as allow fallback This way when the dep is `auto` we will fallback if the system dependency is not available. And use https to get libvorbis Part-of: 2021-10-16 01:15:06 +0900 Seungha Yang * sys/mediafoundation/gstmfplatloader.c: * sys/mediafoundation/gstmfplatloader.h: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmftransform.h: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Use GetProcAddress() for OS version dependent symbols We are using some symbols which are not available on Windows 7, specifically D3D11 interop related ones Part-of: 2021-10-06 03:26:25 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Transfer colorimetry at fixate if possible. Taken from videoconvert element. Part-of: 2021-10-12 15:52:48 -0300 Thibault Saunier * docs/meson.build: meson: Streamline the way we detect when to build documentation Part-of: 2020-06-27 00:39:00 -0400 Thibault Saunier * docs/meson.build: * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/codecs/meson.build: * gst-libs/gst/d3d11/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/play/meson.build: * gst-libs/gst/player/meson.build: * gst-libs/gst/sctp/meson.build: * gst-libs/gst/transcoder/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/va/meson.build: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/wayland/meson.build: * gst-libs/gst/webrtc/meson.build: * meson.build: meson: List libraries and their corresponding gir definition Introduces a `libraries` variable that contains all libraries in a list with the following format: ``` meson libraries = [ [pkg_name, { 'lib': library_object 'gir': [ {full gir definition in a dict } ] ], .... ] ``` It therefore refactors the way we build the gir so that we can reuse the same information to build them against 'gstreamer-full' in gst-build when linking statically Part-of: 2020-06-27 00:37:39 -0400 Thibault Saunier * gst-libs/gst/audio/meson.build: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecs/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/play/meson.build: * gst-libs/gst/player/meson.build: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/webrtc/meson.build: meson: Mark files as files() Making it more robust and future proof And fix issues that it creates Part-of: 2021-09-13 17:53:12 -0300 Thibault Saunier * gst-libs/gst/audio/meson.build: bad:audio: Add generated files sources in declare_dependency Part-of: 2021-10-15 23:18:41 +0900 Seungha Yang * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: mediafoundation: Fix various string constness handling ... with fixing typo (g_strup -> g_strdup) Constness needs to be explicit in C++ world otherwise compiler would complain about that. Part-of: 2021-10-15 10:03:46 +0100 Rob Agar * tests/examples/webrtc/webrtcrenego.c: missing transceiver unref in WebRTC renegotiation example Part-of: 2021-10-13 17:17:44 +0800 Mengkejiergeli Ba * tests/examples/va/multiple-vpp.c: tests:va: Fix null ptr dereference in multi-vpp Dereference the pointer err before null check, which raised a null pointer dereference issue by Coverity. Modify it to do the null check of err first, then dereference it. Part-of: 2021-10-13 15:58:29 +0800 Mengkejiergeli Ba * sys/va/gstvadecoder.c: va: Fix null ptr dereference for vadeocder Making a null check in gst_va_decode_picture_free () indicates pic->buffers or pic->slices can be null, then in _destroy_buffers () the pointers are dereferenced, which is detected as dereference after null check by Coverity. Thus, modify the code to do null check in _detroy_buffers (). Part-of: 2021-04-05 10:29:37 +0300 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Handle delayed seek events Store the event in case it cannot be processed immediately and process it after the first segment has been produced. Part-of: 2021-04-05 10:28:51 +0300 Vivia Nikolaidou * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Protect demux->segment_event with a mutex Would otherwise cause weird issues when processing a delayed seek event Part-of: 2021-10-14 14:35:45 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264: Fix wrong type of ret variable This ret is not a GstFlowReturn. This broke v4l2 decoder which does not implement new_picture() virtual function. Part-of: 2021-10-13 21:45:34 +0900 Seungha Yang * sys/d3d11/gstd3d11desktopdup.h: * sys/d3d11/gstd3d11screencapture.cpp: * sys/d3d11/gstd3d11screencapture.h: * sys/d3d11/gstd3d11screencapturedevice.cpp: * sys/d3d11/gstd3d11screencapturedevice.h: * sys/d3d11/gstd3d11screencapturesrc.cpp: * sys/d3d11/gstd3d11screencapturesrc.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.cpp: * tests/examples/d3d11/d3d11screencapturesrc.cpp: * tests/examples/d3d11/meson.build: d3d11: Rename screen capture element Old name "desktopdup" may confuse users. Now it's renamed to "screencapture" Part-of: 2021-10-05 18:52:25 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Set state back to NULL after run() finishes Part-of: 2021-09-13 18:02:03 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.h: transcoder: Use full path for includes in 'gsttranscoder.h' Part-of: 2021-10-12 17:50:31 +0800 Mengkejiergeli Ba * gst-libs/gst/va/gstvadisplay_drm.c: va:display: Don't close an fd with negative value Cannot pass negative parameter to close() and thus no need to apply close() when fd < 0. Part-of: 2021-10-12 17:48:17 +0800 Mengkejiergeli Ba * sys/va/gstvadecoder.c: va: Fix error handling for decoder Need to check if va decoder is closed successfully. Part-of: 2021-10-12 17:44:27 +0800 Mengkejiergeli Ba * sys/va/gstvabasetransform.c: va: Fix error handling for base transform Need to check the returned value of gst_buffer_pool_set_active() when setting the active status of buffer pool. Part-of: 2021-10-13 21:26:53 -0300 Thibault Saunier * ext/avtp/meson.build: meson:avtp: Error out if sock_txtime is not present and avtp is enabled Part-of: 2021-10-10 01:56:32 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: {h264,h265}parser: Fix typo around SEI nalu generator Fix to create correct SEI nalu when the size of payloadType and/or payloadType is larger than 255 (0xff) Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1601 Part-of: 2021-10-05 20:15:44 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvavpp.c: vapostproc: Negotiate interlaced. Part-of: 2021-10-05 20:15:09 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Copy missing fields at fixate. When caps negotiation implies a caps feature change, some fields might get lost. This patch brings them back from input caps. Part-of: 2021-10-05 20:15:09 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Simplify size fixate. gst_va_vpp_fixate_size() returned the fixated caps, but that is not needed since `othercaps` are modified inline. Part-of: 2021-10-05 20:15:09 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Simplify fixate. The first approach to fixate was simply a copy&paste of both videoconvert and videoscale, trying to keep their logic as isolated as possible. But that brought duplicated and sparse logic. This patch merge both approaches simplifying the fixate operation. Part-of: 2021-10-05 17:41:57 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadeinterlace.c: * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: filter, deinterlace, vpp: Add gst_va_buffer_get_surface_flags(). Add a helper function to get, from GstVideoInfo and GstBuffers flags, the VA interlace surface flags. This is used currently by vainterlace element, but it will be used in vapostproc too if it can process interlaced frames. Part-of: 2021-09-22 14:50:40 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: msdkenc: fix vp9enc initialization fail MediaSDK does not support to handle extbuff with id MFX_EXTBUFF_VIDEO_SIGNAL_INFO for mjpegenc and vp9enc. Hence, need to exclude mjpeg and vp9 when passing color properties to MediaSDK during msdkenc initialization. Fix issue: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/764 Part-of: 2021-10-10 17:04:13 +0900 Seungha Yang * tests/examples/d3d11/d3d11desktopdupsrc.cpp: * tests/examples/d3d11/d3d11device.cpp: * tests/examples/d3d11/d3d11device.h: * tests/examples/d3d11/d3d11videosink-kb.c: * tests/examples/d3d11/d3d11videosink-kb.h: * tests/examples/d3d11/d3d11videosink-shared-texture-d3d9ex.cpp: * tests/examples/d3d11/d3d11videosink-shared-texture.cpp: * tests/examples/d3d11/d3d11videosink.c: * tests/examples/d3d11/meson.build: * tests/examples/meson.build: examples: d3d11: Add a desktop capture example ... with d3d11 desktop capture device provider Part-of: 2021-10-05 21:49:38 +0900 Seungha Yang * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11desktopdup.h: * sys/d3d11/gstd3d11desktopdupdevice.cpp: * sys/d3d11/gstd3d11desktopdupdevice.h: * sys/d3d11/gstd3d11desktopdupsrc.cpp: * sys/d3d11/meson.build: * sys/d3d11/plugin.cpp: d3d11: Add device provider for d3d11desktopdupsrc ... and add support for multi-GPU/multi-monitor By using newly added "monitor-handle" property, user can specify a monitor to be captured via HMONITOR handle. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1673 Part-of: 2021-10-11 15:23:08 +0200 Stéphane Cerveau * ext/ttml/gstttmlparse.c: * ext/ttml/gstttmlrender.c: ttml: fix log init The log system should be init before calling a log Fix regression after: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2038 Part-of: 2021-10-04 13:30:37 +0200 Víctor Manuel Jáquez Leal * tests/check/elements/vapostproc.c: * tests/check/meson.build: tests: va: Add VA buffer copy tests. It should only work for raw buffers, but fails on dmabuf since it should have a drm modifier. Part-of: 2021-10-06 15:20:50 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: dmabuf: Use GstVaSurfaceCopy, if possible. If dmabuf-based buffer to copy contains only one memory, and there are memories available in the allocator's pool, it's possible a fast memory copy using GstVaSurfaceCopy, regardless the drm modifier. Part-of: 2021-10-05 15:21:01 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: Use GstVaSurfaceCopy. Part-of: 2021-10-05 13:36:56 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvasurfacecopy.c: * sys/va/gstvasurfacecopy.h: * sys/va/meson.build: * sys/va/vasurfaceimage.c: * sys/va/vasurfaceimage.h: va: Add GstVaSurfaceCopy class. This new class is a helper for fast/tricky copy of surfaces. First it tries to copy using the function vaCopy in libva 1.12. If it fails, or it's not available, a GstVaFilter is tried to be instantiated with the allocator's parameters, and if succeed, it's used for copying the source surface. This is required for dmabuf surfaces with drm modifier. Part-of: 2021-10-05 13:21:00 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/vasurfaceimage.c: * sys/va/vasurfaceimage.h: va: filter: Enable to pass VASurfaceID in GstVaSample. Initially GstVaSample processed its GstBuffer member to get the VASurfaceID. But it might cases where we already have the VASurfaceID to process by the filter. This patch enables the possibility to pass the surfaces rather than the buffers. In order to validate the surfaces a function to check surfaces were added. Part-of: 2021-10-07 21:51:55 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/meson.build: * sys/va/vasurfaceimage.c: * sys/va/vasurfaceimage.h: va: Split VA memory handling in different files. Take out the VA memory wrappers from gstvallocator.c to an external file exposing the functions. This is going to be needed for the copy helper object. Part-of: 2021-10-05 06:54:25 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.h: va: allocator: Add missing header file. Added stdint.h because uintptr_t is used. Part-of: 2021-10-04 21:31:53 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadisplay_priv.c: * sys/va/gstvadisplay_priv.h: va: display: Add gst_va_display_has_vpp() Part-of: 2021-09-30 14:59:31 +0200 Benjamin Gaignard * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/linux/v4l2-controls.h: v4l2codecs: Align v4l2-controls header with kernel 5.15-rc3 Update v4l2-controls to be aligned with kernel 5.15-rc3. Fix VP8 decoder to use the correct field name. Part-of: 2021-10-08 23:07:32 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvideoenc.h: * sys/mediafoundation/gstmfvp9enc.cpp: mediafoundation: mfvideoenc: Use DXGI adapter LUID Make use of new DXGI adapter LUID based device context sharing. Note that we were using DXGI adapter LUID to open MFT already. Part-of: 2021-10-08 22:37:20 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11: d3d11decoder: Use DXGI adapter LUID ... instead of index of DXGI adapter. The order of IDXGIAdapter1 enumerated via IDXGIFactory1::EnumAdapters1 can be varying even there's no rebooting in case that GPU preference order is updated by user (for example, it can be done by using NVIDIA Control Panel in case of multi-GPU laptop system) and eGPU is another possible case. So, for an element which requires fixed target GPU requirement, index based device enumeration is unreliable. Part-of: 2021-10-08 21:39:44 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11utils.cpp: * gst-libs/gst/d3d11/gstd3d11utils.h: d3d11: d3d11utils: Add support for DXGI Adapter LUID based D3D11 device context sharing Part-of: 2021-10-08 19:41:22 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11device.h: * gst-libs/gst/d3d11/gstd3d11utils.cpp: * gst-libs/gst/d3d11/gstd3d11utils.h: * tests/check/libs/d3d11device.cpp: * tests/check/meson.build: d3d11: d3d11device: Add gst_d3d11_device_new_{for_adapter_luid,wrapped} * gst_d3d11_device_new_for_adapter_luid() Used for creating D3D11 device for a DXGI adapter (i.e., GPU) corresponding to a LUID (Locally Unique Identifier). This method can be useful for interop with other APIs such as Direct3D12, MediaFoundation, CUDA, etc. * gst_d3d11_device_new_wrapped() Allows creating a new GstD3D11Device object by using already configured ID3D11Device. This is conceptually equivalent to gst_gl_context_new_wrapped() Part-of: 2021-10-08 17:16:02 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.cpp: * sys/d3d11/gstd3d11window.cpp: d3d11: d3d11device: Remove "allow-tearing" property Plugin can query DXGI_FEATURE_PRESENT_ALLOW_TEARING without d3d11device help Part-of: 2021-10-08 21:14:52 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: Use the same promise reply structure name everywhere This was an inconsistent mix of different names in the past. The name has no meaning at all so let's set all to "application/x-gst-promise". Part-of: 2021-10-08 15:44:37 +0300 Vivia Nikolaidou * docs/plugins/gst_plugins_cache.json: * gst/debugutils/gstchopmydata.c: chopmydata: Fix FIXMEs in gst_element_class_set_static_metadata Part-of: 2021-10-06 03:19:30 +0900 Seungha Yang * sys/d3d11/gstd3d11desktopdupsrc.cpp: d3d11: d3d11desktopdupsrc: Add support for non-D3D11 downstream element By this commit, application doesn't need to configure d3d11download element for software pipeline which will make things simpler Part-of: 2021-10-06 22:06:44 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp9decoder.c: codecs: Use GST_VIDEO_DECODER_ERROR() only for decoding error case The GST_VIDEO_DECODER_ERROR() should be used only for robust/error-resilient decoding purpose. Any other error codes such as not-negotiated or flushing should be returned without modified for upstream to be able to handle it immediately. (for example, application might want to try other decoder element on not-negotiated) Part-of: 2021-10-07 01:54:29 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Update for remaining gboolean to GstFlowReturn port Fix for spurious/spammy warning and wrong function return type Part-of: 2021-09-23 17:36:20 +0530 Nirbheek Chauhan * ext/openjpeg/meson.build: meson: Fix build with -Dopenjpeg=disabled tests/check/meson.build uses the openjpeg_dep variable unconditionally, and the subdir_done() is useless anyway, since the plugin is only built if openjpeg_dep.found() is true. Fixes: ..\tests\check\meson.build:23:0: ERROR: Unknown variable "openjpeg_dep". In particular, this fixes the build on UWP since we disable openjpeg explicitly in Cerbero when building for UWP. Part-of: 2021-10-01 14:35:06 +0200 Guillaume Desmottes * ext/gs/README.md: bad: gs: update README - add one missing dep - change install path to match monorepo - fix current dirs Part-of: 2021-09-17 13:02:38 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadeinterlace.c: * sys/va/gstvavpp.c: * tests/examples/va/main.c: va: Use macro rather than VAMemory feature string. Part-of: 2021-09-24 11:53:56 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsdemux/mpegtsparse.c: mpegtsparse: Don't assert the packet_size when filling for EOS If the packetizer got reset for any reason (failure to find PCR?) then the packet_size can be zero here even though we already enqueued some packets. Part-of: 2021-09-22 00:05:43 +0900 Seungha Yang * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2decoder.h: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/va/gstvampeg2dec.c: codecs: mpeg2decoder: Use GstFlowReturn everywhere boolean return value is not sufficient for representing the reason of error in most cases. For instance, any errors around new_sequence() would mean negotiation error, not just *ERROR*. And some subclasses will allocate buffer/memory/surface on new_picture() but it could be failed because of expected error, likely flushing Part-of: 2021-09-21 22:21:51 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/nvcodec/gstnvh264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/va/gstvah264dec.c: codecs: h264decoder: Use GstFlowReturn everywhere boolean return value is not sufficient for representing the reason of error in most cases. For instance, any errors around new_sequence() would mean negotiation error, not just *ERROR*. And some subclasses will allocate buffer/memory/surface on new_picture() but it could be failed because of expected error, likely flushing Part-of: 2021-09-21 00:23:13 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * sys/d3d11/gstd3d11h265dec.cpp: * sys/nvcodec/gstnvh265dec.c: * sys/va/gstvah265dec.c: codecs: h265decoder: Use GstFlowReturn everywhere boolean return value is not sufficient for representing the reason of error in most cases. For instance, any errors around new_sequence() would mean negotiation error, not just *ERROR*. And some subclasses will allocate buffer/memory/surface on new_picture() but it could be failed because of expected error, likely flushing Part-of: 2021-10-02 21:22:23 +0900 Seungha Yang * ext/closedcaption/bit_slicer.c: * ext/closedcaption/io-sim.c: * ext/closedcaption/misc.h: * ext/closedcaption/sampling_par.c: closedcaption: Fix broken debug function macros with MSVC build warning C4003: not enough arguments for function-like macro invocation 'warning' G_STMT_END macro is extended to the below form with MSVC __pragma(warning(push)) \ __pragma(warning(disable:4127)) \ while(0) \ __pragma(warning(pop)) So MSVC preprocessor will extend it further to __pragma(VBI_CAT_LEVEL_LOG(push)) ... Should rename warning() debug macro function therefore. Part-of: 2021-10-02 20:12:07 +0900 Seungha Yang * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: basetsmux: Don't try to return value from void function gstbasetsmux.c(1508): warning C4098: 'free_splice': 'void' function returning a value Part-of: 2021-10-03 16:53:54 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadevice.c: * sys/va/meson.build: va: Make libgudev dependency optional. libgudev is a problematic dependency, particularly in sandboxed environments, such as flatpak. This patch implements a way to get the available VA devices using brute-forced traverse of /dev/drm/renderD* directory. Thus usable in those sandboxed environments. Part-of: 2021-10-03 15:45:58 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/meson.build: * sys/va/meson.build: va: meson: Move back libgudev dependency to plugin. When move the libgstva, libgudev dependency was moved as part of the library, though it's not use by the library but the plugin. This patch moves back libgudev dependency to the plugin. Also HAVE_LIBDRM is move to the library which is the one who use it. Part-of: 2021-10-03 19:14:07 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvh264dec.c: nvcodec: nvh264sldec: Add support for interlaced stream Implement missing interlaced stream support Part-of: 2021-10-03 17:41:40 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvcodec: nvh264sldec: Consider additional render delay DPB pictures At least additional 4 pictures are required Part-of: 2021-10-03 17:37:02 +0900 Seungha Yang * sys/nvcodec/gstnvvp9dec.c: nvcodec: nvvp9sldec: Fix for VP9 profile2 decoding Fix for output video format to be selected correctly Part-of: 2021-10-03 02:14:17 +0900 Seungha Yang * sys/msdk/meson.build: msdk: meson: Fix build on Windows subprojects\gst-plugins-bad\sys\msdk\meson.build:160:2: ERROR: Unknown variable "libva_dep". Part-of: 2021-10-03 01:45:57 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.cpp: d3d11: d3d11vp9dec: Fix use_prev_in_find_mv_refs value setting "last_show_frame" should be updated based on GstVp9FrameHeader::show_frame, not show_existing_frame Part-of: 2021-09-18 22:51:53 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp9decoder.c: codecs: {vp8,vp9}decoder: Drain on new_sequence() Decoder should drain queued frame (if any) and empty DPB before starting new sequence. Part-of: 2021-10-01 00:27:42 +0900 Seungha Yang * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: nvcodec: nv{vp8,vp9}sldec: Implement get_preferred_output_delay() Equivalent to that of nvh264sldec. Use render delay in case of non-live pipeline for the better throughput performance. Part-of: 2021-10-01 01:00:24 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp9decoder.c: codecs: {vp8,vp9}decoder: Cleanup drain code Make them consistent with h26x decoder baseclass Part-of: 2021-10-01 02:58:44 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp8decoder.c: codecs: vp8decoder: Fix typo Part-of: 2021-10-02 20:21:41 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: codecs: vp9decoder: add support for render delay Some decoding APIs support delayed output for performance reasons. One example would be to request decoding for multiple frames and then query for the oldest frame in the output queue. This also increases throughput for transcoding and improves seek performance when supported by the underlying backend. Introduce support in the vp9 base class, so that backends that support render delays can actually implement it. Co-authored by Seungha Yang Part-of: 2021-10-02 19:47:45 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.h: codecs: vp9decoder: Fix class struct documentation s/GstVp9Decoder/GstVp9DecoderClass Part-of: 2021-09-30 17:38:33 +0200 Víctor Manuel Jáquez Leal * sys/va/meson.build: va: meson: Update and enhance meson syntax usage. This patch contains two updates: 1. Instead of checking for dependency already checked just to verify a version, we use the dependency version API. 2. Update the deprecated function get_pkgconfig_variable. Part-of: 2021-09-30 17:43:09 +0200 Víctor Manuel Jáquez Leal * sys/msdk/meson.build: msdk: meson: Don't get dependency variable before it's valid. It's possible to have installed MediaSDK environment package (libmfx-dev in Debian) without libva environment package. This setup will lead to a breakage of meson configuration. The fix is to get the libva's driver directory variable after the dependency is validated as found. Part-of: 2021-09-30 13:32:44 +0200 Marc Leeman * gst/rist/gstristsink.c: ristsink: set sync to FALSE on RTCP sink See commit 921e9a54: rtpsink: set sync off on rtcp_sink Part-of: 2021-09-30 13:19:40 +0200 Marc Leeman * gst/rtp/gstrtpsink.c: rtpsink: set sync off on rtcp_sink When using the following setup (the error can be reproduced using simpler sender pipelines), the receiver resynchronises the clock on RTCP packets. The effect was that a couple seconds were cut out of the playback because an initial RTCP packet was dropped. When sending out all RTCP packets (setting sync=FALSE on the RTCP updsink), the playback is fine. This syncs rtpsink with rtpsrc (where this property was already set). gst-launch-1.0 filesrc location=899-en.mp3 \ ! mpegaudioparse \ ! mpg123audiodec \ ! audioconvert \ ! audioresample \ ! avenc_g722 \ ! rtpg722pay ! rtpsink uri=rtp://239.1.2.3:1234 gst-launch-1.0 uridecodebin rtp://239.1.2.3:1234?encoding-name=G722 \ ! autoaudiosink Part-of: 2020-09-17 15:06:38 +0200 Marc Leeman * gst/rtp/gstrtpsrc.c: * tests/check/elements/rtpsrc.c: rtpmanagerbad: do not set iface on sink Part-of: 2021-08-27 19:19:57 +0900 Seungha Yang * sys/mediafoundation/gstmfdevice.c: * sys/mediafoundation/gstwin32devicewatcher.cpp: * sys/mediafoundation/gstwin32devicewatcher.h: * sys/mediafoundation/meson.build: mfdeviceprovider: Add support for device update Similar to the wasapi2 plugin, GstWinRT library will be used for UWP, and adding new GstWin32DeviceWatcher object implementation for Win32 desktop application. Part-of: 2021-08-26 22:38:37 +0900 Seungha Yang * sys/wasapi2/gstwasapi2device.c: * sys/wasapi2/gstwasapi2device.h: * sys/wasapi2/meson.build: * sys/wasapi2/plugin.c: wasapi2deviceprovider: Add support for device update ... by using newly implemented GstWinRT library Part-of: 2021-08-26 19:47:51 +0900 Seungha Yang * gst-libs/gst/meson.build: * gst-libs/gst/winrt/gstwinrt.h: * gst-libs/gst/winrt/gstwinrtdevicewatcher.cpp: * gst-libs/gst/winrt/gstwinrtdevicewatcher.h: * gst-libs/gst/winrt/meson.build: * gst-libs/gst/winrt/winrt-prelude.h: libs: Introduce GstWinRT library Adding a helper library for various WinRT specific implementations. Currently this library supports only DeviceWatcher abstraction object which can be used for dynamic device add/remove detection. See also https://docs.microsoft.com/en-us/uwp/api/windows.devices.enumeration.devicewatcher?view=winrt-20348 Part-of: 2021-09-28 10:11:15 +1000 Brad Hards * README: * RELEASE: doc: update IRC links to OFTC Part-of: 2021-09-18 23:37:20 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: d3d11videosink: Add support for crop meta ... when upstream element is d3d11. Note that, if upstream element is not d3d11, crop meta is almost pointless since d3d11videosink will upload video frame to GPU memory in any case. Part-of: 2021-09-18 23:37:59 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: d3d11videosink: Perform propose_allocation() even when we have no configured window In order to support d3d11 device update, d3d11videosink will configure window on the first buffer. So, there might not be configured window when propose_allocation() is required. Part-of: 2021-09-27 15:30:25 +0300 Sebastian Dröge * ext/gs/gstgscommon.cpp: * ext/gs/gstgscommon.h: * ext/gs/gstgssink.cpp: * ext/gs/gstgssrc.cpp: gs: Add support for authenticating via Service Account Credentials This allows authenticating directly with Server Account credentials instead of having it configured on host system separately, and thus allows using arbitrary accounts configured/selected at runtime. Part-of: 2021-09-27 14:56:21 +0300 Sebastian Dröge * ext/gs/gstgs.cpp: * ext/gs/gstgscommon.cpp: * ext/gs/gstgscommon.h: * ext/gs/gstgssink.cpp: * ext/gs/gstgssink.h: * ext/gs/gstgssrc.cpp: * ext/gs/gstgssrc.h: gs: Fix indentation and make it consistent Apparently this partially used clang-format's default settings, so let's use that for everything now. Part-of: 2021-09-26 01:07:02 +0100 Tim-Philipp Müller * meson.build: Back to development Part-of: 2021-09-23 19:30:32 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Always set SINK/SRC flags webrtcbin can act as a sink/source depending on the SDP later. Without setting this here already, surrounding bins might not notice this and the pipeline configuration might become inconsistent, e.g. with regards to latency. See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/737 Part-of: 2021-09-25 00:09:00 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst/mpegtsdemux/tsdemux.c: mpegts: add missing Since comments after SCTE 35 work Part-of: 2021-06-08 23:25:58 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: basetsmux: use private copy of g_ptr_array_copy This function is only present since glib 2.62 Part-of: 2021-05-04 14:38:28 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: 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: 2021-04-23 01:22:32 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: * gst/mpegtsmux/gstbasetsmux.c: 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: 2021-04-23 01:19:21 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gstmpegtssection.c: 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: 2021-04-23 01:15:08 +0200 Mathieu Duponchelle * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: 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: 2021-04-14 00:27:16 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: scte-section: add support for packetizing splice_program_flag='0' Part-of: 2021-04-13 23:56:06 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: scte-section: add support for packetizing schedule events Part-of: 2021-04-13 23:42:54 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: scte-section: Add TODO for porting to gst_bit_* Part-of: 2021-04-13 23:38:16 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: scte-section: add support for parsing splice components Part-of: 2021-04-13 20:51:09 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: scte-section: add support for SCHEDULE commands Part-of: 2021-04-13 20:47:36 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: scte-section: fix typo Part-of: 2021-04-13 20:44:54 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: 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: 2021-04-06 17:57:42 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: * tests/examples/mpegts/ts-scte-writer.c: 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: 2021-04-06 17:37:28 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.c: 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: 2021-04-06 00:58:33 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: 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: 2021-04-06 00:36:43 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Expose send-scte35-events property When enabled, SCTE 35 sections (eg ad placement opportunities) are forwarded as events donwstream. Part-of: 2021-04-06 00:26:50 +0200 Mathieu Duponchelle * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: expose vmethod to let subclass handle sections This can be used by tsdemux to handle and forward SCTE 35 sections. Part-of: 2021-04-06 00:23:09 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: 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: 2021-04-06 00:21:58 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-scte-section.h: scte-section.h: fix type macros Part-of: === release 1.19.2 === 2021-09-23 01:34:47 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.19.2 2021-09-22 14:17:35 -0400 Nicolas Dufresne * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Remove unneeded buffer_clip wrapper This is just a small cleanup noticed while reading. Part-of: 2020-07-10 19:31:13 +0530 Vivek R <123vivekr@gmail.com> * ext/opencv/gstcvtracker.cpp: * ext/opencv/gstcvtracker.h: opencv: cvtracker: add draw property This property controls the drawing of rectangle around the tracked object. Part-of: 2020-05-24 23:37:25 +0530 Vivek R <123vivekr@gmail.com> * docs/plugins/gst_plugins_cache.json: * ext/opencv/gstcvtracker.cpp: * ext/opencv/gstcvtracker.h: * ext/opencv/gstopencv.cpp: * ext/opencv/meson.build: * tests/meson.build: * tests/validate/meson.build: * tests/validate/opencv/cvtracker.validatetest: * tests/validate/opencv/cvtracker/flow-expectations/log-tracker-src-expected: opencv: add cvtracker plugin This adds an object tracker plugin. Tracker implementations from https://docs.opencv.org/3.4/d0/d0a/classcv_1_1Tracker.html Part-of: 2020-05-25 10:35:30 +0530 Vivek R <123vivekr@gmail.com> * ext/opencv/meson.build: opencv: patch to ensure headers are detected This patch is used to ensure opencv headers are detected. Part-of: 2021-09-19 01:18:00 +0100 Tim-Philipp Müller * gst/mpegpsmux/mpegpsmux_aac.c: * gst/mpegpsmux/mpegpsmux_aac.h: * gst/mpegpsmux/mpegpsmux_h264.c: * gst/mpegpsmux/mpegpsmux_h264.h: * gst/mpegtsmux/gstatscmux.c: * gst/mpegtsmux/gstatscmux.h: * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: * gst/mpegtsmux/gstbasetsmuxaac.c: * gst/mpegtsmux/gstbasetsmuxaac.h: * gst/mpegtsmux/gstbasetsmuxjpeg2000.c: * gst/mpegtsmux/gstbasetsmuxjpeg2000.h: * gst/mpegtsmux/gstbasetsmuxopus.c: * gst/mpegtsmux/gstbasetsmuxopus.h: * gst/mpegtsmux/gstbasetsmuxttxt.c: * gst/mpegtsmux/gstbasetsmuxttxt.h: * gst/mpegtsmux/gstmpegtsmux.c: * gst/mpegtsmux/gstmpegtsmux.h: * gst/mpegtsmux/gstmpegtsmuxplugin.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux, mpegpsmux: remove GPL from choice of licenses and add SPDX license identifiers Some people need to avoid inclusion of GPL code for their use cases and thus get easily spooked by GPL license headers. This code is actually licensed under different licenses, only one of which is GPL, and it's already possible to just upgrade from LGPL to GPL anyway so having the GPL listed explicitly as one of the choices doesn't really add anything. So remove GPL from the list and also add SPDX license identifiers while we're at it. Part-of: 2021-08-24 03:54:27 +0900 Seungha Yang * sys/wasapi/gstmmdeviceenumerator.cpp: * sys/wasapi/gstmmdeviceenumerator.h: * sys/wasapi/gstwasapidevice.c: * sys/wasapi/gstwasapidevice.h: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: * sys/wasapi/meson.build: * tests/check/elements/wasapi.c: wasapideviceprovider: Add support for dynamic device add/remove Adding IMMDeviceEnumerator::RegisterEndpointNotificationCallback in order to support device monitoring. On OnDeviceAdded(), OnDeviceRemoved(), and OnDefaultDeviceChanged() callback, wasapi device provider implementation will enumerate devices again and will notify newly added and removed device via GstDeviceProvider API. As a bonus point, this IMMDeviceEnumerator abstraction object will spawn a dedicated internal COM thread, so various COM thread related issues of WASAPI plugin can be resolved by this commit. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1649 Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1110 Part-of: 2021-02-01 16:21:59 +0100 Stéphane Cerveau * tests/check/elements/openjpeg.c: * tests/check/meson.build: openjpeg: add unit test Test various format supported with subframes. Part-of: 2021-01-22 10:39:56 +0100 Stéphane Cerveau * docs/plugins/gst_plugins_cache.json: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse + openjpeg: Switch striped mode to its own caps It's not compatible with any other element that use the non-striped mode. In addition, in this mode, we require that every frame have the same number of stripes or that the MARKER bit be present, which is different from the other formats too. Part-of: 2020-12-23 11:03:34 +0100 Stéphane Cerveau * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Fix crash with AYUV64 in subframe mode Remove useless generic fill_frame methods to use the packed one for AYUV and AYUV64. Fix gst-launch-1.0 -v videotestsrc ! video/x-raw,width=640,height=480,format=AYUV64 ! openjpegenc num-stripes=8 ! openjpegdec max-threads=8 ! videoconvert ! autovideosink sync=false Part-of: 2020-04-24 16:15:42 +0200 Stéphane Cerveau * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: openjpegdec: support for a multithreaded decoding. Part-of: 2020-01-13 14:02:39 -0500 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: openjpegdec: enable sub frame mode Rebuild output frame from multiple stripes input. Keep the first frame and fill it with the following stripes to finish a complete frame only once. Part-of: 2020-12-22 18:19:40 -0500 Olivier Crête * docs/plugins/gst_plugins_cache.json: * gst/mpegtsmux/gstmpegtsmux.c: mpegtsmux: Require frame alignment for JPEG 2000 We have yet to implement stripe alignment with the required descriptor. Part-of: 2020-12-22 18:15:52 -0500 Olivier Crête * docs/plugins/gst_plugins_cache.json: * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Reject stripes for now They're not implemented. Part-of: 2020-12-22 18:20:35 -0500 Olivier Crête * ext/openjpeg/gstopenjpegenc.c: openjpegenc: Only allow stripe with image/x-jpc format It's the only format that our MPEG-TS muxer allows and the carriage of JPEG 2000 stripes is only defined for MPEG-TS as far as I know. Part-of: 2020-04-21 20:56:03 +0200 Stéphane Cerveau * docs/plugins/gst_plugins_cache.json: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/gstopenjpegenc.h: openjpegenc: support for a multithreaded encoding. This commit introduces a multithreaded encoder allowing to encode mulitple stripes or subframes in separated threads. This feature aims to enhance the overall latency of a codec pipeline. Part-of: 2021-09-18 12:02:15 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpe: context thread dispatch fixes Use dedicated mutex/cond/flag for jobs being dispatched in the context thread. The previous code was signalling the thread startup condition, which is wrong. When WPEContextThread::dispatch() is invoked it means the thread has already correctly been started up. Part-of: 2021-09-18 12:01:39 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: wpe: Properly wait on context thread startup condition Fixes #1661 Part-of: 2021-09-20 09:41:32 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update kmssink caps cache Part-of: 2021-09-17 16:21:39 -0400 Nicolas Dufresne * sys/kms/gstkmsutils.c: kmssink: Add RGB16/BGR16 support Part-of: 2021-09-17 16:14:36 -0400 Nicolas Dufresne * sys/kms/gstkmsutils.c: kmssink: Sort format according to GST_VIDEO_FORMATS_ALL Part-of: 2021-09-17 15:42:25 -0400 Nicolas Dufresne * sys/kms/gstkmsutils.c: kmssink: Remove big endian format inversion This has been a bad interpretation of the DRM docuemntation. The formats are fixed regardless the CPU, but for some formats, they expressed in the opposite order as GStreamer. Same change was done in waylandsink 2 years ago. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/commit/b393b650ab9bfb9654fc116163ab331907216d74 Part-of: 2021-09-17 15:41:41 -0400 Nicolas Dufresne * sys/kms/gstkmsutils.c: kmssink: Add NV61 support This identically handled to NV16, so no reason not to inclue it. Part-of: 2021-09-17 15:39:54 -0400 Nicolas Dufresne * sys/kms/gstkmsutils.c: kmssink: Add NV24 support This was tested on RK3566 platform, using vendor DRM driver. Part-of: 2021-09-18 00:33:12 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1decoder.h: * sys/d3d11/gstd3d11av1dec.cpp: * sys/va/gstvaav1dec.c: codecs: av1decoder: Use GstFlowReturn everywhere The same modification as that of VP8 decoder Part-of: 2021-09-18 00:09:24 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/nvcodec/gstnvvp9dec.c: * sys/va/gstvavp9dec.c: codecs: vp9decoder: Use GstFlowReturn everywhere The same modification as that of VP8 decoder Part-of: 2021-09-17 23:23:06 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp8decoder.h: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/nvcodec/gstnvvp8dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/va/gstvavp8dec.c: codecs: vp8decoder: Use GstFlowReturn everywhere boolean return value is not sufficient for representing the reason of error in most cases. For instance, any errors around new_sequence() would mean negotiation error, not just *ERROR*. And some subclasses will allocate buffer/memory/surface on new_picture() but it could be failed because of expected error, likely flushing Part-of: 2021-08-16 18:15:42 +0300 Vivia Nikolaidou * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: memcmp potentially seen_before data Theoretically the version number is incremented every time there's a new section, but in a world of streaming we can't easily make that assumption. An example of a broken use case is when we're cat-ing two mpeg-ts files together, which is equivalent of capturing a DVB stream while switching channels. A set-top box would know that we switched the channels and reset the demuxer, but in practice this might not happen. Part-of: 2021-09-20 11:35:51 +0300 Sebastian Dröge * gst-libs/gst/play/gstplay-media-info.c: * gst-libs/gst/play/gstplay.c: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer.c: player: Fix/add various annotations Part-of: 2021-09-18 18:07:43 +0900 Seungha Yang * sys/va/meson.build: meson: va: Make AV1 support always optional Otherwise meson configure with -Dva=enabled will be failed when installed libva version is < 1.8 Part-of: 2021-09-18 11:03:16 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: va: caps: Don't use image formats for decoded frames. Initially we tried to use the internal color conversion used in i965 and Gallium drivers when decoding. But this approach has showed limitations and problems. This patch removes completely the possible color conversion at decoding, since it show problems with deinterlacing, for example: gst-launch-1.0 filesrc location=interlaced.mpg2 ! parsebin ! vampeg2dec ! vadeinterlace ! xvimagesink Allowing only the surface formats when decoding is more stable. For color conversion is better to do it explicitly with vapostproc. Part-of: 2021-04-27 11:59:15 +0200 Marijn Suijten * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer.c: player: Add missing nullable annotations Part-of: 2021-04-27 11:58:58 +0200 Marijn Suijten * gst-libs/gst/play/gstplay-media-info.c: * gst-libs/gst/play/gstplay.c: play: Add missing nullable annotations Part-of: 2021-09-18 14:29:25 +0200 Fabian Orccon * sys/shm/meson.build: sys: shm: Define shm_enable and shm_deps before escape meson subdir Fixes meson configure in tests if the shm plugin is disabled Fixes #1664 Part-of: 2021-09-18 02:27:51 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Display title of content if possible Update title text of window (currently it's always "Direct3D11 renderer") when we are rendering on internal HWND, not external HWND. Part-of: 2021-09-18 01:32:11 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: d3d11videosink: Remove unused enum value Part-of: 2021-09-15 13:59:17 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: msdkenc: Pass color properties to MediaSDK for encoding Part-of: 2021-09-15 16:32:02 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: Add profile main10 still picture for hevc Part-of: 2021-09-16 17:12:58 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wlbuffer.c: waylandsink: Fix double render check Our code does not support rendering twice the same wl_buffer in a row, so it tries to skip that case, but for this it relied on the GstBuffer pointer, while the cache actually works at the GstMemory level now. To avoid this compare the GstWlBuffer instead. This fixes crash when use in zero-copy with videorate element. Part-of: 2021-09-07 09:45:54 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2decoder: Use tsg framerate for latency. Latency setting relies on src pad caps, but they aren't set when the function is called, and latency is never updated. In order to fix it, this patch uses TSG framerate first, and if it's not set yet, sinkpad caps are used to get the framerate. Part-of: 2021-09-16 00:59:37 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11av1dec.h: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h264dec.h: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11h265dec.h: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.h: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp8dec.h: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/d3d11/gstd3d11vp9dec.h: * sys/d3d11/plugin.cpp: d3d11decoder: Refactor for more unified decoding flow ... and various code cleanup. * Move spreaded decoding API calls into one method Previously, decoding flow of most codecs are - Call DecoderBeginFrame() on start_picture() - Call {Get,Release}DecoderBuffer() on decode_slice() - Call SubmitDecoderBuffers() and DecoderEndFrame() on end_picture() Such spreaded API calls make it hard to keep track of status of decoding. Now it will be done at once in a new method. * Drop a code for non-zero wBadSliceChopping When bitstream buffer provided by driver is not sufficient to write compressed bitstream data, host decoder needs to make use of wBadSliceChopping so that driver can understand there are multiple bitstream buffer. But it's a bit unrealistic and not tested. Since FFMpeg's DXVA implemetaion doesn't support it, we might be able to ignore the case for now. * Make code more portable Consider common logic of GstCodecs -> DXVA translation for all D3D APIs (i,e., D3D9, D3D11, and D3D12). Part-of: 2021-09-15 23:41:39 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Remove duplicated class_init and property related code Move them into the decoder helper code to remove duplication Part-of: 2021-09-11 00:43:26 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11compositorbin.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11desktopdupsrc.cpp: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11shader.cpp: * sys/d3d11/gstd3d11videoprocessor.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: * sys/d3d11/meson.build: * sys/d3d11/plugin.cpp: d3d11: Get rid of "extern "C"" wrapping for GST_DEBUG_CATEGORY_EXTERN Instead, change the file defining debug category to cpp Part-of: 2020-06-30 11:15:43 -0700 U. Artie Eoff * ext/closedcaption/meson.build: * tests/check/meson.build: tests: skip cc tests if plugin is disabled Skip the closedcaption element tests if the closedcaption option is disabled at compile time (i.e. -Dclosedcaption=disabled). v2: rename pangocairo_dep to avoid conflict with later definition in ext/ttml/meson.build as suggested by @tpm. Part-of: 2021-08-31 17:16:05 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Check bumping again after inserting current picture. In order to get the lowest latency, we can add another bumping check after inserting the current picture into the DPB immediately. That can avoid waiting for another decoding circle of the next frame and so the latency is lower. Fix: #1628 Part-of: 2021-08-31 17:37:11 +0800 He Junyan * gst-libs/gst/codecs/gsth264picture.c: codecs: h264: Add protection to to_insert picture in bump check. Part-of: 2021-08-31 16:39:06 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Improve the policy to infer max_num_reorder_frames. The max_num_reorder_frames number can change the way we bumping the pictures in the DPB. The smaller it is, the lower latency we will get. So it is important for live mode streams, but it is not given in VUI parameters sometimes. We now improve the policy to infer it: 1. Never guess it in the "strict" compliance. 2. For baseline and constrained baseline profiles, which do not have B frames, set it to 0. 3. For -intra only profiles, set it to 0. 4. Otherwise, not guess it. Part-of: 2021-09-14 20:57:30 -0700 U. Artie Eoff * ext/aes/meson.build: * tests/check/meson.build: tests: skip aes test if elements not built In ext/aes/meson.build, the aes_dep will return not-found if -Daes=disabled, regardless of whether openssl is found or not. Thus, we don't need a separate check for the option. This will also ensure that aes_dep is always defined and we can use it in the tests/check/meson.build unit. Fixes #1660 v2: handle -Daes=disabled, too. Part-of: 2021-08-31 17:33:02 +0100 Philippe Normand * ext/wpe/gstwpesrcbin.cpp: wpe: Add support for web:// URIs The CEF source already supports this. No good reason for wpesrc not too ;) Part-of: 2021-07-23 23:38:22 +0800 He Junyan * sys/va/gstvah264dec.c: va: h264dec: Try to use ConstrainedBaseline or Main to decode BaseLine. In the h264, the Baseline profile is widely misused. A lot of streams declare that they are the Baseline, but in fact they just conform to ConstrainedBaseline. The features such as FMO and ASO are not used at all. If the decoder does not strictly conforms to the SPEC, we can just use Baseline or Main profile to decode it to avoid lots of streams failure. Part-of: 2021-07-28 23:19:15 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Improve the fast bump for the live mode. We control the policy of fast bump by the profile and the compliance property. For baseline and constrained baseline profiles, we can use more radical bump policy. User can also change the bump policy by setting the compliance property in run time. Part-of: 2021-07-28 22:48:21 +0800 He Junyan * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264: Change the low_latency to an enum for dpb_needs_bump(). The bool parameter of low_latency is not enough. We have multi policies for low latency bumping, from the safest to something radical. So we need an enum to represent the proper latency requirement. Part-of: 2021-07-26 16:09:19 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264dec: Add a compliance property to control behavior. Some features such as the low-latency DPB bumping and mapping the baseline profile as the constrained-baseline profile do not conform to the H264 offical spec. But in practice, they are very useful and are widely needed. We add this compliance property to control the behavior of the decoder, make it fit more requirement. Part-of: 2021-09-12 12:23:36 +0100 Philippe Normand * docs/plugins/gst_plugins_cache.json: docs: Update cache Part-of: 2021-09-07 10:55:10 +0200 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: * sys/va/gstvafilter.c: va: Update vapostproc documentation. Part-of: 2021-09-07 10:16:05 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: * sys/va/gstvavpp.c: va: Update todo lists, removing deinterlacing. Part-of: 2021-08-23 11:24:40 +0200 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: * sys/va/gstvadeinterlace.c: * sys/va/gstvadeinterlace.h: * sys/va/meson.build: * sys/va/plugin.c: Add vadeinterlace element. Part-of: 2021-08-24 13:53:12 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: va: filter: Add past and future frames in GstVaSample. And add them in the pipeline structure if they are provided. Part-of: 2021-08-24 13:33:29 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: va: filter: Add gst_va_filter_add_deinterlace_buffer() This function decorates gst_va_filter_add_filter_buffer() to get the number of past and future frames to hold, given the method. Part-of: 2020-12-21 18:17:24 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: va: filter: Add deinterlacing method parameter. For exposing that gobject parameter a new helper function is added: gst_va_filter_install_deinterlace_properties() Part-of: 2021-08-23 16:29:36 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: Protect filters array of overwrite. It's possible to modify the filters array from another GStremer thread, and the post-processing operation is not atomic, so the filter array is reffed while the VA pipeline is processed. Part-of: 2021-08-23 15:24:55 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: Add helper function to query pipeline caps. This function is going to be shared for future deinterlace filter processing. Part-of: 2021-08-23 15:16:16 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: Shuffle _destroy_filters_unlocked(). In order to put it near to its caller. Part-of: 2021-08-10 17:55:43 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: * sys/va/gstvavpp.h: * sys/va/plugin.c: vapostproc: Move up color balance detection to plugin. In order to install the color balance interface, a GstVaFilter is instantiated and queried to know if it supports color balance filter. It was done just after the GObject was registered. Now, it's done before. The reason of this change is that deinterlace element has to be registered only if deinterlace filter is available, using only one instantiate of GstVaFilter. Part-of: 2021-09-07 11:35:09 +0200 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: * sys/va/gstvabasetransform.c: va: basetransform: Update documentation. Part-of: 2021-09-09 18:26:56 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasetransform.h: va: basetransform: Add autoptr clean up function. Part-of: 2021-08-23 18:44:30 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasetransform.c: va: basetransform: Use copy_metadata() at buffer import. Instead of using only gst_buffer_copy_into() use copy_metadata() vmethod to copy what's needed. Part-of: 2021-08-23 10:40:32 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: don't chain up transform_meta() Part-of: 2021-07-29 12:20:30 -0300 Daniel Almeida * gst-libs/gst/codecs/gstvp9statefulparser.c: codecs: gstvp9statefulparser: feature_data should be 0 if feature_enable is 0 The spec says in 6.2.11 that feature_data[i][j] should be zero if feature_enabled[i][j] is zero. Instead we retained the old value in the parser. Fix it. Part-of: 2021-09-08 05:28:22 +0200 Marek Vasut * gst-libs/gst/codecparsers/gsth264parser.c: gsth264parser: Fix handling of NALs with emulation byte set In case a set of NALs with emulation_prevention_three_byte is decoded using hardware decoder like Hantro G1, wrong struct v4l2_ctrl_h264_decode_params .dec_ref_pic_marking_bit_size is passed into the kernel, which results in decoding artifacts. Subtract the number of emulation three bytes from the .dec_ref_pic_m->bit_size to get the correct bit size and avoid having these artifacts. Apply the exact same fix to slice->pic_order_cnt_bit_size as well. The following NALs (7, 8, 6, 5) decode with artifacts, .dec_ref_pic_marking_bit_size is set to 10 without this patch. 00000000 00 00 00 01 27 4d 00 20 89 8b 60 3c 04 bf 2e 02 |....'M. ..`<....| 00000010 d4 18 04 18 c0 c0 01 77 00 00 5d c1 7b df 05 00 |.......w..].{...| 00000020 00 00 01 28 ee 1f 20 00 00 01 06 05 10 b9 ed b9 |...(.. .........| 00000030 30 5d 21 4b 71 83 71 2c 10 a3 14 bb 29 80 00 00 |0]!Kq.q,....)...| 00000040 01 25 b8 00 05 00 00 03 03 7f fa 78 1e e7 fd fe |.%.........x....| ^^^^^^^^^^^^--- emulation 3 byte 00000050 b4 62 7a 31 ff 7d 81 fd 26 d8 62 b6 d6 25 46 ae |.bz1.}..&.b..%F.| The following NALs (7, 8, 6, 5) decode fine, .dec_ref_pic_marking_bit_size is set to 2 without this patch. 00000000 00 00 00 01 27 4d 00 20 89 8b 60 3c 04 bf 2e 02 |....'M. ..`<....| 00000010 d4 18 04 18 c0 c0 01 77 00 00 5d c1 7b df 05 00 |.......w..].{...| 00000020 00 00 01 28 ee 1f 20 00 00 01 06 05 10 b9 ed b9 |...(.. .........| 00000030 30 5d 21 4b 71 83 71 2c 10 a3 14 bb 29 80 00 00 |0]!Kq.q,....)...| 00000040 01 25 b8 00 04 c0 00 03 7f fa 78 1e e7 fd fe b4 |.%........x.....| 00000050 62 7a 31 ff 7d 81 fd 26 d8 62 b6 d6 25 46 ae ce |bz1.}..&.b..%F..| Fixes: d0d65fa875 ("codecparsers: h264: record dec_ref_pic_marking() size") Fixes: 0cc7d6f093 ("codecparsers: h264: record pic_order_cnt elements size") Signed-off-by: Marek Vasut Part-of: 2021-09-03 14:57:09 -0400 Aaron Boxer * gst-libs/gst/codecparsers/gsth264parser.c: gsth264parser: reject memory management control op greater than 6 This prevents assertion from being thrown in gst_h264_dpb_perform_memory_management_control_operation if corrupt NAL has a control op greater than 6 Part-of: 2021-08-24 09:59:59 +0000 Ung, Teng En * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkav1dec.c: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkmpeg2dec.c: * sys/msdk/gstmsdkmpeg2enc.c: * sys/msdk/gstmsdkvc1dec.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp9dec.c: * sys/msdk/gstmsdkvp9enc.c: * sys/msdk/gstmsdkvpp.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: Adjust the plugin and factories description based on MFX_VERSION. Part-of: 2021-09-08 17:32:30 +0200 Mathieu Duponchelle * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.c: vulkan: don't link to XOpenDisplay in documentation hotdoc doesn't know about that symbol Part-of: 2021-08-30 23:26:39 +1000 Jan Schmidt * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2enc.hh: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: mpeg2enc: Only allow 1 pending frame for encoding Having an unlimited input queue is very bad if the encoder can't run at real-time. Eventually it will consume all RAM. I don't really see any reason to have more than 1 outstanding encoded frame, so remove the queue and limit things to 1 pending frame. Part-of: 2021-09-01 17:35:45 -0400 Thibault Saunier * ext/wpe/wpe-extension/gstwpeaudiosink.c: wpe: Fix race condition on teardown There was a race when going to PAUSED while pushing a buffer to the pipeline process (where we weren't even cancelling anything). This rework base all the cancellation around the GCancellable "cancelled" signal trying to ensure that the streaming thread will not block once a cancel operation happens. Part-of: 2021-09-01 17:26:04 -0400 Thibault Saunier * ext/wpe/gstwpesrcbin.cpp: wpe: Use the new element.get_current_running_time API Part-of: 2021-09-01 17:24:45 -0400 Thibault Saunier * ext/wpe/gstwpesrcbin.cpp: wpe: Mark first buffer as starting at 0 Part-of: 2021-09-02 22:06:52 +0900 Seungha Yang * gst/videoparsers/gstvideoparseutils.c: videoparseutils: Fix for wrong CEA708 minimum size check The minimum possible size of valid CEA708 data is 3 bytes, not 7 bytes Part-of: 2021-08-29 11:04:17 +0100 Philippe Normand * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Uniformise default value for draw-background property Part-of: 2021-08-29 10:30:53 +0100 Philippe Normand * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Implement basic heuristic for raw caps negotiation Before this patch raw caps could be negotiated already with a capsfilter, but in cases where wpesrc is being auto-plugged this approach can't be used. Part-of: 2021-08-29 10:28:57 +0100 Philippe Normand * ext/wpe/gstwpevideosrc.cpp: wpevideosrc: Ensure debug category is set Part-of: 2021-07-15 21:10:14 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: fix scheduling with interlaced video buffers The initial code was written with the misunderstanding that IS_TOP_FIELD indicated that an interlaced buffer contained a top field, not that it contained only a top field Part-of: 2021-08-27 15:41:32 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: Revert "kmssink: Fix fallback path for driver not able to scale scenario" This reverts commit d2a7b763bef3ca51f0c84cdac52eeed85b0db8fb. After this change, non-scaled rendered were not centred as expected. Part-of: 2021-08-20 13:28:51 +0800 Mengkejiergeli Ba * gst-libs/gst/codecs/gstav1decoder.c: codecs: av1dec: Fix to output frame with highest spatial layer During the output process, if there are multiple frames in a TU (i.e. multi-spatial layers case), only one frame with the highest spatial layer id should be selected according to av1 spec. The highest spatial layer id is obtained from idc value of the operating point. Part-of: 2021-08-24 14:33:42 +0100 Alex Ashley * ext/dash/gstxmlhelper.c: * tests/check/elements/dash_mpd.c: dashdemux: copy ContentProtection element including xml namespaces Commit bc09d8cc changed gstmpdparser to put the entire element in the "value" field, so that DRMs other than PlayReady could make use of the data inside this element. However, the data in the "value" field does not include any XML namespace declarations that are used within the element. This causes problems for a namespace aware XML parser that wants to make use of this data. This commit modifies the way the XML is converted to a string so that XML namespaces are preserved in the output. Part-of: 2021-08-26 21:26:01 +0300 Vivia Nikolaidou * docs/plugins/gst_plugins_cache.json: * gst/debugutils/gsterrorignore.c: * gst/debugutils/gsterrorignore.h: errorignore: Add ignore-eos mode It's otherwise very complicated to ignore GST_FLOW_EOS without a ghostpad's chain function to rewrite. Part-of: 2021-08-27 17:25:04 +1000 Brad Hards * gst-libs/gst/codecparsers/gsth264parser.c: gsth264parser: fix typo in debug message Part-of: 2021-08-26 04:12:07 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: add support for closedcaption input Some closedcaption elements like sccenc except input buffers to have timecode metas. The original use case is to serialize closed captions extracted from a video stream, in that case ccextractor copies the video time code metas to the closed caption buffers, but no such mechanism exists when creating a CC stream ex nihilo. Remedy that by having timecodestamper accept closedcaption input caps, as long as they have a framerate. Part-of: 2021-07-06 12:31:42 -0400 Aaron Boxer * docs/plugins/gst_plugins_cache.json: * ext/aes/gstaes.c: * ext/aes/gstaesdec.c: * ext/aes/gstaesdec.h: * ext/aes/gstaesenc.c: * ext/aes/gstaesenc.h: * ext/aes/gstaeshelper.c: * ext/aes/gstaeshelper.h: * ext/aes/meson.build: * ext/meson.build: * meson_options.txt: * tests/check/elements/aesdec.c: * tests/check/elements/aesenc.c: * tests/check/meson.build: aes: add aes encryption and decryption elements Part-of: 2021-05-10 12:02:20 +0200 Johan Sternerup * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: webrtcbin: Return typed "sctp-transport" With GstWebRTCSCTPTransport type exposed we can now define "sctp-transport" property as being of this type. Part-of: 2021-05-07 08:12:25 +0200 Johan Sternerup * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/meson.build: * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcdatachannel.h: * ext/webrtc/webrtcsctptransport.c: * ext/webrtc/webrtcsctptransport.h: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/sctptransport.c: * gst-libs/gst/webrtc/sctptransport.h: * gst-libs/gst/webrtc/webrtc-priv.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Split sctptransport into lib and implementation parts GstWebRTCSCTPTransport is now made into into an abstract base class that only contains property specifications matching the RTCSctpTransport interface of the W3C WebRTC specification, see https://w3c.github.io/webrtc-pc/#rtcsctptransport-interface. This class is put into the WebRTC library to expose it for applications and to allow for generation of bindings for non-dynamic languages using GObject introspection. The actual implementation is moved to the subclass WebRTCSCTPTransport located in the WebRTC plugin. Part-of: 2021-05-03 10:45:42 +0200 Johan Sternerup * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: webrtcbin: Expose SCTP Transport Being able to access the SCTP Transport object from the application means the application can access the associated DTLS Transport object and its ICE Transport object. This means we can observe the ICE state also for a data-channel-only session. The collated ice-connection-state on webrtcbin only includes the ICE Transport objects that resides on the RTP transceivers (which is exactly how it is specified in https://w3c.github.io/webrtc-pc/#rtciceconnectionstate-enum). For the consent freshness functionality (RFC 7675) to work the ICE state must be accessible and consequently the SCTP transport must be accessible for enabling consent freshness checking for a data-channel-only session. Part-of: 2021-04-20 20:04:33 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264enc.cpp: openh264enc: fix broken header AU emission by base class This encoder advertises alignment=au as output format, which means each output frame should contain a full decodable access unit. The video encoder base class is not aware of our output alignment and will output spurious buffers with just the SPS/PPS inside when we call gst_video_encoder_set_headers(), which is broken because each buffer is supposed to contain a full decodable access unit in our case. Just don't tell the base class about our headers, they will be sent at the beginning of each IDR frame anyway. Part-of: 2021-04-20 19:43:53 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264enc.cpp: openh264enc: fix caps and header buffer leak Part-of: 2021-04-20 19:11:12 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264enc.cpp: openh264enc: fix broken sps/pps header generation This was putting a truncated SPS into the initial header instead of the PPS because it was always reading from the beginning of the bitstream buffer (pBsBuf) and not from the offset where the current NAL is at in the bitstream buffer (psBsBuf + nal_offset). This was broken in commit 17113695. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1576 Part-of: 2021-08-22 00:33:58 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11bufferpool.h: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11desktopdupsrc.cpp: * sys/d3d11/gstd3d11download.cpp: * sys/d3d11/gstd3d11upload.cpp: * sys/d3d11/gstd3d11videosink.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: d3d11bufferpool: Hide buffer_size field from header User can get the required buffer size by using buffer pool config. Since d3d11 implementation is a candidate for public library in the future, we need to hide everything from header as much as possible. Note that the total size of allocated d3d11 texture memory by GPU is not controllable factor. It depends on hardware specific alignment/padding requirement. So, GstD3D11 implementation updates actual buffer size by allocating D3D11 texture, since there's no way to get CPU accessible memory size without allocating real D3D11 texture. Part-of: 2021-08-21 02:20:11 +0900 Seungha Yang * sys/nvcodec/cuda-converter.c: * sys/nvcodec/gstcudaconvert.c: * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: nvcodec: Fix various typos Part-of: 2021-08-21 02:10:37 +0900 Seungha Yang * sys/nvcodec/cuda-converter.h: * sys/nvcodec/gstcudacontext.h: * sys/nvcodec/gstcudafilter.h: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstcudanvrtc.h: * sys/nvcodec/gstcudautils.h: * sys/nvcodec/gstcuvidloader.h: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/gstnvh264dec.h: * sys/nvcodec/gstnvh264enc.h: * sys/nvcodec/gstnvh265dec.h: * sys/nvcodec/gstnvh265enc.h: * sys/nvcodec/gstnvrtcloader.h: nvcodec: Get rid of G_GNUC_INTERNAL Our default symbol visibility is hidden, so G_GNUC_INTERNAL is pointless Part-of: 2021-08-19 16:45:18 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Fix split field handling Split fields ends up on multiple picture and requires accessing the other_field to complete the information (POC). This also cleanup the DPB from non-reference (was not useful) and skips properly merge field instead of keeping them duplicated. This fixes most of interlace decoding seen in fluster. Part-of: 2021-08-19 11:40:22 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codec: h264: Implement support for split fields When a frame is composed of two fields, the base class now split the picture in two. In order to support this, we need to ensure that picture buffer is held in VB2 queue so that the second field get decoded into it. This also implements the new_field_picture() virtual and sets the previous request on the new picture. Part-of: 2021-08-20 11:23:57 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Fix filling weight factors This was a typo, the wrong index was used to set l1 weight (b-frames). Part-of: 2021-08-20 14:34:53 +0200 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Properly initalize GError Part-of: 2021-08-19 21:56:05 +0900 Seungha Yang * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfutils.h: mfvideosrc: Fix for negative MF stride Negative stride value can be used in MediaFoundation to inform whether memory layout is top-down or bottom-up manner. Note that negative stride is allowed only for RGB, system memory. See also https://docs.microsoft.com/en-us/windows/win32/medfound/image-stride Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1646 Part-of: 2021-08-18 11:14:37 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Fix slice header bit size calculation The emulation bytes need to be removed as bytes, not bit. This fixes decoding issues with files that have emulation bytes with the Cedrus driver. Part-of: 2021-08-12 14:08:19 +0200 Víctor Manuel Jáquez Leal * tests/examples/va/multiple-vpp.c: example: va: Add skin tone enhancement. If camera is used as input stream and skin tone parameter is available in vapostproc, and no random changes are enabled, the skin tone will be enabled. Part-of: 2021-08-17 14:04:41 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Use vapostproc as debug category name. Otherwise is difficult to remember the different name. Part-of: 2021-08-12 13:54:34 +0200 Víctor Manuel Jáquez Leal * tests/examples/va/multiple-vpp.c: examples: va: Add random cropping. And remove unused caps filter. Part-of: 2021-07-28 13:04:50 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Disable cropping in pass-through mode. Originally, if a buffer arrives with crop meta but downstream doesn't handle crop allocation meta, vapostproc tried to reconfigure itself to non pass-through mode automatically. Sadly, this behavior was based on the wrong assumption that propose_allocation() vmethod would bring downstream allocation query, but it is not. Now, if vapostproc is in pass-through mode, the cropping is passed to downstream. Pass-through mode can be disabled via a parameter. Finally, if pass-through mode isn't enabled, it's assumed the buffer is going to be processed and, if cropping, downstream already negotiated the cropped frame size, thus it's required to do the cropping inside vapostproc to avoid artifacts because of the size of downstream allocated buffers. Part-of: 2021-08-17 14:54:21 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Update filters update_properties(). Right after instantiating the VA filter and changing the element state, rebuild the image filters. This will fix a regression from f20b3b815, where properties in a gst-launch pipeline are not applied. Part-of: 2021-08-18 09:13:45 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Fix PAL/NTSC widescreen autodetection when switching back to non-widescreen Previously it would only switch to widescreen but never back. Part-of: 2021-07-20 18:15:11 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkvpp.c: msdkvpp: Fix frc from lower fps to higher fps There are three framerate conversion algorithms described in , interpolation is not implemented so far and thus distributed timestamp algorihtm is considered to be more practical which evenly distributes output timestamps according to output framerate. In this case, newly generated frames are inserted between current frame and previous one, timestamp is calculated by msdk API. This implementation first pushes newly generated buffers(outbuf_new) forward and the current buffer(outbuf) is handled at last round by base transform automatically. A flag "create_new_surface" is used to indicate if new surfaces have been generated and then push new outbuf forward accordingly. Considering the upstream element may not be the msdk element, it is necessary to always set the input surface timestamp as same as input buffer's timestamp and convert it to msdk timestamp. Part-of: 2021-05-06 22:22:12 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: improve matching on the correct jitterbuffer The mapping between an RTP session and the SDP m= line is not always the same, especially when BUNDLEing is used. This causes a failure in a specific case where if when bundling, if mline 0 is a data channel, and mline 1 an audio/video section, then retrieving the transceiver at mline 0 (rtp session used) will fail and cause an assertion. This fix is actually potentially a regression for cases where the remote part does not provide the a=ssrc: media level SDP attributes as is now becoming common, especially when simulcast is involved. The correct fix actually requires reading out header extensions as used with bundle for signalling in the actual data, what media and therefore transceiver is being used. Part-of: 2021-08-16 13:45:39 +0800 He Junyan * gst-libs/gst/va/gstvadisplay.h: * sys/va/gstvaav1dec.c: * sys/va/gstvabasedec.c: * sys/va/gstvacaps.c: * sys/va/gstvafilter.c: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: * sys/va/gstvavpp.c: va: Use GST_CAPS_FEATURE_MEMORY_VA to replace "memory:VAMemory". "memory:VAMemory" is a commonly used string which notates our VA-kind memory type. We now used a definition in va lib to replace the simply string usage. Part-of: 2021-08-16 13:32:51 +0800 He Junyan * sys/va/gstvacaps.c: * sys/va/gstvafilter.c: va: Use MEMORY_DMABUF definition to replace "memory:DMABuf" strings. GST_CAPS_FEATURE_MEMORY_DMABUF is already a common definition, we should just use it rather than use the "memory:DMABuf" strings by ourselves. Part-of: 2021-08-09 19:02:56 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/fdkaac/gstfdkaacenc.c: fdkaacdec: Add Converter class to hint gst-validate fdkaacdec have minimal conversion capability, adding the Converter class allow gst-validate to behave properly and not spit an error when it notice that the number of channels or rate miss-match in and out. Same logic as with opusdec, see: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1142> Part-of: 2021-06-09 23:29:43 +0900 Seungha Yang * sys/wasapi2/plugin.c: wasapi2: Increase rank to primary + 1 wasapi2 plugin should be preferred than old wasapi plugin if available because: * wasapi2 supports automatic stream routing, and it's highly recommended feature for application by MS. See also https://docs.microsoft.com/en-us/windows/win32/coreaudio/automatic-stream-routing * This implementation must be various COM threading issue free by design since wasapi2 plugin spawns a new dedicated COM thread and all COM objects' life-cycles are managed correctly. There are unsolved COM issues around old wasapi plugin. Such issues are very tricky to be solved unless old wasapi plugin's threading model is re-designed. Note that, in case of UWP, wasapi2 plugin's rank is primary + 1 already Part-of: 2021-08-12 20:39:24 +0200 Mathieu Duponchelle * ext/closedcaption/gstccconverter.c: ccconverter: fix overflow when not doing framerate conversion When converting from one framerate to another, counters are reset periodically, however when not converting they never are and can_genearte_output ends up making overflow-prone calculations with large values for input_frames and output_frames. Part-of: 2021-08-12 15:26:27 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Don't assume that non-audio medias are video medias when creating transceivers And print the unknown media kind in the logs. Part-of: 2021-08-12 15:25:50 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Use the correct media for deciding the media kind when creating the transceiver from the SDP Part-of: 2021-07-29 21:30:32 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Output the picture directly if already a frame. We forget one case that is the frame and field pictures may be mixed together. For this case, the dpb is interlaced while the last picture may be a complete frame. We do not need to cache that complete picture and should output it directly. Part-of: 2021-08-06 17:11:55 +0800 He Junyan * sys/va/gstvacaps.c: va: caps: Make the template raw video caps classified by features. The current output of raw video caps is not good. When we have multi profiles and each profile support different formats, the output of gst-inspect may like: SRC template: 'src' Availability: Always Capabilities: video/x-raw(memory:VAMemory) width: [ 1, 16384 ] height: [ 1, 16384 ] format: NV12 video/x-raw width: [ 1, 16384 ] height: [ 1, 16384 ] format: NV12 video/x-raw(memory:VAMemory) width: [ 1, 16384 ] height: [ 1, 16384 ] format: P010_10LE video/x-raw width: [ 1, 16384 ] height: [ 1, 16384 ] format: P010_10LE video/x-raw(memory:VAMemory) width: [ 1, 16384 ] height: [ 1, 16384 ] format: P012_LE video/x-raw width: [ 1, 16384 ] height: [ 1, 16384 ] format: P012_LE The gst_caps_simplify does not classify the caps by same features, but just leave them interweaved. We need to handle them manually here, the result should be: SRC template: 'src' Availability: Always Capabilities: video/x-raw width: [ 1, 16384 ] height: [ 1, 16384 ] format: { (string)P010_10LE, (string)P012_LE, (string)NV12 } video/x-raw(memory:VAMemory) width: [ 1, 16384 ] height: [ 1, 16384 ] format: { (string)P010_10LE, (string)P012_LE, (string)NV12 } Part-of: 2021-07-27 13:22:02 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Inherit from GstVaBaseTransform. Part-of: 2021-02-17 17:15:22 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasetransform.c: * sys/va/gstvabasetransform.h: * sys/va/meson.build: va: Add base transform class. This base transform class is a derivable class for VA-based filters, for example vapostproc right now, but it will be used also for future elements such as vadeinterlace. Part-of: 2021-07-27 13:03:37 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvapool.c: * sys/va/gstvapool.h: va: pool: Add gst_va_pool_new_with_config(). It is a function helper. Part-of: 2021-08-10 02:48:01 +0900 Seungha Yang d3d11window: Misc code cleanup * Remove unnecessary upcasting. We are now dealing with C++ class objects and don't need explicit C-style casting in C++ world * Use helper macro IID_PPV_ARGS() everywhere. It will make code a little short. * Use ComPtr smart pointer instead of calling manual IUnknown::Release() Part-of: 2021-08-10 02:48:45 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Fix indent Part-of: 2021-05-28 17:36:15 -0400 Thibault Saunier * ext/openh264/gstopenh264enc.cpp: * ext/openh264/meson.build: openh264: Respect level set downstream We were not specifying the requested level to openh264 meaning that it was choosing anything and was not respecting what was specified\ downstream Part-of: 2021-08-04 15:02:01 +0800 He Junyan * ext/x265/gstx265enc.c: x265: Fix a deadlock when failing to create the x265enc. The GST_ELEMENT_ERROR will call the gst_object_get_path_string and use gst_object_get_parent to get the full object path name, which needs to lock the object. But we are already in a locked context and so this will cause a deadlock, the pipeline can not exit normally. Part-of: 2021-07-22 20:58:02 +0000 R S Nikhil Krishna * ext/rtmp/gstrtmpsrc.c: rtmpsrc: mention setting librtmp flags in docs Part-of: 2021-08-05 23:11:26 +0200 Mathieu Duponchelle * ext/mpeg2enc/gstmpeg2encpicturereader.cc: mpeg2enc: fix interlace-mode detection Previously, the code was always assuming progressive input, fix this by looking at the caps. Part-of: 2021-05-23 19:15:25 +0100 Tim-Philipp Müller * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlhttpsrc.c: * ext/faad/gstfaad.c: * ext/hls/gsthlsdemux.c: * ext/teletextdec/gstteletextdec.c: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst/audiovisualizers/gstspectrascope.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxftypes.c: * gst/rtmp2/rtmp/amf.c: * meson.build: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/jni/gstamc-codeclist-jni.c: * sys/androidmedia/jni/gstamc-format-jni.c: * sys/androidmedia/magicleap/gstamc-format-ml.c: * tests/check/libs/mpegts.c: Use g_memdup2() where available and add fallback for older GLib versions g_memdup() is deprecated since GLib 2.68 and we want to avoid deprecation warnings with recent versions of GLib. Part-of: 2021-08-05 13:02:00 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Fix latency calculation The LTC extra latency is in ms already and not in frames, so multiplying with the framerate will end up with a wrong number. Part-of: 2021-07-18 00:51:04 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: make sure child context is destroyed first The parent context shares some resources with child context, so the child context should be destroyed first, otherwise the command below will trigger a segmentation fault $> gst-launch-1.0 videotestsrc num-buffers=100 ! msdkh264enc ! \ msdkh264dec ! fakesink videotestsrc num-buffers=50 ! \ msdkh264enc ! msdkh264dec ! fakesink Part-of: 2021-08-02 16:22:06 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: d3d11videosink: Fix warning around GstVideoOverlay::expose() When expose() is called, d3d11videosink needs to redraw using cached buffer, so gst_d3d11_window_render() should allow null buffer. Part-of: 2021-07-31 01:05:47 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: d3d11videosink: Forward navigation event without modification Current implementation for translating native coordinate and video coordinate is very wrong because d3d11videosink doesn't understand native HWND's coordinate. That should be handled by GstD3D11Window implementation as an enhancement. Part-of: 2021-07-31 00:59:14 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Add support for GstVideoOverlay::set_render_rectangle Inspired by an MR https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2382 The idea is that we can make use of MoveWindow() in WIN32 d3d11window implementation safely because WIN32 d3d11window implementation creates internal HWND even when external HWND is set and then subclassing is used to draw on internal HWND in any case. So the coordinates passed to MoveWindow() will be relative to parent HWND, and it meets well to the concept of set_render_rectangle(). On MoveWindow() event, WM_SIZE event will be generated by OS and then GstD3D11WindowWin32 implementation will update render area including swapchain correspondingly, as if it's normal window move/resize case. But in case of UWP (CoreWindow or SwapChainPanel), we need more research to meet expected behavior of set_render_rectangle() Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1416 Part-of: 2021-07-29 18:05:35 +0800 He Junyan * sys/va/gstvavp8dec.c: va: vp8: fix the overflow in _fill_quant_matrix(). The gint8 of qi and qi_base may overflow when calculation the matrix parameters and change the decoding result. Part-of: 2021-06-21 00:19:17 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11format.h: * tests/check/elements/d3d11colorconvert.c: d3d11: Disable packed and subsampled YUV formats Direct3D11 sampler doesn't support them very well, and conversion outputs usually result in poor visual quality with our shader code. Should disable support for such formats for now Part-of: 2021-07-26 16:43:47 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsdemux/tsdemux.c: tsdemux: Notify when ignore_pcr is set Part-of: 2021-07-27 23:53:06 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: fix CDP padding detection While a cc_data_pkt with cc_valid 0 should be considered padding, it might be followed up by valid DTVCC packets, and should not cause the whole CDP packet to get discarded. Part-of: 2021-07-27 12:51:08 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Improve the find_first_field_picture(). We need to consider the first field of the last picture when the last picture can not enter the DPB. Another change is, when prev field's frame_num is not equal to the current field's frame_num, we should also return FASLE because it is also a case of losing some field. Part-of: 2021-07-27 12:16:13 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: consider the last field when add picture to DPB. There are cases that the first field of the last picture is not a ref but the second field is a ref. We need to add both of them because the bumping always needs a complete frame in the DPB. Part-of: 2021-07-27 10:51:03 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Consider the field case when directly output. For interlaced streams, it is also possible that the last frame is not able to be inserted into DPB when the DPB is full and the last frame is a non ref. For this case, we need to hold a extra ref for the first field of the last frame and wait for the complete frame with both top and bottom fields. For the progressive stream, the behaviour is unchanged. Part-of: 2021-07-26 01:16:34 +0800 He Junyan * gst-libs/gst/codecs/gsth264picture.c: codecs: h264dec: Fix a error print of dpb_add. When the dpb is interlaced, the max size should be 2*dpb->max_num_frames, correcting the error print info for that. Part-of: 2021-07-28 16:11:36 +0900 Seungha Yang * sys/decklink/linux/DeckLinkAPIDispatch.cpp: decklink: Don't print error for dlopen failure This is not a fatal error on systems without decklink Part-of: 2021-07-27 12:21:41 +0200 Imanol Fernandez * gst-libs/gst/play/gstplay.c: * gst-libs/gst/player/gstplayer.c: player: Add static keyword to _config_quark_table Part-of: 2021-07-27 14:52:38 +1000 Matthew Waters * sys/applemedia/meson.build: * sys/applemedia/videotexturecache-vulkan.mm: applemedia: silence a couple of MoltenVK warnings Part-of: 2021-07-27 11:49:47 -0400 Nicolas Dufresne * gst/debugutils/gstfakeaudiosink.c: * gst/debugutils/gstfakevideosink.c: debugutils: Only proxy the properties once The needed once call was removed accidently during porting. This was catch by the CI as memory leaks. Related to !2426 Part-of: 2021-07-27 12:13:43 +0200 Edward Hervey * gst/mxf/mxfd10.c: mxf: Handle D10 "picture only" variant Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/80 Part-of: 2021-07-24 13:19:39 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: filter: refactor convert_surface() to process() The idea of this change is to add, in the future, process_with_generator(), when multiple input surfaces are processed, for blending. Part-of: 2021-07-18 12:46:08 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: filter: Refactor set_formats() to set_video_info(). Part-of: 2021-07-18 17:13:16 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: vapostproc: Don't add video alignment option in buffer pool. vapostproc will not call gst_buffer_pool_config_set_video_alignment(), thus this option is not required. Part-of: 2021-07-27 09:37:49 +0200 Edward Hervey * gst/mxf/mxfvc3.c: mxfvc3: Also accept clip-wrapped vc-3 We can now handle this fine Part-of: 2021-07-27 07:59:52 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Handle EOS with non-frame wrapping When reaching the end of non-frame wrapping track in pull mode, we want to force the switch to the next non-eos pad. This is similar to when we exceed the maximum drift. Fixes issues on EOS where not everything would be drained out and stray errors would pop out. Part-of: 2021-07-25 07:52:06 +0200 Edward Hervey * docs/plugins/gst_plugins_cache.json: * gst/mxf/mxfdemux.c: mxfdemux: More granular interleaved content handling An interleave of 500ms can be way too big for some downstream queueing elements. Instead use a smaller 100ms interleave and silence the various warnings about resyncing (it's normal) Part-of: 2021-07-23 09:36:10 +0100 Philippe Normand * gst/debugutils/gstfakeaudiosink.c: * gst/debugutils/gstfakesinkutils.c: * gst/debugutils/gstfakesinkutils.h: * gst/debugutils/gstfakevideosink.c: * gst/debugutils/meson.build: debugutils: De-duplicate proxy_properties function to a new utils module Part-of: 2021-06-08 01:40:34 +0900 Seungha Yang * meson_options.txt: * sys/asio/gstasiodeviceprovider.cpp: * sys/asio/gstasiodeviceprovider.h: * sys/asio/gstasioobject.cpp: * sys/asio/gstasioobject.h: * sys/asio/gstasioringbuffer.cpp: * sys/asio/gstasioringbuffer.h: * sys/asio/gstasiosink.cpp: * sys/asio/gstasiosink.h: * sys/asio/gstasiosrc.cpp: * sys/asio/gstasiosrc.h: * sys/asio/gstasioutils.cpp: * sys/asio/gstasioutils.h: * sys/asio/meson.build: * sys/asio/plugin.c: * sys/meson.build: Introduce Steinberg ASIO (Audio Streaming Input/Output) plugin Adds a new plugin for ASIO devices. Although there is a standard low-level audio API, WASAPI, on Windows, ASIO is still being broadly used for audio devices which are aiming to professional use case. In case of such devices, ASIO API might be able to show better quality and latency performance depending on manufacturer's driver implementation. In order to build this plugin, user should provide path to ASIO SDK as a build option, "asio-sdk-path". Part-of: 2021-06-06 22:32:08 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/audiolatency/gstaudiolatency.c: * gst/audiolatency/gstaudiolatency.h: audiolatency: Expose samplesperbuffer property ... for user to be able to set the number of required samples. For instance, our default value is 240 samples (about 5ms latency in case that sample rate is 48000), which might be larger than actual buffer size of audio capture device. Part-of: 2021-07-23 22:02:05 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: let print_ref_pic_list_b print the correct list name. The print_ref_pic_list_b now not only needs to trace the ref_pic_list_b0/1, but also need to trace the ref_frame_list_0_short_term. We need to pass the name directly to it rather than an index to refer to ref_pic_list_b0/1. Part-of: 2021-07-23 12:31:17 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Fix a typo in construct_ref_field_pic_lists_b. The array sort of ref_frame_list_0_short_term has some typo. The typo makes this list not in the POC ascend order and generate wrong decoding result for interlaced streams. Part-of: 2021-07-15 05:12:37 -0700 Devarsh Thakkar * sys/kms/gstkmssink.c: kmssink: Fix fallback path for driver not able to scale scenario When driver return error on update plane request, kmssink disables the scaling and retries plane update. While doing so kmssink was matching the source rectangle dimensions to the target rectangle dimensions which were calculated as per scaling but this is incorrect, instead what we want here is that target rectangle dimensions should match the source rectangle dimensions as scaling is disabled now and so we match result rectangle dimensions with source rectangle dimensions. While at it, also match the result rectangle coordinates for horizontal and vertical offsets with source rectange coordinates, as since there is no scaling being done so no recentering is required. Part-of: 2021-07-23 16:49:49 +0800 He Junyan * gst/videoparsers/gstvp9parse.c: videoparsers: vp9: Need to process the first frame even not key. Some cut VP9 streams begin with a non key frame. The current code just bail out the parse_process_frame() if not a key frame. Because of this, we do not set the valid caps before we push the data of the first frame(even this first frame will be discarded by the downstream decoder because it is not a key frame). The pipeline such as: gst-launch-1.0 filesrc location=some.ivf ! ivfparse ! vp9parse ! vavp9dec ! fakesink will get a negotiation error and the pipeline can not continue. The correct behaviour should be: the decoder discard the first frame and continue to decode later frames successfully. So, when the parse does not have valid stream info(should be the first frame case), we should continue and report caps. Part-of: 2021-07-21 19:40:17 +0530 Nirbheek Chauhan * gst/audiolatency/gstaudiolatency.c: audiolatency: Handle audio buffers with invalid duration pipewiresrc outputs audio buffers without a valid duration, so we need to calculate it manually in that case. Upstream issue: https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/1438 Part-of: 2021-07-22 22:00:38 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Do not assign the frame->output_buffer until output_picture. We may need to drop the slices such as RASL pictures with the NoRaslOutputFlag, so the current picture of h265decoder may be freed. We should not assign the frame-> output_buffer too early until we really output it. Or, the later coming slices will allocate another picture and trigger the assert of: gst_video_decoder_allocate_output_frame_with_params: assertion 'frame->output_buffer == NULL' failed Part-of: 2021-07-22 15:14:26 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle PCR-less streams Some programs specify a PCR PID but don't actually store any PCR values, or are way too far apart. In order to gracefully handle those situations, we will queue up to a certain amount of pending buffers before deciding to give up on that PCR PID and not use any (i.e. using DTS/PTS values as-is) Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1629 Part-of: 2021-07-22 10:44:27 +0800 He Junyan * sys/va/gstvah265dec.c: va: H265: Add odd bit depth and chroma depth in get_rtformat. In H265, the stream may have odd bit depth such as 9 or 11. And the bit depth of luma and chroma may differ. For example, the stream with luma depth of 8 and chroma depth of 9 should use the 10 bit rtformat as the decoded picture format. Part-of: 2021-07-21 00:04:18 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264dec: Improve the algorithm for low latency mode. In low_latency mode, try to bump the picture as soon as possible without the frames disorder: 1. We can directly output the continuous non-reference frame. 2. Consider max_num_reorder_frames, which is special useful for I-P mode. 3. Consider the leading pictures with negative POC. 4 Output small POC pictures when non-reference frame comes. 4. Output the POC increment<=2 pictures. This is not 100% safe, but in practice this condition can be used. Part-of: 2021-07-20 23:49:12 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264dec: Add help function of dpb_set_max_num_reorder_frames. The max_num_reorder_frames can be useful for bump check. We store it in the DPB and no need for the decoder now. Part-of: 2021-07-20 23:36:38 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264dec: Add a flag to record whether picture is reference. The picture->ref field will change from time to time according to decoder's state and reference sliding window. We need another flag to record whether the picture is a reference picture when it is created, and this can help the bumping check. Part-of: 2021-07-12 00:31:54 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Change the order of dpb_add and dpb_bump. The current behavior is different from the SPEC. We should check and bump the DPB or drain the DPB before we insert the current picture into it. This may cause the output picture disorder. Part-of: 2021-07-12 00:06:49 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264dec: Modify the DPB need bump check. Accord to spec, we should not add the current picture into the DPB when we check whether it needs to bump, so the checks of the IDR and the "memory_management_control_operation equal to 5" are no needed. And the spec also says that the DPB only needs to bump when there is no empty frame buffer left(We handle the IDR cases in other places). We need to follow that and the max_num_reorder_frames is useless. We also minus 1 in has_empty_frame_buffer because the current frame has not been added yet. Part-of: 2021-07-12 00:01:58 +0800 He Junyan * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264dec: Make dpb_has_empty_frame_buffer a codecs API. Part-of: 2021-07-05 23:53:25 +0800 He Junyan * gst-libs/gst/codecs/gsth264picture.c: codecs: h264dec: Set picture to a small poc when mem_mgmt_5. When current frame memory_management_control_operation equal to 5, that means we need to drain the dpb and the current picture act as an IDR frame. So it should have smaller poc than the later pictures to ensure the output order. Part-of: 2021-07-15 11:12:01 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Make gst-indent on the CI happy grmbl Part-of: 2021-07-15 10:59:39 +0200 Edward Hervey * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Handle non-frame wrapping * If we have an index table for non-framed essence, we can handle it * The demuxer has a state which indicates whether it will next fetch a KLV or data contained *within* a KLV. * The position on Essence Tracks always correspond to the next entry to fetch, demuxer offset will be skipped accordingly whenever we switch between partitions (in case of resyncs). A copy of the main clip/custom KLV for that partition is kept to track the position within the essence of that partition. * For clip/custom-wrapped raw audio, if the edit rate is too small (and would cause plenty of tiny buffers to be outputted), specify a minimum number of edit units per buffer. Part-of: 2021-07-15 10:45:46 +0200 Edward Hervey mxfdemux: Use KLV for position/content tracking * For pull-based, this avoids pulling content if it's not needed (ex: skipping filler packet, not downloading the content if we only need to know if/where an essence packet is, etc...). Allows reducing i/o usage to the minimum. * This also allows doing sub-klv position tracking, and opens the way for non-frame-wrapping handling Part-of: 2021-07-15 10:28:31 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Output the topology of the file in debug logs This provides a summary of the number/type of tracks in the Material and File Packages Part-of: 2021-07-15 10:16:34 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Refactor pull seek In order to figure out the exact start position (backed by a keyframe) accross all tracks, we first figure out the backing keyframe position, and *then* seek to that position. Avoids ending up in situations where we would properly seek to the backing keyframe on video ... but not on the audio streams (they would have been set to the original non-keyframe position). Fixes key-unit seeking. Part-of: 2021-07-14 07:58:01 +0200 Edward Hervey * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfessence.h: mxfaes-bwf: Handle new custom-constant-sized variant Defined by Amendment 2:2013 to SMPTE ST 382:2007 Also define a new "UNKNOWN" wrapping type to make the difference with known wrapping types Part-of: 2021-07-14 07:54:38 +0200 Edward Hervey * gst/mxf/mxfmpeg.c: mxfmpeg: Fix essence coding detection The picture essence coding matching was wrong. Use the proper "base" MXFUL for video mpeg compression for matching. Also handle the case where some old files would put the essence container label in the essence coding field Part-of: 2021-07-01 08:35:01 +0200 Edward Hervey * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxftypes.c: * gst/mxf/mxftypes.h: mxfdemux: Refactor index table and offset handling * Streamline offset <=> entry handling. Historically the demuxer didn't support information from index tables and stored the discovered information in an array per track. When index table support was added, a parallel system was setup for that relationship. This commit unifies this into one system with the `find_edit_entry()` and `find_entry_for_offset()` functions. * By extension, per-track offset entry tables are only created/used if no index table is present for those tracks. * Use index table information as-is. The index table system from MXF is quite complex and there are various ways to use the information contained within. Instead of converting that information we store the data from the tables as-is and extract the needed information when needed. * Handle index tables without entries (i.e. all content package units are of the same size). * Allow collecting index table segments as we go instead of only once if a random-index-pack is present. This also improves support of some files in push-mode. * When searching for keyframe entries, use the keyframe_offset if present (speeds up searching). * For interleaved content (i.e. several tracks in the sample essence container), we use a system to be able to identify the position of each track in the delta entries of index tables. * Handle temporal offset only on tracks which *do* need it (as specified in the delta entries of the index tables). If present, those offsets are stored in a pre-processed table which allows computing PTS from DTS with a simple offset. * Add a quirk for files which are known to be have wrongly stored temporal offsets. * Overall opens the way to handle more types of MXF files, especially those with non-frame-wrapping. Part-of: 2021-06-29 15:29:36 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Drop duplicate seek events Part-of: 2021-06-24 09:53:08 +0200 Edward Hervey * gst/mxf/mxftypes.c: mxf: Improve index entry debug log By printing out the various known flag values Part-of: 2021-06-23 09:08:33 +0200 Edward Hervey * gst/mxf/mxfmetadata.c: mxf: Demote error message when resolving valid empty reference A Source Clip can have zero'd SourcePackageID and SourceTrackID, this indicates it terminates the source reference chain Part-of: 2021-06-17 16:38:54 +0200 Edward Hervey * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Handle temporal reordering shift This is similar to how the same issue was handled in qtdemux. In order for the "DTS <= PTS" constraint to be respected, we calculate the maximum temporal reordering that can happen (via index tables). If there is a non-0 temporal reordering, we: * Shift all outgoing PTS by that amount * Shift segment for that stream by that amount * Don't modify DTS (i.e. they might end up having negative running-time, before the start of the segment) Also ensure all entries have a valid PTS set, previously this wouldn't be set for entries with a temporal offset of 0. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/584 (and maybe a lot of other issues) Part-of: 2021-07-17 20:49:15 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavp9dec.c: va: vp9dec: Minor cleanups. Added a comment with a future to-do, enhanced another comment and fixed a typo in an error log message. Part-of: 2021-07-17 20:48:21 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: va: decoder: Group decoder methods. Move up gst_va_decoder_get_config() to group decoders function in the same file area. Part-of: 2021-07-17 20:45:48 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaav1dec.c: * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Refactor _format_changed() to _config_is_equal(). Change gst_va_decoder_format_changed() to gst_va_decoder_config_is_equal(), which is more similar with other GStreamer API. The function call is replaced but it has to be negated because the return value is the opposite. Part-of: 2021-07-17 20:37:52 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvavp9dec.c: va: Refactor _change_resolution() to _update_frame_size(). Rename gst_va_decoder_change_resolution() to gst_va_decoder_update_frame_size() which resembles gst_va_decoder_set_frame_size(). Also added a comment to clarify the function use and makes more specific the error message. Part-of: 2021-07-17 20:29:45 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaav1dec.c: * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Refactor _set_format() to _set_frame_size(). Renamed gst_va_decoder_set_format() to gst_va_decoder_set_frame_size_with_surfaces() which resembles better the passed parameters. Internally it creates the vaContext. Added gst_va_decoder_set_frame_size() which is an alias of gst_va_decoder_set_frame_size_with_surfaces() without surfaces. This is the function which replaces gst_va_decoder_set_format() where used. Part-of: 2021-07-16 15:24:11 +0800 He Junyan * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * sys/nvcodec/gstnvh265dec.c: codecs: h265decoder: Fix a typo of NumPocTotalCurr when process ref pic list. We should use the NumPocTotalCurr value stored in decoder, which is a calculated valid value, rather than use the invalid value in the slice header. Most of the time, the NumPocTotalCurr is 0 and make the tmp_refs a very short length, and causes the decoder's wrong result. By the way, the NumPocTotalCurr is not the correct name specified in H265 spec, its name should be NumPicTotalCurr. We change it to the correct name. Part-of: 2021-07-16 13:21:11 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Do not add non reference frames into ref list. The VA's ReferenceFrames should only contain the reference frame, we should not add the non reference frames into this list. Part-of: 2021-07-15 19:44:21 +0900 Seungha Yang * tests/check/meson.build: tests: Enable closedcaption test on Windows ... if closedcaption plugin is available Part-of: 2021-07-15 16:44:18 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Disable RGB format support Some GPUs support BGRA format and it will be converted to subsampled YUV format by GPU internally. Disable this implicit conversion since the conversion parameters such as input/output colorimetry are not exposed nor it's written in bitstream (e.g., VUI). We prefer explicit conversion via our conversion elements. Part-of: 2021-07-15 21:32:54 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Fix a temp var overflow bug when write pred weight table. The temp guint8 var of delta_chroma_offset_l0 and delta_chroma_offset_l1 can not cover the full range of delta_chroma_weight_l0/1 in the slice header. When overflow happens, the decoder result is wrong. Part-of: 2021-07-12 12:08:20 +0100 Philippe Normand * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dash: Store entire ContentProtection node in protection event data Some manifests use the ContentProtection node to store additional information such as the license server url. Our MPD parser used to process the ContentProtection node, extracting Playready PSSH boxes. However for other DRM systems, only the `value` attribute was passed down to the protection event, so for example, Widevine data was not parsed at all and "Widevine" was passed to the event, which is not very useful for decryptors that require a PSSH init data. Parsing should now be done by decryptors which will receive the entire ContentProtection XML node as a string. This gives more "freedom" to the decryptor which can then detect and parse custom nodes as well. Part-of: 2021-07-14 22:36:52 +0800 He Junyan * sys/va/gstvavp9dec.c: va: vp9dec: We need to check the resolution changes for every frame. The VP9 streams have the ability to change the resolution dynamically at any time point. It does not send ad KEY frame before change the resolution, even the INTER frame can change the resolution immediately. So we need to check the resolution change for each frame and do the re-negiotiation if needed. Some insaned stream may play in resolution A first and then dynamically changes to B, and after 1 or 2 frames, it use a show_existing_frame to repeat the old frame of resolution A before. So, not only new_picture(), but also duplicate_picture() need to check this. Part-of: 2021-07-14 14:43:51 +0800 He Junyan * sys/va/gstvavp9dec.c: va: vp9dec: Do not re-create context for dynamical resolution change. The driver for VP9 should have the ability to handle the dynamical resolution changes. So if only the resolution changes, we should not re-create the config and context in negotiation. Part-of: 2021-07-14 14:27:34 +0800 He Junyan * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: va: decoder: Add helper functions to get and change the resolution. Some codecs such as VP9, its config and context have the ability to dynamically. When we only change the width and height, no need to re-create the config and context. The helper function can just change the resolution without re-creating config and context. Part-of: 2021-05-29 06:03:26 +1000 Jan Schmidt * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: Quieten "missed PCR" warnings in VBR mode. When the muxer is operating in VBR mode, it's kind of expected for now that we might not put the PCR in exactly the right place, because the muxer doesn't schedule packets that way. In that case don't warn constantly about the PCR ending up a few ms off target. Part-of: 2021-07-13 21:38:10 +1000 Matthew Waters * gst/rtmp2/gstrtmp2src.c: rtmp2src: workaround a GLib race when destroying a GMainContext/GSource https://gitlab.gnome.org/GNOME/glib/-/issues/803 Basically, if destruction of a GSource and its associated GMainContext are not synchronised, Then the GSource destruction can access freed GMainContext resources and cause a crash. This is not super common but can happen. Part-of: 2021-07-08 14:25:23 +0200 Mads Buvik Sandvei * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Always free messages while parsing SEI Part-of: 2021-07-14 19:39:11 +0900 Seungha Yang * gst/videoparsers/gstvp9parse.c: vp9parse: Skip parsing decode-only frame Decode-only frame (i.e., show_existing_frame == 1) doesn't hold any valid information apart from the index of frame to be duplicated. Part-of: 2021-07-13 16:55:30 +0100 Philippe Normand * ext/wpe/gstwpesrcbin.cpp: wpesrcbin: Use gst_buffer_new_memdup() g_memdup() is deprecated. Part-of: 2021-07-12 23:25:02 +0800 He Junyan * gst-libs/gst/codecs/gstvp9statefulparser.c: codecs: vp9statefulparser: not init segmentation_abs_or_delta_update. The segmentation_abs_or_delta_update is a stateful var, it should not be inited every time when parsing the segmentation. Part-of: 2021-07-12 23:21:29 +0900 Seungha Yang * tests/check/elements/wasapi2.c: tests: wasapi2: Add more device reuse cases Part-of: 2021-07-12 22:17:22 +0900 Seungha Yang * sys/wasapi2/gstwasapi2ringbuffer.cpp: wasapi2ringbuffer: Close IAudioClient on GstAudioRingBuffer::release IAudioClient interface is not reusable once it's initialized. So we should close the handle and reopen it. Part-of: 2021-07-13 03:35:22 +0900 Seungha Yang * sys/wasapi2/gstwasapi2ringbuffer.cpp: wasapi2ringbuffer: Run gst-indent Part-of: 2021-07-12 09:01:06 -0300 Daniel Almeida * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: fix underflow in last_frame_idx The spec mandates this field be parsed using unsigned arithmetic. Nevertheless, av1parser will use -1 apparently as an uninitialized value in gst_av1_parse_frame_header. This immediately underflows last_frame_idx though, since its type was defined as guint8. Fix this by converting to gint8. Part-of: 2021-03-18 10:55:58 +0100 Jakub Janků * sys/wasapi/gstwasapisink.c: wasapi: fix reinit of audioclient in prepare() When the sink goes from PLAYING to READY and then back to PLAYING, the initialization of the audioclient in prepare() fails with the error AUDCLNT_E_ALREADY_INITIALIZED. As a result, the playback stops. To fix this, we need to drop the AudioClient in unprepare() and grab a new one in prepare() to be able to initialize it again with the new buffer spec. Part-of: 2021-03-17 22:45:57 +0100 Jakub Janků * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: split gst_wasapi_util_get_device_client() The functionality now resides in gst_wasapi_util_get_device() and gst_wasapi_util_get_audio_client(). This is a preparatory patch. It will be used in the following patch to init/deinit the AudioClient separately from the device. Part-of: 2021-07-11 18:14:46 +0200 Jakub Janků * tests/check/elements/wasapi.c: * tests/check/meson.build: tests: wasapi: check PLAYING -> READY -> PLAYING Such sequence of state changes is valid and no error should happen. At the moment, the test fails. Following patches aim to fix it. Partially based on the code in tests/check/elements/wasapi2.c Part-of: 2021-07-09 14:55:43 +0200 Guido Günther * gst-libs/gst/play/gstplay-signal-adapter.c: play: Emit correct signal SIGNAL_MEDIA_INFO_UPDATED should be emitted on media info changes, not SIGNAL_VIDEO_DIMENSIONS_CHANGED. Part-of: 2021-03-05 09:18:15 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/vulkan/gstvkcommandpool.h: * gst-libs/gst/vulkan/gstvkdescriptorcache.h: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkfullscreenquad.h: * gst-libs/gst/vulkan/gstvkhandlepool.h: * gst-libs/gst/vulkan/gstvkinstance.h: * gst-libs/gst/vulkan/gstvkphysicaldevice.h: * gst-libs/gst/vulkan/gstvkqueue.h: * gst-libs/gst/vulkan/gstvkswapper.h: * gst-libs/gst/vulkan/gstvktrash.h: * gst-libs/gst/vulkan/gstvkwindow.h: vulkan: Declare missing auto-pointer cleanup functions. Also removed a couple guards since, given the glib dependency, they are set. Part-of: 2021-03-03 12:54:20 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/vulkan/gstvkvideofilter.c: vulkan: filter: Use filter variable name for choosing queue. Part-of: 2021-03-03 08:50:13 +0100 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: * ext/vulkan/vksink.c: vulkansink: Fix element metadata. Part-of: 2021-06-25 09:19:25 +0800 Yinhang Liu * sys/msdk/gstmsdkvpp.c: msdkvpp: use NV12 as default format on srcpad By default, sinkpad is NV12 format and srcpad is BGRA format, the different format will trigger an implicit format conversion in msdkvpp, which will cause performance drop. Part-of: 2021-06-01 08:40:17 +0900 Dominique Martinet * gst-libs/gst/wayland/wayland.c: gst-libs/gst/wayland: handle display passing better failure to pass a display in 'handle' would result in uninitialized value being returned, which would often segfault later down the road when trying to initialize gstreamer context with it. Check the return value of gst_structure_get() to make sure we return valid data. Furthermore, the gstglimagesink in gst-plugins-base also has a similar mechanism but uses 'display' as field name to pass the value; instead of requiring the application to behave differently depending on what sink was automatically detected just try to read both values here, with display being the new default. Part-of: 2021-07-08 14:46:11 +0100 Philippe Normand * ext/dash/gstdashdemux.c: dashdemux: Log protection events on corresponding pad GstDashDemuxStream is not a GstObject, so use its pad as associated object when emitting log messages. Part-of: 2021-07-08 16:49:27 +0800 He Junyan * sys/va/gstvafilter.c: va: vpp: Improve the color properties setting. The current setting of color properties are not very correct and we will get some kind of "unknown Color Standard for YUV format" warnings printed out by drivers. The video-color already provides some standard APIs for us, and we can use them directly. We also change the logic to: Finding the exactly match or explicit standard first. If not found, we continue to find the most similar one. Part-of: 2021-07-08 19:03:06 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfsourcereader.cpp: mfvideosrc: Fix negotiation when interlace-mode is specified Given caps does not need to be strictly subset of device caps. Allow accept it if device caps and requested caps can intersect Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1619 Part-of: 2021-07-08 02:24:18 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: mark field 0 as valid when generating padding CDP Part-of: 2021-07-06 17:14:21 +0900 Seungha Yang * sys/mediafoundation/gstmfvideobuffer.cpp: * sys/mediafoundation/gstmfvideobuffer.h: mfvideobuffer: Don't error for unexpected Unlock/Unlock2D call Some GPU vendor's MFT implementation calls IMFMediaBuffer::Unlock() without previous IMFMediaBuffer::Lock() call. Which is obviously driver bug but we can ignore the Unlock call. Part-of: 2021-06-30 10:30:43 +0200 Stéphane Cerveau * ext/dash/gstdashsink.c: dashsink: fix crash with no pad name for representation if there is no pad name, the representation id was NULL, causing a crash when writing the mpd file. gst-launch-1.0 videotestsrc num-buffers=900 ! video/x-raw, width=800, height=600, framerate=30/1 ! x264enc ! video/x-h264, profile=high ! dashsink Part-of: 2021-03-09 11:40:43 +0100 Stéphane Cerveau * docs/plugins/gst_plugins_cache.json: * ext/dash/gstdashsink.c: dashsink: Add signals for allowing custom playlist/fragment Instead of always going through the file system API we allow the application to modify the behaviour. For the playlist itself and fragments, the application can provide a GOutputStream. In addition the sink notifies the application whenever a fragment can be deleted. Following the HLS change: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/918 Part-of: 2021-07-06 14:06:24 +0800 He Junyan * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265dec: Disable the POC order warning for negative POC. There may be leading frames after the IRAP frames, which has negative POC. This kind of frames are allowed and they will be displayed before the IRAP frame. So the warning should not be triggered for them. Init the last_output_poc to G_MININT32 can avoid this. Part-of: 2021-07-06 13:38:16 +0800 He Junyan * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264dec: Disable the POC order warning for negative POC. There may be leading frames after the IDR frame, which has negative POC. This kind of frames are allowed and they will be displayed before the IDR frame. So the warning should not be triggered for them. Init the last_output_poc to G_MININT32 can avoid this. Part-of: 2021-06-25 15:57:03 +0200 Jan Alexander Steffens (heftig) * gst/interlace/gstinterlace.c: interlace: Push the reconfigure event in the right direction Part-of: 2021-07-05 15:44:34 +0800 He Junyan * sys/va/gstvabasedec.c: va: basedec: Fix some artifact when do the crop copy. The default video converter setting will add some artifact into the picture for 10/12 bits conversion. This make the MD5 checksum change from the original picture. Part-of: 2021-07-05 02:05:03 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Enable zero-copy for Qualcomm Qualcomm GPU works fine with current implementation now. Noticeable difference between when it was disabled and current d3d11 implementation is that we now support GstD3D11Memory pool, so there will be no more frequent re-binding decoder surface anymore. Part-of: 2021-07-05 07:42:39 +0200 Edward Hervey * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: mxfdemux: Check validity of interleaved File Package As specified by the S377 MXF core specification, if a file package has interleaved content, then all tracks must be using the same Edit Rate Part-of: 2021-07-05 01:54:02 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.cpp: d3d11vp9dec: Fix for incorrect use_prev_in_find_mv_refs setting Set use_prev_in_find_mv_refs depending on context. The value seems to be used by AMD and Qualcomm (Intel and NVIDIA doesn't make difference as per test) Part-of: 2021-05-11 14:07:14 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvpp.c: * sys/msdk/msdk.c: * sys/msdk/msdk_libva.c: gstmsdkvpp: add RGBP and BGRP in src pad It requires MFX version 2.4+ Part-of: 2021-07-04 00:36:27 +0900 Seungha Yang * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmftransform.cpp: mediafoundation: Port to IID_PPV_ARGS Make code short where possible Part-of: 2021-07-04 00:24:09 +0900 Seungha Yang * sys/mediafoundation/gstmfaacenc.cpp: * sys/mediafoundation/gstmfmp3enc.cpp: mfaudioenc: Remove pointless enumerating for hardware audio encoder Hardware audio encoder can exist in theory, but it's untested and we are not sure whether it can be preferred over software implementation which is implemented by MS Part-of: 2021-07-03 23:12:08 +0900 Seungha Yang * sys/mediafoundation/gstmfaacenc.cpp: * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfmp3enc.cpp: * sys/mediafoundation/gstmfvp9enc.cpp: mediafoundation: Fix typos Part-of: 2021-07-03 22:56:48 +0900 Seungha Yang * sys/mediafoundation/gstmfaacenc.cpp: * sys/mediafoundation/gstmfaudioenc.cpp: * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfmp3enc.cpp: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfvideobuffer.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/mediacapturewrapper.cpp: mediafoundation: Run gst-indent Part-of: 2021-06-26 21:42:37 +0800 He Junyan * sys/va/gstvah265dec.c: va: Consider the compatibility when we get_profile() for H265 decoder. Adding the compatile profiles when we decide the final profile used for decoding. The final profile candidates include: 1. The profile directly specified by SPS, which is the exact one. 2. The compatile profiles decided by the upstream element such as the h265parse. Part-of: 2021-06-27 15:34:28 +0800 He Junyan * gst/videoparsers/gsth265parse.c: h265parse: Add special profile case for profile_idc 0. This is a work-around to identify some main profile streams having wrong profile_idc. There are some wrongly encoded main profile streams which doesn't have any of the profile_idc values mentioned in Annex-A, instead, general_profile_idc has been set as zero and the general_profile_compatibility_flag[general_profile_idc] is TRUE. Assuming them as MAIN profile for now. Part-of: 2021-06-26 15:11:47 +0800 He Junyan * gst/videoparsers/gsth265parse.c: h265parse: Map -intra profiles to non-intra compatible profiles. All the -intra profiles can map to non-intra profiles as compatible profiles, except the monochrome case for main and main-10. Part-of: 2021-07-01 19:27:28 +0800 He Junyan * sys/va/gstvavp9dec.c: va: vp9dec: update segmentation and store the result. The segmentation is stateful, its information may depend on the previous segmentation setting. For example, if loop_filter_delta_enabled is TRUE, the filter_level[GST_VP9_REF_FRAME_INTRA][1] should inherit the previous frame's value and can not be calculated by the current frame's segmentation data only. So we need to maintain the segmentation state inside the vp9 decoder and update it when the new frame header comes. We also fix the CLAMP issue of lvl_seg and intra_lvl because of their wrong uint type here. Part-of: 2021-06-30 15:23:15 +0800 He Junyan * gst-libs/gst/codecs/gstvp9statefulparser.c: codecparsers: vp9statefulparser: Fix the gst_vp9_get_qindex clamp issue. The alternate quantizer is a delta value and should be int type. We mark it wrongly as uint, that will make CLAMP (data, 0, 255) always choose 255 rather than 0 if the data < 0. Part-of: 2021-06-30 15:32:42 +0800 He Junyan * gst-libs/gst/codecparsers/gstvp9parser.h: codecparsers: vp9parser: Use macro to define the size of filter_level in Segmentation. Part-of: 2021-06-30 12:15:42 +0800 He Junyan * gst-libs/gst/codecparsers/gstvp9parser.h: codecparsers: vp9parser: Delete the verbose redefine of MAX_LOOP_FILTER. Part-of: 2021-06-29 23:21:24 +0800 He Junyan * sys/va/gstvaallocator.c: va: allocator: dma: Fail when mapping the non-linear buffer. The current way of DMA buffer mapping is simply forwarding the job to parent's map function, which is a mmap(). That can not handle the non-linear buffers, such as tiling, compressed, etc. The incorrect mapping of such buffers causes broken images, which are recognized as bugs. We should directly block this kind of mapping to avoid the misunderstanding. Part-of: 2021-07-02 13:10:25 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: fix framerate caps negotiation from non-cdp to cdp We can only convert from non-cdp to cdp within the confines of valid cdp framerates. The existing caps negotiation code was allowing any framerate to convert to a cdp output which is incorrect and would hit an assertion later. Part-of: 2021-06-09 15:16:39 +0800 He Junyan * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Consider the conformance window changes when new_sequence(). The change of conformance_window_flag and crop windows size also has impact on the output resolution and caps. So it deserves a trigger of new_sequence() to notify the sub class to update caps and pool. Part-of: 2021-06-16 01:07:09 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Don't hold reference to GstVideoCodecFrame for dropped picture We are dropping RASL (Random Access Skipped Leading picture) which is associated with an IRAP (Intra Random Access Picture) that has NoRaslOutputFlag equal to 1, since the RASL picture will not be outputted and also it should not be used for reference picture. So, corresponding GstVideoCodecFrame should be released immediately. Otherwise GstVideoDecoder baseclass will hold the unused frame. Part-of: 2021-06-21 13:23:13 +0200 Edward Hervey * gst/mxf/mxfdemux.c: * gst/mxf/mxfvanc.c: mxfvanc: Handle empty ANC essence Not having any *actual* ANC is totally fine and common usage with several MXF variants. In order to properly advance the streams, the essence handler returns an empty GAP buffer which gets converted to a GST_EVENT_GAP. Part-of: 2021-06-30 18:11:46 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Don't ignore previous flow return value In case of ASYNC MFT (hardware encoder), we were ignoring previous finish_frame or pad_push return value. so, error wasn't propagated. Part-of: 2021-05-20 00:49:15 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11compositor.h: * sys/d3d11/gstd3d11compositorbin.cpp: d3d11compositor: Add scaling policy to support PAR-aware scaling Identical to https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1156 but for D3D11. Part-of: 2021-06-30 13:56:49 +0900 youngsoo.lee * gst-libs/gst/opencv/meson.build: opencv: Fix build error on macOS The build fails on macos with the following error: /usr/local/Cellar/opencv/4.5.0_5/include/opencv4/opencv2/core/mat.hpp:2226:15: error: no template named 'initializer_list' in namespace 'std' Mat_(std::initializer_list<_Tp> values); fatal error: too many errors emitted, stopping now [-ferror-limit=] 35 warnings and 20 errors generated. Part-of: 2021-03-03 15:38:45 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2codecs: vp8: Check kernel version Print a warning if the kernel version is too old. Signed-off-by: Ezequiel Garcia Part-of: 2021-03-02 18:13:27 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/linux/v4l2-controls.h: * sys/v4l2codecs/linux/videodev2.h: * sys/v4l2codecs/linux/vp8-ctrls.h: * sys/v4l2codecs/plugin.c: v4l2codecs: vp8: Update to the new uAPI Starting from Linux v5.13, the V4L2 stateless VP8 uAPI is updated and stable. Signed-off-by: Ezequiel Garcia Part-of: 2021-06-27 01:15:49 +0900 Seungha Yang * sys/nvcodec/gstnvrtcloader.c: nvcodec: Enhance CUDA runtime compiler library loading on Windows The name of installed CUDA runtime compiler library is formed like nvrtc64_{major-version}{minor-version}_0.dll on Windows (which is differnt from documented in https://docs.nvidia.com/cuda/nvrtc/index.html) And minor version might not be exactly same as that of CUDA. Part-of: 2021-06-14 18:49:20 +0900 Seungha Yang * sys/d3d11/gstd3d11av1dec.cpp: * sys/d3d11/gstd3d11av1dec.h: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add AV1 decoder Introduce Direct3D11/DXVA AV1 decoder element Part-of: 2021-06-27 23:09:30 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: av1decoder: Store display resolution for duplicated picture Target display resolution might be required by subclass implementation Part-of: 2021-06-27 20:35:49 +0900 Seungha Yang * gst-libs/gst/codecs/gstav1decoder.c: av1decoder: Fix debug typo Part-of: 2021-06-27 20:19:39 +0900 Seungha Yang * gst-libs/gst/codecparsers/gstav1parser.c: av1parser: Fix tile size calculation Remaining size should exclude already read "tile size bits". And see also "5.11.1. General tile group OBU syntax" Part-of: 2021-06-28 21:13:56 -0400 Olivier Crête * ext/webrtc/transportreceivebin.c: webrtc receivebin: Drop serialized queries before receive queue If they're not dropped, they can be blocked in the queue even if it is leaky in the case where there is a buffer being pushed downstream. Since in webrtc, it's unlikely that there will be a special allocator to receive RTP packets, there is almost no downside to just ignoring the queries. Also drop queries if they get caught in the pad probe after the queue. Part-of: 2021-06-26 14:31:01 -0400 Olivier Crête * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportreceivebin.h: webrtc receivebin: Only set queue to leaky when the pad is blocked When the pad is no longer blocked, remove the leakyness to make sure everything gets into the jitterbuffer. Part-of: 2021-06-26 14:25:39 -0400 Olivier Crête * ext/webrtc/transportreceivebin.c: webrtc receivebin: Don't unblock pad until sender is unblocked As ther OpenSSL session is created when the receiver goes into playing, we have to wait for the ICE session to be connected before we can start delivering packets to the DTLS element. Fixes #1599 Part-of: 2021-06-24 13:17:09 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * gst-libs/gst/webrtc/dtlstransport.c: webrtcbin: Sync to the clock per stream and not per bundle By using the clocksync inside the dtlssrtpenc, all streams inside a bundled are synchronized together. This will cause problems if their buffers are not already arriving synchronized: clocksync would wait for a buffer on one stream and then buffers from the other stream(s) with lower timestamps would all be sent out too late. Placing the clocksync before the rtpbin and rtpfunnel synchronizes each stream individually and they will be send out more smoothly as a result. Part-of: 2021-06-24 14:58:12 -0400 Olivier Crête * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportsendbin.c: * ext/webrtc/transportstream.c: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: webrtc: Remove the webrtc-priv.h header from public headers And this time for real, also import it in a couple more places inside the webrtc element to make it build. Fixes #1607 Part-of: 2021-06-09 17:29:19 +0800 He Junyan * sys/va/gstvaav1dec.c: va: change AV1 GstVideoAlignment setting to left-top corner. Part-of: 2021-06-18 10:37:06 +0800 He Junyan * sys/va/gstvah264dec.c: va: h264dec: Set the GstVideoAlignment correctly. We should set GstVideoAlignment based on the sequence's crop information. Part-of: 2021-06-09 17:21:18 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Set the GstVideoAlignment correctly. We should set GstVideoAlignment based on the conformance window info. Part-of: 2021-06-09 17:19:04 +0800 He Junyan * sys/va/gstvapool.c: va: pool: Add VideoCropMeta to the buffer if crop_top/left > 0. Part-of: 2021-06-09 17:14:42 +0800 He Junyan * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: va: basedec: Copy the frames into other_pool if needed. If decoder's crop_top/left value > 0 and the downstream does not support the VideoCropMeta, we need to manually copy the frames into the other_pool and output it. Part-of: 2021-06-09 15:44:33 +0800 He Junyan * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: va: basedec: Setup the other_pool to copy output if crop_left/top. If the decoder has crop_top/left value > 0(e.g. the conformance window in the H265). Which means that the real output picture locates in the middle of the decoded buffer. If the downstream can support VideoCropMeta, a VideoCropMeta is added to notify the real picture's coordinate and size. But if not, we need to copy it manually and the other_pool is needed. We always assume that decoded picture starts from top-left corner, and so there is no need to do this if crop_bottom/right value > 0. Part-of: 2021-06-07 00:49:49 +0800 He Junyan * sys/va/gstvapool.c: va: No need to set the alignment for VideoMeta The base va decoder's video_align is just used for calculation the real decoded buffer's width and height. It does not have meaning for the VideoMeta, because it does not align to the real picture in the output buffer. We will use VideoCropMeta to replace it later. Part-of: 2021-06-03 00:07:05 +0800 He Junyan * sys/va/gstvapool.c: va: Delete the useless align expand in va_pool_set_config(). The base va decoder's video_align is just used for calculation the real decoded buffer's width and height. While the gst_video_info_align just calculate the offset and stride based on the video_align. But all the offsets and strides are overwritten in gst_va_dmabuf_allocator_try or gst_va_allocator_try, which make that calculation useless. Part-of: 2021-06-28 17:41:38 +0300 Sebastian Dröge * gst-libs/gst/webrtc/webrtc-priv.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Re-add WebRTC object docs to the public headers So they end up in the generated documentation and the Since markers appear in the .gir files too. Also remove wrong "Since: 1.16" markers for some objects that were available since 1.14.0 already. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1609 Part-of: 2021-06-25 10:20:06 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.c: webrtcbin: Set transceiver kind and codec preferences immediately when creating it Otherwise the on-new-transceiver signal will always be emitted with kind set to UNKNOWN and no codec preferences although both are often known at this point already. Part-of: 2021-06-25 12:14:03 +0300 Sebastian Dröge * tests/check/elements/webrtcbin.c: webrtcbin: Add a test for setting codec preferences as part of "on-new-transceiver" when setting the remote offer Part-of: 2021-06-25 12:13:42 +0300 Sebastian Dröge * tests/check/elements/webrtcbin.c: webrtc: Use fail_unless_equals_string() for string assertions Part-of: 2021-06-08 11:40:14 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Store newly created transceivers when creating an answer also in the seen transceivers list Otherwise it might be used a second time for another media afterwards. Part-of: 2021-06-08 11:39:27 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: When creating a new transceiver as part of creating the answer also take its codec preferences into account Part-of: 2021-06-08 11:38:11 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Fix a couple of caps leaks of the offer caps Part-of: 2021-06-24 12:28:11 +0100 Philippe Normand * ext/webrtc/gstwebrtcbin.c: webrtcbin: Stop transceivers update after first SDP error on data channel When invalid SDP is supplied, _update_data_channel_from_sdp_media() sets the GError, so it is invalid to continue any further SDP processing, we have to exit early when the first error is raised. This change is similar to the one applied in 064428cb34572fa1a018ebbaba6925967ba99dc0. See also #1595 Part-of: 2021-06-21 16:50:46 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin test: Fix race in new test Pull a buffer from a sink to make sure that the caps are already set before trying to update them. Part-of: 2021-06-22 16:12:57 +0800 Mengkejiergeli Ba * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkvp9enc.c: msdk: fix qp range for vp9enc Part-of: 2021-06-10 11:46:35 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Don't consider it a segment change if the segment is the same except for the position Part-of: 2021-06-21 17:13:33 +0900 Seungha Yang d3d11: Add support for GRAY and more YUV formats By this commit, following formats will be newly supported by d3d11 elements * Y444_{8, 12, 16}LE formats: Similar to other planar formats. Such Y444 variants are not supported by Direct3D11 natively, but we can simply map each plane by using R8 and/or R16 texture. * P012_LE: It is not different from P016_LE, but defining P012 and P016 separately for more explicit signalling. Note that DXVA uses P016 texture for 12bits encoded bitstreams. * GRAY: This format is required for some codecs (e.g., AV1) if monochrome is supported * 4:2:0 planar 12bits (I420_12LE) and 4:2:2 planar 8, 10, 12bits formats (Y42B, I422_10LE, and I422_12LE) Part-of: 2021-06-10 11:42:24 +0300 Sebastian Dröge * gst/mpegtsmux/gstbasetsmux.c: tsmux: When selecting random PIDs, name the pads according to those PIDs Some elements will make use of the automatically generated names to create new pads in future muxer instances, for example splitmuxsink. Previously we would've created a pad with a random pid that would become "sink_0", and then on a new muxer instance a pad "sink_0" and tsmux would've then failed because 0 is not a valid PID. Part-of: 2021-06-23 01:43:08 +0900 Seungha Yang mfvideoenc: Enhance B-frame timestamp handling When B-frame is enabled, encoder seems to adjust PTS of encoded sample by using frame duration. For instance, one observed timestamp pattern by using B-frame enabled and 30fps stream is: * Frame-1: MF pts 0:00.033333300 MF dts 0:00.000000000 * Frame-2: MF pts 0:00.133333300 MF dts 0:00.033333300 * Frame-3: MF pts 0:00.066666600 MF dts 0:00.066666600 * Frame-4: MF pts 0:00.099999900 MF dts 0:00.100000000 We can notice that the amount of PTS shift is frame duration and Frame-4 exhibits PTS < DTS. To compensate shifted timestamp, we should calculate the timestamp offset and re-calculate DTS correspondingly. Otherwise, total timeline of output stream will be shifted, and that can cause time sync issue. Part-of: 2021-06-10 11:36:43 +0300 Sebastian Dröge * gst/mpegtsmux/gstbasetsmux.c: tsmux: Recheck existing pad PIDs when requesting a new pad with a random pid Previously pads might have been requested already (e.g. in NULL state), then reset was called (e.g. because changing state) and then a new pad was requested. Resetting is re-creating the internal muxer object and as such resetting the pid counter, so the next requested pad would get the same pid as the first requested pad which then leads to collisions. Part-of: 2021-06-22 02:34:18 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: mfh264enc, mfh265enc: Set profile string to src caps Set configured profile to src caps so that downstream can figure out selected profile. Part-of: 2021-04-21 16:24:00 -0400 Olivier Crête * ext/webrtc/webrtcdatachannel.h: * gst-libs/gst/webrtc/datachannel.c: * gst-libs/gst/webrtc/datachannel.h: * gst-libs/gst/webrtc/webrtc-priv.h: webrtc lib: Make the datachannel struct private This will prevent any unsafe access. Part-of: 2021-04-21 16:19:41 -0400 Olivier Crête * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/webrtc-priv.h: webrtc lib: Make the DTLSTransport struct private This will prevent any unsafe access. Part-of: 2021-04-21 16:17:23 -0400 Olivier Crête * ext/webrtc/nicetransport.h: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/webrtc-priv.h: webrtc lib: Make the icetransport struct private This will prevent any unsafe access. Part-of: 2021-04-21 16:04:26 -0400 Olivier Crête * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/webrtc-priv.h: webrtc lib: Make the rtpreceiver struct private This will prevent any unsafe access. Part-of: 2021-04-21 16:00:57 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/webrtc-priv.h: webrtc lib: Make the rtpsender struct private This will prevent any unsafe access. Part-of: 2021-04-21 16:00:34 -0400 Olivier Crête * ext/webrtc/webrtctransceiver.h: * gst-libs/gst/webrtc/rtptransceiver.c: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc-priv.h: webrtc lib: Make the transceiver struct private This will prevent any unsafe access. Part-of: 2021-06-18 19:26:35 +0200 Mathieu Duponchelle * ext/x265/gstx265enc.c: x265enc: add negative DTS support Use the same set_min_pts approach as x264enc. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/304 Part-of: 2021-06-17 20:10:35 +0900 Seungha Yang * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't assume that stream time is always valid As per SDK doc, IDeckLinkInputCallback::VideoInputFrameArrived method might not provide video frame and it can be null. In that case, given stream_time can be invalid. So, we should not try to convert GST_CLOCK_TIME_NONE by using gst_clock_adjust_with_calibration() Part-of: 2021-06-14 13:16:30 -0400 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Fix usage of g_error_propagate In the error callback we were propagating an error we were not owning which is incorrect use of the API. Also we were clearing a GError we already propagated which is wrong as propagating gives ownership away. Part-of: 2021-06-14 13:13:24 -0400 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Add a missing object unlocking Part-of: 2021-06-14 15:07:05 +0200 Stéphane Cerveau * ext/faad/gstfaad.c: faad: fix typo in element documentation seealso is now see_also Part-of: 2021-06-17 20:17:14 +0200 Víctor Manuel Jáquez Leal * tests/check/elements/msdkh264enc.c: tests: msdkh264dec: Run test only if factory is available. Part-of: 2021-06-17 11:25:11 +0200 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkcontext.c: msdk: Demote error log message to warning. It is not an error that the available hardware doesn't support VA-API/MSDK. Just none plugin features will be registered. Part-of: 2021-06-20 18:48:21 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11bufferpool.cpp: * gst-libs/gst/d3d11/gstd3d11device.cpp: * gst-libs/gst/d3d11/gstd3d11format.cpp: * gst-libs/gst/d3d11/gstd3d11memory.cpp: * gst-libs/gst/d3d11/gstd3d11utils.cpp: * gst-libs/gst/d3d11/meson.build: libs: d3d11: Port to C++ In general, C++ COM APIs are slightly less verbose and more readable than C APIs. And C++ supports some helper methods (smart pointer and C++ only macros for example) which are not allowed for C. Part-of: 2021-06-16 10:23:37 -0700 U. Artie Eoff * sys/msdk/gstmsdk.c: * sys/msdk/meson.build: msdk: declare external dependencies Track kernel and VA driver dependencies so gstreamer will re-inspect the plugin if any of them change. Also, do not blacklist the plugin if !msdk_is_available since it could be a transient issue caused by one or more external dependency issues (e.g. wrong/missing driver specified, but corrected by user later on). Part-of: 2021-06-17 01:00:33 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264parse,h265parse: Push parameter set NAL units again per segment-done Some decoder implementations might drain out internal buffers and reset its status on segment-done event. So, in case that upstream stream-format is packetized but downstream supports only byte-format, required codec-data might not be forwarded toward downstream if such parameter set NAL units don't exist in inband bitstream. Therefore, parse elements should re-send parameter set NAL units like the case of flush event. Part-of: 2021-06-16 10:31:13 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gstvp8decoder.c: vp8decoder: Drain the output queue on EOS/finish The finish() virtual method was flushing the queue, instead push the remaining buffers. It is not required to reset in finish() unlike drain(). This a regression causing last frame to always be lost. Part-of: 2021-06-16 10:30:18 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gstvp8decoder.c: v4l2slvp8dec: Only ask for output delay once per negotiation While it's technically possible to change it per frame, asking for that every frame is not very useful. This mimic H264 decoder better. Part-of: 2021-06-16 16:56:14 +0800 He Junyan * sys/va/gstvabasedec.c: va: Improve the default mapping between rt_format and video format. We add 12 bits entries into this default mapping. And the old mapping is not precise. For example, the NV12 should not be used as the default mapping for VA_RT_FORMAT_YUV422 and VA_RT_FORMAT_YUV444, it is even not a 422 or 444 format. Part-of: 2021-06-16 16:43:40 +0800 He Junyan * sys/va/gstvah265dec.c: va: Add 12 bits rt_format setting in H265. In order to support 12 bits format decoding, we need to add the support for 12 bits rt_format in H265. Part-of: 2021-06-16 16:32:30 +0800 He Junyan * sys/va/gstvavideoformat.c: va: Fix a typo in video format mapping. GST_VIDEO_FORMAT_Y412_LE is a 4:4:4 format and so should be mapped to VA_RT_YUV444_12 rt format. Part-of: 2021-06-15 21:36:43 +0800 He Junyan * gst/videoparsers/gsth265parse.c: h265parse: Fix a typo in get_compatible_profile_caps(). The GST_H265_PROFILE_MAIN_444_10 profile should be compatible with GST_H265_PROFILE_SCREEN_EXTENDED_MAIN_444_10, not the current GST_H265_PROFILE_SCREEN_EXTENDED_MAIN_10. Part-of: 2020-12-15 18:11:08 +0800 Randy Li (ayaka) * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: prevent frame callback being released twice For those using context from the application which would be the embedded video case, if the frame callback is entering at the same time as window is finalizing, a wayland proxy object would be destroyed twice, leading the refcout less than zero in the second time, it can throw an abort() in wayland. For those top window case, which as a directly connection to the compositor, they can stop the message queue then the frame callback won't happen at the same time as the window is finalizing. It doesn't think it would bother them about this. Part-of: 2021-06-14 16:04:52 -0400 Nicolas Dufresne * gst/codecalpha/gstalphadecodebin.c: * sys/v4l2codecs/gstv4l2codecalphadecodebin.c: alphadecodebin: Fix stall due to QoS alphacombine element is a simple element that assumes buffers are always paired, or at least that missing buffers are signalled with a GAP. The QoS implementation in the GstVideoDecoder base class allow decoders dropping frames independently and that could lead to stall in alphacombine. Part-of: 2021-02-02 11:02:02 +0100 Stéphane Cerveau * docs/plugins/gst_plugins_cache.json: * ext/openjpeg/gstopenjpegenc.c: * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: * gst-libs/gst/codecparsers/gstjpeg2000sampling.h: * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse, openjpeg: add support for YCrCb 4:1:1 sampling Add YCrCb 4:1:1 support in openjpeg elements and fix in jpeg2000parse the YCrCb 4:1:0 support Part-of: 2021-06-10 23:35:38 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Don't print error log when no DPB texture is available ... but we are flushing. The condition is quite expected situation when pipeline is in the middle of seeking operation. Part-of: 2021-05-23 18:17:38 +0800 Yinhang Liu * sys/msdk/gstmsdkenc.c: msdkenc: add extbrc support in ext-coding-props property The SDK can support external bitrate control [1], so add extbrc to enable this feature. [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxextcodingoption2 Part-of: 2021-05-23 18:13:25 +0800 Yinhang Liu * docs/plugins/gst_plugins_cache.json: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkenc: add ext-coding-props for external coding options This property supports passing multiple parameters using GstStructure. Example usage: ext-coding-props="props,key0=value0,key1=value1,..." Part-of: 2021-06-05 21:59:50 +0800 He Junyan * gst-libs/gst/codecs/gsth265decoder.c: codecs: Fix the H265 poc out of order warning. We always get a warning such as: h265decoder gsth265decoder.c:1432:gst_h265_decoder_do_output_picture: \ Outputting out of order 255 -> 0, likely a broken stream in H265 decoder. The problem is caused because we fail to reset the last_output_poc when we get IDR and BLA. The incoming IDR and BLA frame already bump all the frames in the DPB, but we forget to reset the last_output_poc, which make the POC out of order and generate the warning all the time. Part-of: 2021-06-10 01:09:44 +0900 Seungha Yang * sys/wasapi2/gstwasapi2sink.c: wasapi2sink: Fix ringbuffer object leak Part-of: 2021-06-10 00:24:24 +0900 Seungha Yang * sys/wasapi2/gstwasapi2ringbuffer.cpp: wasapi2ringbuffer: Implement GstAudioRingBuffer::pause() WASAPI doesn't support PAUSE so it's not different from Stop(). When pipeline is in paused state, we don't need to waste CPU resource for feeding silent buffers. Part-of: 2021-06-07 01:49:26 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_fwd.h: * gst-libs/gst/d3d11/gstd3d11memory.c: * gst-libs/gst/d3d11/gstd3d11memory.h: d3d11memory: Implement GstAllocator::mem_copy method There are a few places which require deep copy (basesink on drain for example). Also this implementation can be useful for future use case. One probable future use case is that copying DPB texture to another texture for in-place transform since our DPB texture is never writable, and therefore copying is unavoidable. Part-of: 2021-06-08 21:35:20 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2client.h: * sys/wasapi2/gstwasapi2device.c: * sys/wasapi2/gstwasapi2ringbuffer.cpp: * sys/wasapi2/gstwasapi2src.c: * sys/wasapi2/gstwasapi2util.c: * sys/wasapi2/gstwasapi2util.h: wasapi2src: Add support for loopback recording ... and add various device error handling. This loopback implementation is functionally identical to that of wasapisrc. When it's enabled, wasapi2src will read data from render device instead of capture device. Part-of: 2021-05-10 20:45:28 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2client.h: * sys/wasapi2/gstwasapi2device.c: * sys/wasapi2/gstwasapi2ringbuffer.cpp: * sys/wasapi2/gstwasapi2ringbuffer.h: * sys/wasapi2/gstwasapi2sink.c: * sys/wasapi2/gstwasapi2sink.h: * sys/wasapi2/gstwasapi2src.c: * sys/wasapi2/gstwasapi2src.h: * sys/wasapi2/gstwasapi2util.c: * sys/wasapi2/gstwasapi2util.h: * sys/wasapi2/meson.build: * sys/wasapi2/plugin.c: wasapi2: Rewrite plugin and implement audioringbuffer subclass ... based on MediaFoundation work queue API. By this commit, wasapi2 plugin will make use of pull mode scheduling with audioringbuffer subclass. There are several drawbacks of audiosrc/audiosink subclassing (not audiobasesrc/audiobasesink) for WASAPI API, which are: * audiosrc/audiosink classes try to set high priority to read/write thread via MMCSS (Multimedia Class Scheduler Service) but it's not allowed in case of UWP application. In order to use MMCSS in UWP, application should use MediaFoundation work queue indirectly. Since audiosrc/audiosink scheduling model is not compatible with MediaFoundation's work queue model, audioringbuffer subclassing is required. * WASAPI capture device might report larger packet size than expected (i.e., larger frames we can read than expected frame size per period). Meanwhile, in any case, application should drain all packets at that moment. In order to handle the case, wasapi/wasapi2 plugins were making use of GstAdapter which is obviously sub-optimal because it requires additional memory allocation and copy. By implementing audioringbuffer subclassing, we can avoid such inefficiency. In this commit, all the device read/write operations will be moved to newly implemented wasapi2ringbuffer class and existing wasapi2client class will take care of device enumeration and activation parts only. Part-of: 2021-06-06 17:32:59 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2: Use AUDCLNT_STREAMFLAGS_NOPERSIST flag ... so that we can disable persistence of our mute/volume status Part-of: 2021-06-06 17:28:56 +0900 Seungha Yang * sys/wasapi2/gstwasapi2src.c: wasapi2src: Fix doc typo Part-of: 2021-05-26 00:12:59 -0400 Thibault Saunier * ext/wpe/wpe-extension/gstwpebusmsgforwarder.c: wpe: Rename `undeserializable_type` to `not_deserializable_type` Making it more readable. Part-of: 2021-05-25 23:58:27 -0400 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/wpe-extension/gstwpebusmsgforwarder.c: wpe: Make forwarded messages layout more like GstBinForwaded messages Making it look more like how we do this kind of things in other places. See: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2252#note_927653 Part-of: 2021-05-21 10:52:01 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/wpe/gstwpesrcbin.cpp: * tests/examples/wpe/wpe.c: wpe: Make wpesrc!video pad an always pad There should always be a `video` pad no matter what. Part-of: 2021-05-21 10:31:53 -0400 Thibault Saunier * ext/wpe/wpe-extension/gstwpeextension.c: wpe: Remove unused env var Part-of: 2021-05-21 10:31:37 -0400 Thibault Saunier * ext/wpe/wpe-extension/gstwpeaudiosink.c: wpe: Fix atomic usage Part-of: 2021-05-21 10:29:11 -0400 Thibault Saunier * ext/wpe/gstwpesrcbin.cpp: wpe: Add a note able requiring tracing subsystem for message forwarding Part-of: 2021-05-21 10:18:21 -0400 Thibault Saunier * ext/wpe/wpe-extension/gstwpeaudiosink.c: wpe: Fix check on whether MEMFD_CREATE is available The ordering of the ifdef was wrong Part-of: 2021-05-21 10:13:01 -0400 Thibault Saunier * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/wpe-extension/gstwpebusmsgforwarder.c: wpe: Plug a leak We were freeing after returning Part-of: 2021-05-21 09:54:33 -0400 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: Revert "wpe: Properly respect LIBGL_ALWAYS_SOFTWARE" This causes issues I didn't see: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2252#note_927633 Let's just tell people to use capsfilter to force software rendering in `wpesrc` for now. The intent was to allow forcing it easily in playbin2 for the CI, but we will do it some other way and see when time comes. This reverts commit 9415106b029e5469ca28d882dc46ecc38786d4c9. Part-of: 2021-05-28 15:18:53 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstdebugutilsbadelements.h: * gst/debugutils/gstvideocodectestsink.c: * gst/debugutils/gstvideocodectestsink.h: * gst/debugutils/meson.build: debugutils: Introduce videocodectestsink This is a video specific sink used to test video CODEC conformance. This is similar to a combination of filesink and testsink, but will skip over any type of padding that GStreamer Video library introduces. This is needed in order to obtain the correct checksum or raw yuv data. This element currently support writing back non-padded raw I420 through the location property and will calculate an MD5 and post it as an element message of type conformance/checksum. More output format or checksum type could be added in the future as needed. Part-of: 2021-06-04 01:44:47 +0900 Seungha Yang * gst-libs/gst/vulkan/gstvkinstance.c: vkinstance: Don't abort in case that system has no available vulkan device Specification doesn't have restriction that returned pPhysicalDeviceCount value must be non-zero Part-of: 2021-06-03 11:24:53 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Clear all streams when rewinding This avoids sending out partial invalid data downstream which could cause decoders (ex: `dvdlpmdec`) to error out. Part-of: 2021-05-29 01:48:15 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: * gst-libs/gst/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11converter.cpp: * tests/check/elements/d3d11colorconvert.c: d3d11: Add support for YV12 and NV21 formats Handle UV swapped 4:2:0 8bits formats Part-of: 2021-06-03 18:28:26 +0900 Seungha Yang * sys/d3d11/gstd3d11window_win32.cpp: d3d11window_win32: Ensure closing internal HWND from window thread Window handle must be closed from its own message thread Part-of: 2021-06-03 10:31:39 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache after pixel format reorder Part-of: 2021-06-03 10:03:19 +0800 Yinhang Liu * docs/plugins/gst_plugins_cache.json: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkav1dec.c: * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkmpeg2dec.c: * sys/msdk/gstmsdkmpeg2enc.c: * sys/msdk/gstmsdkvc1dec.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp9dec.c: * sys/msdk/gstmsdkvp9enc.c: * sys/msdk/gstmsdkvpp.c: doc: add the msdk elements Supported elements: msdkav1dec, msdkh264dec, msdkh264enc, msdkh265dec, msdkh265enc, msdkmjpegdec, msdkmjpegenc, msdkmpeg2dec, msdkmpeg2enc, msdkvc1dec, msdkvp8dec, msdkvp9dec, msdkvp9enc, msdkvpp. Part-of: 2021-06-02 14:17:13 -0400 Nicolas Dufresne * ext/wayland/wlwindow.c: waylandsink: Fix for missing initial configure We were doing our initial "empty" commit on the subsurface instead of the toplevel surface. As an incidence, we should not have received a configure event ever, not just on mutter. This fixes the following warning when using mutter compositor (aka gnome-shell): waylandsink wlwindow.c:304:gst_wl_window_new_toplevel: The compositor did not send configure event. Part-of: 2021-06-02 11:26:41 -0400 Nicolas Dufresne * tests/check/elements/camerabin.c: test: camerabin: Fix buffer size calculation We were assunming that GStreamer size for RGB (24bit packed) data was width x height x 3, but GStreamer defaults to specific alignment. Use GstVideoInfo API in order to obtain the buffer size. This fixes failure seen when trying to merge: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/998 which make us negoaite 1x1 instead of 16x16 in this test. Part-of: 2021-05-31 17:51:58 +0800 He Junyan * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gsth265picture.h: codecs: Integrate H265 DPB full check into need_bump(). The current DPB check of H265 is not very correct. The current frame is already in the DPB when we check whether the DPB is full. For example, the DPB max size is 16 and we have 15 ref frames in the DPB, so the gst_h265_dpb_delete_unused() cleans no one, and then plus the current frame, the DPB is 16. This causes an error return, but in fact, the stream is correct. We now integrate the DPB full check into the need_bump() function. We add the correct frame into to DPB and then check whether the picture num is bigger than max_num_pics of DPB(which means there is no room for the current picture). If true, we bump the DPB immediately. Part-of: 2021-06-01 15:28:57 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.19.1 === 2021-06-01 00:14:22 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * README: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.19.1 2021-04-08 10:11:52 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2codecs: gstv4l2codecsvp8dec: implement a render delay The v4l2 backend support delayed output for performance reasons. It is then possible to use render delays to queue multiple requests simultaneously, thus increasing performance. Part-of: 2021-04-07 18:24:27 -0300 Daniel Almeida * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp8decoder.h: codecs: gstvp8decoder: add support for render delay Some decoding APIs support delayed output for performance reasons. One example would be to request decoding for multiple frames and then query for the oldest frame in the output queue. This also increases throughput for transcoding and improves seek performance when supported by the underlying backend. Introduce support in the vp8 base class, so that backends that support render delays can actually implement it. Part-of: 2021-05-17 10:49:41 +0100 Philippe Normand * ext/webrtc/gstwebrtcbin.c: webrtcbin: Stop transceivers update after first SDP error When invalid SDP is supplied, _update_transceiver_from_sdp_media() sets the GError, so it is invalid to continue any further SDP processing, we have to exit early when the first error is raised. Fixes #1595 Part-of: 2021-05-28 23:21:19 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11decoder.cpp: d3d11: Suppress some warning logs We uses gst_d3d11_device_new() for enumerating device which can fail for some reason. Don't print warning log for the case. And decoding capability check is the same case as well. Part-of: 2021-05-28 17:05:02 -0400 Roman Sivriver * ext/hls/gsthlssink2.c: hlssink2: Initialize debug category to prevent an assert with `fatal-warnings` Part-of: 2021-05-21 20:02:53 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Reuse converter on alpha update ... instead of creating converter object Part-of: 2021-05-18 01:24:29 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11converter.h: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11shader.cpp: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: d3d11converter: Introduce config to be extensible Add a config argument like that of GstVideoConverter so that we can add more options without modifying existing methods Part-of: 2021-05-21 21:30:42 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11shader.cpp: * sys/d3d11/gstd3d11shader.h: d3d11shader: Don't hold state object in GstD3D11Quad We might want to update state object Part-of: 2021-05-27 16:22:42 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.h: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.h: * sys/v4l2codecs/plugin.c: v4lcodecs: Validate src formats This add src format validation, this avoid registering element for drivers we don't support any of their src formats. This also special case the AlphaDecodeBin wrapper, as we know that alphacombine element only support I420 and NV12 for now. Part-of: 2021-05-22 16:29:09 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2codecalphadecodebin.c: * sys/v4l2codecs/gstv4l2codecalphadecodebin.h: * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: * sys/v4l2codecs/meson.build: v4l2codecs: add wrappers for alpha decode codecalpha is a new plugin introduced to support VP8/VP9 alpha as defined in the WebM and Matroska specifications. It splits the stream into two streams, one for the alpha and one for the actual content, then it decodes them separately with vpxdec and finally combine the results as A420 or AV12 (i.e. YUV + an extra alpha plane). The workflow above is setup by means of a bin, gstcodecalphabin. This patch simulates the same workflow into the v4l2codecs namespace, thus using the new v4l2 stateless decoders for hardware acceleration. This is so we can register the new alpha decode elements only if the hardware produces formats we support, i.e. I420 or NV12 for now. Part-of: 2021-05-19 18:45:19 -0300 Daniel Almeida * docs/plugins/gst_plugins_cache.json: * gst/codecalpha/gstalphacombine.c: codecalpha: alphacombine: add support for NV12/AV12 Alpha combine works by appending the GstMemory for the alpha channel to the GstBuffer containing I420, thereby pushing A420 on its src pad. Add support for the same workflow for NV12, thereby producing the recently introduced AV12 format (NV12 + Alpha). Part-of: 2021-05-25 20:21:34 +0900 Seungha Yang * gst/interlace/gstinterlace.c: interlace: Don't set field-order field for progressive caps That would cause negotiation issue Part-of: 2021-05-25 19:47:28 +0900 Seungha Yang * gst/interlace/gstinterlace.c: interlace: Drop framerate from query caps of sinkpad Query caps should return caps which represent the element can accept, not resulting format. Fixing negotiation error with gst-launch-1.0 videotestsrc ! video/x-raw,framerate=25/1 ! interlace field-pattern=0 ! fakesink Part-of: 2021-05-26 16:37:06 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: d3d11compositor: Fix caps update handling New caps is applied only when previous buffer is consumed if any. So, the lastest given caps might not be corresponding to the current buffer to be handled. Part-of: 2021-05-20 13:47:11 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvadisplay.h: * gst-libs/gst/va/gstvadisplay_drm.h: * gst-libs/gst/va/gstvadisplay_wrapped.h: libs: va: display: Handle auto clean up macros. Add G_DEFINE_AUTOPTR_CLEANUP_FUNC macro for display classes, so auto pointers are possible to users. Part-of: 2021-05-17 19:06:34 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Add current picture into reference list for SCC. The current picture is not in the DPB, so we need to add it manually to the reference list when SCC is enabled. Part-of: 2021-05-21 23:47:14 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Set Screen Content extension (SCC) for picture parameters. We already declare the support of HEVC screen content extension profiles in the profile mapping list, but we fail to generate the correct VA picture parameters buffers. This may cause the GPU hang. We need to fill the buffer of VAPictureParameterBufferHEVCExtension correctly. Part-of: 2021-05-17 17:47:07 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Use get_profile_from_sps() to recognize the profile. The function of gst_h265_get_profile_from_sps() is better than the function gst_h265_profile_tier_level_get_profile() when we recognize the profile of the stream, becaue it considers the compatibility. It is also used by h265parse to recognize the profile. So it is better to keep the same behaviour with the parse and other decoders. Part-of: 2021-05-21 23:21:12 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Set range extension for picture and slice parameters. We already declare the support of HEVC range extension profiles in the profile mapping list, but we fail to generate the correct VA picture and slice parameters buffers. This may cause the GPU hang. We need to fill the buffer of VAPictureParameterBufferHEVCExtension and VASliceParameterBufferHEVCExtension correctly. Part-of: 2021-05-24 18:18:52 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah265dec.c: va: h265dec: Use picture and slide extension parameters. This is transitional commit to later implement extended and screen profiles. Part-of: 2021-05-24 18:34:25 +0100 Tim-Philipp Müller * ext/aom/gstav1enc.c: * ext/dash/gstdashdemux.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/fdkaac/gstfdkaacenc.c: * ext/sctp/gstsctpenc.c: * ext/sndfile/gstsfdec.c: * gst/videoparsers/gstav1parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * tests/check/elements/kate.c: * tests/check/elements/pcapparse.c: Use gst_buffer_new_memdup() Update for function rename in core. https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/827 Part-of: 2021-05-22 18:05:18 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/gstwpevideosrc.cpp: * ext/wpe/meson.build: wpe: Bump wpebackend-fdo version requirement to 1.8 Debian bullseye has this version already, and this allows us to get rid of many ifdefs. The mouse scroll handling is actually functional now as well. Part-of: 2021-05-23 16:10:53 +0100 Tim-Philipp Müller * ext/aom/gstav1enc.c: * ext/dash/gstdashdemux.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/fdkaac/gstfdkaacenc.c: * ext/sctp/gstsctpenc.c: * ext/sndfile/gstsfdec.c: * gst/videoparsers/gstav1parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * tests/check/elements/kate.c: * tests/check/elements/pcapparse.c: Use new gst_buffer_new_copy() Part-of: 2021-05-21 15:18:21 -0300 Daniel Almeida * docs/plugins/gst_plugins_cache.json: doc: update gst_plugins_cache.json Part-of: 2021-05-14 20:22:26 +0200 Jakub Adam * sys/winscreencap/dxgicapture.c: * sys/winscreencap/dxgicapture.h: * sys/winscreencap/gstdxgiscreencapsrc.c: dxgiscreencapsrc: renegotiate caps on resolution change When desktop gets resized, recreate the textures and renegotiate the source caps with the updated video dimensions. Part-of: 2021-05-18 14:09:01 +0800 He Junyan * sys/va/gstvah265dec.c: va: h265dec: Set LastSliceOfPic for multi sliced frames. VA-API HEVC decoding needs to known which is the last slice of a picture, but slices are processed sequencially, so we know the last slice until all the slices are already pushed into the VABuffer array. In order to mark the last slice, they are pushed into the VABuffer array with a delay of one slice: the first slice is hold, and when the second slice come, the first one is pushed while holding the second, and so on. Finally, at end_picture(), the last slice is marked and pushed into the array. Co-author: Victor Jaquez Part-of: 2021-05-20 17:03:15 +0900 Seungha Yang * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11desktopdup.h: * sys/d3d11/gstd3d11desktopdupsrc.cpp: * sys/d3d11/gstd3d11desktopdupsrc.h: d3d11desktopdupsrc: Add support for desktop size/rotation mode change Re-negotiates with updated size on desktop size (i.e., resolution, scaling factor), and rotation mode change Part-of: 2021-05-20 10:09:57 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: Fixup program array indices after stream removal Each stream stores the `program_array_index` of its position in its program's `streams` array. When we remove a stream from this array, we need to correct the `program_array_index` of all streams that were backshifted by the removal. Also extract the removal into a new function and add some more safety checks. Part-of: 2021-05-20 18:49:01 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.c: d3d11memory: Protect map and unmap with device lock We should lock memory object with gst_d3d11_device_lock() first then GST_D3D11_MEMORY_LOCK() need to be used. One observed deadlock case is that: - Thread A takes d3d11 device lock - At the same time, Thread B tries CPU map to d3d11memory which requires d3d11 device lock as well, but it's already taken by Thread A. Part-of: 2021-05-20 18:38:17 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.c: d3d11memory: Add trace log for debugging locking thread Part-of: 2021-05-20 15:39:39 +0900 Seungha Yang * gst/audiolatency/gstaudiolatency.c: audiolatency: Drop incoming downstream stick events stream-start, caps, and segment events will be pushed by internal audiotestsrc element. Part-of: 2021-05-20 15:28:13 +0900 Seungha Yang * gst/audiolatency/gstaudiolatency.c: audiolatency: Use live mode audiotestsrc Expected use case of audiolatency element is that mimic audio capture device which is most likely live source. So audiolatency element should use live mode as well. Part-of: 2021-05-19 18:48:29 -0400 Thibault Saunier * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/meson.build: wpe: Bump WPE dependency to 2.28 The new audio feature depends on WPE 2.28 so we should just bump our requirement to that. Part-of: 2021-05-20 00:51:08 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11compositor.h: * sys/d3d11/gstd3d11compositorbin.cpp: d3d11compositor: Fix missing D3D11 prefix Fix typo, no functional change Part-of: 2021-05-18 17:49:23 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/wpe/gstwpe.cpp: * ext/wpe/gstwpesrcbin.cpp: wpe: Update doc cache Part-of: 2021-04-21 23:14:13 -0400 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: wpe: Properly respect LIBGL_ALWAYS_SOFTWARE Part-of: 2021-05-01 21:48:23 -0400 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/wpe-extension/gstwpebusmsgforwarder.c: * ext/wpe/wpe-extension/gstwpeextension.c: * ext/wpe/wpe-extension/gstwpeextension.h: * ext/wpe/wpe-extension/meson.build: wpe: Relay messages from WPE internal pipelines It is based on a tracer as it allows us to very easily get every message that are posted on any bus inside the process. Part-of: 2021-04-19 20:46:46 -0400 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpe.cpp: * ext/wpe/gstwpe.h: * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/gstwpesrcbin.h: * ext/wpe/gstwpevideosrc.cpp: * ext/wpe/meson.build: * ext/wpe/wpe-extension/gstwpeaudiosink.c: * ext/wpe/wpe-extension/gstwpeextension.c: * ext/wpe/wpe-extension/gstwpeextension.h: * ext/wpe/wpe-extension/meson.build: wpe: Base wpe audio implementation on a web extension This makes the implementation simpler and enable us to map webviews and audio stream much more easily Part-of: 2019-12-08 13:16:38 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpe: Enable WebAudio Part-of: 2019-12-08 11:49:20 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpe-private.h: * ext/wpe/gstwpe.cpp: * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/gstwpesrcbin.h: * ext/wpe/gstwpevideosrc.cpp: * ext/wpe/meson.build: * tests/examples/meson.build: * tests/examples/wpe/meson.build: * tests/examples/wpe/wpe.c: wpe: Implement audio support The wpesrc bin now exposes "sometimes" audio src pads, one for every PCM audio stream created by WPEWebKit. Part-of: 2021-03-10 17:27:52 -0300 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpe.cpp: * ext/wpe/gstwpesrcbin.cpp: * ext/wpe/gstwpesrcbin.h: * ext/wpe/gstwpevideosrc.cpp: * ext/wpe/gstwpevideosrc.h: * ext/wpe/meson.build: wpe: Move wpesrc to wpevideosrc and add a wrapper bin `wpesrc` Currently the bin contains a single element but we are going to implement audio support and expose extra pads for audio Part-of: 2021-05-18 00:43:23 -0400 Doug Nazar * ext/sctp/gstsctpenc.c: sctp: Ensure pad is still a child of element before removal During pipeline shutdown there are several competing paths to remove pads. Avoids tests failing due to: Unexpected critical/warning: Padname '':sink_1 does not belong to element sctpenc1 when removing Part-of: 2021-05-17 09:13:28 -0400 Doug Nazar * ext/sctp/gstsctpdec.c: sctp: Fix race of pad removal during reset/stop Both reset & stop remove existing pads. Can result in warning from gst_element_remove_pad(). Part-of: 2021-05-17 09:11:54 -0400 Doug Nazar * ext/webrtc/webrtcdatachannel.c: webrtcbin: Fix race bringing up sctp data channel Notifying before pads are linked can cause the stream to fail to start. Part-of: 2021-05-13 21:11:30 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: webrtcbin: advertise harder the rtcp-mux-only requirement And ignore rtcp ICE candidates Part-of: 2021-05-14 10:47:05 -0500 Sid Sethupathi * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: webrtcbin: update default jb latency docs Part-of: 2021-05-18 16:38:04 -0400 Doug Nazar * ext/dtls/gstdtlsenc.c: dtls: Let sender know when we are flushing Prevents endless loop during shutdown where we end up sending 0 bytes. Part-of: 2021-05-18 16:31:47 -0400 Doug Nazar * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: dtls: Add ability to set custom GstFlowReturn on callback error Part-of: 2021-05-18 20:26:38 -0400 Olivier Crête * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: webrtc: Remove reundundant context object in transportsendbin Part-of: 2021-05-18 20:18:28 -0400 Olivier Crête * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: webrtc: Wait until ICE is connected to start DTLS handshake process Part-of: 2021-05-18 18:29:16 -0400 Olivier Crête * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: webrtcbin: Remove pad probe on nicesink This pad probe is no longer necessary, libnice now drops all buffers before the stream is connected. This pad problem also caused deadlocks in some situations. Part-of: 2021-05-17 20:59:19 -0400 Olivier Crête * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: kate: Initialize debug categories Part-of: 2021-05-13 10:27:49 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvadisplay.c: * gst-libs/gst/va/gstvadisplay.h: * gst-libs/gst/va/gstvadisplay_drm.c: * gst-libs/gst/va/gstvadisplay_wrapped.c: libs: va: Documentation and annotations. Part-of: 2021-05-07 17:05:38 +0800 He Junyan * gst-libs/gst/va/meson.build: * tests/examples/va/main.c: * tests/examples/va/meson.build: * tests/examples/va/multiple-vpp.c: examples: va: Update the VA examples because of the new va lib. Because we introduce the new va lib, the va examples need to include new header files and add more library linkage. Part-of: 2021-05-13 18:46:21 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/va/gstvadisplay_wrapped.c: * gst-libs/gst/va/gstvadisplay_wrapped.h: * sys/va/gstvautils.c: libs: va: display_wrapper: Use gpointer for VADisplay. In order to be coherent along all the implementation. Part-of: 2021-05-06 18:23:23 +0800 He Junyan * gst-libs/gst/meson.build: * gst-libs/gst/va/gstvadisplay.c: * gst-libs/gst/va/gstvadisplay.h: * gst-libs/gst/va/gstvadisplay_drm.c: * gst-libs/gst/va/gstvadisplay_drm.h: * gst-libs/gst/va/gstvadisplay_wrapped.c: * gst-libs/gst/va/gstvadisplay_wrapped.h: * gst-libs/gst/va/meson.build: * gst-libs/gst/va/va-prelude.h: * gst-libs/gst/va/va_fwd.h: * sys/va/gstvaallocator.h: * sys/va/gstvacaps.c: * sys/va/gstvacaps.h: * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvadevice.c: * sys/va/gstvadevice.h: * sys/va/gstvadisplay.h: * sys/va/gstvadisplay_priv.c: * sys/va/gstvadisplay_priv.h: * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvautils.c: * sys/va/gstvautils.h: * sys/va/gstvavpp.c: * sys/va/meson.build: libs: va: Move the VA common logic as a lib. The VA acceleration now has more usages in linux-like platforms, such as the MSDK. The different plugins based on the VA acceleration need to share some common logic and types. We now move the display related functions and types into a common va lib. Part-of: 2021-05-17 11:42:07 +0800 mkba * sys/msdk/gstmsdkh265enc.c: msdk: add profile main-still-picture for hevc encoder Part-of: 2021-05-15 00:39:57 +0900 Seungha Yang * gst/interlace/gstinterlace.c: interlace: Fix too small buffer size error Even though input/output resolutions are identical there, default buffer size of progressive and interleaved formats could be different because we are rounding up height of all plane of interlaced frame to be multiple of two. Part-of: 2021-03-01 12:09:43 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: use MFXJoinSession() to join the parent and child sessions Part-of: 2021-02-04 15:27:13 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: use a new method to create mfx session when using oneVPL dispatcher In oneVPL, MFXLoad() and MFXCreateSession() are required to create a workable mfx session[1] [1] https://spec.oneapi.com/versions/latest/elements/oneVPL/source/programming_guide/VPL_prg_session.html#onevpl-dispatcher Part-of: 2021-02-18 13:38:25 +0800 Haihao Xiang * meson_options.txt: * sys/msdk/meson.build: msdk: allow user build this plugin against MFX version 2.2+ (oneVPL) Intel oneVPL SDK (oneVPL) is a successor to Intel Media SDK (MSDK)[1]. User may use -Dmfx_api=MSDK or -Dmfx_api=oneVPL to specify the required SDK when building this plugin. If the SDK is not specified, meson will try MSDK firstly, then oneVPL if MSDK is not available Version 2.2+ is required in this patch because pkg-config file was not provided officially before version 2.2 [1]https://spec.oneapi.com/versions/latest/elements/oneVPL/source/appendix/VPL_intel_media_sdk.html Part-of: 2021-05-14 11:56:49 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9dec.c: msdkvp9dec: do not include mfxvp9.h The VP9 related definitions in mfxvp9.h are available under the condition of 'MFX_VERSION >= MFX_VERSION_NEXT', which implies that these definitions are never used in a public release. This is in preparation for oneVPL support because mfxvp9.h was removed from oneVPL Part-of: 2020-08-04 12:53:35 +0800 Haihao Xiang * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: don't load user plugins for MFX version 2.0+ MFX version 2.0+ no longer supports user plugins, please refer to the links for details https://spec.oneapi.com/versions/latest/elements/oneVPL/source/appendix/VPL_intel_media_sdk.html#msdk-full-name-feature-removals https://github.com/oneapi-src/oneVPL This is in preparation for oneVPL support Part-of: 2020-08-04 12:55:35 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: exclude the audio code for MFX version 2.0+ MFX version 2.0+ no longer supports audio functions, please refer to the links below for details https://spec.oneapi.com/versions/latest/elements/oneVPL/source/appendix/VPL_intel_media_sdk.html#msdk-full-name-feature-removals https://github.com/oneapi-src/oneVPL This is in preparation for oneVPL support Part-of: 2021-05-14 14:08:17 -0400 Nicolas Dufresne * gst/codecalpha/gstalphacombine.c: alphacombine: Ignore all events coming from the alpha_pad As per usage of this element, everything from this pad is a duplicate. Instead of implemented needless aggregation, simply drop all events from this pad and let the one from the main stream passthrough. Also stop proxying some queries from the alpha pad_too. This fixes racy test failure: - validate.file.playback.scrub_forward_seeking.opus_vp9-alpha_webm Part-of: 2021-05-14 14:05:59 -0400 Nicolas Dufresne * gst/codecalpha/gstcodecalphademux.c: codecalphademux: Do not set a GstFlowReturn from a boolean This was a small overlook, gst_pad_send_event() returns a boolean, so setting it into ret could confuse the flow combiner. Though, it didn't bug, since both 0 and 1 are success (though 1 being undefined). Part-of: 2021-05-14 14:04:00 -0400 Nicolas Dufresne * gst/codecalpha/gstcodecalphademux.c: codecalphademux: Remove eos flow return workaround It turns out that downstream returning OK after EOS is a bug in multiqueue. As we moved to queue, we no longer have this issue. Let's keep the code clean and just assuming that downstream will keep returning EOS and allow convergence of flow. Part-of: 2021-05-13 15:18:34 -0400 Olivier Crête * ext/openh264/gstopenh264element.c: openh264: Don't use GOnce for ABI check It turns out the value used for g_once_* APIs can't be zero. And this is a very cheap check, so let's just do it every time. Part-of: 2021-05-13 15:25:57 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtc test: Print content of error GstMessage Makes it easier to interpret the result of the CI! Part-of: 2021-05-06 13:52:32 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin tests: Add test for intersection src pad caps This checks that the codec preferences are intersected also with what the src pad can handle. Part-of: 2021-04-14 19:46:56 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtc test: Add explicit test clock This way the test clock is not linked to the multiple harnesses Part-of: 2021-05-06 17:58:15 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Intersect answer with codec prefs & capabilities In case the local capabilities changed since the last negotiaton, we need to re-intersect and see if the result would be different. Part-of: 2021-05-06 17:50:38 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Ignore current caps for codec negotiation On the sink pad, we want the caps of the current stream, those are the "received_caps" field. If we haven't received caps yet, then we only care about the caps that the next element can accept, that is the caps from the peer pad (and the preferences). Otherwise, we prevent re-negotiation to a better codec when possible. Part-of: 2021-05-05 19:21:18 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Remove dead code The function is only called to create an offer, so no need to pass the offer parameter and then check it. Part-of: 2021-05-05 19:18:02 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtc test: Add test for codec preferences negotiation Validate that it does the intersection with the caps from the sink pad and rejects the offer creation otherwise. Part-of: 2021-05-05 19:00:11 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.h: webrtcbin: Refactor codec preference retrieval Now intersect against pads on both sides if they are available. If the intersection fails, we now just reject the creation of the offer or answer as it means that the codec_preferences are too restrictive or that the caps on both sides the webrtcbin are not compatible. Part-of: 2021-04-30 17:04:12 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Intersect codec preferences with caps from pads When creating an offer or an answer, also take into account the caps on the pads as well as the codec preferences when both are set. Part-of: 2021-04-30 16:21:14 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: Implement caps queries on sinkpad based on codec preferences Also includes a unit test. Part-of: 2021-04-30 15:04:33 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Hold transceiver lock when accessing codec_preferences This is required to allow the applications to modify the preferences. Part-of: 2021-04-30 14:55:41 -0400 Olivier Crête * gst-libs/gst/webrtc/rtptransceiver.c: webrtcbin: Hold lock while accessing the codec preferences They could be changed at runtime by the application, so take the lock when modifying them. Part-of: 2021-04-21 15:55:00 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin tests: Use properties to access the inside of the transceiver object This will allow hiding the insides from unsafe application access. Part-of: 2021-04-21 15:54:14 -0400 Olivier Crête * gst-libs/gst/webrtc/rtptransceiver.c: webrtc rtptransceiver: Implement "codec-preferences" property This allows safer access to the internals of the codec-preferences Part-of: 2021-04-21 15:38:00 -0400 Olivier Crête * gst-libs/gst/webrtc/rtptransceiver.c: webrtc rtptransceiver: Implement "kind" property Implement the property as read-only to follow the WebRTC spec Part-of: 2021-04-21 15:34:07 -0400 Olivier Crête * gst-libs/gst/webrtc/rtptransceiver.c: webrtc rtptransceiver: Implement "current-direction" property Implement the property as read-only to follow the WebRTC spec Part-of: 2021-04-21 15:29:18 -0400 Olivier Crête * gst-libs/gst/webrtc/rtptransceiver.c: webrtc rtptransceiver: Implement "mid" property Implement the property as read-only to follow the WebRTC spec Part-of: 2021-05-12 17:32:20 -0400 Nicolas Dufresne * gst/codecalpha/gstalphadecodebin.c: alphadecodebin: Use normal queues instead of multiqueue The multiqueue was too flexible for our need, allowing to queue passed the configured threshold. It also didn't work well when trying to propagate EOS flow return. Part-of: 2021-05-12 17:29:02 -0400 Nicolas Dufresne * gst/codecalpha/gstalphacombine.c: alphacombine: Implement flow return propagation The EOS handling was not the problem way. Instead of this, implement proper prorogation of the flow return for the alpha chain function. Part-of: 2021-05-12 15:13:11 -0400 Nicolas Dufresne * gst/codecalpha/gstcodecalphademux.c: codecalphademux: Fix handling of flow combine As the alphacombine is simplified to received matching pair of buffers, we can't just stop streaming when we receive EOS from downstream. Due to usage of queue, the moment we get this return value may differ. Though, by continuing pushing, we override the last_flowret on the pad which can make us miss that we effectively can combine all flow into EOS. Part-of: 2021-04-29 17:14:43 -0400 Thibault Saunier * gst/debugutils/gsttestsrcbin.c: testbinsrc: Handle setting URI on the fly Reusing existing streams when possible Part-of: 2021-01-20 14:55:09 +0800 Bing Song * data/meson.build: * data/targets/file-extension/ts.gep: transcoding: add encoding target for TS. Add encoding target for streamming. Part-of: 2021-04-29 16:51:27 +0200 Johan Sternerup * tests/check/elements/webrtcbin.c: webrtcbin: Add unit test for closing of data channels Add test for verifying that the data channel "close" action signal triggers an SCTP_RESET_STREAMS request that is propagated to the other side and eventually leads to both sides closing properly. Part-of: 2021-04-22 10:43:55 +0200 Johan Sternerup * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: Fix deadlock when receiving new sctp stream When receiving an sctp message for a stream that not yet has an sctpdec pad associated with it means we end up in _on_sctpdec_pad_added. At this point we're holding the sctpassocation lock. Then it's not possible to take the pc_lock because then code executing under the pc_lock (which means anything in the webrtc thread) may not take the sctpassociation lock. For example, running the data channel close procedure from the webrtc thread means we eventually end up sending a SCTP_RESET_STREAMS packet which needs to grab the sctpassociation lock. This means _on_sctpdec_pad_added simply cannot take the pc_lock and also it is not possible to postpone the channel creation as we need to link the pads right there. The solution is to introduce a more granular dc_lock that protects only the things that needs to be done to create the datachannel. Part-of: 2021-04-20 10:45:46 +0200 Johan Sternerup * ext/sctp/sctpassociation.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/sctptransport.c: * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcdatachannel.h: webrtcbin: Support closing of data channels Support for closing WebRTC data channels as described in RFC 8831 (section 6.7) now fully supported. This means that we can now reuse data channels that have been closed properly. Previously, an application that created a lot of short-lived on-demand data channels would quickly exhaust resources held by lingering non-closed data channels. We now use a one-to-one style socket interface to SCTP just like the Google implementation (i.e. SOCK_STREAM instead of SOCK_SEQPACKET, see RFC 6458). For some reason the socket interface to use was made optional through a property "use-sock-stream" even though code wasn't written to handle the SOCK_SEQPACKET style. Specifically the SCTP_RESET_STREAMS command wouldn't work without passing the correct assocation id. Changing the default interface to use from SOCK_SEQPACKET to SOCK_STREAM now means we don't have to bother about the association id as there is only one association per socket. For the SCTP_RESET_STREAMS command we set it to SCTP_ALL_ASSOC just to match the Google implementation. Part-of: 2021-05-07 16:30:49 -0400 Nicolas Dufresne * gst/videoparsers/gstvp9parse.c: vp9parse: Manually fixate codec-alpha field This is a newly introduced field, and we interpret it as false when missing in the caps. Otherwise, a simple capsfilter will just add the missing field and keep going, despite the upstream caps being a superset. Part-of: 2021-05-07 11:28:21 -0400 Nicolas Dufresne * gst/codecalpha/gstplugin.c: doc: codecalpha: Add plugin documentation Part-of: 2021-05-06 09:12:34 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Add codecalpha plugin to the plugins cache Part-of: 2021-04-22 16:50:17 -0400 Nicolas Dufresne * gst/codecalpha/gstalphadecodebin.c: * gst/codecalpha/gstalphadecodebin.h: * gst/codecalpha/gstplugin.c: * gst/codecalpha/gstvp8alphadecodebin.c: * gst/codecalpha/gstvp8alphadecodebin.h: * gst/codecalpha/gstvp9alphadecodebin.c: * gst/codecalpha/gstvp9alphadecodebin.h: * gst/codecalpha/meson.build: alphadecodebin: Add wrappers to decode VP8/VP9 alpha This includes base class with wrappers bin that will create a static pipeline capable of handling the VP8/VP9 alpha channel decoding using two instances of vp8/vp9dec element each. Part-of: 2021-04-02 15:07:22 -0400 Nicolas Dufresne * gst/codecalpha/gstalphacombine.c: * gst/codecalpha/gstalphacombine.h: * gst/codecalpha/gstplugin.c: * gst/codecalpha/meson.build: codecalpha: Implement alphacombine element This element will merge video buffers in order to use the alpha stream luma plane as the alpha of the video stream. The implementation is zero-copy and currently only support merging I420 stream with an I420, NV12 or GRAY8 alpha stream. Part-of: 2021-03-30 15:34:11 -0400 Nicolas Dufresne * gst/codecalpha/gstcodecalphademux.c: alphacodecdemux: Implement meta demuxing Produce two streams from a buffer that has GstVideoCodecAlphaMeta attached. Part-of: 2021-03-24 16:48:35 -0400 Nicolas Dufresne * gst/codecalpha/gstcodecalphademux.c: * gst/codecalpha/gstcodecalphademux.h: * gst/codecalpha/gstplugin.c: * gst/codecalpha/meson.build: * gst/meson.build: * meson_options.txt: Introduce CODEC Alpha plugin This plugin contains a set of utility elements allowing to extract, decode and combine CODEC (typically VP8/VP9) alpha stream. Part-of: 2021-05-11 13:57:59 +0100 Daniel Stone * ext/openaptx/meson.build: openaptx: Fix to v0.2.0 due to license change openaptx has recently changed its license to explicitly exclude 'Freedesktop projects' from using it, which would include GStreamer, as well as shifting to base terms of GPLv3: https://github.com/pali/libopenaptx/commit/811bc18586d634042618d633727ac0281d4170b8 This unilateral license change is legally dubious in many ways. The original work came from ffmpeg under the LGPL v2.1, to which third parties may not add additional restrictions (per sections 2 and 7 of the LGPL v2.1), so LGPLv2.1 + may-not-use restrictions are not permissible without the explicit consent of the original copyright holder. The upgrade to LGPL v3.0 without explicit consent from the original copyright holder is in itself permissible through the upgrade terms of the LGPL, however the additional restrictions imposed again conflict with sections 7 and 10 of the GPLv3 (as the base of the LGPLv3, with those sections not being invalidated by the additional LGPLv3 text). Though it does not impact the legal validity of the redeclaration of licensing, the claims that freedesktop.org has violated the terms of the openaptx license in the past are false; the work was contributed to the PulseAudio project with an explicit open license, with the original contributor later attempting to revoke permission for its use, despite the explicit terms of the license giving no ability to do so as they lack a change-of-heart provision. The claims that Collabora violated the license are even more baseless; they are based on an assertion that when I (acting on behalf of freedesktop.org rather than Collabora, in my own unpaid time) banned users from freedesktop.org's GitLab instance due to sustained violations of the Code of Conduct users agree to when creating an account on that platform, this somehow constituted a violation of the license. Even if Collabora were somehow involved in this - which they were not at all - there is no requirement under open licenses that users be given unlimited access under all terms to any platform on the internet. Such terms would mean that open development could only be conducted on completely unmoderated platforms, which does not stand up to any scrutiny. Regardless of the declared license having no legal validity, the LGPL's explicit provision in both v2.1 and v3.0 for such additional restrictions to be stripped, and the low likelihood of it ever being used together with GStreamer as its licensing terms would not be acceptable to any distribution, enforcing a version check seems like the safest way to ensure complete legal clarity, not put users or downstreams in any jeopardy, and comply with the author's stated wishes for v0.2.1 and above to not be used by GStreamer. Signed-off-by: Daniel Stone Part-of: 2021-05-11 10:21:27 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Update cache after RGBP pixel format addition Related to https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1141 Part-of: 2021-05-09 23:42:46 +0800 He Junyan * sys/va/gstvaav1dec.c: * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Do not use a common parent_class in vabasedec. We have only one copy of gst_va_base_dec_parent_class inside the vabasedec, so it can not handle the case when there are multi va decoders inside one pipeline. The pipeline: gst-launch-1.0 filesrc location=xxx.h264 ! h264parse \ ! vah264dec ! msdkh265enc ! vah265dec ! fakesink generates a assertion of "invalid cast from 'GstVaH264Dec' to 'GstH265Decoder" and gets a crash. We should keep the parent_class for each decoder type. Part-of: 2021-05-07 16:02:04 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: libs: codecs: h264decoder: Assert output_picture virtual method. For new code it's nice to assert if the derived class implemented the output_picture virtual method. Otherwise a segmentation fault occurs. All other decoders assert this method. Part-of: 2021-05-06 18:37:45 +0200 Jan Alexander Steffens (heftig) * ext/wpe/WPEThreadedView.cpp: * ext/wpe/gstwpesrc.cpp: wpe: Properly free property fields The set location (in two places) and loaded bytes were not freed when the element is destroyed. Part-of: 2021-05-06 19:17:29 +0200 Jan Alexander Steffens (heftig) * ext/wpe/gstwpesrc.cpp: wpe: Properly lock property fields Use the object lock for the following fields: - `bytes`: Written by the `load-bytes` signal unless running; consumed on start. - `draw_background`: Read and written by the `draw-background` property. - `location`: Read and written by the `location` property and the URI handler. Part-of: 2021-05-07 11:13:06 +0200 Jan Alexander Steffens (heftig) * gst/rtp/gstrtpsrc.c: rtpsrc: Plug leak of rtcp_send_addr Part-of: 2021-05-07 11:13:46 +0200 Jan Alexander Steffens (heftig) * gst/rtp/gstrtpsink.c: rtpsink: Return proper pad from _request_new_pad Bizarrely, it returned a pad from the child rtpbin. I noticed because our application leaked the implicitly created ghost pad. Make an explicit ghost pad so this works properly. Part-of: 2021-05-07 11:12:39 +0200 Jan Alexander Steffens (heftig) * gst/rist/gstristsrc.c: rist: Plug leak of rtcp_send_addr Part-of: 2021-05-07 11:10:17 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaav1dec.c: va: av1dec: Avoid structure overwrite. VADecPictureParameterBufferAV1.mode_control_fields.bits were filled twice, overwriting to zeros the first assignation. This patch unifies both assignations. Also it makes explicit an enum casting between libva and gstreamer; it removes the assignation to zero a deprecated parameter; and use an appropriate assertion. Part-of: 2021-05-06 17:07:51 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.c: webrtc: only add nack pli by default if kind is video Sending/receiving PLI's (Picture Loss Indication) for non-video doesn't really make sense. This also matches what the browsers do. Part-of: 2021-05-06 17:06:44 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.c: * ext/webrtc/utils.h: webrtc: move webrtc_kind_from_caps() to utils Part-of: 2021-04-21 17:34:26 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2client.h: * sys/wasapi2/gstwasapi2sink.c: * sys/wasapi2/gstwasapi2src.c: * sys/wasapi2/gstwasapi2util.h: wasapi2: Propagate HRESULT error code everywhere ... instead of boolean value which cannot notify the reason of the operation failure. Part-of: 2021-05-06 10:46:15 +0300 Sebastian Dröge * ext/hls/gsthlssink.c: * ext/hls/gsthlssink2.c: * ext/hls/gstm3u8playlist.c: * ext/hls/gstm3u8playlist.h: hlssink(2): Don't write deprecated EXT-X-ALLOW-CACHE metadata It's deprecated since quite a few versions and various validators complain about it. Instead of the in-manifest metadata this should be handled by the normal HTTP caching headers. Part-of: 2021-05-06 01:35:04 +0900 Seungha Yang * sys/decklink/gstdecklink.cpp: decklinkvideosrc: Fix crash when mode is not specified In that case, we will get "VideoInputFrameArrived" callback without "VideoInputFormatChanged" Part-of: 2021-05-05 12:34:38 +0530 Nirbheek Chauhan * gst/videoparsers/gsth265parse.c: h265parse: don't invalidate the last PPS when parsing a new SPS This is a port of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2019 to h265parse. When a SPS is received then any previous PPS remains valid. So don't clear the PPS flag from the parser state. This is important because there are encoders that don't generated a PPS after every SPS. Part-of: 2021-04-20 22:18:09 +0200 François Laignel * ext/dash/gstdashsink.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: * ext/hls/gsthlssink2.c: * ext/resindvd/resindvdbin.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportreceivebin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/rist/gstristsink.c: * gst/rtp/gstrtpsink.c: * gst/sdp/gstsdpdemux.c: * gst/transcode/gsttranscodebin.c: * gst/transcode/gsturitranscodebin.c: * sys/dvb/dvbbasebin.c: * sys/uvch264/gstuvch264_src.c: * tests/check/elements/asfmux.c: * tests/check/elements/cccombiner.c: * tests/check/elements/dtls.c: * tests/check/elements/mpegtsmux.c: * tests/check/elements/mplex.c: * tests/check/elements/webrtcbin.c: * tests/examples/playout.c: Use gst_element_request_pad_simple... Instead of the deprecated gst_element_get_request_pad. Part-of: 2021-05-04 12:29:14 +0200 Stéphane Cerveau * gst/mxf/mxfdemux.c: mxf: check EOS cond with any segment's flag The previous test was preventing the pad to be in EOS when the segment position was greater than segment stop. It ended up consuming all the data before getting in EOS. Regarding GST_SEEK_FLAG_SEGMENT it seems to be correctly handled later in the method. Part-of: 2021-04-19 18:25:06 +0200 Stéphane Cerveau * gst/mxf/mxfdemux.c: mxfdemux: fix keyframe detection in index An index entry should be considered as a keyframe if the flags allow a random access only. Part-of: 2021-04-24 10:43:47 +0000 Antonio Rojas * ext/openexr/gstopenexrdec.cpp: Fix build with OpenEXR 3 Add a header that is no longer transitively included Part-of: 2021-04-22 19:21:01 -0300 Daniel Almeida * gst-libs/gst/codecs/gstvp9statefulparser.c: codecs: gstvp9statefulparser: do not carry over segmentation flags Do not carry over segmentation flags from previous frames. The spec says in 7.2.10 that the feature data carry over from previous frames if not updated, but the flags do not. Consider what would happen if a flag B is to depend on a flag A, and B carries over as set from another frame. Further consider that A is now not set in this particular frame. This leads to the invalid state in which flag B is set but flag A isn't. This might cause the bitstream to be rejected by accelerators down the line. Fix it. Part-of: 2021-04-29 21:44:07 +0900 Seungha Yang * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11desktopdup.h: * sys/d3d11/gstd3d11desktopdupsrc.cpp: d3d11desktopdup: Don't ignore error DXGI_ERROR_UNSUPPORTED Although Microsoft's DXGIDesktopDuplication example is considering the DXGI_ERROR_UNSUPPORTED as an expected error (See https://github.com/microsoft/Windows-classic-samples/tree/master/Samples/DXGIDesktopDuplication) it might not be recoverable error if application is run against a discrete GPU (See https://docs.microsoft.com/en-US/troubleshoot/windows-client/shell-experience/error-when-dda-capable-app-is-against-gpu) Do early error out if the error happens while opening device, instead of retrying it forever. Part-of: 2021-04-29 22:10:15 +0200 Jakub Adam * sys/d3d11/gstd3d11desktopdup.cpp: d3d11desktopdup: Support desktop switches Before creating output duplication interface, call SetThreadDesktop() with HDESK of the current input desktop in case a desktop switch has occurred. This allows d3d11desktopdupsrc to capture Windows User Account Control (UAC) prompts, which appear on a separate secure desktop. Otherwise IDXGIOutput1::DuplicateOutput() will return E_ACCESSDENIED and the element won't produce any frames as long as the UAC screen is active. Note that in order to access secure desktop the application still has to run at LOCAL_SYSTEM privileges. For GStreamer applications running with regular user privileges this change has no effect. Part-of: 2021-04-27 18:08:30 +0000 Jakub Adam * sys/winscreencap/dxgicapture.c: dxgicapture: reinitialize duplication interface on ERROR_ACCESS_LOST IDXGIOutputDuplication can become invalid for example when there's desktop switch, resolution change or Windows User Account Control prompt appears on screen. When that happens, try to re-create the duplication interface for the changed output. Note that in the case of UAC prompt this operation will fail if the GStreamer process doesn't run at LOCAL_SYSTEM privileges. In such situation the source element won't create any frames as long as the output is occupied by UAC screen. In order to enable UAC access to sufficiently privileged GStreamer processes, call SetThreadDesktop() with the desktop handle that currently receives user input before creating our output duplication. Part-of: 2021-04-29 09:35:51 +0800 Haihao Xiang * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: msdk: set correct parameters for BGRx frame Otherwise when mapping BGRx frame onto CPU's memory, CPU will get wrong data for B, G, R components Part-of: 2021-04-29 21:12:42 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: advertise support for transport-cc rtcp-fb by default Still requires explicit enabling by the application through the header extension on all the relevant payloaders. Part-of: 2021-04-29 21:11:25 +1000 Matthew Waters * ext/webrtc/gstwebrtcstats.c: webrtc/stats: provide the twcc stats when available Part-of: 2021-04-28 10:52:29 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: Disable derived for Gallium if RGB and reading. Part-of: 2021-04-22 17:08:13 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: Disable derived for i965 if YUV and writing. The problem is for uploading YUV frames using derived images, is that derived images imply tiling, so frames are wrongly uploaded. Though derived for reading might work we cannot know the Intel graphics generation to validate the caching. Overall, it's safer to disable derived images for i965. Part-of: 2021-04-22 17:07:28 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadisplay.c: * sys/va/gstvadisplay.h: va: display: Fix typo. Part-of: 2021-04-22 12:42:35 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: Hack for i965 to get linear RGB DMABufs. i965 driver has a hack to provide linear dmabufs, which is required for RGB formats, since they are directly uploaded by glupload, ignoring tiled modifiers. Part-of: 2021-04-22 15:51:27 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: Remove unused parameter. Part-of: 2021-03-31 11:04:17 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: Set usage hint generic if DMABuf. iHD driver sets a tiled DRM modifier if surface's usage hint is set to VPP_WRITE. This result in a garbled rendering when using glimagesink. This patch changes the usage hint to generic if the caps feature is DMABuf. Either way only iHD driver, so far, uses the usage hint flag. Part-of: 2021-04-20 12:52:26 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: Get info from caps in decide_allocation() decide_allocation() occurs before set_caps(), where out_info is set, thus setting srcpad_info with zeros or old values. Instead of it, the caps, from the allocation query, are converted and used. Part-of: 2021-04-23 13:56:43 +0200 Timo Wischer * ext/avtp/gstavtpcrfbase.h: avtp: crf: Remove superfluous sink_event variable This variable was introduced by commit 12ad2a4bcd6c ("avtp: Introduce the CRF Sync Element") but it was never used: $ git log -G "sink_event" -- ext/avtp Signed-off-by: Timo Wischer Part-of: 2020-02-17 14:11:15 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: Add support for error report too Part-of: 2019-12-06 12:48:37 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkdecproputil.c: * sys/msdk/gstmsdkdecproputil.h: * sys/msdk/gstmsdkh264dec.c: msdkh264dec: report error to user Sometimes user want to know what the error is when decoding a stream, This commit adds a property of report-error to msdkh264dec. When report-error is TRUE, msdkh264dec may catch bitstream error and frame corruption, then report the error to application by using GST_ELEMENT_ERROR Refer to the code in https://github.com/Intel-Media-SDK/MediaSDK/tree/master/samples Part-of: 2019-12-06 12:02:50 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: allow sub class to add extra parameters for additional configuration MSDK allows user add extended buffers to a bitstream for additional configuration. This commit is to support this feature in this plugin Part-of: 2021-04-27 21:52:31 +0900 Seungha Yang * sys/d3d11/gstd3d11basefilter.cpp: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11videosink.cpp: d3d11: Handle device change If incoming buffer holds other d3d11 device, and user wants any device (i.e., adapter index wasn't specified explicitly) update our device with that of buffer. Part-of: 2021-04-23 19:29:55 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: d3d11videosink: Delay window setup as much as possible ... so that videosink can handle device update with d3d11 device of the first buffer Part-of: 2021-04-23 18:44:41 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11desktopdupsrc.cpp: * sys/d3d11/gstd3d11upload.cpp: d3d11: Don't accept buffer pool which holds different device At the moment, d3d11 plugin doesn't support texture sharing between different device Part-of: 2021-04-23 18:45:48 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Run gst-indent Part-of: 2021-02-23 11:56:53 -0500 Aaron Boxer * ext/meson.build: * ext/onnx/gstonnx.c: * ext/onnx/gstonnxclient.cpp: * ext/onnx/gstonnxclient.h: * ext/onnx/gstonnxelement.c: * ext/onnx/gstonnxelement.h: * ext/onnx/gstonnxobjectdetector.cpp: * ext/onnx/gstonnxobjectdetector.h: * ext/onnx/meson.build: * meson_options.txt: onnx: add plugin to apply ONNX neural network models to video This MR provides a transform element that leverage ONNX runtime to run AI inference on a broad range of neural network toolkits, running on either CPU or GPU. ONNX supports 16 different providers at the moment, so with ONNX we immediately get support for Nvidia, AMD, Xilinx and many others. For the first release, this plugin adds a gstonnxobjectdetector element to detect objects in video frames. Meta data generated by the model is attached to the video buffer as a custom GstObjectDetectorMeta meta. Part-of: 2021-04-26 18:00:27 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Fix AFD/Bar VANC size check Part-of: 2021-04-23 18:05:06 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Automatically detect widescreen vs. normal NTSC/PAL Based on the AFD aspect ratio flag the source can detect (in mode=auto) whether this NTSC/PAL mode is actually a normal or a widescreen one and select the caps according to that. Part-of: 2021-03-30 12:39:21 -0400 Olivier Crête * gst/jpegformat/gstjpegparse.c: jpegparse: Don't generate timestamp for 0/1 framerates Part-of: 2021-04-23 23:20:54 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Set flushing to internal pool on flush event d3d11 decoders use internal pool for DPB texture and Gst*Decoder::new_picture() will be blocked if internal pool is full. We should be able to unblock in on flush-start event as expected. Part-of: 2021-04-23 16:53:16 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11decoder.cpp: d3d11: Fix wrong GstD3D11BufferPool type check Fix typos Part-of: 2021-03-31 18:07:40 -0300 Thibault Saunier * gst/rtp/gstrtpsrc.c: rtpsrc: Fix wrong/NULL URI handling We can reset the URI to NULL and this fix a deadlock in that case or when the URI was invalid. Part-of: 2021-04-22 16:45:27 +0000 Nazar Mokrynskyi * ext/webrtc/gstwebrtcbin.c: webrtcbin: downgrade "dropping ICE candidates from SDP" from warning to debug level Part-of: 2021-04-16 20:39:35 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Attach rtpbin even for data channels This is required because the same transport may later be used for RTP. In which case the RTCP needs to flow bi-directionnally already. Part-of: 2021-03-04 00:41:09 -0800 Frederich Munch * ext/webrtc/nicetransport.c: Fix missing unref of nice-agent causing sockets to never close. Part-of: 2021-04-22 16:09:40 -0400 Doug Nazar * ext/webrtc/sctptransport.c: webrtc: Fix sctp task's return type. GstWebRTCBinFunc expects a GstStructure* return type. Fixes segfault on PowerPC. Part-of: 2021-04-22 15:50:15 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Fix UWP build Add missing GST_MF_HAVE_D3D11 define guard Part-of: 2021-04-22 15:42:23 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2: Fix UWP build KSAUDIO_SPEAKER_* defines are WINAPI_PARTITION_DESKTOP only Part-of: 2021-04-21 21:43:59 +0200 Mathieu Duponchelle * gst/mpegtsdemux/tsdemux.c: tsdemux: fix truncated output segment when seeking with a stop In disabling the stop adjustment for negative rates in 03031037fafd2d535bbefb1fdf6024b5d1159043 , two instructions were inverted resulting in the stop always being adjusted by 0 Part-of: 2021-04-20 23:51:49 -0400 Doug Nazar * tests/check/elements/netsim.c: tests/netsim: Set src caps before creating buffers GstHarness requires the source pad caps to be set before buffer allocations. Part-of: 2021-04-20 02:00:18 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: * gst-libs/gst/d3d11/gstd3d11format.h: * tests/check/elements/d3d11colorconvert.c: d3d11: Add support for BGRx and RGBx formats For such formats, we can re-use existing BGRA/RGBA implementations but ignoring alpha channel Part-of: 2021-04-20 18:37:15 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2: Implement default audio channel mask Some capture devices might not provide channel mask value which will result in capturing failure because of unknown channel mask in case that device generates more than 2 channels. Although it might not be correct, we can assume channel mask with the given number of channels. Part-of: 2021-04-20 18:40:40 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2clinet: Simplify set caps Don't need to iterate all structure to set identical values Part-of: 2021-04-20 18:48:18 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2client: Run gst-indent Part-of: 2021-04-13 17:35:58 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin test: Don't fail if data channel is created In tests that voluntarily create a data channel. Part-of: 2021-04-19 19:06:50 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Filter caps isn't fixed Fix an assertion because the filter paramter passed to gst_caps_is_equal_fixed() wasn't fixed. So use the regular gst_caps_is_equal() instead. Part-of: 2021-04-20 02:04:03 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: d3d11: Update plugin doc cache Updating for removed d3d11videosink wrapper bin and the change of https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2113 Part-of: 2021-04-17 20:37:13 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11videosinkbin.cpp: * sys/d3d11/gstd3d11videosinkbin.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Remove d3d11videosink wrapper bin Drop d3d11videosink wrapper bin and handle texture upload in d3d11videosink. Part-of: 2021-04-18 13:49:59 +0100 Philippe Normand * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Propagate VAD to audio level meta Whenever the voice activity changed on the stream, update or create an AudioLevelMeta and associate it to the corresponding buffer. Fixes #1073 Part-of: 2021-04-19 13:06:23 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstcccombiner.c: cccombiner: Use correct enum when registering the max-scheduled property Part-of: 2021-04-15 14:06:59 -0400 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: wpe: Remove code targeting WebKit < 2.24 We already depend on wk >= 2.24 Part-of: 2021-04-15 13:28:42 -0400 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: wpe: Make threaded view singleton creation thread safe It was leading to interesting failures. Part-of: 2021-04-15 00:02:55 +0900 Seungha Yang * sys/d3d11/gstd3d11pluginutils.cpp: d3d11: pluginutils: Fix wrong gst_memory_unmap() on _map() failure It was obvious typo Part-of: 2021-04-13 17:15:22 -0400 Doug Nazar * tests/check/elements/avtpcvfdepay.c: tests/avtp: increase timeout of test_depayloader_fragmented_big Part-of: 2021-04-14 01:59:23 -0400 Doug Nazar * tests/check/elements/dash_mpd.c: check: fix dash_mpdparser_check_mpd_client_set_methods test. Setting guint64 valist properties without type specifier fails on 32bit archs. Part-of: 2021-04-13 16:34:15 -0400 Doug Nazar * tests/check/elements/line21.c: line21enc: fix remove-caption-meta property test It's possible for the same address to be allocated to the decoded metadata. Switch test to actual detect if it was removed. Part-of: 2021-04-13 06:40:43 -0400 Doug Nazar * tests/check/elements/shm.c: tests: fix shm test deadlock Stopping the consumer first would occasionally allow the producer to fill the shm segment causing it to block in send() and unable to be stopped. Part-of: 2021-04-13 05:54:37 -0400 Doug Nazar check: Fix test dash_mpdparser_xlink_period Test used http://404/ERROR/XML.period as an invalid url. Curl now interprets that as an 32bit int and tries an actual connect which timesout. Use .invalid as an IANA reserved domain for invalid DNS. curl -v http://404/ERROR/XML.period * Trying 0.0.1.148:80... Part-of: 2021-04-13 15:42:09 +0800 He Junyan * sys/va/gstvaallocator.c: va: allocator: Fix an unmap typo in _va_copy. No need to unmap the the src memory when failing to allocate the dst mem. It has not been mapped yet. Part-of: 2021-04-06 12:03:32 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: don't fall back to the default device Ohterwise when user set a wrong device, the warning message doesn't get printed if user doesn't set a right debug level in the environment, this behavior might mislead user that the wrong device is being used. This fixed https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1567 Part-of: 2021-04-12 17:54:31 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Simplify answer_caps intersection code a little Part-of: 2021-04-12 15:35:41 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin test: Wait for set-local-desc & set-remote-desc to continue To avoid racing betwen the SDPs being set and the next step of the test, let's wait for setting the SDP both locally and remotely to succeed. of the test Part-of: 2021-04-01 14:51:30 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/webrtcdatachannel.c: webrtcbin: Move GstPromise reply to operation framework This makes it possible to reply to all promises in a consistent way without having to do a unlock/relock that is always risky. Part-of: 2021-04-01 14:41:11 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Make sure PC_LOCK is release when replying to promise Part-of: 2021-03-31 11:56:10 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Take PC lock around all entry points All of those action signals change the internal state, so protect it by using the PC_LOCK Part-of: 2021-03-31 11:49:36 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Take PC_LOCK when requesting new pad This is needed to avoid having the state change under us. Part-of: 2021-03-31 11:41:45 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin test: Add for the case where a second m-line is renegotiated This is for the case where there answerer forces a specific media type for a m-line, but he origin offer only has the other media type. In this case, we will create a second transceiver on receiving the offer and add the desired media type using renegotiation. Part-of: 2021-03-31 11:40:28 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Ensure that query caps method returns valid caps This means rejecting any caps that aren't fixed. Also, use a filter that will create unfixed caps if the other side just returns ANY. Part-of: 2021-03-31 11:33:21 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Associate the stream with a new transceiver Otherwise, this newly created transceiver has no stream and it aborts later when it tries to connect the input pad. Part-of: 2021-03-31 11:30:16 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Match unassociated transceiver by kind too When a new m-line comes in that doesn't have a transceiver, only match existing transceivers of the same kind. Part-of: 2021-03-30 18:01:56 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Fix typoe in name of error GstStructure Part-of: 2021-03-30 16:16:50 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtc test: Verify that forcing different kinds on peers fails If the offer contains an audio kind and a video kind, forcing them both at m-line zero will fail. Part-of: 2021-03-30 16:04:33 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtc tests: Verify that create-offer is rejected when needed Verify that it gets rejected if a m-line at index 1 is requested but there is no m-line 0. Part-of: 2021-03-29 19:47:21 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin test: Add test for various cases where get_request_pad is meant to fail This should ensure that the recently added code works. Part-of: 2021-03-26 21:09:04 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Enforce direction on request sink pad with a specific name Part-of: 2021-03-26 20:55:36 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtcbin: Try to match an existing transceiver on pad request This should avoid creating extra transceivers that are duplicated. Part-of: 2021-03-26 20:02:13 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Validate locked m-lines in set*Description Verify that the remote description match the locked m-lines, otherwise just reject the SDP. Part-of: 2021-03-26 19:38:57 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: Remove unused session_mid_map Part-of: 2021-03-26 18:15:50 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.h: webrtcbin: Enforce m-line restrictions when creating offer First fail the offer creation if the mid of an existing offer doesn't match a forced m-mline. Then, for all newly added mlines, first look for a transceiver that forces this m-line, then add a "floating" one, then the data channel. And repeat this until we're out of transceivers. Part-of: 2021-03-26 15:57:15 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.h: webrtcbin: Remember if a transceiver had a forced m-line Part-of: 2021-03-26 15:54:35 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Enforce same-kind on request sink pad with a specific name Part-of: 2021-03-26 15:23:34 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Enforce compatible caps on pad request If a pad is requested with certain caps and there is already a transceiver, reject the pad request if the caps don't match. Part-of: 2021-03-26 15:19:09 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Reject pad request for a specific m-line if it already exists This way, the app developer is in control. Part-of: 2021-03-26 15:02:50 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Make request-pad validation an early return This reduces the indendation. Part-of: 2021-03-26 14:48:58 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Add document for webrtcbin itself to generated doc Part-of: 2021-03-23 20:18:24 -0400 Olivier Crête * tests/check/elements/webrtcbin.c: webrtcbin test: Test adding a stream to a stream+datachannel This use-case was previously broken by the expectation of having a 1-1 match between the pad id and the m-line index Part-of: 2021-03-23 19:51:00 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtc: Reset received_caps when releasing pad This is to work around a race where the pad is accessed in the webrtc main thread while being released. Part-of: 2021-03-23 17:51:16 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: Split pad name from mline The simple case where this breaks is if you add a datachannel and want to add a new pad (a new media) after). Another case where this is broken is if the order of the media is forced to something different by the peer. It's more simple to just split both things completely. In practice, the pads will be named in the order in which they are allocated, so it shouldn't change the current behaviour, just enable new ones. Part-of: 2021-02-25 05:04:00 +1100 Jan Schmidt * gst/switchbin/gstswitchbin.c: switchbin: When collecting srcpad caps, don't intersect with path caps. The path caps describe the input caps that will select each path, don't intersect those with the srcpad caps, which could be completely different. Instead, when querying allowed caps for the srcpad, just construct the union of all possible output caps from all path srcpads. Part-of: 2021-02-16 15:00:07 +1100 Jan Schmidt * gst/switchbin/gstswitchbin.c: switchbin: Don't report sink pad caps for src pad queries. When handling a caps query on the src pad, don't return the union of input caps. Even when not active, a path element can be queried for srcpad template caps, or for dropping paths the allowed downstream caps is anything - as data will be dropped anyway. Part-of: 2021-02-25 15:22:15 +0100 Stéphane Cerveau * gst/accurip/gstaccurip.c: * gst/accurip/gstaccurip.h: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiff.c: * gst/aiff/aiffelements.h: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/aiff/gstaiffelement.c: * gst/aiff/meson.build: * gst/asfmux/gstasf.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstasfparse.h: * gst/asfmux/gstrtpasfpay.c: * gst/asfmux/gstrtpasfpay.h: * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: * gst/audiofxbad/gstaudiochannelmix.c: * gst/audiofxbad/gstaudiochannelmix.h: * gst/audiofxbad/gstaudiofxbad.c: * gst/audiolatency/gstaudiolatency.c: * gst/audiolatency/gstaudiolatency.h: * gst/audiomixmatrix/gstaudiomixmatrix.c: * gst/audiomixmatrix/gstaudiomixmatrix.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstspectrascope.h: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstsynaescope.h: * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: * gst/audiovisualizers/plugin.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: * gst/autoconvert/gstautovideoconvert.c: * gst/autoconvert/gstautovideoconvert.h: * gst/autoconvert/plugin.c: * gst/bayer/gstbayer.c: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstbayerelements.h: * gst/bayer/gstrgb2bayer.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstplugin.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstviewfinderbin.h: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstchromahold.h: * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstcoloreffects.h: * gst/coloreffects/gstplugin.c: * gst/debugutils/debugutilsbad.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstclockselect.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gstdebugutilsbadelements.h: * gst/debugutils/gsterrorignore.c: * gst/debugutils/gstfakeaudiosink.c: * gst/debugutils/gstfakevideosink.c: * gst/debugutils/gsttestsrcbin.c: * gst/debugutils/gstwatchdog.c: * gst/dvbsubenc/gstdvbsubenc.c: * gst/dvbsubenc/gstdvbsubenc.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: * gst/festival/gstfestival.c: * gst/festival/gstfestival.h: * gst/fieldanalysis/gstfieldanalysis.c: * gst/fieldanalysis/gstfieldanalysis.h: * gst/freeverb/gstfreeverb.c: * gst/freeverb/gstfreeverb.h: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstdodge.h: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstgaussblur.h: * gst/gaudieffects/gstplugin.c: * gst/gaudieffects/gstplugin.h: * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: * gst/gdp/gstgdp.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdpelement.c: * gst/gdp/gstgdpelements.h: * gst/gdp/gstgdppay.c: * gst/gdp/gstgdppay.h: * gst/gdp/meson.build: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstbulge.h: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstcircle.h: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstdiffuse.h: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstfisheye.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstkaleidoscope.h: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmarble.h: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstmirror.h: * gst/geometrictransform/gstperspective.c: * gst/geometrictransform/gstperspective.h: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstpinch.h: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstrotate.h: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsphere.h: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gstsquare.h: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gststretch.h: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttunnel.h: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gsttwirl.h: * gst/geometrictransform/gstwaterripple.c: * gst/geometrictransform/gstwaterripple.h: * gst/geometrictransform/plugin.c: * gst/id3tag/gstid3mux.c: * gst/id3tag/gstid3mux.h: * gst/inter/gstinter.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosink.h: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstinteraudiosrc.h: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsink.h: * gst/inter/gstintersubsrc.c: * gst/inter/gstintersubsrc.h: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosink.h: * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstcombdetect.h: * gst/ivtc/gstivtc.c: * gst/ivtc/gstivtc.h: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jp2kdecimator/gstjp2kdecimator.h: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjifmux.h: * gst/jpegformat/gstjpegformat.c: * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: * gst/midi/midi.c: * gst/midi/midiparse.c: * gst/midi/midiparse.h: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/plugin.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: * gst/mpegtsdemux/gsttsdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: * gst/mpegtsmux/gstatscmux.c: * gst/mpegtsmux/gstatscmux.h: * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstmpegtsmux.c: * gst/mpegtsmux/gstmpegtsmux.h: * gst/mpegtsmux/gstmpegtsmuxplugin.c: * gst/mxf/gstmxfelement.c: * gst/mxf/gstmxfelements.h: * gst/mxf/meson.build: * gst/mxf/mxf.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: * gst/onvif/gstrtponvif.c: * gst/onvif/gstrtponvifparse.c: * gst/onvif/gstrtponvifparse.h: * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstirtspparse.h: * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: * gst/pcapparse/plugin.c: * gst/pnm/gstpnm.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmenc.h: * gst/proxy/gstproxy.c: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: * gst/rawparse/plugin.c: * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: * gst/rist/gstrist.c: * gst/rist/gstrist.h: * gst/rist/gstristplugin.c: * gst/rist/gstristrtpdeext.c: * gst/rist/gstristrtpext.c: * gst/rist/gstristrtxreceive.c: * gst/rist/gstristrtxsend.c: * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: * gst/rist/gstroundrobin.c: * gst/rist/gstroundrobin.h: * gst/rist/meson.build: * gst/rtmp2/gstrtmp2.c: * gst/rtmp2/gstrtmp2element.c: * gst/rtmp2/gstrtmp2elements.h: * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: * gst/rtmp2/meson.build: * gst/rtp/gstrtpsink.c: * gst/rtp/gstrtpsink.h: * gst/rtp/gstrtpsrc.c: * gst/rtp/gstrtpsrc.h: * gst/rtp/plugin.c: * gst/sdp/gstsdpdemux.c: * gst/sdp/gstsdpdemux.h: * gst/sdp/gstsdpelem.c: * gst/sdp/gstsdpsrc.c: * gst/sdp/gstsdpsrc.h: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstaudiosegmentclip.h: * gst/segmentclip/gstvideosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.h: * gst/segmentclip/plugin.c: * gst/siren/gstsiren.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: * gst/smooth/gstsmooth.c: * gst/smooth/gstsmooth.h: * gst/speed/gstspeed.c: * gst/speed/gstspeed.h: * gst/subenc/gstsrtenc.c: * gst/subenc/gstsrtenc.h: * gst/subenc/gstsubenc.c: * gst/subenc/gstwebvttenc.c: * gst/subenc/gstwebvttenc.h: * gst/switchbin/gstswitchbin.c: * gst/switchbin/gstswitchbin.h: * gst/switchbin/plugin.c: * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: * gst/timecode/plugin.c: * gst/transcode/gsttranscodebin.c: * gst/transcode/gsttranscodeelement.c: * gst/transcode/gsttranscodeelements.h: * gst/transcode/gsttranscodeplugin.c: * gst/transcode/gsturitranscodebin.c: * gst/transcode/meson.build: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstscenechange.h: * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstvideodiff.h: * gst/videofilters/gstvideofiltersbad.c: * gst/videofilters/gstzebrastripe.c: * gst/videofilters/gstzebrastripe.h: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.h: * gst/videoparsers/gstav1parse.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvideoparserselement.c: * gst/videoparsers/gstvideoparserselements.h: * gst/videoparsers/gstvp9parse.c: * gst/videoparsers/meson.build: * gst/videoparsers/plugin.c: * gst/videosignal/gstsimplevideomark.c: * gst/videosignal/gstsimplevideomark.h: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstsimplevideomarkdetect.h: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideoanalyse.h: * gst/videosignal/gstvideosignal.c: * gst/vmnc/vmncdec.c: * gst/vmnc/vmncdec.h: * gst/y4m/gsty4mdec.c: * gst/y4m/gsty4mdec.h: gst-plugins: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-04-10 20:34:26 +0200 Helmut Januschka * gst/rtmp2/rtmp/rtmpclient.c: allow NetStream.Play.PublishNotify Message Part-of: 2021-03-26 11:00:50 +0100 Stéphane Cerveau * sys/bluez/bluez-plugin.c: * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtpsrc.h: * sys/bluez/gstbluezelement.c: * sys/bluez/gstbluezelements.h: * sys/bluez/meson.build: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkdeviceprovider.cpp: * sys/decklink/gstdecklinkdeviceprovider.h: * sys/decklink/gstdecklinkplugin.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: * sys/decklink/meson.build: * sys/dvb/dvbbasebin.c: * sys/dvb/dvbbasebin.h: * sys/dvb/gstdvb.c: * sys/dvb/gstdvbelement.c: * sys/dvb/gstdvbelements.h: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: * sys/dvb/meson.build: * sys/fbdev/gstfbdevsink.c: * sys/fbdev/gstfbdevsink.h: * sys/ipcpipeline/gstipcpipeline.c: * sys/ipcpipeline/gstipcpipelineelement.c: * sys/ipcpipeline/gstipcpipelineelements.h: * sys/ipcpipeline/gstipcpipelinesink.c: * sys/ipcpipeline/gstipcpipelinesrc.c: * sys/ipcpipeline/gstipcslavepipeline.c: * sys/ipcpipeline/meson.build: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: * sys/magicleap/mlaudiosink.c: * sys/magicleap/mlaudiosink.h: * sys/magicleap/plugin.c: * sys/opensles/meson.build: * sys/opensles/opensles.c: * sys/opensles/opensles.h: * sys/opensles/openslesplugin.c: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: * sys/opensles/openslessrc.c: * sys/opensles/openslessrc.h: * sys/shm/gstshm.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: * sys/shm/gstshmsrc.c: * sys/shm/gstshmsrc.h: * sys/uvch264/gstuvch264.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_mjpgdemux.h: * sys/uvch264/gstuvch264_src.c: * sys/uvch264/gstuvch264_src.h: * sys/uvch264/gstuvch264deviceprovider.c: * sys/uvch264/gstuvch264deviceprovider.h: plugins-sys: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-04-09 01:54:50 +0900 Seungha Yang codecs: vp9decoder: Update docs * Remove "FIXME 1.20": All the bits are addressed already by using vp9parse element * Fix copy & paste errors: Some comments were copied from h264decoder blindly. Part-of: 2021-04-09 12:45:46 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: codecs: vp9decoder: Make duplicate_picture() vfunc optional The default implementation was required when superframe parsing was handled by vp9decoder. For instance, if a superframe consists of multiple frames with show_existing_frame header, it was vague that which GstVp9Picture should consume GstVideoCodecFrame. After 1.18 release, we introduced vp9parse element and superframe should be handled by upstream vp9parse elemenet now. So, we don't need to care about the superframe at vp9decoder class level anymore. Simply, a frame corresponding to show_existing_frame can be dropped if subclass doesn't implement duplicate_picture(). Part-of: 2021-03-30 14:40:53 +0100 Philippe Normand * docs/plugins/gst_plugins_cache.json: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstfakeaudiosink.c: * gst/debugutils/gstfakeaudiosink.h: * gst/debugutils/meson.build: debugutils: Add fakeaudiosink element This element can be useful for CI purposes on machines not running any system audio daemon. The element implements the GstStreamVolume interface. Part-of: 2021-04-08 14:53:52 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecallocator.c: v4l2codecs: allocator: Keep dmabuf mapped DMABuf allocator already implements DMABuf Sync, meaning that doing mmap/munmap (unless the mode have changed) is not required. In fact, on systems with IOMMU it makes the kernel redo the mmu table which is visible in the CPU usage. This change reduces CPU usage when decoding bbb_sunflower_2160p_60fps_normal.mp4 on RK3399 SoC from over 30% to around 15%. Part-of: 2021-04-03 14:16:22 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: Implement mem_copy for VA memory. Implementation of mem_copy() virtual method for GstVaAllocator. It's a deep copy where a new VA memory is popped out from the pool or, if pool is empty, a new memory is allocated. The original memory is mapped to read, and if its VAImage is not derived and size to copy is the whole surface, the mapped VAImage of the original memory is put in the new memory. Otherwise a slow memcpy is done between both memories. Fixes: #1568 Part-of: 2021-04-08 20:29:29 +0800 Zhao Zhili * ext/srt/gstsrtobject.c: srtobject: fix optlen of srt_getsockflag Part-of: 2021-01-14 14:24:06 +0800 Haihua Hu * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: fix critical log when play one gray colorspace video Need guess color space based on number of components when cannot got it from sink caps Part-of: 2020-12-11 16:33:39 -0500 Olivier Crête * ext/ldac/gstldacenc.c: ldacenc: Emit message on errors Part-of: 2020-12-11 16:26:00 -0500 Olivier Crête * ext/sbc/gstsbcenc.c: sbc: Return hard error on allocation or mapping error Also post a message on the bus in these cases.wpe: Emit load-progress messages Part-of: 2020-10-25 16:39:48 +0000 Matthieu De Beule * gst-libs/gst/player/gstplayer.c: Tell programmers that set_volume uses linear scale (fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1439) Part-of: 2020-12-11 14:52:20 -0500 Olivier Crête * ext/ldac/gstldacenc.c: * ext/sbc/gstsbcenc.c: sbc/ldac: Don't use GST_CAPS_NONE to mean NULL The GST_CAPS_NONE macro actually returns a instance of a empty caps. Part-of: 2021-03-30 17:24:38 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: codecs: vp9decoder: Allow decoding start with intra-only frame As per spec "7.2 Uncompressed header semantics" and "8.2 Frame order constraints", decoding can start with intra-only frame. This commit is for fixing vp90-2-16-intra-only.webm bitstream test failure. Part-of: 2021-03-29 02:11:22 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/nvcodec/gstnvvp9dec.c: * sys/va/gstvavp9dec.c: codecs: vp9decoder: Pass GstVideoCodecFrame to duplicate_picture() ... and fix picture duplication logic for vavp9dec Part-of: 2021-03-30 11:49:43 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * gst-libs/gst/codecs/gstvp9picture.h: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/nvcodec/gstnvvp9dec.c: * sys/va/gstvavp9dec.c: codecs: vp9decoder: Port to GstVp9StatefulParser Use newly implemented VP9 parser. Since new GstVp9FrameHeader struct holds all the information of the stream, baseclass will not pass parser object to new_sequence() method anymore. Part-of: 2021-03-27 15:32:59 +0900 Seungha Yang codecparsers: Reimplement VP9 parser Existing VP9 parser implementation doesn't provide information required by other stateless decoding APIs (i.e., DXVA and NVDEC), specifically loop filter and segmentation parameters might not exist current frame. So parser needs to fill the information by using previously parsed information. We can update the gstvp9parser implementation so that it can provide all information required by stateless decoding APIs with a huge API break, or adding more ugly struct in it. Instead doing as such, this commit introduce a new VP9 parser implementation. What is different from existing one? * All variables will follow the specification as much as possible: VP9 Bitstream & Decoding Process Specification - v0.6 31st March 2016 * Parser will fill all the required information for decoding frame to GstVp9FrameHeader struct. In case of old VP9 parser, user needs to read additional data from parser's member variables. * GstVp9StatefulParser object struct is completely completely opaque Part-of: 2021-03-28 16:11:23 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: codecs: vp9decoder: Don't check codec change with show_existing_frame Show existing frame will zero frame_type value but it doesn't mean it's keyframe. Part-of: 2021-04-06 16:24:39 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: Fix holding of reference picture buffer The picture buffer (V4L2 CAPTURE buffer) was being released immediatly when the request was done. This was problematic since even after the request is done, the picture buffer might still be used as a reference and should not be reused for further decoding yet. This change effectively bind the picture buffer lifetime to the request. So that if the picture is never showned (decode only frame) or the request queue is full before the buffer is displayed, the picture buffer will remain alive. Part-of: 2021-04-07 07:48:57 -0400 Doug Nazar * gst/rtmp2/rtmp/rtmpmessage.c: rtmp2: Use correct size of write macro for param2. Part-of: 2021-04-01 07:59:45 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: remove unsupported formats because driver's bugs Add a way to filter out video formats from caps because of unresolved bugs in drivers. In this case for media-driver (iHD) where some RGB32 formats are not handled correctly. Part-of: 2021-03-31 09:59:21 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavideoformat.c: va: videoformats: Map more color formats. Added Y212_LE, Y412_LE, P012_LE, Y444, RGB16, RGB and BGR10A2_LE in the static map betwen VA and GStreamer color formats. This synchronize the map used in gstremaer-vaapi and this plugin. Part-of: 2021-03-31 09:50:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadisplay.c: * sys/va/gstvavideoformat.c: * sys/va/gstvavideoformat.h: va: videoformats: Fix RGB32 mapping between VA and GStreamer. Different VA drives might have different definitions for RGB32 color formats because different bit interpretation. Sadly the specification doesn't clarify these interpretations. So VA users have to figure out what's the correct mapping with it's rendering color format definition. This patch aims to fix the static map structure after the VAImageFormats are queried. There is another static map with the different interpretations of the RGB32 formats, and compare them with the given VAImageFormat, then with the GStreamer color format, update the mapping table. Finally, some RGB32 color formats were added. Part-of: 2021-04-07 01:03:15 -0400 Doug Nazar * ext/avtp/gstavtpcvfdepay.c: * ext/avtp/gstavtpcvfpay.c: * ext/avtp/gstavtpsrc.c: avtp: Fix log format macros Part-of: 2021-04-06 13:07:52 -0300 Daniel Almeida * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: gstv4l2decoder.c: Add missing include Add missing include for sys/ioctl.h so that these warnings dissapear when compiling: ../subprojects/gst-plugins-bad/sys/v4l2codecs/gstv4l2decoder.c:179:9: warning: implicit declaration of function ‘ioctl’ [-Wimplicit-function-declaration] Signed-off-by: Daniel Almeida Part-of: 2021-04-06 19:18:45 +0300 Sebastian Dröge * ext/curl/gstcurlsftpsink.c: curlsftpsink: Don't run GST_DEBUG_OBJECT() on a class struct It's supposed to be a GObject. Part-of: 2021-03-29 15:29:30 +0800 Yinhang Liu * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add support for RGB 10bit format The SDK can support A2RGB10 format [1], A2RGB10 format corresponds to BGR10A2_LE format in gstreamer. A2RGB10 format only supports low-power mode. Example: gst-launch-1.0 videotestsrc ! video/x-raw,format=BGR10A2_LE \ ! msdkh265enc low-power=1 ! fakesink [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxframedata Part-of: 2021-03-31 16:18:04 +0200 Wim Taymans * gst-libs/gst/vulkan/android/gstvkwindow_android.c: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m: * gst-libs/gst/vulkan/gstvkapi.h: * gst-libs/gst/vulkan/gstvkhandle.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: * gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.c: * gst-libs/gst/vulkan/win32/gstvkwindow_win32.c: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: * sys/applemedia/videotexturecache-vulkan.mm: vulkan: provide a custom VK_DEFINE_NON_DISPATCHABLE_HANDLE If the application did not define one yet, define our own VK_DEFINE_NON_DISPATCHABLE_HANDLE that is independent of the architecture. Vulkan, by default, provides a define that depends on the architecture, which causes the symbol type to be different. This causes an architecture dependent .gir file, which then causes multilib installation problems because the .gir files can't be shared. Make it possible to override the format specifier and provide a default one that is compatible with the default non dispatchable handle. Return VK_NULL_HANDLE from functions that return a non-dispatchable handle. Fixes #1566 Part-of: 2021-03-26 17:48:09 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: postproc, filter: add disable-passthrough property vapostproc tries to be in passthrough mode as much as possible. But they might be situations where the user might force to process the frames. For example, when upstream sets the crop meta and the user wants VA do that cropping, rather than downstream. For those situations this property will disable the passthrough mode, if it's enabled. Part-of: 2021-02-23 09:01:10 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: enable cropping by crop meta If incoming buffers have crop meta it's done by vapostproc, iif vapostproc is not in passthrough mode and downstream doesn't handle it. This patch announces the crop meta API in proposed bufferpool, while it stops filtering meta APIs, since it was only filter crop api. Also if downstream supports crop and video metas, vapostporoc announces both meta APIs in upstream bufferpool. Finally, the meta is removed from the buffer if the crop is enabled. Part-of: 2021-03-04 15:19:25 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: va: filter: add gst_va_filter_enable_cropping () This will toggle the cropping operation in the filter Part-of: 2021-01-23 12:53:25 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: filter, vpp: add and use GstVaSample struct This new struct describes the input and output GstBuffers to post-process, including VA flags. It also contains the VASurfaceID and VARectangle, but those are private, completed inside GstVaFilter. It is used for pass arguments to gst_va_filter_convert_surface() function. Part-of: 2021-02-28 08:38:36 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: Use allocation caps when creating sink pool. When an input buffer needs to be copied into a VA memory, it's required to create a buffer pool. This patch uses the propose_allocation() caps to instantiate the allocator and pool, instead of the negotiated caps, which rather represents the resolution to display. Part-of: 2021-01-22 23:54:50 +0100 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstline21dec.c: line21dec: relax caps requirements Instead of requiring interlaced video, simply skip CC detection when the input is progressive. This allows placing line21decoder unconditionally in pipelines, without having to worry about whether the input stream will be interlaced, or even worse interlacing just in case! + update doc cache Part-of: 2020-12-16 01:02:53 +0100 Mathieu Duponchelle * ext/closedcaption/gstline21dec.c: * ext/closedcaption/gstline21dec.h: line21dec: expose mode property That new property can be used to control whether and how detected CC meta should be inserted in the list of existing CC meta on the input frame (if there was any). Part-of: 2020-12-15 22:01:33 +0100 Mathieu Duponchelle * ext/closedcaption/gstline21dec.c: * ext/closedcaption/gstline21dec.h: line21dec: expose ntsc-only property When this is set, the element only tries to detect CC when the height is 525 or 486 (NTSC resolutions). The height is already checked. Part-of: 2021-03-31 11:52:07 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: Use derived images only if not mapped for reading. Derived images are direct maps to surfaces bits, but in Intel Gen7 to Gen9, that memory is not cachable, thus reading can be very slow (it might produce timeout is tests such as fluster). This patch tries first to define if derived images are possible, and later use them only if mapping is not for reading. Part-of: 2021-03-31 11:13:52 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: va: caps: Add image formats in raw caps only for non-iHD. This plugin, for decoders more concretely, assumes that a VA config can do certain color conversions when mapping frames onto CPU's memory. This assumption was valid for i965 and Gallium drivers which generates valid outputs in bitstreams testers (v.gr. fluster). Nonetheless, iHD, even when it generates acceptable rendered frames, output's MD5 of tests weren't valid. This patch append the image formats, for color conversion when mapping to memory, for non-iHD drivers. Part-of: 2021-04-01 15:09:45 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11upload.cpp: d3d11: Fix for UYVY/VYUY format rendering Don't assume that non-native DXGI formats support RTV and/or SRV. We are mapping UYVY and VYUY formats to DXGI_FORMAT_R8G8_B8G8_UNORM which doesn't support render target view Part-of: 2021-03-25 03:16:05 +1100 Jan Schmidt * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: mpegtsmux: Respect the start-time-selection property. Use the start time provided by the aggregator base class for output times. Part-of: 2021-03-29 15:24:38 +0800 Yinhang Liu * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: add dblk-idc property The SDK can support deblocking reference structure [1], so add a new property to enable this feature. [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxextcodingoption2 Part-of: 2021-03-29 15:18:13 +0800 Yinhang Liu * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdkh264enc: add dblk-idc property The SDK can support deblocking reference structure [1], so add a new property to enable this feature. [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxextcodingoption2 Part-of: 2021-03-30 11:34:54 +0200 Stéphane Cerveau * ext/flite/gstflite.c: * ext/flite/gstflitetestsrc.c: flite: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-30 11:27:11 +0200 Stéphane Cerveau * ext/dtls/plugin.c: dtls: hotfix: allow per feature registration Use of GST_ELEMENT_REGISTER in plugin.c Part-of: 2021-03-26 19:47:06 +0100 Stéphane Cerveau * ext/gs/meson.build: gs: remove clang formatting remove clang formatting during the build. Part-of: 2021-03-26 11:41:50 +0100 Stéphane Cerveau * ext/gs/gstgs.cpp: * ext/gs/gstgssink.cpp: * ext/gs/gstgssink.h: * ext/gs/gstgssrc.cpp: * ext/gs/gstgssrc.h: gs: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-29 12:15:18 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Don't reset time tracking when receiving the same segment again This causes avwait to go back into "dropping" mode until audio and video are synced again, which is unnecessary when the segment didn't actually change. Part-of: 2021-03-17 14:30:09 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: nvcodec: nvsldec: Refactor graphics api resource handling * Move GL context object to GstNVDecoder object, and remove duplicated handling of each codec decoder element * Don't create GL context too early. We can create it only if we need to negotiate with downstream gl element. Part-of: 2021-03-17 14:38:40 +0800 Haihao Xiang * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdkenc{h264,h265}: add intra-refresh-type property The SDK allows user to specify the intra refresh type which can improve error resilience without significant impact on encoded bitstream size caused by I frames [1] [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxextcodingoption2 Part-of: 2021-03-28 12:03:09 +0200 Marijn Suijten * gst-libs/gst/d3d11/gstd3d11memory.h: * gst-libs/gst/webrtc/webrtc_fwd.h: Add @ prefix to enum-variant references in documentation Found while working on GStreamer-rs documentation, some enums had this bit of text pasted verbatim in the enum documentation rather than attached to the enum-variant. Fortunately it seems these in WebRTC and D3D11 are the only ones matching the non-@-prefixed pattern: ^ \* GST_\w+:\s*\w+ Part-of: 2021-03-26 12:20:07 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2/connection: Separate inner from outer cancelling The connection cancels itself when it is closed. To avoid the cancellable passed to `gst_rtmp_connection_new` from being unexpectedly cancelled, separate inner from outer cancellation by holding two cancellables. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1558 Part-of: 2021-03-28 12:06:24 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.cpp: d3d11vp9dec: Remove debug dump functions Existing debug messages are not quite useful Part-of: 2021-03-28 16:06:55 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Move zero-copy decision logic into decoder object Get rid of all duplicated code for zero-copy decision and output buffer allocation Part-of: 2021-03-26 22:40:34 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.cpp: d3d11vp9dec: Ignore show_frame flag in output_picture() baseclass will not call output_picture() if it shouldn't be ouputted. Note that the show_frame flag can be zero when show_existing_frame is set Part-of: 2021-03-26 22:27:38 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: codecs: vp9decoder: Fix to output frame when show_existing_frame flag is set When show_existing_frame flag is set, show_frame flag is zero but we should output previously decoded frame as specified in frame header. Part-of: 2021-03-26 21:06:59 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Do not hardcode the limit minimum resolution to 64 Decoder should be able to support lower resolution than 64x64 Part-of: 2021-03-25 21:17:07 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11videosinkbin.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: d3d11videosink: Remove DirectWrite related dead code It's now not enabled since we moved core part to gst-libs Part-of: 2021-03-25 03:24:11 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Don't pass 0/1 framerate to MFT Some MFT implementations do not accept 0/1 framerate and it will result in encoder open failure. If framerate is unknown, we will use arbitrary 25/1 framerate value. Part-of: 2021-03-23 13:48:09 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.c: * gst-libs/gst/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Resurrect zero-copy for fixed-size DPB pool Enable zero-copy if downstream proposed pool and therefore decoder can know the amount of buffer required by downstream. Otherwise decoder will copy when our DPB pool has no sufficient buffers for later decoding operation. Part-of: 2021-03-20 19:52:16 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Implement array-of-texture DPB again Re-implementation of array-of-texture based on d3d11 memory pool. Part-of: 2021-03-18 22:31:55 +0900 Seungha Yang d3d11: Implement memory pool Major changes: * GstD3D11Allocator: This allocator is now device-independent object which can allocate GstD3D11Memory object for any GstD3D11Device. User can get this object via gst_allocator_find(GST_D3D11_MEMORY_NAME) * GstD3D11PoolAllocator: A new allocator implementation for texture pool. From now on GstD3D11BufferPool will make use of this memory pool allocator to avoid frequent texture reallocation. That usually happens because of buffer copy (gst_buffer_make_writable for example) In addition to that, GstD3D11BufferPool will provide GstBuffer with GstVideoMeta, because CPU access to a GstD3D11Memory without GstVideoMeta is almost impossible since GPU drivers needs padding for stride alignment. Part-of: 2021-03-20 22:11:49 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.c: * gst-libs/gst/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: Temporarily remove zero-copy related code We will re-implement it based on memory pool Part-of: 2021-03-23 09:33:49 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: Set one buffer in pools as minimum. Because some elements, such as videorate check that minimum are different of maximum number of buffers in the proposed pool, since they might hold one or more buffers. Part-of: 2021-03-23 19:19:14 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * tests/check/libs/h264parser.c: * tests/check/libs/h265parser.c: h2645parser: Catch overflows in AVC/HEVC NAL unit length calculations Offset and size are stored as 32 bit guint and might overflow when adding the nal_length_size, so let's avoid that. For the size this would happen if the AVC/HEVC NAL unit size happens to be stored in 4 bytes and is 4294967292 or higher, which is likely corrupted data anyway. For the offset this is something for the caller of these functions to take care of but is unlikely to happen as it would require parsing on a >4GB buffer. Allowing these overflows causes all kinds of follow-up bugs in the h2645parse elements, ranging from infinite loops and memory leaks to potential memory corruptions. Part-of: 2021-02-25 09:59:50 +0100 Stéphane Cerveau * ext/zxing/gstzxing.cpp: * ext/zxing/gstzxing.h: * ext/zxing/gstzxingplugin.c: zxing: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-25 09:57:00 +0100 Stéphane Cerveau * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: zbar: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-25 09:51:52 +0100 Stéphane Cerveau * ext/x265/gstx265enc.c: * ext/x265/gstx265enc.h: x265: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-25 09:45:10 +0100 Stéphane Cerveau * ext/wpe/gstwpesrc.cpp: * ext/wpe/gstwpesrc.h: wpe: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-25 09:27:19 +0100 Stéphane Cerveau * ext/wildmidi/gstwildmididec.c: * ext/wildmidi/gstwildmididec.h: wildmidi: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-25 08:18:54 +0100 Stéphane Cerveau * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcdsp.h: * ext/webrtcdsp/gstwebrtcdspplugin.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.h: * ext/webrtcdsp/meson.build: webrtcdsp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-25 08:04:42 +0100 Stéphane Cerveau * ext/webp/gstwebp.c: * ext/webp/gstwebpdec.c: * ext/webp/gstwebpdec.h: * ext/webp/gstwebpenc.c: * ext/webp/gstwebpenc.h: webp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-24 18:56:55 +0100 Stéphane Cerveau * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: wayland: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-24 18:45:15 +0100 Stéphane Cerveau * ext/vulkan/gstvulkan.c: * ext/vulkan/gstvulkanelement.c: * ext/vulkan/gstvulkanelements.h: * ext/vulkan/meson.build: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkdeviceprovider.c: * ext/vulkan/vkdownload.c: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vksink.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkviewconvert.c: vulkan: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-24 17:34:50 +0100 Stéphane Cerveau * ext/voamrwbenc/gstvoamrwb.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/voamrwbenc/gstvoamrwbenc.h: voamrwbenc: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-24 17:32:34 +0100 Stéphane Cerveau * ext/voaacenc/gstvoaac.c: * ext/voaacenc/gstvoaacenc.c: * ext/voaacenc/gstvoaacenc.h: voaacenc: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-24 13:07:30 +0100 Stéphane Cerveau * ext/ttml/gstttmlelement.c: * ext/ttml/gstttmlelements.h: * ext/ttml/gstttmlparse.c: * ext/ttml/gstttmlplugin.c: * ext/ttml/gstttmlrender.c: * ext/ttml/meson.build: ttml: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-24 12:52:08 +0100 Stéphane Cerveau * ext/srtp/gstsrtp.c: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: * ext/srtp/gstsrtpelement.c: * ext/srtp/gstsrtpelements.h: * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: * ext/srtp/gstsrtpplugin.c: * ext/srtp/meson.build: srtp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-24 12:39:22 +0100 Stéphane Cerveau * ext/srt/gstsrt.c: * ext/srt/gstsrtelement.c: * ext/srt/gstsrtelements.h: * ext/srt/gstsrtplugin.c: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: * ext/srt/meson.build: srt: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 12:54:56 +0100 Stéphane Cerveau * ext/spandsp/gstdtmfdetect.c: * ext/spandsp/gstdtmfdetect.h: * ext/spandsp/gstspandsp.c: * ext/spandsp/gstspanplc.c: * ext/spandsp/gstspanplc.h: * ext/spandsp/gsttonegeneratesrc.c: * ext/spandsp/gsttonegeneratesrc.h: spandsp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 12:41:41 +0100 Stéphane Cerveau * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstbpmdetect.hh: * ext/soundtouch/gstpitch.cc: * ext/soundtouch/gstpitch.hh: * ext/soundtouch/plugin.c: soundtouch: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 12:30:50 +0100 Stéphane Cerveau * ext/sndfile/gstsf.c: * ext/sndfile/gstsfdec.c: * ext/sndfile/gstsfdec.h: * ext/sndfile/gstsfelement.c: * ext/sndfile/gstsfelements.h: * ext/sndfile/gstsfsink.h: * ext/sndfile/meson.build: sndfile: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 12:18:39 +0100 Stéphane Cerveau * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstsmoothstreaming-plugin.c: smoothstreaming: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 12:14:53 +0100 Stéphane Cerveau * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpdec.h: * ext/sctp/gstsctpenc.c: * ext/sctp/gstsctpenc.h: * ext/sctp/gstsctpplugin.c: sctp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 12:09:18 +0100 Stéphane Cerveau * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/sbc-plugin.c: sbc: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 12:00:13 +0100 Stéphane Cerveau * ext/rtmp/gstrtmp.c: * ext/rtmp/gstrtmpelement.c: * ext/rtmp/gstrtmpelements.h: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsink.h: * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/meson.build: rtmp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 11:53:12 +0100 Stéphane Cerveau * ext/rsvg/gstrsvg.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgdec.h: * ext/rsvg/gstrsvgoverlay.c: * ext/rsvg/gstrsvgoverlay.h: rsvg: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-19 11:40:40 +0100 Stéphane Cerveau * ext/resindvd/plugin.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: resindvd: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 16:23:42 +0100 Stéphane Cerveau * ext/qroverlay/gstdebugqroverlay.c: * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlayelement.c: * ext/qroverlay/gstqroverlayelements.h: * ext/qroverlay/gstqroverlayplugin.c: * ext/qroverlay/meson.build: qroverlay: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 15:56:44 +0100 Stéphane Cerveau * ext/opus/gstopus.c: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: opus: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 15:48:12 +0100 Stéphane Cerveau * ext/openni2/gstopenni2.cpp: * ext/openni2/gstopenni2src.cpp: * ext/openni2/gstopenni2src.h: openni2: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 15:42:44 +0100 Stéphane Cerveau * ext/openmpt/gstopenmptdec.c: * ext/openmpt/gstopenmptdec.h: * ext/openmpt/plugin.c: openmpt: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 15:30:06 +0100 Stéphane Cerveau * ext/openjpeg/gstopenjpeg.c: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/gstopenjpegenc.h: openjpeg: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 15:21:40 +0100 Stéphane Cerveau * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264element.c: * ext/openh264/gstopenh264elements.h: * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264plugin.c: * ext/openh264/meson.build: openh264: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 14:08:34 +0100 Stéphane Cerveau * ext/openexr/gstopenexr.c: * ext/openexr/gstopenexrdec.cpp: * ext/openexr/gstopenexrdec.h: openexr: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 13:34:54 +0100 Stéphane Cerveau * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcameracalibrate.h: * ext/opencv/gstcameraundistort.cpp: * ext/opencv/gstcameraundistort.h: * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvdilate.h: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcvequalizehist.h: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcverode.h: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstcvsobel.h: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdewarp.h: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstfacedetect.h: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsthanddetect.h: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: * ext/opencv/gstopencv.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstretinex.h: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: * ext/opencv/gstskindetect.cpp: * ext/opencv/gstskindetect.h: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextoverlay.cpp: * ext/opencv/gsttextoverlay.h: opencv: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:58:28 +0100 Stéphane Cerveau * ext/openaptx/gstopenaptxdec.c: * ext/openaptx/gstopenaptxdec.h: * ext/openaptx/gstopenaptxenc.c: * ext/openaptx/gstopenaptxenc.h: * ext/openaptx/openaptx-plugin.c: openaptx: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:52:51 +0100 Stéphane Cerveau * ext/openal/gstopenal.c: * ext/openal/gstopenalelement.c: * ext/openal/gstopenalelements.h: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/openal/meson.build: openal: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:41:53 +0100 Stéphane Cerveau * ext/ofa/gstofa.c: * ext/ofa/gstofa.h: ofa: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:35:34 +0100 Stéphane Cerveau * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: neon: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:24:18 +0100 Stéphane Cerveau * ext/musepack/gstmusepackdec.c: * ext/musepack/gstmusepackdec.h: musepack: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:17:20 +0100 Stéphane Cerveau * ext/mplex/gstmplex.cc: * ext/mplex/gstmplex.hh: mplex: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:14:38 +0100 Stéphane Cerveau * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2enc.hh: mpeg2enc: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 10:10:16 +0100 Stéphane Cerveau * ext/modplug/gstmodplug.cc: * ext/modplug/gstmodplug.h: modplug: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 09:56:08 +0100 Stéphane Cerveau * ext/mdns/gstmicrodns.c: mdns: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 09:52:08 +0100 Stéphane Cerveau * ext/libmms/gstmms.c: * ext/libmms/gstmms.h: libmms: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 09:50:21 +0100 Stéphane Cerveau * ext/libde265/gstlibde265.c: * ext/libde265/libde265-dec.c: * ext/libde265/libde265-dec.h: libde265: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-18 09:48:04 +0100 Stéphane Cerveau * ext/ldac/gstldacenc.c: * ext/ldac/gstldacenc.h: * ext/ldac/ldac-plugin.c: ldac: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 18:38:16 +0100 Stéphane Cerveau * ext/kate/gstkate.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateelement.c: * ext/kate/gstkateelements.h: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkateutil.c: * ext/kate/meson.build: kate: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 18:26:42 +0100 Stéphane Cerveau * ext/isac/gstisac.c: * ext/isac/gstisacdec.c: * ext/isac/gstisacdec.h: * ext/isac/gstisacenc.c: * ext/isac/gstisacenc.h: isac: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 18:23:21 +0100 Stéphane Cerveau * ext/iqa/iqa.c: * ext/iqa/iqa.h: iqa: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 18:17:08 +0100 Stéphane Cerveau * ext/hls/gsthls.h: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/gsthlselement.c: * ext/hls/gsthlselements.h: * ext/hls/gsthlsplugin.c: * ext/hls/gsthlssink.c: * ext/hls/gsthlssink2.c: * ext/hls/gstm3u8playlist.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: * ext/hls/meson.build: hls: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 18:07:42 +0100 Stéphane Cerveau * ext/gsm/gstgsm.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.c: * ext/gsm/gstgsmenc.h: gsm: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 18:04:20 +0100 Stéphane Cerveau * ext/gme/gstgme.c: * ext/gme/gstgme.h: gme: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 18:01:05 +0100 Stéphane Cerveau * ext/fluidsynth/gstfluiddec.c: * ext/fluidsynth/gstfluiddec.h: fluidsynth: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 16:05:02 +0100 Stéphane Cerveau * ext/fdkaac/gstfdkaac.c: * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacdec.h: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/gstfdkaacenc.h: * ext/fdkaac/gstfdkaacplugin.c: * ext/fdkaac/meson.build: fdkaac: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 15:59:49 +0100 Stéphane Cerveau * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 15:59:36 +0100 Stéphane Cerveau * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 15:35:10 +0100 Stéphane Cerveau * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: dts: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 12:22:07 +0100 Stéphane Cerveau * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlselement.c: * ext/dtls/gstdtlselements.h: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpdemux.c: * ext/dtls/gstdtlssrtpenc.c: * ext/dtls/meson.build: dtls: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 12:10:31 +0100 Stéphane Cerveau * ext/directfb/dfbvideosink.c: * ext/directfb/dfbvideosink.h: directfb: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 12:07:48 +0100 Stéphane Cerveau * ext/dc1394/gstdc1394src.c: * ext/dc1394/gstdc1394src.h: dc1394: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 12:03:05 +0100 Stéphane Cerveau * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstdashsink.c: * ext/dash/gstdashsink.h: * ext/dash/gstplugin.c: dash: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 11:55:14 +0100 Stéphane Cerveau * ext/curl/gstcurl.c: * ext/curl/gstcurlelement.c: * ext/curl/gstcurlelements.h: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/meson.build: curl: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 11:43:33 +0100 Stéphane Cerveau * ext/colormanagement/gstcolormanagement.c: * ext/colormanagement/gstlcms.c: * ext/colormanagement/gstlcms.h: colormanagement: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 11:31:35 +0100 Stéphane Cerveau * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstcccombiner.h: * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: * ext/closedcaption/gstccextractor.c: * ext/closedcaption/gstccextractor.h: * ext/closedcaption/gstceaccoverlay.c: * ext/closedcaption/gstceaccoverlay.h: * ext/closedcaption/gstclosedcaption.c: * ext/closedcaption/gstline21dec.c: * ext/closedcaption/gstline21dec.h: * ext/closedcaption/gstline21enc.c: * ext/closedcaption/gstline21enc.h: closedcaption: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 10:23:15 +0100 Stéphane Cerveau * ext/chromaprint/gstchromaprint.c: * ext/chromaprint/gstchromaprint.h: chromaprint: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 10:13:45 +0100 Stéphane Cerveau * ext/bz2/gstbz2.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.c: * ext/bz2/gstbz2enc.h: bz2: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 10:10:39 +0100 Stéphane Cerveau * ext/bs2b/gstbs2b.c: * ext/bs2b/gstbs2b.h: bs2b: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 10:05:20 +0100 Stéphane Cerveau * ext/avtp/gstavtp.c: * ext/avtp/gstavtpaafdepay.c: * ext/avtp/gstavtpaafdepay.h: * ext/avtp/gstavtpaafpay.c: * ext/avtp/gstavtpaafpay.h: * ext/avtp/gstavtpcrfcheck.c: * ext/avtp/gstavtpcrfcheck.h: * ext/avtp/gstavtpcrfsync.c: * ext/avtp/gstavtpcrfsync.h: * ext/avtp/gstavtpcvfdepay.c: * ext/avtp/gstavtpcvfdepay.h: * ext/avtp/gstavtpcvfpay.c: * ext/avtp/gstavtpcvfpay.h: * ext/avtp/gstavtpsink.c: * ext/avtp/gstavtpsink.h: * ext/avtp/gstavtpsrc.c: * ext/avtp/gstavtpsrc.h: avtp: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-02-17 09:45:04 +0100 Stéphane Cerveau * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2020-08-17 09:52:11 -0400 Julian Bouzas * ext/aom/gstaom.c: * ext/aom/gstav1dec.c: * ext/aom/gstav1dec.h: * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: allow per feature registration Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: 2021-03-23 16:26:13 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/meson.build: d3d11decoder: Enable high precision clock if needed We've been doing retry with 1ms sleep if DecoderBeginFrame() returned E_PENDING which means application should call DecoderBeginFrame() again because GPU is busy. The 1ms sleep() during retry would result in usually about 15ms delay in reality because of bad clock precision on Windows. To improve throughput performance, this commit will enable high precision clock only for NVIDIA platform since DecoderBeginFrame() call on the other GPU vendors seems to succeed without retry. Part-of: 2021-03-03 16:03:07 +0100 Stéphane Cerveau * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegpsdemux: fix accurate seek In an accurate seek, the segment start should be the same as the one requested in the seek. The start should be kept as the one from the segment if its inferior. Part-of: 2021-03-03 14:11:21 +0100 Stéphane Cerveau * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegpsdemux: Keep seqnum events Keep the same seqnum of the new segment events for each of the streams. Keep the segment to send the EOS event. Keep the seek seqnum for segment and flush event. Part-of: 2021-03-01 16:23:09 +0100 Stéphane Cerveau * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: avoid early EOS In a case of a scr different from 0, after a seek, the src_segment.stop has been updated with the duration not including the base_time (scr). The segment position needs to be tested upon segment.stop + base_time (scr) to check for an EOS. Part-of: 2021-03-19 16:17:41 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: disable passthrough as soon as possible After the VA filter creation, when changing the element's state from NULL to READY, immediatly checks for any filter operation requested by the user. If any, the passthrough mode is disabled early, so there's no need for a future renegotiation. Part-of: 2021-03-19 16:14:08 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: rename function to gst_va_vpp_update_passthrough Since it's widely used, a proper name will reflect its importance. Part-of: 2021-03-22 14:34:36 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * ext/colormanagement/gstlcms.c: * ext/curl/gstcurlqueue.h: * ext/iqa/iqa.c: * ext/opencv/gstcvdilateerode.cpp: * ext/openjpeg/gstopenjpegenc.c: * ext/resindvd/rsndec.c: * ext/sctp/sctpassociation.c: * ext/ttml/subtitlemeta.c: * ext/wildmidi/gstwildmididec.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst-libs/gst/codecparsers/gstmpegvideometa.c: * gst-libs/gst/d3d11/gstd3d11device.c: * gst-libs/gst/d3d11/gstd3d11utils.c: * gst-libs/gst/sctp/sctpreceivemeta.c: * gst-libs/gst/sctp/sctpsendmeta.c: * gst-libs/gst/vulkan/android/gstvkwindow_android.c: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m: * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkcommandbuffer.c: * gst-libs/gst/vulkan/gstvkdescriptorset.c: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkhandle.c: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimageview.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkmemory.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvktrash.c: * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: * gst-libs/gst/vulkan/vulkan_mkenum.py: * gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.c: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: * gst/camerabin2/gstcamerabin2.c: * gst/debugutils/gstfakevideosink.c: * gst/mxf/mxfmetadata.c: * gst/netsim/gstnetsim.c: * gst/rtmp2/rtmp/amf.c: * gst/rtmp2/rtmp/rtmpchunkstream.c: * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmphandshake.c: * gst/rtmp2/rtmp/rtmpmessage.c: * gst/segmentclip/gstsegmentclip.c: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideomemory.c: * sys/applemedia/iosglmemory.c: * sys/applemedia/iosurfaceglmemory.c: * sys/applemedia/iosurfacevulkanmemory.c: * sys/bluez/gstavdtpsrc.h: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11shader.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_win32.cpp: * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmfvideobuffer.h: * sys/msdk/gstmsdkcontextutil.c: * sys/nvcodec/gstcudacontext.c: * sys/nvcodec/gstcudanvrtc.c: * sys/nvcodec/gstcudautils.c: * sys/nvcodec/gstnvbaseenc.h: * sys/opensles/openslescommon.c: * sys/va/gstvaallocator.c: * sys/va/gstvautils.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi2/gstwasapi2client.cpp: * sys/winscreencap/dxgicapture.c: * tests/check/libs/vkimage.c: gst: don't use volatile to mean atomic volatile is not sufficient to provide atomic guarantees and real atomics should be used instead. GCC 11 has started warning about using volatile with atomic operations. https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719 Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868 Part-of: 2021-03-20 16:26:21 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/meson.build: mfvideoenc: Enable Direct3D multi-thread protection As documented by MS. See also https://docs.microsoft.com/en-us/windows/win32/medfound/supporting-direct3d-11-video-decoding-in-media-foundation#open-a-device-handle Part-of: 2021-03-20 16:15:35 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: * gst-libs/gst/d3d11/gstd3d11memory.c: * gst-libs/gst/d3d11/meson.build: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11videoprocessor.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: Revert "d3d11: Enable native multi-thread protection layer and make use of it" This reverts commit 872b7f503c49442e559f6a381416c6a84b76a3c6. Native multi-thread protection layer seems to be consuming more CPU resource than application side protection approach in some cases Part-of: 2021-03-19 16:36:41 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: check for more sdp things across the board e.g. - test for a=setup:$val and direction attributes in all tests - test number of media sections - test number of formats in each m= section (for audio/video) - test no duplicate formats Part-of: 2020-06-23 12:41:27 -0700 Julien * docs/plugins/gst_plugins_cache.json: * ext/gs/.clang-format: * ext/gs/README.md: * ext/gs/gstgs.cpp: * ext/gs/gstgscommon.cpp: * ext/gs/gstgscommon.h: * ext/gs/gstgssink.cpp: * ext/gs/gstgssink.h: * ext/gs/gstgssrc.cpp: * ext/gs/gstgssrc.h: * ext/gs/meson.build: * ext/meson.build: * meson_options.txt: gs: add source and sink for Google Cloud Storage Useful when having a service that runs a GStreamer pipeline or application in Google Cloud to avoid storing the inputs and outputs in the running container or service. For example when analyzing a video from a Google Cloud Storage bucket and extracting images or converting the video and then uploading the results into another Google Cloud Storage bucket. - gssrc allows to read from a file located in Google Cloud Storage and it supports seeking. - gssink allows to write to a file located in Google Cloud Storage. There are 2 modes, one similar to multifilesink and the other similar to filesink. Example: gst-launch-1.0 gssrc location=gs://mybucket/videos/sample.mp4 ! decodebin ! glimagesink gst-launch-1.0 playbin uri=gs://mybucket/videos/sample.mp4 gst-launch-1.0 videotestsrc num-buffers=5 ! pngenc ! gssink object-name="img/img%05d.png" bucket-name="mybucket" next-file=buffer gst-launch-1.0 filesrc location=sample.mp4 ! gssink object-name="videos/video.mp4" bucket-name="mybucket" next-file=none When running locally simply set GOOGLE_APPLICATION_CREDENTIALS. But when running in Google Cloud Run or Google Cloud Engine, just set the "service-account-email" property on each element. Closes #1264 Part-of: 2021-03-17 23:53:04 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: * gst-libs/gst/d3d11/gstd3d11memory.c: * gst-libs/gst/d3d11/meson.build: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11videoprocessor.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: d3d11: Enable native multi-thread protection layer and make use of it ... instead of our own GRecMutex locking. In this way, any other Direct3D11 client (MediaFoundation for example) can safely call any Direct3D11 API even when we are sharing our Direct3D11 device with others. Part-of: 2021-02-26 03:28:29 +1100 Jan Schmidt * tests/examples/mpegts/meson.build: * tests/examples/mpegts/tsmux-prog-map.c: examples: Add an mpegtsmux example of prog-map usage. Add an example of how to construct the prog-map structure for the MPEG-TS muxers and assign streams to programs, and set PCR and PMT PIDs. Part-of: 2021-02-26 02:53:33 +1100 Jan Schmidt * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: Add PMT_%d support to prog-map. Support a PMT_%d field in the prog-map, that's optionally used to set the PMT for each program in the mux. Part-of: 2021-03-12 18:10:18 +1100 Jan Schmidt * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: Don't write PCR until PAT/PMT are output. Make sure streams start cleanly with a PAT/PMT and defer the first PCR output until after that. Part-of: 2021-03-11 18:21:11 +0100 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmux.c: tsmux: finalize PCR timing for complete accuracy In order to always insert a PCR packet right on time, we need to check whether one is needed when outputting any packet, not only a packet for the PCR stream. Most of the PCR packets will remain data-carrying packets, but as a last resort we may insert stuffing packets on the PCR stream. Part-of: 2021-03-11 18:05:25 +1100 Jan Schmidt * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: Improve PCR/SI scheduling. Change PCR / SI scheduling so that instead of checking if the current PCR is larger than the next target time, instead check if the PCR of the next packet would be too late, so PCR and SI are always scheduled earlier than the target, not later. There are still cases where PCR can be written too late though, because we don't check before each output packet. Part-of: 2021-03-11 18:05:10 +1100 Jan Schmidt * gst/mpegtsmux/tsmux/tsmuxstream.c: tsmuxstream: Fix comment typo Part-of: 2021-03-09 13:22:10 +0100 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstcccombiner.h: * tests/check/elements/cccombiner.c: cccombiner: implement scheduling Prior to that, cccombiner's behaviour was essentially that of a funnel: it strictly looked at input timestamps to associate together video and caption buffers. This patch instead exposes a "schedule" property, with a default of TRUE, to control whether caption buffers should be smoothly scheduled, in order to have exactly one per output video buffer. This can involve rewriting input captions, for example when the input is CDP sequence counters are rewritten, time codes are dropped and potentially re-injected if the input video frame had a time code meta. Caption buffers may also get split up in order to assign captions to the correct field when the input is interlaced. This can also imply that the input will drift from synchronization, when there isn't enough padding in the input stream to catch up. In that case the element will start dropping old caption buffers once the number of buffers in its internal queue reaches a certain limit (configurable). The property is exposed so that existing users of cccombiner can revert back to the original behaviour, but should eventually be removed, as that behaviour was simply inadequate. This commit also disallows changing the input caption type, as this would needlessly complicate implementation, and removes the corresponding test. Part-of: 2021-03-17 19:26:12 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11upload.cpp: d3d11: Use render-target and shader-resource bind flags by default Even if bind flags is not needed by an element, other element might need such bind flags. Part-of: 2021-03-15 00:04:21 +0800 He Junyan * sys/va/gstvavpp.c: va: vpp: Fix features lost in transform_caps(). When we transform the caps from the sink to src, or vice versa, the "caps" passed to us may only contain parts of the features. Which makes our vpp lose some feature in caps and get a negotiation error. The correct way should be: Cleaning the format and resolution of that caps, but adding all VA, DMA features to it, making it a full feature caps. Then, clipping it with the pad template. fixes: #1551 Part-of: 2021-03-15 16:25:36 -0300 Thibault Saunier * ext/wpe/WPEThreadedView.cpp: wpe: Ignore 'error-cancelled' 'failures' This happens when the user use the 'load-bytes' signal and nothing is wrong there Part-of: 2021-03-16 19:09:59 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: d3d11decoder: WARNING if ID3D11VideoDevice is unavailable, not ERROR gst_d3d11_decoder_new() method is also used for device capability checking during plugin init. Although we are checking hardware flag prior to that, it doesn't guarantee ID3D11VideoDevice interface. Part-of: 2021-03-16 17:56:51 +0900 Seungha Yang * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmftransform.cpp: mediafoundation: Fix resource leak IMFActivate would hold its internal objects unless user call ShutdownObject(), even if we release the IMFActivate. Here internal objects may include Direct3D objects, such as texture, device handle for example. Part-of: 2021-03-16 15:58:57 +0900 Seungha Yang * sys/d3d11/gstd3d11convert.cpp: d3d11colorconvert: Fix caps leak GstBaseTransform::fixate_caps() takes ownership of passed othercaps argument. Part-of: 2021-03-13 19:00:18 +0100 Víctor Manuel Jáquez Leal * tests/examples/va/meson.build: * tests/examples/va/multiple-vpp.c: va: example: multiple-vpp: test sharpen with dynamic controller Part-of: 2021-03-13 18:57:37 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: synchronize segment with stream time This is required to use dynamic controllable parameters. Part-of: 2021-03-15 18:26:03 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Do negotiation again per forward/reverse playback mode change For reverse playback, we are always copying decoded frame to downstream buffer. So the pool size can be and need to be large enough. In case that forward playback, however, we need to restrict the max pool size for performance reason. Otherwise decoder will keep copying decoded texture to downstream buffer pool if decoding is faster than downstream throughput performance and also there are queue element between them. Part-of: 2021-03-15 19:48:56 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: d3d11videosink: Avoid switching conversion tool during playback Decoder might be able to copy decoded texture to the other buffer pool during playback depending on context. In that case, copied one has no D3D11_BIND_DECODER bind flag. If we used ID3D11VideoProcessor previously for decoder texture, and incoming texture supports ID3D11VideoProcessor as well even if it has no D3D11_BIND_DECODER flag (having D3D11_BIND_RENDER_TARGET for example), allow zero-copying instead of using our fallback texture. Frequent conversion tool change (between ID3D11VideoProcessor and generic shader) might result in inconsistent image quality. Part-of: 2021-03-12 13:50:59 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: postproc: only drop filters if they change Currently, at every frame the filters array is recreated. This is not optimal, since it should be only rebuilt if the VA filter's related properties change. This patches does that by using a flag. Part-of: 2021-03-14 16:11:12 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Refactor device open step and negotiation * Remove redundant method arguments * Don't allocate staging texture if downstream supports d3d11 memory Part-of: 2021-03-14 15:08:01 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Move profile GUID handling into decoder object Part-of: 2021-03-14 14:26:17 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: d3d11decoder: Get rid of private struct Completely hide member variables Part-of: 2021-03-14 12:50:21 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: Revert "d3d11vp9dec: Add support for internal frame resizing" This reverts commit 58a4c33a0e4f4e5415d8578166716e0d65c0c27e We should use ID3D11VideoProcessor instead of shader to avoid copy. We need to revisit this topic later Part-of: 2021-03-13 22:47:55 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: * gst-libs/gst/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11videoprocessor.cpp: d3d11device: Hold ID3D11VideoDevice and ID3D11VideoContext object ... instead of QueryInterface-ing per elements. Note that ID3D11VideoDevice and ID3D11VideoContext objects might not be available if device doesn't support video interface. So GstD3D11Device object will create those objects only when requested. Part-of: 2021-03-14 13:01:37 +0900 Seungha Yang * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11: Run gst-indent for all C++ code Since all d3d11 plugin implementation code are C++, we need to run gst-indent manually. This is preparation for later "gst-indent sys/d3d11/*.cpp" run. Part-of: 2021-03-13 17:40:57 +0900 Seungha Yang * sys/d3d11/gstd3d11basefilter.cpp: * sys/d3d11/gstd3d11colorconverter.h: * sys/d3d11/gstd3d11compositor.cpp: * sys/d3d11/gstd3d11compositorbin.cpp: * sys/d3d11/gstd3d11convert.cpp: * sys/d3d11/gstd3d11convert.h: * sys/d3d11/gstd3d11converter.cpp: * sys/d3d11/gstd3d11converter.h: * sys/d3d11/gstd3d11decoder.cpp: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11desktopdupsrc.cpp: * sys/d3d11/gstd3d11download.cpp: * sys/d3d11/gstd3d11h264dec.cpp: * sys/d3d11/gstd3d11h265dec.cpp: * sys/d3d11/gstd3d11mpeg2dec.cpp: * sys/d3d11/gstd3d11overlaycompositor.cpp: * sys/d3d11/gstd3d11pluginutils.cpp: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11shader.cpp: * sys/d3d11/gstd3d11upload.cpp: * sys/d3d11/gstd3d11videoprocessor.cpp: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/gstd3d11videosink.cpp: * sys/d3d11/gstd3d11videosinkbin.cpp: * sys/d3d11/gstd3d11vp8dec.cpp: * sys/d3d11/gstd3d11vp9dec.cpp: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Port to C++ Direct3D11 objects are COM, and most COM C APIs are verbose (C++ is a little better). So, by using C++ APIs, we can make code shorter and more readable. Moreover, "ComPtr" helper class (which is C++ only) can be utilized, that is very helpful for avoiding error-prone COM refcounting issue/leak. Part-of: 2021-03-12 12:36:52 +0100 Víctor Manuel Jáquez Leal * tests/examples/va/multiple-vpp.c: va: example: multiple-vpp: test direction change If the driver supports it (iHD, so far) and the parameter -d is set, the direction of the video will be changed randomly. In the code you can select, at compilation time, if the direction change is done by element's property or by pipeline events. Part-of: 2021-03-11 18:53:09 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: update passthrough and reconfigure pads Added helper function _update_passthrough() which will define and set the pass-through mode of the filter, and it'll either reconfigure both pads or it will just mark the src pad for renegotiation or nothing at all. There are cases where both pads have to be reconfigured (direction changed, for example), other when just src pad has to (filters updated) or none (changing to ready state). The requirement of renegotiation depends on the need to enable/disable its VA buffer pools. This patch sets pass-through mode by default, so the buffer pools aren't allocated if no filtering/direction operations are defined, which is the correct behavior. Part-of: 2021-02-25 14:09:50 +0100 Stéphane Cerveau * ext/zxing/gstzxing.cpp: * ext/zxing/meson.build: * tests/check/elements/zxing.c: zxing: update to support version 1.1.1 Support new API in 1.1.1 Update the supported input video format. Update tests to use parse_launch Part-of: 2021-03-10 13:10:28 +0100 Stéphane Cerveau * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: do not clip the frame If the current buffer is delta unit such as P or B frame, the buffer should not be clipped and need to let the decoder handle the segment boundary situation. Part-of: 2021-03-11 02:36:28 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: d3d11device: Fix wrong printf formatting Add missing '%' there Part-of: 2021-02-20 11:36:42 +0000 Philippe Normand * gst-libs/gst/transcoder/gsttranscoder-private.h: * gst-libs/gst/transcoder/gsttranscoder-signal-adapter.c: * gst-libs/gst/transcoder/gsttranscoder.c: * gst-libs/gst/transcoder/gsttranscoder.h: transcoder: Add state-changed signal Similar to GstPlayer, a new signal for state tracking is now emitted at runtime, as a commodity for applications which then don't need to monitor the pipeline GstBus for state changes anymore. Part-of: 2020-12-07 10:47:30 +0000 Philippe Normand * gst-libs/gst/play/gstplay-signal-adapter.c: * gst-libs/gst/player/gstplayer-media-info-private.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-wrapped-video-renderer-private.h: * gst-libs/gst/player/gstplayer-wrapped-video-renderer.c: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/meson.build: player: Rewrite as GstPlay wrapper For the time being the GstPlayer library remains as a wrapper for GstPlay, in order to keep existing applications working and give them time to port to GstPlay. GstPlayer will remain in -bad for a couple cycles and the plan for GstPlay is to move it to -base before 1.20. Part-of: 2020-12-07 09:56:26 +0000 Philippe Normand * gst-libs/gst/play/gstplay.c: play: Flush API bus before exiting main loop Otherwise the bus might attempt to dispatch queued messages after the thread ended, causing runtime warnings. Part-of: 2020-11-29 18:55:48 +0000 Philippe Normand * tests/check/libs/play.c: * tests/check/meson.build: play: tests: Switch user-agent test to a real HTTP server Part-of: 2020-11-14 10:56:51 +0000 Philippe Normand * meson_options.txt: * tests/check/libs/play.c: * tests/check/meson.build: play: tests: Refactor to use new Message bus API Instead of relying on an extra GMainLoop, the messages are poped from the player bus and handled synchronously. This should avoid flaky behaviors. Fixes #608 Part-of: 2020-11-14 10:47:53 +0000 Philippe Normand * gst-libs/gst/play/gstplay.c: play: Plug media_info leak Part-of: 2020-04-28 21:09:40 +0200 Stephan Hesse * gst-libs/gst/play/gstplay.c: play: Rename internal buffering field to buffering_percent Part-of: 2019-11-02 16:14:13 +0100 Stephan Hesse * docs/libs/play/index.md: * docs/libs/play/sitemap.txt: * docs/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/play/gstplay-media-info-private.h: * gst-libs/gst/play/gstplay-media-info.c: * gst-libs/gst/play/gstplay-media-info.h: * gst-libs/gst/play/gstplay-message-private.h: * gst-libs/gst/play/gstplay-signal-adapter.c: * gst-libs/gst/play/gstplay-signal-adapter.h: * gst-libs/gst/play/gstplay-types.h: * gst-libs/gst/play/gstplay-video-overlay-video-renderer.c: * gst-libs/gst/play/gstplay-video-overlay-video-renderer.h: * gst-libs/gst/play/gstplay-video-renderer-private.h: * gst-libs/gst/play/gstplay-video-renderer.c: * gst-libs/gst/play/gstplay-video-renderer.h: * gst-libs/gst/play/gstplay-visualization.c: * gst-libs/gst/play/gstplay-visualization.h: * gst-libs/gst/play/gstplay.c: * gst-libs/gst/play/gstplay.h: * gst-libs/gst/play/meson.build: * gst-libs/gst/play/play-prelude.h: * gst-libs/gst/play/play.h: play: Introducing the new playback library This aims to be a replacement for the GstPlayer library. In GstPlay, notifications are sent as application messages through a dedicated GstBus. The GMainContext-based signal dispatcher was replaced by a GObject signal adapter, now relying on the bus to emit its signals. The signal dispatcher is now optional and fully decoupled from the GstPlay object. Co-authored with: Philippe Normand Fixes #394 Part-of: 2021-03-09 13:00:10 +0200 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Don't post messages with the mutex locked Part-of: 2021-03-01 20:53:53 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtc: don't generate duplicate rtx payloads when bundle-policy is set It was possible to generate a SDP that had an RTX payload type that matched one of the media payload types when providing caps via codec_preferences without any sink pads. Fixes m=video 9 UDP/TLS/RTP/SAVPF 96 ... a=rtpmap:96 VP8/90000 a=rtcp-fb:96 nack pli a=fmtp:96 apt=96 Part-of: 2021-03-08 14:30:52 +0200 Vivia Nikolaidou * tests/check/elements/interlace.c: * tests/check/meson.build: tests: Add negotiation tests for the interlace elements Many complicated cases exist. Would be good to have some checks. Part-of: 2021-03-08 20:59:14 +0200 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Discard stored_frame on EOS and PAUSED_TO_READY Would otherwise leak it. Part-of: 2021-03-08 16:16:25 +0200 Vivia Nikolaidou * docs/plugins/gst_plugins_cache.json: * gst/interlace/gstinterlace.c: interlace: Specify interlace-modes in the sink pad template Especially specify the field-order in the interleaved mode. Otherwise it might cause the negotiation to fail, because GST_PAD_SET_ACCEPT_INTERSECT is not set on the sinkpad, and the field-order is missing in the sink template but can be present in the outside caps. Part-of: 2021-03-07 16:47:07 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvh264sldec: Reopen decoder object if larger DPB size is required Equivalent to the d3d11h264dec fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1839 Part-of: 2021-03-03 01:23:20 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: d3d11: Fix an HLSL compiler warning warning X3578: Output value 'main' is not completely initialized Part-of: 2021-01-27 10:55:13 +0800 Bing Song * tools/gst-transcoder.c: transcoder: handle SIGINT and SIGHUP Handle SIGINT and SIGHUP in transcoder. Or the output file maybe corrupt. Fixes #1507 Part-of: 2021-03-04 17:42:28 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: d3d11h264dec: Keep track of actually configured DPB size ... instead of the largest we ever seen. Note that d3d11h264dec element holds previously configured DPB size for later decoder object re-open decision. This is to fix below case: 1) Initial SPS, required DPB size is 6 - decoder object is opened with DPB size 6 - max_dpb_size is now 6 2) SPS update with resolution change, required DPB size is 1 - decoder object is re-opened with DPB size 1 - max_dpb_size should be updated to 1, but it didn't happen (BUG) 3) SPS update without resolution change, only required DPB size is updated to 6 - decoder object should be re-opened but didn't happen because we didn't update max_dpb_size at 2). Part-of: 2021-03-03 16:19:39 +0000 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * gst/interlace/gstinterlace.c: interlace: add more formats, esp 10-bit, 12-bit and 16-bit ones Part-of: 2021-02-16 11:23:17 +0100 Benjamin Gaignard * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: retrieve interlaced information Lets the decoder knows if the frames are interlaced or not. Provide this information to the driver while filling reference pictures fields in slice params structure Part-of: 2020-11-27 16:00:03 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Reduce controls for subsequent slices Only the SLICE_PARAMS and PRED_WEIGHTS are needed for the second and following slices. Part-of: 2020-08-14 10:13:09 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Implement optional scaling matrix The new H.264 uAPI requires that all drivers support scaling matrix only as an option, when a non-flat scaling matrix is provided in the bitstream headers. Take advantage of this and avoid passing the scaling matrix if not needed. Part-of: 2020-09-30 14:34:15 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Only set SPS control if needed Given V4L2 controls are cached in V4L2, there is no need to set them if they don't change. Set the SPS control only if a new sequence was received by the parser. Part-of: 2020-09-30 14:22:14 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Only slice-based need SLICE_PARAMS and PRED_WEIGHTS Frame-based decoding mode doesn't require SLICE_PARAMS and PRED_WEIGHTS controls. Moreover, if the driver doesn't support these two controls, trying to set them will fail. Fix this by only setting these on slice-based decoding mode. Part-of: 2020-09-30 14:14:41 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: h264: Add API checks Check that the V4L2 H264 controls' sizes match our expectation. If not, then probably there's an API mismatch which will cause errors or decoding corruption. Also, print a warning if the kernel version is too old. Part-of: 2020-09-30 10:40:51 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/linux/h264-ctrls.h: * sys/v4l2codecs/linux/media.h: * sys/v4l2codecs/linux/types-compat.h: * sys/v4l2codecs/linux/v4l2-common.h: * sys/v4l2codecs/linux/v4l2-controls.h: * sys/v4l2codecs/linux/videodev2.h: * sys/v4l2codecs/plugin.c: v4l2codecs: h264: Update to the new uAPI Starting from Linux v5.11, the V4L2 stateless H.264 uAPI is updated and stable. Part-of: 2020-09-30 10:33:59 -0300 Ezequiel Garcia * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Set the scaling matrix present flag unconditionally We are currently always setting and passing a scaling matrix, so need to set this flag accordingly. Passing a scaling matrix optionally will be implemented in follow-up commit. Part-of: 2021-03-02 12:46:24 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: postproc: mention the possibility of color balance Part-of: 2021-03-02 12:46:06 +0100 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: docs: plugins update VA elements Part-of: 2021-03-02 12:44:12 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: vp8dec, vp9dec: only set NV12 color format for documentation Mention in documentation only the most used output format in VA-API. Part-of: 2021-03-02 22:01:26 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11convert: Forward colorimetry and chroma-site from upstream Adopt the improvement of https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1033 into d3d11. Part-of: 2021-03-02 17:47:03 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11convert: Add support for border drawing ... and fix wrong resizing when downstream requested PAR value Part-of: 2021-03-02 21:35:00 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11convert: Prefer video processor over shader ... if video processor was used previously. Otherwise, switching between video processor and shader would result in inconsistent output image quality. Part-of: 2021-03-02 18:07:36 +0900 Seungha Yang * sys/d3d11/gstd3d11videoprocessor.c: d3d11videoprocessor: Disable auto processing mode explicitly Don't allow auto processing (e.g., denoising), as it might result in unexpected output. Part-of: 2021-03-02 21:10:24 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.c: d3d11memory: Fix for wrong texture_array_size returns Fix mismatched return values Part-of: 2021-03-02 21:13:18 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Add trace log for DPB pool size debugging Part-of: 2021-03-02 20:45:22 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Always use render-target bind flag for downstream pool To convert decoded texture into other format, downstream would use video processor instead of shader. In order for downstream to be able to use video processor even if we copied decoded texture into downstream pool, we should set this bind flag. Otherwise, downstream would keep switching video processor and shader to convert format which would result in inconsistent image quality. Part-of: 2021-03-02 20:37:04 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11videoprocessor.c: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11: Fix wrong preprocessing blocks Missed in https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/464 Part-of: 2021-03-01 13:44:09 +0800 He Junyan * sys/va/gstvavpp.c: va: vpp: fix a wrong caps logic in vpp_transform_caps(). The current gst_va_vpp_transform_caps return such as: video/x-raw(memory:VAMemory), width=(int)[ 16, 16384 ], height=(int)[ 16, 16384 ], interlace-mode=(string)progressive, format=(string){ NV12, I420, YV12, YUY2, RGBA, BGRA, P010_10LE, ARGB, ABGR, VUYA }; video/x-raw(memory:DMABuf), width=(int)[ 16, 16384 ], height=(int)[ 16, 16384 ], interlace-mode=(string)progressive, format=(string) { NV12, I420, YV12, YUY2, RGBA, BGRA, P010_10LE, ARGB, ABGR, VUYA }; video/x-raw, width=(int)[ 16, 16384 ], height=(int)[ 16, 16384 ], interlace-mode=(string)progressive, format=(string){ VUYA, GRAY8, NV12, NV21, YUY2, UYVY, YV12, I420, P010_10LE }; video/x-raw(memory:VAMemory), width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], interlace-mode=(string)progressive; video/x-raw(memory:DMABuf), width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], interlace-mode=(string)progressive; video/x-raw, width=(int) [ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], interlace-mode=(string)progressive Which is not correct. It mixes the template caps and the input query caps together. The correct way should be: clip the template caps with the input caps(remove format and rangify size). The correct answer should be: video/x-raw(memory:VAMemory), width=(int)[ 16, 16384 ], height=(int)[ 16, 16384 ], interlace -mode=(string)progressive, format=(string){ NV12, I420, YV12, YUY2, RGBA, BGRA, P010_10LE, ARGB, ABGR, VUYA }; video/x-raw(memory:DMABuf), width=(int)[ 16, 16384 ], height=(int)[ 16, 16384 ], interlace-mode=(string)progressive, format=(string){ NV12, I420, YV12, YUY2, RGBA, BGRA, P010_10LE, ARGB, ABGR, VUYA }; video/x-raw, width=(int)[ 16, 16384 ], height=(int)[ 16, 16384 ], interlace-mode=(string)progressive, format=(string){ VUYA, GRAY8, NV12, NV21, YUY2, UYVY, YV12, I420, P010_10LE } Part-of: 2021-03-01 16:23:37 +0100 Jan Alexander Steffens (heftig) * gst/mpegtsdemux/mpegtsparse.c: mpegtsparse: Fix switched DTS/PTS when set-timestamps=false Fixes 30ee21eae36e7279f63b77167ba1dcf5f70b8e83. Part-of: 2019-08-15 08:25:26 -0700 Ilya Kreymer * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: * ext/webrtc/icestream.c: * tests/check/elements/webrtcbin.c: webrtc ice: Add 'min/max-rtp-port' props for setting RTP port range default min port == 0, max port == 65535 -- if min port == 0, uses existing random port selection (range ignored) add 'gathering_started' flag to avoid changing ports after gathering has started validity checks: min port <= max port enforced, error thrown otherwise include tests to ensure port range is being utilized (by @hhardy) Part-of: 2021-02-25 11:58:57 -0500 Olivier Crête * ext/webrtc/gstwebrtcice.c: webrtc ice: Only ever request one component, it's always rtcpmux Part-of: 2021-02-26 15:40:01 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Add some missing API guards Part-of: 2021-02-26 15:36:48 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder-signal-adapter.c: transcoder: Fix potential use of uninitialized variables gst_structure_get won't touch variables if the field is not present leading to potential use of initialized vars Part-of: 2021-02-26 15:31:29 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder-private.h: * gst-libs/gst/transcoder/gsttranscoder-signal-adapter.c: * gst-libs/gst/transcoder/gsttranscoder-signal-adapter.h: * gst-libs/gst/transcoder/gsttranscoder.c: * gst-libs/gst/transcoder/gsttranscoder.h: * tools/gst-transcoder.c: transcoder: Rework the API to create/get SignalAdapter We can only have 1 single GstTranscoderSignalAdapter object for a given GstTranscoder object, this enforces that by avoiding to expose a constructor and instead add a method to GstTranscoder to get the signal adapter (internally creating it when needed). We can still cleanly ensure that the signal adapter is running for the requested GMainContext and return NULL if it is not the case. Part-of: 2021-02-22 16:59:25 +1100 Matthew Waters * ext/webrtc/gstwebrtcice.c: webrtcbin: use regular ice nomination by default 1. We don't currently deal with an a=ice-options in the SDP which means we currently violate https://tools.ietf.org/html/rfc5245#section-8.1.1 which states: "If its peer is using ICE options (present in an ice-options attribute from the peer) that the agent does not understand, the agent MUST use a regular nomination algorithm." 2. The recommendation is default to regular nomination in both RFC5245 and RFC8445. libnice change for this is https://gitlab.freedesktop.org/libnice/libnice/-/merge_requests/125 which requires an API break in libnice. Part-of: 2021-02-24 18:43:07 +0000 Philippe Normand * docs/meson.build: * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Remove un-needed gst_init call We can safely assume GStreamer is already initialized from here. Part-of: 2020-11-25 22:25:28 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder-message-private.h: * gst-libs/gst/transcoder/gsttranscoder-signal-adapter.c: * gst-libs/gst/transcoder/gsttranscoder-signal-adapter.h: * gst-libs/gst/transcoder/gsttranscoder.c: * gst-libs/gst/transcoder/gsttranscoder.h: * gst-libs/gst/transcoder/meson.build: * tools/gst-transcoder.c: transcoder: Port to a GstBus API instead Following the move made by GstPlayer in: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/35 Part-of: 2020-11-25 22:21:35 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: * gst-libs/gst/transcoder/gsttranscoder.h: * gst-libs/gst/transcoder/meson.build: * gst-libs/gst/transcoder/transcoder-prelude.h: transcoder: Automatically generate enums GTypes Part-of: 2020-11-25 22:01:30 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.h: transcoder: Port to G_DECLARE Part-of: 2021-02-26 16:36:58 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Use correct numerator for 29.97fps It's not 0.2997fps. Part-of: 2021-02-26 11:39:10 +0100 Edward Hervey * sys/decklink/gstdecklink.cpp: decklinksrc: Use a more accurate capture time Use the hardware reference clock time when the frame was finished being captured instead of a time much further down the road. This improves the stability/accuracy of buffer times. Part-of: 2021-02-24 19:14:42 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: No need of fourcc to create surface. In commits 430aa327 and a119a940 there are a regression since it is possible to create surfaces without fourcc, only chroma (rtformat) is required. This regression is shown on radeonsi driver with certain color formats. Part-of: 2021-02-24 13:06:51 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: * tests/examples/va/meson.build: * tests/examples/va/multiple-vpp.c: va: vpp: implement GstColorBalance interface And modify multiple-vpp example to use it with -r parameter. Part-of: 2021-02-23 17:22:40 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: add controllable and mutable playing to GParamFlags Add controllable and mutable playgin to common GParamFlags. Also use this common flags to video-direction Part-of: 2021-02-24 16:57:06 +0100 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkviewconvert.c: vulkan: Fix elements long name. Fix vkcoloconvert and vkviewconvert long names. Part-of: 2021-01-12 15:33:49 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: * sys/msdk/meson.build: msdk: allow user specify a drm device via an env variable User may specify the required device via GST_MSDK_DRM_DEVICE Example: GST_MSDK_DRM_DEVICE=/dev/dri/card0 gst-launch-1.0 videotestsrc ! msdkh264enc ! fakesink Part-of: 2021-01-19 15:36:29 +0800 He Junyan * sys/va/gstvaav1dec.c: * sys/va/gstvaav1dec.h: * sys/va/gstvabasedec.h: * sys/va/gstvaprofile.c: * sys/va/meson.build: * sys/va/plugin.c: VA: Add the vaav1dec element as the av1 decoder. Part-of: 2021-01-19 15:17:58 +0800 He Junyan * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: VA: Add the aux surface for gst buffer used by decoder. The AV1 codec needs to support the film grain feature. When the film grain feature is enabled, we need two surfaces as the output of the decoded picture, one without film grain effect and the other one with it. The first one acts as the reference and is needed for later pictures' reconstruction, and the second one is the real display output. So we need to attach another aux surface to the gst buffer/mem and make that aux surface as the target of vaBeginPicture. Part-of: 2021-01-19 15:07:38 +0800 He Junyan * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: VA: Add a helper function of decoder_add_slice_buffer_with_n_params. Some codecs such as AV1 needs several parameters associated with one slice. It may have multi tiles within one slice and each tile needs its description parameter. Part-of: 2021-01-19 14:59:45 +0800 He Junyan * gst-libs/gst/codecs/gstav1decoder.c: * gst-libs/gst/codecs/gstav1decoder.h: * gst-libs/gst/codecs/gstav1picture.c: * gst-libs/gst/codecs/gstav1picture.h: * gst-libs/gst/codecs/meson.build: codecs: AV1decoder: Add the AV1 decoder base class. Part-of: 2021-02-23 13:47:29 +0800 He Junyan * sys/va/gstvaallocator.c: va: allocator: replace assert with error log in va alloc. We should print error log rather than assert when the forcc or the rt_format of va allocator is unrecognized. Part-of: 2021-02-21 17:38:38 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/d3d11/gstd3d11compositor.c: * sys/d3d11/gstd3d11compositorbin.c: * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11desktopdupsrc.c: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11mpeg2dec.c: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/plugin.c: d3d11: Documentation update * Update class metadata * for wrapper bin elements to be distinguishable from internal element. * D3D11 -> Direct3D11 for consistency * Add missing Since mark everywhere * Update plugin cache Part-of: 2021-02-21 20:38:37 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: d3d11: Reorganize class hierarchy of convert elements AS-IS: D3D11Convert class is baseclass of D3D11ColorConvert and D3D11Scale * GstD3D11Convert |_ GstD3D11ColorConvert |_ GstD3D11Scale TO-BE: Introducing a new base class for color conversion and/or rescale elements * GstD3D11BaseConvert |_ GstD3D11Convert |_ GstD3D11ColorConvert |_ GstD3D11Scale Part-of: 2021-02-21 17:35:40 +0900 Seungha Yang * sys/d3d11/gstd3d11deinterlace.cpp: d3d11deinterlace: Add missing system memory caps features on templates This element can support system memory Part-of: 2021-02-18 09:53:09 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: va: filter, vpp: process colorimetry A new filter method were added: gst_va_filter_set_formats(). In this way the input & output GstVideoInfo are processed only once per stream negotiation, and not per frame. Part-of: 2021-02-18 05:58:25 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: check if filter is open on set_orientation() Because the method requires pipeline_caps is filled. Part-of: 2021-02-17 18:56:29 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: human readable background color Part-of: 2021-02-17 18:55:14 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: fail immediately if vaBeginPicture() fails There's no need to try vaRenderPicture() if vaBeginPicture() failed. Part-of: 2021-02-17 18:30:10 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: destroy pipeline buffer after destroying filters In 6ae24948 the pipeline buffer destroy were removing assuming it wasn't required. Nonetheless, debugging the code it looks like a buffer leak in iHD driver since the ID of the buffer kept increasing. The difference now is that first the filter buffers are destroy first and later the pipeline buffer. Part-of: 2021-02-19 14:27:39 +0800 He Junyan * sys/va/gstvavpp.c: va: vpp: Add raw buffer copy when needed. Just like the decoder, the vapostproc also needs to copy the output buffer to raw buffer if downstream elements only supports raw caps and does not support the video meta. The pipeline like: gst-launch-1.0 filesrc location=xxxx ! h264parse ! vah264dec ! \ vapostproc ! capsfilter caps=video/x-raw,width=55,height=128 ! \ filesink location=xxx needs this logic to dump the data correctly. fixes: #1523 Part-of: 2021-02-19 00:03:00 +0000 Tim-Philipp Müller * gst/sdp/gstsdpsrc.c: sdpsrc: fix double free if sdp is provided as string via the property Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1532 Part-of: 2021-02-18 21:38:37 +0900 Seungha Yang * sys/wasapi2/gstwasapi2device.c: wasapi2device: Make wasapi2 device distinguishable from wasapi device Both wasapi2 and wasapi plugins use WASAPI API. So "device.api=wasapi" would make sense for the wasapi2 plugin as well. But people would be confused by the identical "device.api=wasapi" property if intended plugin is wasapi, not wasapi2. This change will make them distinguishable by using "device.api" device property. Part-of: 2021-01-13 00:27:40 +0900 Seungha Yang * sys/wasapi2/meson.build: wasapi2: Always build if Windows 10 SDK is available Add support for building wasapi2 plugin if Windows 10 SDK is available on system Part-of: 2021-02-08 12:24:58 +0100 Stéphane Cerveau * ext/dtls/gstdtlssrtpbin.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: dtls: use GST_WARNING instead of g_warning No need a g_warning which is failing always with gst-inspect -a Part-of: 2021-01-28 12:28:03 +0100 Michael Olbrich * gst/videoparsers/gsth264parse.c: * tests/check/elements/h264parse.c: h264parse: don't invalidate the last PPS when parsing a new SPS When a SPS is received then any previous PPS remains valid. So don't clear the PPS flag from the parser state. This is important because there are encoders that don't generated a PPS after every SPS. Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/571 Part-of: 2021-02-17 15:15:09 +0200 Vivia Nikolaidou * gst/videoparsers/gsth265parse.c: h265parse: Detect height change on field-based interlaced files The first time update_src_caps is called, there's no frame parsed yet, therefore we don't know whether the file has alternate-field interlacing mode. If we run it again after we have a frame, it might be that now we have the SEI pic_struct parsed, and therefore we know that it's field-based interlaced, and therefore the height must be multiplied by two. Earlier on this was not detected as a change. Part-of: 2020-09-19 21:39:06 +0200 Víctor Manuel Jáquez Leal * tests/examples/va/meson.build: * tests/examples/va/multiple-vpp.c: va: add multiple-vpp example Part-of: 2021-02-15 15:54:11 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: set workaround only for i965 driver In commit 117453b9 a i965 driver workaround was added for all drivers, because at that time we didn't have a driver implementation API. Now there's one. This patch set the workaround only for the i965 driver. Part-of: 2021-02-17 13:46:03 +0200 Vivia Nikolaidou * gst/videoparsers/gsth265parse.c: h265parse: Fix FPS/duration for interlaced files There can be h265 files with frame-based, not field-based, interlacing. Part-of: 2021-02-12 18:43:00 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: MT-safe queue & dequeue dmabuf-based memories One problem that va dmabuf allocator had is when preparing a buffer from dmabuf memories in the allocator pool, specially when a buffer is composed by several memories. This memories have to be by certain number and in certain order. This patch stores the number of memories and their address in order when a dmabuf-based buffer is created and when preparing a buffer, it is reconstructed with this info. Finally, instead of pushing the memories as soon as they are unrefed, they are hold until GstVaBufferSurface's ref_mems_count reaches zero (all the memories related with that buffer/surface are unrefed). Until that happen, all the memories are pushed back into the queue, locked, assuring that all the memories related with a single buffer (with the same surface) remain contiguous, so the buffer reconstruction is assured. Part-of: 2021-02-15 15:34:56 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvapool.c: va: pool, allocator: free memories at bufferpool's stop() This patch frees the memories in the allocator's pool after the bufferpool frees all its buffers, sync'ing them at stop() vmethod. By doing it, the current logic in flush_start() is not valid, so the vmethod is removed. Part-of: 2021-02-12 15:40:33 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: va: allocator: remove unused public functions Deleted the public functions: gst_va_dmabuf_allocator_wait_for_memory() gst_va_allocator_wait_for_memory() And all the support for wait, cond in allocator's pool. Part-of: 2021-02-12 13:26:24 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvapool.c: va: pool: simplify the logic Instead of removing memories from buffers at reset_buffer()/release_buffer() the bufferpool operation is kept as originally designed, still the allocator pool is used too. Thus, this patch restores the buffer size configuration while removing release_buffer(), reset_buffer() and acquire_buffer() vmethods overloads. Then, when the bufferpool base class decides to discard a buffer, the VA surface-based memory is returned to the allocator pool when its last reference is freed, and later reused if a new buffer is allocated again. Part-of: 2021-02-07 16:12:56 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvapool.c: va: pool: use allocator pool at alloc() Check if the allocator pool has memories available before creating a new one, but only iif pool is not starting. Part-of: 2021-02-08 12:25:07 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: log buffer at dmabuf setup and prepare Part-of: 2021-01-22 00:10:28 +0900 Seungha Yang * sys/d3d11/gstd3d11deinterlace.cpp: * sys/d3d11/gstd3d11deinterlace.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add support for deinterlacing by using ID3D11VideoProcessor interface Add a new element d3d11deinterlace to support deinterlacing. Similar to d3d11videosink and d3d11compositor, this element is a wrapper bin of set of child elements including helpful conversion elements (upload/download and color convert) to make this element configurable between non-d3d11 elements. Part-of: 2021-02-14 06:23:55 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11format.c: * gst-libs/gst/d3d11/gstd3d11format.h: d3d11: Add a method for conversion from DXGI format to GstVideoFormat Part-of: 2021-01-22 03:26:29 +0100 Mathieu Duponchelle * gst/videoparsers/gsth264parse.c: h264parse: fix timestamping of interlaced fields in output Instead of relying on GstBaseParse default behaviour of computing the duration of a parsed buffer based on the framerate passed to gst_base_parse_set_framerate(), we instead compute the duration ourselves, as we have more information available. In particular, this means we now output buffers with a duration that matches that of raw interlaced buffers when each field is output in a separate buffer. This fixes DTS interpolation performed by GstBaseParse, as the previous behaviour of outputting each field with the duration of a full frame was messing up the base class calculations. When not enough information is available, h264parse simply falls back to calculating the duration based on the framerate and hope for the best as was the case previously. Part-of: 2021-02-14 21:01:32 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11mpeg2dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Take account of min buffers of downstream buffer pool Since our decoder DPB texture pool cannot be grown once it's configured, we should pre-allocate sufficient number of textures for zero-copy playback (but not too many). The "min buffers" allocation query parameter can be a hint for the number of required textures in addition to DPB size. Part-of: 2020-10-29 10:54:45 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/openh264/gstopenh264enc.cpp: openh264enc: Add support for main and high profiles Those are supported (to a certain extent) so we should not limit ourself to baseline Part-of: 2021-02-11 16:04:12 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2decoder: Move frame_unref to handle_frame. In the current code, we call frame_unref only when the frame is outputted. This is OK for normal playback, but when seek happens, the frames stored in DPB is not outputted and causes some memory leak. The correct way is that we should call frame_unref every time we finish the handle_frame(), which is also the behaviour of H264/H265 decoder. Part-of: 2021-02-07 02:26:02 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11h265dec.c: d3d11h265dec: Add support for interlaced stream Note that we have no D3D11 deinterlace element yet. If downstream is not support format:Interlaced caps feature including all D3D11 the other elements, aspect-ratio will be adjusted as an alternative approach. Part-of: 2021-02-07 00:21:06 +0900 Seungha Yang codecs: h265decoder: Add support for interlaced stream * Invoke GstH265DecoderClass::new_sequence() method per interlaced stream status update so that subclass can update caps. * Parse picture timing SEI and set buffer flags on GstH265Picture object. Subclass can refer to it like that of our h264decoder implementation. * Remove pointless GstH265PictureField enum Part-of: 2021-02-10 00:59:05 +0900 Seungha Yang * sys/va/gstvah265dec.c: vah265dec: Don't need to pass picture structure to VA This code came from gstvaapidecoder_h265 implementation but picture structure is always GST_VAAPI_PICTURE_STRUCTURE_FRAME. Moreover, in theory, VA doesn't need to know picture structure for decoding HEVC stream. Part-of: 2021-02-06 22:02:59 +0900 Seungha Yang * sys/nvcodec/gstnvh265dec.c: nvh265sldec: Remove pointless field picture parameter setup HEVC has no decoding flow for interlaced, field picture referencing. Part-of: 2021-02-08 00:07:26 +0800 He Junyan * sys/va/gstvavpp.c: va: vpp: Make the global lock only to DMA buffer's import. The normal gst_va_buffer_get_surface does not need a global lock. Too big lock may make the performance lower. Part-of: 2021-02-05 14:05:53 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: log dmabuf and surface at pool push or pop In order to keep track of the dmabuf fds and surfaces numbers log messages are added at memory_release() (queue push) and prepare_buffer() (queue pop). Part-of: 2021-02-02 06:43:27 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvah265dec.c: va: h265dec: fix HVC1 stream format name Part-of: 2021-02-01 23:19:27 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: va: basedec: refactor context query Context query is handled either by source and sink queries. This patch factors-out its handling in a common utility function. Part-of: 2020-12-21 18:10:44 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: use a common GParamFlags definition Instead of repeating the same code along gst_va_filter_install_properties() Part-of: 2021-01-22 16:54:05 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: remove spurious if validation The first if checks for caps, thus else doesn't need to recheck for the opposite. Part-of: 2021-02-05 18:13:32 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: fix frame copy There were two problems with frame copy: 1. The input video info are from the format color, not form the allocated VA surface, it's needed to update the sink video info according with the allocator's data. 2. The parameters of `gst_video_frame_copy()` were backwards. Part-of: 2021-02-02 18:05:46 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: request video and alignment metas for src pool This is for the pool used when importing raw video frames to surfaces. Part-of: 2021-02-04 16:43:02 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: transform_size() must return FALSE transform_size() basetransform vmethod is used when there's no output buffer pool and allocates a system memory buffer. With VA this cannot be allowed, since it needs VASurfaces to process. Thus transform_size() is not required, but to play safe let's return FALSE. Part-of: 2021-02-02 16:22:34 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: copy input buffer flags and timestamps Strictly speaking right now it's not required do this copy, but let's play safe and assume in the future this metadata might be required while doing the postprocessing. Part-of: 2021-02-01 23:55:11 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: handle context query Previously vapostproc didn't communicate its context through query mechanism, which is required for context sharing. This patch completes this missing bits. Part-of: 2021-02-01 23:50:12 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: don't copy color, size or orientation video metas If they are processed by the element. Part-of: 2021-02-05 16:46:00 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: don't break passthrough if no color balance required The function `_add_filter_cb_buffer()` returned TRUE if no color balance filter are required, but that's is wrong, since it will break the passthrough. This patch return FALSE which is the correct value for the situation. Part-of: 2021-01-15 14:07:19 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: use gst_clear_caps() Part-of: 2021-02-02 16:23:28 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: don't destroy pipeline buffer This was only required by i915 driver before libva-2.0 because it didn't conform. Also changes the way _destroy_filters() is called, now inside a locked block, so it must not lock in it. Part-of: 2021-02-01 16:57:49 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: lock member variables access While gst_va_filter_open() and gst_va_filter_close() remain non-thread-safe, the other API calls that modify member variables are locked. Part-of: 2021-02-03 23:39:00 +0100 Jakub Adam * ext/srt/gstsrtobject.c: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: srt: preserve ABI compatibility Reintroduce socket descriptor parameter removed in 327ad84e to "caller-added" and "caller-removed" signals, just set it always to zero. Part-of: 2021-02-04 03:42:05 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11mpeg2dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Fix deadlock when DPB texture pool is full Unlike other stateless decoder implementations (e.g., VA), our DPB pool cannot be grown since we are using texture array (pre-allocated, fixed-size d3d11 texture pool). So, if there's no more available texture to use, there's no way other than copying it to downstream's d3d11 buffer pool. Otherwise deadlock will happen. Part-of: 2021-02-02 19:10:13 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11memory.c: * gst-libs/gst/d3d11/gstd3d11memory.h: d3d11memory: Add a method for querying texture array size ... and the number of textures in use. Direct3D11 texture array is usually used for decoder DPB pool, and d3d11 decoder elements might want to know whether there's available texture resource or not. Part-of: 2020-12-14 20:34:15 +0100 Jakub Adam * ext/srt/gstsrtobject.c: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: srt: don't pass SRT socket ID to "caller-added,removed" signals The caller's IP and port is enough for unique identification. Don't leak the socket handle since using it in unadvised libsrt calls from the application could break the SRT element. Part-of: 2020-11-04 17:14:03 +0100 Jakub Adam * ext/srt/gstsrtobject.c: srtobject: add caller address to stats structure In listener mode, gst_stats() returns an independent set of statistics for every connected caller. Having the caller's IP and port present in each structure allows to correlate the statistics with a particular caller that has been announced by "caller-added" signal. Part-of: 2021-02-03 14:27:14 +0200 Vivia Nikolaidou * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Support for alternate-field interlacing Also don't set interlacing information on the caps, see #1313 Part-of: 2021-02-02 18:25:31 +0100 Jan Alexander Steffens (heftig) * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264/h265parse: Add VideoTimeCodeMeta to the outgoing buffer The parsers attempted to add the meta to the incoming buffer, which might not be the outgoing buffer or may not have been writable yet. To fix this, call `gst_buffer_make_writable` earlier and make sure to use the `parse_buffer` to add the meta. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1521 Part-of: 2021-01-27 15:32:26 +0800 Haihao Xiang * sys/va/gstvadevice.c: va: sort the device queue If so, the elements will be registered per drm node in order of renderD128, renderD129, ... etc, an element with constant name will be registered on renderD128 on a hardware with multiple drm nodes. Part-of: 2021-02-02 04:33:09 +0900 Seungha Yang * sys/v4l2codecs/gstv4l2decoder.c: v4l2decoder: Small documentation fix Fixing documentation even though those methods are v4l2codecs plugin internals Part-of: 2021-01-29 09:43:07 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: h264: Enable 1 frame delay on non-live When doing non-live decoding, enable 1 frame of delay. This will ensure that we queue the next decoding job before we actually wait for the previous to complete. This improves throughput notably on RK3399. Part-of: 2021-01-29 09:41:22 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Add support for render delay This add support for render delay in the decoder helper. Part-of: 2021-01-27 15:55:43 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: Coding style fix Part-of: 2021-01-27 15:53:49 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Poll inside set_done() This removes the need for the gst_v4l2_decoder_is_done() helper and simplify slightly the subclass code. Part-of: 2020-12-18 16:36:16 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Make request structure ref-counted This adds a non-thread safe refcount to the GstV4l2Request. This will allow holding on more then one request in order to implement render delay. This is made non-thread safe for speed as we know this will all happen on the same streaming thread. Part-of: 2020-12-14 17:07:01 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Rework handling of queues and pending requests Starting from this patch, all queue and dequeue operation happening on V4L2 is now abstracted with the request. Buffers are dequeued automatically when pending requests are marked done and only 1 in-flight request is now used. Along with fixing issues with request not being reused with slice decoders, this change reduces the memory footprint by allocating only two bitstream buffers. Part-of: 2021-01-29 02:09:05 -0500 Staz M * sys/decklink/gstdecklink.cpp: decklink: Fixed decklinkvideosink auto format detection Part-of: 2021-01-28 04:03:37 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvh264sldec: Add support for output-delay to improve throughput performance NVDEC API support delaying getting decoded output, and recommended delay by API document is 4 frames. In case that throughput is more critical factor than latency, we can prefer delayed output as recommended by NVIDIA. Part-of: 2020-12-29 19:54:35 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264decoder: Add support for output delay Some decoding APIs support delayed output or a command for decoding a frame doesn't need to be sequential to corresponding command for getting decoded frame. For instance, subclass might be able to request decoding for multiple frames and then get for one (oldest) decoded frame or so. If aforementioned case is supported by specific decoding API, delayed output might show better throughput performance. Part-of: 2021-01-27 17:09:07 -0500 Arun Raghavan * ext/ldac/gstldacenc.h: * ext/ldac/meson.build: ldac: Use pkg-config instead of raw lib/header search The ldacBT library includes pkg-config files for the standard and ABR libraries, so let's just use that instead of doing a header/library search. Part-of: 2021-01-28 02:02:28 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Don't limit max buffers of buffer pool In some case, especially reverse playback, we would need more than two buffers. Part-of: 2021-01-27 04:34:13 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11shader.c: d3d11: Suppress some warning debug messages * Don't warn for live object, since ID3D11Debug itself seems to be holding refcount of ID3D11Device at the moment we called ID3D11Debug::ReportLiveDeviceObjects(). It would report live object always * Device might not be able to support some formats (e.g., P010) especially in case of WARP device. We don't need to warn about that. * gst_d3d11_device_new() can be used for device enumeration. Don't warn even if we cannot create D3D11 device with given adapter index therefore. * Don't warn for HLSL compiler warning. It's just noise and should not be critical thing at all Part-of: 2020-12-11 05:23:20 +0900 Seungha Yang * tests/examples/d3d11videosink/d3d11device.cpp: * tests/examples/d3d11videosink/d3d11device.h: * tests/examples/d3d11videosink/d3d11videosink-shared-texture-d3d9ex.cpp: * tests/examples/d3d11videosink/d3d11videosink-shared-texture.cpp: * tests/examples/d3d11videosink/meson.build: examples: Add d3d11videosink examples for shared-texture use cases Add two examples to demonstrate "draw-on-shared-texture" use cases. d3d11videosink will draw application's own texture without copy by using: - Enable "draw-on-shared-texture" property - make use of "begin-draw" and "draw" signals And then, application will render the shared application's texture to swapchain's backbuffer by using 1) Direct3D11 APIs 2) Or, Direct3D9Ex + interop APIs Part-of: 2020-12-23 23:49:12 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11videosinkbin.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_dummy.cpp: * sys/d3d11/gstd3d11window_dummy.h: * sys/d3d11/meson.build: d3d11videosink: Add support for drawing on application's own texture Add a way to support drawing on application's texture instead of usual window handle. To make use of this new feature, application should follow below step. 1) Enable this feature by using "draw-on-shared-texture" property 2) Watch "begin-draw" signal 3) On "begin-draw" signal handler, application can request drawing by using "draw" signal action. Note that "draw" signal action should be happen before "begin-draw" signal handler is returned NOTE 1) For texture sharing, creating a texture with D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX flag is strongly recommend if possible because we cannot ensure sync a texture which was created with D3D11_RESOURCE_MISC_SHARED and it would cause glitch with ID3D11VideoProcessor use case. NOTE 2) Direct9Ex doesn't support texture sharing which was created with D3D11_RESOURCE_MISC_SHARED_KEYEDMUTEX. In other words, D3D11_RESOURCE_MISC_SHARED is the only option for Direct3D11/Direct9Ex interop. NOTE 3) Because of missing synchronization around ID3D11VideoProcessor, If shared texture was created with D3D11_RESOURCE_MISC_SHARED, d3d11videosink might use fallback texture to convert DXVA texture to normal Direct3D texture. Then converted texture will be copied to user-provided shared texture. * Why not use generic appsink approach? In order for application to be able to store video data which was produced by GStreamer in application's own texture, there would be two possible approaches, one is copying our texture into application's own texture, and the other is drawing on application's own texture directly. The former (appsink way) cannot be a zero-copy by nature. In order to support zero-copy processing, we need to draw on application's own texture directly. For example, assume that application wants RGBA texture. Then we can imagine following case. "d3d11h264dec ! d3d11convert ! video/x-raw(memory:D3D11Memory),format=RGBA ! appsink" ^ |_ allocate new Direct3D texture for RGBA format In above case, d3d11convert will allocate new texture(s) for RGBA format and then application will copy again the our RGBA texutre into application's own texture. One texture allocation plus per frame GPU copy will hanppen in that case therefore. Moreover, in order for application to be able to access our texture, we need to allocate texture with additional flags for application's Direct3D11 device to be able to read texture data. That would be another implementation burden on our side But with this MR, we can configure pipeline in this way "d3d11h264dec ! d3d11videosink". In that way, we can save at least one texture allocation and per frame texutre copy since d3d11videosink will convert incoming texture into application's texture format directly without copy. * What if we expose texture without conversion and application does conversion by itself? As mentioned above, for application to be able to access our texture from application's Direct3D11 device, we need to allocate texture in a special form. But in some case, that might not be possible. Also, if a texture belongs to decoder DPB, exposing such texture to application is unsafe and usual Direct3D11 shader cannot handle such texture. To convert format, ID3D11VideoProcessor API needs to be used but that would be a implementation burden for application. Part-of: 2021-01-20 20:04:20 +0800 Haihua Hu * ext/dash/gstmpdhelper.c: dashsink: add h265 codec support Return hvc1 for video/x-h265 mime type in mpd helper function Part-of: 2021-01-23 23:25:30 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: set the default alignment for input and output. 1. Set the default output alignment to frame, rather than current alignment of obu. This make it the same behaviour as h264/h265 parse, which default align to AU. 2. Set the default input alignment to byte. It can handle the "not enough data" error while the OBU alignment can not. Also make it conform to the comments. Part-of: 2021-01-23 19:26:59 +0800 He Junyan * tests/check/elements/av1parse.c: * tests/check/elements/av1parse.h: test: Add more test cases for the av1parse obu aligned output. Part-of: 2021-01-23 19:21:21 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Reset the annex_b when meet TU inside a buffer. Part-of: 2021-01-23 19:05:57 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Output each OBU when output is aligned to obu. The current behaviour for obu aligned output is not very precise. Several OBUs will be output together within one gst buffer. We should output each gst buffer just containing one OBU. This is the same way as the h264/h265 parse do when NAL aligned. Part-of: 2021-01-23 17:38:12 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Always copy the OBU to cache. The current optimization when input align and out out align are the same is not very correct. We simply copy the data from input buffer to output buffer, but we failed to consider the dropping of OBUs. When we need to drop some OBUs(such as filter out the OBUs of some temporal ID), we can not do simple copy. So we need to always copy the input OBUs into a cache. Part-of: 2021-01-23 17:26:25 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Improve the logic when to drop the OBU. When drop some OBU, we need to go on. The current manner will make the data access out range of the buffer mapping. Part-of: 2021-01-26 11:12:28 +0100 Marijn Suijten * ext/ldac/gstldacenc.c: ext/ldac: Move duplicate sampling rates into #define Because there was a typo in one of the duplicates already (see previous commit) it is much safer to specify these once and only once. Part-of: 2021-01-26 11:02:21 +0100 Marijn Suijten * ext/ldac/gstldacenc.c: ext/ldac: Fix typo in 88200(0) stereo encoder sampling rate Fixes: a57681455 ("ext: Add LDAC encoder") Part-of: 2021-01-11 01:06:24 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11mpeg2dec.c: * sys/d3d11/gstd3d11mpeg2dec.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add support for MPEG-2 video decoding Add DXVA/Direct3D11 API based MPEG-2 decoder element Part-of: 2020-11-27 16:18:29 +1100 Matthew Waters * ext/wpe/WPEThreadedView.cpp: wpesrc: fix possible small deadlock on shutdown Problem is that unreffing the EGLImage/SHM Buffer while holding the images_mutex lock may deadlock when a new buffer is advertised and an attempt is made to lock the images_mutex there. The advertisement of the new image/buffer is performed in the WPEContextThread and the blocking dispatch when unreffing wants to run something on the WPEContextThread however images_mutex has already been locked by the destructor. Delay unreffing images/buffers outside of images_mutex and instead just clear the relevant fields within the lock. Part-of: 2021-01-20 18:16:17 +0800 Haihua Hu * ext/dash/gstmpdhelper.c: dashsink: fix double unref of sinkpad caps no need to unref caps in gst_mpd_helper_get_XXX_codec_from_mime it will be unref in caller gst_dash_sink_get_stream_metadata() Part-of: 2021-01-22 16:56:24 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: Fix a typo in frame_restoration_type setting. Fixes: #1500 Part-of: 2021-01-22 14:01:01 +0800 He Junyan * gst/videoparsers/gstav1parse.c: av1parse: Fix some issues in the src caps. 1. Add the mono_chrome to identify 4:0:0 chroma-format. 2. Correct the mapping between subsampling_x/y and chroma-format. There is no 4:4:0 format definition in AV1. And 4:4:4 should let both subsampling_x/y be equal to 0. 3. Send the chroma-format when the color space is not RGB. Fixes: #1502 Part-of: 2021-01-22 13:25:50 +0800 He Junyan * gst/videoparsers/gstvp9parse.c: vp9parse: Fix the subsampling_x/y to chroma format mapping. The chroma format 4:4:4 needs both subsampling_x and subsampling_y equal to 0. Fixes: #1502 Part-of: 2021-01-22 21:10:59 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkutils.c: vulkan: remove duplicated check Checking the same value twice is pointless Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1504 Part-of: 2021-01-22 19:26:18 +1100 Matthew Waters * ext/ldac/meson.build: ldac: also look for the ldac/ldacBT.h header. Otherwise there will be a scenario where the library can be found but not the header and a compilation build error will result Part-of: 2021-01-22 09:35:30 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: fix assignation to proper variable Fix the result of a wrong copy&paste Fixes: #1501 Part-of: 2021-01-21 04:41:44 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Add support for P010 d3d11 texture Add P010 Direct3D11 texture format support Part-of: 2021-01-20 02:29:43 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11compositor.c: * sys/d3d11/gstd3d11compositorbin.c: * sys/d3d11/gstd3d11desktopdupsrc.c: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11pluginutils.c: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/plugin.c: d3d11: Don't use hardcoded maximum resolution value Maximum supported texture dimension is pre-defined based on feature level and it couldn't be INT_MAX in any case. See also https://docs.microsoft.com/en-us/windows/win32/direct3d11/overviews-direct3d-11-devices-downlevel-intro Part-of: 2021-01-16 19:14:06 +0800 He Junyan * docs/plugins/gst_plugins_cache.json: doc: Add the av1 parse element. Part-of: 2021-01-16 16:48:38 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: Exclude the size of obu_size when identify OBU. obu->obu_size does not contain the bytes of obu_size itself, we need to exclude it when doing the saint check. Part-of: 2021-01-06 23:33:24 +0800 He Junyan * tests/check/elements/av1parse.c: * tests/check/elements/av1parse.h: * tests/check/meson.build: test: Add test cases for av1parse element. Part-of: 2020-09-22 14:54:19 +0800 He Junyan * gst/videoparsers/gstav1parse.c: * gst/videoparsers/gstav1parse.h: * gst/videoparsers/meson.build: * gst/videoparsers/plugin.c: videoparsers: av1: Add the AV1 parse. This AV1 parse implements the conversion between alignment of obu, tu and frame, and the conversion between stream-format of obu-stream and annexb. TODO: 1. May need a property of operating_point to filter the OBUs 2. May add a property to disable deep parse. Part-of: 2021-01-20 00:57:05 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.h: codecs: mpeg2decoder: Fix a typo in header file's comment. Part-of: 2021-01-18 20:30:44 +0900 Seungha Yang * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Fix ugly thread name for Win32 window impl. Don't need to put Win32 twice Part-of: 2021-01-18 20:28:14 +0900 Seungha Yang * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: d3d11videosink: Fix MSVC build warnings around UWP code gstd3d11window_corewindow.cpp(408): warning C4189: 'storage': local variable is initialized but not referenced gstd3d11window_corewindow.cpp(490): warning C4189: 'self': local variable is initialized but not referenced gstd3d11window_swapchainpanel.cpp(481): warning C4189: 'self': local variable is initialized but not referenced Part-of: 2021-01-18 19:17:14 +0900 Seungha Yang * gst-libs/gst/d3d11/gstd3d11config.h.meson: * gst-libs/gst/d3d11/meson.build: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/meson.build: d3d11: Allow building UWP features with Desktop features if possible WINAPI_PARTITION_DESKTOP and WINAPI_PARTITION_APP can coexist. Although UWP only binaries should be used for production stage, this change will be useful for development stage Part-of: 2020-12-28 02:35:38 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Do more retry for ID3D11VideoContext::DecoderBeginFrame failure Some GPUs (especially NVIDIA) are complaining that GPU is still busy even we did 50 times of retry with 1ms sleep per failure. Because DXVA/D3D11 doesn't provide API for "GPU-IS-READY-TO-DECODE" like signal, there seems to be still no better solution other than sleep. Part-of: 2021-01-18 19:23:30 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Fix build error on UWP gstd3d11videosink.c(662): error C2065: 'sink': undeclared identifier Part-of: 2021-01-17 01:16:17 +0800 He Junyan * sys/va/gstvabasedec.c: * sys/va/gstvautils.c: va: Fix some gst_object_unref error because the pointer is NULL. !1957 introduces some error of gst_object_unref for NULL pointer. Fixes all of them. Part-of: 2021-01-15 16:05:06 +0800 He Junyan * sys/va/gstvadecoder.c: va: Make the caps pointer operation atomic in vadecoder. The vadecoder's srcpad_caps and sinkpad_caps pointers are outside of the mutex protection. Just make all operation for them atomic. Part-of: 2021-01-15 15:22:07 +0800 He Junyan * sys/va/gstvabasedec.c: * sys/va/gstvautils.c: va: Fix a latent race condition in vabasedec. The vabasedec's display and decoder are created/destroyed between the gst_va_base_dec_open/close pair. All the data and event handling functions are between this pair and so the accessing to these pointers are safe. But the query function can be called anytime. So we need to: 1. Make these pointers operation in open/close and query atomic. 2. Hold an extra ref during query function to avoid it destroyed. Part-of: 2021-01-14 14:37:32 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Allow disabling audio sample alignment code by setting the alignment-threshold to 0 And handle setting it to GST_CLOCK_TIME_NONE as always aligning without ever detecting a discont. Part-of: 2020-12-21 05:11:03 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh264enc.h: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfh265enc.h: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmftransform.h: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvideoenc.h: * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/gstmfvp9enc.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mfvideoenc: Add support for Direct3D11 texture Initial support for d3d11 texture so that encoder can copy upstream d3d11 texture into encoder's own texture pool without downloading memory. This implementation requires MFTEnum2() API for creating MFT (Media Foundation Transform) object for specific GPU but the API is Windows 10 desktop only. So UWP is not target of this change. See also https://docs.microsoft.com/en-us/windows/win32/api/mfapi/nf-mfapi-mftenum2 Note that, for MF plugin to be able to support old OS versions without breakage, this commit will load MFTEnum2() symbol by using g_module_open() Summary of required system environment: - Needs Windows 10 (probably at least RS 1 update) - GPU should support ExtendedNV12SharedTextureSupported feature - Desktop application only (UWP is not supported yet) Part-of: 2021-01-12 19:12:42 +0100 Mathieu Duponchelle * ext/webrtc/webrtctransceiver.c: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpsender.c: webrtc: expose transport property on sender and receiver As advised by !1366#note_629558 , the nice transport should be accessed through: > transceiver->sender/receiver->transport/rtcp_transport->icetransport All the objects on the path can be accessed through properties except sender/receiver->transport. This patch addresses that. Part-of: 2020-12-21 02:47:45 +0900 Seungha Yang * gst-libs/gst/d3d11/d3d11-prelude.h: * gst-libs/gst/d3d11/gstd3d11.h: * gst-libs/gst/d3d11/gstd3d11_fwd.h: * gst-libs/gst/d3d11/gstd3d11_private.h: * gst-libs/gst/d3d11/gstd3d11bufferpool.c: * gst-libs/gst/d3d11/gstd3d11bufferpool.h: * gst-libs/gst/d3d11/gstd3d11config.h.meson: * gst-libs/gst/d3d11/gstd3d11device.c: * gst-libs/gst/d3d11/gstd3d11device.h: * gst-libs/gst/d3d11/gstd3d11format.c: * gst-libs/gst/d3d11/gstd3d11format.h: * gst-libs/gst/d3d11/gstd3d11memory.c: * gst-libs/gst/d3d11/gstd3d11memory.h: * gst-libs/gst/d3d11/gstd3d11utils.c: * gst-libs/gst/d3d11/gstd3d11utils.h: * gst-libs/gst/d3d11/meson.build: * gst-libs/gst/meson.build: * sys/d3d11/gstd3d11basefilter.c: * sys/d3d11/gstd3d11basefilter.h: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: * sys/d3d11/gstd3d11compositor.c: * sys/d3d11/gstd3d11compositor.h: * sys/d3d11/gstd3d11compositorbin.c: * sys/d3d11/gstd3d11compositorbin.h: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11desktopdup.h: * sys/d3d11/gstd3d11desktopdupsrc.c: * sys/d3d11/gstd3d11desktopdupsrc.h: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11overlaycompositor.c: * sys/d3d11/gstd3d11overlaycompositor.h: * sys/d3d11/gstd3d11pluginutils.c: * sys/d3d11/gstd3d11pluginutils.h: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11videoprocessor.c: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_corewindow.h: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.h: * sys/d3d11/gstd3d11window_win32.cpp: * sys/d3d11/gstd3d11window_win32.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Move core methods to gst-libs Move d3d11 device, memory, buffer pool and minimal method to gst-libs so that other plugins can access d3d11 resource. Since Direct3D is primary graphics API on Windows, we need this infrastructure for various plugins can share GPU resource without downloading GPU memory. Note that this implementation is public only for -bad scope for now. Part-of: 2021-01-12 00:13:22 +0900 Seungha Yang * sys/va/gstvaallocator.c: va: allocator: Fix deadlock caused by double lock Trivial bug fix for deadlock Part-of: 2021-01-04 19:34:40 +1100 Matthew Waters * ext/wpe/gstwpesrc.cpp: wpesrc: replace object lock usage with a new lock Using the object lock is problematic for anything that can dispatch to another thread which is what createWPEView() does inside gst_wpe_src_start(). Using the object lock there can cause a deadlock. One example of such a deadlock is when createWPEView is called, but another (or the same) wpesrc is on the WPEContextThread and e.g. posts a bus message. This message propagations takes and releases the object lock of numerous elements in quick succession for determining various information about the elements in the bin. If the object lock is already held, then the message propagation will block and stall bin processing (state changes, other messages) and wpe servicing any events. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1490 Part-of: 2021-01-10 23:16:55 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: codecs: h264picture: Count only complete complementary field pair for dpb fullness decision Our DPB implementation was designed as such that allowing temporary DPB overflow in the middle of field picture decoding and incomplete field pair should not trigger DPB bumping. Part-of: 2021-01-10 23:11:01 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Add support for field-pair input frame In case that upstream pushed buffer as a frame unit, not picture unit for interlaced stream, baseclass should be able to detect AU boundary (i.e., complementary field pair). Part-of: 2021-01-10 22:01:27 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Remove unused private variables ... and reset() method to clear internal status at one place Part-of: 2020-12-22 02:29:03 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: try harder not to pick duplicate media ids On renegotiation, or when the user has specified a mid for a transceiver, we need to avoid picking a duplicate mid for a transceiver that doesn't yet have one. Also assign the mid we created to the transceiver, that doesn't fix a specific bug but seems to make sense to me. Part-of: 2021-01-07 23:47:35 +0900 Seungha Yang * sys/va/meson.build: * tests/examples/va/meson.build: meson: va: Skip configuration on non-linux environment VA plugin is linux-only plugin, so we can skip it earlier. Note that this plugin is making use of libdrm meson fallback, which is unusable on the other platforms such as Windows Part-of: 2021-01-07 12:41:16 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: msdkenc: the unit for max-frame-size is kbyte Part-of: 2021-01-07 09:21:47 +0100 Edward Hervey * ext/srt/gstsrtobject.c: srt: Define options added in later revisions Allows compiling the plugin against old headers. For SRTO_BINDTODEVICE there's nothing we can do, since the value depends on configuration options of the library. Nice. Fixes build with libsrt < 1.4.2 Part-of: 2020-10-16 19:30:59 +0200 Jakub Adam * ext/srt/gstsrtobject.c: srtobject: distinguish authentication error messages Use GST_RESOURCE_ERROR_NOT_AUTHORIZED code in posted error messages related to SRT authentication (e.g. incorrect or missing password) so that the application can recognize them more easily. Part-of: 2020-10-16 19:27:37 +0200 Jakub Adam * ext/srt/gstsrtobject.c: srtobject: detect socket errors from srt_epoll_wait() On an error event, epoll wait puts the failed socket in both readfds and writefds. We can take advantage of this and avoid explicitly checking socket state before every read or write attempt. In addition, srt_getrejectreason() will give us more detailed description of the connection failure. Part-of: 2020-12-30 13:51:21 -0500 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/webrtctransceiver.h: webrtcbin: Remove remnant of non-rtcp-mux mode There was some code left that wasn't used anymore. Part-of: 2020-11-24 22:25:15 +0100 Jakub Adam * ext/srt/gstsrtobject.c: srtobject: make possible to specify more sockopts in SRT URI Any socket option that can be passed to libsrt's srt-live-transmit through SRT URI query string is now recognized. Also make the code that applies options to SRT sockets more generic. Part-of: 2020-08-26 14:33:57 +0200 Jakub Adam * ext/srt/gstsrtsrc.c: srtsrc: fix typos Part-of: 2020-08-25 13:44:42 +0200 Jakub Adam * ext/srt/gstsrtsink.c: srtsink: remove unused connection_mode variable Part-of: 2020-11-23 16:12:39 +0100 Jakub Adam * ext/srt/gstsrtobject.c: srtobject: obey "wait-for-connection" in caller mode The pipeline now gets stuck in gst_srt_object_write_one() until the receiver comes online, which may or may not be desired based on the use case. Part-of: 2021-01-05 14:18:39 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvampeg2dec.c: va: mpeg2dec: refactor the picture reference filling Add the helper function _get_surface_id() which extracts the VASurfaceID from the passed picture. This function gets the surface of the next and previous reference picture. Instead of if-statements, this refactor uses a switch-statement with a fall-through, for P-type pictures, making the code a bit more readable. Also it adds quirks for gallium driver, which cannot handle invalid surfaces as forwarding nor backwarding references, so the function fails. Also iHD cannot handle them, but to avoid failing, the current picture is used as self-reference. Part-of: 2021-01-05 14:16:45 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvampeg2dec.c: va: mpeg2dec: set first field either frame or has a first field Add a helper function _is_frame_start() which check if picture has a frame structure or if it has not an interlaced first field yet. This function is used with filling is_first_field parameter. Part-of: 2021-01-06 16:38:14 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2decoder: decode only if B and not closed gop Mark as decode only if picture type is B, without previous picture in DBP and closed_gop is 0 as might be understood in "6.3.8 Group of pictures header". Part-of: 2021-01-06 12:48:14 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2decoder: rename variables Since prev_picture and next_picture are plain pointers, not pointer to pointers, it's misleading to name them with _ptr suffix. Part-of: 2021-01-04 21:02:35 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvadisplay.c: * sys/va/gstvadisplay.h: va: display: parse and set driver implementation This enum can be used for quirk handling. It's not a property because the driver enum list might change, it's not static, thus avoiding the update of GType declaration. Part-of: 2021-01-04 20:56:26 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvadisplay.c: * sys/va/gstvadisplay.h: va: display: add function precondition check Part-of: 2020-08-25 19:12:13 +0200 Jakub Adam * ext/srt/gstsrtobject.c: srtobject: post a message on the bus when broken socket is detected So that the application gets notified may react to it. Part-of: 2020-12-30 23:29:47 +0800 He Junyan * sys/va/gstvampeg2dec.c: va: mpeg2dec: Using the current picture's surface when missing reference. When missing the reference frames, we should not just discard the current frame. Some streams have group of picture header. It is an optional header that can be used immediately before a coded I-frame to indicate to the decoder if the first consecutive B-pictures immediately following the coded I-frame can be reconstructed properly in the case of a random access. In that case, the B frames may miss the previous reference and can still be correctly decoded. We also notice that the second field of the I frame may be set to P type, and it only ref its first field. We should not skip all those frames, and even the frame really misses the reference frame, some manner such as inserting grey picture should be used to handle these cases. The driver crashes when it needs to access the reference picture while we set forward_reference_picture or backward_reference_picture to VA_INVALID_ID. We now set it to current picture to avoid this. This is just a temp manner. Part-of: 2020-12-30 23:14:01 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2decoder: Creating the field based on its arriving time. Spec says: In a frame picture top_field_first being set to ‘1’ indicates that the top field of the reconstructed frame is the first field output by the decoding process. top_field_first being set to ‘0’ indicates that the bottom field of the reconstructed frame is the first field output by decoding process. Here, the "output" should be interpreted just as the output order, not including the decoding order. The field should be decoded as the order they comes in the stream. Namely, no matter top_field_first is 0 or 1, the first coming field is the first one to be decoded. Part-of: 2021-01-01 16:00:10 +0800 He Junyan * sys/va/gstvampeg2dec.c: va: mpeg2dec: Apply buffer_flags to the output buffer. Part-of: 2021-01-01 15:56:03 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2picture.h: codecs: Add buffer_flags for mpeg2 picture. We need to store the buffer flags such as GST_VIDEO_BUFFER_FLAG_INTERLACED and GST_VIDEO_BUFFER_FLAG_TFF for interlaced video. Without these flags, the VPP and display elements can not apply filter correctly. Part-of: 2020-12-30 23:00:51 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: Reset the quant matrices for each sequence in mpeg2 decoder. Part-of: 2020-10-27 11:52:09 +0530 Raghavendra * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsink.h: * ext/srt/gstsrtsrc.c: * ext/srt/gstsrtsrc.h: srt: Add authentication to srtsink and srtsrc elements Part-of: 2020-12-30 22:52:01 +0800 Haihua Hu * ext/dash/gstdashsink.c: * ext/dash/gstmpdrootnode.c: dashsink: fix critical log when exit dynamic pipeline availability-start-time and publish-time shared the same GstDateTime object, this object will be unref twice and cause reference count issue. Should use g_value_dup_boxed() to copy this object. Part-of: 2020-12-23 16:11:42 +0800 Haihao Xiang * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkenc{h264,h265}: add min-qp and max-qp properties The SDK allows user to set a QP range [1], so add min-qp and max-qp to sepecify QP range. By default, there is no limitations on QP. [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxextcodingoption2 Part-of: 2020-12-23 13:36:02 +0800 Haihao Xiang * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkenc{h264,h265}: add p-pyramid property The SDK can support P-Pyramid reference structure [1], so add a new property to enable this feature in msdkenc{h264,h265}. [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#preftype Part-of: 2020-12-22 16:17:18 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: add b-pyramid property Like as msdkh264enc, b-pyramid is added to enable B-Pyramid reference structure for H265 encoding Part-of: 2020-12-22 14:54:59 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdkh265enc: add transform-skip property Since the SDK API 1.26, TransformSkip was added to control transform_skip_enabled_flag setting in PPS [1] [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#mfxextcodingoption3 Part-of: 2020-12-29 09:41:05 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: needn't close mfx session when failed Otherwise we will get double free issue because mfx session is closed in finalize. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1867#note_739346 for the double free issue. Part-of: 2020-12-29 13:29:05 -0500 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: PLI/FIR/NACK direction are the opposite of the media Part-of: 2020-12-29 13:15:10 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Don't try unlocking unlocked mutex When flushing right at the beginning of the video chain function or when failing negotiation at the top of the function, the assrender mutex would be unlocked without being previously locked. Part-of: 2020-12-27 22:16:13 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.c: d3d11compositor: Add support for resolution change Not only for position update (e.g., xpos, ypos), we need to configure shader again per resolution change of each input stream. Part-of: 2020-12-28 04:33:11 +0900 Seungha Yang * sys/d3d11/gstd3d11shader.c: d3d11shader: Fix ID3DBlob object leak Even if HLSL compiler was able to compile our shader code, D3DCompile() might return ID3DBlob object for compile warnings and the object should be released. Part-of: 2020-12-28 17:13:22 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: Fix a typo in mpeg2 stateless decoder base class. Part-of: 2020-12-24 20:07:09 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvampeg2dec.c: va: mpeg2dec: cosmetic changes Part-of: 2020-12-27 15:47:13 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2decoder.h: * gst-libs/gst/codecs/gstmpeg2picture.c: * gst-libs/gst/codecs/gstmpeg2picture.h: codecs: mpeg2decoder: fix documentation Part-of: 2020-12-24 16:20:31 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gstmpeg2decoder.c: codecs: mpeg2decoder: simplify macros For constructors, instead of casting to pointers, cast to the structures. For compare, use inlined functions. Part-of: 2020-12-18 22:28:41 +0800 He Junyan * sys/va/gstvabasedec.h: * sys/va/gstvadecoder.c: * sys/va/gstvampeg2dec.c: * sys/va/gstvampeg2dec.h: * sys/va/meson.build: * sys/va/plugin.c: va: Add mpeg2 VA decoder. Part-of: 2020-12-18 21:25:08 +0800 He Junyan * gst-libs/gst/codecs/gstmpeg2decoder.c: * gst-libs/gst/codecs/gstmpeg2decoder.h: * gst-libs/gst/codecs/gstmpeg2picture.c: * gst-libs/gst/codecs/gstmpeg2picture.h: * gst-libs/gst/codecs/meson.build: codecs: Add mpeg2 stateless decoder base class. Part-of: 2020-12-27 03:16:28 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvideoenc.h: * sys/mediafoundation/gstmfvp9enc.cpp: mfvideoenc: Re-define default GOP size value The behavior for zero AVEncMPVGOPSize value would be varying depending on GPU vendor implementation and some GPU will produce keyframe only once at the beginning of encoding. That's unlikely expected result for users. To make this property behave consistently among various GPUs, this commit will change default value of "gop-size" property to -1 which means "auto". When "gop-size" is unspecified, then mfvideoenc will calculate GOP size based on framerate like that of our x264enc implementation. See also https://docs.microsoft.com/en-us/windows/win32/directshow/avencmpvgopsize-property Part-of: 2020-12-27 03:43:11 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Fix use of uninitialized value Part-of: 2020-12-24 21:31:04 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11utils.c: d3d11device: Add property for getting adapter LUID LUID (Locally Unique Identifier) can used for identifying GPU and that's required for some Windows APIs (e.g., MFTEnum2()) to setup device. See also https://docs.microsoft.com/en-us/windows/win32/api/mfapi/nf-mfapi-mftenum2 Part-of: 2020-12-26 20:39:07 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvideoenc.h: * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/plugin.c: mfvideoenc: Remove duplicated class registration code Each codec subclass has the same code for class/element registration, so we can move the code into one helper methodm and that will make future enhancement simple. Part-of: 2020-12-10 11:11:04 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: * sys/msdk/msdk.c: msdk: check GstMsdkContext instead of mfxSession instance When creating a GstMsdkContext instance, it also creates a mfxSession instance, so we may check GstMsdkContext instead of mfxSession instance to make sure MSDK is available. In addition, according to MSDK doc [1], MFXVideoCORE_SetHandle function should be executed before any actual usage of library including queries, otherwise the behavior is unexpected, so we should call MFXVideoCORE_QueryPlatform after MFXVideoCORE_SetHandle on Linux [1] https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md#working-with-va-api-applications Part-of: 2020-12-23 21:21:55 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/plugin.c: d3d11: Remove unnecessary helper methods We can query selected D3D_FEATURE_LEVEL and factory version by using native D3D11 API Part-of: 2020-11-21 03:20:36 +0900 Seungha Yang * sys/d3d11/gstd3d11desktopdup.cpp: * sys/d3d11/gstd3d11desktopdup.h: * sys/d3d11/gstd3d11desktopdupsrc.c: * sys/d3d11/gstd3d11desktopdupsrc.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Re-implement Desktop Duplication source Add a new video source element "d3d11desktopdupsrc" for capturing desktop image via Desktop Duplication based on Microsoft's Desktop Duplication sample available at https://github.com/microsoft/Windows-classic-samples/tree/master/Samples/DXGIDesktopDuplication This element is expected to be a replacement of existing dxgiscreencapsrc element in winscreencap plugin. Currently this element can support (but dxgiscreencapsrc cannot) - Copying captured D3D11 texture to output buffer without download - Support desktop session transition e.g., can capture desktop without error even in case that "Lock desktop" and "Permission dialog" - Multiple d3d11desktopdupsrc elements can capture the same monitor Not yet implemented features - Cropping rect is not implemented, but that can be handled by downstream - Mult-monitor is not supported. But that is also can be implemented by downstream element for example via multiple d3d11desktopdup elements with d3d11compositor Part-of: 2020-12-22 00:47:09 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/plugin.c: d3d11device: Add an optional flags argument for creating device Extend gst_d3d11_device_new() method so that caller can specify D3D11_CREATE_DEVICE_FLAG value to use. See https://docs.microsoft.com/en-us/windows/win32/api/d3d11/ne-d3d11-d3d11_create_device_flag for more detail about D3D11_CREATE_DEVICE_FLAG Part-of: 2020-12-21 14:06:53 +0530 Raju Babannavar * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Add support for dynamic resolution update. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1487 Part-of: 2020-12-21 02:56:55 +0900 Seungha Yang * sys/d3d11/gstd3d11device.h: d3d11device: Remove dead code We don't use this method since the commit of 0788492461e1b559230cc5c3a354fe5f48f95f8b Part-of: 2020-12-20 02:39:40 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11compositor.c: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videoprocessor.c: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/gstd3d11window.cpp: d3d11: Privatize d3d11memory implementation Hide most of symbols of GstD3D11Memory object. GstD3D11Memory is one of primary resource for imcoming d3d11 library and it's expected to be a extensible feature. Hiding implementation detail would be helpful for later use case. Summary of this commit: * Now all native Direct3D11 resources are private of GstD3D11Memory. To access native resources, getter methods need to be used or generic map (e.g., gst_memory_map) API should be called apart from some exceptional case such as d3d11decoder case. * Various helper methods are added for GstBuffer related operations and in order to remove duplicated code. Part-of: 2020-12-20 01:06:24 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.c: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videosink.c: d3d11: Add a helper method for d3d11buffferpool setup Remove duplicated code for d3d11buffferpool setup. Part-of: 2020-12-19 00:40:53 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11overlaycompositor.c: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11device: Remove optional helper methods Most of Direct3D11 APIs can be called without GstD3D11Device abstraction. This is a part of prework for public GstD3D11 library to introduce minimal APIs Part-of: 2020-12-20 22:12:44 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Prepare window once streaming started ... instead of READY state. READY state is too early for setting overlay window handle especially playbin/playsink scenario since playsink will set given overlay handle on videosink once READY state change of videosink is ensured. Part-of: 2020-08-19 03:19:26 +0900 Seungha Yang * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmftransform.h: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvideoenc.h: mfvideoenc: Improve latency performance for hardware encoder Unlike software MFT (Media Foundation Transform) which is synchronous in terms of processing input and output data, hardware MFT works in asynchronous mode. output data might not be available right after we pushed one input data into MFT. Note that async MFT will fire two events, one is "METransformNeedInput" which happens when MFT can accept more input data, and the other is "METransformHaveOutput", that's for signaling there's pending data which can be outputted immediately. To listen the events, we can wait synchronously via IMFMediaEventGenerator::GetEvent() or make use of IMFAsyncCallback object which is asynchronous way and the event will be notified from Media Foundation's internal worker queue thread. To handle such asynchronous operation, previous working flow was as follows (IMFMediaEventGenerator::GetEvent() was used for now) - Check if there is pending output data and push the data toward downstream. - Pulling events (from streaming thread) until there's at least one pending "METransformNeedInput" event - Then, push one data into MFT from streaming thread - Check if there is pending "METransformHaveOutput" again. If there is, push new output data to downstream (unlikely there is pending output data at this moment) Above flow was processed from upstream streaming thread. That means even if there's available output data, it could be outputted later when the next buffer is pushed from upstream streaming thread. It would introduce at least one frame latency in case of live stream. To reduce such latency, this commit modifies the flow to be fully asynchronous like hardware MFT was designed and to be able to output encoded data whenever it's available. More specifically, IMFAsyncCallback object will be used for handling "METransformNeedInput" and "METransformHaveOutput" events from Media Foundation's internal thread, and new output data will be also outputted from the Media Foundation's thread. Part-of: 2020-12-16 18:32:25 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Fix duration of the first audio frame after each discont Part-of: 2020-12-16 00:28:08 +0530 Biswapriyo Nath * sys/mediafoundation/gstmfdevice.h: mediafoundation: Fix redefinition of variables. Remove duplicate GstMFDevice and GstMFDeviceProvider declaration. Part-of: 2020-12-17 04:41:18 +1100 Jan Schmidt * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Calculate the correct size for fixed size buffers Fix the output-buffer-size property to do what it says by calculating the correct audio buffer size for that target size, rounded down to the nearest whole number of samples. Part-of: 2020-12-10 12:35:07 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Implement GstBaseSrc::get_caps() to return more constrained caps Instead of the template caps we can return a subset of them based on the selected properties. Part-of: 2020-10-30 02:21:11 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2: Ensure unmute when opening audio client ISimpleAudioVolume::SetMute() status seems to be preserved even after process is terminated. In order to start audio client with unmuted state, always disable mute when opening audio client. Part-of: 2020-12-14 16:12:22 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsparse.c: tsparse: Don't use non-object for debugging statement Use the pad instead Part-of: 2020-12-14 10:56:39 +0100 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples/ts-parser: Use the section type for descriptor identification Some descriptors can only be present in some section Part-of: 2020-12-14 10:56:02 +0100 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples/ts-parser: Try more descriptor/stream types These were added recently Part-of: 2020-12-09 09:14:12 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegts: Don't add non-padded streams to collection on updates When carrying over existing GstStream to a new GstStreamCollection we need to check whether they *actually* were being used in the previous collection. This avoids adding unknown streams (metadata, PSI, etc...) to the collection on updates. Part-of: 2020-11-22 18:48:08 +0100 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * tests/examples/mpegts/ts-parser.c: mpegts: Add support for SIT sections Selection Information Tables (EN 300 468) Part-of: 2020-12-14 10:50:02 +0100 Edward Hervey * docs/libs/mpegts/index.md: * gst-libs/gst/mpegts/gst-atsc-descriptor.h: * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gst-hdmv-section.h: * gst-libs/gst/mpegts/gst-isdb-descriptor.h: * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/mpegts/mpegts.c: * gst-libs/gst/mpegts/mpegts.h: mpegts: Update documentation * Split up into appropriate individual header files * Document more sections and structures * Add well-known list of registration id Part-of: 2020-12-10 16:29:31 -0300 Thibault Saunier * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/transcoder/gsttranscoder.c: player/transcoder: Use bus signal watch Instead of implementing exactly the same thing ourself but making `GstBus` not know that it is the case. Since we are *sure* that the bus can't have been access at the point where we add the watch we are guaranteed that the current thread maincontext is going to be used. Part-of: 2020-12-10 15:37:14 +0800 Lim Siew Hoon * gst/inter/gstintervideosrc.c: intervideosrc: fix negotiation of interlaced caps In 1.0 the field in caps is called "interlace-mode", not "interlaced". Fixes #1480 Part-of: 2020-12-11 21:45:25 -0500 Arun Raghavan * ext/openaptx/meson.build: * meson_options.txt: openaptx: Drop lib prefix from option name for consistency Part-of: 2020-12-11 08:45:06 +0000 Igor Kovalenko * ext/meson.build: * ext/openaptx/gstopenaptxdec.c: * ext/openaptx/gstopenaptxdec.h: * ext/openaptx/gstopenaptxenc.c: * ext/openaptx/gstopenaptxenc.h: * ext/openaptx/meson.build: * ext/openaptx/openaptx-plugin.c: * ext/openaptx/openaptx-plugin.h: * meson_options.txt: openaptx: add aptX and aptX-HD codecs using libopenaptx Part-of: 2020-10-19 14:56:43 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/gstwpesrc.cpp: wpe: Emit load-progress messages The estimated-load-progress value can be used on application side to display a progress bar for instance. Part-of: 2020-12-08 16:46:42 +0200 Vivia Nikolaidou * gst/mpegtsmux/gstbasetsmux.c: basetsmux: Don't send the capsheader if src pad has no caps That means we're shutting down, so there's no point in the streamheader being sent Part-of: 2020-12-04 17:02:00 +1100 Matthew Waters * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmpconnection.c: * gst/rtmp2/rtmp/rtmpconnection.h: rtmp2/connection: pass the parent cancellable down to the connection Otherwise, when rtpm2src cancels an inflight operation that has a queued message stored, then the rtmp connection operation is not stopped. If the cancellation occurs during rtmp connection start up, then rtpm2src does not have any way of accessing the connection object as it has not been returned yet. As a result, rtpm2src will cancel, the connection will still be processing things and the GMainContext/GMainLoop associated with the outstanding operation will be destroyed. All outstanding operations and the rtmpconnection object will therefore be leaked in this case. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1425 Part-of: 2020-12-07 14:54:28 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Don't take object lock calling gst_srt_object_get_stats This function takes the sock lock. This can result in a deadlock when another thread holding the sock lock is trying to take the object lock. Thread A (Holds object lock, wants sock lock): #2 gst_srt_object_get_stats at gst-plugins-bad/ext/srt/gstsrtobject.c:1753 #3 gst_srt_object_get_property_helper at gst-plugins-bad/ext/srt/gstsrtobject.c:409 #4 gst_srt_sink_get_property at gst-plugins-bad/ext/srt/gstsrtsink.c:95 #5 g_object_get_property from libgobject-2.0.so.0 Thread B (Holds sock lock, wants object lock): #2 gst_element_post_message_default at gstreamer/gst/gstelement.c:2069 #3 gst_element_post_message at gstreamer/gst/gstelement.c:2123 #4 gst_element_message_full_with_details at gstreamer/gst/gstelement.c:2259 #5 gst_element_message_full at gstreamer/gst/gstelement.c:2298 #6 gst_srt_object_send_headers at gst-plugins-bad/ext/srt/gstsrtobject.c:1407 #7 gst_srt_object_send_headers at gst-plugins-bad/ext/srt/gstsrtobject.c:1444 #8 gst_srt_object_write_to_callers at gst-plugins-bad/ext/srt/gstsrtobject.c:1444 #9 gst_srt_object_write at gst-plugins-bad/ext/srt/gstsrtobject.c:1598 #10 gst_srt_sink_render at gst-plugins-bad/ext/srt/gstsrtsink.c:179 Fixes d2d00e07acc2b1ab1ae5a728ef5dc33c9dee7869. Part-of: 2020-11-25 16:24:25 +0200 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: ccconverter: Add property to specify which sections to include in CDP packets Various software, including ffmpeg's Decklink support, fails parsing CDP packets that contain anything but CC data in the CDP packets. Based on this property, timecodes are not written into the CDP packets even if they're present. Part-of: 2020-11-25 14:54:09 +0200 Sebastian Dröge * ext/closedcaption/gstccconverter.c: ccconverter: Refactor code to only retrieve the timecode meta once Part-of: 2020-12-06 18:03:47 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.h: va: decode: fix display type Instead of a pointer to GstVaDisplay it was used a VADisplay type, which in certain platforms is the same, and the compiler didn't complain. Part-of: 2020-07-03 12:25:31 +0200 Marc Leeman * docs/plugins/gst_plugins_cache.json: * gst/rtp/gstrtpsrc.c: * gst/rtp/gstrtpsrc.h: rtpmanagerbad: allow setting caps on rtpsrc rtpsrc tries to do a lookup of the caps based on the encoding-name. For not so standard encodings, the caps can be set, avoiding the lookup. Part-of: 2020-11-22 04:39:57 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/meson.build: d3d11videosink: Add a property to support rendering statistics data on window Add a new property "render-stats" to allow rendering statistics data on window for debugging and/or development purpose. Text rendering will be accelerated by GPU since this implementation uses Direct2D/DirectWrite API and Direct3D inter-op for minimal overhead. Specifically, text data will be rendered on swapchain backbuffer directly without any copy/allocation of extra texture. Part-of: 2020-12-04 03:40:17 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11window.cpp: d3d11: Protect ID3D11VideoContext with lock Likewise d3d11 immediate context (i.e., ID3D11DeviceContext), ID3D11VideoContext API is not thread safe. It must be protected therefore. Part-of: 2020-12-03 17:13:15 +0100 Mathieu Duponchelle * docs/meson.build: docs: don't exit the subdir when optional deps aren't found Part-of: 2020-12-02 11:29:08 +0100 Edward Hervey * docs/plugins/gst_plugins_cache.json: * ext/opencv/gstretinex.cpp: * ext/opencv/gstretinex.h: opencv: Expose retinex parameters Makes the plugin a tad more useful :) Part-of: 2020-10-12 14:12:07 +0300 Marius Vlad * gst-libs/gst/wayland/meson.build: gst-libs/gst/wayland: Install "unstable" wayland header Context creation and retrieval is required, the symbols are exported with the header missing. Users most likely define GST_USE_UNSTABLE_API so they're aware of the implications of using a header that might change between releases. Signed-off-by: Marius Vlad Part-of: 2020-12-03 14:12:06 +0100 Edward Hervey * ext/hls/gsthlsdemux.c: hlsdemux: Use actual object for logging i.e. the pad of the stream Part-of: 2020-12-03 06:55:00 -0500 Arun Raghavan * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurltlssink.c: curl: Remove incorrect GST_DEBUG_OBJECT() calls klass is not a GstObject, and these debugs print should likely not be around anyway. Part-of: 2020-11-25 17:59:54 +0100 Edward Hervey * sys/nvcodec/gstcudanvrtc.c: cuda: Fix lowest targetted architecture for CUDA >= 11.0 Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1469 Part-of: 2020-11-05 13:48:27 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: tsparse: Forward incoming timestamps Ensure we properly forward the upstream PTS/DTS on the regular and program source pads. All packets being processed will carry over the latest PTS/DTS (as a reconstructed GstBuffer). Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1419 And properly forward PTS/DTS for program pads (which wasn't the case before) Original patch by Vivia Nikolaidou Part-of: 2020-12-02 09:39:45 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't log with non-GObject objects Instead of using the streams, log with the pad of the streams. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1457 Part-of: 2020-11-20 11:29:46 -0300 Thibault Saunier * gst/transcode/gsttranscodebin.c: * tools/gst-transcoder.c: transcodebin: Minor error message enhancement 2020-11-19 22:56:46 -0300 Thibault Saunier * gst/transcode/gsttranscodebin.c: transcodebin: Unlock while setting decodebin caps Otherwise it will deadlock recursing up to notify parent object property changes 2020-11-19 18:31:34 -0300 Thibault Saunier * gst/transcode/gsttranscodebin.c: transcodebin: Avoid plugin converter if filter handles ANY caps For example identity or clocksync or this kind of elements can be used with any data flow and we should not enforce decoding to row in that case. 2020-11-19 18:39:33 -0300 Thibault Saunier * gst/transcode/gsttranscodebin.c: transcodebin: Add filter as soon as it is set Instead of waiting so that we can simply use a clocksync element as filter, otherwise we won't know the pipeline is live as it won't return NO_PREROLL as one would expect in that case. Adding it right away shouldn't create any issue, both ways are fine. 2020-11-19 18:29:15 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/transcode/gsturitranscodebin.c: uritranscodebin: Add `setup-source` and `element-setup` signals The same way as playbinX does it as it is often quite useful 2020-11-19 17:55:10 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/transcode/gsttranscodebin.c: * gst/transcode/gsturitranscodebin.c: transcode: Port to encodebin2 This allows supporting muxing sinks like hlssink2 or splitmux 2020-11-19 17:55:10 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Handle the case where several errors are posted There were cases where the loop was already destroyed when we were receiving the following message. 2020-11-19 17:54:28 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Minor refactoring to output better debug logs 2020-11-19 17:51:56 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/hls/gsthlssink2.c: hlssink2: Mark as Muxer The way it is usable by encodebin2. This is what splitmux does already. 2020-11-30 17:12:14 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: va: decoder: Picture dups only holds GstBuffer Also removes the warning log message at destroying buffers when picture free() Part-of: 2020-11-30 15:01:01 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Remove gst_va_decoder_destroy_buffers() Since GstVaDecodePicture is destroyed completely with its free() function and it's used as destroy notify by codecs picture, there's no need to call gst_va_decoder_destroy_buffers() externally, since the codecs base classes destroy the codec picture when it's required. Part-of: 2020-11-26 14:04:31 +0800 He Junyan * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: * sys/va/gstvah265dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp9dec.c: va: Destroy picture unreleased buffers when finalize. The current way of GstVaDecodePicture's finalize will leak some resource such as parameter buffers and slice data. The current way deliberately leaves these resource releasing logic to va decoder related function and trigger a warning if we free the GstVaDecodePicture without releasing these resources. But in practice, sometimes, you do not have the chance to release these resource before picture is freed. For example, H264/Mpeg2 support multi slice NALs/Packets for one frame. It is possible that we already succeed to parse and generate the first several slices data by _decode_slice(), but then we get a wrong slice NAL/packet and fail to parse it. We decide to discard the whole frame in the decoder's base class, it just free the current picture and does not trigger sub class's function again. In this kind of cases, we do not have the chance to cleanup the resource, and the resource will be leaked. Part-of: 2020-11-21 19:00:02 -0300 Thibault Saunier * ext/qroverlay/gstbaseqroverlay.c: * ext/qroverlay/gstbaseqroverlay.h: * ext/qroverlay/gstdebugqroverlay.c: * ext/qroverlay/gstqroverlay.c: qroverlay: Reuse the same OverlayComposition object when possible Part-of: 2020-11-20 11:28:25 -0300 Thibault Saunier * ext/qroverlay/gstbaseqroverlay.c: * ext/qroverlay/gstbaseqroverlay.h: * ext/qroverlay/gstdebugqroverlay.c: * ext/qroverlay/gstqroverlay.c: qroverlay: Rework basing it on overlaycomposition The base class is now a bin which wraps the `overlaycomposition` element and implements the `draw` signal. This way we support all the video formats the GstVideoOverlayComposition API supports and the blending code can be reused. It is also possible to have the blending happen in the sinks now. Part-of: 2020-11-26 05:55:29 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: d3d11h264dec: Reconfigure decoder object on DPB size change Even if resolution and/or bitdepth is not updated, required DPB size can be changed per SPS update and it could be even larger than previously configured size of DPB. If so, we need to reconfigure DPB d3d11 texture pool again. Part-of: 2020-11-25 17:52:42 +0100 Marijn Suijten * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/inter/gstinteraudiosrc.c: audio: Use new AudioFormatInfo::fill_silence function The function is renamed to be properly associated with AudioFormatInfo (its instance) instead of AudioFormat (an unrelated enum), see [1] for the rename itself. [1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/940 2020-11-05 17:14:22 +0000 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: Fix get_current_subtitle_track annotation As the info returned is a new object, the annotation should be transfer-full, similarly to the get_current_{audio,video}_track() implementations. Part-of: 2020-11-23 20:44:27 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: add a memory pool object helper Since both allocators use a memory pool, with its mutex and cond, this patch refactors it into a single internal object, implementing a generic GstMemory pool. Part-of: 2020-11-17 14:53:05 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvapool.c: va: pool, allocator: honor GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT In order to honor GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT in VA pool, allocators' wait_for_memory() has to be decoupled from their prepare_buffer() so it could be called in pools' acquire_buffer() if the flag is not set. wait_for_memory() functions are blocking so the received memories are assigned to the fist requested buffer, if multithreaded calls. For this a new mutex were added. Part-of: 2020-11-17 13:18:37 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvapool.c: va: allocator: broadcast when flushing This patch handles when the bufferpool request a new buffer while flushing. Also fixes the usage of g_cond_wait(), which demands to be used inside a loop to avoid spurious wakeups. Part-of: 2020-11-17 13:17:03 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: free allocator when a mem is held An application, using for example appsink, can hold buffers from any va allocator after setting the pipeline to NULL. We need to destroy the allocator when that memory is unrefed. This patch juggles a bit with the allocator reference count in memories in order to achieve this: 1. When memory is created no alloc ref is modified 2. When memory is released, alloc ref is decreased 3. When memory is reassiged to a buffer, alloc ref is increased 4. When memory is flushed, alloc ref is increased becase it is going to be decreased in gst_memory_unref() Also this patch moves the deallocation of member variables to finalize() rather than dispose() Part-of: 2020-11-23 17:01:52 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: dmabuf: initialize cond Part-of: 2020-11-20 17:32:44 -0500 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcstats.c: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: webrtc: Make ssrc map into separate data structures They now contain a weak reference and that could be freed later causing strange crashes as GWeakRef are not movable. Part-of: 2020-10-15 21:23:08 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Get the remote-inbound stats from the right RTPSource This also means that we need to get the clock-rate from the codec instead of from the RTPSource, as the remote one doesn't include a clock rate. Part-of: 2020-10-15 19:36:45 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcstats.c: * ext/webrtc/gstwebrtcstats.h: webrtcbin: Implement getting stats for a specific pad Part-of: 2020-10-10 18:21:19 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Also return the raw rtpsource stats for more information Part-of: 2020-10-09 20:59:58 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Avoid copy of GstStructure Instead transfer the ownership to the new structure Part-of: 2020-10-09 20:45:10 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Remove receiver side when sending Those are just invalid and just reflect what we sent. We'd need to parse the RTCP XR packets from the other side to know more about those. Part-of: 2020-10-09 20:27:40 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Extract statistics from the rtpjitterbuffer And expose them as standardised webrtc statistics Part-of: 2020-10-09 18:45:57 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: webrtcbin: Store the rtpjitterbuffer instances to extract stats from them Store them as web refs to avoid having to worry about freeing later and because the new-jitterbuffer is on a different thread Part-of: 2020-10-09 19:59:18 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Document all RTP missing fields according to the latest spec Just document all the missing fields and document which ones will never be implemented because they depend on the codec or depayloader Part-of: 2020-10-09 19:38:15 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: RTCP computed RTT is only available at sender The receiver doesn't have the information to compute it. Part-of: 2020-10-08 17:11:30 -0400 Olivier Crête * ext/webrtc/gstwebrtcstats.c: webrtcstats: Remove redundant lines Part-of: 2020-11-04 17:06:02 -0500 Olivier Crête * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: webrtc: Also remove rtcp_transport from the structure Part-of: 2020-11-02 19:55:46 -0500 Olivier Crête * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: webrtc: Remove APIs to set transport on sender/receiver They're not not used ever. Part-of: 2020-11-02 19:49:55 -0500 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/nicetransport.c: * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/webrtctransceiver.c: * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: webrtc: Remove non rtcp-mux code RTCP mux is now always required by the WebRTC spec Part-of: 2020-11-20 15:01:03 +0000 Julian Bouzas * sys/nvcodec/gstnvdec.c: nvcodec: Assume 25fps if framerate is invalid when calculating latency Part-of: 2020-11-20 22:26:14 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: fix memory leak gst_h264_dbp_get_picture_all() returns a full transfer of the GArray, which needs be unrefed. But it is not unrefed in gst_h264_decoder_find_first_field_picture() leaking it. Part-of: 2020-11-20 16:07:36 +0100 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegts: Documentation fixes gtk-doc was complaining :) Part-of: 2020-11-20 13:24:24 +0000 Tim-Philipp Müller * ext/qroverlay/gstdebugqroverlay.c: * ext/qroverlay/gstdebugqroverlay.h: * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: qroverlay: unset executable flag on source files Part-of: 2020-11-20 13:22:48 +0000 Tim-Philipp Müller * ext/qroverlay/meson.build: qroverlay: fix auto detection of json-glib for plugin Only want to check for json-glib when libqrencode was found, but also it shouldn't be required but depend on the option. Fixes #1465 Part-of: 2020-11-19 21:15:25 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11memory.c: * tests/check/elements/d3d11colorconvert.c: d3d11: Add support for packed 4:2:2 and 4:4:4 10bits formats Add support for Y210 and Y410 formats which are commonly used format for en/decoders on Windows. Note that those formats cannot be used for render target (output) of shader. Part-of: 2020-10-02 18:47:16 -0400 Olivier Crête * docs/plugins/gst_plugins_cache.json: * ext/openh264/gstopenh264dec.cpp: openh264dec: Accept constrained-high and progressive-high profiles They're just subsets of the high profile. Part-of: 2020-10-02 18:47:06 -0400 Olivier Crête * sys/d3d11/gstd3d11h264dec.c: d3d11h264dec: Accept constrained-high and progressive-high profiles They're just subsets of the high profile. Part-of: 2020-10-02 18:46:56 -0400 Olivier Crête * sys/msdk/gstmsdkh264dec.c: msdkh264dec: Accept constrained-high and progressive-high profiles They're just subsets of the high profile. Part-of: 2020-09-22 15:42:37 -0400 Olivier Crête * docs/plugins/gst_plugins_cache.json: * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvh264dec.c: nvdec: Accept progressive-high and contrained-high profiles They're subsets of the high profiles with no interlacing and no B-frames for constrained Part-of: 2020-09-28 13:33:00 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: add the set_operating_point() API. The av1 can support multi layers when scalability is enabled. We need an API to set the operating point and filter the OBUs just belonging to some layers(the layers are specified by the operating point). Part-of: 2020-10-09 16:13:28 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: Add an API to reset the annex_b state only. In practice, we encounter streams that have one or more temporal units error. When that kind of error temporal units is in annex b format, the whole temporal unit should be discarded. But the temporal units before it are correct and can be used. More important, because of the error temporal unit, the parser is in a wrong state and all later temporal unit are also parsed uncorrectly. We need to add this API to reset the annex_b state only when we meet some temporal unit error. Part-of: 2020-10-09 16:01:35 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: clean the seen_frame_header in parse_tile_group(). The current seen_frame_header is not cleaned correctly. According to the spec, it should be cleaned when tiles are parsed completely. Also delete a verbose seen_frame_header init in reset_state(). Part-of: 2020-09-29 13:15:37 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: fix a typo in parse_metadata_scalability Part-of: 2020-09-28 18:22:08 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: Do not assert in identify_one_obu when check annex b size. Some buggy stream just writes the wrong temporal unit and frame size in the stream. We should return failure rather than assert to abort. Part-of: 2020-09-22 19:16:30 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: Add unknow AV1 profile define for saint check. Part-of: 2020-07-24 14:54:37 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: Improve the parse_tile_info. 1. store more tile info when parse tile group. The column, row, tile offset and tile data size are all useful for decoder process, especially for HW kind decoder such as VAAPI dec. Also fix the tile group skip size for each tile data. 2. No min_inner_tile_width requirement in newest spec. 3. Calculate the sbs of each tile for both uniform tile and non-uniformi tile. Part-of: 2020-07-28 17:25:44 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: Fix a tile info read typo in frame header. Part-of: 2020-08-25 19:44:48 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: Fix a typo when get value of segmentation params. Part-of: 2020-08-25 16:33:26 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: add valid check for global motion params. The global motion params and its matrix values need to be verified before we use them. If it is invalid, we should notify the decoder that it should not be used. Part-of: 2020-08-25 15:25:56 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: uint8 range is not enough for av1_bitstreamfn_ns Part-of: 2020-08-25 15:25:06 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: delete duplicated GST_AV1_GM_ABS_ALPHA_BITS define. Part-of: 2020-08-27 21:33:14 +0800 He Junyan * tests/check/libs/av1parser.c: test: av1parser: update the test result because of bug fixing. Part-of: 2020-08-24 15:29:56 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: Improve the loop filter setting. 1. loop_filter_ref_deltas should be int because it needs to compare with 0. 2. Move the loop filter init logic to setup_past_independence() and load_previous(), which make it more precise with the spec. Part-of: 2020-08-14 14:40:49 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: Fix a error report for metadata obu. The metadata OBUs, for example, ITUT_T35 has an undefined payload such as itu_t_t35_payload_bytes field in AV1 spec, which may cause the failure of parsing the trailings bits. We can give a warning and ignore this kind of errors. Part-of: 2020-07-28 15:06:04 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: codecparsers: av1: Fix a level index bug in sequence. Part-of: 2020-07-24 12:49:10 +0800 He Junyan * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: codecparsers: av1: all ref idx should be gint8. All the ref index need to compare with 0 in reference index decision algorithm. We also need to init them to -1. Part-of: 2020-11-14 18:48:05 +0900 Seungha Yang * sys/va/gstvah264dec.c: va: h264dec: Add support for interlaced stream Part-of: 2020-11-16 16:29:04 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: implement gst_va_h264_dec_new_field_picture() Part-of: 2020-11-14 20:46:30 +0900 Seungha Yang * sys/va/gstvah264dec.c: va: h264dec: Fix picture_height_in_mbs_minus1 Fix for interlaced stream (when sps->frame_mbs_only_flag is equal to one) Part-of: 2020-11-16 16:29:46 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: admit baseline if stream obeys A.2 Part-of: 2020-11-15 00:20:54 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264decoder: Add support for field ref picture list modification Part-of: 2020-11-17 18:39:56 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: * sys/va/gstvah264dec.c: codecs: h264decoder: Add more option arguments for reference picture getter In case that "pic_order_cnt_type" is equal to zero, ref picture list for B slice should not include non-existing picture as per spec 8.2.4.2.3. And, the second field is not needed for the process of frame picture reference list construction since it needs to be frame unit, not field picture in that case. Part-of: 2020-11-17 18:59:35 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Split gap picture as well if needed field pair pictures might be required for reference list depending on context. Part-of: 2020-11-05 18:09:06 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: h264dec: Fix POC calculation for type 0 This is mostly for future use as it only fixes the caclulation for interlaced cases, the case of frame seemed correct already. Part-of: 2020-11-17 03:11:46 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Don't try to construct RefPicList0 and RefPicList1 if not required We were trying to construct reference picture list even for I slice before this commit. Reference list is required only for P, SP and B slices. Also, if all existing reference pictures are gap pictures, we don't need to construct lists. Part-of: 2020-11-03 01:59:46 +0800 He Junyan * sys/va/gstvapool.c: va: pool: Check the force_videometa for all memory types. force_videometa should mean that the buffer must use video meta to map correctly. When the stride or the offset of the alloc_info is different from the src caps, the downstream must use video meta. So this flag should not link with the RAW caps only. All kinds of caps(memory:VAMemory, memory:DMABuf) should have this flag. Part-of: 2020-11-17 00:18:22 +0800 He Junyan * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: va: basedec: Improve the decide_allocation(). In decide_allocation(), we now just use the other_pool for frames copy when the src caps is raw. This can make the logic a little clear. There is no need for us to check the alignment and video meta again. Part-of: 2020-11-16 23:53:39 +0800 He Junyan * sys/va/gstvabasedec.c: va: basedec: fallback to system memory if downstream caps is any. When the downstream element reports an ANY caps, and it also fails to support VideoMeta, we should fallback to the system memory. Note: the basetransform kind elements never return valid allocation query before set_caps(). So, if a basetransform return an ANY sink caps, we always fallback to system memory for it. Part-of: 2020-11-16 04:38:28 +0900 Seungha Yang * sys/va/gstvah264dec.c: vah264dec: Fix for long term reference picture signalling Allocate a GArray which is used to fill VAPictureParameterBufferH264.ReferenceFrames (called per frame), instead of alloc/free per frame. Also this commit is to fix the condition where long-term reference picture is needed for VAPictureParameterBufferH264.ReferenceFrames entry. Part-of: 2020-11-15 03:41:27 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Fix MMCO type 1 for interlaced stream If field_pic_flag of current picture is equal to zero, both field of reference field pair should be marked as "unused for reference" Part-of: 2020-11-15 02:59:24 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Fix MMCO type 3 for interlaced stream Depending on short-ref picture corresponding to picNumX value, there's a condition that only one field should be updated to be non-reference picture. Part-of: 2020-11-15 00:55:09 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Split frame picture into field pictures if needed In case of interlaced stream, frame pictures need to be splitted into field for reference marking process. Part-of: 2020-11-16 00:27:28 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264decoder: Add util macro for frame/field picture identification Add a macro to check whether given GstH264Picture is for frame or field decoding. Part-of: 2020-11-16 20:44:06 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Prefer full color range for display target colorspace We don't need to preserve input color range for transformed target color space. Also some GPUs doesn't seem to be happy with 16-235 color range for RGB color space. Also, since our default display target color space is DXGI_COLOR_SPACE_RGB_FULL_G22_NONE_P709, choosing full color range would make more sense. Part-of: 2020-08-15 02:02:44 +1000 Jan Schmidt * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: wpe: Don't crash when running on X11. Don't assume the available EGL display is a wayland display - instead, check the the GStreamer GL context is EGL, and then use gst_gl_display_egl_from_gl_display to create a GstGLDisplayEGL from that, which also adds refcounting around the underlying EGLDisplay. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1385 Part-of: 2020-11-13 20:25:36 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: dmabuf: log unknown surface format It is possible that surface format is not assigned, keeping its default GStreamer value: unknown, but gst_video_format_to_string() doesn't print unknown format, so this patch does it manually. Part-of: 2020-11-13 20:20:47 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: dmabuf: destroy VASurface if no pooled buffer When gst_va_dmabuf_allocator_setup_buffer_full() receives info (not NULL) it is supposed that this buffer is not part of the allocator pool, so it has to be de-allocated as soon it is freed. This patch sets the destroy notify of the assigned GstVaBufferSurface if info is not NULL. Part-of: 2020-11-14 03:20:19 +0900 Seungha Yang * sys/va/gstvah264dec.c: vah264dec: Allow missing reference picture baseclass might provide reference picture list with null picture. Ensure picture before filling picture information. Part-of: 2020-11-14 03:16:07 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Don't give up to decode due to missing reference picture Missing reference picture is very common thing for broken/malformed stream. Decoder should be able to keep decoding if it's not a very critical error. Part-of: 2020-11-13 17:50:03 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: Fix off by one error Turns out timestamps of zero are valid :) Fixes issues with streams where the PTS/DTS would be equal to the first PCR. Part-of: 2020-11-06 02:45:21 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11h264dec: Add support for interlaced stream Add support for interlaced stream. Part-of: 2020-11-10 01:28:03 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264decoder: Add support for interlaced stream Initial support for interlaced stream. Subclass should implement new_field_picture() vfunc. Otherwise, baseclass will assume that subclass doesn't support interlaced stream. Restrictions: * Reference picture modification process for interlaced stream is not implemented yet * PAFF (Picture Adaptive Frame Field) is not properly implemented. * Field display ordering (e.g., top-field-first) decision should be enhanced via picture timing SEI parsing * Gap in field picture should be handled Part-of: 2020-11-05 04:16:54 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264decoder: Rename DPB methods Clarify wheter it's for picture(field) or frame in order to support interlaced stream, because DPB size is frame unit, not picture in case of interlaced stream. Part-of: 2020-11-05 03:47:35 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264decoder: Remove interlaced stream related constraints ... and add new_field_picture() vfunc so that ensure interlaced decoding support by subclass. The method will be used later with interlaced stream support. Part-of: 2020-11-12 23:49:01 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264decoder: Move to inline GstH264DecoderClass documentation Don't duplicate documentation for class vfunc. Hotdoc doesn't seem to be happy with duplicated documentation. Part-of: 2020-11-06 01:45:36 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: * sys/d3d11/gstd3d11h264dec.c: * sys/nvcodec/gstnvh264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/va/gstvah264dec.c: codecs: h264decoder: Store reference picture type using enum value Managing reference picture type by using two variables (ref and long_term) seems to be redundant and that can be represented by using a single enum value. This is to sync this implementation with gstreamer-vaapi so that make comparison between this and gstreamer-vaapi easier and also in order to minimize the change required for subclass to be able to support interlaced. Part-of: 2020-11-11 01:56:52 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Minor documentation fix Part-of: 2020-11-13 23:18:20 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Remove DPB size related spammy debug message It's not informative at all if SPS wasn't updated. Also we are printing DPB size related debug message in another place already. Part-of: 2020-11-12 22:27:08 +0100 Mathieu Duponchelle * gst/videoparsers/gsth264parse.c: h264parse: try harder to update timecode NumClockTS is the maximum number of timecodes the pic_timing SEI can carry, but it is perfectly OK for it to carry fewer, and have one of the clock_timestamp_flags set to 0. Part-of: 2020-11-12 22:32:00 +0100 Mathieu Duponchelle * gst/videoparsers/gsth264parse.c: h264parse: fix installing of update-timecode property Simply fixes a typo that did not have any adverse effect, and avoid hardcoding initializer Part-of: 2020-11-12 19:43:22 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Don't fill gap picture if it's not allowed We should fill gap picture only if sps->gaps_in_frame_num_value_allowed_flag is set. Part-of: 2020-04-16 10:06:29 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: openjpegenc: store stripe offset when encoding image The decoder can simply read this offset after decoding to know where to blit the stripe to the full frame Part-of: 2020-03-24 09:15:30 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/meson.build: openjpegenc: take subsampling into account when calculating stripe height We calculate minimum of (stripe height * sub sampling) across all components to ensure that all component dimensions are consistent with sub-sampling. The last stripe for each component is simply the remaining height. limit wavelet resolutions for "thin" stripes Part-of: 2020-03-12 13:41:40 +0100 Stéphane Cerveau * ext/openjpeg/gstopenjpegenc.c: openjpegenc: fix memory leak from mstream Part-of: 2020-01-13 14:00:38 -0500 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: openjpegenc: fail negotation in handle_frame if alignment mismatch If encoder is in stripe mode, then downstream must also support stripe Part-of: 2020-11-12 21:46:59 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp9dec.c: nvcodec: Fix various typo Not sure where the DECOCER came from Part-of: 2020-11-12 13:33:26 +0100 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: * sys/va/gstvapool.c: va: comments to explain code There are a couple part where code seems, at least to me, a bit oscure or confusing. So let's better add an explanation. Part-of: 2020-11-10 14:48:28 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't calculate bitrate for header/index fragments They are generally substantially smaller than regular fragments, and therefore we end up pushing totally wrong bitrates downstream. Fixes erratic buffering issues with DASH introduced by 66f5e874352016e29f555e3ce693b23474e476db Part-of: 2020-11-09 11:41:10 +0100 Edward Hervey * ext/dash/gstdashdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Store QoS values on the element Storing it per-stream requires taking the manifest lock which can apparenly be hold for aeons. And since the QoS event comes from the video rendering thread we *really* do not want to do that. Storing it as-is in the element is fine, the important part is knowing the earliest time downstream. Part-of: 2020-11-10 14:48:28 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't calculate bitrate for header/index fragments They are generally substantially smaller than regular fragments, and therefore we end up pushing totally wrong bitrates downstream. Fixes erratic buffering issues with DASH introduced by 66f5e874352016e29f555e3ce693b23474e476db Part-of: 2020-11-11 18:07:57 +0100 Edward Hervey * ext/hls/gsthlsdemux.c: hlsdemux: Don't double-free variant streams on errors If an error happened switching to a new variant, we switch back to the previous one ... except it will be unreffed when settin git. In order to avoid such issues, keep a reference to the old variant until we're sure we don't need it anymore Fixes cases of double-free on variants and its contents Part-of: 2020-11-12 00:42:59 +0800 He Junyan * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp8decoder.h: codecs: vp8decoder: Fix two typo of struct name. Part-of: 2020-10-27 19:53:44 +0530 Sanchayan Maity * sys/bluez/gsta2dpsink.c: gsta2dpsink: Fix GstPad leak The sinkpad returned by a call to gst_element_get_static_pad needs to be unrefed. Part-of: 2020-09-30 17:12:04 +0530 Arun Raghavan * docs/plugins/gst_plugins_cache.json: * sys/bluez/gsta2dpsink.c: bluez: a2dpsink: Add support for LDAC to a2dpsink Part-of: 2020-09-30 13:28:08 +0530 Arun Raghavan * docs/plugins/gst_plugins_cache.json: * sys/bluez/a2dp-codecs.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtputil.c: bluez: avdtpsink: Add support for LDAC to avdtpsink Part-of: 2020-09-18 17:35:24 +0530 Sanchayan Maity * ext/ldac/gstldacenc.c: * ext/ldac/gstldacenc.h: * ext/ldac/ldac-plugin.c: * ext/ldac/meson.build: * ext/meson.build: * meson_options.txt: ext: Add LDAC encoder LDAC is an audio coding technology developed by Sony that enables the transmission of High-Resolution (Hi-Res) audio contents over Bluetooth. Currently Adaptive Bit Rate (ABR) as supported by libldac encoder is not implemented. Part-of: 2020-11-11 18:21:25 +0900 Seungha Yang * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Set duration on seeking query if possible Set duration on seeking query in the same way as duration query handler. Otherwise application might get confused as if the duration is unknown. Part-of: 2020-11-11 13:39:37 +0200 Raul Tambre * ext/webrtc/meson.build: webrtc: Update libnice version requirement to 0.1.17 Since !1366 nice_agent_get_sockets() is used, which requires 0.1.17. Update the version requirement accordingly. Fixes #1459. Part-of: 2020-11-03 17:48:02 +0100 Edward Hervey * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Re-use streams if possible When switching variants, try to re-use existing streams/pads instead of creating new ones. When dealing with urisourcebin and decodebin3 this is not only the expected way but also avoids a lot of buffering/hang issues. Part-of: 2020-11-04 10:36:21 +0100 Edward Hervey * ext/hls/m3u8.c: * ext/hls/m3u8.h: m3u8: Make a debug function usable elsewhere The rest of the code might want to use this Part-of: 2020-07-12 00:18:38 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/qroverlay/gstdebugqroverlay.c: qroverlay: Generate documentation Part-of: 2020-07-12 00:03:04 -0400 Thibault Saunier * ext/qroverlay/gstdebugqroverlay.c: * ext/qroverlay/gstdebugqroverlay.h: * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: * ext/qroverlay/meson.build: qroverlay: Add a qroverlay element that allows overlaying any data This moves `gstqroverlay.c` to `gstdebugqroverlay.c` and implements a simple `gstqroverlay` element. Part-of: 2020-07-11 23:43:01 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: qroverlay: Rename qroverlay to debugqroverlay The element is specially focus on debugging purposes and not a generique QR overlay Part-of: 2020-07-11 23:36:03 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: * ext/qroverlay/meson.build: qroverlay: Factor out qroverlay logic to a base class Part-of: 2020-07-11 23:35:55 -0400 Thibault Saunier * ext/qroverlay/gstbaseqroverlay.c: * ext/qroverlay/gstbaseqroverlay.h: qroverlay: Factor out qroverlay logic to a base class Part-of: 2020-07-11 23:06:16 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: qroverlay: Make subclassable Part-of: 2020-07-11 20:42:51 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: * ext/qroverlay/meson.build: qroverlay: Port to VideoFilter Part-of: 2020-07-11 15:04:57 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: qroverlay: Make default pizel-size 3 Otherwise zbar isn't able to read the produced qrcodes Part-of: 2020-07-09 14:14:45 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: * ext/qroverlay/meson.build: qroverlay: Cleanup the way we build the json using json-glib And reindent the .h file removing tabs Part-of: 2020-07-09 13:05:20 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: qroverlay: Fix copyright Part-of: 2020-07-09 12:51:23 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: qroverlay: Fix some warnings Part-of: 2020-07-09 12:49:51 -0400 Thibault Saunier * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: qroverlay: Minor renaming and documentation fixes Matching usual namings Part-of: 2020-07-09 12:37:55 -0400 Thibault Saunier * ext/meson.build: * ext/qroverlay/gstqroverlay.c: * ext/qroverlay/gstqroverlay.h: * ext/qroverlay/meson.build: * meson_options.txt: qroverlay: Import from gst-qroverlay Part-of: 2020-10-30 23:22:01 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvvp9dec.c: * sys/nvcodec/gstnvvp9dec.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Add VP9 stateless decoder element Part-of: 2020-10-30 21:20:57 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvvp8dec.c: nvcodec: nvdecoder: Move to refcount based GstNvDecoderFrame This refcount based way would be helpful for sharing nvdec frame among multiple codec pictures and later zero-copy use case. Part-of: 2020-10-30 23:38:15 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.h: nvcodec: nvdecoder: Get rid of G_GNUC_INTERNAL default is visibility=hidden. Don't need to use G_GNUC_INTERNAL for new code therefore. Part-of: 2020-10-30 20:37:44 +0900 Seungha Yang * sys/nvcodec/gstnvvp8dec.c: * sys/nvcodec/gstnvvp8dec.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Add VP8 stateless decoder element Like other nvcodec stateless decoders, the rank of this new nvvp8sldec element will be secondary for now. Part-of: 2020-10-30 23:26:49 +0900 Seungha Yang * sys/nvcodec/plugin.c: nvcodec: nvsldec: Fix typo in debug message Part-of: 2020-11-09 18:27:14 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Handle PCR issues with adaptive streams A lot of content producers out there targetting "adaptive streaming" are riddled with non-compliant PCR streams (essentially all the players out there just use PTS/DTS and don't care about the PCR). In order to gracefully cope with these, we detect them appropriately and any small (< 15s) PCR resets get gracefully ignored. Part-of: 2020-10-30 14:07:02 +0000 Julian Bouzas * sys/nvcodec/gstcudautils.c: nvcodec: leave g_once_init when all quarks are initialized Part-of: 2020-11-09 23:22:09 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Fix missing drain handling in bumping Should've included in the commit 5527cc4a2e7ce8eeee1d8a717f99252477d6015f Part-of: 2020-11-09 23:04:32 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Try reference picture marking process in any case ... even if there is some invalid conditions (because of broken stream, our implementation fault or so). Otherwise baseclass will keep such reference pictures and it would result to DPB full. Part-of: 2020-11-09 11:44:36 +0100 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Properly handle extended descriptors By checking the extended tag. Provides a bit more information (if extended tag is known) Part-of: 2020-11-08 19:08:25 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: d3d11h264dec: Fix for MbaffFrameFlag and FrameNumList As per spec 7.4.3 Slice header semantics, the flag value is derived as MbaffFrameFlag = (mb_adaptive_frame_field_flag && !field_pic_flag) and DXVA uses the value. Regarding FrameNumList, in case of long-term ref, FrameNumList[i] value should be long_term_frame_idx not long_term_pic_num. Part-of: 2020-11-05 19:30:35 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Reset frame number per MMCO type 5 It should be cleared so that avoid wrong frame gap detection for following pictures. Passing 4 more conformance bitstream tests * MR2_TANDBERG_E * MR3_TANDBERG_B * MR4_TANDBERG_C * MR5_TANDBERG_C Part-of: 2020-11-05 18:42:37 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264decoder: Fix for MMCO type 2 As per 8.2.5.4.2, we should mark a picture which has LongTermPicNum == long_term_pic_num as "unused for reference", not pic_num. Passing conformance bitstream test with MR2_MW_A Part-of: 2020-11-05 18:27:11 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: codecs: h264picture: Add more trace log Part-of: 2020-11-05 13:30:49 +0000 Jason Pereira * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: decklink: correct framerate 2KDCI 23.98 Part-of: 2020-11-05 09:11:03 +0100 Rafostar <40623528+Rafostar@users.noreply.github.com> * gst-libs/gst/player/gstplayer.c: doc: player: mention that get_pipeline method needs unref All other methods in docs clearly mention that an unref is needed, so should `get_pipeline()`. #1450 Part-of: 2020-11-05 09:01:47 +0100 Rafostar <40623528+Rafostar@users.noreply.github.com> * gst-libs/gst/player/gstplayer.c: player: call ref_sink on pipeline Otherwise `gst_player_get_pipeline()` will return a floating reference which may confuse bindings and lead to crash. Fixes #1450 Part-of: 2020-11-04 18:43:41 +0530 Nirbheek Chauhan * meson.build: meson: Enable some MSVC warnings for parity with GCC/Clang This makes it easier to do development with MSVC by making it warn on common issues that GCC/Clang error out for in our CI configuration. Continuation from https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223 Part-of: 2020-10-21 09:01:31 -0400 Nicolas Dufresne * sys/va/gstvabasedec.h: * sys/va/gstvah265dec.c: * sys/va/gstvah265dec.h: * sys/va/meson.build: * sys/va/plugin.c: va: Add HEVC decoding support This add HEVC decoding support into the new VA plugin. This implementation has been tested using the ITU comformance test (through fluster). It fails all MAIN10 tests, as this is not implemented yet along with the following: CONFWIN_A_Sony_1 (looks fine, but md5sum is incorrect) PICSIZE_A_Bossen_1 (height too high) PICSIZE_B_Bossen_1 (same) VPSSPSPPS_A_MainConcept_1 (parser issue) Part-of: 2020-11-03 16:05:48 -0500 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Fix wrong warning message Part-of: 2020-11-03 11:23:15 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Remove unsued WpOffsetHalfRangeC This is only needed for VA implementation of weight tables and isn't used within the base class. Part-of: 2020-11-02 00:08:04 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264decoder: Rework for DPB management Sync with recent h265decoder DPB implementation. Part-of: 2020-11-04 18:47:30 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264decoder: Remove unused pts variable Part-of: 2020-11-03 14:12:45 +0900 youngh.lee * gst/aiff/aiffparse.c: aiffparse: Also set a channel mask for 2 channels And only do add debug output at FIXME level when using the fallback channel mask, not for those defined in the AIFF spec. Part-of: 2020-06-23 10:29:42 -0400 Olivier Crête * ext/webrtc/icestream.c: * ext/webrtc/nicetransport.c: * ext/webrtc/nicetransport.h: webrtc: Add properties to change the socket buffer sizes to ice object libnice doesn't touch the kernel buffer sizes. When dealing with RTP data, it's generally advisable to increase them to avoid dropping packets locally. This is especially important when running multiple higher bitrate streams at the same time. Part-of: 2020-11-03 02:22:23 +1100 Jan Schmidt * ext/vulkan/vkdeviceprovider.c: vkdeviceprovider: Avoid deadlock on physical device Don't hold the object lock on the vk physical device while constructing a GstVulkanDevice around it, as GstVulkanDevice can make calls on the physical device that require the object lock. Part-of: 2020-11-03 02:14:21 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265picture.c: codecs: h265picture: Minor update for coding style It's GstH265Dpb, not GstH265Decoder Part-of: 2020-11-03 01:53:15 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gsth265picture.h: codecs: h265decoder: Make GstVideoCodecFrame hold the last reference of the buffer The functionality of passing the last reference of GstH265Picture was silently dropped by the commit eeffd91109a409063e866337452eedd392649775 This commit will make it work again. Part-of: 2020-11-03 01:41:13 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Clear GstVideoCodecFrame on DPB clear if needed h265decoder might need to clear DPB depending on context even if it's not flushing case. So associated GstVideoCodecFrame needs to be released in case non-flushing case. Part-of: 2020-11-03 00:57:46 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Don't drain DPB on EOB/EOS/IDR nalu DPB bumping decision per end-of-bitstream, end-of-sequence or IDR nal should done by spec. In short, draining on EOB/EOS/IDR is undefined behavior as per spec. Part-of: 2020-11-01 18:32:56 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Complete dependent slice header This will save the last independent slice and fill in the missing information for dependent slices. This was left over during the porting from gstreamer-vaapi. The private variable prev_independent_slice was already there. Part-of: 2020-11-01 18:30:34 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Prevent possible infinite loop Theoretically, one could produce a broken stream that would lead to infinite in the specified algorithm to calculate l0/l1 reference lists. This patch will pearly exit if this condition is met. Part-of: 2020-10-22 12:38:11 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parse: Add missing const qualifier Part-of: 2020-11-02 22:47:20 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: Revert "d3d11decoder: Use D3D11/DXGI standard colorimetry" This reverts commit a52fc6deeda203add520cb59ae0026d109ecda95. The change breaks H264/HEVC conformance bitstream tests Part-of: 2020-11-02 08:46:25 +0000 Randy Li * ext/wayland/wlvideoformat.c: wlvideoformat: fix DMA format convertor In the most of case, this typo would work. But for ARGB8888 and XRGB8888, which shm format is not based on fourcc, which would never appear in format enumeration. Part-of: 2020-11-01 03:58:30 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Use D3D11/DXGI standard colorimetry D3D11/DXGI supports smaller set of colorimetry than all possible combination. This restriction would make more streams convertible by using ID3D11VideoProcessor Part-of: 2020-10-31 03:28:55 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Use ID3D11VideoProcessor only if device supports corresponding conversion ... and drop support for ID3D11VideoProcessor if device doesn't support ID3D11VideoContext1 interface and therefore we cannot query conversion supportability. Part-of: 2020-11-01 20:52:11 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: d3d11h{264,265}dec: Submit picture level parameters only once Submit PICTURE_PARAMETERS and INVERSE_QUANTIZATION_MATRIX buffers only once per picture. Multiple submission is redundant. Also this modification would fix broken hevc decoding with dependent slice. Part-of: 2020-10-31 20:36:13 +0900 Seungha Yang codecs: h265decocer: Rework for DPB management * Move all DPB bumping process into GstH265Dpb internal * Handle DPB add process in GstH265Dpb struct * Make implementation to be 1:1 mappable with hevc specification * Fix wrong DPB bumping implementation especially when no_output_of_prior_pics_flag was specified. With fixes from Nicolas Dufresne Part-of: 2020-10-31 20:31:51 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Get rid of framerate field from pad template Framerate is optional value and we don't have any framerate related restriction for those elements. This commit is to fix negotiation failure when upstream doesn't set framerate on caps. Part-of: 2020-10-31 21:46:16 +1100 Jan Schmidt * tests/check/elements/dtls.c: tests: Don't set dtlsenc state before linking. Link the dtlsenc in the testsuite before setting it to paused, as it starts a pad task that can generate a not-linked error otherwise. Part-of: 2020-10-31 01:23:36 +1100 Jan Schmidt * tests/check/elements/dtls.c: dtls: Catch bus errors and fail instead of hanging. If the DTLS elements fail, they post a bus error and don't signal any key negotiation. Catch the bus error and fail the test early instead of letting it hang and time out. Part-of: 2020-10-30 22:52:18 +1100 Jan Schmidt * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpenc.c: sctp: Do downward state change logic after chaining up. Call the parent state_change function first when changing state downward, to make sure that the element has stopped before cleaning it up. Part-of: 2020-10-30 22:49:22 +1100 Jan Schmidt * ext/dtls/gstdtlsconnection.c: dtls: Avoid bio_buffer assertion on shutdown. On shutdown, a previous iteration of dtsl_connection_process() might be incomplete and leave a partial bio_buffer behind. If the DTLS connection is already marked closed, drop out of dtls_connection_process early without asserting. Part-of: 2020-10-30 16:31:18 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: webrtc: Fix a race on shutdown. The main context can disappear in gst_webrtc_bin_enqueue_task() between checking the is_closed flag and enqueueing a source on the main context. Protect the main context with the object lock instead of the PC lock, and hold a ref briefly to make sure it stays alive. Part-of: 2020-07-08 17:24:36 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: * ext/webrtc/meson.build: * ext/webrtc/sctptransport.c: * ext/webrtc/sctptransport.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: webrtc: Set the DSCP markings based on the priority This matches how the WebRTC javascript API works and the Chrome implementation. Part-of: 2020-07-09 13:39:03 -0400 Olivier Crête * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: rtpsender: Add API to set the priority Part-of: 2020-07-09 13:42:35 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.h: rtptransceiver: Store the SSRC of the current stream Part-of: 2020-07-08 19:13:33 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Save the media kind in the transceiver Part-of: 2020-07-09 13:45:20 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Remove unused function Part-of: 2020-10-02 21:38:00 -0400 Olivier Crête * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: webrtc: Document more objects Part-of: 2020-10-31 00:37:48 +0900 Seungha Yang * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Allow 10bits only profiles HEVC_VLD_Main10 and VP9_VLD_10bit_Profile2 might not support 8bit format (i.e., NV12) depending on GPU vendor. Part-of: 2020-10-25 13:33:21 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Remove \n from debug output Part-of: 2020-10-25 13:32:26 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Correctly indent everything Part-of: 2020-10-25 13:30:55 +0200 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add a default profile id This causes no changes to the profile but keeps the existing settings. The profile can also be changed from e.g. the card's configuration application and in that case probably should be left alone. The default is the new value as it keeps the profile setting as it is, which is consistent with the previous behaviour in 1.18. Part-of: 2020-10-25 13:14:11 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Mark internal function as static Part-of: 2020-10-25 13:13:37 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Remove some dead code Part-of: 2020-10-30 10:02:32 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Update enum value bounds check in gst_decklink_get_mode() The widescreen modes moved after GST_DECKLINK_MODE_2160p60 and using them now would cause an assertion. This is a regression from 309f6187fef890c7ffa49305f38e89beac3b1423. Part-of: 2020-08-25 14:56:50 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Handle whitespace before XML declaration When ttmlparse is in, e.g., an MPEG-DASH pipeline, there may be whitespace between successive TTML documents in ttmlparse's accumulated input. As libxml2 will fail to parse documents that have whitespace before the opening XML declaration, ensure that any preceding whitespace is not passed to libxml2. Part-of: 2020-08-25 14:54:31 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Ensure only single TTML doc parsed The parser handles only one TTML file at a time, therefore if there are multiple TTML documets in the input, parse only the first. Part-of: 2020-10-29 13:43:16 -0400 Xavier Claessens * sys/androidmedia/gstamc.c: amc: Fix crash when encoding AVC gstamcvideoenc.c calls gst_amc_avc_profile_to_string() with alternatives set to NULL which causes a crash. Part-of: 2020-03-19 15:07:47 +0100 Guillaume Desmottes * ext/isac/gstisac.c: * ext/isac/gstisacdec.c: * ext/isac/gstisacdec.h: * ext/isac/gstisacenc.c: * ext/isac/gstisacenc.h: * ext/isac/gstisacutils.c: * ext/isac/gstisacutils.h: * ext/isac/meson.build: * ext/meson.build: * meson_options.txt: isac: add iSAC plugin Wrapper on the iSAC reference encoder and decoder from webrtc, see https://en.wikipedia.org/wiki/Internet_Speech_Audio_Codec Part-of: 2020-10-28 11:49:54 -0300 Thibault Saunier * gst/transcode/gsttranscodebin.c: transcodebin: Create the decodebin in _init This way user can request pads right from the beginning Part-of: 2020-10-25 18:04:05 +0000 Philippe Normand * gst/transcode/gsttranscodebin.c: transcodebin: Accept more than one stream Look-up the stream matching the given ID also after building the stream list from the received collection. Without this change the transcoder would discard the second incoming stream. Part-of: 2020-03-20 09:27:48 -0300 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/transcode/gsttranscodebin.c: * gst/transcode/gsturitranscodebin.c: transcodebin: Port to decodebin3 Part-of: 2020-03-19 09:35:57 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: * gst/transcode/gsturitranscodebin.c: uritranscodebin: Move to using a urisourcebin for our source. Part-of: 2020-03-19 09:34:54 -0300 Thibault Saunier * gst-libs/gst/transcoder/gsttranscoder.c: transcoder: Base sync transcoding variant on a GMainLoop Part-of: 2020-10-29 06:13:05 +0000 Randy Li * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: release frame callback when destroyed We would use a frame callback from the surface to indicate that last buffer is rendered, but when we destroy the surface and that callback is not back yet, it may cause the wayland event queue crash. Part-of: 2020-10-28 19:00:43 +0900 Seungha Yang * gst/rtmp2/gstrtmp2src.c: rtmp2src: Set buffer timestamp on output buffer This timestamp information would be useful for queue2 element when calculating time level and also it makes buffering decision more reliable. Part-of: 2020-10-28 00:47:49 +0900 Seungha Yang * sys/d3d11/gstd3d11videoprocessor.c: d3d11videoprocessor: Fix wrong input/output supportability check The flag argument of ID3D11VideoProcessorEnumerator::CheckVideoProcessorFormat method is output value, not input. Part-of: 2020-10-25 02:27:52 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh265dec.c: nvcodec: nvsldec: Add support for CUDA memory Add CUDA memory support. Note that zero copying is not supported yet Part-of: 2020-10-26 05:15:33 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: d3d11memory: Adjust log level for some spammy debug messages Part-of: 2020-10-26 05:11:45 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11convert: Use ID3D11VideoProcessor only if device supports colorspace Check whether conversion with given combination of input/output format and dxgi colorspace is supported or not by driver. If not, we should use shader. Part-of: 2020-10-26 05:09:40 +0900 Seungha Yang * sys/d3d11/gstd3d11videoprocessor.c: * sys/d3d11/gstd3d11videoprocessor.h: d3d11videoprocessor: Add a method for device's conversion caps check Add a wrapper method for ID3D11VideoProcessorEnumerator1::CheckVideoProcessorFormatConversion. Part-of: 2020-10-26 05:04:55 +0900 Seungha Yang * sys/d3d11/gstd3d11format.c: d3d11format: Map more colorimetry with dxgi colorspace Map more logically identical set of GstVideoColorimetry formats with dxgi color space. Part-of: 2020-10-25 23:13:46 +0800 He Junyan * sys/va/gstvapool.c: va: pool: Set the video_alignment after we get image info. The set_format() of the allocator may change the stride of the alloc_info. We should update the video_align.stride_align based on it. Or, we get a warning in gst_video_meta_validate_alignment(). Part-of: 2020-10-26 11:50:59 +0800 He Junyan * sys/va/gstvah264dec.c: va: h264dec: Set the padding to VideoAlignment's right. In our va implemenation, we just use image's info to map the buffer. The padding info just plays a role as a place holder to expand the allocation size in caps when decoding size is bigger than display size. So the padding_right or padding_left does not change the result. But we find if using padding_left, it is hard to meet the requirement of gst_video_meta_validate_alignment(), when the video meta's stride is different from the allocation width. Part-of: 2020-10-26 01:22:12 +0800 He Junyan * sys/va/gstvabasedec.c: va: basedec: No need to call base class' decide_allocation(). We have already done the jobs in gst_va_base_dec_decide_allocation() and no need to call base class' decide_allocation() again. The base class' decide_allocation() will set_format() again and let use do the image/surface testing again, which is low performance and no needed. Part-of: 2020-10-20 14:31:22 +0800 He Junyan * sys/va/gstvaallocator.c: va: allocator: use _update_image_info() to set allocator parameters. Use this standalone function to update the allocator info and make all ensure_image() and mem_alloc() API clean. We also change the default way of using image. We now set the non derive manner as the default manner, and if it fails, then fallback to the derived image manner. On a lot of platforms, the derived image does not have caches, so the read and write operations have very low performance. Part-of: 2020-10-20 14:09:35 +0800 He Junyan * sys/va/gstvaallocator.c: va: allocator: Add a helper function to update the image info. Part-of: 2020-10-19 23:32:44 +0800 He Junyan * sys/va/gstvaallocator.c: va: allocator: Decide the allocator's parameters when set_format(). Moving the parameters testing and setting from the allocator_alloc_full() to the allocator_try(). The allocator_alloc_full() will be called every time when we need to allocate a new memory. But all these parameters such as the surface and the image format, rt_format, etc, are unchanged during the whole allocator lifetime. Just setting them in set_format() is enough. Part-of: 2020-10-18 17:59:44 +0200 Nicola Murino * ext/opencv/meson.build: opencv: allow compilation against 4.5.x Part-of: 2020-03-24 09:18:28 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: sub-sampling parse should take component into account Part-of: 2020-04-21 14:16:45 +0200 Stéphane Cerveau * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: no pts interpolation with subframe. The jpeg2000parser must not interpolate PTS with subframes. Part-of: 2020-01-13 14:01:19 -0500 Aaron Boxer * docs/plugins/gst_plugins_cache.json: * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: support frame and stripe alignment in caps forward alignment and num-stripes caps properties Use caps height when setting caps for subframe We want downstream to use full frame height, not subframe height Part-of: 2020-10-25 11:46:29 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Reset skip counters when starting the sources Part-of: 2018-05-10 14:05:12 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink*src: Post a warning message on the bus about dropped frames Part-of: 2017-11-28 13:44:18 +0100 Georg Lippitsch * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink*src: Aggregate dropped frame/packet logging decklink*src currently prints a log entry for every dropped frame and audio packet. That completely spams the logs. This change aggregates information about dropped packets and only prints a message once when dropping starts, and a summary when dropping ends. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/705 Part-of: 2020-10-24 20:59:55 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11memory: Protect view object with lock Make resource allocation more thread-safe Part-of: 2020-10-24 02:47:22 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11videoprocessor.c: * sys/d3d11/gstd3d11videoprocessor.h: d3d11convert: Add support for conversion using ID3D11VideoProcessor Output texture of d3d11 decoder cannot have the bind flag D3D11_BIND_SHADER_RESOURCE (meaning that it cannot be used for shader input resource). So d3d11convert (and it's subclasses) was copying texture into another internal texture to use d3d11 shader. It's obviously overhead and we can avoid texture copy for colorspace conversion or resizing via ID3D11VideoProcessor as it supports decoder output texture. This commit would be a visible optimization for d3d11 decoder with d3d11compositor use case because we can avoid texture copy per frame. Part-of: 2020-10-24 02:33:29 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11memory: Store ID3D11VideoProcessorOutputView object Part-of: 2020-10-23 22:29:57 +0800 He Junyan * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Fix picture leaks because of reference set. The last frame's reference set has no one to cleanup. We need to clean all pictures in the stop() func. We also add a helper function to cleanup all the pictures in the reference picture set. Part-of: 2020-10-23 21:21:05 +0800 He Junyan * gst-libs/gst/codecs/gsth265decoder.c: codecs: h265decoder: Fix 3 ref array leaks in finalize. Part-of: 2020-10-23 16:59:00 +0900 Seungha Yang * sys/d3d11/gstd3d11videoprocessor.c: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/gstd3d11window.cpp: d3d11window: Reuse ID3D11VideoProcessorInputView if possible GstMemory object could be disposed if GstBuffer is not allocated by GstD3D11BufferPool such as via gst_buffer_copy() and/or gst_buffer_make_writable(). So attaching qdata on GstMemory object would cause unnecessary view alloc/free. By using view pool which is implemented in GstD3D11Allocator, we can avoid redundant view alloc/free. Part-of: 2020-10-21 16:28:11 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11memory: Implement ID3D11VideoProcessorInputView pool Similar to ID3D11VideoDecoderOutputView pool implementation Part-of: 2018-04-07 16:33:47 -0400 Xavier Claessens * gst-libs/gst/audio/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/player/meson.build: * gst-libs/gst/sctp/meson.build: * gst-libs/gst/transcoder/meson.build: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/wayland/meson.build: * gst-libs/gst/webrtc/meson.build: * meson.build: * pkgconfig/.gitignore: * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-audio.pc.in: * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-codecparsers.pc.in: * pkgconfig/gstreamer-insertbin-uninstalled.pc.in: * pkgconfig/gstreamer-insertbin.pc.in: * pkgconfig/gstreamer-mpegts-uninstalled.pc.in: * pkgconfig/gstreamer-mpegts.pc.in: * pkgconfig/gstreamer-photography-uninstalled.pc.in: * pkgconfig/gstreamer-photography.pc.in: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-player.pc.in: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-bad.pc.in: * pkgconfig/gstreamer-sctp-uninstalled.pc.in: * pkgconfig/gstreamer-sctp.pc.in: * pkgconfig/gstreamer-transcoder-uninstalled.pc.in: * pkgconfig/gstreamer-transcoder.pc.in: * pkgconfig/gstreamer-vulkan-uninstalled.pc.in: * pkgconfig/gstreamer-vulkan-wayland-uninstalled.pc.in: * pkgconfig/gstreamer-vulkan-wayland.pc.in: * pkgconfig/gstreamer-vulkan-xcb-uninstalled.pc.in: * pkgconfig/gstreamer-vulkan-xcb.pc.in: * pkgconfig/gstreamer-vulkan.pc.in: * pkgconfig/gstreamer-wayland-uninstalled.pc.in: * pkgconfig/gstreamer-wayland.pc.in: * pkgconfig/gstreamer-webrtc-uninstalled.pc.in: * pkgconfig/gstreamer-webrtc.pc.in: * pkgconfig/meson.build: Meson: Use pkg-config generator 2020-07-30 20:23:37 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * sys/d3d11/gstd3d11h265dec.c: * sys/nvcodec/gstnvh265dec.c: h265decoder: Add support for l0/l1 Add support for reference list needed for VA-API and some V4L2 decoders. Part-of: 2020-07-28 18:37:38 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gsth265picture.h: * sys/d3d11/gstd3d11h265dec.c: * sys/nvcodec/gstnvh265dec.c: h265decoder: Sync with the H264 implementation This ensures that we get the last reference to picture being outputed, avoiding GstBuffer structure copies and simplifying the buffer management. Part-of: 2020-10-20 17:31:17 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Directly access ID3D11VideoDecoderOutputView for decoding Decoder output view is stored in GstD3D11Memory object instead of wrapper struct now. So qdata is no more required. Part-of: 2020-10-20 01:59:35 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11memory: Implement ID3D11VideoDecoderOutputView pool Similar to texture-array pool, we can reuse decoder output view since the life time of output view is identical to that of texture-array. In this way, we can avoid frequent output view alloc/free. Part-of: 2020-10-04 23:39:05 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: d3d11memory: Move to GArray to store texture-array status The size D3D11_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION is 2048 which is too large in practice especially for a texture of dpb Part-of: 2020-10-12 19:20:10 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.h: * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvaprofile.c: * sys/va/gstvavp9dec.c: * sys/va/gstvavp9dec.h: * sys/va/meson.build: * sys/va/plugin.c: va: Add VP9 decoder Part-of: 2020-10-16 15:46:20 +0100 Philippe Normand * ext/wpe/gstwpesrc.cpp: wpe: Convert launch lines to markdown and move since tag Seems like the examples don't appear in the generated docs because the Since tag was badly positioned in the doc blurb. Part-of: 2020-10-16 10:35:36 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9picture.h: codecs: vp9decoder: Add segmentation to picture. VA-API needs AC and DC quant scales for both luma and chroma, and the loop filter level for current frame, but these values are not available outside the private GstVp9Parser structure. And these values may change from frame to frame, so they are picture specific. This patch add GstVp9Segmentation structure array to GstVp9Picture to expose it to derived classes. This approach is safer than passing the parser at picture handling flow. Also, this patch, in order to solve Documentation CI, mark as private the GstVp9Picture structure. Part-of: 2020-10-12 11:07:47 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * sys/d3d11/gstd3d11vp9dec.c: codecs: vp9decoder: Pass parser as new_sequence() parameter. In order to know the chroma format, besides profile, subsampling_x and subsampling_y are needed (Spec 7.2.2 Color config semantics). These values are in GstVp9Parser but not in GstVp9Framehdr. Also, bit_depth is available in parser but not frame header. Evenmore, those values are copied to picture structure later. In case of VA-API, to configure the pipeline, it is require to know the chroma format and depth. It is possible to know chroma and depth through caps coming from vp9parser, but it requires string parsing. It would be less error prone to get these values through the parser structure at new_sequence() virtual method. Part-of: 2020-09-23 16:43:30 -0400 Nicolas Dufresne * gst/rtp/gstrtpsrc.c: rtpsrc: Cleanup on BYE, timeout or when pad is reused In this patch, we enabled 'autoremove' feature of rtpbin and also call 'clear-ssrc' on the rtpssrcdemux element when a pad is being reused. This ensure that the jitterbuffer is removed and no threads accumulates. Part-of: 2020-09-04 14:18:13 +0300 George Kiagiadakis * gst/rtp/gstrtpsrc.c: rtpsrc: re-use the same src pad for streams that have the same payload type Also use payload type when naming pads, this will make it easier to identify pads and simplify the code. Fixes #1395 Part-of: 2020-06-03 01:26:12 +0900 Seungha Yang * sys/d3d11/gstd3d11compositor.c: * sys/d3d11/gstd3d11compositor.h: * sys/d3d11/gstd3d11compositorbin.c: * sys/d3d11/gstd3d11compositorbin.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Introduce d3d11compositor element Add new video composition element which is equivalent to compositor and glvideomixer elements. When d3d11 decoder elements are used, d3d11compositor can do efficient graphics memory handling (zero copying or at least copying memory on GPU memory space). Part-of: 2020-08-05 17:27:30 +0900 Seungha Yang * sys/d3d11/gstd3d11shader.c: d3d11shader: Allow drawing without shader resource view ... for the case that we are rendering on target without input texture. For example, we might want to draw arbitrary shape on render target view without shader resource view. Part-of: 2020-08-03 03:19:34 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: * sys/d3d11/plugin.c: d3d11convert: Add new subclasses for only color convert or resize New d3d11colorconvert and d3d11scale elements will perform only colorspace conversion and rescale, respectively. Those new elements would be useful when only colorspace conversion or rescale is required and the other part should be done by another elements. Part-of: 2020-08-01 20:16:52 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: d3d11colorconverter: Allow setting alpha value to use ... used for reordering case for now. In other words, non-alpha formats such as NV12 is not supported case yet. Part-of: 2020-06-03 01:20:41 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11overlaycompositor.c: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/gstd3d11window.cpp: d3d11colorconverter: Add support conversion with blending This is pre-work for d3d11compositor support Part-of: 2020-06-03 00:59:15 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: d3d11colorconverter: Add method to support updating destination rect It's equivalent to GST_VIDEO_CONVERTER_OPT_DEST_* options of GstVideoConverter Part-of: 2020-06-03 00:46:13 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11overlaycompositor.c: * sys/d3d11/gstd3d11overlaycompositor.h: * sys/d3d11/gstd3d11window.cpp: d3d11: Clarify target rect to be updated Rename internal methods to clarify which rect (i.e., input or output) should be updated Part-of: 2020-10-02 10:02:38 -0400 Julian Bouzas * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvcodec: Report latency in decoder based on max-display-delay Part-of: 2020-10-02 09:22:34 -0400 Julian Bouzas * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvcodec: Add max-display-delay decoder property Part-of: 2020-09-24 11:25:33 -0400 Julian Bouzas * sys/nvcodec/gstnvdec.c: nvcodec: Fix compiler error if OpenGL is not enabled Part-of: 2020-09-24 10:33:58 -0400 Julian Bouzas * sys/nvcodec/gstnvdecoder.c: nvcodec: Add missing CUDAMemory src caps in h264 decoder Part-of: 2020-09-23 13:49:43 -0400 Julian Bouzas * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: nvcodec: Add missing CUDAMemory sink caps in h264 and h265 encoders Part-of: 2020-09-22 13:07:19 -0400 Julian Bouzas * sys/nvcodec/gstcudadownload.c: nvcodec: Fix description of cudadownload element Part-of: 2019-08-11 15:02:04 +0900 Seungha Yang * tests/check/elements/cudaconvert.c: * tests/check/elements/cudafilter.c: * tests/check/meson.build: tests: Add CUDA filter unit tests Adding a test for buffer meta and colorspace conversion Part-of: 2019-10-16 22:43:09 +0900 Seungha Yang * sys/nvcodec/gstcudafilter.c: * sys/nvcodec/gstcudascale.c: * sys/nvcodec/gstcudascale.h: * sys/nvcodec/meson.build: nvcodec: Add CUDA video scale element Add new element for video resizing using CUDA Part-of: 2019-10-16 22:42:55 +0900 Seungha Yang * sys/nvcodec/gstcudabasefilter.c: * sys/nvcodec/gstcudabasefilter.h: * sys/nvcodec/gstcudaconvert.c: * sys/nvcodec/gstcudaconvert.h: * sys/nvcodec/gstcudafilter.c: * sys/nvcodec/gstcudafilter.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Add CUDA video convert element Add new element for colorspace conversion using CUDA. Part-of: 2019-10-16 22:42:39 +0900 Seungha Yang * sys/nvcodec/cuda-converter.c: * sys/nvcodec/cuda-converter.h: * sys/nvcodec/gstcudacontext.c: * sys/nvcodec/gstcudacontext.h: * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/meson.build: * sys/nvcodec/stub/cuda.h: nvcodec: Add generic CUDA video convert object Introducing generic video convert object similar to video-converter but using CUDA. Part-of: 2019-10-16 22:42:24 +0900 Seungha Yang * sys/nvcodec/gstcudanvrtc.c: * sys/nvcodec/gstcudanvrtc.h: * sys/nvcodec/gstnvrtcloader.c: * sys/nvcodec/gstnvrtcloader.h: * sys/nvcodec/meson.build: * sys/nvcodec/stub/nvrtc.h: nvcodec: Add support runtime CUDA kernel source compilation Add util functions for runtime CUDA kernel source compilation using NVRTC library. Like other nvcodec dependent libraries, NVRTC library will be loaded via g_module_open. Note that the NVRTC library naming is not g_module_open friendly on Windows. (i.e., nvrtc64_{CUDA major version}{CUDA minor version}.dll). So users can specify the dll name using GST_NVCODEC_NVRTC_LIBNAME environment. Part-of: 2019-10-16 22:42:06 +0900 Seungha Yang * sys/nvcodec/gstcudabasetransform.c: * sys/nvcodec/gstcudabasetransform.h: * sys/nvcodec/gstcudadownload.c: * sys/nvcodec/gstcudadownload.h: * sys/nvcodec/gstcudaupload.c: * sys/nvcodec/gstcudaupload.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Add CUDA upload/download elements with base class for CUDA filters Similar to glupload/gldownload elements but for CUDA memory. It will help transfer memory between system and nvidia GPU Part-of: 2019-10-16 22:21:05 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: nvcodec: Peer direct access support If support direct access each other, use device to device memory copy without staging host memory Part-of: 2019-08-30 17:19:44 +0900 Seungha Yang * sys/nvcodec/gstcudacontext.c: * sys/nvcodec/gstcudacontext.h: * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: cudacontext: Enable direct CUDA memory access over multiple GPUs If each device context can access each other, enable peer access for better interoperability. Part-of: 2019-08-30 13:57:15 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvenc.c: nvenc: Support CUDA buffer pool When upstream support CUDA memory (only nvdec for now), we will create CUDA buffer pool. Part-of: 2019-08-30 13:55:25 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Support CUDA buffer pool If downstream can accept CUDA memory caps feature (currently nvenc only), always CUDA memory is preferred. Part-of: 2019-08-19 18:02:56 +0900 Seungha Yang * sys/nvcodec/gstcudabufferpool.c: * sys/nvcodec/gstcudabufferpool.h: * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstcudamemory.c: * sys/nvcodec/gstcudamemory.h: * sys/nvcodec/meson.build: * sys/nvcodec/stub/cuda.h: nvcodec: Add CUDA specific memory and bufferpool Introducing CUDA buffer pool with generic CUDA memory support. Likewise GL memory, any elements which are able to access CUDA device memory directly can map this CUDA memory without upload/download overhead via the "GST_MAP_CUDA" map flag. Also usual GstMemory map/unmap is also possible with internal staging memory. For staging, CUDA Host allocated memory is used (see CuMemAllocHost API). The memory is allowing system access but has lower overhead during GPU upload/download than normal system memory. Part-of: 2020-10-16 12:29:02 +0100 Andrew Wesie * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264parser: guard against ref_pic_markings overflow Part-of: 2020-10-16 00:48:01 +0100 Tim-Philipp Müller * ext/hls/gsthlssink2.c: hlssink2: fix and flesh out docs Part-of: 2020-10-15 18:26:48 +0200 Stéphane Cerveau * ext/dash/gstxmlhelper.c: * meson.build: meson: update glib minimum version to 2.56 In order to support the symbol g_enum_to_string in various project using GStreamer ( gst-validate etc.), the glib minimum version should be 2.56.0. Remove compat code as glib requirement is now > 2.56 Version used by Ubuntu 18.04 LTS Part-of: 2020-10-12 01:04:13 +0800 He Junyan * sys/d3d11/gstd3d11vp8dec.c: d3d11: vp8dec: No need to check show_frame flag when output_picture. The VP8 base class has already handled it for us. Part-of: 2020-10-12 00:57:24 +0800 He Junyan * gst-libs/gst/codecs/gstvp8decoder.c: codecs: vp8decoder: handle the show_frame check in base class. Move the show_frame check from sub class to vp8 decoder's base class. Calling the sub class' output_picture() function only when the frame is displayed and marking the other automatically as decode only. This is done to avoid logic and code repetition in subclasses. Part-of: 2020-10-16 02:06:49 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * sys/d3d11/gstd3d11vp9dec.c: codecs: vp9decoder: handle the show_frame check in base class Same as vp8 decoder update https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1670 Part-of: 2020-10-15 12:08:19 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2codecs: vp8: Allow baseclass from skipping frames In preparation for !1670, this will allow the base class from skipping frames that should not be displayed. Previously it would complain about unordered decoding taking place in the driver. Part-of: 2020-10-15 12:05:45 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: decoder: Unmark previously pending request requests are executed in order, so while dequeuing sink buffers for previous request, also mark these request as no longer pending. This will allow reusing the request later. Part-of: 2020-10-15 11:35:04 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: decoder: Properly remove pending requests Pass the pointer instead of NULL in order to find and remove properly any pending request from the queue. This coding error was leading to use after free in error and early exit cases. Part-of: 2020-10-14 19:04:44 +0800 He Junyan * sys/va/gstvabasedec.c: va: basedec: Create the other pool anyway. Fix a bug in _create_other_pool(). The old way of checking the base->other_pool make that other_pool never be changed until the gst_va_base_dec_stop() to stop the current decoding context. But in some stream, the resolution may change during the decoding process, and we need to re-negotiate the buffer pool. Then, the old other_pool can not be clean correctly and the new correct one can not be created. Part-of: 2020-10-14 16:54:54 +0800 He Junyan * sys/va/gstvabasedec.c: va: basedec: Should unmap src frame when dst frame map failing. Part-of: 2020-10-13 15:28:24 +0800 He Junyan * sys/va/gstvapool.c: va: bufferpool: use release_buffer to clean the mem. The current bufferpool wastes all pre-allocate buffers when the buffer pool is actived. The pool->priv->size is 0 for va buffer pool. And every time, the reset_buffer() will clean all mem and make the buffer size 0, that can cache the gst_buffer in the buffer pool. But when the buffer pool is activing, the default_start() just allocate the buffer and release_buffer() immediately, all the pre allocated buffers and surfaces are destroyed because of gst_buffer_get_size (buffer) != pool->priv->size. We need to use release_buffer() to do the clean job at the pool start time. Part-of: 2020-10-04 02:02:16 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Don't enable passthrough by default SEI messages contain various information which wouldn't be conveyed by using upstream CAPS (HDR, timecode for example). Part-of: 2020-10-13 13:11:06 +0300 Vivia Nikolaidou * docs/plugins/gst_plugins_cache.json: * ext/opencv/gstcameracalibrate.cpp: cameracalibrate: Improve gst-inspect documentation Thanks to @kazz_naka on Twitter Part-of: 2020-10-07 21:13:09 +1100 Matthew Waters * ext/wpe/WPEThreadedView.cpp: * ext/wpe/gstwpesrc.cpp: wpesrc: add some debug logging around WPEView creation/destruction Part-of: 2020-10-07 21:14:55 +1100 Matthew Waters * ext/wpe/gstwpesrc.cpp: wpesrc: fix a memory leak of the bytes free the previous GBytes if load-bytes is called multiple times before view creation. Part-of: 2020-10-06 22:19:21 +1100 Matthew Waters * ext/wpe/gstwpesrc.cpp: wpesrc: only create webview if not already created e.g. _decide_allocation() can be called multiple times throughout the element's lifetime and we only want to create the view once rather than overwriting. Fixes a leak of the WPEView under certain circumstances. Part-of: 2020-10-02 12:06:59 +1000 Matthew Waters * ext/wpe/WPEThreadedView.cpp: wpe: free a previous pending image/shm buffer Don't blindly overwrite a possibly previously set buffer. Part-of: 2020-10-12 14:15:49 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtsrc.c: srtsrc: Prevent `delay` from being negative `delay` should be a GstClockTimeDiff since SRT time is int64_t. All values are in local time so we should never see a srctime that's in the future. If we do, clamp the delay to 0 and warn about it. Part-of: 2020-10-12 14:12:24 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtsrc.c: srtsrc: Don't calculate a delay if the srctime is 0 A zero srctime is a missing srctime. Apparently this can happen when ["the connection is not between SRT peers or if Timestamp-Based Packet Delivery mode (TSBPDMODE) is not enabled"][1] so it may not apply to us, but it's best to be defensive. [1]: https://github.com/Haivision/srt/blob/v1.4.2/docs/API.md#sending-and-receiving Part-of: 2020-10-12 14:09:28 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtsrc.c: srtsrc: Defend against missing clock If we don't have a clock, stop the source instead of asserting in gst_clock_get_time. This can happen when the element is removed from the pipeline while it's playing. Part-of: 2020-10-12 13:56:50 +0200 Marc Leeman * gst/rtp/gstrtpsink.h: rtpmanagerbad: remove duplicate parent declaration Part-of: 2020-10-12 11:55:46 +0100 Tim-Philipp Müller * gst/rtmp2/gstrtmp2sink.c: rtmp2sink: fix since marker on new "stop-commands" property Part-of: 2020-10-09 16:00:18 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: * sys/va/gstvah264dec.c: * sys/va/gstvavp8dec.c: va: basedec: copy frames logic to decide_allocation() Part-of: 2020-10-09 15:47:43 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: va: basedec: refactor the other video pool instantiation Just a code clean up Part-of: 2020-10-08 19:39:56 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvabasedec.c: * sys/va/gstvabasedec.h: * sys/va/gstvah264dec.c: * sys/va/gstvavp8dec.c: * sys/va/meson.build: va: basedec: add gstvabasedec helper This is a helper for all decoders. It is not an abstract subclass, just merely a helper that avoids code duplication among the decoders. Part-of: 2020-10-09 10:33:58 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavp8dec.c: va: vp8dec: add element documentation Part-of: 2020-10-09 12:27:12 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: set video alignment definition earlier This patch renames need_cropping variable to need_videoalign which is clearer with its function. And now GstVideoAlignment is part of GstVaH264Dec structure, so it can be set earlier. Part-of: 2020-10-05 16:40:55 -0400 Olivier Crête * ext/dtls/gstdtlsconnection.c: dtlsconnection: Ignore OpenSSL system call errors OpenSSL shouldn't be making real system calls, so we can safely ignore syscall errors. System interactions should happen through our BIO. So especially don't look at the system's errno, as it should be meaningless. Part-of: 2020-09-12 02:48:43 +0200 Jan Alexander Steffens (heftig) * tests/check/elements/svthevcenc.c: tests: svthevcenc: Fix test_encode_simple Pick the same I420 format the other test use. Without this, the source picks AYUV64, which fails. Part-of: 2020-10-07 18:03:20 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvah264dec.c: * sys/va/gstvapool.c: * sys/va/gstvapool.h: * sys/va/gstvavp8dec.c: * sys/va/gstvavpp.c: va: allocator: add _set_format() and _get_format() Since allocators keep an available memory queue to reuse, video format and usage hint are now persistant while allocator's memories are around. This patch adds _set_format() and _get_format() for both VA allocators. _set_format() validates if given format can be used or reused. If no allocated surface previously it creates a dummy one to fetch its offsets and strides. Updated info is returned to callee. GstVaPool uses _set_format() at config to verify the allocator capacity and to get the surfaces offsets and strides, which are going to be used by the video meta. Allocator extracted caps are compared with caps from config and if they have different strides or offsets, force_videometa is set. A new bufferpool method gst_va_pool_requires_video_meta() is added return the value of force_videometa. This value is checked in order to know if decoders need to copy the surface if downstream doesn't announce video meta support. Part-of: 2020-10-08 14:10:41 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: * sys/va/gstvacaps.h: va: caps: added gst_caps_is_raw() Part-of: 2020-10-08 10:26:54 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvapool.c: va: pool: call parent's start() method Without preallocating buffers and memories a deadlock in pool allocator is highly probably since it might hit the case were buffer is returned to the pool but their memories are still hold by a copy downstream, without other preallocated buffers available. This kind of a hack, where buffer_reset() follow the normal path if it's called from start(). Part-of: 2020-10-07 16:18:30 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvapool.c: va: pool: fix log's object Part-of: 2020-10-08 10:30:28 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: remove noisy log message Part-of: 2020-10-07 11:08:49 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: add a todo for dmabuf_memories_setup() It would be nice to add a surface pool for this type of surface allocation in order to have a better control of them. Part-of: 2020-10-07 10:16:27 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: add a surface counter Every time a new surface is created the counter increases by one, and when it is destroyed (or will be destroyed in case of GstVaAllocator), the counter is decreased. Then, at allocator dispose, it is warning if the counter is not zero. This counter will be also used to check if the allocator can change its configuration if the counter is zero or can not. Part-of: 2020-10-06 20:01:04 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: remove GstVideoInfo from GstVaBufferSurface Don't store it them anymore since it is related with the negotiated stream and not the concrete buffer. Part-of: 2020-10-06 19:54:26 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvadecoder.c: * sys/va/gstvavpp.c: va: remove GstVideoInfo parameter from _get_surface() functions There shouldn't be need to retrieve GstVideoInfo per buffer or memory since it is the same for all the negotiated stream. Part-of: 2020-10-06 19:40:16 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvavpp.c: va: vpp: don't fetch video info from buffer Instead of fetching video info from the buffer, use the already set ones. Part-of: 2020-10-07 12:49:44 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavpp.c: va: dec, vpp: don't get buffer size from allocators Since buffer size is now ignored by bufferpool there's no need to get tha value from the allocator. Part-of: 2020-10-04 11:14:38 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvapool.c: va: pool: ignore size in config Part-of: 2020-10-05 11:07:25 +0200 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: set interlace-mode=interleaved on interlaced content interlace-mode=alternate is a special case of interlace-mode=interleaved where the fields are split using two different buffers. We should use the latter instead of the former to no break compat with elements supporting only 'interleaved'. Decoders producing alternate, such as OMX on the Zynq, should change the interlace-mode on their output caps. Fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/825 Part-of: 2020-10-09 10:24:50 +0200 Jacek Tomaszewski * COPYING: * COPYING.LIB: Replace LGPL v2 with LGPL v2.1 in COPYING and remove COPYING.LIB Part-of: 2020-10-02 11:42:07 +0200 Jacek Tomaszewski * COPYING: Replace GPL v2 with LGPL v2 in COPYING file Fixes #1422 https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1422 Part-of: 2020-10-08 17:52:05 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtsink.c: srt: Consume the error from gst_srt_object_write Instead of leaking it. Part-of: 2020-10-08 17:48:20 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Check socket state before retrieving payload size The connection might be broken, which we should detect instead of just aborting the write. Part-of: 2020-10-08 18:25:59 +0200 Jakub Adam * ext/x265/gstx265enc.c: x265enc: fix deadlock on reconfig Don't attempt to obtain encoder lock that is already held by gst_x265_enc_encode_frame(). Part-of: 2020-10-07 11:04:30 +0300 Sebastian Dröge * pkgconfig/gstreamer-webrtc-uninstalled.pc.in: * pkgconfig/gstreamer-webrtc.pc.in: webrtc: Require gstreamer-sdp in the pkg-config file Some headers include API from it. Part-of: 2020-10-06 11:45:36 +0200 Edward Hervey * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: * ext/srt/gstsrtsrc.c: * ext/srt/gstsrtsrc.h: srtsrc: Fix timestamping SRT provides the original timestamp of a packet (with drift/skew corrected for local clock), which is what should be used for timestamping the outgoing buffers. This ensures that we output the packets with the same timestamp (and by extension rate) as the original feed. Also detect if packets were dropped (by checking the sequence number) and properly set DISCONT flag on the outgoing buffer. Finally answer the latency queries Part-of: 2020-10-07 05:05:25 +0900 Seungha Yang * sys/mediafoundation/gstmfsourcereader.cpp: mfvideosrc: Use only the first video stream per device Non-first video stream might not be working with current implementation. It could be non-video (e.g., photo source) and then ReadSample() might be blocked forever. Part-of: 2020-10-08 03:15:21 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Update doc Part-of: 2020-10-08 01:39:42 +0900 Seungha Yang * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPI_i.c: decklink: Update Windows headers with SDK 11.2 Part-of: 2020-10-08 01:33:35 +0900 Seungha Yang * sys/decklink/osx/DeckLinkAPI.h: * sys/decklink/osx/DeckLinkAPIConfiguration.h: * sys/decklink/osx/DeckLinkAPIDeckControl.h: * sys/decklink/osx/DeckLinkAPIDiscovery.h: * sys/decklink/osx/DeckLinkAPIDispatch.cpp: * sys/decklink/osx/DeckLinkAPIModes.h: * sys/decklink/osx/DeckLinkAPIStreaming.h: * sys/decklink/osx/DeckLinkAPITypes.h: * sys/decklink/osx/DeckLinkAPIVersion.h: decklink: Update OSX headers with SDK 11.2 Part-of: 2019-06-25 11:51:32 +0200 Tim * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: * sys/decklink/linux/DeckLinkAPI.h: * sys/decklink/linux/DeckLinkAPIConfiguration.h: * sys/decklink/linux/DeckLinkAPIDeckControl.h: * sys/decklink/linux/DeckLinkAPIDiscovery.h: * sys/decklink/linux/DeckLinkAPIDispatch.cpp: * sys/decklink/linux/DeckLinkAPIModes.h: * sys/decklink/linux/DeckLinkAPITypes.h: * sys/decklink/linux/DeckLinkAPIVersion.h: decklink: Updated DeckLink SDK to 11.2 to support DeckLink 8K Pro Updated Decklink SDK to version 11.2 in order to support newer cards like the Decklink 8K Pro. This required to replace the duplex property by a profile property. Profile values can be the following: - bmdProfileOneSubDeviceFullDuplex - bmdProfileOneSubDeviceHalfDuplex - bmdProfileTwoSubDevicesFullDuplex - bmdProfileTwoSubDevicesHalfDuplex - bmdProfileFourSubDevicesHalfDuplex Fixes #987 Part-of: 2020-10-07 17:37:25 +0900 Seungha Yang * sys/mediafoundation/gstmfsourcereader.cpp: mfvideosrc: Fix invalid memory access when outputting jpeg Don't access unknown-dangerous-nonsense address Part-of: 2020-10-08 18:50:12 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc_fwd.h: Revert "webrtc: Save the media kind in the transceiver" This reverts commit f54d8e99457996303b8477b1f3a710f0fabd1cc6. It breaks the CI until the C# bindings are fixed. 2020-10-08 18:49:57 +0300 Sebastian Dröge * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: Revert "rtpsender: Add API to set the priority" This reverts commit a8b287c76472c8d7fd38800807c482d020ff4a63. It breaks the CI until the C# bindings are fixed. 2020-10-08 18:49:56 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.h: Revert "rtptransceiver: Store the SSRC of the current stream" This reverts commit d1da271f255101dbe95a426d9f5065d300b53e5a. It breaks the CI until the C# bindings are fixed. 2020-10-08 18:49:55 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: Revert "webrtcbin: Remove unused function" This reverts commit 39723dbe934186c11f7b2a2b04c0af7932a1509c. It breaks the CI until the C# bindings are fixed. 2020-10-08 18:49:54 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: * ext/webrtc/meson.build: * ext/webrtc/sctptransport.c: * ext/webrtc/sctptransport.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: Revert "webrtc: Set the DSCP markings based on the priority" This reverts commit 8ba08598bbe51f3b1f063ae22605f9608865f16b. It breaks the CI until the C# bindings are fixed. 2020-10-08 18:49:53 +0300 Sebastian Dröge * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: Revert "webrtc: Document more objects" This reverts commit ad68c6b1eb7c73c66dc9d1dbf1a8cc47fd489c61. It breaks the CI until the C# bindings are fixed. 2020-10-08 18:49:50 +0300 Sebastian Dröge * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: Revert "webrtc: Add hotdoc style since tags" This reverts commit 63a5fa818c31ecbe43891c077a38b6b162d73c28. It breaks the CI until the C# bindings are fixed. 2020-10-06 16:52:48 -0400 Olivier Crête * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: webrtc: Add hotdoc style since tags We're stuck having to add a separate comment for now. Part-of: 2020-10-02 21:38:00 -0400 Olivier Crête * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: webrtc: Document more objects Part-of: 2020-07-08 17:24:36 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: * ext/webrtc/meson.build: * ext/webrtc/sctptransport.c: * ext/webrtc/sctptransport.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: webrtc: Set the DSCP markings based on the priority This matches how the WebRTC javascript API works and the Chrome implementation. Part-of: 2020-07-09 13:45:20 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Remove unused function Part-of: 2020-07-09 13:42:35 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtctransceiver.h: rtptransceiver: Store the SSRC of the current stream Part-of: 2020-07-09 13:39:03 -0400 Olivier Crête * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: rtpsender: Add API to set the priority Part-of: 2020-07-08 19:13:33 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Save the media kind in the transceiver Part-of: 2020-10-06 13:39:23 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Remove unused sa_family tracking Now that SRT no longer needs the family when creating the socket, this code has become useless. Part-of: 2020-10-02 03:39:40 +0200 Niklas Hambüchen * ext/srt/gstsrtobject.c: * ext/srt/meson.build: srt: Move off deprecated `srt_socket()`. See https://github.com/Haivision/srt/blob/73ee1e1a3e3adc2702a9a5057d101ef80447b38c/docs/API-functions.md#srt_socket `srt_create_socket()` was added in https://github.com/Haivision/srt/commit/4b897ba92d34f1829a1c6e419eeab17f0763a0fc and srt `v1.3.0` is the first release that has it. Part-of: 2020-10-01 17:31:13 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrt.c: srt: Register a log handler Part-of: 2020-09-25 19:17:35 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Avoid removing invalid sockets from the polls This would provoke error messages from SRT. Part-of: 2020-09-25 19:08:17 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Fix use of srt_startup `srt_startup` can also return 1 if it was successful. Avoid warning in this case. Avoid a race when checking whether we need to call it at all. Part-of: 2020-10-06 12:35:12 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Fix parameter types used for socket options The [SRT documentation][1] specifies exact types for the socket options. Make sure we match these. This reverts the linger workaround in commit 84f8dbd932029220ee86154dd and extends srt_constant_params to support other types than int. [1]: https://github.com/Haivision/srt/blob/master/docs/APISocketOptions.md Part-of: 2020-09-29 18:52:43 +0900 Seungha Yang * sys/d3d11/gstd3d11upload.c: d3d11upload: Allow passthrough for system memory ... like how d3d11download and gl{upload,download} do. This should've been part of the commit 9b72b04daddafb1c86cb6ab5923c593a70bc4166 but I missed. Part-of: 2020-10-04 10:01:31 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: refactor flush methods for both allocators Since the logic is the same, it can be generalized in a single common function. Also the methods run the common function with a lock and signal the buffers' conditional. Part-of: 2020-10-03 16:37:54 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: refactor GstVaDmabufAllocator Move code down to group it. Part-of: 2020-10-03 16:30:14 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: refactor GstVaBuffersurface Move code up and add namespace to methods, and renaming _creating_buffer_surface() to the canonical gst_va_buffer_surface_new() Part-of: 2020-09-30 19:35:14 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvapool.c: va: implement pooled allocators 1. Allocators don't implement memory free() methods since all the memories will implement dispose() returning FALSE 2. Memory/miniobject dispose() will act as memory release, enqueueing the release memory 3. A new allocator's method prepare_buffer() which queries the released memory queue and will add the requiered memories to the buffer. 4. Allocators added a GCond to synchronize dispose() and prepare_buffer() 5. A new allocator's method flush() which will free for real the memories. While the bufferpool will 1. Remove all the memories at reset_buffer() 2. Implement acquire_buffer() calling allocator's prepare_buffer() 3. Implement flush_start() calling allocator's flush() 4. start() is disabled since it pre-allocs buffers but also calls our reset_buffer() which will drop the memories and later the buffers are ditched, something we don't want. This approach avoids buffer pre-allocation. Part-of: 2020-09-30 15:54:18 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: user gst_clear_object() for _buffer_surface_unref() Event if this function is only used by gst_va_dmabuf_memories_setup(), it might get reused later by GstVaDmabufAllocator's functions. This change makes the function less fragile. Part-of: 2020-09-30 15:53:39 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: renamed gst_va_dmabuf_memory_release() Part-of: 2020-09-30 15:48:12 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: renamed available_mems queue Part-of: 2020-09-30 15:45:54 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvapool.c: va: allocator: rename gst_va_dmabuf_allocator_setup_buffer() Since it's related with GstVaDmabufAllocator. Part-of: 2020-09-29 15:03:11 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: calculated surface frame internally Instead of using gst_buffer_get_size() just add the memory sizes reported by exported fd. Part-of: 2020-09-28 16:59:44 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: make GstVaMemory shareable Renamed the first variable member of GstVaMemory from parent to mem in order to avoid confusion with GstMemory's parent. When freeing the structure, memory's parent is check in order to decide if surfaces has to be destroyed or not, since only the parent class have to destroy it. Removed GST_MEMORY_FLAG_NO_SHARE in memory initialization, since it is deprecated. Implemented allocator's share virtual method which creates a new shallow GstVaMemory structure based on the passed one which will be it's parent. Part-of: 2020-09-28 16:50:16 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: remove copy method for GstVaMemory Since the memory has to be shareable. That will be address in the next commits. Part-of: 2020-09-24 17:32:47 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: remove va allocator mem_is_span() vmethod Since it is the default by base class. Part-of: 2020-10-01 03:47:13 +0900 Seungha Yang * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: d3d11upload/d3d11download: Make use of staging buffer ... instead of direct cpu map for d3d11memory object. In this way, we don't need per GstD3D11Memory staging texture. Part-of: 2020-10-03 18:53:46 +0900 Seungha Yang * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: d3d11: Don't hold staging texture Staging texture is used for memory transfer between system and gpu memory. Apart from d3d11{upload,download} elements, however, it should happen very rarely. Before this commit, d3d11bufferpool was allocating at least one staging texture in order to calculate cpu accessible memory size, and it wasn't freed for later use of the texture unconditionally. But it will increase system memory usage. Although GstD3D11memory object is implemented so that support CPU access, most memory transfer will happen in d3d11{upload,download} elements. By this commit, the initial staging texture will be freed immediately once cpu accessible memory size is calculated. Part-of: 2020-09-26 03:27:39 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11basefilter.h: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11download.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11upload.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11videosinkbin.h: d3d11: Move to G_DECLARE_FINAL_TYPE ... and remove unnecessary forward declaration. Part-of: 2020-10-04 16:33:47 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: * sys/va/gstvacaps.h: * sys/va/gstvah264dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavpp.c: va: caps: centralize caps feature discovering These function were repeated in the different implemented elements. This patch centralize them. The side effect is dmabuf memory type is no longer checked with the current VAContext, but assuming that dmabuf is a consequence of caps negotiation from dynamic generated caps templates, where the context's memory types are validated, there's no need to validate them twice. Part-of: 2020-10-04 12:43:35 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: va: filter: fix counter variable reuse There was a bug reusing the counter variable i in nested loops. Also the patch makes the code cleaner. Part-of: 2019-10-02 11:17:09 +0200 Lars Lundqvist * ext/curl/gstcurlbasesink.c: curlbasesink: Add curl seek callback Adding functionality to handle SEEK_SET enables rewinding of sent data. In the HTTP case, this happens after an HTTP 401 has been received from the other end. This will result in the sent data being resent. Part-of: 2020-09-29 15:52:21 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: decklink: Correctly order the different dependent mode tables One was forgotten in 309f6187fef890c7ffa49305f38e89beac3b1423. Part-of: 2020-09-19 00:26:35 +0900 Seungha Yang * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapisrc: Make sure that wasapisrc produces data in loopback mode An oddness of wasapi loopback feature is that capture client will not produce any data if there's no outputting sound to corresponding render client. In other words, if there's no sound to render, capture task will stall. As an option to solve such issue, we can add timeout to wake up from capture thread if there's no incoming data within given time interval. But it seems to be glitch prone. Another approach is that we can keep pushing silence data into render client so that capture client can keep capturing data (even if it's just silence). This patch will choose the latter one because it's more straightforward way and it's likely produce glitchless sound than former approach. A bonus point of this approach is that loopback capture on Windows7/8 will work with this patch. Note that there's an OS bug prior to Windows10 when loopback capture client is running with event-driven mode. To work around the bug, event signalling should be handled manually for read thread to wake up. Part-of: 2020-09-29 23:46:00 +1000 Matthew Waters * ext/wpe/gstwpesrc.cpp: wpesrc: fix some caps leaks using the non-GL output Always chain up to the parent _stop() implementation as it unrefs some caps (among other things). Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1409 Part-of: 2020-06-16 11:16:37 +0900 Hosang Lee * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: smoothstreaming: clear live adapter on seek In live streaming, buffers sent by souphttpsrc are pushed to the live adapter. The buffers in the adapter are sent out of mssdemux when it is greater than 4096 bytes. Occasionally, when seeking in live streams, if seek occurs just after the last data chunk was received, and if this data chunk is smaller than 4096 bytes, it will be kept in the live adapter. This remaining data in the live adapter will be erroneously prepended to the new data that is downloaded after seek and pushed out. When qtdemux receives this data, since it does not start with a moof box, it is impossible to demux the fragment, and bogus size error will occur. Clear out the live adapter on seek so that no unnecessary remaining data is pushed out together with the new fragment after seeking. Part-of: 2020-09-30 10:47:45 +0200 Víctor Manuel Jáquez Leal * sys/va/plugin.c: va: simplify VPP detection Also the previous code failed if VPP was not present blacklisting the plugin. Part-of: 2020-06-15 15:24:07 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkvideomemory.c: msdk: call vaExportSurfaceHandle() to get DMABuf FD Compared to vaAcquireBufferHandle(), vaExportSurfaceHandle() may provide the handle details, so we needn't call vaDeriveImage(). Part-of: 2020-07-01 09:03:21 -0700 Ederson de Souza * ext/avtp/gstavtpcvfpay.c: * tests/check/elements/avtpcrfcheck.c: * tests/check/elements/avtpcrfsync.c: * tests/check/elements/avtpcvfdepay.c: tests/avtp: Fix coverity issues Fixes sign extension issues, unchecked return values and some constant expression results. CID: 1465073, 1465074, 1465075, 1465076, 1465077 Part-of: 2020-07-08 09:08:31 -0700 Ederson de Souza * ext/avtp/gstavtpcvfdepay.c: * ext/avtp/gstavtpcvfpay.c: * ext/avtp/gstavtpsrc.c: avtp: Change "%lu" for G_GUINT64_FORMAT Part-of: 2020-09-25 22:00:26 +0530 raghavendra * ext/srt/gstsrtobject.c: srtobject: typecast SRTO_LINGER to linger Part-of: 2020-09-24 01:24:40 +0800 He Junyan * gst-libs/gst/codecparsers/gstvp8parser.c: codecparsers: vp8parser: clear the frame_hdr before parsing. Uninited frame_hdr may have garbage and may contain some wrong results after the parsing process. Part-of: 2020-09-20 23:29:00 +0800 He Junyan * sys/va/gstvah264dec.c: * sys/va/gstvavp8dec.c: * sys/va/gstvavp8dec.h: * sys/va/meson.build: * sys/va/plugin.c: va: Implement the VA vp8 decoder. Part-of: 2020-09-21 23:08:05 +0800 He Junyan * sys/va/gstvaallocator.h: * sys/va/gstvadecoder.h: * sys/va/gstvautils.h: va: codestyle: Clear all tabs in header files Part-of: 2020-09-21 12:51:53 +0800 He Junyan * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: * sys/va/gstvautils.h: va: util: make the _format_changed a common decoder function. Part-of: 2020-09-24 12:36:26 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: allocate output buffers according DPB size Instead of allocating the maximal number of references for output buffers, this patch reduces the memory foot print in many cases by just allocating the output buffers required for the DPB. Part-of: 2020-09-24 12:29:49 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: va: decoder: store output buffer rather than surface GstVaDecodePicture stored the processed VASurfaceID, under the assumption that the bufferpool with keep the referenced buffers, but this approach is fragil. This patch changes GstVaDecodePicture to store the output buffer, which already contains its VASurfaceID, and provides a new method to retrieve the VASurfaceID directly from picture. Based on He Junyan patches for https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1587 Part-of: 2020-09-23 20:08:46 +1000 Matthew Waters * sys/applemedia/videotexturecache-vulkan.mm: vtdec/vulkan: use Shared storage mode for IOSurface textures Fixes a debug assertion with i(Pad)OS 14: 'IOSurface textures must use MTLStorageModeShared' Part-of: 2020-09-23 17:04:55 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Restore intervals when creating TsMux Otherwise the settings from the properties would be overwritten with the defaults. Part-of: 2020-09-19 14:26:42 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvavpp.c: * sys/va/plugin.c: va: vpp: global lock to handle shared buffers Add a global mutex to exclusive access to shared stream buffers, such as DMABufs or VASurfaces after a tee: LIBVA_DRIVER_NAME=iHD \ gst-launch-1.0 v4l2src ! tee name=t t. ! queue ! \ vapostproc skin-tone=9 ! xvimagesink \ t. ! queue ! vapostproc ! xvimagesink Part-of: 2020-08-16 09:18:11 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvafilter.c: * sys/va/gstvafilter.h: * sys/va/gstvavpp.c: * sys/va/gstvavpp.h: * sys/va/meson.build: * sys/va/plugin.c: va: add vapostproc element Video postprocessor for VA-API Funcionalities: resize frames, change format, import buffers, apply filters (such as denoise, sharpen, orientation, if driver offers them). Part-of: 2020-08-20 13:49:33 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: export composed layer for YUY2 and UYVY This is a result of an error reported by i965 driver which only can export composed layer for these formats. This seems to work too with iHD. These formats are not exposed as native surfaces in Gallium. Part-of: 2020-08-19 16:52:10 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: va: allocator: add gst_va_dmabuf_buffer_setup() This function will take an array of DMABuf GstMemory and an array of fd, and create a VASurfaceID with those fds. Later that VASurfaceID is attached to each DMABuf through GstVaBufferSurface. In order to free the surface GstVaBufferSurface now have GstVaDisplay member, and _buffer_surface_unref() were added. Part-of: 2020-08-19 16:48:39 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: try to get VASurfaceID from every DMABuf allocator Relax the check of the allocator type, because now the qdata can be attached for other DMABuf allocators. Part-of: 2020-09-12 13:10:18 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvavideoformat.c: va: allocator: try to create surface without fourcc but chroma only There are, in VPP, surfaces that doesn't support 4:2:2 fourccs but it supports the chroma. So this patch gives that opportunity to the driver. This patch also simplifiies gst_va_video_surface_format_from_image_format() to just an iterator for surfaces available formats. Part-of: 2020-08-19 16:45:49 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: create surfaces with VASurfaceAttribExternalBuffers Add a new parameter to _create_surfaces(): a pointer to VASurfaceAttribExternalBuffers. If it's defined the memory type is changed to DRM_PRIME, also a new item is added to the VASurfaceAttrib array with VASurfaceAttribExternalBufferDescriptor. Also, the VASurfaceAttrib for pixel format is not mandatory anymore. If fourcc parameter is 0, is not added in the array, relying on the chroma. This is useful when creating surfaces for uploading or downloading images. Part-of: 2020-08-20 13:46:12 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvapool.c: va: pool: use gst_object_replace() for allocator Part-of: 2020-09-16 19:14:30 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadevice.c: va: device: use gst_clear_object() Part-of: 2020-08-18 19:12:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: * sys/va/gstvacaps.h: va: caps: expose gst_caps_set_format_array() Part-of: 2020-09-22 19:59:41 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: vah264dec: fix documentation Part-of: 2020-09-23 10:58:43 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264: unref leaked caps Unref a leaked caps at set_latency(). Part-of: 2020-07-20 10:13:13 +0800 Haihao Xiang * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkav1dec.c: * sys/msdk/gstmsdkav1dec.h: * sys/msdk/meson.build: msdk: add support for AV1 decoding Part-of: 2020-09-19 21:43:24 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvautils.c: va: utils: use GstObject for GstVaDisplay in context Thus application could fetch the GstVaDisplay through the sync bus without knowning the specific implementation, and sharing it or extract properties. Part-of: 2020-09-19 21:36:58 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvautils.c: va: utils: fix code style and wrong log message Part-of: 2020-09-14 09:48:48 +0100 Philippe Normand * ext/wpe/gstwpesrc.cpp: wpe: Plug event leak Handled events don't go through the default pad event handler, so they need to be unreffed in this case. Part-of: 2020-08-25 01:57:55 +1000 Jan Schmidt * ext/wpe/gstwpesrc.cpp: wpesrc: Don't crash if WPE doesn't generate a buffer. On creating a 2nd wpesrc in a new pipeline in an app that already has a runnig wpesrc, WPE sometimes doesn't return a buffer on request, leading to a crash. This commit fixes the crash, but not the underlying failure - a 2nd wpesrc can still error out instead. Partially fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1386 Part-of: 2020-09-11 12:51:56 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpe: Plug SHM buffer leaks Fixes #1409 Part-of: 2020-09-10 14:39:58 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: wpe: Move webview load waiting to WPEView As waiting for the load to be finished is specific to the WebView, it should be done from our WPEView, not from the WPEContextThread. This fixes issues where multiple wpesrc elements are created in sequence. Without this patch the first view might receive erroneous buffer notifications. Fixes #1386 Part-of: 2020-09-11 18:17:20 +0530 Sanchayan Maity * docs/plugins/gst_plugins_cache.json: * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Add support for specifying output buffer size Currently for buffer splitting only output duration can be specified. Allow specifying a buffer size in bytes for splitting. Consider a use case of the below pipeline appsrc ! rptL16pay ! capsfilter ! rtpbin ! udpsink Maintaining MTU for RTP transfer is desirable but in a scenario where the buffers being pushed to appsrc do not adhere to this, an audiobuffersplit element placed between appsrc and rtpL16pay with output buffer size specified considering the MTU can help mitigate this. While rtpL16pay already has a MTU setting, in case of where an incoming buffer has a size close to MTU, for eg. with a MTU of 1280, a buffer of size 1276 bytes would be split into two buffers, one of 1268 and other of 8 bytes considering RTP header size of 12 bytes. Putting audiobuffersplit between appsrc and rtpL16pay can take care of this. While buffer duration could still be used being able to specify the size in bytes is helpful here. Part-of: 2020-09-10 13:05:23 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpe: Use proper callback for TLS errors signal handling The load-failed and load-failed-with-tls-errors signals expect distinct callback signatures. Fixes #1388 Part-of: 2020-09-20 08:31:23 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: add documentation Part-of: 2019-12-10 19:54:43 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: enable GPUCopy Note it works for system memory only Part-of: 2019-12-10 19:47:03 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: call MFXInitEx instead of MFXInit MFXInitEx has more control than MFXInit. The current setting in this commit is identical to MFXInit Part-of: 2020-09-19 14:08:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: va: decoder: render picture only if data Call vaRenderPicture() only if buffer or slice data is available. Part-of: 2020-09-17 19:54:28 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: va: decoder: warn if decode fails on a surface Instead of logging error if a step fails, it logs a warning message reducing the noise and obeying the rule for errors since the program doesn't end Part-of: 2020-09-17 19:52:29 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: check is pad has fixed caps at caps query Otherwise it will always reply with the possible driver caps, which generates problems with Web MSE players. Part-of: 2020-09-19 05:39:32 +0900 Seungha Yang * sys/va/gstvah264dec.c: va: h264dec: Don't need to set pts/dts/duration on outputting frame It will be handled by videodecoder baseclass Part-of: 2020-03-25 20:50:01 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/meson.build: webrtcbin: Accept end-of-candidate pass it to libnice libnice now supports the concept of end-of-candidate, so use the API for it. This also means that if you don't do that, the webrtcbin will never declared the connection as failed. This requires bumping the dependency to libnice 0.1.16 Part-of: 2020-09-17 17:39:25 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Do not source using padded width/height The width/height from the video meta can be padded width, height. But when sourcing from padded buffer, we only want to use the valid pixels. This rectangle is from the crop meta, orther it is deduces from the caps. The width and height from the caps is save in the parent class, use these instead of the GstVideoInfo when settting the src rectangle. This fixes an issue with 1080p video displaying repeated or green at the padded bottom 8 lines (seen with v4l2codecs). Part-of: 2020-09-18 01:41:35 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosinkbin.c: * tests/check/elements/d3d11colorconvert.c: d3d11: Add support for packed 8bits 4:2:2 YUV formats Note that newly added formats (YUY2, UYVY, and VYUY) are not supported render target view formats. So such formats can be only input of d3d11convert or d3d11videosink. Another note is that YUY2 format is a very common format for hardware en/decoders on Windows. Part-of: 2020-08-26 17:48:06 -0400 Olivier Crête * ext/webrtc/gstwebrtcbin.c: webrtcbin: Merge the RTX SSRCs from all transceivers when bundling Part-of: 2020-09-15 17:09:57 +0200 Marian Cichy * ext/avtp/gstavtpaafdepay.c: avtp: avtpaafdepay: fix crash when building caps gst_caps_new_simple gets wrong types for rate and channel which may lead to a crash. As 64-bit values for rate, depth, format, channels does not make much sense and since any other functionality in gstreamer expects G_TYPE_INT for channels and rate, we should stick to that Part-of: 2020-06-09 10:10:12 +0800 Haihao Xiang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * tests/check/libs/h265parser.c: h265parse: recognize more HEVC extension streams There are streams which have the right general_profile_idc and general_profile_compatibility_flag, but don't have the right extension flags. We may try to use chroma_format_idc and bit_depth to recognize these streams. e.g. https://www.itu.int/wftp3/av-arch/jctvc-site/bitstream_exchange/draft_conformance/SCC/IBF_Disabled_A_MediaTek_2.zip Part-of: 2020-06-05 13:01:06 +0800 Haihao Xiang * gst-libs/gst/codecparsers/gsth265parser.c: * tests/check/libs/h265parser.c: h265parser: select the right profile for high throughput SCC stream Currently screen-extended-high-throughput-444 is recognized as screen-extended-main-444, screen-extended-high-throughput-444-10 is recognized as screen-extended-main-444-10 because they have the same extension flags, so without this patch, it is possible that a decoder which supports SCC but doesn't support throughput SCC will try to decode a throughput SCC stream. e.g. https://www.itu.int/wftp3/av-arch/jctvc-site/bitstream_exchange/draft_conformance/SCC/HT_A_SCC_Apple_2.zip Part-of: 2020-09-08 14:43:49 +0800 Randy Li (ayaka) * sys/msdk/gstmsdkvpp.c: msdk: vpp: fixup passthrough checking for DMA I think it is just a typo from e1a90f1ec9 msdkvpp: Disable passthrough if memory capsfeature changes Part-of: 2020-09-15 17:51:51 +0200 Emmanuel Gil Peyrot * ext/wayland/wlshmallocator.c: * meson.build: waylandsink: Use memfd_create() when available This (so-far) Linux- and FreeBSD-only API lets users create file descriptors purely in memory, without any backing file on the filesystem and the race condition which could ensue when unlink()ing it. It also allows seals to be placed on the file, ensuring to every other process that we won’t be allowed to shrink the contents, potentially causing a SIGBUS when they try reading it. This patch is best viewed with the -w option of git log -p. It is an almost exact copy of Wayland commit 6908c8c85a2e33e5654f64a55cd4f847bf385cae, see https://gitlab.freedesktop.org/wayland/wayland/merge_requests/4 Part-of: 2020-09-10 21:19:43 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: codecs: vp9decoder: Relying on upstream vp9parse for super frame handling By this way, we can simplify the decoding flow. Moreover, we don't need to worry about the case where multiple visible-frames are composed in one super-frame, since upstream vp9parse will split them per frame unit. Part-of: 2020-09-10 21:42:49 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9picture.c: * gst-libs/gst/codecs/gstvp9picture.h: codecs: vp9decoder: Remove unused pts variable Part-of: 2020-09-12 00:12:03 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.c: d3d11vp9dec: Don't need to consider output_picture() call without GstVideoCodecFrame Baseclass will be updated in order to ensure GstVideoCodecFrame. Part-of: 2020-09-10 20:32:13 +0900 Seungha Yang * sys/d3d11/gstd3d11vp9dec.c: d3d11vp9dec: Specify profile and alignment on sink template Set supported profile(s) on sink template caps, so that decodebin can filter out this element if profile of given vp9 stream is not supported by hardware decoder. Part-of: 2020-09-10 21:31:38 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Cleanup code * Don't need to set pts/dts/duration on output buffer of frame. it's handled by baseclass * Remove meaningless debug output Part-of: 2020-08-22 12:44:16 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Calculate and set latency Add gst_h264_decoder_set_latency(), which calculates and sets latency on base decoder class, after new_sequence is called. This assumes that in new_sequence() vmethod, callee negotiates downstream caps. Part-of: 2020-08-22 12:47:23 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: Revert "va: h264dec: set latency" This reverts commit 3aedef4c8601dcafb065d8095a927f1cd528056f. Part-of: 2020-09-14 14:42:36 +0300 Jordan Petridis * tests/check/gst-plugins-bad.supp: validate: plug leak in gssdp These are triggered by the webrtcbin tests https://gitlab.gnome.org/GNOME/gssdp/-/issues/10 2020-09-04 23:34:16 +0800 yychao * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Parse Audio Preselection Descriptor For Dolby AC4 audio experience, parsing PMTs/APD from transport stream layer for all available presentations. Refer to ETSI EN 300 468 V1.16.1 (2019-05) 1. 6.4.1 Audio preselection descriptor 2. Table M.1: Mapping of codec specific values to the audio preselection descriptor Part-of: 2020-09-04 23:28:58 +0800 yychao * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add new API for fetching extended descriptors Part-of: 2020-08-26 15:45:35 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: * tests/check/elements/webrtcbin.c: webrtc: propagate more errors through the promise Return errors on promises when things fail where available. Things like parsing errors, invalid states, missing fields, unsupported transitions, etc. Part-of: 2020-07-01 07:35:08 +0530 Nirbheek Chauhan * gst-libs/gst/vulkan/meson.build: meson: Do not warn when a windowing system is not found Error out when the vulkan option is enabled, and just print a message() otherwise. This is more correct and also allows us to pass --fatal-meson-warnings more reliably. Part-of: 2020-09-10 10:35:11 -0700 Adam Williamson * ext/opencv/meson.build: opencv: set opencv_dep when option is disabled (#1406) The examples build file checks opencv_dep, so it still needs to be set even if the option is disabled. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1406 Signed-off-by: Adam Williamson Part-of: 2020-09-10 23:12:10 +0200 Mathieu Duponchelle * ext/openh264/gstopenh264dec.cpp: openh264dec: port to new request_sync_point() API Part-of: 2020-07-28 18:32:03 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: h264decoder: Fix various typos Part-of: 2020-07-28 18:39:52 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Minor cleanup Move few variables in their respective scope. Part-of: 2020-07-22 15:40:14 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Fix B-Frame weight table We where not setting the luma l1 weight table. Part-of: 2020-09-09 21:38:33 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * gst/videoparsers/gstvp9parse.c: * gst/videoparsers/gstvp9parse.h: * gst/videoparsers/meson.build: * gst/videoparsers/plugin.c: * tests/check/elements/vp9parse.c: * tests/check/elements/vp9parse.h: * tests/check/meson.build: videoparsers: Add vp9parse element Adding vp9parse element to parse various stream information such as resolution, profile, and so on. If upstream does not provide resolution and/or profile, this would be useful for decodebin pipeline for autoplugging suitable decoder element depending on template caps of each decoder element. In addition, vp9parse element supports unpacking superframe into single frame for decoders. The vp9 superframe is a frame which consists of multiple frames (or superframe with one frame is allowed) followed by superframe index block. Then unpacked each frame will be considered as normal frame by decoder. The decision for unpacking will be done by downstream element's "alignment" caps field, which can be "super-frame" or "frame". If downstream specifies the "alignment" as "frame", then vp9parse element will split an incoming superframe into single frames and the superframe index (located at the end of the superframe) data will be discarded by vp9parse element. Part-of: 2020-06-16 21:09:36 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmfvideosrc.c: * sys/mediafoundation/mediacapturewrapper.cpp: * sys/mediafoundation/mediacapturewrapper.h: mfvideosrc: Set timestamp on buffer when it's captured Capture the timestamp immediately when new frame is arrived, instead of doing that on ::create() method. There would be time gap between captured time and outputting time. Part-of: 2020-09-04 16:53:03 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstline21enc.c: * ext/closedcaption/gstline21enc.h: * tests/check/elements/line21.c: line21enc: add remove-caption-meta property Similar to #GstCCExtractor:remove-caption-meta Part-of: 2020-09-04 02:38:58 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstline21enc.c: * tests/check/elements/line21.c: line21enc: heavily constrain video height We can only determine a correct placement for the CC line with: * height == 525 (standard NTSC, line 21 / 22) * height == 486 (NTSC usable lines + 6 lines for VBI, line 1 / 2) Part-of: 2020-09-04 02:33:52 +0200 Mathieu Duponchelle * ext/closedcaption/gstline21enc.c: line21enc: add support for CDP closed caption meta Part-of: 2020-08-27 11:23:01 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Add another nominal bitrate fallback calculation Some HTTP servers don't provide fragment sizes (with the Content-Length HTTP header). In order to still figure out a nominal bitrate (for usage by queue2), calculate on when we're done downloading a fragment. Part-of: 2020-08-27 11:18:56 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle invalid HTTP duration The default BYTE DURATION basesrc query handler will return `-1` and TRUE. In order to properly handle cases where upstream http servers didn't return a valid Content-Length we also need to check whether it was valid when calculating bitrates. Avoids returning completely bogus bitrates with gogol's video streaming services Part-of: 2020-08-12 20:31:32 +0900 Seungha Yang * sys/mediafoundation/gstmfvideobuffer.cpp: * sys/mediafoundation/gstmfvideobuffer.h: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mfvideoenc: Add support for zero-copy encoding Add custom IMFMediaBuffer and IMF2DBuffer implementation in order to keep track of lifecycle of Media Foundation memory object. By this new implementation, we can pass raw memory of upstream buffer to Media Foundation without copy. Part-of: 2020-09-01 13:28:44 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Replace stats queue with stats lock Making the thread receiving the stats wait on the loop to respond was not a good idea, as the latter can get blocked on the streaming thread. Have get_stats read the values directly, adding a lock to ensure we don't read garbage. Part-of: 2020-08-19 14:51:17 +0300 Nazar Mokrynskyi * docs/meson.build: * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/rtmp/rtmpclient.h: rtmp2sink: add docs section with since marker on new stop-commands property Part-of: 2020-08-18 19:16:40 +0300 Nazar Mokrynskyi * docs/plugins/gst_plugins_cache.json: * gst/rtmp2/gstrtmp2sink.c: rtmp2: fix code style, update documentation cache Part-of: 2020-08-18 14:05:26 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2.c: * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmpclient.h: rtmp2: Clean up (improve) GstRtmpStopCommands type Part-of: 2020-05-02 04:49:42 +0300 Nazar Mokrynskyi * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmpclient.h: rtmp2sink: handle EOS event and close stream https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1285 Part-of: 2020-09-02 15:29:49 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: mpegtsmux: Make handling of sinkpads thread-safe Ensure we take the object lock while accessing `GstElement.sinkpads`. Use an iterator when the code isn't simple to avoid deadlock. When we find the best pad, take a reference so a concurrent pad release doesn't destroy the pad before we're done with it. Part-of: 2020-09-01 13:29:30 +0200 Jan Alexander Steffens (heftig) * ext/hls/gsthlssink2.c: hlssink2: Actually release splitmuxsink's pads It was looking at the "outer" peer of the ghost pad, not the "inner" peer (the target). It provided the wrong pad to gst_element_release_request_pad. Part-of: 2020-09-08 10:48:56 +0200 Edward Hervey * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Don't create streams with reserved PID There are quite a few reserved PID in the various MPEG-TS (and derivate) specifications which we should definitely not use. Those PID have a certain meaning and purpose. Furthermore, a lot of the code in the muxer implementation also makes assumption on the purpose of streams based on their PID. Therefore, when requesting a pad with a specific PID, make sure it is not a restricted PID. Part-of: 2020-09-08 17:30:42 +0100 Tim-Philipp Müller * .gitlab-ci.yml: ci: include template from gst-ci master branch again 2020-09-08 16:58:50 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.18.0 === 2020-09-08 00:07:45 +0100 Tim-Philipp Müller * .gitlab-ci.yml: * ChangeLog: * NEWS: * README: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.18.0 2020-09-07 22:48:27 +0100 Tim-Philipp Müller * meson.build: * scripts/dist-translations.py: * scripts/meson.build: meson: dist pot file in tarball Part-of: 2020-09-07 12:14:47 +0300 Sebastian Dröge * ext/x265/gstx265enc.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: gst: Update for gst_video_transfer_function_*() function renaming Part-of: 2020-09-01 15:05:07 +0200 Jan Alexander Steffens (heftig) * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: Test that we can manipulate pads after stop Part-of: 2020-09-01 14:56:55 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Keep mux usable after stop Otherwise you cannot request new pads until after it is started again. gst_base_ts_mux_reset with FALSE is still called in the dispose implementation, so the muxer still gets deallocated when we actually clean up. Part-of: 2020-09-01 13:32:44 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9dec.c: msdkvp9dec: change the include header order This fixes the compiler error when MFX_VERSION_USE_LATEST is defined in the SDK. /usr/include/mfx/mfxvp9.h:48:5: error: unknown type name ‘mfxExtBuffer’ mfxExtBuffer Header; Part-of: 2020-08-29 02:42:12 +0530 Nirbheek Chauhan * gst/rtmp2/gstrtmp2locationhandler.c: rtmp2: Need to unescape the userinfo before setting This regressed in 827afa206d8c9675f2a7af402396552c2ed1df09. The same fix was also committed to the webrtc element, but rtmp2 was missed. Part-of: 2020-08-29 02:40:44 +0530 Nirbheek Chauhan * ext/webrtc/gstwebrtcice.c: webrtc: Clean up the userinfo unescaping code Continuation from 04fd705906f4bd4cf1901001484e60c21e1b3139. This is easier to understand and also avoids two copies. Part-of: 2020-08-25 10:04:53 +0200 Jérôme Laheurte * sys/dshowsrcwrapper/BUILD.txt: * sys/dshowsrcwrapper/CMakeLists.txt: dshowsrcwrapper: Update build instructions. Add _builddir to include search path. Part-of: 2020-08-28 07:53:26 +1000 Jonathan Matthew * ext/modplug/gstmodplug.cc: modplug: avoid division by zero Under some conditions, GetMaxPosition() returns zero, which should cause position queries to fail rather than crash. 2020-08-21 18:40:59 -0400 trilene * ext/webrtc/gstwebrtcice.c: webrtc: Unescape turnserver user and password Part-of: 2020-08-22 23:33:48 +0200 Fabrice Fontaine * gst-libs/gst/opencv/meson.build: meson: allow the user to disable opencv Allow the user to really disable opencv through meson (i.e. -Dopencv=disabled). Part-of: 2020-08-25 23:46:16 +0100 Tim-Philipp Müller * ext/sctp/usrsctp/usrsctplib/netinet/sctp_constants.h: sctp: usrsctp: increase DIAG_MSG_LEN to accomodate longer file path Fixes "‘%s’ directive output truncated writing XX bytes into a region of size NN [-Wformat-truncation=]" compiler warnings. https://github.com/sctplab/usrsctp/pull/521 Fixes #1389 Part-of: 2020-08-25 10:49:11 +0200 Jérôme Laheurte * sys/dshowsrcwrapper/gstdshow.cpp: dshowsrcwrapper: fix typo in variable name Part-of: 2020-08-21 16:28:42 +0200 Wim Taymans * gst-libs/gst/vulkan/meson.build: vulkan: fix the enumtypes install path Part-of: 2020-08-22 14:38:38 +0100 Philippe Normand * ext/wpe/gstwpesrc.cpp: wpe: skip glbasesrc decide_allocation when non-GL caps are negotiated Checking for GL caps features in gl_start() was done too late in case the parent class fails to setup a working GL context. The element now determines if GL support should be enabled during the decide-allocation query handling. Additionally, when no GL context was found, we need to handle the element cleanup because in that situation glbasesrc won't call gl_stop. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1376 Part-of: 2020-08-21 22:48:48 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Fix possible GstH264Picture leak and small cleanup Don't leak pictures when dpb is full unexpectedly. Part-of: 2020-08-21 02:36:13 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Fix crash caused by missing null termination gst_caps_features_new() must be null terminated. Part-of: 2020-08-19 16:50:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: va: allocator: remove parameter from _create_buffer_surface() Don't the allocator to _create_buffer_surface() since it's not used. Part-of: 2020-08-19 17:18:26 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvautils.c: va: utils: free allocated string and fix a memleak Part-of: 2020-08-18 09:05:00 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvautils.c: va: utils: fix log category initialization Part-of: 2020-08-18 11:39:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: * sys/va/gstvah264dec.h: va: h264dec: check va allocator at decide allocation And some code cleanups Part-of: 2020-08-18 11:38:46 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: va: decoder: improve locks for member variable access Part-of: 2020-08-24 17:01:59 +1000 Matthew Waters * ext/webrtc/webrtcdatachannel.c: webrtc/datachannel: clear the error after use Fixes a memory leak Part-of: 2020-08-24 17:01:22 +1000 Matthew Waters * ext/webrtc/webrtcdatachannel.c: * gst-libs/gst/webrtc/datachannel.c: webrtc/datachannel: free previous protocol/label fields Fixes a memory leak Part-of: 2020-08-24 17:00:30 +1000 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: unref GBytes after use Part-of: 2020-08-24 16:58:41 +1000 Matthew Waters * ext/sctp/gstsctpdec.c: sctpdec: unref after retrieving the static pad template Part-of: === release 1.17.90 === 2020-08-20 16:14:23 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.17.90 2020-08-20 12:58:30 +1000 Matthew Waters * ext/webrtc/gstwebrtcice.c: webrtc/ice: resolve .local candidates internally Requires the system's DNS resolver to support mdns resolution. Fixes interoperablity with recent versions of chrome/firefox that produce .local address in for local candidates. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1139 2020-08-19 11:46:31 +0000 J. Kim * ext/srt/gstsrtobject.c: srtobject: set error when canceled waiting for a caller To propagate error, this commit sets a reason. Otherwise, the function caller should check if `error` is NULL when the return value is not normal. Part-of: 2020-08-19 11:30:47 +0000 J. Kim * ext/srt/gstsrtobject.c: srtobject: fix typo, s/errorj/error Part-of: 2020-08-17 18:51:17 +0100 Tim-Philipp Müller * docs/meson.build: docs: fix gst-docs build if opencv is not being built The disabler in opencv_dep (retrieved via libs_doc) will cause a meson interpreter error if opencv is not being built: ERROR: The += operator currently only works with arrays, dicts, strings or ints Part-of: 2020-08-14 19:57:30 +0300 Vivia Nikolaidou * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/gstfdkaacenc.h: fdkaacenc: Implement flush function The internal fdk encoder always produces 1024 bytes even with no input, so special care should be taken to not drain it twice. Part-of: 2020-08-17 21:39:13 +0900 Seungha Yang * sys/mediafoundation/gstmfutils.cpp: mediafoundation: Correct wrong raw video format mapping Was a shameful mistake Part-of: 2020-08-08 19:59:33 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: set latency The min latency is calculated with the maximum number of frames that precede any frame, if available, and it is lower than the maximum number of frames in DBP. The max latency is calculated with the maxium size of frames in DBP. Part-of: 2019-05-16 20:40:14 +0200 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Refactor layout selection code No functional change. Part-of: 2020-06-18 11:33:49 +0200 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaac.c: * ext/fdkaac/gstfdkaac.h: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/meson.build: * ext/fdkaac/plugin.c: fdkaacenc: Move channel layouts to gstfdkaac.c In preparation of sharing them with the decoder. Iteration of the channel layouts needs to be changed to use a sentinel element. Part-of: 2020-08-12 15:59:01 +1000 Matthew Waters * docs/plugins/gst_plugins_cache.json: * ext/vulkan/vksink.c: * gst-libs/gst/vulkan/gstvkapi.h: * gst-libs/gst/vulkan/gstvkbarrier.h: * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkbuffermemory.h: * gst-libs/gst/vulkan/gstvkbufferpool.h: * gst-libs/gst/vulkan/gstvkcommandbuffer.c: * gst-libs/gst/vulkan/gstvkcommandbuffer.h: * gst-libs/gst/vulkan/gstvkcommandpool.c: * gst-libs/gst/vulkan/gstvkcommandpool.h: * gst-libs/gst/vulkan/gstvkdebug.c: * gst-libs/gst/vulkan/gstvkdebug.h: * gst-libs/gst/vulkan/gstvkdescriptorcache.c: * gst-libs/gst/vulkan/gstvkdescriptorcache.h: * gst-libs/gst/vulkan/gstvkdescriptorpool.c: * gst-libs/gst/vulkan/gstvkdescriptorpool.h: * gst-libs/gst/vulkan/gstvkdescriptorset.c: * gst-libs/gst/vulkan/gstvkdescriptorset.h: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkerror.c: * gst-libs/gst/vulkan/gstvkerror.h: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkfence.h: * gst-libs/gst/vulkan/gstvkformat.c: * gst-libs/gst/vulkan/gstvkformat.h: * gst-libs/gst/vulkan/gstvkfullscreenquad.c: * gst-libs/gst/vulkan/gstvkfullscreenquad.h: * gst-libs/gst/vulkan/gstvkhandle.c: * gst-libs/gst/vulkan/gstvkhandle.h: * gst-libs/gst/vulkan/gstvkhandlepool.c: * gst-libs/gst/vulkan/gstvkhandlepool.h: * gst-libs/gst/vulkan/gstvkimagebufferpool.h: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/gstvkimageview.c: * gst-libs/gst/vulkan/gstvkimageview.h: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkinstance.h: * gst-libs/gst/vulkan/gstvkmemory.c: * gst-libs/gst/vulkan/gstvkmemory.h: * gst-libs/gst/vulkan/gstvkphysicaldevice.h: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkqueue.h: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvkswapper.h: * gst-libs/gst/vulkan/gstvktrash.c: * gst-libs/gst/vulkan/gstvktrash.h: * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/gstvkvideofilter.c: * gst-libs/gst/vulkan/gstvkvideofilter.h: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/gstvkwindow.h: * gst-libs/gst/vulkan/vulkan_fwd.h: * gst-libs/gst/vulkan/wayland/gstvkdisplay_wayland.c: * gst-libs/gst/vulkan/wayland/gstvkdisplay_wayland.h: * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.c: * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.h: vulkan: docs annotation updates Part-of: 2020-08-11 21:56:39 +1000 Matthew Waters * docs/libs/vulkan-wayland/index.md: * docs/libs/vulkan-wayland/sitemap.txt: * docs/libs/vulkan-xcb/index.md: * docs/libs/vulkan-xcb/sitemap.txt: * docs/libs/vulkan/index.md: * docs/libs/vulkan/sitemap.txt: * docs/meson.build: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan_fwd.h: * gst-libs/gst/vulkan/vulkan_mkenum.py: * gst-libs/gst/vulkan/wayland/wayland.h: * gst-libs/gst/vulkan/xcb/xcb.h: * pkgconfig/gstreamer-vulkan-uninstalled.pc.in: * pkgconfig/gstreamer-vulkan-wayland-uninstalled.pc.in: * pkgconfig/gstreamer-vulkan-wayland.pc.in: * pkgconfig/gstreamer-vulkan-xcb-uninstalled.pc.in: * pkgconfig/gstreamer-vulkan-xcb.pc.in: * pkgconfig/gstreamer-vulkan.pc.in: * pkgconfig/meson.build: build/vulkan: split vulkan gir also add to docs Part-of: 2020-08-05 18:41:45 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpesrc.cpp: wpe: WebView and WebContext handling fixes The WPEThreaded view is now split in 2 classes: - WPEContextThread handles the persistent WebKit thread, where all WebKit API calls should be handled. - WPEView: is created from the WPEContextThread. It handles the WebView and maintains the public interface on which wpesrc relies. This is the facade for the WebView, basically. It takes care of dispatching API calls into the context thread. With these fixes it is now possible to create (and reuse) mutlple wpesrc elements during the application lifetime. Fixes #1372 Part-of: 2020-08-07 09:26:19 +0300 Sebastian Dröge * ext/sctp/sctpassociation.c: sctp: fix build with GST_DISABLE_GST_DEBUG Part-of: 2020-07-25 17:56:43 +0100 Tim-Philipp Müller * ext/sctp/meson.build: * ext/sctp/usrsctp/meson.build: * ext/sctp/usrsctp/usrsctplib/meson.build: * meson_options.txt: sctp: hook up internal copy of libusrsctp to build Add option 'sctp-internal-usrsctp' so people can choose to build againts the distro version instead. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/870 Part-of: 2020-07-24 19:23:19 +0100 Tim-Philipp Müller * .indentignore: * ext/sctp/usrsctp/.gitignore: * ext/sctp/usrsctp/LICENSE.md: * ext/sctp/usrsctp/meson.build: * ext/sctp/usrsctp/meson_options.txt: * ext/sctp/usrsctp/usrsctplib/Makefile.am: * ext/sctp/usrsctp/usrsctplib/meson.build: * ext/sctp/usrsctp/usrsctplib/netinet/meson.build: * ext/sctp/usrsctp/usrsctplib/netinet/sctp.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_asconf.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_asconf.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_auth.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_auth.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_bsd_addr.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_bsd_addr.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_callout.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_callout.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_cc_functions.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_constants.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_crc32.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_crc32.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_header.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_indata.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_indata.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_input.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_input.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_lock_userspace.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_os.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_os_userspace.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_output.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_output.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_pcb.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_pcb.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_peeloff.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_peeloff.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_process_lock.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_sha1.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_sha1.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_ss_functions.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_structs.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_sysctl.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_sysctl.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_timer.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_timer.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_uio.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_userspace.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_usrreq.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctp_var.h: * ext/sctp/usrsctp/usrsctplib/netinet/sctputil.c: * ext/sctp/usrsctp/usrsctplib/netinet/sctputil.h: * ext/sctp/usrsctp/usrsctplib/netinet6/meson.build: * ext/sctp/usrsctp/usrsctplib/netinet6/sctp6_usrreq.c: * ext/sctp/usrsctp/usrsctplib/netinet6/sctp6_var.h: * ext/sctp/usrsctp/usrsctplib/user_atomic.h: * ext/sctp/usrsctp/usrsctplib/user_environment.c: * ext/sctp/usrsctp/usrsctplib/user_environment.h: * ext/sctp/usrsctp/usrsctplib/user_inpcb.h: * ext/sctp/usrsctp/usrsctplib/user_ip6_var.h: * ext/sctp/usrsctp/usrsctplib/user_ip_icmp.h: * ext/sctp/usrsctp/usrsctplib/user_malloc.h: * ext/sctp/usrsctp/usrsctplib/user_mbuf.c: * ext/sctp/usrsctp/usrsctplib/user_mbuf.h: * ext/sctp/usrsctp/usrsctplib/user_queue.h: * ext/sctp/usrsctp/usrsctplib/user_recv_thread.c: * ext/sctp/usrsctp/usrsctplib/user_recv_thread.h: * ext/sctp/usrsctp/usrsctplib/user_route.h: * ext/sctp/usrsctp/usrsctplib/user_socket.c: * ext/sctp/usrsctp/usrsctplib/user_socketvar.h: * ext/sctp/usrsctp/usrsctplib/user_uma.h: * ext/sctp/usrsctp/usrsctplib/usrsctp.h: sctp: import internal copy of usrsctp library There are problems with global shared state and no API stability guarantees, and we can't rely on distros shipping the fixes we need. Both firefox and Chrome bundle their own copies too. Imported from https://github.com/sctplab/usrsctp, commit 547d3b46c64876c0336b9eef297fda58dbe1adaf Date: Thu Jul 23 21:49:32 2020 +0200 Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/870 Part-of: 2020-08-12 11:57:10 +0100 Jose Quaresma * gst/proxy/gstproxysink.c: proxysink: event_function needs to handle the event when it is disconnecetd from proxysrc without this a disconneted proxysink fail when goes to play with error: Internal data stream error. streaming stopped, reason error (-5) Part-of: 2020-08-13 20:19:21 +0900 Seungha Yang * ext/closedcaption/gstcccombiner.c: cccombiner: Correct sink_query chain up and fix caps leaks Don't chain up to src_query() from sink_query() method, and returned caps by gst_static_pad_template_get_caps() needs to be cleared. Part-of: 2020-08-13 02:24:52 +0900 Seungha Yang * sys/mediafoundation/plugin.c: mediafoundation: Call MFShutdown when destroying plugin MFStartup and MFShutdown should be paired as documented in https://docs.microsoft.com/en-us/windows/win32/api/mfapi/nf-mfapi-mfstartup#remarks Otherwise valgrind-like tools would report false positive memory leak. Part-of: 2020-08-04 17:14:44 +0800 Xu Guangxin * sys/msdk/gstmsdkvpp.c: msdkvpp: do not hold too many input buffers in locked list If the surface is locked before vpp, upstream takes the reference. We do not need to take a reference for msdk in vpp. Part-of: 2020-08-03 15:29:08 +0800 Xu Guangxin * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdkvpp: refact, put input and output surface in diffrent list Part-of: 2020-08-12 17:03:00 +0000 Felix Yan * gst/videoparsers/gsth264parse.c: Correct typos in gsth264parse.c Part-of: 2020-07-07 04:31:50 +0900 Seungha Yang * sys/d3d11/gstd3d11format.c: d3d11: Handle newly added GST_VIDEO_TRANSFER_BT601 Use the value for mapping between DXGI_COLOR_SPACE_TYPE and GstVideoColorimetry. Part-of: 2020-08-12 17:11:57 +0900 Seungha Yang * sys/d3d11/gstd3d11utils.c: d3d11: Store more device information in context structure It would be more informative for debugging Part-of: 2020-08-12 17:02:31 +0900 Seungha Yang * sys/d3d11/gstd3d11utils.c: d3d11: Selected adapter index should be unsigned integer If d3d11device was created successfully, the index of adapter must not be negative value Part-of: 2020-08-11 17:17:39 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: h264parse: Add new H.264 levels The spec now list 6, 6.1 and 6.2. Part-of: 2020-08-08 19:59:49 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: remove spurious comment Part-of: 2020-08-08 19:59:11 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: check return value of gst_va_handle_set_context() Part-of: 2020-06-16 12:42:16 +0900 Hosang Lee * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: start closer to the edge in live streams It is more appropriate to start closer to the live edge in live streams. Some live streams maintain a large dvr window (over few hours in some cases), so starting from the first fragment will be too far away from the live edge. Part-of: 2020-08-07 09:37:20 +0300 Sebastian Dröge * ext/closedcaption/gstcccombiner.c: * tests/check/elements/cccombiner.c: cccombiner: Update for additional info parameter to the "samples-selected" signal See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/590 Part-of: 2020-07-24 17:31:36 +1000 Matthew Waters * meson.build: * sys/applemedia/meson.build: * sys/nvcodec/meson.build: build: update for gl pkg-config file split Part-of: 2020-08-06 19:11:34 +0200 Mathieu Duponchelle * docs/meson.build: docs: include *.cc and *.hh in gst-c-sources Part-of: 2020-08-04 16:33:34 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encoder.hh: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mpeg2enc/gstmpeg2encoptions.hh: mpeg2enc: add disable-encode-retries property MJPEG Tools may reencode pictures in a second pass to stick closer to the target bitrate. This can result in slower than real-time encoding for full HD content in certain situations, as entire GOPs need reencoding when the reference picture is reencoded. See https://sourceforge.net/p/mjpeg/bugs/141/ for background Part-of: 2020-08-04 16:05:55 +0200 Mathieu Duponchelle * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: report a latency Part-of: 2020-08-04 16:05:33 +0200 Mathieu Duponchelle * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: mpeg2enc: finalize GstVideoEncoder port Part-of: 2013-06-23 16:38:49 +0100 Tim-Philipp Müller * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.hh: mpeg2enc: store video encoder instance directly in stream writer class Instead of storing the pad and then only using it to get the element. Part-of: 2013-06-23 16:33:59 +0100 Tim-Philipp Müller * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.hh: mpeg2enc: remove unused streamwriter member 'buf' Part-of: 2013-06-23 15:07:53 +0100 Tim-Philipp Müller * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: remove some unused code Part-of: 2013-06-23 14:32:15 +0100 Tim-Philipp Müller * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.hh: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.hh: mpeg2enc: remove code paths for older mjpegtools versions Gets rid of lots of code paths that no one has built, used or tested for ages, and makes code more maintainable. Part-of: 2012-10-01 13:11:29 +0200 Alban Browaeys * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2enc.hh: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: mpeg2enc: initial port to GstVideoEncoder base class https://bugzilla.gnome.org/show_bug.cgi?id=685414 Part-of: 2020-08-05 10:52:08 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Re-order modes enum for backwards compatibility with 1.16 The PAL/NTSC widescreen modes were added after 1.16 but inserted before the HD modes, which changed the integer values of the enums. Move them to the very end instead to keep backwards compatibility. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1048 Part-of: 2020-08-05 11:21:48 +0300 Sebastian Dröge * ext/srt/gstsrtobject.c: srt: Add support for using hostnames instead of IP addresses If an address can't be parsed as IP address, try resolving it via GResolver instead. SRT URIs more often than not contain hostnames and without trying to resolve them we won't be able to handle such URIs. Part-of: 2020-08-05 16:57:15 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: update to new samples selection API Part-of: 2020-08-05 12:35:12 +0300 Jordan Petridis * ext/opencv/meson.build: * gst-libs/gst/opencv/meson.build: opencv: compile with -Wno-format-nonliteral opencv plugin is pulling a header which makses clang++ 10 complain a lot and blocks -werror. ``` /usr/include/opencv4/opencv2/flann/logger.h:83:36: error: format string is not a string literal [-Werror,-Wformat-nonliteral] int ret = vfprintf(stream, fmt, arglist); ^~~ ``` Part-of: 2020-08-05 12:31:53 +0200 Guillaume Desmottes * gst-libs/gst/player/gstplayer.h: player: Add g_autoptr() support Part-of: 2020-08-03 18:40:31 +0300 Jordan Petridis * ext/lv2/gstlv2utils.c: gstlv2utils.c: avoid implicit float to int conversion Part-of: 2020-08-03 18:35:56 +0300 Jordan Petridis * gst/autoconvert/gstautoconvert.c: gstautoconvert.c: fix clang warnings clang 10 is complaining about incompatible types due to the glib typesystem. ``` gst-plugins-bad/gst/autoconvert/b5c3019@@gstautoconvert@sha/gstautoconvert.c.o' -c ../subprojects/gst-plugins-bad/gst/autoconvert/gstautoconvert.c ../subprojects/gst-plugins-bad/gst/autoconvert/gstautoconvert.c:898:8: error: incompatible pointer types passing 'typeof ((((void *)0))) *' (aka 'void **') to parameter of type 'GList **' (aka 'struct _GList **') [-Werror,-Wincompatible-pointer-types] if (!g_atomic_pointer_compare_and_exchange (&autoconvert->factories, NULL, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/glib-2.0/glib/gatomic.h:192:44: note: expanded from macro 'g_atomic_pointer_compare_and_exchange' __atomic_compare_exchange_n ((atomic), &gapcae_oldval, (newval), FALSE, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) ? TRUE : FALSE; \ ^~~~~~~~~~~~~~ 1 error generated. ``` Part-of: 2020-08-03 18:25:28 +0300 Jordan Petridis * ext/ladspa/gstladspautils.c: gstladspautils.c: avoid implicit float to int conversion Part-of: 2020-07-27 15:45:49 +0200 Andrew Branson * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-camera.h: androidmedia: ignore additional camera effects if not present Fixes https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/283 Part-of: 2020-08-04 05:34:23 +0530 Nirbheek Chauhan * meson.build: meson: Only look for Obj-C/C++ compilers on macOS/iOS On Windows, MinGW-GCC Objective-C/C++ compilers can be in PATH and mess up the build since they may not match the CPU family of the C/C++ compilers we are using. Also require them on macOS/iOS, because they should always be present. Fixes https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/88 Part-of: 2020-08-04 10:38:30 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: log if upstream pool is kept Part-of: 2020-08-04 10:24:49 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvautils.c: va: utils: fix precondition check for handle_context_query() display paramater can be NULL, but if it's not, it has to be a GstVaDisplay. Part-of: 2020-08-04 10:20:46 +0200 Víctor Manuel Jáquez Leal * tests/examples/va/main.c: va: tests: example: Fix memory leaks Part-of: 2020-07-30 18:26:34 +0200 Francisco Javier Velázquez-García * ext/srt/gstsrtobject.c: srtobject: Add support for IPv6 Part-of: 2020-07-30 18:26:34 +0200 Francisco Javier Velázquez-García * ext/srt/gstsrtobject.c: srtobject: Reset parameters before setting URI This makes `gst_srt_object_validate_parameters` work properly since `localaddress` and `localport` will be missing if the URL did not provide them. Part-of: 2020-07-30 18:26:33 +0200 Francisco Javier Velázquez-García * ext/srt/gstsrtobject.c: srtobject: Simplify gst_srt_object_set_*_value This fixes `gst_srt_object_set_string_value` in particular because the value might not be a static string. Part-of: 2020-07-30 18:26:33 +0200 Francisco Javier Velázquez-García * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: srtobject: Store passphrase like other parameters Part-of: 2020-08-01 02:18:39 +0530 Nirbheek Chauhan * ext/webrtc/gstwebrtcice.c: * gst/rtmp2/gstrtmp2locationhandler.c: webrtc, rtmp2: Warn if the user or password aren't escaped If the user/pass aren't escaped, the userinfo will be ambiguous and we won't know where to split. We will accidentally get it right if the : belongs in the password. Part-of: 2020-08-01 02:12:21 +0530 Nirbheek Chauhan * ext/webrtc/gstwebrtcice.c: * gst/rtmp2/gstrtmp2locationhandler.c: webrtc, rtmp2: Fix parsing of userinfo in URI strings While parsing the string, `gst_uri_from_string()` also unescapes the userinfo. This is bad if your username contains a `:` character, since we will then split the userinfo at the wrong location when parsing it. To fix this, we can use the new `gst_uri_from_string_escaped()` API that was added in https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/583 Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/831 Part-of: 2020-08-03 13:50:23 +0200 Víctor Manuel Jáquez Leal * tests/examples/meson.build: * tests/examples/va/main.c: * tests/examples/va/meson.build: tests: examples: add va-x11-render example This a GTK+ example will share, through GstContext, a custom X11 VADisplay to a pipeline using vah264dec and appsink. When the frames are processed for rendering, the VASurfaceID is fetched from the buffer and it is rendered using vaPutSurface in a X11 widget. 2020-08-03 13:45:49 +0200 Víctor Manuel Jáquez Leal * tests/examples/meson.build: tests: examples: Comply with compilation order 2020-08-02 17:52:50 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: va: allocator: support for GST_MAP_VA map flag This flag will return the VASurface value at mapping 2020-08-02 15:51:08 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: * sys/va/gstvautils.c: * sys/va/gstvautils.h: * sys/va/meson.build: va: context: instanciate VA display through GstContext Add all the machinery to instanciate VA display through GstContext, thus all va elements can share the same display and the user can set a custom one. 2020-08-03 13:44:23 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: don't copy frames if VAMemory capsfeature is negotiated Otherwise the VASurfaceID is lost. 2020-08-03 13:42:54 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: va: h264dec: copy render_device_path in klass It it's not copied both cdata and klass, the string is lost. Thus also it's freed from cdata when freeing it. 2020-08-03 13:42:00 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadisplay_wrapped.c: va: display: wrapped: Fix property name 2020-08-02 15:54:31 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: va: decoder: remove unused argument And that changes function's namespace 2020-08-01 21:59:30 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: va: caps: bail raw caps if driver doesn't report surface formats This is a bug in Gallium RadeonSI driver for Polaris10, which doesn't report sufrace formats for reported chroma. If one chroma doesn't report surface formats, skip the generated caps. Part-of: 2020-08-01 15:47:19 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvaallocator.c: * sys/va/gstvaallocator.h: * sys/va/gstvacaps.c: * sys/va/gstvacaps.h: * sys/va/gstvadecoder.c: * sys/va/gstvadecoder.h: * sys/va/gstvah264dec.c: * sys/va/gstvavideoformat.c: * sys/va/gstvavideoformat.h: va: allocator: get a surface format from a image format For the allocator to create surfaces with the correct chroma an fourcc, it should use a surface format, not necessarily the negotiated format. Instead of the previous arbitrary extra formats list, the decoder extracts the valid pixel formats from the given VA config, and pass that list to the allocator which stores it (full transfer). Then, when the allocator allocates a new surface, it looks for a surface color format chroma-compatible with the negotiated image color format. Part-of: 2020-08-01 15:03:22 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvacaps.c: va: caps: add raw caps image formats with same chroma of surfaces Instead of adding a list of ad-hoc formats for raw caps (I420 and YV12), the display queries the available image formats and we assume that driver can download frames in that available format with same chroma of the config surfaces chroma. Part-of: 2020-07-27 11:14:02 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadisplay.c: * sys/va/gstvadisplay.h: * sys/va/gstvavideoformat.c: * sys/va/gstvavideoformat.h: va: display: add gst_va_display_get_image_formats() For this it was also added gst_va_video_format_from_va_image_format() Part-of: 2020-07-27 11:14:49 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvadecoder.c: va: decoder: initialize rt_formas to zero Part-of: 2020-08-03 19:49:15 +0900 Seungha Yang * sys/d3d11/gstd3d11download.c: d3d11download: Allow linking with downstream d3d11 elements It will make pipeline configuration easier since d3d11download element can be placed unconditionally. This behavior is similar to that of gldownload element. Part-of: 2020-07-27 16:37:20 +0300 Sebastian Dröge * ext/hls/gsthlssink2.c: hlssink2: Don't assert if we don't have a current location when receiving the fragment-closed message This can happen if the application did not provide an output stream for the fragment and didn't handle the error message before splitmuxsink decided to consider the fragment closed. Part-of: 2020-07-31 23:38:56 +0200 Nicola Murino * ext/opencv/meson.build: opencv: allow compilation against 4.4.x Part-of: 2020-08-01 02:19:07 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/mediacapturewrapper.cpp: * sys/mediafoundation/mediacapturewrapper.h: mfvideosrc: Select common formats if both VideoPreview and VideoRecord are available Some devices (e.g., Surface Book 2, Surface Pro X) will expose both MediaStreamType_VideoPreview and MediaStreamType_VideoRecord types for a logical device. And for some reason, MediaStreamType_VideoPreview seems to be selected between them while initiailzing device. But I cannot find any documentation for the decision rule. To be safe, we will select common formats between them. Part-of: 2020-08-01 00:53:46 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: mfvideosrc: Check framerate for target IMediaFrameFormat selection Not only resolution and format, but framerate needs to be checked for proper target IMediaFrameFormat selection. Part-of: 2020-07-31 03:46:39 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: mfvideosrc: Handle I420/IYUV subtypes for UWP cases Microsoft defines two I420 formats, one is I420, and the other is IYUV (but both are same, just names are different). Since both will be converted to GST_VIDEO_FORMAT_I420, we should check both I420 and IYUV subtypes during GstVideoFormat to Microsoft's format conversion. Part-of: 2020-07-31 03:26:35 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: * sys/mediafoundation/mediacapturewrapper.h: mfvideosrc: Add more debug log It would be useful for finding the error reason. Part-of: 2020-07-31 21:07:15 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: docs: Update wasapi2 and mfvideosrc doc Part-of: 2020-07-31 20:57:29 +0900 Seungha Yang * sys/mediafoundation/gstmfvideosrc.c: * sys/wasapi2/gstwasapi2sink.c: * sys/wasapi2/gstwasapi2src.c: wasapi2, mfvideosrc: Update "dispatcher" property to be only writable Disallow getting dispatcher pointer, since it doesn't seem to be useful and might not be safe. Part-of: 2020-07-01 03:59:56 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: * tests/check/elements/cccombiner.c: cccombiner: implement samples selection API Call gst_aggregator_selected_samples() after identifying the caption buffers that will be added as a meta on the next video buffer. Implement GstAggregator.peek_next_sample. Add an example that demonstrates usage of the new API in combination with the existing buffer-consumed signal. Part-of: 2020-07-29 00:04:40 +0200 Mathieu Duponchelle * ext/wpe/gstwpesrc.cpp: wpesrc: timestamp buffers when working with SHM buffers GLBaseSrc::fill() will take care of that when dealing with images, but as we don't chain up when dealing with SHM buffers this needs to be done in order for GLBaseSrc::get_times() to work appropriately. Part-of: 2020-07-28 23:28:12 +0200 Mathieu Duponchelle * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: wpe: fix ready signalling Receiving the WEBKIT_LOAD_COMMITTED event doesn't actually mean we have committed an SHM buffer / image yet. As this is the condition we are interested in, check it instead. Also wrap g_cond_wait in a loop for extra correctness points. Part-of: 2020-07-28 11:43:47 +0100 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: basecamerabinsrc: silence g-ir-scanner warnings They're legit, but there's lots of other stuff that needs fixing up in this API, so just silence for now and add a FIXME and leave it for some other day. Part-of: 2020-07-28 12:24:07 +0300 George Kiagiadakis * gst/rist/gstristsrc.c: ristsrc: drop stream-start & eos messages posted from the internal udp sink(s) See #1368 Part-of: 2020-07-28 12:16:10 +0300 George Kiagiadakis * gst/rtp/gstrtpsrc.c: rtpsrc: drop stream-start & eos messages posted from the internal udp sink(s) See #1368 Part-of: 2020-07-10 21:14:01 +0300 Vivia Nikolaidou * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: tsmux: Fix PCR calculation for CBR live streams Take the first ever timestamp as an offset Part-of: 2020-07-15 16:25:07 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/tsmux/tsmux.c: tsmux: Refactor get_current_pcr No functional change. Part-of: 2020-07-28 11:27:37 +0100 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabinpreview: fix potential crash on preview pipeline error Post error message on actual element, not the allocated helper struct. Part-of: 2020-07-22 16:32:37 +0900 Damian Hobson-Garcia * ext/wayland/wlbuffer.c: * ext/wayland/wlbuffer.h: waylandsink: Update stale GstBuffer references in wayland buffer cache "waylandsink: use GstMemory instead of GstBuffer for cache lookup" changes the cache key to GstMemory, but the cached data still needs a pointer to the GstBuffer to control the buffer lifecycle. If the GstMemory used as the cache key moves from one GstBuffer to another, the pointer in the cached data will be out-of-date. Update the current GstBuffer pointer for each frame so that it always represents the currently in use (from attach to release) GstBuffer for each wl_buffer. Part-of: 2020-07-25 20:40:52 +0900 Seungha Yang * sys/wasapi2/gstwasapi2device.c: wasapi2device: Allow empty caps for UWP use case If the device has not been activated yet, caps might not be available. Part-of: 2020-07-25 00:17:29 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2client.h: * sys/wasapi2/gstwasapi2sink.c: * sys/wasapi2/gstwasapi2src.c: wasapi2: Activate device asynchronously if required In case of UWP, documentation from MS is saying that ActivateAudioInterfaceAsync() method should be called from UI thread. And the resulting callback might not happen until user interaction has been made. So we cannot wait the activation result on constructed() method. and therefore we should return gst_wasapi2_client_new() immediately without waiting the result if wasapi2 elements are running on UWP application. In addition to async operation fix, this commit includes COM object reference counting issue around ActivateAudioInterfaceAsync() call. Part-of: 2020-07-24 21:53:37 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2client.h: * sys/wasapi2/gstwasapi2device.c: * sys/wasapi2/gstwasapi2sink.c: * sys/wasapi2/gstwasapi2src.c: wasapi2: Add a new property for ICoreDispatcher setting ... so that ensure device activation on UI thread. Part-of: 2020-07-25 00:24:45 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: * sys/mediafoundation/mediacapturewrapper.h: mfvideosrc: Only device activation needs to be running on UI thread ... and the other operations does not have the thread constraint. Part-of: 2020-07-24 20:48:20 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfcapturewinrt.h: * sys/mediafoundation/gstmfdevice.c: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfvideosrc.c: * sys/mediafoundation/mediacapturewrapper.cpp: * sys/mediafoundation/mediacapturewrapper.h: mfvideosrc: Add a new property for ICoreDispatcher setting Since the commit c29c71ae9d46cc70e29e0cca2313917f319ef6f2, device activation method will be called from an internal thread. A problem is that, CoreApplication::GetCurrentView() method will return nullptr if it was called from non-UI thread, and as a result, currently implemented method for accessing ICoreDispatcher will not work in any case. There seems to be no robust way for accessing ICoreDispatcher other then setting it by user. Part-of: 2020-07-26 05:42:27 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: mfvideosrc: Suppress more spammy debug messages The failure on compressed format (e.g., MJPG, H264 subtypes) is expected. Part-of: 2020-07-25 19:36:10 +0100 Tim-Philipp Müller * ext/directfb/meson.build: * tests/examples/directfb/meson.build: directfb: suppress compiler warning from directfb headers On debian sid, directfb 1.7.7 Part-of: 2020-07-24 01:56:27 +0900 Seungha Yang d3d11window: Remove timeout and wait a task if possible If the run_async() method is expected to be called from streaming thread and not from application thread, use INFINITE as timeout value so that d3d11window can wait UI dispatcher thread in any case. There is no way to get a robust timeout value from library side. So the fixed timeout value might not be optimal and therefore we should avoid it as much as possible. Rule whether a timeout value can be INFINITE or not is, * If the waiting can be cancelled by GstBaseSink:unlock(), use INFINITE. GstD3D11Window:on_resize() is one case for example. * Otherwise, use timeout value Some details are, GstBaseSink:start() and GstBaseSink:stop() will be called when NULL to READY or READY to NULL state change, so there will be no chance for GstBaseSink:unlock() and GstBaseSink:unlock_stop() to be called around them. So there is no other way then timeout way. GstD3D11Window:consturcted() and GstD3D11Window:unprepare() are the case. Part-of: 2020-07-24 01:43:16 +0900 Seungha Yang * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: d3d11window: Increase timeout to 10 sec for WinRT window implementations No strong reason for this number, but we can follow other well known UWP implementation ANGLE. Part-of: 2020-07-23 17:45:03 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp8decoder.h: * sys/d3d11/gstd3d11vp8dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: codecs: vp8decoder: Sync up with h264decoder implementation Pass GstVideoCodecFrame with GstVp8Picture to new_picture() and output_picture() methods for subclass to be able to reference it directly. Part-of: 2020-07-23 17:26:37 +0900 Seungha Yang * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2codecs: vp8dec: Remove white space Part-of: 2020-07-23 17:00:52 +0200 Stéphane Cerveau * meson.build: meson: add a plugin summary This summary displays a list of plugins which have been enabled. Part-of: 2020-06-29 17:31:15 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/iqa/iqa.c: * ext/iqa/iqa.h: iqa: Add a 'mode' property This property currently only supports a 'strict' that checks that all the input streams have the exact same number of frames. Part-of: 2020-06-29 17:28:30 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/iqa/iqa.c: iqa: Implement child proxy Part-of: 2020-07-21 23:08:15 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * sys/d3d11/gstd3d11vp9dec.c: codecs: vp9decoder: Sync up with h264decoder implementation * Pass GstVideoCodecFrame to new_picture() and output_picture() * Pass the last reference of GstVp9Picture to subclass if possible Part-of: 2020-07-23 23:01:03 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2: Fix broken debug log I hope that MSVC is smart enought to warn this at build time Part-of: 2020-07-23 18:03:23 +0900 Seungha Yang * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264dec: Remove outdated comment ... and unnecessary user data clear on GstVideoCodecFrame Part-of: 2020-07-23 17:48:56 +0900 Seungha Yang * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264dec: Fix leak on decoding failure Given GstVideoCodecFrame and GstH264Picture should be cleared, and the return must be GST_FLOW_ERROR, not boolean value. Part-of: 2020-07-22 02:20:07 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Disable array-of-texture Some 4K VP9 + super frame enabled streams would be broken with array-of-texture configuration (i.e., allowing runtime texture registration for DPB). Part-of: 2020-07-22 17:50:58 +0900 Seungha Yang * sys/mediafoundation/gstmfutils.cpp: mfutils: Suppress spammy debug print Remove FIXME debug print. It seems to be spammy. Part-of: 2020-07-21 16:52:33 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: mfvideosrc: Expose sorted caps Sort the list of supported caps for downstream to be able to select the best image in terms of quality (resolution and framerate) by default. Part-of: 2020-07-21 15:48:08 +0900 Seungha Yang * sys/mediafoundation/gstmfsourcereader.cpp: mfvideosrc: Don't expose unsupported formats Some UVC cameras support H.264 stream but we don't support it yet. Part-of: 2020-07-14 13:18:25 +0200 Víctor Manuel Jáquez Leal * docs/plugins/gst_plugins_cache.json: docs: update plugins doc cache Add va plugin Part-of: 2020-07-20 16:37:35 +0200 Víctor Manuel Jáquez Leal * sys/va/plugin.c: va: documentation since tag Part-of: 2020-07-14 13:17:35 +0200 Víctor Manuel Jáquez Leal * sys/va/gstvah264dec.c: vah264dec: add documentation caps for pad templates Part-of: 2020-07-21 23:44:03 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Disable d3d11 video processor for HDR10 stream. d3d11 video processor is showing buggy behaviors in various cases. And this HDR10 is one case of them. Part-of: 2020-07-21 22:36:14 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264decoder: Fix wrong annotations What intended was GstH264Decoder actually. Part-of: 2020-07-21 18:17:09 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Update document with Since marks To make documentation CI happy with the newly added APIs. Part-of: 2020-07-21 17:53:29 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264decoder: Rename API arguments Although it's not public ones, make them consistent with vfunc for them to be nicer. Part-of: 2020-07-20 16:55:10 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264dec: Use the new picture lookup This will avoid having to create a reference chain from CodecFrame to GstH264Picture to GstV4l2Request. Part-of: 2020-07-20 16:48:32 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: h264decoder: Add ability to lookup by system_frame_number This is to avoid having to create a reference chain in decoders from GstVideoCodecFrame to GstH264PIcture to implementation wrapper. So this change introduces: - gst_h264_dpb_remove_outputed (dpb) - gst_h264_dpb_get_picture(dpb, system_frame_num) - gst_h264_decoder_get_picture (dec, system_frame_num) In order to ensure that frames can be looked up during the draining process, we now first remove all (including reference) frames that have been outputed but are still in the DPB. Then for each remaining buffers, we remove it from the DPB to reach reference 1 and output it. Previously we could take all not outputed outside of the DPB which would prevent lookup by the base class. Part-of: 2020-07-20 19:13:29 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Make GstVideoCodecFrame hold the last reference of the buffer ... when gst_video_decoder_finish_frame() is called. Some subclasses attach GstBuffer to GstH264Picture as an user data which will increase reference count of the buffer. It would result to buffer copy per every frame. Background here is, GstVideoDecoder wants writable output buffer for GstMeta handling, and if the output buffer is not writable (i.e., reference count is not one), the buffer will be copied. Even if underlying GstMemory wouldn't be copied, buffer copy operation will introduce extra memory allocation overhead which is not optimal. By this modification, subclass might be able to receive the last reference to GstH264Picture Part-of: 2020-07-20 18:24:09 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/nvcodec/gstnvh264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/va/gstvah264dec.c: codecs: h264decoder: Pass GstVideoCodecFrame to output_picture() All subclasses are retrieving list to get target output frame, which can be done by baseclass. And pass the ownership of the GstH264Picture to subclass so that subclass can clear implementation dependent resources before finishing the frame. Part-of: 2020-07-20 17:45:12 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/nvcodec/gstnvh264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/va/gstvah264dec.c: codecs: h264decoder: Don't attach extra ref of GstH264Picture to GstVideoCodecFrame The lifecycle of GstH264Picture is being managed by our DPB implementation. If it's still required, subclass can do that by itself in the new_picture() method. Part-of: 2020-07-21 01:05:47 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: mfvideosrc: Don't error out when if we've found supported format While retrieving supported formats by device, the last return might not be S_OK in case that it's not supported one by us (e.g., H264, JPEG or so). But if we've found at least one supported raw video format, we can keep going on. Part-of: 2020-07-20 20:54:26 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Drop non-decodable frames Otherwise GstVideoDecoder baseclass will hold the corresponding broken frames until new reset event happens such as FLUSH or downwards state change. Part-of: 2020-07-17 15:14:48 +1000 Matthew Waters * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: webrtc: remove private properties/signals from the now public ice object We don't want to expose all of the webrtcbin internals to the world. Part-of: 2020-07-16 19:26:55 +0900 Seungha Yang * sys/d3d11/gstd3d11utils.c: * sys/mediafoundation/gstmfutils.cpp: * sys/wasapi/gstwasapiutil.c: * sys/wasapi2/gstwasapi2util.c: * sys/winscreencap/dxgicapture.c: plugins: Use g_win32_error_message for HRESULT to string conversion We don't need to duplicate a method for HRESULT error code to string conversion. This patch is intended to * Remove duplicated code * Ensure FormatMessageW (Unicode version) and avoid FormatMessageA (ANSI version), as the ANSI format is not portable at all. Note that if "UNICODE" is not defined, FormatMessageA will be aliased as FormatMessage by default. Part-of: 2020-07-17 15:58:16 +0900 Seungha Yang * sys/wasapi2/gstwasapi2util.c: wasapi2util: Fix wrong use of debug category Haven't noticed so far since there is no debug statement in the source file. Part-of: 2020-07-16 13:32:56 -0700 Ederson de Souza * ext/avtp/gstavtp.c: avtp: Update documentation - Mention that a new capability is required by "avtpsink" element; - Use "clockselect" element to change pipeline clock, instead of a gst-launch option that never saw the light of day. Part-of: 2020-07-15 10:39:33 +0200 Silvio Lazzeretti * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: added missing lock release in case of error in gst_wasapi_xxx_reset Part-of: 2020-07-15 13:30:48 +0900 Damian Hobson-Garcia * ext/wayland/wlbuffer.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: use GstMemory instead of GstBuffer for cache lookup The GstMemory objects contained in a GstBuffer could be replaced by an upstream element, which would break the association beteen the GstBuffer and the wayland wl_buffer, make the cache lookup results incorrect. This patch changes the cache lookup to use the first GstMemory in a buffer instead. For multi-plane buffers, this assumes that all of the GstMemory(s) will always be moved together as a set, and that the same (first) GstMemory isn't used with different combinations of other GstMemory(s). Part-of: 2020-07-08 19:06:38 +0900 Damian Hobson-Garcia * ext/wayland/gstwaylandsink.c: * ext/wayland/wlbuffer.c: * ext/wayland/wlbuffer.h: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: Keep per display wayland buffer caches Instead of attaching a single wayland wl_buffer to each GStBuffer as qdata, keep a separate cache for each display. A unique wl_buffer and associated metadata is created for each display. This allows for sharing of GstBuffer objects between multiple displays, such as when using tee elements. Part-of: 2020-07-14 21:49:33 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2format.c: v4l2codecs: Enable 32x32 tiled NV12 support This is used by Cedrus driver to support Allwinner VPU, also known as the sunxi platforms. Part-of: 2020-07-15 12:43:20 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: docs: update for new pixel formats https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/753 https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/754 Part-of: 2020-07-10 21:58:23 +0300 Jordan Petridis * gst-libs/gst/opencv/meson.build: opencv: suppress another warning about non-existent include dirs Ammend to 92456967d0fbdb57f7bf089b06d930b7d30bc417 !1427 The .pc file of opencv4 seems to be broken Part-of: 2020-07-15 08:37:39 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add the missing comma Otherwise main-444 and main-444-10 are concatenated Part-of: 2020-07-14 17:06:59 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Updated cache file for the new pixel format Part-of: 2020-07-11 15:41:51 -0400 Nicolas Dufresne * gst/rtp/gstrtpsrc.c: rtpsrc: Add domain name support This add domain name resolution (similar to udpsrc does) to the rtpsrc element. Fixes 1352 Part-of: 2020-07-11 15:40:40 -0400 Nicolas Dufresne * gst/rist/gstristsrc.c: ristsrc: Add support for domain name This add domain name resolution (similar to udpsrc does) to the ristsrc element. Fixes 1352 Part-of: 2020-07-11 15:16:53 -0400 Nicolas Dufresne * gst/rtp/gstrtpsrc.c: rtpsrc: Always set rtcp socket address Regardless if it's multicast or not, set the address property to match the element address. This is the address of the interface to listen to, which is expected to be ANY in most cases, but should be honnored even for RTCP non-multicast case. This also fixes an assertion if the address is not a parsable IPv4 or IPv6 string. Part-of: 2020-07-11 15:21:33 -0400 Nicolas Dufresne * gst/rtp/gstrtpsink.c: rtpsink: Fix error handling on bad DNS This will properly print the DNS being attempted to resolved and avoid trying to unref a NULL pointer. Part-of: 2020-07-10 18:03:20 -0400 Nicolas Dufresne * gst/rist/gstristsink.c: ristsink: Fix error handling on bad DNS This will properly print the DNS being attempted to resolved and avoid trying to unref a NULL pointer. Part-of: 2020-07-14 19:59:09 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfdevice.c: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfvideosrc.c: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mfvideosrc: Enable WinRT capture impl. for desktop target ... if target OS version was specified as Windows 10. When enabled, desktop application can select target capture implementation between WinRT and Win32 via GST_USE_MF_WINRT_CAPTURE environment (e,g., GST_USE_MF_WINRT_CAPTURE=1 for WinRT impl.). Default is Win32 implementation in case of desktop target. Part-of: 2020-06-25 17:51:11 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Fix possible invalid memory access ... and do more strict validation for num_tile_columns_minus1 and num_tile_rows_minus1. As per specification Table A.8, allowed maximum number of tile rows and tile columns are 22 and 20, respectively. So we should adjust the size of each array. Part-of: 2020-07-12 01:22:55 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11window.cpp: d3d11decoder: Disable zero-copy for Qualcomm devices Qualcomm driver looks buggy in zero-copy scenario. Even if we disable zero-copy, device-to-device memory copy will be used with d3d11videosink which should be fast enough. Part-of: 2020-06-29 15:12:47 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add support for screen content coding extension Because the valid input formats for screen content coding extension is a subset of input formats for range extension, user must specify the profile for screen content coding extension in the caps filter Example: gst-launch-1.0 videotestsrc ! video/x-raw,format=NV12 ! msdkh265enc low-power=1 ! video/x-h265,profile=screen-extended-main ! fakesink Part-of: 2020-06-23 13:12:55 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: allow user to choose profile Example: gst-launch-1.0 videotestsrc ! video/x-raw,format=NV12 ! msdkh265enc ! video/x-h265,profile=main-444 ! fakesink Part-of: 2020-07-09 14:46:58 +0800 Haihao Xiang * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdkenc: support tune property in msdkh264enc and msdkh265enc Introduce a new property for encoding mode selection, the default value for this new property allows the SDK to decide what to do. In addition, low-power is marked as deprecated since this fix Part-of: 2020-07-09 09:01:23 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: Revert "msdkh265enc: let MSDK select the encoding mode by default" This reverts commit 9e977832c1761e3ad002fdfe14a9c3881a60bd45. Part-of: 2020-07-01 18:42:18 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpaafpay.c: * ext/avtp/gstavtpaafpay.h: * tests/check/elements/avtpaafpay.c: avtp: rename tstamp-mode to timestamp-mode I thnk w cn spre the xtra lttrs. Part-of: 2020-07-10 17:13:47 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: basetsmux: make use of gst_aggregator_finish_buffer_list Fixes #1276 Part-of: 2020-07-10 15:26:27 +0100 Tim-Philipp Müller * gst/audiofxbad/gstaudiochannelmix.c: * gst/camerabin2/gstviewfinderbin.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstclockselect.c: * gst/debugutils/gstwatchdog.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstivtc.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstzebrastripe.c: * gst/videoparsers/gstdiracparse.c: * gst/y4m/gsty4mdec.c: docs: fix element names in section headers Hopefully that'll make hotdoc pick up the docs for these elements. Part-of: 2020-07-10 14:56:50 +0100 Tim-Philipp Müller * ext/opencv/meson.build: opencv: suppress warnings about non-existent include dirs Looks like opencv4 ships with a broken .pc file. Part-of: 2020-07-08 19:56:13 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: docs: fix up for errorignore convert-error signal removal The commit that added that was reverted. Need to remove this from docs cache manually. Part-of: 2020-07-09 00:13:03 +0900 Seungha Yang * sys/d3d11/meson.build: d3d11: Disable D3D11Debug and DXGIDebug layer for UWP build WACK (Windows App Certification Kit) doesn't seem to be happy with the DXGIGetDebugInterface1 symbol. Part-of: 2020-07-08 17:16:46 +0100 Tim-Philipp Müller * meson.build: * scripts/extract-release-date-from-doap-file.py: meson: set release date from .doap file for releases Part-of: 2020-07-08 18:24:06 +0300 Vivia Nikolaidou * ext/closedcaption/gstcccombiner.c: cccombiner: Update segment according to video sink pad Otherwise the following pipeline would preroll after 1000 hours: gst-launch-1.0 videotestsrc ! x264enc ! cccombiner ! fakesink silent=0 sync=1 -v Fixes #1355 Part-of: 2020-06-30 13:40:28 +0200 Andreas Frisch * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: Don't assume English for ISO-639 language descriptor Previously, "en" (should have actually been "eng") was assumed for the ISO-639 language descriptor if no language was explicitely given. Neither ETSI EN 300 468 nor ATSC A/52 mandate for a language descriptor, so we should simply not set it, if it's unknown. Part-of: 2020-06-18 04:03:59 +1000 Jan Schmidt * docs/plugins/gst_plugins_cache.json: * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmuxaac.c: * gst/mpegtsmux/gstbasetsmuxaac.h: * gst/mpegtsmux/gstmpegtsmux.c: mpegtsmux: Fix handling of MPEG-2 AAC The audio/mpeg,mpegversion=2 caps in GStreamer refer to MPEG-2 AAC (ISO 13818-7), not to the extended MP3 (ISO 13818-3), which is audio/mpeg,mpegversion=1,mpegaudioversion=2/3 Fix the caps, and add handling for MPEG-2 AAC in both ADTS and raw form, adding ADTS headers for the latter. 2020-07-08 11:39:58 +0100 Tim-Philipp Müller * meson.build: meson: Fix up update-orc-dist target for the case where there are no orc targets All those plugins might have been disabled, in which case meson would complain about alias_target() needing at least two arguments. Part-of: 2020-07-08 10:54:49 +0100 Tim-Philipp Müller * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: pkgconfig: fix meson warning about waylandlib not being in the config data meson.build:58: WARNING: The variable(s) 'waylandlibdir' in the input file 'subprojects/gst-plugins-bad/pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in' are not present in the given configuration data. We don't provide a .pc file for this lib nor install its headers, so no need for this path to be in the uninstalled .pc file really. Part-of: 2020-07-07 19:55:00 +0100 Tim-Philipp Müller * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/meson.build: * gst/transcode/gsttranscodebin.c: * gst/transcode/meson.build: rtmp, transcodebin: fix i18n header includes Fixes #1351 Part-of: 2020-07-07 10:03:42 -0400 Nicolas Dufresne * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: Use g_signal_connect_object() rtpbin can still emit signals when it is being disposed, and while rtpbin is inside ristsrc/ristsink it can still live longer. So we either have disconnect all signals at some point, or let GObject take care of that automatically. Related to !1412 Part-of: 2020-02-04 09:23:03 -0800 Josep Torra * gst/videofilters/gstscenechange.c: * gst/videofilters/gstscenechangeorc-dist.c: * gst/videofilters/gstscenechangeorc-dist.h: * gst/videofilters/gstscenechangeorc.orc: * gst/videofilters/meson.build: scenechange: use orc to compute score Add an orc implementation for SAD operation. Part-of: 2020-07-07 14:43:50 +0300 Sebastian Dröge * gst/rtp/gstrtpsink.c: * gst/rtp/gstrtpsrc.c: rtpsrc/sink: Use g_signal_connect_object() rtpbin can still emit signals when it is being disposed, and while rtpbin is inside rtpsrc/rtpsink it can still live longer. So we either have disconnect all signals at some point, or let GObject take care of that automatically. Part-of: 2020-07-07 14:02:06 +0200 Jan Alexander Steffens (heftig) * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: Test we don't crash releasing unused pad Part-of: 2020-07-07 14:01:31 +0200 Jan Alexander Steffens (heftig) * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: Avoid use-after-unref Part-of: 2020-07-07 13:33:53 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Avoid crash releasing pad with NULL prog If we release a pad while the muxer is running which has never been used for aggregation (thus it does not have an assigned program), `prog` is NULL. Part-of: 2020-07-01 10:18:24 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: let MSDK select the encoding mode by default MSDK may support lowpower and non-lowpower modes, some features are available only under one of the two modes, which is hard to know for user, so let MSDK select the mode by default. Part-of: 2020-07-06 15:05:07 +1000 Matthew Waters * pkgconfig/gstreamer-bad-transcoder-uninstalled.pc.in: * pkgconfig/gstreamer-bad-transcoder.pc.in: * pkgconfig/meson.build: build: remove obsolete 'bad-transcoder' pc file Replaced by 'transcoder' pc files. Part-of: 2020-07-04 12:10:23 +0100 Tim-Philipp Müller * gst/bayer/meson.build: * gst/fieldanalysis/meson.build: * gst/gaudieffects/meson.build: * meson.build: * scripts/update-orc-dist-files.py: meson: add update-orc-dist target Add target to update backup orc -dist.[ch] files. Part-of: 2020-07-01 20:27:14 +0300 Vivia Nikolaidou * gst/videoparsers/gstvideoparseutils.c: videoparseutils: Only add a single closed caption meta Otherwise, having a stream go through a parser multiple times would result in duplicate closed caption meta. Part-of: 2020-07-03 13:02:33 +1000 Matthew Waters * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: write the cdp timecode data correctly We were mixing up the tens part with the unit parts all over the place. e.g. 12 seconds would be encoded as 0x21 instead of the correct 0x12 Aligns the code with the same change applied to ccconverter. Part-of: 2020-07-03 00:47:09 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: write the cdp timecode data correctly We were mixing up the tens part with the unit parts all over the place. e.g. 12 seconds would be encoded as 0x21 instead of the correct 0x12 Part-of: 2020-07-02 12:47:27 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: output warning log if parsing a cdp packet fails Simplifies figuring out why there may be no output from ccconverter with a cdp input. Part-of: 2020-07-02 12:45:44 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: fix cdp timecode parsing The first reserved bits are in the most significant bit. i.e. 0xc0 vs 0x0c Part-of: 2020-07-02 16:17:01 -0700 Ederson de Souza * ext/avtp/gstavtpcrfbase.c: * ext/avtp/gstavtpsink.c: * ext/avtp/gstavtpsrc.c: avtp: Use g_strerror instead of strerror It should avoid some implicit declaration errors (and be utf-8 friendly). Part-of: 2020-07-03 02:03:56 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.17.2 === 2020-07-03 00:31:17 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * gst-plugins-bad.doap: * meson.build: Release 1.17.2 2020-07-02 12:37:47 +0100 Philippe Normand * docs/plugins/gst_plugins_cache.json: wpe: Update plugin's doc cache This was forgotten in !1392. Part-of: 2020-07-01 12:28:05 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2decoder: Track pending request With the asynchronous slice decoding, we only queue up to 2 slices per frames. That side effect is that now we are dequeuing bitstream buffers in both decoding and presentation order. This would lead to a bitstream buffer from a previous frame being dequeued instead of the expected last slice buffer and lead to us trying to queue an already queued bitstream buffer. We now fix this by tracking pending requests. As request are executed in decoding order, we marking a request done, we can effectively dequeue bitstream buffer from all previous request, as they have been executed already. Part-of: 2020-07-01 12:26:36 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2decoder: Improve debug tracing Add some missing traces and move per-slice operation to TRACE level to reduce the noise level. Part-of: 2020-07-01 12:23:49 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2decoder: Convert request pool to GstQueueArray The decoder is not being access from multiple threads, instead it is always protected by the streaming lock. For this reason, a GstAtomicQueue for the request pool is overkill and may even introduce unneeded overhead. Use a GstQueueArray in replacement, the GstQueueArray is a good fit since the number of item is predictable and unlikely to vary at run-time. Part-of: 2020-06-29 13:27:32 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Wait on previous pending request in slice mode In slice mode, we'll do one request per slice. In order to recycle bitstream buffer, and not run-out, wait for the last pending request to complete and mark it done. We only wait after having queued the current slice in order to reduce that potential driver starvation and maintain performance (using dual buffering). Part-of: 2020-06-29 13:25:39 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Renew bitstream buffer after submitting slice Submitting a slice actually clears the bitstream buffer. Ensure we have a newly allocated bitstream buffer for the next slice. Part-of: 2020-06-29 13:23:12 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Factor out bitstream allocation No functional changes. Part-of: 2020-06-29 13:04:56 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Add a helper to ensure output buffer In preparation of multi-slice decoding, we will decode multiple slices into the same buffer. This will ensure we have a buffer to decode to, queued into the driver. Part-of: 2020-06-29 12:39:08 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Factor out request wait This will be reused to wait for previous slices to be complete when dealing with following slices (in slice decoding mode). Part-of: 2020-06-29 12:14:36 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Remove double return in submit_bitstream() This is code cleanup, no functional changes. Part-of: 2020-06-29 12:06:34 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Fix typo in debug trace Part-of: 2020-07-02 18:10:21 +0200 Mathieu Duponchelle * ext/avtp/gstavtp.c: * sys/d3d11/plugin.c: * sys/mediafoundation/plugin.c: * sys/wasapi2/plugin.c: docs: remove gst prefix from plugin titles 2020-06-29 00:54:50 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: docs: Update plugin cache for Windows plugins 2020-06-09 00:20:08 +0900 Seungha Yang * sys/d3d11/gstd3d11basefilter.c: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/plugin.c: * sys/mediafoundation/gstmfaudioenc.cpp: * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/plugin.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi2/plugin.c: * sys/winscreencap/gstdxgiscreencapsrc.c: plugins: Update for documentation of Windows plugins * Add Since marks * Make use of GST_PARAM_CONDITIONALLY_AVAILABLE flag 2020-06-09 01:30:39 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvh265enc.c: nvcodec: Update for documentation * Add Since marks * Make use of GST_PARAM_CONDITIONALLY_AVAILABLE flag * Add documentation template caps 2020-07-01 09:00:41 +0100 Philippe Normand * ext/wpe/gstwpesrc.cpp: wpe: Set documentation caps As the caps template can vary depending on the WPEBackend-FDO version found at build time, set a fixed template for the generate documentation. Part-of: 2020-07-01 17:54:01 +0200 Jan Alexander Steffens (heftig) * gst/videoparsers/gstvideoparseutils.c: videoparsers: Fix parsing ATSC bar data It rejected the case of all bars being disabled. Part-of: 2020-07-01 17:52:39 +0200 Jan Alexander Steffens (heftig) * gst/videoparsers/gstvideoparseutils.c: videoparsers: Fix parsing of ATSC AFD data The test for 0x40 being set is repeated by gst_video_parse_utils_parse_afd, which also extracts the low nibble again, so we must not clear it here. Part-of: 2020-07-01 17:51:36 +0200 Jan Alexander Steffens (heftig) * gst/videoparsers/gstvideoparseutils.c: * gst/videoparsers/plugin.c: videoparsers: Give gstvideoparseutils.c a debug category Part-of: 2020-07-01 20:28:01 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: fail negotiation when framerate conversion is not possible Converting between anything but cdp will fail at converting framerates and negotiation should reflect that. Part-of: 2020-07-01 19:41:33 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: fix missing output framerate on the caps A pipeline like this: closedcaption/x-cea-708,format=cdp,framerate=30000/1001 ! ccconverter ! closedcaption/x-cea-708,format=cc_data would produce a critical/assert: GStreamer-CRITICAL **: 14:21:11.509: gst_util_fraction_multiply: assertion 'a_d != 0' failed because there would be no framerate field on ccconverter's output. Fixed by always fixating a framerate if the input has a framerate. Part-of: 2020-06-29 20:25:27 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmpclient.h: rtmp2: Set connect args like libavformat does To improve our compatibility. Critically, a server might elide data for codecs we don't advertise. Part-of: 2020-06-29 19:47:16 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Add support for AGGREGATE messages They're multiple frames (tags) of FLV data wrapped into a message. Part-of: 2020-06-29 19:46:53 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/rtmp/rtmputils.c: * gst/rtmp2/rtmp/rtmputils.h: rtmp2: Move FLV tag header parsing into rtmputils.c To be shared with the AGGREGATE handling. Part-of: 2020-06-29 20:57:06 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Mark our memory singleton as leakable So it doesn't appear in the leaks tracer. Part-of: 2020-06-29 19:46:06 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmputils.c: rtmp2: Remove GST_ERROR from rtmputils.c This file does not have debug logging set up. Part-of: 2020-07-01 12:35:32 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpaafpay.c: * ext/avtp/gstavtpbasedepayload.c: * ext/avtp/gstavtpbasepayload.c: * ext/avtp/gstavtpcrfbase.c: avtp: documentation fixes Unclear why hotdoc wants 'gstavtp' as the plugin name here, that's just wrong. Add since marker and mark private subclasses as plugin API so hotdoc knows they belong to the plugin and aren't external. Fix GstAvtpAafTstampMode get_type() function. 2020-07-01 11:17:08 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: docs: update plugin cache with avtp plugin CI picks this up now because the wrap was re-added in gst-build. 2020-06-30 06:23:07 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Fix for DPB size calculation Some bitstreams might require more DPB size than that of what we've calculated. This change should've been part of initial commit of h264 stateless codec implementation but it was missed. See also https://chromium-review.googlesource.com/c/chromium/src/+/760276/ Part-of: 2020-06-25 16:38:30 +0200 Andreas Frisch * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: Correctly set ISO-639 language descriptor fixes #1340 Only 2 of the necessary 3 letters were copied because the teminating '\0' needs to be counted, too - cf. https://developer.gnome.org/glib/stable/glib-String-Utility-Functions.html#g-strlcat Part-of: 2020-06-23 15:35:06 -0400 Olivier Crête * docs/plugins/gst_plugins_cache.json: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: Expose "latency" property This property sets the latency both on the rtpbin/rtpjittbuffer, but also on the RTPStorage elements currently used by the FEC decoder. Part-of: 2020-06-30 02:48:50 +0900 Seungha Yang * sys/winscreencap/gstwinscreencap.c: dxgiscreencapsrc: Add missing debug category init This should've been addressed in the commit 90420620722d4490ecfb4ade046b95d214f993d9 but I was missed it. Part-of: 2020-06-14 20:47:46 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264picture.c: codecs: h264picture: use g_array_remove_index_fast() This algorithm is faster than the normal one. The problem is it disorders the elements in the dpb, but it does not seem to mess decoders. Part-of: 2020-06-28 18:54:54 +0200 Michael Olbrich * ext/wayland/wlvideoformat.c: wlvideoformat: fix typo in the format list DRM_FORMAT_ARGB8888 was actually used twice in the list for different SHM / Gstreamer formats. In this case DRM_FORMAT_ABGR8888 is the correct format. Part-of: 2020-03-22 19:00:50 +0100 Víctor Manuel Jáquez Leal va: VA-API H.264 decoder and infrastructure New plugin with an element for H.264 decoding with VA-API. This novel approach, different from gstreamer-vaapi, uses gstcodecs library for state handling. The code is expected to looks cleaner because it uses VA-API without further layers or wrappers. * It uses the first supported DRM device as default VA display (other displays will be supported through user's GstContext) * Requires libva >= 1.6 * No multiview/stereo profiles neither interlaced streams because gstcodecs doesn't handle them yet * It is incompatible with gstreamer-vaapi * Even if memory:VAMemory is exposed, it is not handled yet by any other element * Caps templates are generated dynamically querying VAAPI, but YV12 and I420 are added for system memory caps because they seem to be supported for all the drivers when downloading frames onto main memory, as they are used by xvimagesink and others, avoiding color conversion. * Surfaces aren't bounded to context, so they can grow beyond the DBP size, allowing smooth reverse playback. * There isn't yet error handling and recovery. * 10-bit H.264 streams aren't supported by libva. Part-of: 2020-06-27 13:18:34 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: update max_dpb_frames only if VUI is present There are some streams, with HRD, where the the calculated max_dpb_frames is zero (max_dpb_mbs is less than size mb). In order to get the dbp size it is required to rely on the VUI parameters if they are present. According to the spec Annex E.2.1 **max_dec_frame_buffering** specifies the required size of the HRD decoded picture buffer (DPB) in units of frame buffers. It is a requirement of bitstream conformance that the coded video sequence shall not require a decoded picture buffer with size of more than Max(1, max_dec_frame_buffering) frame buffers to enable the output of decoded pictures at the output times specified by dpb_output_delay of the picture timing SEI messages. The value of max_dec_frame_buffering shall be greater than or equal to max_num_ref_frames. An upper bound for the value of max_dec_frame_buffering is specified by the level limits in clauses A.3.1, A.3.2, G.10.2.1, and H.10.2. When the max_dec_frame_buffering syntax element is not present, the value of max_dec_frame_buffering shall be inferred as follows: – If profile_idc is equal to 44, 86, 100, 110, 122, or 244 and constraint_set3_flag is equal to 1, the value of max_dec_frame_buffering shall be inferred to be equal to 0. – Otherwise (profile_idc is not equal to 44, 86, 100, 110, 122, or 244 or constraint_set3_flag is equal to 0), the value of max_dec_frame_buffering shall be inferred to be equal to MaxDpbFrames. Part-of: 2020-06-26 10:20:04 +0300 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: gstdtlsconnection: Propagate errors from key export to the caller Otherwise the DTLS connection silently does nothing instead of reporting an error via the elements. Part-of: 2020-04-01 18:08:45 +0200 Miguel Paris * ext/dtls/gstdtlsconnection.c: dtlsconnection: do not set keys_exported flag if actually not exported keys_exported flag should be set only if keys are actually exported. For that the next conditions are needed: 1 - SSL_export_keying_material on success 2 - SSL_get_selected_srtp_profile returns a valid profile 3 - The profile ID is SRTP_AES128_CM_SHA1_80 or SRTP_AES128_CM_SHA1_32 Also don't crash if NULL is returned as profile. Part-of: 2020-06-25 19:41:52 +0900 Seungha Yang * sys/d3d11/gstd3d11h265dec.c: d3d11h265dec: Fix possible invalid memory access The number of element to copy should be num_tile_columns_minus1 and num_tile_rows_minus1. Part-of: 2020-06-25 19:26:45 +0900 Seungha Yang * sys/nvcodec/gstnvh265dec.c: nvh265sldec: Fix possible invalid memory access Fix Coverity issues. CID 1464959, 1464960, 1464961, 1464962 Part-of: 2020-06-25 16:05:39 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Make caps writable before modifying them Part-of: 2020-06-24 16:34:20 +0300 Sebastian Dröge * ext/closedcaption/gstccextractor.c: ccextractor: Push a GAP event if we have a caption pad but a video buffer did not contain any captions Part-of: 2020-06-24 13:33:39 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * ext/closedcaption/gstccextractor.c: * ext/closedcaption/gstccextractor.h: ccextractor: Add property to remove caption meta from the outgoing video buffers This is disabled by default to keep backwards compatibility. Part-of: 2020-06-16 04:41:14 +0900 Seungha Yang * sys/d3d11/plugin.c: d3d11videosink: Disable d3d11videosink depending on supported feature level Current shader code is not compatible with HLSL profile "ps_4_0_level_9_3" or lower. So d3dcompiler cannot compile our shader code in that case. Note that VirtualBox is one known driver which doesn't support currently implemented shader code. Part-of: 2020-06-24 19:18:15 +0000 Mathieu Duponchelle * gst/mxf/mxfvanc.c: mxfvanc: document new sink pad template Part-of: 2020-06-23 23:40:38 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst/mxf/meson.build: * gst/mxf/mxf.c: * gst/mxf/mxfvanc.c: * gst/mxf/mxfvanc.h: mxfdemux/mux: Add support for CEA-708 CDP from S436 essence tracks Part-of: 2020-06-23 15:31:51 -0700 Kevin King <4kevinking@gmail.com> * sys/applemedia/avfvideosrc.m: avfvideosrc: wait for permissions request dialog callback otherwise gstreamer gives up on transitioning the pipeline before the user has accepted Part-of: 2020-06-19 14:30:04 +0300 Vivia Nikolaidou * docs/plugins/gst_plugins_cache.json: * gst/interlace/gstinterlace.c: interlace: Switch field-pattern on the fly The frame rate interlace uses changes when we change field-pattern, so we need to issue a reconfigure event. Part-of: 2020-06-22 20:15:13 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvh264sldec: Remove useless double space Part-of: 2020-06-20 05:57:59 +0900 Seungha Yang * sys/nvcodec/gstnvh265dec.c: * sys/nvcodec/gstnvh265dec.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Add H265 stateless codec implementation Add a new GstCodecs based H265 decoder element Part-of: 2020-06-19 04:50:26 +0900 Seungha Yang * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: nvcodec: Move common methods to nvdecoder ... and remove all #ifdef from nvh264sldec implementation. New helper methods will take care of OpenGL specific ones. Part-of: 2020-06-19 04:36:15 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvh264sldec: Declare OpenGL related objects unconditionally GstGLDisplay and GstGLContext are subclass of GstObject so we can remove #ifdef for such object. This is prework for nvh265sldec. Part-of: 2020-06-19 04:10:48 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvh264sldec: Fix for possible wrong device selction decoder should select assigned CUDA device id Part-of: 2020-06-23 19:31:42 +0530 Nirbheek Chauhan * pkgconfig/gstreamer-photography-uninstalled.pc.in: * pkgconfig/gstreamer-photography.pc.in: * pkgconfig/meson.build: meson: Add missing pc file for gstphotography This is supposed to be used by apps like Cheese, and is a public library. Part-of: 2020-06-23 19:03:12 +0530 Nirbheek Chauhan * pkgconfig/gstreamer-transcoder-uninstalled.pc.in: * pkgconfig/gstreamer-transcoder.pc.in: * pkgconfig/meson.build: meson: Add missing pkgconfig files for gsttranscoder Part-of: 2020-06-19 10:50:12 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Re-indentation Part-of: 2020-06-18 23:52:01 +0300 Vivia Nikolaidou * docs/plugins/gst_plugins_cache.json: * gst/interlace/gstinterlace.c: interlace: Don't change field-pattern on PAUSED or PLAYING state It would otherwise change the caps the element produces and cause the element to misbehave Part-of: 2020-06-18 22:56:57 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Don't fail negotiation if capsfilters decide framerate Try to negotiate if the framerates on either sides of the interlace are decided using capsfilters and the framerates are correct. Otherwise the following pipelines would fail to negotiate: gst-launch-1.0 videotestsrc ! video/x-raw,framerate=24/1,interlace-mode=progressive ! interlace field-pattern=2 ! video/x-raw,framerate =30/1 ! fakesink gst-launch-1.0 videotestsrc ! video/x-raw,framerate=60/1,interlace-mode=progressive ! interlace field-pattern=0 ! video/x-raw,framerate=30/1 ! fakesink Part-of: 2020-06-18 22:15:08 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Restrict passthrough conditions Don't do passthrough if interleave-mode=mixed or if we have one of the telecine modes Part-of: 2020-06-18 21:10:56 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Add field switching mode for 2:2 field pattern In the 2:2 field pattern, interlace can switch from bottom-field-first to top-field-first. Part-of: 2020-06-18 21:11:17 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Only half the framerate for 1:1 field pattern Keep the framerate for 2:2 field pattern, and completely remove it from the caps for all others. Otherwise, negotiation will fail if caps on both sides of the element specify a framerate. Part-of: 2020-06-18 20:41:35 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Add FIXME comment about false passthrough bug If interlace-mode is missing from upstream caps, we can falsely do passthrough when in fact we'd have to switch fields. Part-of: 2020-06-23 12:30:51 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Update plugins cache 2020-06-23 11:36:15 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: openmpt: Namespace enum GType names 2020-06-23 11:33:45 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.c: docs: Unmark wrongly marked plugin API types 2020-06-23 10:03:04 -0400 Thibault Saunier * docs/libs/basecamerabinsrc/index.md: * docs/libs/basecamerabinsrc/sitemap.txt: * docs/meson.build: * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/meson.build: * gst/camerabin2/gstcamerabin2.c: docs: Document basecamerabinsrc 2020-06-23 02:51:48 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: * ext/opencv/gstcvdilateerode.cpp: * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvh264dec.c: docs: mark more types as plugin API 2020-06-23 00:12:59 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: plugins_cache: add base classes 2020-06-23 00:05:36 +0200 Mathieu Duponchelle * docs/meson.build: meson: mark plugins cache target as always stale 2020-06-21 01:32:50 +0200 Mathieu Duponchelle * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurltlssink.c: * ext/dtls/gstdtlssrtpbin.c: * ext/ladspa/gstladspafilter.c: * ext/ladspa/gstladspasource.c: * ext/wayland/gstwaylandsink.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/vulkan/gstvkvideofilter.c: * gst/geometrictransform/gstcirclegeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsmux/gstbasetsmux.c: * gst/rtmp2/gstrtmp2sink.c: * gst/segmentclip/gstsegmentclip.c: docs: mark more types as plugin API 2020-06-21 01:32:29 +0200 Mathieu Duponchelle * docs/libs/opencv/index.md: * docs/libs/opencv/sitemap.txt: * docs/meson.build: * gst-libs/gst/opencv/meson.build: docs: generate documentation for libgstopencv 2020-06-19 19:40:52 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: doc: Stop documenting properties from parents 2020-06-23 09:50:46 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Specify in the template caps that only interleaved audio is supported Needs special support for non-interleaved audio and e.g. use the GstPlanarAudioAdapter. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/779 Part-of: 2020-06-22 12:32:50 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Don't call gst_ghost_pad_construct() anymore It's deprecated, unneeded and doesn't do anything anymore. Part-of: 2020-06-18 21:21:26 +0300 Vivia Nikolaidou * gst/videoparsers/gsth264parse.c: Revert "h264parse: Include `interlace-mode` in caps" This reverts commit b75a61342f4ea039d922a966f36b02cd9d9c3ad8. The parser would only set the mode to progressive or mixed, missing the cases where it should have been interleaved. Interleaved is more difficult to detect because in h264 it happens per frame. On the other hand, h264 decoders detect the interlacing information per-frame and set the caps correctly. By giving potentially incorrect interlacing information in the parser already, it's being enforced downstream even after decoding, breaking some use cases (e.g. an encoder can't properly mark the stream as TFF or BFF). On the other hand, there's no valid use case for having interlacing information on the caps at the parsing stage, so after a lot of discussion, it was decided to revert this. Initial commit message: ========================= Those are the rules: In the SPS: * if frame_mbs_only_flag=1 => all frame progressive * if frame_mbs_only_flag=0 => field_pic_flag defines if each frame is progressive or interlaced, thus the mode is 'mixed' in GStreamer terms. https://bugzilla.gnome.org/show_bug.cgi?id=779309 ========================= Fixes #1313 Part-of: 2020-06-22 18:42:45 +0900 Seungha Yang * sys/d3d11/gstd3d11window_win32.cpp: d3d11window_win32: Chain up mouse event to parent window Unlike key event, mouse event will not be chained up to parent window by DefWindowProc Part-of: 2020-06-19 22:14:29 +0900 Seungha Yang * sys/winscreencap/dxgicapture.c: * sys/winscreencap/dxgicapture.h: * sys/winscreencap/gstdxgiscreencapsrc.c: * sys/winscreencap/gstdxgiscreencapsrc.h: * sys/winscreencap/gstwinscreencap.c: * sys/winscreencap/meson.build: dxgiscreencapsrc: Load HLSL compiler library using g_module_open Depending on OS version, available d3dcompiler library name is different. Part-of: 2020-06-19 23:02:45 +0900 Seungha Yang * sys/winscreencap/dxgicapture.c: * sys/winscreencap/gstdxgiscreencapsrc.c: * sys/winscreencap/gstwinscreencap.c: dxgiscreencapsrc: Reorganize debug category usage Use the same debug category in all dxgiscreencap related source code Part-of: 2020-06-19 21:43:15 +0900 Seungha Yang * sys/winscreencap/dxgicapture.c: * sys/winscreencap/meson.build: winscreencap: Remove trailing whitespaces Part-of: 2020-06-19 21:34:32 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Print supported DXGI format for debugging Part-of: 2020-06-19 21:24:59 +0900 Seungha Yang * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Load HLSL compiler library using g_module_open Depending on OS version, available d3dcompiler library name is different. But for UWP, we can still use the current way Part-of: 2020-06-19 20:40:24 +0900 Seungha Yang * sys/d3d11/gstd3d11shader.c: d3d11shader: Add missing config.h include Part-of: 2020-06-21 16:02:43 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: fix ice control mode when we offer initially An initial offer means we have a local description not a remote description. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1332 Part-of: 2020-05-25 00:15:14 +0900 Seungha Yang * sys/mediafoundation/gstmfvp9enc.cpp: * sys/mediafoundation/gstmfvp9enc.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Add VP9 encoder element Some Intel GPUs support hardware accelerated VP9 encoding and Microsoft provides software VP9 encoding implementation as well. Part-of: 2020-06-18 12:15:09 +0300 Vivia Nikolaidou * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Add missing SURROUND mappings SURROUND is more to spec according to the FIXME comments, so add this. Also add SIDE for 5 and 5.1 because of ffmpeg compatibility, because the following pipeline downmixes to mono otherwise: gst-launch-1.0 audiotestsrc num-buffers=1 ! audio/x-raw, channels=6 ! avenc_ac3 ! avdec_ac3 ! audioconvert ! fdkaacenc ! fakesink -v Fixes #1327 Part-of: 2020-06-15 01:38:03 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: vulkan: log extension/layers available/enabled on instance/device creation Part-of: 2020-06-15 01:26:08 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.h: * gst-libs/gst/vulkan/gstvkswapper.c: vulkan/device: expose extension/layer choices Extensions and layers can be enabled before calling gst_vulkan_device_open(). The available extensions are stored in GstVulkanPhysicalDevice. Defaults are still the same. Part-of: 2020-06-14 21:04:37 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkinstance.h: vulkan/instance: privatise defult debug callback Part-of: 2020-06-14 21:00:06 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkinstance.h: * tests/check/libs/vkinstance.c: vulkan/instance: expose extension/layer choices Extensions and layers can be enabled before calling gst_vulkan_instance_open() but after calling gst_vulkan_instance_fill_info(). Use the list of available extensions to better choose a default display implementation to use based on the available Vulkan extensions for surface output. Defaults are still the same. Part-of: 2020-06-13 17:40:02 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkphysicaldevice.c: vulkan/physical-device: dump some more information to logs Also dump the Vulkan 1.1 and Vulkan 1.2 device properties/features where supported. Part-of: 2020-06-13 17:31:07 +1000 Matthew Waters * docs/plugins/gst_plugins_cache.json: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkinstance.h: * tests/check/libs/vkinstance.c: * tests/check/meson.build: vulkan/instance: add vulkan API version selection and checking Part-of: 2020-06-13 17:29:57 +1000 Matthew Waters * gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.c: vulkan/wayland: initialise debug category before debug logging Part-of: 2020-06-19 12:15:53 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/nalutils.h: nalutils: Improve slightly the error trace Until now, bound check would simply trace the values and the range. This enhances the trace by also tracing the name of the variable that was to be set or read. This is not magically perfect in all cases, but greatly speed the debugging work. Here's an example before and after this change: Before: gst_h264_parser_parse_slice_hdr: value not in allowed range. value: 819183, range -87-77 After: gst_h264_parser_parse_slice_hdr: value for 'slice->slice_qp_delta' not in allowed range. value: 819183, range -87-77 Part-of: 2019-12-12 12:58:24 +0100 Jan Alexander Steffens (heftig) * docs/plugins/gst_plugins_cache.json: * gst/debugutils/gsterrorignore.c: Revert "errorignore: Added convert-error signal" The introduced API has [some problems][1] and [a better solution][2] was found that made the feature obsolete. This reverts commit f7626c1f2ac14a34991723df6c28f54af38fcbc4. [1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/736#note_357702 [2]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/736#note_238830 https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/916 Part-of: 2020-06-20 00:28:22 +0100 Tim-Philipp Müller * meson.build: Back to development === release 1.17.1 === 2020-06-19 19:22:18 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * docs/plugins/gst_plugins_cache.json: * gst-plugins-bad.doap: * meson.build: Release 1.17.1 2020-06-19 17:20:02 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/srt/gstsrt.c: srt: add "empty" subclasses for deprecated srt{client,server}{src,sink} The doc system gets confused when we register the exact same class as multiple elements, so make a subclass for each. Also wrap registration of deprecated elements with #ifndef GST_REMOVE_DEPRECATED. Part-of: 2020-06-19 15:31:04 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * ext/x265/gstx265enc.c: x265: ignore tune property when diffing generated docs Unfortunately it means those tune enums don't show up in the docs then, but if that's how it's gotta be.. (Problem at hand is that on Tim's machine x265enc gets an tune=animation and on the CI machine this doesn't show up.) Part-of: 2020-06-19 13:08:10 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: docs: update plugins cache Add some more plugins, update for new markers. Part-of: 2020-06-19 13:05:38 +0100 Tim-Philipp Müller * ext/directfb/dfbvideosink.c: * ext/openni2/gstopenni2src.cpp: Mark more plugin GTypes as plugin API To appease the CI gods. Part-of: 2020-06-17 09:31:09 +0200 Antonio Ospite * tools/gst-project-maker: gst-project-maker: use $0 for the program name in usage and help text Part-of: 2020-01-17 17:49:47 +0100 Antonio Ospite * tools/gst-project-maker: gst-project-maker: set up a meson project instead of an autotools one Now that autotools has been removed generate a meson project template in gst-project-maker. There are some differences with the autotools project 1. gstreamer-controller-1.0 is not added to the default dependencies. 2. The '-Wall' option is not set explicitly, meson can handle that. 3. The flags in GST_PLUGIN_LDFLAGS have not been ported to meson as they are not necessary anymore. The generated project requires meson 0.53.0 for the 'fs' module. It's up to the user to remove that part in case compatibility with older versions of meson is desired. Part-of: 2019-02-01 17:05:23 +0100 Antonio Ospite * tools/gst-project-maker: gst-project-maker: fix comment referring to plug-in instead of program Fix the comment in $basedir/tools/Makefile.am which wrongly refers to plug-in while the file in tool/ is about the executable program. Part-of: 2019-02-01 17:04:19 +0100 Antonio Ospite * tools/gst-app-maker: gst-app-maker: fix program name and arguments in usage text and help text Part-of: 2020-06-16 00:12:03 +0900 Seungha Yang * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfvideosrc.c: mfvideosrc: Add support for jpeg on Win32 application Enable reading jpeg data from webcam if it's supported. Note that this would be enabled only for Win32. For UWP, we need to research more about how to support jpeg. Part-of: 2020-06-16 00:11:03 +0900 Seungha Yang * sys/mediafoundation/gstmfcapturewinrt.cpp: mfvideosrc: Fix wrong casting Don't cast ISoftwareBitmap to IMFMediaBuffer Part-of: 2020-06-14 04:12:42 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: mfvideosrc: Add support YUY2 format for UWP Part-of: 2020-06-14 03:13:04 +0900 Seungha Yang * sys/mediafoundation/gstmfcaptureengine.cpp: * sys/mediafoundation/gstmfcaptureengine.h: * sys/mediafoundation/gstmfdevice.c: * sys/mediafoundation/gstmfvideosrc.c: * sys/mediafoundation/meson.build: mediafoundation: Drop IMFCaptureEngine implementation It was introduced for later use of its enhanced feature over IMFSourceReader such as taking photo with video preview, audio/video capturing at the same time, etc. But currently it's not our use case, and it would be maintenance burden. Part-of: 2020-06-17 10:57:00 +0900 Hosang Lee * ext/smoothstreaming/gstmssdemux.c: mssdemux: ignore unrecognized stream Only create pads for steams with caps that can be recognized from the fourcc. Part-of: 2020-04-07 21:47:22 +1000 Jan Schmidt * docs/plugins/gst_plugins_cache.json: * gst/dvbsubenc/gstdvbsubenc-util.c: * gst/dvbsubenc/gstdvbsubenc.c: * gst/dvbsubenc/gstdvbsubenc.h: * gst/dvbsubenc/libimagequant/CHANGELOG: * gst/dvbsubenc/libimagequant/COPYRIGHT: * gst/dvbsubenc/libimagequant/README.md: * gst/dvbsubenc/libimagequant/blur.c: * gst/dvbsubenc/libimagequant/blur.h: * gst/dvbsubenc/libimagequant/libimagequant.c: * gst/dvbsubenc/libimagequant/libimagequant.h: * gst/dvbsubenc/libimagequant/mediancut.c: * gst/dvbsubenc/libimagequant/mediancut.h: * gst/dvbsubenc/libimagequant/mempool.c: * gst/dvbsubenc/libimagequant/mempool.h: * gst/dvbsubenc/libimagequant/nearest.c: * gst/dvbsubenc/libimagequant/nearest.h: * gst/dvbsubenc/libimagequant/pam.c: * gst/dvbsubenc/libimagequant/pam.h: * gst/dvbsubenc/libimagequant/viter.c: * gst/dvbsubenc/libimagequant/viter.h: * gst/dvbsubenc/meson.build: * gst/meson.build: * meson_options.txt: dvbsubenc: Add DVB Subtitle encoder Add an element that converts AYUV video frames to a DVB subpicture stream. It's fairly simple for now. Later it would be good to support input via a stream that contains only GstVideoOverlayComposition meta. The element searches each input video frame for the largest sub-region containing non-transparent pixels and encodes that as a single DVB subpicture region. It can also do palette reduction of the input frames using code taken from libimagequant. There are various FIXME for potential improvements for now, but it works. Part-of: 2020-06-16 19:26:13 +0900 Seungha Yang * sys/d3d11/gstd3d11utils.c: d3d11: Don't assume response of context query has valid d3d11 device context Peer elements should return FALSE if d3d11 device context is unavailable but it might happen for some reason (e.g., wrong implementation or so) Part-of: 2020-06-15 21:10:09 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Disable zero-copy for blacklisted device Should enable it for verified devices. For now, Xbox is blacklisted Part-of: 2020-06-12 20:34:49 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Adjust alignment constraint for Xbox device XBox doesn't seem to support 128 bytes alignment for 4K HEVC Part-of: 2020-06-12 20:18:53 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Do not configure video processor for Xbox device Disable video processor for Xbox until it's verified Part-of: 2020-06-12 19:07:07 +0900 Seungha Yang * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: d3d11utils: Add a helper method for checking Xbox device Required for some cases to work around device specific issue Part-of: 2020-06-12 20:11:29 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Use GPU memory copy if possible Even if fallback buffer is required (e.g., shader resource view is unavailable), use direct GPU memory copy if possible. It must be much faster than system memory copy approach. Part-of: 2020-06-12 19:44:01 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Ensure shader resource view of fallback buffer SRV must be configured for color conversion Part-of: 2020-06-12 19:08:34 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Fix typo "configureed" Part-of: 2019-11-21 13:50:21 +0900 Jun-ichi OKADA * sys/winscreencap/dxgicapture.c: * sys/winscreencap/dxgicapture.h: * sys/winscreencap/gstdxgiscreencapsrc.c: * sys/winscreencap/gstdxgiscreencapsrc.h: * sys/winscreencap/gstwinscreencap.c: * sys/winscreencap/meson.build: winscreencap: Add dxgiscreencapsrc element. This element uses the Desktop Duplication API to capture the desktop screen at high speed. It supports Windows 8 or later. It has the following features compared to other elements: * Runs faster. * It works in High DPI environment. * Draws an accurate mouse cursor. Part-of: 2020-05-14 11:03:49 +0800 Xu Guangxin * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkvc1dec.c: msdkdec: hold a reference for the surfaces locked by msdk previous code releases GstBuffer too earlier. so we will see ERROR default gstmsdkvideomemory.c:77:gst_msdk_video_allocator_get_surface: failed to get surface available ERROR msdkbufferpool gstmsdkbufferpool.c:270:gst_msdk_buffer_pool_alloc_buffer: failed to create new MSDK memory We need to hold GstBuffer reference for msdk if the surfaced locked by msdk. step to reproduce. 1. ffmpeg -f lavfi -i testsrc=duration=10:size=320x240:rate=30 -pix_fmt yuv420p -c:v libx265 test.265 2. GST_GL_PLATFORM=egl gst-launch-1.0 -v filesrc location=test.265 ! h265parse ! msdkh265dec ! queue ! glimagesink Part-of: 2020-06-12 15:48:14 +1000 Matthew Waters * ext/vulkan/shaders/ayuv_to_rgb.frag: * ext/vulkan/shaders/bin2array.py: * ext/vulkan/shaders/color_convert_generic.glsl: * ext/vulkan/shaders/identity.frag: * ext/vulkan/shaders/identity.vert: * ext/vulkan/shaders/nv12_to_rgb.frag: * ext/vulkan/shaders/rgb_to_ayuv.frag: * ext/vulkan/shaders/rgb_to_nv12.frag: * ext/vulkan/shaders/rgb_to_yuy2.frag: * ext/vulkan/shaders/swizzle.frag: * ext/vulkan/shaders/swizzle.glsl: * ext/vulkan/shaders/swizzle_and_clobber_alpha.frag: * ext/vulkan/shaders/upsample_ayuv.glsl: * ext/vulkan/shaders/upsample_nv12.glsl: * ext/vulkan/shaders/upsample_yuy2.glsl: * ext/vulkan/shaders/view_convert.frag: * ext/vulkan/shaders/view_defines.h: * ext/vulkan/shaders/yuy2_to_rgb.frag: vulkan/shaders: add explicit license headers Part-of: 2020-06-12 15:47:01 +1000 Matthew Waters * ext/vulkan/shaders/bin2array.py: vulkan/shaders: manually indent bin2array Looks much nicer with some semblance of code formatting Part-of: 2020-06-12 04:59:47 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265picture.c: codecs: h265picture: Don't leak pic_list GArray Equivalent to the commit 7b8c071f9c4a675f6b53e373c346d9e1f866f818 Part-of: 2020-06-11 19:35:29 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: * gst/meson.build: * gst/yadif/gstyadif.c: * gst/yadif/gstyadif.h: * gst/yadif/meson.build: * gst/yadif/vf_yadif.c: * gst/yadif/yadif.c: * gst/yadif/yadif_template.c: * meson_options.txt: yadif: remove plugin, there's now deinterlace method=yadif Plugin code was still the GPL version, and the functionality has now been moved into the deinterlace element in gst-plugins-good as method=yadif (and LGPL). See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/444 and https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/621 Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/216 Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/463 Part-of: 2020-06-11 01:47:14 +0900 Seungha Yang * sys/wasapi2/gstwasapi2client.cpp: wasapi2: Fallback to IAudioClient interface if IAudioClient3 API is unavailable When default device is selected, IAudioClient3 API doesn't look like available. Part-of: 2020-06-11 13:50:38 +0300 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Fix crash with empty caps in setcaps If the src_peer_caps are EMPTY (e.g. negotiation failed somewhere), the assertion inside gst_video_info_from_caps would fail and the whole pipeline would crash. Check for gst_caps_is_empty before gst_video_info_from_caps and gracefully fail if it's empty. Part-of: 2020-06-09 22:38:28 +0900 Seungha Yang * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Fix possible deadlock while downwards state change IAudioClient::Stop() doesn't seem to wake up the event handle, then read() or write() could be blocked forever by WaitForSingleObject. Part-of: 2020-06-09 15:31:56 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Update plugins cache 2020-06-09 10:53:17 +0800 Haihua Hu * ext/wayland/wldisplay.c: waylandsink: add wl_registry.global_remove listener when hotplug display, wayland client will call this listener to notify client do clean up. Temporarily set a dummy function here to avoid app abort Part-of: 2020-06-08 14:56:31 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/srt/gstsrtobject.c: srt: doc: Add missing gst_type_mark_as_plugin_api 2020-06-08 13:03:09 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/lv2/gstlv2utils.c: docs: Mark lv2 runtime generated enums as plugins API types 2020-06-08 12:30:59 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/faac/gstfaac.c: * ext/vulkan/vksink.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: docs: Add some more plugin API types And allow creating vulkan device object without specifying an instance so it can be introspected. 2020-06-08 09:52:30 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * ext/vulkan/vkviewconvert.c: docs: Update plugins cache 2020-06-09 10:48:06 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Fix reading mode and start code type These two controls are not pointer based, so we don't need to pass any size or pointer and need to copy the values afterward. This fixes H264 decoding regression with Hantro and RKVDEC drivers. Fixes 037730a787c6cdeeee5779c1834315c1ca764505 Part-of: 2020-06-08 23:46:43 +0900 Seungha Yang * sys/mediafoundation/gstmftransform.cpp: mftransform: Fix deadlock when MFT requests processing output twice This sequence of event/data flow might happen 1) Initially we have one pending output event 1-1) Then, process the pending output data 2) No pending input event, then we should wait new pending input event 2-1) Wakeup by new pending event (but it's pending output event) In above case, MFT will not report new pending input event if pending output is not processed. Part-of: 2020-06-08 19:22:07 +0900 Seungha Yang * sys/mediafoundation/gstmftransform.cpp: mftransform: Add some debug log Add some trace level log for debugging Part-of: 2020-05-19 10:27:18 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle live duration queries Handle it the same way live sources would, that it by handling the query and return an unknown duration. Fixes #566 Part-of: 2020-05-11 01:53:11 +0900 Seungha Yang * tests/check/elements/wasapi2.c: * tests/check/meson.build: tests: wasapi2: Add unit test for reusing wasapisrc Test state change between playing and null and playing again Part-of: 2020-05-28 05:09:47 +0900 Seungha Yang * sys/wasapi2/gstwasapi2device.c: * sys/wasapi2/gstwasapi2device.h: * sys/wasapi2/meson.build: * sys/wasapi2/plugin.c: wasapi2: Add device provider implementation Similar to device provider implementation of wasapi plugin, this implementation supports only static probing. But we can implement runtime device add/remove/update monitoring using DeviceWatcher interface later. See https://docs.microsoft.com/en-us/uwp/api/windows.devices.enumeration.devicewatcher Part-of: 2020-05-26 05:17:41 +0900 Seungha Yang * meson_options.txt: * sys/meson.build: * sys/wasapi2/AsyncOperations.h: * sys/wasapi2/gstwasapi2client.cpp: * sys/wasapi2/gstwasapi2client.h: * sys/wasapi2/gstwasapi2sink.c: * sys/wasapi2/gstwasapi2sink.h: * sys/wasapi2/gstwasapi2src.c: * sys/wasapi2/gstwasapi2src.h: * sys/wasapi2/gstwasapi2util.c: * sys/wasapi2/gstwasapi2util.h: * sys/wasapi2/meson.build: * sys/wasapi2/plugin.c: wasapi2: Introduce new WASAPI plugin Add a new wasapi implementation mainly to support UWP application. Basically the core logic of this plugin is almost identical to existing wasapi plugin, but main target is Windows 10 (+ UWP). Since this plugin uses WinRT APIs, this plugin most likely might not work Windows 8 or lower. Compared with existing wasapi plugin, additional features of this plugin are * Fully compatible with both Windows 10 desktop and UWP application * Supports automatic stream routing (auto fallback when device was removed) * Support device level mute/volume control But some features of existing wasapi plugin are not implemented in this plugin yet * Exclusive streaming mode is not supported * Loopback feature is not implemented * Cross-compile is not possible with current mingw toolchain (meaning that MSVC and Windows 10 SDK are required to build this plugin) Part-of: 2020-06-06 21:15:34 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Set PAR to output IMFMediaType We've set it to input IMFMediaType but not for output. So, if PAR is not 1:1, the input IMFMediaType will be accepted by MFT (default is 1:1). The PAR of input/output IMFMediaType must be identical Part-of: 2020-06-06 21:01:24 +0900 Seungha Yang * sys/mediafoundation/gstmftransform.cpp: mftransform: Don't try to drain if MFT is not running Otherwise MFT will be blocked forever as no event can be generated by IMFMediaEventGenerator. Part-of: 2020-06-06 00:40:42 +0200 Mathieu Duponchelle * ext/aom/gstav1enc.c: * ext/closedcaption/gstceaccoverlay.c: * ext/colormanagement/gstlcms.c: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlsshsink.c: * ext/dash/gstdashsink.c: * ext/dc1394/gstdc1394src.c: * ext/dtls/plugin.c: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mplex/gstmplexjob.cc: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/openh264/gstopenh264enc.cpp: * ext/openjpeg/gstopenjpegenc.c: * ext/srtp/gstsrtp.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/webp/gstwebpenc.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/x265/gstx265enc.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst/adpcmenc/adpcmenc.c: * gst/audiomixmatrix/gstaudiomixmatrix.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/camerabin2/gstcamerabin2.c: * gst/coloreffects/gstcoloreffects.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstclockselect.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstfakevideosink.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstmirror.c: * gst/interlace/gstinterlace.c: * gst/mpegtsmux/gstbasetsmux.c: * gst/mxf/mxfmux.c: * gst/netsim/gstnetsim.c: * gst/rawparse/gstaudioparse.c: * gst/rist/gstristsink.c: * gst/rtmp2/gstrtmp2.c: * gst/timecode/gstavwait.c: * gst/timecode/gsttimecodestamper.c: * gst/yadif/gstyadif.c: * sys/decklink/gstdecklink.cpp: * sys/dvb/gstdvbsrc.c: * sys/uvch264/gstuvch264_src.c: plugins: uddate gst_type_mark_as_plugin_api() calls 2020-06-05 22:39:54 +0900 Seungha Yang * sys/d3d11/gstd3d11overlaycompositor.c: d3d11overlaycompositor: Fix wrong Y position calculation The Y coordinate of vertex and screen/image are opposite Part-of: 2020-06-04 13:33:59 +0200 cketti * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: Use correct email date format See https://www.rfc-editor.org/rfc/rfc5322.html#section-3.3 Part-of: 2020-06-02 18:07:10 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: signal cea608 padding as invalid Outputting a valid but null cea608 byte pair may cause some issues with some checksum packets. Part-of: 2020-06-02 17:35:00 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: also copy buffer metadata when draining Fixes buffers without PTS/DTS/meta/etc when receiving an EOS with data still stored in the internal scratch buffer. Part-of: 2020-06-02 17:33:07 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: Output the limit hit in debug lines Fix two case of the input triplet limit not applying in cea608 -> cdp conversion. Part-of: 2020-06-03 18:38:58 -0400 Thibault Saunier * docs/meson.build: doc: Require hotdoc >= 0.11.0 2020-06-02 15:06:38 -0400 Thibault Saunier * ext/webrtc/gstwebrtcice.c: doc: Fix spelling of GstWebRTCICE 2020-05-27 16:01:42 +0300 Sebastian Dröge * docs/plugins/gst_plugins_cache.json: docs: Update gst_plugins_cache.json 2020-06-02 12:51:35 +0300 Sebastian Dröge * gst/debugutils/gstclockselect.c: clockselect: Don't register GstClockSelectClockId multiple times 2020-05-31 10:18:00 +0300 Sebastian Dröge * ext/aom/gstav1enc.c: * ext/closedcaption/gstceaccoverlay.c: * ext/colormanagement/gstlcms.c: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlsshsink.c: * ext/dash/gstdashsink.c: * ext/dc1394/gstdc1394src.c: * ext/dtls/plugin.c: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mplex/gstmplexjob.cc: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/openh264/gstopenh264enc.cpp: * ext/openjpeg/gstopenjpegenc.c: * ext/srtp/gstsrtp.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/webp/gstwebpenc.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/x265/gstx265enc.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst/adpcmenc/adpcmenc.c: * gst/audiomixmatrix/gstaudiomixmatrix.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/camerabin2/gstcamerabin2.c: * gst/coloreffects/gstcoloreffects.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstclockselect.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstfakevideosink.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstmirror.c: * gst/interlace/gstinterlace.c: * gst/mpegtsmux/gstbasetsmux.c: * gst/mxf/mxfmux.c: * gst/netsim/gstnetsim.c: * gst/rawparse/gstaudioparse.c: * gst/rist/gstristsink.c: * gst/rtmp2/gstrtmp2.c: * gst/timecode/gstavwait.c: * gst/timecode/gsttimecodestamper.c: * gst/yadif/gstyadif.c: * sys/decklink/gstdecklink.cpp: * sys/dvb/gstdvbsrc.c: * sys/uvch264/gstuvch264_src.c: plugins: Use gst_type_mark_as_plugin_api() for all non-element plugin types 2020-06-02 18:29:16 -0300 Peter Workman * ext/srt/gstsrtobject.c: srtobject: continue polling or report error on failed receive fixes #1277 Part-of: 2020-06-03 17:49:41 +0900 Seungha Yang * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Use secondary rank d3dvideosink will be replaced by d3d11videosink Part-of: 2020-05-30 04:56:58 +0900 Seungha Yang * sys/d3d11/plugin.c: d3d11videosink: Assign primary rank d3d11videosink has an advantage over d3dvideosink, such as * Zero-copy playback with d3d11 decoders * HDR rendering with 10-bit format/swapchain support * UWP support * Any system memory alignment/padding can be supported * User can select target GPU device And old d3dvideosink's functionality (e.g., navigation event, overlaycomposition) can be covered by d3d11videosink Part-of: 2020-06-03 10:32:00 +0300 Sebastian Dröge * gst-libs/gst/webrtc/datachannel.c: * gst-libs/gst/webrtc/datachannel.h: webrtc: Add `Since: 1.18` markers to the new datachannel library API Part-of: 2020-05-15 16:51:46 +0200 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Make logging regarding callers more useful Part-of: 2020-06-01 14:46:03 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcdatachannel.h: * gst-libs/gst/webrtc/datachannel.c: * gst-libs/gst/webrtc/datachannel.h: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/webrtc.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Add GstWebRTCDataChannel to the library API This makes it more discoverable for bindings and allows bindings to generate static API for the signals and functions. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1168 Part-of: 2020-05-29 22:21:10 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkimagememory.c: vulkanimagememory: fix use-after-free releasing a view If the view has the last reference to the image, then gst_clear_mini_object will destroy the image and the lock used in the next line. Part-of: 2020-05-29 22:17:24 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkimagememory.c: vkimagememory: actually check the length of a ptr array Not it's value is > 0 which should always be true. Part-of: 2020-05-28 11:51:28 -0700 Ederson de Souza * ext/avtp/meson.build: avtp: Ensure that the avtp plugin is only built on Linux It uses some Linux only features. This also prevents gst-build trying to get libavtp on non-Linux environments. 2020-05-29 11:36:06 -0700 Ederson de Souza * tests/check/elements/avtpcrfcheck.c: * tests/check/elements/avtpcrfsync.c: * tests/check/elements/avtpcrfutil.c: * tests/check/elements/avtpcvfpay.c: tests/avtp: Plug some (more) leaks Some leaks were introduced in new tests - this patch fix them. Part-of: 2020-04-08 14:40:56 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add support 12-bit 420 encoding P016 is used for 12-bit encoding in MediaSDK, so the Shift flag is set in the mfx parameters Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=P012_LE ! msdkh265enc ! \ fakesink Part-of: 2020-05-19 14:59:25 +0800 Xu Guangxin * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdkvpp: fix "failed to create new MSDK memory" all msdk output surfaces come from out_alloc_resp, so the buffer count is not resizable. we need set min_buffers, max_buffers to same size. steps to reproduce 1. ffmpeg -f lavfi -i testsrc=duration=10:size=320x240:rate=30:decimals=3 -pix_fmt yuv420p -c:v libx265 ~/bits/hevc/test.265 2. GST_GL_PLATFORM=egl gst-launch-1.0 -v filesrc location=~/bits/hevc/test.265 ! h265parse ! msdkh265dec ! msdkvpp ! queue ! glimagesink you will see error like this: ERROR default gstmsdkvideomemory.c:77:gst_msdk_video_allocator_get_surface: failed to get surface available ERROR msdkbufferpool gstmsdkbufferpool.c:270:gst_msdk_buffer_pool_alloc_buffer: failed to create new MSDK memory ERROR msdkvpp gstmsdkvpp.c:297:create_output_buffer: failed to create output video buffer ERROR msdkdec gstmsdkdec.c:699:gst_msdkdec_finish_task: Failed to finish frame ERROR msdkdec gstmsdkdec.c:1085:gst_msdkdec_handle_frame: Failed to finish a task Part-of: 2020-05-19 15:14:34 +0800 Xu Guangxin * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdkvpp: hold GstBuffer ref count for locked surfaces Part-of: 2020-05-29 22:55:56 +0900 Seungha Yang * sys/mediafoundation/mediacapturewrapper.cpp: mediafoundation: Use core dispatcher of current view instead of main view Main view might be hidden depending on application's view tree. In that case, ICoreApplication object doesn't return get_MainView() method Note that nothing about this behavior was documented by Microsoft https://docs.microsoft.com/en-us/uwp/api/windows.applicationmodel.core.coreapplication.mainview Part-of: 2020-05-28 22:48:15 +0100 Tim-Philipp Müller * ext/vulkan/meson.build: vulkan: fix use of assert() with older meson versions Follow-up to !1307 Part-of: 2020-05-28 19:07:32 +0100 Tim-Philipp Müller * ext/vulkan/meson.build: * gst-libs/gst/vulkan/meson.build: vulkan: don't run tests or build lib if plugin isn't actually built The unit tests only checked for vulkan_dep.found(), which can be true if the libs are there but glslc was not found, in which case the plugin wouldn't be built and the unit tests would fail because of missing vulkan plugins. Doesn't really make much sense to build the vulkan integration lib either if we're not going to build the vulkan plugin, so just disable both for now if glslc is not available. Fixes #1301 Part-of: 2020-05-27 14:44:01 +0200 Jan Alexander Steffens (heftig) * tests/check/elements/mpegtsdemux.c: mpegtsdemux: tests: Test that tsparse doesn't drop padding Part-of: 2020-05-26 22:40:04 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtsparse.c: mpegtsdemux: Deliver all packets to tsparse 34af8ed66a7c63048ce0bdf59bbe61011d7c6292 changed the code to use the packetizer's packets instead of the incoming buffers, but mpegtsbase didn't actually push all packets to the subclass. As a result, padding (PID 0x1FFF) packets got lost. Add a new boolean to toggle pushing unknown packets to mpegtsbase and have mpegtsparse make use of it. Part-of: 2020-05-28 20:46:02 +0900 Seungha Yang * sys/mediafoundation/gstmfutils.cpp: mediafoundation: Fix undeclared identifier error on UWP build Some symbols are not available in case of UWP Part-of: 2020-05-28 18:18:58 +1000 Jan Schmidt * tests/check/elements/avtpcrfutil.c: avtp: Initialise strack structures to 0 in tests Avoid valgrind warnings about accessing uninitialised memory in the tests by initialisting structures to 0 Part-of: 2020-05-28 17:33:43 +1000 Jan Schmidt * tests/check/elements/avtpcrfbase.c: * tests/check/elements/avtpcrfcheck.c: * tests/check/elements/avtpcrfsync.c: avtp: Fix some leaks in the tests Fix valgrind errors that area showing on the CI now that AVTP elements are built. Part-of: 2020-05-25 13:10:20 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: webrtc: handle an ice-lite remote offer When the remote peer offers an ice-lite SDP, we need to configure our ICE negotiation to be in controlling mode as the peer will not be. Part-of: 2020-05-08 17:30:21 +0200 Stéphane Cerveau * gst-libs/gst/codecparsers/gsth265parser.h: codecparsers: fix typo in GstH265RegisteredUserData doc Part-of: 2020-05-27 15:17:12 +0100 Tim-Philipp Müller * tests/check/meson.build: tests: fix meson test env setup to make sure we use the right gst-plugin-scanner If core is built as a subproject (e.g. as in gst-build), make sure to use the gst-plugin-scanner from the built subproject. Without this, gstreamer might accidentally use the gst-plugin-scanner from the install prefix if that exists, which in turn might drag in gst library versions we didn't mean to drag in. Those gst library versions might then be older than what our current build needs, and might cause our newly-built plugins to get blacklisted in the test registry because they rely on a symbol that the wrongly-pulled in gst lib doesn't have. This should fix running of unit tests in gst-build when invoking meson test or ninja test from outside the devenv for the case where there is an older or different-version gst-plugin-scanner installed in the install prefix. In case no gst-plugin-scanner is installed in the install prefix, this will fix "GStreamer-WARNING: External plugin loader failed. This most likely means that the plugin loader helper binary was not found or could not be run. You might need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual." warnings when running the unit tests. In the case where we find GStreamer core via pkg-config we use a newly-added pkg-config var "pluginscannerdir" to get the right directory. This has the benefit of working transparently for both installed and uninstalled pkg-config files/setups. Part-of: 2020-05-22 05:55:03 +0900 Seungha Yang * sys/mediafoundation/gstmfmp3enc.cpp: * sys/mediafoundation/gstmfmp3enc.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Add support MP3 audio encoding Add MediaFoundation MP3 encoder Part-of: 2020-05-18 18:12:38 +0900 Seungha Yang * sys/mediafoundation/gstmfaacenc.cpp: * sys/mediafoundation/gstmfaacenc.h: * sys/mediafoundation/gstmfaudioenc.cpp: * sys/mediafoundation/gstmfaudioenc.h: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmftransform.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Add support for AAC encoding Add MediaFoundation AAC encoder element. Before Windows 10, mono and stereo channels were supported audio channels configuration by AAC encoder MFT. However, on Windows 10, 5.1 channels support was introduced. To expose correct range of support format by this element whatever the OS version is, this element will enumerate all the supported format by the AAC encoder MFT and then will configure sink/src templates while plugin init. Part-of: 2020-05-24 00:46:38 +0900 Seungha Yang * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfutils.h: * sys/mediafoundation/gstmfvideoenc.cpp: mfutils: Move IMediaType release function to common utility Part-of: 2020-05-18 00:41:14 +0900 Seungha Yang * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfutils.h: * sys/mediafoundation/meson.build: mediafoundation: Add util function to dump IMFAttributes values It would be useful for debugging. Reference: https://docs.microsoft.com/en-us/windows/win32/medfound/media-type-debugging-code Part-of: 2020-05-27 03:50:57 +0900 Seungha Yang * sys/d3d11/gstd3d11window_win32.cpp: d3d11window_win32: Create internal window on parent window's thread If parent and child windows are running on different thread, there is always a chance to cause deadlock as DefWindowProc() call from child window thread might be blocked until the message is handled by parent's window procedure. Part-of: 2020-05-27 01:52:59 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11window: Add unprepare method to clear internal resource GObject::dispose method can be called multiple times. As win32 d3d11window has an internal thread and because GObject::dispose method could be called from the thread, it might cause problems such as trying to join self-thread Part-of: 2020-05-25 21:18:16 +0900 Seungha Yang * sys/mediafoundation/gstmfcaptureengine.cpp: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourcereader.cpp: mfsourceobject: Remove useless null check for string We can pass null for the value of string type property. Part-of: 2020-05-25 20:59:50 +0900 Seungha Yang * sys/mediafoundation/gstmfcaptureengine.cpp: * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/mediacapturewrapper.cpp: mediafoundation: Use G_BEGIN_DECLS/G_END_DECLS pair everywhere ... instead of extern "c" {} block. Part-of: 2020-05-20 23:23:08 +0900 Seungha Yang * sys/mediafoundation/AsyncOperations.h: * sys/mediafoundation/gstmfcapturewinrt.cpp: * sys/mediafoundation/gstmfcapturewinrt.h: * sys/mediafoundation/gstmfdevice.c: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfvideosrc.c: * sys/mediafoundation/mediacapturewrapper.cpp: * sys/mediafoundation/mediacapturewrapper.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Add support video capture on UWP app New video capture implementation using WinRT Media APIs for UWP app. Due to the strict permission policy of UWP, device enumeration and open should be done via new WinRT APIs and to get permission from users, it will invoke permission dialog on UI. Strictly saying, this implementation is not a part of MediaFoundation but structurally it's very similar to MediaFoundation API. So we can avoid some code duplication by adding this implementation into MediaFoundation plugin. This implementation requires UniversalApiContract version >= 6.0 which is part of Windows 10 version 1803 (Redstone 4) Part-of: 2020-05-20 23:56:38 +0900 Seungha Yang * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: mfsourceobject: Move device name, path, and index to public struct ... so that subclass can access each value and update them. Part-of: 2020-05-20 22:59:19 +0900 Seungha Yang * sys/mediafoundation/gstmfcaptureengine.cpp: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: mediafoundation: Fix typo in source object impl. Part-of: 2020-05-25 15:36:38 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Unset DISCONT flag if not discontinuous And also set/unset the RESYNC flag accordingly. It can happen that the flag is preserved by GstAdapter from the input buffer. For example if a big input buffer is split into many small ones, each of the small ones would have the flag set. All other buffer flags seem safe to keep here if they were set, including the GAP flag. Also ensure that the buffer is actually writable before changing any flags or metadata on it. Part-of: 2020-05-25 19:22:50 +0900 Seungha Yang * sys/mediafoundation/gstmftransform.cpp: mftransform: Clear unused output IMediaSample If MFT doesn't produce encoded output, need to free allocated output sample and buffer. Part-of: 2020-05-25 01:49:00 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle old streams claiming to be HDMV with Opus GStreamer 1.16 and earlier produced streams with HDMV registration id but with Opus audio streams on the stream ID that AC-4 now uses. Make sure those still play back by special casing the check for AC-4 in HDMV Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1295 Part-of: 2020-05-24 06:22:07 +1000 Jan Schmidt * ext/srt/gstsrtobject.c: srt: Don't leak the connection_poll_id on close() Attempting to reach an inactive SRT peer in caller mode was leaking an fd every few seconds in the gst_srt_object_close()/open() loop. Part-of: 2020-05-24 19:12:28 +0900 Seungha Yang * sys/mediafoundation/gstmfvideoenc.cpp: mfvideoenc: Fix huge memory leak Subclass must unref passed GstVideoCodecFrame on GstVideoEncoder::handle_frame() Part-of: 2020-05-19 10:47:25 -0400 Thibault Saunier * ext/soundtouch/gstpitch.cc: pitch: Remove useless restriction on number of channel It handles any number of channels just fine Part-of: 2020-05-23 02:33:24 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Disallow multiple slice group as we don't support FMO Even though it might be supported by accelerator, baseclass is not ready to support it. Part-of: 2020-05-23 00:57:23 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvh264sldec: Fix wrong scaling list matrix scan order Quatization matrix of NVDEC should be raster scan order but h264parser stores it in zig-zag scan order. We need to convert the matrix. Part-of: 2020-05-21 11:20:39 +0000 Andrey Sazonov * gst/asfmux/gstasfmux.c: asfmux: consistent sscanf args usage Part-of: 2020-05-20 07:35:28 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codecs: h264: Add missing break There was a missing break for the 4:4:4 case which would break the sizeimage calculation. We don't currently have hardware that supports 4:4:4, so this code wasn't tested. This was detected by Coverity. CID 1463592 1463591 Part-of: 2020-05-21 14:28:38 +0000 Andrey Sazonov * gst-libs/gst/audio/gstplanaraudioadapter.c: planaraudioadapter: fix possible NULL ptr dereference Part-of: 2020-05-21 11:24:51 +0000 Andrey Sazonov * gst/sdp/gstsdpdemux.c: sdpdemux: fix klocwork issues Part-of: 2020-05-19 14:58:35 +1000 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amc/videodec: only retrieve the stride/slice-height for raw output When outputting to a surface, these values may not exist. As found on a Google Pixel 3. Part-of: 2020-05-14 17:13:00 +0200 Stéphane Cerveau * ext/openjpeg/meson.build: meson: add libopenjp2 fallback for openjpeg As a wrap is now available in gst-build, the fallback can be used. Part-of: 2020-05-13 15:02:41 -0700 Ederson de Souza * ext/avtp/meson.build: avtp: Add libavtp fallback dependence So that libavtp can be found if added as subproject on gst-build. Part-of: 2020-05-01 15:58:09 +0900 Seungha Yang * sys/mediafoundation/gstmfdevice.c: * sys/mediafoundation/gstmfdevice.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Add device provider implementation Only static device probing is supported for now Part-of: 2020-05-01 15:12:43 +0900 Seungha Yang * sys/mediafoundation/gstmfsourceobject.c: mfsourceobject: Store selected device path, name and index Update path, name and index with selected device so that checked by get_property() after constructed. Part-of: 2020-05-20 10:54:21 +0200 Edward Hervey * gst/rtmp2/gstrtmp2src.c: rtmp2src: Answer scheduling query Just like for rtmpsrc, we must inform downstream that we are a sequential (i.e. don't do random access efficiently) and bandwith-limited (i.e. might need buffering downstream) element Fixes buffering issues with playbin3 Part-of: 2020-05-06 12:27:56 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2slh264dec: Request large enough bitstream buffer The Cedrus driver would otherwise choose 1KB buffer, which is too small. This follows what some drivers do, which is simply to use the size a packed raw image would have. Specifications do not really guaranty any minimum compression ratio. Part-of: 2020-05-05 17:55:19 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2slh264dec: Add slice based decoder support This adds support for slice based decoder like the Allwinner/Cedrus driver. In order to keep things efficient, we hold the sink buffer until we reach the end of the picture. Note that as we don't know which one is last, we lazy queue the slices. This effectively introduces one slice latency. Part-of: 2020-04-30 15:17:05 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2codecdec: Fix error handling If none of the format the HW produce is supported, the fiter will be NULL, which would lead to assertion when trying to release it. Part-of: 2020-04-30 14:18:47 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2format.c: v4l2decoder: Add legacy non-multiplanar support The Cedrus driver uses the lagacy buffer type (non-mplane). This automatically detect and use the right v4l2_buf_type. This also affect code using v4l2_buffer and v4l2_format structures. Part-of: 2020-05-05 17:50:22 -0400 Nicolas Dufresne * sys/v4l2codecs/linux/h264-ctrls.h: * sys/v4l2codecs/linux/types-compat.h: * sys/v4l2codecs/linux/v4l2-common.h: * sys/v4l2codecs/linux/v4l2-controls.h: * sys/v4l2codecs/linux/videodev2.h: v4l2codecs: Update kernel headers Part-of: 2020-05-16 21:52:59 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: d3d11convert: Fix fallback texture setup when resolution is not even number When texture format is semi-planar, resolution should be even number, and add missing P016 format handling Part-of: 2020-05-16 21:45:02 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11convert: Fix fallback texture copy Fix texture copy when input texture has non-zero subresource index Part-of: 2020-05-16 20:45:23 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/plugin.c: d3d11: Add support for video rescale and rename element to d3d11convert GstD3D11ColorConverter implementation is able to rescale video as well. By doing colorspace conversion and rescale at once, we can save one cycle of shader pipeline which will can save GPU resource. Since this element can support color space conversion and rescale, it's renamed as d3d11convert Part-of: 2020-05-16 20:12:33 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: d3d11: Move scoring util method for colorspace conversion to colorconvert element It's used only by colorconvert element. Part-of: 2020-05-16 11:14:58 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: chain finalize vmethod Part-of: 2020-05-13 17:23:12 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: Only set relevant default weight values This is minor optimization to avoid setting values we don't need. It also makes debugging easier since only relevant values a non-zero now. Part-of: 2020-05-13 15:32:44 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: Fix default ref list size The default in PPS was not applied properly. The default does not apply for I-Slice and l1 default only applies for B-Slice. This fixes the slice values for num_ref_idx_l0_active_minus1 and num_ref_idx_l1_active_minus1. Part-of: 2020-05-12 12:23:15 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264decoder: Use calculated values for max_pic_num/frame_num The parser pre-calculate these already, just use them. Part-of: 2020-05-03 17:30:34 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/nvcodec/gstnvh264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.c: codecs: h264decoder: ref pic lists as decode_slice parameters Pass reference picture lists to decode_slice() vmethods Change gstv4l2codech264dec and gstnvh264dec accordingly. Part-of: 2020-04-27 16:53:45 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: codecs: h264decoder: handle reference picture lists Part-of: 2020-05-15 14:56:27 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264decoder: Port from GList to GArray Using glist requires a lot of small allocation at runtime and also it comes with a slow sort algorithm. As we play with that for very frame and slices, use GArray instead. Note that we cache some arrays in the instance as there is no support for stack allocated arrays in GArray. Part-of: 2020-05-08 17:56:48 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Make get_long_ref_by_pic_num() transfer none We don't use the extra reference, so let's just avoid the extra ref/unref. Part-of: 2020-05-06 12:23:34 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: codecs: h264decoder: Make get_short_ref_by_pic_num() transfer none We don't use the extra reference, so let's just avoid the extra ref/unref. Part-of: 2020-05-19 15:39:50 +0200 Stéphane Cerveau * tests/check/meson.build: tests: fix nalutils file name The filename was too long causing issues with ccache Fix https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/97 Part-of: 2020-05-18 14:19:04 +0200 Jan Alexander Steffens (heftig) * tests/check/elements/mpegtsdemux.c: * tests/check/meson.build: mpegtsdemux: tests: Add simple tests for tsparse and tsdemux Part-of: 2020-05-15 17:05:59 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtsparse.c: mpegtsdemux: Close a buffer leak and simplify input_done tsparse leaked input buffers quite badly: GST_TRACERS=leaks GST_DEBUG=GST_TRACER:9 gst-launch-1.0 audiotestsrc num-buffers=3 ! avenc_aac ! mpegtsmux ! tsparse ! fakesink The input_done vfunc was passed the input buffer, which it had to consume. For this reason, the base class takes a reference on the buffer if and only if input_done is not NULL. Before 34af8ed66a7c63048ce0bdf59bbe61011d7c6292, input_done was used in tsparse to pass on the input buffer on the "src" pad. That commit changed the code to packetize for that pad as well and removed the use of input_done. Afterwards, 0d2e9085236ed94622c327f73489e558cc95d05f set input_done again in order to handle automatic alignment of the output buffers to the input buffers. However, it ignored the provided buffer and did not even unref it, causing a leak. Since no code makes use of the buffer provided with input_done, just remove the argument in order to simplify things a bit. Part-of: 2020-05-17 10:27:03 +0200 Mats Lindestam * ext/curl/gstcurlhttpsink.c: gstcurlhttpsink: Set 'Expect: 100-continue'-header In the upgrade of libcurl from 7.64.1 to 7.69.1 the EXPECT_100_THRESHOLD has been increased from 1 Kb to 1 Mb (see https://curl.haxx.se/mail/lib-2020-01/0050.html). This caused the gstcurlhttpsink to not being able to rewind and resend in the case, e.g. response '401 Unauthorized'. Now the 'Expect: 100-continue'-header is explicitly set in the gstcurlhttpsink. Part-of: 2020-04-29 16:43:06 -0400 Arun Raghavan * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: opensles: Remove hard-coded buffer-/latency-time values These were originally required in early Android versions, but are no longer needed. 2020-05-14 20:47:06 +0900 Seungha Yang * sys/mediafoundation/gstmfcaptureengine.cpp: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: mediafoundation: Refactor GstMFSourceObject implementation * Move CoInitializeEx/CoUninitialize pair into thread function in order to ensure MTA COM thread * Move common code to baseclass Part-of: 2020-05-14 20:17:33 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmftransform.h: * sys/mediafoundation/plugin.c: mediafoundation: Remove COM thread constraints from GstMFTransform object Move CoInitializeEx/CoUninitialize pair into our dedicated thread so that we can ensure COM thread is MTA. This will remove thread constraints around plugin init. Part-of: 2020-05-15 13:52:06 +1000 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amcvideodec: fix sync meta copying not taking a reference Fixup for 9b9e39be248389370e80b429da5a528418733483: amc: Fix crash when a sync_meta survives its sink https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/603 Part-of: 2020-04-13 18:09:55 +0900 J. Kim * ext/srt/gstsrtobject.c: srtobject: add streamid property The stream id starts with '#!::' according to SRT Access Control[1], but GstURI requires URI encoded string.This commit introduces additional property to set the id by normal string. [1] https://github.com/Haivision/srt/blob/master/docs/AccessControl.md 2020-05-12 05:00:36 +0530 Nirbheek Chauhan * ext/modplug/meson.build: * ext/openni2/meson.build: * meson.build: meson: Pass native: false to add_languages() This is needed for cross-compiling without a build machine compiler available. The option was added in 0.54, but we only need this in Cerbero and it doesn't affect older versions so it should be ok. Will only cause a spurious warning. Part-of: 2020-05-12 10:55:45 -0400 Alex Hoenig * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: detect and ignore gap buffers Fixes #1291. Without this, when a stream has gaps and then resumes, the next buffer PTS that is written to the TS is given the PTS of the first gap. Part-of: 2020-05-12 16:05:01 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: check fraction multiply for overflow It should not happen and if it does, something went very wrong earlier CID 1463350 Part-of: 2020-05-12 16:01:42 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: tighten up a couple of NULL checks CID 1463347 CID 1463346 CID 1463345 Part-of: 2020-05-12 16:00:58 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: fix unintialized read of mapped output info in error case We only need to gst_buffer_unmap() if we have gst_buffer_map()ed. In most cases we can shorten the lenght of time we need to map the output buffer. Fix similar occurences elsewhere. CID 1463349 Part-of: 2020-05-12 15:24:32 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: fix uninitialized read in error case CID 1463351 Part-of: 2020-05-10 17:38:11 +0800 Ting-Wei Lan * sys/v4l2codecs/gstv4l2codecdevice.c: * sys/v4l2codecs/linux/media.h: * sys/v4l2codecs/linux/types-compat.h: * sys/v4l2codecs/meson.build: v4l2codecs: Fix compilation error on FreeBSD This commit does the following things to fix compilation on FreeBSD: 1. Add required typedefs to linux/types-compat.h. 2. Remove unnecessary include linux/ioctl.h and replace linux/types.h with linux/types-compat.h. Both files do not exist on FreeBSD. 3. Check the header including makedev macro. FreeBSD does not have sys/sysmacros.h, and including it unconditionally causes error. Part-of: 2020-05-11 17:14:09 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: implement discont handling Part-of: 2020-05-07 23:59:30 +1000 Matthew Waters * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: use a better padding byte sequence for writing cdp 0xf8 can be interpreted as cea608 data at the beginning of a cdp packet as the cc_valid bit is not checked when cc_valid in (0b00 or 0b01). Part-of: 2020-03-19 17:42:13 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: * tests/check/elements/ccconverter.c: ccconverter: split temporary storage into 3 Instead of storing the raw cc_data, store the 2 cea608 fields individually as well as the ccp data. Simply copying the input cc_data to the output cc_data violates a number of requirements in the cea708 specification. The most prominent being, that cea608 triples must be placed at the beginning of each cdp. We also need to comply with the framerate-dpendent limits for both the cea608 and the ccp data which may involve splitting or merging some cea608 data but not ccp data or vice versa. Part-of: 2020-03-17 17:23:44 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconvert: compact input cc_data where possible Skip over padding cc_data triples. Part-of: 2020-03-13 10:54:02 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: * tests/check/elements/ccconverter.c: ccconverter: implement support for CDP framerate conversions - Any format involving CDP is supported. - Time codes (if present) are scaled as well. Part-of: 2020-03-12 16:08:54 +1100 Matthew Waters * tests/check/elements/ccconverter.c: * tests/check/meson.build: tests/ccconverter: test the time codes are successfully passed through Where time codes are not stored in the caption data themselves Part-of: 2020-03-12 15:06:46 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: ccconverter: introduce define for max cdp packet length Part-of: 2020-03-12 15:01:02 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: don't rely on external state in *_internal() This allows using the _internal() variants for simply converting some caption data without relying on any external state. Part-of: 2020-03-12 14:06:49 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: * tests/check/elements/ccconverter.c: ccconverter: cc_count limits are per framerate Enforce this and add a test for cdp input being too large. Part-of: 2020-03-12 12:54:41 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: refactor cdp id, fps, max_cc_count into a table Part-of: 2020-03-12 09:55:40 +1100 Matthew Waters * ext/closedcaption/gstccconverter.c: ccconverter: pivot to implementing generate_output Will make a n-n buffer element much easier to implement. Part-of: 2020-05-09 19:59:46 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/vulkan/gstvkerror.c: vulkan: Drop use of VK_RESULT_BEGIN_RANGE This was removed in Vulkan 1.2.140. > Shortly after 2020-04-24, we will be removing the automatically > generated `VK_*_BEGIN_RANGE`, `VK_*_END_RANGE`, and `VK_*_RANGE_SIZE` > tokens from the Vulkan headers. These tokens are currently defined for > some enumerated types, but are explicitly not part of the Vulkan API. > They existed only to support some Vulkan implementation internals, > which no longer require them. We will be accepting comments on this > topic in [#1230], but we strongly suggest any external projects using > these tokens immediately migrate away from them. [#1230]: https://github.com/KhronosGroup/Vulkan-Docs/issues/1230 Part-of: 2020-05-08 22:36:01 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Perform discont tracking on running time Otherwise we would have to drain on every segment event. Like this we can handle segment events that don't cause a discontinuity in running time to be handled without draining. Part-of: 2020-05-08 21:36:44 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Keep incoming and outgoing segments separate We might have to drain already queued input based on the old segment before forwarding the new segment event. The new segment is only forwarded after a discont as otherwise we might cause unnecessary timestamp jumps as we output buffers timestamped based on sample counts. Part-of: 2020-04-30 16:01:13 +0000 Chris Ayoup * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: webrtc: move filtering properties to webrtcice We want webrtcbin to only expose properties that are defined in JSEP, so these additional properties should be moved out. In order to access them, the webrtcice instance is exposed from webrtcbin. Part-of: 2020-04-17 18:00:59 +0000 Chris Ayoup * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: webrtc: allow setting local IP addresses If a local IP address is specified, ICE gathering can be much faster in environments where there are multiple IP addreses but only some are usable (for example, if you are running docker on the machine). Part-of: 2020-04-16 22:37:35 +0000 Chris Ayoup * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: webrtc: Allow toggling TCP and UDP candidates Add some properties to allow TCP and UDP candidates to be toggled. This is useful in cases where someone is using this element in an environment where it is known in advance whether a given transport will work or not and will prevent wasting time generating and checking candidate pairs that will not succeed. Part-of: 2020-04-02 10:44:31 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: clear the parameters after closing the session Otherwise the stale values are used for the new process. Part-of: 2020-05-10 11:23:02 +0300 Sebastian Dröge * ext/spandsp/gstspanplc.c: spanplc: Don't segfault when retrieving the stats property without a spanplc context For example when trying to get the property value in NULL state. Part-of: 2020-05-10 11:16:44 +0300 Sebastian Dröge * gst/onvif/gstrtponviftimestamp.c: onviftimestamp: Add missing `break` in set_property() Part-of: 2020-05-07 14:05:16 -0400 Nicolas Dufresne * tests/check/elements/h265parse.c: test: h265parse: Test parsing buffer the ends with half a NAL header This test cover the case where we are parsing, but our current buffers ends with half the NAL header (which is 2 bytes in HEVC). Previously we would throw an error message on the bus. Part-of: 2020-05-07 13:59:33 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth265parser.c: h265parse: Ensure parsing ends on start-code + full header The parser is used all over the place assuming that after calling gst_h265_parser_identify_nalu(), the start-code found is can also be identified. In H264 this works, because scan_for_start_code rely on gst_byte_reader_masked_scan_uint32() that ensures that 1 byte passed the 3 bytes start code is found. But for HEVC, we need two bytes to identify the following NAL. This patch will return NO_NAL_END, even if a start code is found in the case there was not enough bytes. This solution was chosen to maintain backward compatibility, and reduce complexicity. Fixes #1287 Part-of: 2020-05-07 11:09:23 -0400 Nicolas Dufresne * tests/check/elements/h264parse.c: * tests/check/elements/h265parse.c: test: h264/h265: Add test for four bytes start code initial skip This test detects if the parser have skipped too much and dropped meaninful NALs. Part-of: 2020-05-07 12:02:40 -0400 Nicolas Dufresne * tests/check/elements/h264parse.c: * tests/check/elements/h265parse.c: * tests/check/elements/parser.c: * tests/check/elements/parser.h: test: h264/h265: Constify all test buffers This ensure that no test modify other tests data. Part-of: 2020-05-07 11:06:45 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264/h265parse: Fix initial skip Account for start codes possibly be 4 bytes. For HEVC, also take into account that we might be missing only one of the two identification bytes. Part-of: 2020-05-07 08:29:28 -0400 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: h265parse: Ensure correct timestamps If the input has a miss-placed filler zero byte (e.g. a filler without a 4 bytes start code on the next NAL), we would endup using the same timestamp twice. Ask the base class to read the timestamp from the buffer were the NAL actually starts. Part-of: 2020-05-07 07:43:30 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Removed impossible error case Same as done for H264, this error was trying to catch the case where we had a start code without any bytes afterward. This will never happen since the start code scanner only returns a match if there is one byte after start code (pattern 0x00000100 / mask 0xffffff00). In H264, once byte is sufficient to identify the NALU. Part-of: 2020-05-06 22:28:34 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: * gst/videoparsers/gsth264parse.c: * tests/check/elements/h264parse.c: h264parse: Properly handle 4 bytes start code This will stop stripping four bytes start code. This was fixed and broken again as it was causing the a timestamp shift. We now call gst_base_parse_set_ts_at_offset() with the offset of the first NAL to ensure that fixing a moderatly broken input stream won't affect the timestamps. We also fixes the unit test, removing a comment about the stripping behaviour not being correct. Part-of: 2020-05-06 22:18:12 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Fix NAL size check for identification Unlike H264, H265 requires 2 bytes after the start code to allow NAL identification. This would otherwise report a broken NAL and skip important data. Fixes #1287 Part-of: 2020-05-06 22:13:45 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Removed impossible error case This error was trying to catch the case where we had a start code without any bytes afterward. This will never happen since the start code scanner only returns a match if there is one byte adter start code (pattern 0x00000100 / mask 0xffffff00). Part-of: 2020-04-29 16:19:08 +0800 Xu Guangxin * sys/msdk/gstmsdkbufferpool.c: msdk: bufferpool: set alignment to video meta else gst_video_meta_validate_alignment will report error like "videometa gstvideometa.c:416:gst_video_meta_validate_alignment: Stride of plane 0 defined in meta (384) is different from the one computed from the alignment (320)" Part-of: 2020-05-06 20:04:17 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Unref latency query after usage Part-of: 2020-05-06 11:47:56 +0300 Sebastian Dröge * ext/musepack/gstmusepackdec.c: musepackdec: Don't fail all queries if no sample rate is known yet The sample rate is only needed for the POSITION/DURATION queries and we would otherwise fail important queries like the CAPS query. Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/498 Part-of: 2020-05-01 07:46:56 +0200 Luka Blaskovic * ext/opencv/meson.build: opencv: allow compilation against 4.3.x Part-of: 2020-05-06 15:36:19 +1000 Matthew Waters * ext/webrtc/webrtcdatachannel.c: * tests/check/elements/webrtcbin.c: webrtc: fix an off-by-one calculating low-threshold We were not signalling low-threshold when the previous amount was at exactly the low-threshold mark. Part-of: 2020-05-06 15:35:26 +1000 Matthew Waters * tests/check/elements/webrtcbin.c: webrtc: fix a slightly racy test There is no guarantee that the peer data channel has transitioned to open when we do. Part-of: 2020-05-06 15:49:05 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: remove debugging leftover Part-of: 2020-05-06 00:30:34 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/sctptransport.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcdatachannel.c: webrtc: always reply to a promise Otherwise, we defeat the purpose of a promise. We were not replying when the state was closed. Part-of: 2020-05-06 00:25:45 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: webrtc: name threads based on the element name Makes debugging a busy loop possibly easier Part-of: 2020-05-05 17:15:51 +1000 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: fix a data channel leak in a test test_data_channel_create_after_negotiate overrides the data_channel_data without ever freeing it. Part-of: 2020-05-05 17:14:46 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: correctly use the pad template GstHarness uses this for releasing request pads correctly. Fixes numerous leaks in the webrtc unit tests. Part-of: 2020-05-05 14:35:10 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: Fix a couple of renegotiation races When negotiating the SDP we should only connect the streams that are actually mentioned in the SDP. All other streams are not relevant at this time and would likely be part of a future SDP update. Fixes a couple of the renegotiation webrtc unit tests. Part-of: 2020-05-05 14:33:34 +1000 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: move bus thread creation earlier Fixes a small deadlock race where the bus watch GSource could execute before the unlock mutex GSource. Part-of: 2020-05-04 14:39:45 +1000 Matthew Waters * tests/check/meson.build: tests: add libnice to the plugin loading whitelist Allows webrtcbin to actually unit test some negotiation scenarios. Without this, only two of the possible 33 tests are being executed. Part-of: 2020-05-05 12:01:21 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2slvp8dec: Flip the meaning of segment_feature_mode In section 9.3.4 a), segment_feature_mode have 0 for absolute and 1 for delta, while in 19.2, it says the opposite. But the reference code, which usually rules over the text state that 1 means absolute: if (hdr->update_data) { hdr->abs = bool_get_bit(bool); And uses it with that meaning to decide weither to override the existing value or just add the detla. This fixes multiple decoding issues. Part-of: 2020-05-04 15:33:39 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2slvp8dec: Copy header version This field was not copied. Part-of: 2020-05-04 14:54:23 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2slvp8dec: Add debugging for reference frames This simply trace the frame number of the references used for decoding. Part-of: 2020-05-04 14:52:45 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2slvp8dec: Ensure width/height is always set Our parser strictly read the bitstream. As it's known from DXVA that always having a valid width/height might be needed, use the cached width/height instead of the value from the parser. This didn't impact Hantro driver. Part-of: 2020-05-04 14:52:02 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp8dec.c: v4l2slvp8dec: Fix debug category name Part-of: 2020-05-05 17:40:51 +0200 Edward Hervey * ext/iqa/iqa.c: iqa: Fix all leaks in error path CID #1456049 CID #1456080 CID #1456083 Part-of: 2020-03-29 00:45:47 +0800 He Junyan * tests/check/libs/h265parser.c: test: h265parser: Add a test case for SCC extension. Part-of: 2020-03-28 14:46:13 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * tests/check/libs/h265parser.c: libs: parser: h265: Add SCC extension support. Add support for screen content coding extensions profiles. Part-of: 2020-05-06 01:25:04 +0900 Seungha Yang * sys/d3d11/gstd3d11vp8dec.c: d3d11vp8dec: Remove useless assign operation It's already been done in the line just above. Part-of: 2020-05-05 16:07:40 +0200 Edward Hervey * tests/check/elements/dash_mpd.c: check: Fix dash mpd unit test Unexpected critical/warning: g_object_set_is_valid_property: object class 'GstMPDBaseURLNode' has no property named 'service location' Stack trace: gst_debug_get_stack_trace (gstinfo.c:3021) gst_check_log_critical_func (gstcheck.c:281) g_logv (gmessages.c:1350) g_log (gmessages.c:1415) g_object_set_valist (gobject.c:2327) gst_mpd_client_add_baseurl_node (gstmpdclient.c:3142) dash_mpdparser_check_mpd_client_set_methods (dash_mpd.c:6192) srunner_run_tagged (check_run.c:465) gst_check_run_suite (gstcheck.c:1086) main (dash_mpd.c:6521) __libc_start_main (libc-start.c:308) _start (/home/bilboed/work/devel/gst-build/build/subprojects/gst-plugins-bad/tests/check/elements_dash_mpd:0x40554a) 2020-05-05 20:32:53 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Fix processor output view resource leak Because this object holds reference to native d3d11 device handle internally, related native d3d11 objects would be leaked as well. Part-of: 2020-05-01 14:19:56 +1000 Matthew Waters * ext/sctp/sctpassociation.c: sctp: enable usrsctp debug when supported Part-of: 2020-05-03 10:05:32 +0000 Tim-Philipp Müller * tests/check/elements/curlhttpsrc.c: tests: curlhttpsrc: fix compiler warning on raspbian tests/check/elements/curlhttpsrc.c:142:14: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 8 has type ‘gsize’ {aka ‘unsigned int’} Part-of: 2020-05-03 09:59:45 +0000 Tim-Philipp Müller * sys/nvcodec/gstnvh264dec.c: nvcodec: fix compiler warning in certain setups Fixes gstnvh264dec.c:648:12: warning: unused variable ‘ret’ compiler warning on raspbian where HAVE_NVCODEC_GST_GL is not defined. Part-of: 2020-04-03 10:41:44 -0700 Ederson de Souza * ext/avtp/gstavtpsink.c: avtpsink: Log that AVTPDU transmission failure is due lateness As ENOBUFS is not really clear about what is going on, let's check socket error queue to see if packets are being dropped due being late. Part-of: 2020-04-03 10:41:31 -0700 Ederson de Souza * ext/avtp/gstavtpsink.c: avtpsink: Accept buffers that fall out of segment Proper calculate running time for buffers that are out of current segment and try to honor them. A typical case is for AVTP packets coming from avtpcvfpay element, as those may have DTS that falls out of segment (which is about PTS). By using gst_segment_to_running_time_full(), avtpsink can properly calculate when to transmit those buffers. Part-of: 2020-04-03 10:41:04 -0700 Ederson de Souza * ext/avtp/gstavtpcvfpay.c: avtpcvfpay: Warn about timestamp issues on non-flushing seek Seek events will cause new segments to be sent to avtpcvfpay, and for flushing seeks, a pipeline running time reset. This running time reset, which effectively changes pipeline base time, will cause avtpcvfpay element to generate incorrect DTS for the initial set of buffers sent after FLUSH_STOP. This happens due the fact that base time change happens only when the sink gets the first buffer after the FLUSH_STOP - so avtpcvfpay used the wrong base time to do its calculations. However, if the pipeline is paused before the seek, sink will update base time when pipeline state goes to PLAYING again, before avtpcvfpay gets the first buffers after the flush. Then avtpcvfpay element will be able to normally calculate DTS for the outgoing packets. This patch simply adds a warning message in case a flushing seek is performed on a playing pipeline. Part-of: 2020-04-03 10:40:43 -0700 Ederson de Souza * ext/avtp/gstavtpcvfpay.c: * ext/avtp/gstavtpcvfpay.h: * tests/check/elements/avtpcvfpay.c: avtpcvfpay: Ensure NAL fragments are transmitted following stream specs TSN streams are expected to send packets to the network in a well defined "pace", which is arbitrarily defined for each stream. This pace is defined by the "measurement interval" property of a stream. When the AVTP CVF payloader element - avtpcvfpay - fragments a video frame that is too big to be sent to the network, it currently defines that all fragments should be transmitted at the same time (via DTS property of GstBuffers generated, as sink will use those to time the transmission of the AVTPDU). This doesn't comply with stream definition, which also has a limit on how many packets can be sent on a given measurement interval. This patch solves that by spreading in time the DTS of the GstBuffers containing the AVTPDUs. Two new properties, "measurement-interval" and "max-interval-frames", added to avptcvfpay element so that it knows stream measurement interval and how many AVTPDUs it can send on any of them. More details on the method used to proper spread DTS/PTS according to measurement interval can be found in a code commentary inside this patch. Tests also added for the new property and behaviour. Part-of: 2020-02-24 22:38:39 +0800 Georg Ottinger * gst-libs/gst/codecparsers/gstav1parser.c: * gst-libs/gst/codecparsers/gstav1parser.h: * gst-libs/gst/codecparsers/meson.build: * tests/check/libs/av1parser.c: * tests/check/meson.build: libs: parser: Adds AV1 parser. This is the first version of AV1 parser implementation in GStreamer. A test file is also provied with several test cases. It contains a test sequence taken from the aom testdata set, with one key and one inter-frame. The same test sequence has been reencoded to annexb. testdata is taken from aom testdata (and reencoded for annexb) as well as handcrafted testcases. Once reference testdata is available, the testing could be imporved aswell. Co-author: He Junyan Co-author: Víctor Manuel Jáquez Leal Part-of: 2020-05-01 14:43:55 +0100 Tim-Philipp Müller * gst/autoconvert/gstautoconvert.h: autoconvert: fix compiler warnings with g_atomic on recent GLib versions The volatile is not needed here and causes compiler warnings with newer GLib versions. gstautoconvert.c: In function ‘gst_auto_convert_dispose’ (and elsewhere): glib/gatomic.h:108:3: warning: initialization discards ‘volatile’ qualifier from pointer target type [-Wdiscarded-qualifiers] gstautoconvert.c:224:24: note: in expansion of macro ‘g_atomic_pointer_get’ 224 | GList *factories = g_atomic_pointer_get (&autoconvert->factories); Part-of: 2020-05-01 01:17:08 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: also mark data channel transports as active Fixes negotiation of a bundled sdp with only a data channel. Without marking the transport as active, we would never unblock the transportreceivebin and thus no data would ever reach us. Part-of: 2020-05-01 00:47:53 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: webrtcbin: fix bundle none case with remote offer bundling If the remote is bundling, but we are not and remote is offering. we cannot put the remote media sections into a bundled transport as that is not how we are going to respond. This specific failure case was that the remote ICE credentials were never set on the ice stream and so ice connectivity would fail. Technically, this whole bunde-policy=none handling should be removed eventually when we implement bundle-policy=balanced. Until such time, we have this workaround. Part-of: 2019-09-26 18:12:36 -0700 Vedang Patel * tests/check/elements/avtpcrfutil.c: * tests/check/meson.build: tests: add tests for functions in gstavtpcrfutil.c This adds tests for the helper functions in ext/avtp/gstavtpcrfutils.c 2019-09-26 18:11:42 -0700 Vedang Patel * tests/check/elements/avtpcrfcheck.c: * tests/check/meson.build: tests: Add the tests for CRF Checker element This adds tests to ensure the avtpcrfchecker element validates and drops the packets which do not match the CRF Synchronization criteria. 2019-10-14 13:56:49 -0700 Vedang Patel * tests/check/elements/avtpcrfbase.c: * tests/check/meson.build: tests: Add tests for GstAvtpCrfBase base class. This adds tests which test the functions which do not call any external syscalls and the properties. 2019-10-14 13:56:36 -0700 Vedang Patel * tests/check/elements/avtpcrfsync.c: * tests/check/meson.build: tests: Add tests for CRF Synchronizer element This adds tests to validate whether the avtpcrfsync element applies the adjustment correctly. Also, the infrastructure to include additional source files while compiling is added. This change is exactly the same as the one in gst-plugins-good. 2019-10-14 13:55:57 -0700 Vedang Patel * ext/avtp/gstavtp.c: * ext/avtp/gstavtpcrfcheck.c: * ext/avtp/gstavtpcrfcheck.h: * ext/avtp/meson.build: avtp: Introduce the CRF Check element This commit introduces the AVTP Clock Reference Format (CRF) Checker element. This element re-uses the GstAvtpCrfBase class introduced along with the CRF Synchronizer element. This element will typically be used along with the avtpsrc element to ensure that the AVTP timestamp (and H264 timestamp in case of CVF-H264 packets) is "aligned" with the incoming CRF stream. Here, "aligned" means that the timestamp value should be within 25% of the period of the media clock recovered from the CRF stream. The user can also set an option (drop-invalid) in order to drop any packet whose timestamp is not within the thresholds of the incoming CRF stream. 2020-02-05 16:17:39 -0800 Vedang Patel * ext/avtp/gstavtp.c: * ext/avtp/gstavtpcrfbase.c: * ext/avtp/gstavtpcrfbase.h: * ext/avtp/gstavtpcrfsync.c: * ext/avtp/gstavtpcrfsync.h: * ext/avtp/gstavtpcrfutil.c: * ext/avtp/gstavtpcrfutil.h: * ext/avtp/meson.build: avtp: Introduce the CRF Sync Element This commit introduces the AVTP Clock Reference Format (CRF) Synchronizer element. This element implements the AVTP CRF Listener as described in IEEE 1722-2016 Section 10. CRF is useful in synchronizing events within different systems by distributing a common clock. This is useful in a scenario where there are multiple talkers who are sending data to a single listener which is processing that data. E.g. CCTV cameras on a network sending AVTP video streams to a base station to display on the same screen. It is assumed that all the systems are already time-synchronized with each other. So, the AVTP Talker essentially adjusts the AVTP Presentation Time so it's phase-locked with the reference clock provided by the CRF stream. There are 2 different roles of systems which participate in CRF data exchange. A system can either be a CRF Talker, which samples it's own clock and generates a stream of timestamps to transmit over the network, or a CRF Listener, the system which receives the generated timestamps and recovers the media clock from the timestamps. It then adjusts it's own clock to align with recovered media clock. The timestamps generated by the talker may not be continuous and the listener might have to interpolate some timestamps to recover the media clock. The number of timestamps to interpolate is mentioned in the CRF stream AVTPDU (Refer IEEE 1722-2016 Section 10.4 for AVTPDU structure). Only CRF Listener has been implemented in this commit. The CRF Sync element will create a separate thread to listen for the CRF stream. This thread will calculate and store the average period of the recovered media clock. The pipeline thread will use this stored period along with the first timestamp of the latest CRF AVTPDU received to calculate adjustment for timestamps in the audio/video streams. In case of CRF AVTPDUs with single timestamp, two consecutive CRF AVTPDUs will be used to figure out the average period of the recovered media clock. In case of H264 streams, both AVTP timestamp and H264 timestamp will be adjusted. In the future commits, another "CRF Checker" element will be introduced which will validate the timestamps on the AVTP Listener side. Which is why a lot of code has been implemented as part of the gstcrfbase class. 2019-12-13 11:28:08 -0800 Ederson de Souza * gst/debugutils/gstclockselect.c: * gst/debugutils/gstclockselect.h: * tests/check/elements/clockselect.c: clockselect: Add TAI clock support Via new value for property clock-id, "tai", it's possible to use GST_CLOCK_TYPE_TAI as pipeline clock. Part-of: 2020-01-27 15:16:12 -0800 Ederson de Souza * tests/check/elements/clockselect.c: clockselect: Remove non-sense comment Commentary appears to assume `gst_harness_find_element` return value was "transfer none", but it is not the case. So, element must be unrefed before the end. Part-of: 2020-01-23 15:57:34 +0000 krivoguzovVlad * ext/srt/gstsrtobject.c: Update gstsrtobject.c Part-of: 2019-07-30 17:09:55 -0400 Olivier Crête * gst/rist/gstristrtpdeext.c: * tests/check/elements/ristrtpext.c: ristrtpdeext: Expose the largest sequence number received Part-of: 2020-03-18 17:34:47 -0400 Olivier Crête * gst/rist/gstristrtpdeext.c: * tests/check/elements/ristrtpext.c: ristrtpdeext: Update RTP header extension packet to latest spec Part-of: 2020-03-18 17:14:14 -0400 Olivier Crête * gst/rist/gstristrtpext.c: * tests/check/elements/ristrtpext.c: ristrtpext: Update RTP header extension packet to latest spec Part-of: 2019-07-31 12:01:07 -0400 Olivier Crête * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: Document main profile support Part-of: 2019-07-29 17:53:21 -0400 Olivier Crête * gst/rist/gstristsrc.c: ristsrc: Add ristrtpdeext to the pipeline Part-of: 2019-07-29 13:58:37 -0400 Olivier Crête * gst/rist/gstristsink.c: ristsink: Add ristrtpext to sink Part-of: 2019-07-26 17:57:40 -0400 Olivier Crête * gst/rist/gstristsink.c: ristsink: Receive RIST seqnum ext and feed it to rtxsend Part-of: 2019-07-26 17:43:57 -0400 Olivier Crête * gst/rist/gstristsink.c: ristsink: Pass the session id to the on-app-rtcp callback Part-of: 2019-07-26 17:14:14 -0400 Olivier Crête * gst/rist/gstrist.h: * gst/rist/gstristrtxsend.c: ristrtxsend: Use externally given seqnum extension when available Part-of: 2019-07-26 16:50:21 -0400 Olivier Crête * gst/rist/gstristrtxsend.c: ristrtxsend: Store sent packets with extended seqnum Part-of: 2019-07-26 16:49:51 -0400 Olivier Crête * gst/rist/gstrist.h: * gst/rist/gstristplugin.c: * gst/rist/gstristrtpext.c: rist: Factor our seqnum extension code Part-of: 2019-07-24 17:32:07 -0400 Olivier Crête * tests/check/elements/ristrtpext.c: * tests/check/meson.build: rist: Add test for rtp ext code Part-of: 2019-07-23 17:27:06 -0400 Olivier Crête * gst/rist/gstristrtpdeext.c: rist: Drop packets that are more than G_MAXINT16 seqnum late Part-of: 2019-07-23 17:26:16 -0400 Olivier Crête * gst/rist/gstristrtpext.c: rist: Insert RTP seqnum extension header Part-of: 2019-07-12 11:43:26 -0400 Olivier Crête * gst/rist/gstrist.h: * gst/rist/gstristplugin.c: * gst/rist/gstristrtpdeext.c: * gst/rist/gstristrtpext.c: * gst/rist/meson.build: rist: Add element to remove the header extension Part-of: 2019-07-11 18:53:00 -0400 Olivier Crête * gst/rist/gstrist.h: * gst/rist/gstristplugin.c: * gst/rist/gstristrtpext.c: * gst/rist/meson.build: rist: Add element that inserts the RTP header extension Currently can suppress the TS null packets, but can't insert the seqnum extension yet. Part-of: 2020-05-01 01:51:10 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Allow frame gap even if it's not allowed by SPS It's most likely the case where some frames were dropped for some reason (e.g., broken stream, network loss or so). However, decoder might be able to decode following frames even if some frames are visually broken. Part-of: 2020-04-29 22:01:32 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: only start gathering on local descriptions If we are in a state where we are answering, we would start gathering when the offer is set which is incorrect for at least two reasons. 1. Sending ICE candidates before sending an answer is a hard error in all of the major browsers and will fail the negotiation. 2. If libnice ever adds the username fragment to the candidate for ice-restart hardening, the ice username and fragment would be incorrect. JSEP also hints that the right call flow is to only start gathering when a local description is set in 4.1.9 setLocalDescription "This API indirectly controls the candidate gathering process." as well as hints throughout other sections. Part-of: 2020-04-29 19:42:05 +0900 Seungha Yang * ext/webrtc/webrtcdatachannel.h: webrtc: Correct symbol visibility to fix build warning on Windows GstWebRTCDataChannel is fully internal of plugin webrtcdatachannel.c(50): warning C4273: 'gst_webrtc_data_channel_get_type': inconsistent dll linkage Part-of: 2020-04-29 15:12:36 -0400 Thibault Saunier * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2utils.c: lv2: Namespace global variables and explicitly make them private And fix a LV2_PORT_GROUPS__rearLeft/LV2_PORT_GROUPS__rearRight typo Part-of: 2020-03-20 15:49:06 +0100 Debarshi Ray * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: lv2: Make it build with -fno-common GCC 10 defaults to -fno-common. This means that global variables shared across multiple translation units should be declared as 'extern' in header files and defined in exactly one C file. See: https://gcc.gnu.org/gcc-10/porting_to.html https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1125 Part-of: 2020-04-30 02:41:07 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: d3d11h264dec: Rearrange the order of supported profiles in caps constrained-baseline profile is much preferred than baseline. Part-of: 2020-04-30 02:25:35 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: nvh264sldec: Allow constrained-baseline and baseline profiles Like d3d11h264dec, we need to relax the condition for profiles of nvh264sldec Part-of: 2020-04-23 23:25:21 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: d3d11h264dec: Add constrained-baseline and baseline profile Both profiles are expected to be supported profile by DXVA hardware Part-of: 2020-04-27 20:26:54 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: * sys/v4l2codecs/meson.build: v4l2codecs: Factor out plugin registration This introduce a common place for generic functions and factor out the plugin registration code. This code is nearly identical between implementation. Part-of: 2020-04-27 20:18:52 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2decoder: Relax width/height return value check The driver adjust the width/height to coded size. This was not an issue for H264, as the coded size is in the bitstream, but is an issue with VP8. Part-of: 2020-04-24 16:15:25 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecvp8dec.c: * sys/v4l2codecs/gstv4l2codecvp8dec.h: * sys/v4l2codecs/linux/vp8-ctrls.h: * sys/v4l2codecs/meson.build: * sys/v4l2codecs/plugin.c: v4l2codecs: Add VP8 decoder This is derived from the H264 decoder, some boiler plate will be factored out in the following commits. Part-of: 2020-04-28 14:55:00 -0400 Joshua M. Doe * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfutils.h: mfvideosrc: add GRAY16_LE format support FOURCC "Y16 " is used by FLIR Boson USB Video Class (UVC) camera Part-of: 2020-04-26 22:37:12 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Add fallback for device creation D3D11_CREATE_DEVICE_DEBUG flag will be used while creating d3d11 device to activate debug layer. However, if system doesn't support the debug layer for some reason, we should try to create d3d11 device without the flag. Debug layer should be optional for device creation. Part-of: 2020-04-28 19:58:53 +0900 Seungha Yang * tests/check/elements/mfvideosrc.c: * tests/check/meson.build: tests: mfvideosrc: Add unit test Simple test for reuse scenario Part-of: 2020-04-21 20:49:38 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh265enc.cpp: mediafoundation: Disable querying supprted maximum resolution Initializing MFT for checking supported maximum resolution is too slow. Part-of: 2020-01-07 17:12:17 +0900 Seungha Yang * sys/mediafoundation/gstmfh265enc.cpp: * sys/mediafoundation/gstmfh265enc.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Add h265 encoder Add Media Foundation HEVC encoder Part-of: 2020-01-07 17:45:22 +0900 Seungha Yang * sys/mediafoundation/gstmfh264enc.cpp: * sys/mediafoundation/gstmfh264enc.h: * sys/mediafoundation/gstmftransform.cpp: * sys/mediafoundation/gstmftransform.h: * sys/mediafoundation/gstmfvideoenc.cpp: * sys/mediafoundation/gstmfvideoenc.h: * sys/mediafoundation/gststrmif.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: mediafoundation: Add h264 encoder Add Media Foundation h264 encoder. If hardware encoders are available on system, they will have higher rank than software encoder. Part-of: 2019-10-07 21:49:26 +0900 Seungha Yang * meson_options.txt: * sys/mediafoundation/gstmfcaptureengine.cpp: * sys/mediafoundation/gstmfcaptureengine.h: * sys/mediafoundation/gstmfsourceobject.c: * sys/mediafoundation/gstmfsourceobject.h: * sys/mediafoundation/gstmfsourcereader.cpp: * sys/mediafoundation/gstmfsourcereader.h: * sys/mediafoundation/gstmfutils.cpp: * sys/mediafoundation/gstmfutils.h: * sys/mediafoundation/gstmfvideosrc.c: * sys/mediafoundation/gstmfvideosrc.h: * sys/mediafoundation/meson.build: * sys/mediafoundation/plugin.c: * sys/meson.build: mediafoundation: Introduce Microsoft Media Foundation plugin The Microsoft Media Foundation (MF) is the successor of DirectShow. This commit includes two kinds of video capture implementation, one uses IMFSourceReader interface which is available since Windows Vista and the other is based on IMFCaptureEngine interface which is available since Windows 8. Note that this new video source element cannot be used in UWP app for now, since device activation using those APIs are not allowed by MS. Part-of: 2020-04-12 23:52:28 +0800 He Junyan * tests/check/libs/h265parser.c: test: h265parser: Add check for high throughput scc. Part-of: 2020-04-12 23:39:07 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: libs: h265parser: Add High throughput scc extensions profiles' IDC. It is compitable with scc and we use scc's function to identify it. Part-of: 2020-04-12 22:21:01 +0800 He Junyan * tests/check/libs/h265parser.c: test: h265parser: Add more check or h265 extensions. Part-of: 2020-04-11 16:39:03 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: libs: h265parser: select extension profile by profile idc. the old manner does not consider the profile idc. The profile idc should play an more important role in recognizing the profile than the other information. And there is no need to mix profiles of different extensions together to find the closest profile when the bits stream is not standard, different extensions support different features and should not be mixed. The correct way should be recognize the extension category by profile idc firstly, and then find the closest profile. Part-of: 2020-03-19 23:50:39 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: libs: h265parser: rename the FormatRangeExtensionProfile FormatRangeExtensionProfile declares the common bits used for not only format range extensions profiles, but also for several different h265 extension profiles, such as high throughput, screen content coding extensions, etc. And So the old name is not proper. We also rename the get_h265_extension_profile function. Part-of: 2020-03-20 16:41:16 +0800 He Junyan * gst-libs/gst/codecparsers/gsth265parser.c: libs: h265parser: Fix a bug for getting extension profile. We should use the traget ExtensionProfile's IDC to check the profile_compatibility_flag, rather than the profile_idc in the stream. The old profile_compatibility_flag check always return true. This causes that profiles with same constraint flags but different profile_idc can't be recognized correctly. For example, the screen-extended-main-444 profile is always be recognized as the high-throughput-444 profile. Part-of: 2020-04-24 20:56:17 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Perform low-latency outputting only for live pipeline Frequent outputting might drop throughput-wise performance. Part-of: 2020-04-23 19:47:09 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Output decoded pictures as soon as possible In case of IDR, any previously decoded pictures must be drained before the IDR and POC of IDR should be zero. So we can output IDR immediately. Also, when POC of current picture is expected to be the next output POC, decoder can output the picture as well without waiting. Part-of: 2020-04-27 17:02:17 -0400 Nicolas Dufresne * sys/d3d11/gstd3d11vp8dec.c: d3d11vp8dec: Remove unused parameters Minor cleanup removing unused picture parameters in two internal functions. Part-of: 2020-04-28 00:29:52 +0200 Mathieu Duponchelle * gst-libs/gst/codecparsers/gsth265parser.h: gsth265parser.h: escape link-like syntax in doc 2020-04-27 11:43:57 +0300 Seppo Yli-Olli * ext/openh264/gstopenh264plugin.c: openh264: memcmp return value 0 means match Commit e2aa76db79328b7f61536dd19d0373cf920395ad introduced version check guard for OpenH264 binary. There was a boolean error in memcmp so matching OpenH264 was erroneously rejected. Fixes #1278 Part-of: 2020-04-26 13:47:27 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gstvp9picture.c: codecs: fix gir generation Part-of: 2020-04-22 14:57:12 +0900 Seungha Yang * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh264dec.h: * sys/nvcodec/plugin.c: nvcodec: Add suppport for environment based primary h264 decoder implementation Introduce GST_USE_NV_STATELESS_CODEC environment to allow user to select primary nvidia decoder implementation. In case the environment GST_USE_NV_STATELESS_CODEC=h264 was set, old nvidia h264 decoder element will not be registered. Instead, both nvh264dec and nvh264sldec factory name will create gstcodecs based new nvidia h264 decoder element. Part-of: 2020-04-16 23:27:31 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/gstnvdecoder.c: * sys/nvcodec/gstnvdecoder.h: * sys/nvcodec/gstnvh264dec.c: * sys/nvcodec/gstnvh264dec.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: nvcodec: Add H264 stateless codec implementation Introduce GstH264Decoder based Nvidia H.264 decoder element. Similar the element factory name of to v4l2 stateless codec, this element can be configured with factory name "gstnvh264sldec". Note that "sl" in the name stands for "stateless" For now, existing nvh264dec covers more profile and formats (e.g., interlaced stream) than this implementation. However, this implementation allows us to control lower level parameters such as decoded picture buffer management and therefore we can get a chance to improve performance in terms of latency. Part-of: 2020-04-22 16:53:00 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstcccombiner.h: cccombiner: don't drop buffers on video timestamp discontinuities If we receive video buffers with non-perfect timestamps, the caption buffers' timestamps might fall in the interval between the end of one video buffer and the start of the next one. Make our criteria for dropping that the caption buffer has a timestamp older than the end of the previous video buffer, not older than the start of the new one, unless of course this is the first video buffer. Part-of: 2020-04-22 16:51:08 +0200 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: handle gap buffers adequately - Don't try to map them as actual CC data, that was raising a critical - Consume video buffers up to the end of the gap Part-of: 2020-04-24 01:56:57 +0900 Seungha Yang * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Support avc and avc3 formats h264decoder baseclass provides parsed sps/pps (from codec data) for subclass. Also, since current implementation is putting start code prefix manually, the format of stream should not be matter for subclass. Part-of: 2020-04-23 12:28:41 +0200 Guillaume Desmottes * ext/spandsp/gstspanplc.c: * ext/spandsp/gstspanplc.h: spanplc: add 'stats' property Allow users to retrieve the number of samples, and their duration, generated using PLC. Part-of: 2020-04-21 13:33:54 +0300 Seppo Yli-Olli * ext/openh264/gstopenh264plugin.c: Have strict version check for OpenH264 to avoid ABI issues This fixes #1274 and no longer trusts soname alone Part-of: 2020-04-23 23:52:24 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Fix wrong return type from output_picture vfunc Return type should be GstFlowReturn, not gboolean Part-of: 2020-04-23 12:00:15 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth265decoder.c: codecs: set sys frame num before new_picture() Derive classes might need to operate on the current frame at their new_picture() vmethod, so it would be needed to set system_frame_number on picture before calling the vmethod. Part-of: 2020-04-22 17:53:39 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264/h265parse: Fix handling of very last frame Baseparse will never call us back on draining, so going into more: label will cause the current frame to be discarded. So if we have a complete NAL, but not a complete AU, make sure to terminate the frame properly. This is a gression introduce by commit e88d8480709581a2e54b7954c47193b729b23c79 and a194a87b2600a21f1b47b8c89b1c930d5f30de42. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1275 Part-of: 2020-02-28 18:14:51 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11vp8dec.c: * sys/d3d11/gstd3d11vp8dec.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11decoder: Add VP8 decoder element New d3d11 VP8 decoder implementation Part-of: 2020-04-23 01:02:58 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gstvp9picture.c: codecs: Fix some documentation Add missing "transfer full" annotation, etc Part-of: 2020-03-29 22:23:23 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp8decoder.c: * gst-libs/gst/codecs/gstvp8decoder.h: * gst-libs/gst/codecs/gstvp8picture.c: * gst-libs/gst/codecs/gstvp8picture.h: * gst-libs/gst/codecs/meson.build: codecs: Add new baseclass for VP8 decoder This implemenation is similar to VP9 but much simpler than it. Part-of: 2020-03-29 23:31:13 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Add helper methods for negotiation and decide_allocation The implementation for all codecs is almost the same. No need to duplicate code. Part-of: 2020-03-29 22:36:59 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.h: vp9decoder: Fix small typo Part-of: 2020-03-29 22:35:06 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.h: * gst-libs/gst/codecs/gsth265decoder.h: * gst-libs/gst/codecs/gstvp9decoder.h: codecs: Reorganize the order of vfunc ... to the order in which it is actually called Part-of: 2020-04-11 03:11:35 +0900 Seungha Yang * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsutils.c: * sys/kms/meson.build: kmssink: Add support for P010 and P016 formats Support high bit-depth YUV formats Part-of: 2020-04-21 15:30:03 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Fix videoprocessor leak Clear all objects in dispose function 2020-04-21 15:27:56 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Drop floating reference count ... and use gst_object_unref instead of g_object_unref for tracer to be happy. 2020-04-20 22:48:43 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Don't handle gap frame num for the first picture If the first picture is not IDR, it would have non-zero frame_num but it's not gap. We should skip gap frame handling in that case 2020-04-20 16:00:30 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.c: h264decoder: Add some debug messages 2020-04-16 22:15:37 +0200 Víctor Manuel Jáquez Leal * sys/v4l2codecs/gstv4l2codecallocator.c: v4l2codecs: allocator: use gst_clear_object So tracer can do its job. 2020-04-19 19:18:14 +0300 Sebastian Dröge * tests/check/elements/mpegtsmux.c: tsmux: Don't assert sinkpad reference counts in test We can't be sure about the reference count if the muxer is currently running, which can happen in the test_reappearing_pad test. An additional reference might temporarily be owned by the srcpad task of tsmux while iterating over the pads. 2020-04-19 18:37:58 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264picture: typo in GstH264PictureField enum 2020-04-16 16:17:56 +0000 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: fix caps NULL unref gst_pad_get_current_caps() can return a NULL pointer which was raisin a CRITICAL. 2020-04-16 15:35:44 +0200 Stéphane Cerveau * sys/kms/gstkmssink.c: kmssink: fix memory leak on failing allowed caps When drm does not find any format, the allowed_caps is empty one and need to be unref by the caller. Fix #1268 2020-04-14 17:10:34 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Save last metadata at the same time as the last buffer The render width/height and the vinfo was only saved upon renegotiation. This fixes the problem by saving this metadata at the same time the buffer is saved. The saved copy of this is needed for expose() and drain() virtual functions. This fixes various assertion that happens on drain query. 2020-03-31 12:42:26 -0400 George Kiagiadakis * tests/check/elements/h265parse.c: tests: h265parse: Add unit test for conversion and sliced data testing only byte-stream for now 2019-03-28 17:23:30 +0200 George Kiagiadakis * tests/check/elements/h264parse.c: tests: h264parse: unit tests for sliced data processing 2019-09-20 15:21:17 -0400 Xavier Claessens * gst/videoparsers/gsth264parse.c: h264parse: Remove unused arguments 2019-06-12 22:19:04 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: h264parse: Don't push NALs before we have HEADERS Otherwise we may endup pushing incomplete caps, which cause a renegotiation. Note that this has the effect that caps are no longer pushed twice in presence of valid framerate in the headers. 2018-10-10 15:27:30 +0000 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: h265parse: Don't push NALs before we have HEADERS Otherwise we may endup pushing incomplete caps. Note that this has the side effect that caps are no longer pushed twice in presence of VUI with valid framerate. 2018-10-09 16:42:58 -0400 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: h265parse: Differentiate PREFIX SEI from SUFFIX There is some code to fixup broken stream that uses the SEI location, this code is meant to locate SUFFIX SEI only. This should prevent unwanted side effect if SUFFIX SEI is used. 2018-10-03 16:43:14 -0400 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: h265parse: Don't add latency when not needed We no longer add latency when doing AU->AU, AU->NAL and NAL->NAL parsing. 2018-10-03 16:35:39 -0400 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Propagate MARKER flag 2018-10-09 16:01:08 -0400 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Don't wait for next NAL if input is aligned Waiting for the next NAL increases the latency. If alignment=nal/au has been negotiated, assumes the the buffer contains a complete NAL and don't expect a second start-code. This way, nal -> nal, au -> au and au -> nal no longer introduce latency. As a side effect, the collect_pad() function was not able to poke at the following NAL. This call is now moved before processing the NAL, so it's looking at the current NAL before it's ingested into the parser state in order to dermin if the end of an AU has been reached. The AUD injection state as been adapted to support this. This change will break pipelines if alignment=nal is used without respecting the alignment. Effectively, the parser will no longer fix the broken aligment which will result in parser error and the termination of the pipeline. Such issue existed in tsdemux element and might exist in any forks of that code. Related to https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1193 2018-10-03 15:53:23 -0400 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: h265parse: Set PTS/DTS and DISCONT on crafted NAL When we inject a NAL in the bitstream before another one, make sure to pass both DTS and PTS. Also make sure to transfer the DISCONT flag properly. 2018-09-27 22:10:14 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: h264parse: Don't add latency when not needed We no longer add latency when doing AU->AU, AU->NAL and NAL->NAL parsing. 2018-09-28 16:49:52 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Propagate MARKER flag 2018-09-25 16:10:13 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: h264parse: Don't wait for next NAL if input is aligned Waiting for the next NAL increases the latency. If alignment=nal/au has been negotiated, assumes that the buffer contains a complete NAL and don't expect a second start-code. This way, nal -> nal, au -> au and au -> nal no longer introduce latency. As a side effect, the collect_pad() function was not able to poke at the following NAL. This call is now moved before processing the NAL, so it's looking at the current NAL before it's ingested into the parser state in order to dermin if the end of an AU has been reached. The AUD injection state as been adapted to support this. This change will break pipelines if alignment=nal is used without respecting the alignment. Effectively, the parser will no longer fix the broken aligment which will result in parser error and the termination of the pipeline. Such issue existed in tsdemux element and might exist in any forks of that code. Related to https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1193 2018-09-25 16:16:42 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: h264parse: Set PTS/DTS and DISCONT on crafted NAL When we inject a NAL in the bitstream before another one, make sure to pass both DTS and PTS. Also make sure to transfer the DISCONT flag properly. 2018-09-25 16:11:03 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: h264parse: Remove no-op assignment upstream was set to *out_ts, setting *out_ts to upstream here will have no effect. 2020-04-13 18:18:45 +0300 Sebastian Dröge * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Chain up pad dispose function to the one of the parent class Otherwise we will leak various memory. 2020-04-13 18:04:19 +0300 Sebastian Dröge * gst/mpegtsmux/gstbasetsmux.c: mpegtsmux: Properly release requests pads by chaining up to aggregators function 2020-04-10 19:54:31 +0300 Vivia Nikolaidou * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: * tests/check/elements/mpegtsmux.c: tsmux: Ability for streams to disappear and reappear Until now, any streams in tsmux had to be present when the element started its first buffer. Now they can appear at any point during the stream, or even disappear and reappear later using the same PID. 2020-03-18 17:58:52 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: srt: Accumulate total bytes sent/received over all connections/callers So we don't lose them. Split gst_srt_object_open_internal for internal reconnections that don't reset the accumulated bytes. 2020-03-23 16:38:58 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Fix type of bytes-received-lost The field is a uint64_t. 2020-03-18 18:06:59 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: srt: Remove use of closures for signal emission It seems overly complicated. 2020-03-18 17:55:38 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: srt: Clean up locking Use GST_OBJECT_LOCK (srtobject->element) to protect only the fields involved in property access. Introduce a new mutex srtobject->sock_lock to go with srtobject->sock_cond and protect the list of callers from concurrent access. 2020-03-18 17:54:29 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsink.h: * ext/srt/gstsrtsrc.c: * ext/srt/gstsrtsrc.h: srt: Remove trailing whitespace 2018-10-10 18:36:57 +0000 Nicolas Dufresne * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Don't pretend doing NAL alignment Per specification in 2.14.2 "For PES packetization, no specific data alignment constraints apply". So we should not advertise NAL alignment. This bug was introduced at the same moment the alignment field was introduced 10 years ago. The plan was that alignment=none (or no alignment field) was to be used for mpegtsdemux, but no one noticed the error. The reason is that at the same moment, everything dealing with H264 started defaulting to AU alignment. https://bugzilla.gnome.org/show_bug.cgi?id=606662#c22 This patch will have a side effect that a parser is now needed after the tsdemux element. The following pipeline will not negotiate anymore as the mpegtsmux element requires alignment={nal,au}. ... ! tsdemux ! mpegtsmux ! ... As a side effect, anyone that forked from tsdemux should updated their code to fix this bug. 2020-04-13 20:36:50 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: h264parse: Remove useless comparison sei_pic_struct is unsigned and GST_H264_SEI_PIC_STRUCT_FRAME is zero. CID: 1461467 2020-04-13 20:31:14 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Fix some coverity issues - Remove useless comparison - Fix invalid memory access CID: 1461477, 1461476, 1461475, 1461474, 1461279 2020-04-03 15:45:02 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: wpe: Add support for SHM without requiring EGLDisplay The previous version of the SHM export support still required a valid EGLDisplay. The upcoming WPEBackend-FDO 1.8.x aims to remove this requirement, hence allowing wpesrc to be used without GPU. 2020-04-13 15:21:48 +0900 J. Kim * ext/srt/gstsrtobject.c: srtobject: fix mutex lock target GstSRTObject is a structure that has an actual GstElement which is extended to srt{src,sink}. 2020-04-10 21:03:04 +0200 Víctor Manuel Jáquez Leal * sys/v4l2codecs/gstv4l2codecdevice.c: * sys/v4l2codecs/gstv4l2codecdevice.h: v4l2codecs: fix v4l2codecdevice get type Currently the GType of v4l2codecdevice is hardcoded to zero, but it rather should be delivered by the GType system. 2020-04-10 18:22:21 +0300 Jordan Petridis * sys/msdk/gstmsdkdec.c: gstmsdkdec: fix logical operation that misses parenthesis in C, & is weaker than the ! operator and clang is giving the following error about it. ``` ../subprojects/gst-plugins-bad/sys/msdk/gstmsdkdec.c:731:7: error: logical not is only applied to the left hand side of this bitwise operator [-Werror,-Wlogical-not-parentheses] if (!gst_msdk_context_get_job_type (thiz->context) & GST_MSDK_JOB_DECODER) { ^ ~ ../subprojects/gst-plugins-bad/sys/msdk/gstmsdkdec.c:731:7: note: add parentheses after the '!' to evaluate the bitwise operator first if (!gst_msdk_context_get_job_type (thiz->context) & GST_MSDK_JOB_DECODER) { ^ ( ) ../subprojects/gst-plugins-bad/sys/msdk/gstmsdkdec.c:731:7: note: add parentheses around left hand side expression to silence this warning if (!gst_msdk_context_get_job_type (thiz->context) & GST_MSDK_JOB_DECODER) { ^ ( ) 1 error generated. ``` 2020-03-23 14:40:52 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gstvp9decoder.c: codecs: Add minimal state validation ... to prevent requesting decoding before the preparation. For instance, baseclass should not request decoding a picture if there is no parsed valid headers, since subclass is most likely not ready to decoding it. 2020-03-30 15:42:35 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Add APIs to allow update VPS/SPS/PPS gst_h265_parser_parse_{vps,sps,pps} APIs were used to parse VPS/SPS/PPS and also in order to update parser's internal state at once. Meanwhile gst_h265_parse_{vps,sps,pps} APIs are to parse VPS/SPS/PPS without state update. This commit introduces new APIs so that only accepted VPS/SPS/PPS by user can be updated to be used by parser. 2020-03-30 15:27:40 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Add APIs to allow update SPS/PPS gst_h264_parser_parse_{sps,pps} APIs were used to parse SPS/PPS and also in order to update parser's internal state at once. Meanwhile gst_h264_parse_{sps,pps} APIs are to parse SPS/PPS without state update. This commit introduces new APIs so that only accepted SPS/PPS by user can be updated to be used by parser. 2020-04-09 23:12:25 +0900 Seungha Yang * sys/kms/meson.build: meson: kmssink: Allow fallback only on linux Otherwise fallback will waste meson configure time on non-linux 2020-04-08 01:22:07 +0200 Zeid Bekli * ext/srtp/gstsrtp.c: srtp: Added support for BYE packet SRTCP can't get SSRC from BYE packet, this will make srtpdec element to drop the package. Adding support to get the SSRC from BYE packets. 2020-04-09 16:12:58 +0900 Seungha Yang * sys/nvcodec/gstcuvidloader.c: * sys/nvcodec/gstcuvidloader.h: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/plugin.c: nvdec: Don't hardcode DPB size Too many decode surface would waste GPU memory. Also it seems to be introducing additional latency depending on stream. Since nvcodec sdk version 9.0, CUVID parser API has been providing the minimum required number of surface. By using it, we can save GPU memory and reduce possible latency. 2020-04-08 14:21:30 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecdevice.c: v4l2codecs: Fix FD leak during device enumeration This was revealed by Coverity. CID 1461248 2020-04-07 19:28:27 +0200 Stéphane Cerveau * ext/dash/gstmpdclient.c: dash: fix VARARGS coverity error va_end was not called in every code path due to g_return_val_if_fail. API usage errors (VARARGS) va_end was not called for "myargs". CID: 1461294 2020-04-08 12:10:21 -0400 Xavier Claessens * meson.build: * meson_options.txt: Meson: Change extra-checks to feature option and make it yielding 2020-04-08 14:00:48 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: h264parse: Fix content light level value changes Same as for H265, was found by Coverity. 2020-04-07 17:04:30 -0400 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: h265parse: Fix content light level value changes The comparision was not testing anything meaninful. This fixes the comparision so we now update the caps whenever the value differ. This was detected by coverity. CID 1461291 2020-04-08 18:39:06 +0200 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: rtmp2: Avoid a deadlock when getting stats We need to do this without holding the lock as the `g_async_queue_pop` waits on the loop thread to deliver the stats. The loop thread might attempt to take the lock as well, leading to a deadlock. Taking a reference to the connection should be enough to keep this safe. 2020-04-08 15:37:03 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Add support for inband timecode update Add new property "update-timecode" to allow updating timecode in picture timing SEI depending on timecode meta. Since the picture timing SEI message requires proper VUI setting but we don't support re-writing SPS, this might not work for some streams 2020-04-08 17:07:36 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: h264parse: Don't unconditionally append timecode meta If upstream buffer has its own timecode metatdata, don't append new timecode meta into the buffer. 2020-04-08 16:24:06 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: h264parser: Parse all SEI payload type even if it's not handled by parser ... so that user can handle it from outside of parser API 2020-04-07 20:26:23 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * tests/check/libs/h264parser.c: h264parser: Add support for creating picture timing SEI This new method can make it possible to inject timecode meta into h264 bitstream 2020-04-07 22:30:55 +0900 Seungha Yang * tests/check/libs/h264parser.c: tests: h264parser: Fix picture timing SEI The payloadSize don't need to include rbsp_trailing_bits() 2020-04-07 19:32:29 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Make GstH264PicTiming self-containing all the syntax information ... and store all parsed values. We are storing pic_struct_present_flag although it's not part of this SEI message but GstH264PicTiming includes it to clarify following syntax values. In addition to that, by adding CpbDpbDelaysPresentFlag, we don't need to refer to VUI anymore. 2020-04-07 21:17:30 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Fix some misleading debug messages 2020-04-07 09:17:15 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Fix mismatched argument of declaration and definition 2020-04-06 10:25:37 +0200 Michael Olbrich * gst/sdp/gstsdpdemux.c: * gst/sdp/gstsdpdemux.h: sdpdemux: don't send EOS for unknown SSRC The rtpbin sends signals for all SSRCs. Don't send an EOS when the SSRC does not match the stream SSRC. This avoids problems when an SSRC from another receiver times out. 2020-04-08 08:47:37 -0400 Thibault Saunier * docs/libs/codecs/index.md: * docs/libs/codecs/sitemap.txt: * docs/meson.build: * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/meson.build: codecs: Add basic documentation stubs 2020-04-07 17:10:08 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: v4l2decoder: Fix file descriptor leak A copy paste error was leading to file descriptor leak. This was detected by Coverity. CID 1461285 2020-04-06 16:40:38 +0100 Philippe Normand * gst/debugutils/gstfakevideosink.c: * gst/debugutils/gstfakevideosink.h: fakevideosink: Allow allocation meta flags fine-tuning In some scenarios the fakevideosink shouldn't advertize the overlay-composition meta for instance, so that overlay elements perform subtitles blending themselves. 2020-04-06 10:19:23 +0200 Michael Olbrich * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: be more tolerant when parsing the adaptation field According to the specification, the adaptation field length must be 183 if there is no payload data and < 183 if the packet contains an adaptation field and payload data. Unfortunately some payloaders always set the flag for payload data, even if the adaptation field length is 183. Don't return with an error in this case. Clear the payload data flag instead and parse the adaptation field as usual. This avoids visual artefacts for such streams. 2020-04-06 15:06:01 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.h: codecs: h264: Fix DPB size calculation As per specification in A.3.1 h) and A.3.2 f), the maximum size of the DPB is 16. Fix the maximum in the fine and fix the formula to use MIN instead of MAX so that we no longer always use the maximum for the profile/level. 2020-04-01 12:33:38 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9dec.c: msdkvp9dec: add support for VP9 12bit The output formats are P012_LE for 12bit 420 and Y412_LE for 12bit 444. 2020-04-03 18:50:16 -0400 worldofpeace * ext/neon/meson.build: meson: build with neon 0.31 No API/ABI changes https://github.com/notroj/neon/blob/0.31.0/NEWS#L3 2020-04-03 17:07:47 +0530 Nirbheek Chauhan * ext/vulkan/shaders/meson.build: * meson.build: * sys/d3d11/meson.build: meson: Don't use get_option('buildtype') We should directly check the values of the `debug` and `optimization` options instead. `get_option('buildtype')` will return `'custom'` for most combinations of `-Doptimization` and `-Ddebug`, but those two will always be set correctly if only `-Dbuildtype` is set. So we should look at those options directly. For the two-way mapping between `buildtype` and `optimization` + `debug`, see this table: https://mesonbuild.com/Builtin-options.html#build-type-options 2020-03-23 12:56:46 +0100 Stéphane Cerveau * sys/kms/meson.build: kms: add fallback on libdrm project if available. 2020-03-12 13:28:59 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: add support for main-444-12, main-444-12-intra profiles The video format is Y412_LE 2020-03-12 13:21:02 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map Y412_LE to VA_FOURCC_Y416 In media driver, VA_FOURCC_Y416 is used for packed 12 bits 4:4:4:4 YUV format, the corresponding RT format is VA_RT_FORMAT_YUV442_12 2020-03-12 13:12:33 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_Y416 to VA_FOURCC_Y416 Y416 is used for packed 12 bits 4:4:4:4 YUV format in media driver, the RT format is VA_RT_FORMAT_YUV444_12 2020-03-12 12:58:40 +0800 Haihao Xiang * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/msdk.c: msdk: map Y412_LE to MFX_FOURCC_Y416 MFX_FOURCC_Y416 is used for packed 12 bits 4:4:4:4 YUV format in MediaSDK 2020-03-11 14:55:33 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: add support for main-422-12, main-422-12-intra profiles The video format is Y212_LE 2020-03-11 14:35:55 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map Y212_LE to VA_FOURCC_Y216 In media driver, VA_FOURCC_Y216 is used for packed 12 bits 4:2:2 YUV format, the corresponding RT format is VA_RT_FORMAT_YUV422_12 2020-03-11 14:09:11 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_Y216 to VA_FOURCC_Y216 In media driver, Y216 is used for packed 12 bits 4:2:2 format YUV format, so the RT format is VA_RT_FORMAT_YUV422_12. 2020-03-11 13:54:42 +0800 Haihao Xiang * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/msdk.c: msdk: map Y212_LE to MFX_FOURCC_Y216 MFX_FOURCC_Y216 is used for packed 12 bits 422 YUV format in MediaSDK 2020-04-03 00:42:23 +0900 Seungha Yang * sys/msdk/gstmsdkh265enc.c: msdkh265enc: Fix for wrong parser free function 2020-03-18 12:30:51 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle instant rate change requests directly Downstream demuxers will first send seek events upstream to us. Do the right thing with instant rate change requests by handling them immediately. 2020-03-17 19:31:22 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't ignore gst_segment_do_seek() return result gst_segment_do_seek() can fail, so don't ignore the return result 2018-11-30 05:18:42 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtsbase.c: tsdemux: Send instant-rate-change event if requested in the SEEK event Convert instant-rate-change seek events into a downstream instant-rate-change event and skip any further local seek handling. 2020-03-31 20:51:15 +0900 Seungha Yang * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdkh264enc: Configure parser and SEI array only if it's required 2020-03-31 15:25:47 +0900 Seungha Yang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: Add support for CEA708 closed caption insertion Functionally identical to that of msdkh264enc 2020-03-19 18:25:18 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * tests/check/libs/h265parser.c: h265parser: Add a helper method to create SEI nal unit Add an API to create raw SEI nal unit. This would be useful in case an user want to create SEI nal data and inject the SEI nal data into bitstream. 2020-04-01 19:43:51 +0200 Miguel Paris * ext/srtp/gstsrtpdec.c: srtpdec: reduce log level for replay cases These are normal cases, so DEBUG level is enough. 2017-04-11 12:41:11 +0200 Miguel París Díaz * ext/srtp/gstsrtp.h: * ext/srtp/gstsrtpdec.c: srtpdec: do not warning old replay errors Reordered packets producing decrypting errors are very normal, so we should filter which errors are warning and which not. 2018-05-29 15:00:43 +0200 Miguel Paris * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: srtpdec: fix reseting RTP sequence number on ROC changes Each srtp_stream_t is tied to an specific SSRC, so a roc_changed flag should be kept per each SSRC in order to properly reset RTP sequence number on ROC changes. 2020-03-13 16:50:16 +0900 Seungha Yang * sys/d3d11/gstd3d11format.c: d3d11: Update for video-hdr struct change See the change of -base https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/594 2020-03-13 16:45:12 +0900 Seungha Yang * sys/nvcodec/gstnvh265enc.c: nvh265enc: Update for video-hdr struct change See the change of -base https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/594 2020-03-13 16:34:01 +0900 Seungha Yang * ext/x265/gstx265enc.c: x265enc: Update for video-hdr struct change See the change of -base https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/594 2020-03-13 16:17:07 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * tests/check/elements/h264parse.c: * tests/check/elements/h265parse.c: h264parse,h265parse: Update for video-hdr struct change See the change of -base https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/594 2018-07-28 14:54:42 +0200 Zeeshan Ali * gst/videoparsers/gsth265parse.c: h265parse: Set duration on buffers base on framerate 2018-06-14 16:20:54 +0200 Zeeshan Ali * gst/videoparsers/gsth265parse.c: h265parse: Derive src fps from vui_time_scale & vui_num_units_in_tick 2018-06-13 16:33:21 +0200 Zeeshan Ali * gst/videoparsers/gsth265parse.c: h265parse: Handle interlaced video For interlaced video: * set the interlace mode in the src caps * double the height from SPS in the caps. * set field latency, instead of frame latency. Fix #778 2020-03-27 13:05:41 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264picture.c: codecs: h264dpb: Don't leak pic_list GArray The contents was cleared, but the array was never released. 2020-03-26 15:57:17 -0400 Nicolas Dufresne * sys/v4l2codecs/meson.build: v4l2codecs: Only build this plugin on Linux This is not useful on any other OSs, it will also avoid potential build failure as this code uses Linux specific calls. 2020-03-26 15:38:47 -0400 Nicolas Dufresne * sys/v4l2codecs/plugin.c: v4l2codecs: Add plugin dependency This ensure that the registry cache get updated when a meaningful change is made in /dev for files named media*. 2020-03-20 12:37:41 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codecpool.c: * sys/v4l2codecs/gstv4l2decoder.c: v4l2codecs: Wait for buffers to come back This code add required mechanism to try and allocate (not implemented yet) otherwise wait for more buffers. This also comes with mechanism to terminate the wait on flush or PAUSED_TO_READY transitions. 2020-03-20 14:14:46 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Implement flushing sequence This simply consit of cycling through STREAMOFF/STREAMON with stateless decoders. 2020-03-20 12:35:03 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecallocator.c: * sys/v4l2codecs/gstv4l2codecallocator.h: v4l2codecs: allocator: Add method to wait for more buffers This add function to wait for buffers to get back into the pool along with a set_flushing() method to allow unblocking this wait. 2020-03-18 17:03:51 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecpool.c: v4l2codecs: pool: Create new buffer when pool is empty This simply create an empty GstBuffer when the pool is empty. This way it's up to the allocator to grow or wait if we ran out of memory. 2020-03-18 17:00:37 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Improve end_picture() robustness Use a goto to ensure that for all cases we cleanup the current picture state. And move the src buffer allocation higher, so we don't queue a bitstream buffer if we don't have a picture buffer to decode into. 2020-03-18 16:51:11 -0400 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: codecs: h264: Do not ignore end_picture() return value If decoding failed because end_picture() failed, set the picture to nonexisting, this way output_picture() will be skipped. This avoids confusing special cases in output_picture() implementation. 2020-02-17 18:08:48 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: * sys/v4l2codecs/gstv4l2format.c: v4l2slh264dec: Add output format negotiation This allow negotiating the output format through caps. Some drivers can pipeline the decoder buffer through an image processor. This only support colorspace conversion for now. 2020-03-13 16:51:27 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2format.c: * sys/v4l2codecs/gstv4l2format.h: v4l2format: Convert between V4L2 and GST video format This will be needed in the output format negotiation. 2020-03-13 14:23:39 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2format.c: v4l2codecs: Read driver provided stride This implements driver stride support but only for single allocation buffers. This code is imported from the original v4l2 plugin and adapted to the new helper context. 2020-03-12 16:15:40 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2h264dec: Copy frames when GstVideoMeta is not supported In some case, when downstream does not support GstVideoMeta, we need to normalize the stride and offset of the buffer so that downstream can render properly with a GstVideoMeta. This code is not called when GstVideoMeta is supported downstream. 2020-03-11 17:45:17 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecpool.c: * sys/v4l2codecs/gstv4l2codecpool.h: v4l2codec: Add initial GstVideoMeta support In this patch we strictly set the GstVideoMeta width/height to the coded width and height. Further patches will add stride support and frame copying when downstream does not support GstVideoMeta. 2020-03-09 16:44:19 -0400 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Prevent spurious renegotiation Don't let downstream cause a renegotiation at random point in time. This would lead to spurious renegotiation and the decoder state may not be recoverable. 2020-03-03 21:22:52 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Hold on picture buffers These buffers should not be reused for decoding until they are no longer referenced. 2020-02-16 17:48:12 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Fix bytesused value Pass the actual amount of bytes we have copied into the bitstream buffer. Also unmap the memory before queuing. 2020-02-16 14:53:08 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codech264dec: Implement finish frame This enables the request to be processed by the HW (STREAMON) and to be pushed downstream for further processing. 2020-02-16 14:51:37 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecdecoder: Add support for dequeuing buffers This includings polling of the request and streamon/streamoff. 2020-02-14 22:13:05 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2codech264dec: Implement queuing We now pass the controls, associated to a request, queue the bitstream, qeueue a picture buffer to decode into and finally queue the request. This now runs until the buffer pool is exhausted. The next step will be to dequeue. 2020-02-14 22:03:17 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2decoder: Add helpers to queue buffer and requests 2020-02-14 21:57:34 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecallocator.c: * sys/v4l2codecs/gstv4l2codecallocator.h: * sys/v4l2codecs/gstv4l2codecpool.c: * sys/v4l2codecs/gstv4l2codecpool.h: v4l2codec: Add getter for buffer index in allocator and pool 2020-02-13 17:46:29 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecallocator.c: * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2h264codecdec: Copy bitstream parameter and data In this patch we fill the control structure with the bitstream paramter and copy the bitstream data into V4L2 memory. Slice paramters are only the subset of what Hantro needs, without any support for interlaced content. 2020-02-12 23:50:42 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: v4l2slh264dec: Use the newly introduced allocator / pool We now allocate and free the memory needed for streaming. 2020-02-12 23:45:14 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codecallocator.c: * sys/v4l2codecs/gstv4l2codecallocator.h: * sys/v4l2codecs/gstv4l2codecpool.c: * sys/v4l2codecs/gstv4l2codecpool.h: * sys/v4l2codecs/meson.build: v4l2codec: Add allocator and pool implementation This is a pooling allocator and the buffer pool does nothing other then reusing the GstBuffer structure. Note that the pool is an internal pool, so the start/stop/set_config virtual functions are not implemented. 2020-02-12 23:39:25 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codec: decoder: Add allocation helper 2020-02-10 18:05:39 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: v4l2codecs: Implement H264 format negotiation 2020-02-10 18:02:37 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2format.c: * sys/v4l2codecs/gstv4l2format.h: * sys/v4l2codecs/meson.build: v4l2codecs: Add initial formats helpers 2020-02-09 11:31:11 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2codech264dec.c: * sys/v4l2codecs/gstv4l2codech264dec.h: * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: * sys/v4l2codecs/meson.build: * sys/v4l2codecs/plugin.c: v4l2codecs: Add skeleton of H264 decoder This introduces the skeleton of the H264 decoder. The plugin will list the devices and register a subclass of the GstV4L2CodecH264Dec base class. The subclass will pick the required specific information from the GstV4L2Device stored in the subclass structure. 2020-02-05 21:42:56 -0500 Nicolas Dufresne * sys/v4l2codecs/gstv4l2decoder.c: * sys/v4l2codecs/gstv4l2decoder.h: * sys/v4l2codecs/meson.build: v4l2codec: Add GstV4L2Deocder helper object This is a GstObject which will be used to hold on media and video device file descriptor and provide abstracted ioctl calls with these descriptor. At the moment this helper contains just enough to enumerate the supported format. This part will be used by the plugin to register the CODEC specific elements.. 2020-02-05 21:18:57 -0500 Nicolas Dufresne * sys/v4l2codecs/linux/h264-ctrls.h: * sys/v4l2codecs/linux/media.h: * sys/v4l2codecs/linux/types-compat.h: * sys/v4l2codecs/linux/v4l2-common.h: * sys/v4l2codecs/linux/v4l2-controls.h: * sys/v4l2codecs/linux/videodev2.h: v4l2codecs: Copy all needed Linux kernel headers Most of the features we need are very early or not expose yet in the uAPI. Using an internal copy ensure that we everything we need is defined avoiding to add load of checks and conditionnal code. 2020-02-04 15:52:45 -0500 Nicolas Dufresne * meson_options.txt: * sys/v4l2codecs/gstv4l2codecdevice.c: * sys/v4l2codecs/gstv4l2codecdevice.h: * sys/v4l2codecs/meson.build: * sys/v4l2codecs/plugin.c: v4l2codecs: Add device enumeration This introduces a GstV4L2CodecDevice structure and helper to retrieve a list of CODEC device drivers. In order to find the device driver we enumerate all media devices with UDEV. We then get the media controller topology and locate a entity with function encoder or decoder and make sure it is linked to two V4L2 IO entity pointing to the same device node. 2020-02-03 10:06:46 -0500 Nicolas Dufresne * sys/meson.build: * sys/v4l2codecs/meson.build: * sys/v4l2codecs/plugin.c: v4l2codecs: Introdude a V4L2 CODECs Accelerator plugin This plugin will support new CODECs uAPI in the Linux kernel. These consist of an accelerator interface similar to DXVA, NVDEC, VDPAU and VAAPI. 2020-03-30 20:21:37 +0900 Seungha Yang * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdkh264enc: Port to h264parser API for frame packing SEI injection Create frame packing SEI memory only once per set_format() and reuse it if possible. 2020-03-24 19:23:46 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: h264parse: Print all the syntax elements of frame packing for debugging Other values might be useful for debugging 2020-03-18 10:11:19 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh265enc.c: msdkh265enc: support 8-bit 422 encoding The media driver can support HEVC 8-bit 422 encoding for non-lowpower mode since ICL[1], so VPP is not needed for this case. Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=YUY2 ! msdkh265enc ! \ filesink location=output.h265 [1] https://github.com/intel/media-driver#decodingencoding-features 2020-03-17 15:18:37 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add support for Y210 in sink pad Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=Y210 ! msdkh265enc ! filesink location=output.h265 2020-03-20 09:53:28 +0800 Haihao Xiang * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: add a helper function to get codename of the platform The features supported in MSDK vary from platform to platform. We may support some features based on the codename of the platform in future. 2020-03-24 16:00:30 +0900 Seungha Yang * sys/msdk/gstmsdkenc.c: msdkenc: Try to find corresponding codec frame for encoded output buffer The input and output buffers should be matched as much as possible so that various metadata and its ordering to be preserved. 2020-03-22 20:15:42 +0900 Seungha Yang * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/meson.build: msdkh264enc: Add support for CEA708 closed caption insertion Currently supported caption format is CEA708_RAW 2020-03-25 17:20:13 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * tests/check/libs/h264parser.c: h264parser: Add a helper method to create and inject raw SEI data Add an API to create raw SEI nal unit. This would be useful in case an user want to create SEI nal data and inject the SEI nal data into bitstream. 2020-03-19 18:25:18 +0900 Seungha Yang * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/codecparsers/nalutils.h: * tests/check/libs/nalutils.c: * tests/check/meson.build: nalutils: Introduce NAL writer helper methods Add helper methods for writing h264 and h265 NAL 2020-03-22 13:59:52 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Expose SEI clear function to public gsth265parser does it already. Although corresponding API of h265parser is gst_h265_sei_free, _clear suffix is more consistent naming for h264parser since there are gst_h264_{sps,pps}_clear(). 2020-03-29 17:34:48 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Add support for array of texture DPB DXVA supports two kinds of texture structure for DPB, one is "1) texture array" and the other is "2) array of texture". 1) is a type of texture which is single ID3D11Texture2D object having ArraySize greater than one. So the ID3D11Texture2D itself is a set of texture. Each sub texture of this type mush have identical resolution, format and so on, and the number of sub texture in a texture array is fixed. 2) is an array of usual ID3D11Texture2D object. That means each ID3D11Texture2D is independent each other and might have different resolution as well. Moreover, we can modify the number of frames of the array dynamically. This type is more flexible than "1) texture array" in terms of dynamic behavior and also this type of texture can be used for shader resource view but "1) texture array" couldn't be. If "2) array of texture" is supported by driver, DXVA spec is saying that it's preferred format over "1) texture array" in terms of performance. 2019-11-26 15:42:03 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: slice size control Add max-slice-size property to set the maximum slice size 2020-03-27 18:05:55 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: Revert "d3d11decoder: Check decoder status report" This reverts commit 418e6991c19ab5ae6bcf1890f9b947c748ca834d. Not all drivers seem to be friendly to this API. Revert to avoid incomprehensible crash with Nvidia. 2020-03-26 21:20:20 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Always reuse swapchain DXGI format can be updated via ResizeBuffers() 2020-03-09 20:29:17 +0900 Seungha Yang * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: d3d11window: Reorganize display colorspace selection The set of supported color space by DXGI is not full combination of our colorimetry. That means we should convert color space to one of supported color space by DXGI. This commit modifies the color space selection step so that d3d11window can find the best matching DXGI color space first and then the selected input/output color space will be referenced by shader and/or d3d11videoprocessor. 2020-03-27 15:40:00 +0900 Seungha Yang * gst/rtmp2/gstrtmp2src.c: rtmp2src: Add idle-timeout property Add new property to signalling that there is no incoming data from peer. This can be useful if users want to stop the streaming when the connection is alive but no packet is arriving. 2020-03-27 10:34:25 +1100 Matthew Waters * ext/dtls/gstdtlsconnection.c: dtls/connection: fix EOF handling with openssl 1.1.1e openssl 1.1.1e does some stricker EOF handling and will throw an error if the EOF is unexpected (like in the middle of a record). As we are streaming data into openssl here, it is entirely possible that we push data from multiple buffers/packets into openssl separately. From the openssl changelog: Changes between 1.1.1d and 1.1.1e [17 Mar 2020] *) Properly detect EOF while reading in libssl. Previously if we hit an EOF while reading in libssl then we would report an error back to the application (SSL_ERROR_SYSCALL) but errno would be 0. We now add an error to the stack (which means we instead return SSL_ERROR_SSL) and therefore give a hint as to what went wrong. [Matt Caswell] We can relax the EOF signalling to only return TRUE when we have stopped for any reason (EOS, error). Will also remove a spurious EOF error from previous openssl version. 2020-03-25 14:46:15 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: mark streams as active on renegotiation as well. Otherwise when bundling, only the changed streams would be considered as to whether the bundled transport needs to be blocked as all streams are inactive. Scenario is one transceiver changes direction to inactive and as that is the only change in transciever direction, the entire bundled transport would be blocked even if there are other active transceivers inside the same bundled transport that are still active. Fix by always checking the activeness of a stream regardless of if the transceiverr has changed direction. 2020-01-13 13:50:26 +0530 Guillaume Desmottes * gst/interlace/gstinterlace.c: interlace: add alternate support Allow downstream elements to negotiate the alternate interlace mode, splitting each input buffer in two fields, each having their own buffer. 2020-02-28 12:31:46 +0530 Guillaume Desmottes * gst/interlace/gstinterlace.c: interlace: factor out interlace_mode_from_pattern() 2020-01-23 15:17:45 +0530 Guillaume Desmottes * gst/interlace/gstinterlace.c: interlace: factor out gst_interlace_push_buffer() 2020-01-23 15:10:36 +0530 Guillaume Desmottes * gst/interlace/gstinterlace.c: interlace: factor out gst_interlace_decorate_buffer_ts() 2020-01-23 14:31:02 +0530 Guillaume Desmottes * gst/interlace/gstinterlace.c: interlace: rename copy_field() It is actually copying both fields (to a single frame/buffer). 2020-03-21 20:16:04 +0900 Seungha Yang * tests/check/libs/h265parser.c: tests: h265parser: Add test for registered user data SEI 2020-03-21 19:41:28 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Fix registered user data SEI leak ... and add fix for the SEI data in gst_h265_sei_copy() 2020-03-21 18:25:25 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Do not allocate too large size of memory for registered user data SEI Don't be confused by the unit of payload size (i.e., bits and bytes) Also this need a documentation with Since mark 2020-03-21 18:39:42 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Do not allocate too large size of memory for registered user data SEI Don't be confused by the unit of payload size (i.e., bits and bytes) Also this need a documentation with Since mark 2020-03-23 12:55:13 +0000 Philippe Normand * ext/wpe/WPEThreadedView.h: wpe: Enable SHM support for new stable WPEBackend-FDO release 1.5.0 was the development version. 2020-02-10 18:28:05 +0000 Philippe Normand * ext/wpe/gstwpesrc.cpp: wpe: Mouse scroll events support 2020-02-29 22:19:57 -0600 James Westman * sys/applemedia/avfdeviceprovider.m: applemedia: Add some properties to GstAvfDevice Adds properties to the devices listed in GstDeviceMonitor by the applemedia plugin. These properties are: - device.api (always set to "avf") - avf.unique_id - avf.model_id - avf.manufacturer (except on iOS) - avf.has_flash - avf.has_torch Everything except device.api is taken directly from the AVCaptureDevice object provided by AVFoundation. 2020-03-20 20:27:05 +0900 Seungha Yang * gst/mpegtsdemux/tsdemux.c: tsdemux: Set mpegversion for AAC ADTS stream based on parsed ADTS header Both 2 and 4 are supported version of AAC ADTS format stream. So we need to set correct version to help negotiation especially for non-autopluggable pipeline. 2020-03-10 15:42:48 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: add support for main-12, main-12-intra profiles The video format is P012_LE 2020-03-10 16:03:55 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map P012_LE to VA_FOURCC_P016 In media driver, VA_FOURCC_P016 is used for semi-planar 12 bits YUV format, the corresponding RT format is VA_RT_FORMAT_YUV420_12 2020-03-10 15:41:50 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_P016 to VA_FOURCC_P016 P016 is used for semi-planar 12 bits format in the media driver, so the RT format is VA_RT_FORMAT_YUV420_12 2020-03-10 15:32:43 +0800 Haihao Xiang * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/msdk.c: msdk: map P012_LE to MFX_FOURCC_P016 MFX_FOURCC_P016 is used for semi planar 12 bits YUV format in MediaSDK 2020-03-20 14:53:40 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9enc.c: msdkvp9enc: add support for 10 bits 444 input The input format is Y410 in sink pad and the corresponding profile in src pad is profile 3 2020-03-20 14:38:12 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9enc.c: msdkvp9enc: add support for 8 bits 444 input The input format is VUYA in sink pad and the corresponding profile in src pad is profile 1 2020-03-22 22:30:15 +0900 Seungha Yang * sys/msdk/gstmsdkbufferpool.c: msdkbufferpool: Fix build warning on Windows gstmsdkbufferpool.c(274): warning C4101: 'fd': unreferenced local variable 2020-01-22 11:29:03 +0000 Guillermo Rodríguez * tests/examples/waylandsink/main.c: * tests/examples/waylandsink/wayland-threads.c: examples/wayland: unref GstContext after use 2020-03-19 09:28:28 -0700 U. Artie Eoff * sys/msdk/gstmsdkvpp.c: msdkvpp: add YV12 format to src pad VPP YV12 output format support added since MFX_VERSION 1032. https://github.com/Intel-Media-SDK/MediaSDK/pull/2027 2020-03-15 19:20:47 +0900 Seungha Yang * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/stub/cuda.h: nvdec: Add fallback for CUDA/OpenGL interop failure It happens when local OpenGL context belongs to non-nvidia GPU. 2020-03-16 17:19:04 +0100 Victor Manuel Jaquez Leal * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstvp8parser.h: libs: codecparser: add missing unstable api warning mpeg4 and vp8 parsers didn't show that compilation warning as the others parsers. 2020-03-15 12:44:31 +0000 Philippe Normand * ext/webrtcdsp/gstwebrtcechoprobe.cpp: webrtcdsp: Fix documentation markup 2020-03-15 10:46:24 +0000 Philippe Normand * ext/openni2/gstopenni2src.cpp: openni2: Remove spurious gtk-doc markers 2020-03-15 10:45:25 +0000 Philippe Normand * sys/decklink/gstdecklink.cpp: decklink: Remove spurious gtk-doc marker 2020-03-13 17:47:46 +0000 Philippe Normand * docs/meson.build: docs: Scan C++ files too 2020-02-12 11:23:18 +0800 Haihao Xiang * sys/msdk/meson.build: msdk: meson: check whether mfxExtVP9Param is defined User reported MFX_VERSION is 1026 however the build is broken[1], so add the check for mfxExtVP9Param to make sure it can be build without compiler error. In addtion, it fixes a stupid typo (#endif') introduced by me. [1] https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/988#note_408093 2020-03-12 12:13:10 +0100 rubenrua * docs/plugins/gst_plugins_cache.json: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * sys/msdk/gstmsdkcontext.c: asfmux: Fix typo in property description s/milisecs/milliseconds/g 2020-03-11 21:37:27 -0300 Thibault Saunier * gst/timecode/gsttimecodestamper.c: timecodestamper: Plug a leak 2020-02-01 11:52:04 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegts: Add a property to ignore broken PCR streams Some mpeg-ts (HLS, DVB, ...) streams out there have completely broken PCR streams on which we can't reliably recover correct timestamps. For those, provide a property that will ignore the program PCR stream (by faking that it's not present (0x1fff)). 2020-03-11 17:18:56 +0900 Seungha Yang * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: Add ignore-scr property to ignore broken SCR Some MPEG-PS streams might not be compliant but the SCR can be ignored if PTS/DTS in PES header is consistently increased. 2020-03-11 17:42:18 +0900 Seungha Yang * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Remove whitespace 2020-03-10 11:52:23 +0800 yychao * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: fix H264 CodecPrivateData parsing Do not pass SPS nal_unit_type (0x67) into gst_h264_parse_sps() Fixes #648 2020-03-10 17:40:28 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: In-band sps/pps update if only codec_data differs in src caps Apply in-band sps/pps resending implementation to h265parse. 2020-03-10 13:20:17 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: In-band sps/pps update if only codec_data differs in src caps Initially the case "only codec_data is different" was addressed in https://bugzilla.gnome.org/show_bug.cgi?id=705333 in order for unusual bitstreams to be handled. That's the case where sps and pps are placed in bitstream. When sps/pps are signalled only via caps by upstream, however, the updated codec_data is mandatory for decoder and therefore we shouldn't ignore them. 2020-03-10 16:32:59 +0900 Dong Il Park * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add format_identifier for AC4 codec According to following spec document, add format_identifier for AC4 in tsdemux. ETSI TS 103 190-2 V1.2.1 : Annex D : AC-4 in MPEG-2 transport stream 2020-03-09 17:00:01 +0800 yychao * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add support for AC4 According to following two specs, add support for AC4 in tsdemux. 1. ETSI TS 103 190-2 V1.2.1 (2018-02) : Annex D (normative): AC-4 in MPEG-2 transport streams 2. ETSI EN 300 468 V1.16.1 (2019-08) : Annex D (normative):Service information implementation of AC-3, EnhancedAC-3, and AC-4 audio in DVB systems 2020-03-09 21:21:19 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: Use GPtrArrays or store items inline instead of using GArrays of pointers 2020-03-10 05:18:40 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtcbin: Prevent ICE gathering state reaching complete early The ICE gathering state can transition to complete prematurely if the underlying ICE components complete their gathering while the initial ICE gathering state task is queued and still pending. In that situation, the ice gathering state task will report complete while there are still ICE candidates queued for emission. Prevent that by storing ICE candidates in an array and checking if there are any pending before reporting a completed ICE gathering state. 2020-03-10 04:22:57 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: webrtc: Protect the pending ICE candidates array ICE candidates can be added to the array directly from the application or from the webrtc main loop. Rename it to make it clear that it's holding remote ICE candidates from the peer, and protect it with a new mutex 2020-03-07 19:41:53 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11vp9dec: Add support for internal frame resizing VP9 codec allows resizing reference frame by spec. Handling this case is a bit tricky especially when the resizing happens on non-keyframe, because pre-allocated decoder textures (i.e., dpb) have negotiated resolution and to change resolution meanwhile decoding on non-keyframe, each texture might need to be re-created, copied to new dpb somehow, and re-negotiated with downstream. Due to the complicated requirement of negotiation driven resizing handling, this commit adds shader into d3d11decoder object to resize only corresponding frames. Note that if the resolution change is detected on keyframe, decoder will re-negotiate with downstream. 2020-03-07 19:38:30 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Set GstVideoAlignment to downstream d3d11 buffer pool To copy decoder output texture to another d3d11 texture, the downstream texture needs to be aligned too. 2020-03-07 16:42:14 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Use aligned resolution for staging texture Not only any textures for decoder output view, any destination texture which would be copied from decoder output texture need to be aligned too. Otherwise driver sometimes crashed/hung (not sure why). 2020-03-07 18:29:20 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: d3d11colorconverter: Add support cropping Vertex buffer will be updated if input texture resolution is different from GstVideoInfo or when an user requests specific crop area. 2020-03-07 15:10:43 +0900 Seungha Yang * sys/d3d11/gstd3d11bufferpool.c: d3d11bufferpool: Add padding space for semi-planar YUV formats Resolution of NV12, P010, and P016 formats must be multiple of two. Otherwise texture cannot be created. Instead of doing this alignment per API consumer side, do this in buffer pool for simplicity. 2020-03-08 16:10:41 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * sys/d3d11/gstd3d11h265dec.c: h265decoder: Pass max_dpb_size to new_sequence vfunc same as we are doing in h264decoder 2020-03-08 16:03:35 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: d3d11h264dec: Make use of max_dpb_size passed by baseclass Most likely this modification can save GPU memory. 2020-02-26 20:24:14 +0900 Seungha Yang * sys/d3d11/gstd3d11h265dec.c: d3d11h265dec: Fix scaling list parsing Scaling list can be signalled via sps or pps. Decoder should check both of them. 2020-02-26 17:44:52 +0900 Seungha Yang * sys/d3d11/gstd3d11h265dec.c: d3d11h265dec: Properly signal the ucNumDeltaPocsOfRefRpsIdx ucNumDeltaPocsOfRefRpsIdx should be the NumDeltaPocs[RefRpsIdx]. 2020-02-26 17:33:59 +0900 Seungha Yang h265parser: Store NumDeltaPocs of reference for hardware accelerators That's the value of NumDeltaPocs[RefRpsIdx] and we might be able to derive the value from given sps and slice header. Because well known hardware implementations refer to the value, however, storing the value makes things easier. Following is the list of hardware implementations * DXVA2: ucNumDeltaPocsOfRefRpsIdx * NVDEC/VDPAU: NumDeltaPocsOfRefRpsIdx 2020-02-24 20:53:49 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: h265decoder: Fix for output and removal picture from DPB See C.5.2.2 Output and removal of pictures from the DPB. If the number of pictures in the DPB is greater than or equal to sps_max_dec_pic_buffering_minus1[HighestTid] + 1, then the picture should be outputted. 2020-03-06 16:40:50 +0900 Seungha Yang * gst-libs/gst/codecs/meson.build: meson: codecs: Don't install header This library is not intended to be public. APIs are likely to change over time and should not be disclosed to people yet. 2020-03-05 14:40:28 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: h264decoder: Rename some internals No more a part of d3d11 implementation 2020-03-05 14:35:14 +0900 Seungha Yang * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: vp9decoder: Update document s/GstH264Picture/GstVp9Picture/g and minor update since this baseclass is no more d3d11 specific one. 2020-03-05 14:29:22 +0900 Seungha Yang * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: codecs: Change output_picture() to mandatory implementation GstVideoCodecFrame is expected to be consumed by subclass per output_picture(). So the implementation cannot be optional. 2020-03-05 17:23:34 +0900 Seungha Yang * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * sys/d3d11/gstd3d11h265dec.c: h265decoder: Port to nal type classification macro ... and remove namespaceless macro methods from baseclass 2020-03-05 15:18:35 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * tests/check/libs/h265parser.c: h265parser: Add helper macro for nal type classification Add some macros to remove code duplication and to make it more readable 2020-03-05 09:17:49 -0300 Thibault Saunier * gst/transcode/gsttranscodebin.c: transcodebin: Avoid elements name duplication By just letting GStreamer choose a good name 2020-03-03 15:21:07 -0500 Nicolas Dufresne * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11: Use gst_video_decoder_get_frame() Now that the system_frame_number is saved on the pictures we can use gst_video_decoder_get_frame() helper instead of getting the full list and looping over it. 2020-02-14 21:50:15 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264picture.h: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265picture.h: * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9picture.h: h264picture: Add system_frame_num This allow cross-referencing GstH264Picture and GstVideoCodecFrame. 2020-02-14 21:49:12 -0500 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Add some fixmes Some of the syntax element do not use the spec name, which makes them harder to find in the spec. 2020-02-12 23:48:16 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * sys/d3d11/gstd3d11h264dec.c: codecs: Pass the max_dpb_size to new_segment virtual On new_segment, the decoder is expected to negotiate. The decoder may want to pre-allocate the needed buffers. Pass the max_dpb_size as this is needed to determin how many buffers should be allocated. 2020-02-09 11:20:16 -0500 Nicolas Dufresne * gst-libs/gst/codecs/gsth264decoder.h: * gst-libs/gst/codecs/gsth264picture.h: * gst-libs/gst/codecs/gsth265decoder.h: * gst-libs/gst/codecs/gsth265picture.h: * gst-libs/gst/codecs/gstvp9decoder.h: * gst-libs/gst/codecs/gstvp9picture.h: codecs: Add missing auto cleanup funcs 2020-01-31 17:54:57 -0500 Nicolas Dufresne * gst-libs/gst/codecs/codecs-prelude.h: * gst-libs/gst/codecs/gsth264decoder.c: * gst-libs/gst/codecs/gsth264decoder.h: * gst-libs/gst/codecs/gsth264picture.c: * gst-libs/gst/codecs/gsth264picture.h: * gst-libs/gst/codecs/gsth265decoder.c: * gst-libs/gst/codecs/gsth265decoder.h: * gst-libs/gst/codecs/gsth265picture.c: * gst-libs/gst/codecs/gsth265picture.h: * gst-libs/gst/codecs/gstvp9decoder.c: * gst-libs/gst/codecs/gstvp9decoder.h: * gst-libs/gst/codecs/gstvp9picture.c: * gst-libs/gst/codecs/gstvp9picture.h: * gst-libs/gst/codecs/meson.build: * gst-libs/gst/meson.build: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/meson.build: Move CODEC base classes into it's own library This introduce a library which contains a set of base classes which handles the parsing and the state tracking for the purpose of decoding different CODECs. Currently H264, H265 and VP9 are supported. These bases classes are used to decode with low level decoding API like DXVA, NVDEC, VDPAU, VAAPI and V4L2 State Less decoders. The new library is named gstreamer-codecs-1.0 / libgstcodecs. 2020-03-05 04:18:03 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: webrtc: Don't crash in ICE gathering Fix a crash collating ICE gathering states if there are unassociated transceivers in the list with no TransportStream 2020-03-03 14:56:47 +0530 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: add converters before filters User doesn't have any guarantee about the actual raw format decodebin will produce so their filters may or may not fit. Fix #1228 2020-03-03 15:21:31 +0530 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: fix logs when failing to link filter - Display caps of the pad we actually tried to link. - Use the template caps as the filter is likely to not have any caps set yet. - Log pad name as well. 2020-02-21 13:12:39 -0300 Thibault Saunier * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Add seeking support The approach is quite simple and doesn't take all use cases into account, it only implements support when we are using the internal timecode we create ourself. Also the way we compute the sought frame count is naive, but it works for simple cases. 2020-03-03 03:39:50 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportstream.h: webrtc: Unblock transportreceivebin for send-only bundled streams If there is any active mline in a bundle, we need to unblock the transportreceivebin for DTLS setup and RTCP reception, otherwise no data can ever start flowing. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1206 2020-02-29 01:47:52 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportreceivebin.h: webrtc: Remove RECEIVE_STATE_DROP from transportreceivebin As per discussion in the bug, remove the drop state from transportreceivebin. Dropping data is necessary, but for bundled config, needs to happen further downstream after mixed flows have been separated. Also support switching back to BLOCK from PASS state. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1206 2020-02-27 14:54:13 +0100 Dominique Leuenberger * gst-libs/gst/wayland/meson.build: build: Fix build on systems with wayland-client headers in non-default location Add a missing dependency to wl_client_dep for the wayland build. Some distros have the wayland-client headers not installed in /usr/include (which is perfectly valid, the pkg-config .pc file gives the right feedback). 2020-03-02 15:22:49 +0900 Seungha Yang * sys/d3d11/gstvp9decoder.c: d3d11vp9dec: Add support for reverse playback This commit moves parsing code for superframe and frame header into handle_frame() method, and removes parse() implementation from vp9decoder baseclass. The combination of - multiple frames are packed in a given input buffer (i.e., superframe) - reverse playback seems to be complicated and also it doesn't work as intended in some case 2020-03-03 10:49:08 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: rtmp2: Only grab stats on close when connection exists If the connection attempt failed, self->connection is NULL. 2020-02-29 12:49:06 +0000 Matthew Read * sys/opensles/openslessink.c: openslessink: Allow openslessink to handle 48kHz streams. The most common audio sample rate in AV streams is 48kHz, and the most common device output sample rate is 48kHz. This allows handing of 48kHz input streams without resampling. Remove comments about avoiding the use of 48kHz. 2020-02-27 14:10:16 +0000 Heinrich Kruger * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Add support for 2K DCI video modes Extend the video modes supported by the decklink plugin to include 2K DCI video modes. 2020-02-27 11:32:17 +0000 Heinrich Kruger * sys/decklink/linux/DeckLinkAPI.h: * sys/decklink/linux/DeckLinkAPIConfiguration.h: * sys/decklink/linux/DeckLinkAPIDeckControl.h: * sys/decklink/linux/DeckLinkAPIDiscovery.h: * sys/decklink/linux/DeckLinkAPIDispatch.cpp: * sys/decklink/linux/DeckLinkAPIModes.h: * sys/decklink/linux/DeckLinkAPITypes.h: * sys/decklink/linux/DeckLinkAPIVersion.h: * sys/decklink/linux/LinuxCOM.h: * sys/decklink/osx/DeckLinkAPI.h: * sys/decklink/osx/DeckLinkAPIConfiguration.h: * sys/decklink/osx/DeckLinkAPIDeckControl.h: * sys/decklink/osx/DeckLinkAPIDiscovery.h: * sys/decklink/osx/DeckLinkAPIDispatch.cpp: * sys/decklink/osx/DeckLinkAPIModes.h: * sys/decklink/osx/DeckLinkAPIStreaming.h: * sys/decklink/osx/DeckLinkAPITypes.h: * sys/decklink/osx/DeckLinkAPIVersion.h: * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPI_i.c: decklink: Update Decklink SDK to 10.11.4 This change is needed to support 2K DCI video modes. Version 10.8 of the Decklink SDK supported DCI video modes for output only. This updated version drops that restriction. The current latest version of the Decklink SDK is 11.5, however the gstreamer decklink plugin is not compatible with API changes introduced in version 11 of the SDK. Therefore I have opted to upgrade to the latest 10.x version instead. 2020-03-03 14:27:32 +1100 Matthew Waters * ext/dash/meson.build: dash: add build-dep on pbutils Fixes dependency issues: FAILED: subprojects/gst-plugins-bad/ext/dash/8bd0b95@@gstdash@sha/gstdashsink.c.obj cl @subprojects/gst-plugins-bad/ext/dash/8bd0b95@@gstdash@sha/gstdashsink.c.obj.rsp C:\builds\ystreet\gst-plugins-base\gst-build\subprojects\gst-plugins-base\gst-libs\gst/pbutils/pbutils.h(30): fatal error C1083: Cannot open include file: 'gst/pbutils/pbutils-enumtypes.h': No such file or directory 2020-02-18 14:02:14 +1100 Matthew Waters * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: vulkan/window/xcb: implement keyboard support 2020-02-17 15:09:58 +1100 Matthew Waters * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: * gst-libs/gst/vulkan/xcb/xcb_event_source.c: vulkan/window/xcb: implement mouse event support 2020-02-17 15:08:47 +1100 Matthew Waters * ext/vulkan/vksink.c: * ext/vulkan/vksink.h: vulkan/sink: implement GstNavigation support 2020-02-17 15:07:10 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvkswapper.h: vulkan/swapper: add get_surface_rectangles Retrieve the input, output and covered rectangles. 2020-02-17 15:05:49 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: vulkan/display: implement thread-safe find_window() 2020-02-17 15:03:34 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/gstvkwindow.h: vulkan/window: add support for mouse/keyboard events 2020-03-02 20:55:29 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_win32.cpp: d3d11videosink: Clarify the meaning of various width and height variables * Remove redundant variables for width/height and par from GstD3D11Window. GstVideoInfo holds all the values. * Don't need to pass par to gst_d3d11_window_prepare(). It will be parsed from caps again * Remove duplicated math Fixing regression of the commit 9dada901083fec3276cb2df58785db14b87e8f22 2020-02-28 03:08:23 +0900 Yeongjin Jeong * sys/d3d11/gstvp9decoder.c: d3d11vp9dec: Port to GstVP9SuperframeInfo The vp9parser is now exposed new API for parsing superframe info. 2020-03-02 00:43:45 +0900 Yeongjin Jeong * tests/check/libs/vp9parser.c: * tests/check/meson.build: tests: vp9parser: Add test parsing superframe 2020-02-28 03:06:47 +0900 Yeongjin Jeong * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/gstvp9parser.h: vp9parser: Add new API for parsing superframe info Some elements are using their own implementations for superframe parsing. To reduce redundant code, we need to add API to the parser. 2020-02-27 18:31:19 +0530 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: mark properties as GST_PARAM_MUTABLE_READY They are all used in the READY to PAUSED transition so should not be changed after. 2020-02-27 17:16:45 +0530 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: force decoding if a filter is defined Filter operates on raw data so don't allow decodebin to produce encoded data if one is defined. My use case here is keeping the video stream untouched but apply a filter on the audio one, while keeping the same audio format. 2020-02-27 17:03:42 +0530 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: logs when inserting, or not, a filter It's not easy atm to figure out from the logs if a filter has actually be inserted or not. 2020-02-26 16:13:21 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Do not print warning message if retry count is in expected range gst_d3d11_result() will print warning message when HRESULT != S_OK. However, since the retry is trivial stuff, check hr == E_PENDING first and do not warn it. 2020-02-26 15:55:23 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Check decoder status report ... and if h/w decoder reports error, increase error count. 2020-02-27 18:16:27 -0500 Olivier Crête * gst/debugutils/gstfakevideosink.c: fakevideosink: Align max-lateness/processing-deadline to GstVideoSink To emulate correctly the timing video of a real sink, let's set those properties just like a real video sink. 2020-02-14 01:42:34 +1100 Jan Schmidt * ext/webrtc/nicetransport.c: * gst-libs/gst/webrtc/dtlstransport.c: webrtc: Use the dtlssrtenc rtp-sync property Instead of synchronising at the ICE transport, do clock sync for the RTP stream at the DTLS transport via the dtlssrtpenc rtp-sync property. This avoids delaying RTCP while waiting until it is time to output an RTP packet when rtcp-mux is enabled. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1212 2020-02-14 01:38:14 +1100 Jan Schmidt * ext/dtls/gstdtlssrtpenc.c: * ext/dtls/gstdtlssrtpenc.h: gstdtlsrtpenc: Add rtp-sync property Add an rtp-sync property which synchronises RTP streams to the pipeline clock before passing them to funnel for merging with RTCP. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1212 2020-02-27 11:39:08 +0530 Nirbheek Chauhan * ext/dash/gstxmlhelper.c: dash: Don't use sscanf + glib format modifiers We do not have a way to know the format modifiers to use with string functions provided by the system. `G_GUINT64_FORMAT` and other string modifiers only work for glib string formatting functions. We cannot use them for string functions provided by the stdlib. See: https://developer.gnome.org/glib/stable/glib-Basic-Types.html#glib-Basic-Types.description F.ex. ``` ../ext/dash/gstxmlhelper.c: In function 'gst_xml_helper_get_prop_unsigned_integer_64': ../ext/dash/gstxmlhelper.c:473:40: error: unknown conversion type character 'l' in format [-Werror=format=] if (sscanf ((gchar *) prop_string, "%" G_GUINT64_FORMAT, ^~~ In file included from /builds/nirbheek/cerbero/cerbero-build/dist/windows_x86/include/glib-2.0/glib/gtypes.h:32, from /builds/nirbheek/cerbero/cerbero-build/dist/windows_x86/include/glib-2.0/glib/galloca.h:32, from /builds/nirbheek/cerbero/cerbero-build/dist/windows_x86/include/glib-2.0/glib.h:30, from /builds/nirbheek/cerbero/cerbero-build/dist/windows_x86/include/gstreamer-1.0/gst/gst.h:27, from ../ext/dash/gstxmlhelper.h:26, from ../ext/dash/gstxmlhelper.c:22: /builds/nirbheek/cerbero/cerbero-build/dist/windows_x86/lib/glib-2.0/include/glibconfig.h:69:28: note: format string is defined here #define G_GUINT64_FORMAT "llu" ^ ../ext/dash/gstxmlhelper.c:473:40: error: too many arguments for format [-Werror=format-extra-args] if (sscanf ((gchar *) prop_string, "%" G_GUINT64_FORMAT, ^~~ ``` In the process, we're also following the DASH MPD spec more closely now, which specifies that ranges must follow RFC 2616 section 14.35.1: https://tools.ietf.org/html/rfc2616#page-138 2020-02-26 21:11:40 +0200 Sebastian Dröge * ext/dtls/gstdtlscertificate.c: dtls: Set a random serial number and issuer/subject in the self-signed certificates This is also what Chrome and Firefox are doing, citing privacy concerns. Also putting OpenWebRTC from Sweden as issuer/subject is rather confusing. 2020-02-26 09:08:03 +0530 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: consider 'any' as no restriction gstreamer-rs set 'any' as default restriction which actually means 'no restriction' so handle it as the absence of restriction. 2020-02-26 13:11:30 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Set DXGI_PRESENT_ALLOW_TEARING only in fullscreen mode The DXGI_PRESENT_ALLOW_TEARING flag might cause unexpected tearing side effect. Setting it in fullscreen mode only seems to be the correct usage as in the Microsoft's direct3d examples. 2020-02-25 21:03:06 +0530 Guillaume Desmottes * gst/transcode/gsttranscodebin.c: transcodebin: fix caps leak encodecaps was leaked if the profile has restrictions. 2020-02-25 14:58:23 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2locationhandler.c: * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: * gst/rtmp2/rtmp/rtmpclient.c: rtmp2: Allow setting flash-version In case the application has to deal with fussy servers. User agent sniffing is so last decade. Adds a property to set the Flash version on both the sink and the src. The default stays the same (IIRC, Flash plugin for Linux from 2009). 2020-02-15 04:18:07 +1100 Jan Schmidt * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Skip unused bits in an SEI. Alternative approach to 18b54f8d347030c73d8afbeaf55df57aa5acbb96 that skips all bits in a broken SEI correctly. 2020-02-12 17:37:46 +0100 Stéphane Cerveau * gst-libs/gst/codecparsers/gsth265parser.c: Revert "h265parser: Skip unused SEI bits differently" This reverts commit 18b54f8d347030c73d8afbeaf55df57aa5acbb96. 2020-02-11 12:21:29 +0100 Stéphane Cerveau * tests/check/libs/h265parser.c: tests: add picture timing SEI parsing 2020-02-07 00:13:49 -0800 Dylan Yip * gst-libs/gst/codecparsers/gsth265parser.c: h265parse: Fix offset by one error in pic timing SEI Offset by one error causes a free/malloc error when parsing pic timing SEI messages. 2020-02-21 21:02:47 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Ensure the written bitstream buffer size is 128 bytes aligned DXVA spec is saying that the size of bitstream buffer provided by hardware decoder should be 128 bytes aligned. And also the host software decoder should align the size of written buffer to 128 bytes. That means if the slice (or frame in case of VP9) size is not aligned with 128 bytes, the rest of non 128 bytes aligned memory should be zero-padded. In addition to aligning implementation, some variables are renamed to be more intuitive by this commit. 2020-02-12 10:24:55 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: libva: Don't set the hint if MFX_VERSION is lower than 1025 MFX_MEMTYPE_VIDEO_MEMORY_ENCODER_TARGET is defined since MFX_VERSION 1025. 2020-01-27 15:13:58 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: rtmp2: Expose connection stats as property Save the stats before we destroy the connection, so we can still retrieve them afterwards. 2020-02-14 14:53:46 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: * gst/rtmp2/rtmp/rtmpconnection.h: rtmp2: Add gst_rtmp_connection_get_stats and _get_null_stats The former uses a thread-safe way of getting statistics from the connection without having to protect the fields with a lock. The latter produces a zeroed statistics structure for use when no connection exists. 2020-02-14 12:34:44 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Count outgoing bytes and acked bytes For statistics. 2020-01-27 16:30:20 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: rtmp2sink: Add a property for the outgoing chunk size 2020-02-14 12:34:19 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: * gst/rtmp2/rtmp/rtmpconnection.h: rtmp2: Add gst_rtmp_connection_set_chunk_size 2020-01-27 16:22:20 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Handle outgoing set chunk/window size properly Apply outgoing sizes only after writing the chunk to the peer. This is important particularly for the set chunk size and allows exposing it without threading issues. 2020-01-27 14:05:31 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpchunkstream.c: * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Chunk messages as buffers in loop thread Move output chunking from gst_rtmp_connection_queue_message into gst_rtmp_connection_start_write, which effectively moves it from the streaming thread into the loop thread. This allows us to handle the outgoing chunk-size message (which is generated by changing the future chunk-size property) properly, which could come from any other thread. 2020-02-12 16:55:15 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Consistently use GstBuffer for RTMP chunks 2020-02-12 16:47:30 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpchunkstream.c: * gst/rtmp2/rtmp/rtmpchunkstream.h: rtmp2: Add gst_rtmp_chunk_stream_serialize_all Serializes an RTMP message into a series of chunks, all in one buffer. Similar to what gst_rtmp_connection_queue_message does to serialize into a GByteArray. 2020-02-12 16:43:30 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmputils.c: * gst/rtmp2/rtmp/rtmputils.h: rtmp2: Add gst_rtmp_output_stream_write_all_buffer_async Similar to gst_rtmp_output_stream_write_all_bytes_async, but takes a GstBuffer instead of a GBytes. It can also return the number of bytes written, which might be lower in case of an error. 2020-02-14 12:28:43 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpchunkstream.c: * gst/rtmp2/rtmp/rtmpchunkstream.h: * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmpconnection.c: * gst/rtmp2/rtmp/rtmpconnection.h: rtmp2: Improve handling incoming set chunk/window size Reject out-of-spec sizes and warn about suspiciously small sizes. 2020-02-14 14:26:27 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2src.c: rtmp2: Lock self->lock before OBJECT_LOCK OBJECT_LOCK is used to protect property access only. self->lock is used to access the RtmpConnection, mostly between the streaming thread and the loop thread. To avoid deadlocks involving these two locks, we obey a lock order: If both self->lock and OBJECT_LOCK are needed, self->lock must be locked first. Clarify this. 2020-02-14 12:20:32 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpchunkstream.c: * gst/rtmp2/rtmp/rtmpmessage.h: rtmp2: Reject oversized messages We only have 24 bits for the size, so reject anything larger. 2020-02-14 11:49:23 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Count in_bytes_acked instead of in_bytes_unacked This is nicer for statistics. 2020-02-12 18:27:56 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: rtmpconnection: Use more appropriate size types - guint32 for chunk size and window size - guint64 for running counters 2020-02-12 16:55:45 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Add a g_return_val_if_fail 2020-02-12 16:49:45 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Replace explicit unref with g_main_context_invoke_full 2020-01-27 15:27:28 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: rtmpconnection: Use GST_*_OBJECT logging GstRtmpConnection isn't a GstObject with a name or path, but we still get the GObject's type and address. 2020-02-21 11:33:35 +0100 Marc Leeman * gst/rist/gstristsink.c: rist: fix two minor memory leaks 2020-02-19 17:07:35 +0100 Marc Leeman * gst/rtp/gstrtpsink.c: rtpmanagerbad: fix two minor memory leaks 2020-02-19 17:07:23 +0100 Marc Leeman * gst/rtp/gstrtpsink.c: rtpmanagerbad: reduce lock in rtpsink 2020-02-19 17:06:18 +0100 Marc Leeman * gst/rtp/gstrtpsrc.c: rtpmanagerbad: documentation comment fix 2020-02-21 03:39:14 +1100 Jan Schmidt * ext/webrtc/transportsendbin.c: webrtc: Configure transportsendbin latency internally Add latency configuration logic to transportsendbin to isolate it from the overall pipeline latency. That means that it configures minimum latency internally based on the latency query, and sends a latency event upstream that matches. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1209 2020-02-20 16:19:09 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Add padding space on decoder output view when it's not aligned Most H/W decoders have required alignment and dxva is also the case. 2020-02-15 01:23:32 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h264dec.h: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11h265dec.h: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/gstd3d11vp9dec.h: * sys/d3d11/plugin.c: d3d11decoder: Register elements per GPU device with capability check This implementation is similar to what we've done for nvcodec plugin. Since supported resolution, profiles, and formats are device dependent ones, single template caps cannot represent them, so this modification will help autoplugging and fallback. Note that the legacy gpu list and list of resolution to query were taken from chromium's code. 2020-02-17 15:04:28 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Fix typo s/vender/vendor 2020-02-14 20:27:28 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Adjust debug level for when _new() fails gst_d3d11_device_new might be used to enumerate device. 2020-02-06 16:39:06 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: vkswapper: keep a reference on the input buffer until present is finished Otherwise, there may be a very small period of time where the buffer can be freed while being presented. 2020-02-14 12:52:30 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: webrtc: Merge ICE candidates to local descriptions When emitting ICE candidates, also merge them to the local and pending description so they show up in the SDP if those are retrieved from the current-local-description and pending-local-description properties. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/676 2020-02-16 17:11:29 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Ensure upload staging texture to fallback render texture gst_video_frame_copy will copy input frame to stating texture of fallback frame. Then, we need to map fallback texture with GST_MAP_D3D11 flag to upload the staging texture to render texture. Otherwise the render texture wouldn't be updated. 2020-02-13 21:19:37 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Fix copying decoder view to staging Source texture (decoder view) might be larger than destination (staging) texture. In that case, D3D11_BOX structure should be passed to CopySubresourceRegion method in order to specify the exact target area. 2020-02-12 17:50:53 +0200 Sebastian Dröge * ext/webrtc/transportreceivebin.c: webrtcbin: Block the source pads before dtlssrtpdec inside transportreceivebin Otherwise dropped sticky events are not actually re-sent on the next opportunity and we can end up with data-flow before stream-start/segment events. 2020-02-06 19:40:20 +0200 Sebastian Dröge * ext/sctp/sctpassociation.c: sctp: Take some socket configurations from Firefox's datachannel code - Do not send ABORTs for unexpected packets are as response to INIT - Enable interleaving of messages of different streams - Configure 1MB send and receive buffer for the socket - Enable SCTP_SEND_FAILED_EVENT and SCTP_PARTIAL_DELIVERY_EVENT events - Set SCTP_REUSE_PORT configuration - Set SCTP_EXPLICIT_EOR and the corresponding send flag. We probably want to split packets to a maximum size later and only set the flag on the last packet. Firefox uses 0x4000 as maximum size here. - Enable SCTP_ENABLE_CHANGE_ASSOC_REQ - Disable PMTUD and set an maximum initial MTU of 1200 2020-02-06 18:43:35 +0200 Sebastian Dröge * ext/sctp/sctpassociation.c: * ext/sctp/sctpassociation.h: sctp: Start connection synchronously when starting the association Calling bind() only sets up some data structures and calling connect() only produces one packet before it returns. That packet is stored in a queue that is asynchronously forwarded by the encoder's source pad loop, so not much is happening there either. Especially no waiting is happening here and no forwarding of data to other elements. This fixes a race condition during connection setup: the connection would immediately fail if we pass a packet from the peer to the socket before bind() and connect() have returned. This can't happen anymore as bind() and connect() have returned already before both elements reach the PAUSED state, and in webrtcbin there is an additional blocking pad probe before the decoder that does not let any data pass through before that anyway. 2020-02-06 16:42:01 +0200 Sebastian Dröge * ext/sctp/sctpassociation.c: * ext/sctp/sctpassociation.h: sctp: Switch back to a non-recursive mutex and don't hold it while calling any usrsctp functions The library is thread-safe by itself and potentially calls back into our code, not only from the same thread but also from other threads. This can easily lead to deadlocks if we try to hold our mutex on both sides. 2020-02-12 22:29:31 +0900 Seungha Yang * sys/d3d11/gstd3d11window_win32.cpp: d3d11window: Fix for broken dirty rect drawing on Windows 7 DXGI_SWAP_EFFECT_DISCARD cannot be used with dirty rect drawing feature of IDXGISwapChain1::Present(). Note that IDXGISwapChain1 interface is available on Platform Update for Windows 7 and DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL is also the case. 2020-02-11 13:12:33 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Fix for dxva decoder output view rendering Use resolution specified in caps for input_rect instead of passed width and height value. The width and height might be modified ones by d3d11videosink, then frame resolution might be different. 2020-02-05 21:27:23 +0900 Seungha Yang d3d11decoder: Refactor decoding process * Move decoding process to handle_frame * Remove GstVideoDecoder::parse implementation * Clarify flush/drain/finish usage In forward playback case, have_frame() call will be followed by handle_frame() but reverse playback is not the case. To ensure GstVideoCodecFrame, the decoding process should be placed inside of handle_frame(), instead of parse(). Since we don't support alignment=nal, the parse() implementation is not worth. In order to fix broken reverse playback, let's remove the parse() implementation and revisit it when adding alignment=nal support. 2020-01-30 20:04:58 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h264dec.h: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11h265dec.h: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/gstd3d11vp9dec.h: * sys/d3d11/gsth264decoder.c: * sys/d3d11/gsth265decoder.c: * sys/d3d11/gstvp9decoder.c: d3d11decoder: Move handle_frame implementation to baseclass ... and remove unused start, stop method from subclass. Current implementation does not require subclass specific behavior for the handle_frame() method. 2020-02-05 18:20:57 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Remove max size condition from pool Actually our buffer pool size and the number of backbuffer are independent. In case of reverse playback, upstream might request a lot of buffers (up to GOP size). 2020-02-12 00:00:51 +0530 Nirbheek Chauhan * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: nvcodec: Mark class data as may-be-leaked to quiet the leaks tracer The class data with the caps in it will be leaked if the element is registered but never instantiated. There is no way around this. Mark the caps as such so that the leaks tracer does not warn about it. This is the same as pad template caps getting leaked, which are also marked as may-be-leaked. These objects are initialized exactly once, and are 'global' data. 2020-02-08 12:05:03 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpesrc.cpp: * ext/wpe/meson.build: wpe: Add software rendering support support Starting from WPEBackend-FDO 1.6.x, software rendering support is available. This features allows wpesrc to be used on machines without GPU, and/or for testing purpose. To enable it, set the `LIBGL_ALWAYS_SOFTWARE=true` environment variable and make sure `video/x-raw, format=BGRA` caps are negotiated by the wpesrc element. 2020-02-11 12:15:09 +0100 Jan Alexander Steffens (heftig) * ext/fluidsynth/gstfluiddec.c: fluiddec: Move logging init into plugin_init This is a nicer place to keep it. We also initialize it before touching the drivers. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/1026 2020-02-05 11:17:33 +0100 Jan Alexander Steffens (heftig) * ext/fluidsynth/gstfluiddec.c: fluiddec: Keep fluidsynth from probing audio drivers It might cause problems and we don't need the drivers anyway. This also avoids a bunch of stderr spam from the drivers. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/1026 2020-02-05 11:17:32 +0100 Jan Alexander Steffens (heftig) * ext/fluidsynth/gstfluiddec.c: fluiddec: Avoid deprecated fluid_synth_set_sample_rate This function is used to change the rate at runtime, which has issues: https://github.com/FluidSynth/fluidsynth/issues/585 Use the settings key instead (which already defaults to 44100, but I did test other rates). https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/1026 2020-01-22 16:20:28 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: tsparse: Add split-on-rai property If set, buffers sized smaller than the alignment will be sent so that RAI packets are at the start of a new buffer. Fixes: #1190 2020-02-06 14:29:13 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportsendbin.c: webrtc: In all blocking pad probes except for sink pads also handle serialized events Otherwise it can happen that e.g. the stream-start event is tried to be sent as part of pushing the first buffer. Downstream might not be in PAUSED/PLAYING yet, so the event is rejected with GST_FLOW_FLUSHING and because it's an event would not cause the blocking pad probe to trigger first. This would then return GST_FLOW_FLUSHING for the buffer and shut down all of upstream. To solve this we return GST_PAD_PROBE_DROP for all events. In case of sticky events they would be resent again later once we unblocked after blocking on the buffer and everything works fine. Don't handle events specifically in sink pad blocking pad probes as here downstream is not linked yet and we are actually waiting for the following CAPS event before unblocking can happen. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1172 2020-02-06 14:27:42 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/sctptransport.h: webrtcbin: Add a blocking pad probe for the receivebin -> sctpdec connection Without this it might happen that received data from the DTLS transport is already passed to sctpdec before its state was set to PLAYING. This would cause the data to be dropped, GST_FLOW_FLUSHING to be returned and the whole DTLS transport to shut down. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1172 among other things. 2020-02-06 14:24:41 +0200 Sebastian Dröge * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportreceivebin.h: webrtcbin/transportreceivebin: Use actual pad blocks instead of an additional GCond for blocking pads Using a GCond can easily lead to deadlocks and only duplicates the waiting code from gstpad.c in the best case. In this case it actually could lead to a deadlock if both RTP and RTCP were waiting. Only one of them would be woken up because g_cond_signal() was used instead of g_cond_broadcast(). 2020-02-06 14:22:17 +0200 Sebastian Dröge * ext/webrtc/transportsendbin.c: webrtc/transportsendbin: Clean up pad probe removal We already have a helper function for this so just use it instead of duplicating it. 2020-01-15 16:02:11 +0800 Haihao Xiang * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvp9enc.c: * sys/msdk/gstmsdkvp9enc.h: * sys/msdk/meson.build: msdkvp9enc: output raw vp9 stream instead of IVF stream video/x-vp9 is required in the src pad, however the output includes a IVF header, which makes the pipeline below doesn't work gst-launch-1.0 videotestsrc ! msdkvp9enc ! msdkvp9dec ! fakesink Since mfx 1.26, the VP9 encoder supports bitstream without IVF header, so in this patch, the mfx version is checked and msdkvp9enc is enabled only if mfx 1.26+ is available 2020-01-31 02:01:12 +1100 Jan Schmidt * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstamcvideoenc.h: * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: androidmedia: Support float i-frame-interval Android 25 added support for i-frame-interval to be a floating point value. Store the property as a float and use the newer version when it's available. 2020-01-31 01:33:51 +1100 Jan Schmidt * sys/androidmedia/gstamc-codec.h: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstamcvideoenc.h: * sys/androidmedia/jni/gstamc-codec-jni.c: * sys/androidmedia/magicleap/gstamc-codec-ml.c: androidmedia: Allow dynamic bitrate changes on Android >= 19 Android 19 added an API for dynamically changing the bitrate in a running codec. Also make it so that even when not update-able at runtime, parameters will at least be stored so that they take effect the next the codec is restarted. 2020-01-31 01:21:34 +1100 Jan Schmidt * sys/androidmedia/gstamc-codec.h: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/jni/gstamc-codec-jni.c: * sys/androidmedia/magicleap/gstamc-codec-ml.c: androidmedia: Handle force-keyunit requests Use API from Android 19 to request a keyframe from the MediaCodec when indicated by the base class. 2020-02-05 21:13:49 +1100 Jan Schmidt * sys/androidmedia/jni/gstamc-codec-jni.c: androidmedia: Permit Codec surface to be NULL The AMC encoder wrapper doesn't support input surfaces yet, and passes NULL when configuring the underlying codec. This was broken in commit 7fcf3e Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1102 2020-01-24 10:58:32 -0800 Ederson de Souza * ext/avtp/gstavtpaafdepay.c: avtp: Build with clang Minor non-conformity on AVTP code made it not compile with clang. 2020-01-24 15:47:56 -0800 Ederson de Souza * ext/avtp/gstavtpaafpay.c: * ext/avtp/gstavtpcvfdepay.c: * ext/avtp/gstavtpcvfpay.c: * tests/check/elements/avtpaafdepay.c: * tests/check/elements/avtpaafpay.c: * tests/check/elements/avtpcvfdepay.c: * tests/check/elements/avtpcvfpay.c: avtp: Plug several leaks After finally running tests with valgrind enabled, some leaks were found - both on code and on tests themselves. This patch plugs them all! 2020-02-07 13:24:53 +0000 Ludvig Rappe * ext/curl/gstcurlhttpsink.c: gstcurlhttpsink: Update HTTP header for curl 7.66 Change how content-length is set for HTTP POST headers, letting curl set the header (given the content-length) instead of manually writing it. This enables curl to know the content-length of the data. In curl 7.66, if curl does not know the content-length (e.g. when manually writing the header) curl will use Transfer-Encoding: chunked, which might not be desired. 2020-01-20 15:22:26 +0530 Nirbheek Chauhan * sys/nvcodec/gstnvdec.c: nvcodec: Fix crash in decoder on 32-bit Windows Same fix as 1a7ea45ffde40a4bea63562a2cc9892396d9f7eb, but I didn't test the decoder so I missed that the function pointers here weren't using the correct calling convention too. 2020-02-05 16:12:28 +0000 Tim-Philipp Müller * ext/ladspa/gstladspautils.c: ladspa: only multiply bounded rate properties by sample rate We don't want to accidentally multiply G_MAXFLOAT or -GMAXFLOAT with the sample rate. 2020-02-05 16:03:06 +0000 Tim-Philipp Müller * ext/ladspa/gstladspautils.c: ladspa: fix unbounded integer properties Use a double instead of a plain float for intermediary property values, so we have enough bits to store INT_MAX and it doesn't get rounded and wrapped to -1 when cast back to a 32-bit integer. Fixes criticals like g_param_spec_int: assertion 'default_value >= minimum && default_value <= maximum' failed when loading LADSPA plugins from the Linux Studio Plugins Project (http://lsp-plug.in) in GStreamer. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1194 2019-10-04 11:39:10 -0700 Andre Guedes * ext/avtp/gstavtp.c: * ext/avtp/gstavtpsink.c: * ext/avtp/gstavtpsink.h: * ext/avtp/meson.build: avtpsink: Implement synchronization mechanism The avtpsink element is expected to transmit AVTPDUs at specific times, according to GstBuffer timestamps. Currently, the transmission time is controlled in software via the rendering synchronization mechanism provided by GstBaseSink class. However, that mechanism may not cope with some AVB use-cases such as Class A streams, where AVTPDUs are expected to be transmitted at every 125 us. Thus, this patch introduces avtpsink own mechanism which leverages the socket transmission scheduling infrastructure introduced in Linux kernel 4.19. When supported by the NIC, the transmission scheduling is offloaded to the hardware, improving transmission time accuracy considerably. To illustrate that, a before-after experiment was carried out. The experimental setup consisted in 2 PCs with Intel i210 card connected back-to-back running an up-to-date Archlinux with kernel 5.3.1. In one host gst-launch-1.0 was used to generate a 2-minute Class A stream while the other host captured the packets. The metric under evaluation is the transmission interval and it is measured by checking the 'time_delta' information from ethernet frames captured at the receiving side. The table below shows the outcome for a 48 kHz, 16-bit sample, stereo audio stream. The unit is nanoseconds. | Mean | Stdev | Min | Max | Range | -------+--------+---------+---------+---------+---------+ Before | 125000 │ 2401 │ 110056 │ 288432 │ 178376 | After | 125000 │ 18 │ 124943 │ 125055 │ 112 | Before this patch, the transmission interval mean is equal to the optimal value (Class A stream -> 125 us interval), and it is kept the same after the patch. The dispersion measurements, however, had improved considerably, meaning the system is now consistently transmitting AVTPDUs at the correct time. Finally, the socket transmission scheduling infrastructure requires the system clock to be synchronized with PTP clock so this patches modifies the AVTP plugin documentation to cover how to achieve that. 2019-10-04 11:17:22 -0700 Andre Guedes * ext/avtp/gstavtpsink.c: avtpsink: Prepare code to new synchronization mechanism This patch refactors gst_avtp_sink_start() by moving all socket initialization code to its own function. This change prepares the code to the next patch which will introduce avtpsink's own rendering synchronization mechanism. 2019-10-04 11:11:23 -0700 Andre Guedes * ext/avtp/gstavtpsink.c: avtpsink: Remove SOCK_NONBLOCK from avtpsink Current avtpsink code opens the AF_PACKET socket with SOCK_NONBLOCK option. However, we actually want sendto() to block in case there isn't available space in socket buffer. 2019-10-04 10:56:30 -0700 Andre Guedes * ext/avtp/gstavtpsink.c: * ext/avtp/gstavtpsrc.c: avtp: Refactor if_index code This patch refactors both avtpsink and avtpsrc code so we use the if_nametoindex() helper instead of building a request and issuing an ioctl to get the if_index. 2020-02-05 22:12:15 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: d3d11window: Clear cached buffer per new caps d3d11window holds one buffer to redraw client area per resize event. When the input format is being changed, this buffer should be cleared to avoid mismatch beween newly configured shader/videoprocessor and the format of previously cached buffer. 2020-02-04 11:31:43 +0200 Sebastian Dröge * sys/nvcodec/gstnvdec.c: nvdec: Don't leak template caps when registering elements with old NVIDIA driver 2020-02-03 22:23:21 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Use consistent resolution between output caps and video meta h264/h265 decoded buffer might have crop area then we need to adjust video meta based on the padding space 2020-02-03 21:55:55 +0900 Seungha Yang * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11memory: Add a method to specify padding space 2020-02-01 17:38:29 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Add support for zero-copy playback When downstream support d3d11 memory with forward playback case, expose decoder output view memory objects without copying. 2020-02-04 01:00:00 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Create decoder output view whenever it's required Whatever the reason, buffer in pool might be freed then we need to configure decoder output views again. 2020-02-04 00:55:24 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Need to zero initilized for g_once A vairable to be used for g_once, it should be zero initialized 2020-01-30 18:11:52 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11allocator: Work as if buffer pool when running on texture array mode Because the size of texture array cannot be updated dynamically, allocator should block the allocation request. This cannot be done at buffer pool side if this d3d11 memory is shared among multiple buffer objects. Note that setting NO_SHARE flag to d3d11 memory is very inefficient. It would cause most likey copy of the d3d11 texture. 2020-01-31 00:17:13 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Fix fallback buffer copy Since we don't use dynamic texture now, cpu access to the fallback texture should not happen. 2020-01-30 21:12:31 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: d3d11window: Don't create swapchain again per caps change Creating swapchain is relatively heavy operation. If output dxgi format is not being chagned, we don't need to destroy and create swachain again. 2020-01-10 21:45:43 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11window: Invoke initial resize method from baseclass ... instead of calling from subclass in order for baseclass to handle more things between swapchain creation and resource creation. 2020-01-29 21:10:00 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: d3d11videosink: Use ID3D11VideoProcessor interface ...for color space conversion if available ID3D11VideoProcessor is equivalent to DXVA-HD video processor which might use specialized blocks for video processing instead of general GPU resource. In addition to that feature, we need to use this API for color space conversion of DXVA2 decoder output memory, because any d3d11 texture arrays that were created with D3D11_BIND_DECODER cannot be used for shader resource. This is prework for d3d11decoder zero-copy rendering and also for conditional HDR tone-map support. Note that some Intel platform is known to support tone-mapping at the driver level using this API on Windows 10. 2020-01-10 23:54:43 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11videoprocessor.c: * sys/d3d11/gstd3d11videoprocessor.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add video processor object ID3D11VideoProcessor interface provides various image conversion methods. Note that it's analogous to VAAPI VPP. 2020-01-29 17:29:04 +0900 Seungha Yang * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: d3d11format: Add util methods for mapping DXGI color space with ours Move color space mapping and hdr10 metadata conversion methods to d3d11format in order to reuse the code. 2020-02-01 19:18:44 +0100 Stéphane Cerveau * ext/fdkaac/gstfdkaacdec.c: fdkaacdec: add support for mpegversion=2 Fix for #1199 2020-01-29 18:55:55 +0900 Seungha Yang * sys/nvcodec/gstnvenc.c: nvenc: Query maximum supported API version We've been using NvEncodeAPICreateInstance method to find the supported API version, but that seems to be insufficient since there is a case where plugin failed in opening encoding session even if NvEncodeAPICreateInstance succeeded. Asking driver about the version would be the most certain way. 2020-01-31 17:25:08 -0800 Thiago Santos * gst/sdp/gstsdpdemux.c: sdpdemux: check if connections are available on media entry before get Otherwise we trigger an assert. 2020-02-01 01:37:08 +0100 Mathieu Duponchelle * ext/webrtc/transportreceivebin.c: webrtcbin: fix blocking of receive bin The receive bin should block buffers from reaching dtlsdec before the dtls connection has started. While there was code to block its sinkpads until receive_state was different from BLOCK, nothing was ever setting it to BLOCK in the first place. This commit corrects this by setting the initial state to BLOCK, directly in the constructor. In addition, now that blocking is effective, we want to only block buffers and buffer lists, as that's what might trigger errors, we want to still let events and queries go through, not doing so causes immediate deadlocks when linking the bin. 2020-01-31 09:47:59 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Fix crash with force-modesetting=1 This is a master regression, we would allocate a bo without having created the allocator yet. As of now, we lazily create the allocator. 2020-01-31 08:33:38 +0200 Sebastian Dröge * ext/sctp/sctpassociation.c: sctpassociation: Add missing return to prevent double unlock 2020-01-30 17:29:40 +0200 Sebastian Dröge * ext/sctp/gstsctpenc.c: * ext/sctp/sctpassociation.c: * ext/sctp/sctpassociation.h: sctpenc: Report errors when sending out data and the association is in error or disconnected state 2020-01-30 17:21:49 +0200 Sebastian Dröge * ext/sctp/gstsctpenc.c: * ext/sctp/sctpassociation.c: sctp: Clean up association state handling and go into error/disconnected state in more circumstances 2020-01-30 16:28:25 +0200 Sebastian Dröge * ext/sctp/sctpassociation.c: sctpassociation: Use GStreamer logging system instead of g_warning() and g_log() 2020-01-30 16:13:19 +0200 Sebastian Dröge * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpenc.c: sctp: Add more logging to the encoder/decoder elements on data processing And convert g_warning()s into normal log output instead. 2020-01-30 16:11:57 +0200 Sebastian Dröge * ext/sctp/gstsctpenc.c: * ext/sctp/sctpassociation.c: sctpenc: Correctly log/handle errors and handle short writes 2020-01-30 16:09:40 +0200 Sebastian Dröge * ext/sctp/gstsctpdec.c: * ext/sctp/sctpassociation.c: * ext/sctp/sctpassociation.h: sctp: Constify buffers in callbacks and functions And free data with the correct free() function in the receive callback by passing it to gst_buffer_new_wrapped_full() instead of gst_buffer_new_wrapped(). 2020-01-30 16:06:09 +0200 Sebastian Dröge * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpenc.c: * ext/sctp/sctpassociation.c: * ext/sctp/sctpassociation.h: sctp: Make receive/packetout callbacks thread-safe 2020-01-30 16:00:33 +0200 Sebastian Dröge * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpenc.c: sctp: Add logging and missing cleanup on errors when creating pads 2020-01-30 15:59:12 +0200 Sebastian Dröge * ext/sctp/gstsctpenc.c: sctpenc: Use g_signal_emit() instead of g_signal_emit_by_name() We have all the required information around so make use of it. 2020-01-30 15:58:30 +0200 Sebastian Dröge * ext/sctp/gstsctpenc.c: * ext/sctp/gstsctpenc.h: sctpenc: Propagate downstream flow errors upstream Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1180 2020-01-30 15:56:36 +0200 Sebastian Dröge * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpdec.h: sctpdec: Use a flow combiner for the source pad flow returns and propagate errors upstream Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1180 2020-01-17 17:44:34 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsparse.c: mpegtsparse: Moved dispose function into finalize dispose can be called several times and would double-free the flow combiner in that case. 2020-01-22 13:55:58 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: mpegtsparse: Added alignment property alignment works like in mpegtsmux, joining several MpegTS packets into one buffer. Default value of 0 joins as many as possible for each incoming buffer, to optimise CPU usage. 2020-01-10 18:00:07 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsparse.c: mpegtsparse: Set delta unit flag on non-random-access buffers If they don't have the random access flag set, they cannot be decoded independently. 2020-01-10 17:58:34 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsparse.c: mpegtsparse: Packetize output on default srcpad Align buffer boundaries with mpeg-ts packets, instead of keeping whatever packetization we have from the source (network, file reading). 2020-01-10 17:54:54 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtsparse.c: mpegtsparse: Factor common code into mpegts_packet_to_buffer The same code was used twice for turning an MpegTSPacketizerPacket into a GstBuffer. 2020-01-10 17:52:58 +0200 Vivia Nikolaidou * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Fix typo in flag name 2020-01-29 14:10:06 +0900 Seungha Yang * sys/msdk/gstmsdkdec.c: msdkdec: Fix GstMsdkContext leak 2020-01-29 14:02:09 +0900 Seungha Yang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: Clear reference counted object in dispose() method Follow GObject's memory management model 2020-01-28 13:06:59 +0100 Guillermo Rodríguez * ext/wayland/wlwindow.c: waylandsink: Clear window when pipeline is stopped When a pipeline is stopped (actually when the waylandsink element state changes from PAUSED to READY) the video surface is cleared, but the opaque black surface behind is not. Fix this by actually clearing both surfaces. 2020-01-09 22:23:17 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: use cached response for DMABuf when the frame size is same User is seeing corrupted display when running `videotestsrc ! video/x-raw,format=NV12,width=xxx,height=xxx ! msdkh265enc ! msdkh265dec ! glimagesink` with changed frame size, e.g. from 1920x1080 to 1920x240 The root cause is a same dmabuf fd is used for frames with different size, which causes some unexpected result. This patch requires cached response is used for frames with same size only for DMABuf, so a dmabuf fd can't be used for frames with different size any more. 2020-01-25 18:39:52 +0900 Seungha Yang * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window_win32.cpp: d3d11window_win32: Let DXGI choose client area Don't specify the resolution of backbuffer. Then dxgi will let us know the actual client area. When upstream resolution is chagned, updating the size of backbuffer without the consideration for client size would cause mismatch between them. 2020-01-23 11:01:33 -0500 Nicolas Dufresne * sys/nvcodec/gstnvdec.c: nvdec: Do not map GStreamer discont to CUVid discont Setting the CUVID_PKT_DISCONTINUITY implies clearing any past information about the stream in the decoder. The GStreamer discont flag is used for discontinuity caused by a seek, for first buffer and if a buffer was dropped. In the first two cases, the parsers and demuxers should ensure we start from a synchronization point, so it's unlikely that delta will be matched against the wrong state. For packet lost, the discontinuity flag will prevent the decoder from doing any concealment, with a result that ca be much worst visually, or freeze the playback until an IDR is met. It's better to let the decoder handle that for us. Removing this flag, also workaround a but in NVidia parser that makes it ignore our ENDOFFRAME flag and increase the latency by one frame. 2020-01-22 10:26:02 -0500 Nicolas Dufresne * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Tell the parser we have complete pictures This sets the CUVID_PKT_ENDOFPICTURE flag in order to inform the decoder that we have a complete picture. This should remove one frame latency otherwise introduce by NVidia parser. 2020-01-23 18:08:53 +0200 Sebastian Dröge * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: Fill remainder of the cc_data in CDP packets with empty packets Instead of filling it completely with zeroes. Filling with zeroes is considered invalid by various CC implementations. 2020-01-21 21:25:28 +0900 Seungha Yang * sys/d3d11/gstd3d11window_corewindow.cpp: d3d11window_corewindow: Always call methods of CoreWindow interface from UI thread Like swapchain panel implementation, most methods of CoreWindow should be called from UI thread. 2020-01-21 16:50:22 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Update the last_ts correctly if we have no DTS If we have no DTS but a PTS then this means both are the same, and we should update the last_ts with the PTS. Only if both are unknown then we don't know the current position and should not update it at all. Previously we would always update the last_ts to GST_CLOCK_TIME_NONE if the DTS is unknown, which caused the position to jump around and to cause spurious gap events to be sent. 2020-01-21 15:14:08 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: Fix compiler warning This patch fixed compiler warning below: [1/4] Compiling C object 'sys/msdk/dc44ea0@@gstmsdk@sha/gstmsdkvpp.c.o'. ../../gst-plugins-bad/sys/msdk/gstmsdkvpp.c: In function ‘gst_msdkvpp_context_prepare’: ../../gst-plugins-bad/sys/msdk/gstmsdkvpp.c:214:7: warning: suggest parentheses around operand of ‘!’ or change ‘&’ to ‘&&’ or ‘!’ to ‘~’ [-Wparentheses] 2020-01-21 12:14:49 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: connect rtp funnel after updating ptmaps We need the streams' pt maps updated before requesting pads on rtpbin, because this is what will trigger the requesting of FEC encoders, and our handler for this request looks for the payload types in the relevant stream's pt map. Fixes #1187 2020-01-20 16:35:50 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: Send gap events for late streams whenever updating the SCR Instead of doing it on each packet and doing it based on the distance to the previous SCR instead of based on the DTS. Previously we would send gap events for audio all the time if the SCR distance was 400ms because the threshold for audio is 300ms and by only ever updating the position when the SCR updates we would always be 100ms above the threshold and send needless gap events. This fixes audio glitches on various files caused by gap events. 2020-01-16 13:00:33 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Do not access to broken encode session If an encode session failed in initializing, the encode session would be broken and the next nvenc API will cause crash. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1179 2020-01-17 11:07:47 +0530 Nirbheek Chauhan * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdk: Fix increasing memory usage in dynamic pipelines Our context is non-persistent, and we propagate it throughout the pipeline. This means that if we try to reuse any gstmsdk element by removing it from the pipeline and then re-adding it, we'll clone the mfxSession and create a new gstmsdk context as a child of the old one inside `gst_msdk_context_new_with_parent()`. Normally this only allocates a few KB inside the driver, but on Windows it seems to allocate tens of MBs which leads to linearly increasing memory usage for each PLAYING->NULL->PLAYING state cycle for the process. The contexts will only be freed when the pipeline itself goes to `NULL`, which would defeat the purpose of dynamic pipelines. Essentially, we need to optimize the case in which the element is removed from the pipeline and re-added and the same context is re-set on it. To detect that case, we set the context on `old_context`, and compare it to the new one when preparing the context. If they're the same, we don't need to do anything. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/946 2020-01-17 10:43:11 +0530 Nirbheek Chauhan * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkcontextutil.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: Reorganize context preparation code Split it out into a separate function with early exits to make the flow clearer, and document what the function is doing clearly. No functional changes. 2020-01-17 10:13:49 +0530 Nirbheek Chauhan * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: Fix warning about unused variable on Windows 2020-01-17 13:45:35 +0530 Nirbheek Chauhan * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: Use gst_clear_object() `gst_object_replace()` is not supposed to be used for unreffing and NULLing objects. 2020-01-20 16:27:30 +0530 Nirbheek Chauhan * sys/nvcodec/gstnvenc.c: nvcodec: Print debug info when initializing nvenc We weren't printing the return value. 2020-01-20 15:22:26 +0530 Nirbheek Chauhan * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstcuvidloader.c: * sys/nvcodec/gstcuvidloader.h: * sys/nvcodec/stub/cuda.h: nvcodec: Fix crash on 32-bit Windows We weren't using the correct calling convention when calling CUDA and CUVID APIs. `CUDAAPI` is `__stdcall` on Windows. This was working fine on x64 because `__stdcall` is ignored and there's no special calling convention. However, on x86, we need to use `__stdcall`. 2020-01-20 15:10:51 +0530 Nirbheek Chauhan * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/stub/cuda.h: nvcodec: cuda.h only needs glib.h, not gst.h Just a nitpick. Also, force the compiler to use our stub header instead of searching for it in the include paths. 2020-01-17 11:19:53 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Start datachannel SCTP elements only after the DTLS connection is established Otherwise we would start sending data to the DTLS connection before, and the DTLS elements consider this an error. Also RFC 8261 mentions: o A DTLS connection MUST be established before an SCTP association can be set up. 2020-01-12 17:04:22 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Add handling of unspecified peer-connection-state situation For us it can happen that the DTLS transports are still in the process of connecting while the ICE transport is already completed. This situation is not specified in the spec but conceptually that means it is still in the process of connecting. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/758 2020-01-12 16:32:20 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Return the old state if we ended up being in an unspecified situation Previously we would've returned NEW, which is usually more wrong. 2020-01-09 19:21:08 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Fix transitions for the peer connection state They're now mapping exactly to what https://www.w3.org/TR/webrtc/#rtcpeerconnectionstate-enum actually specifies. Related to https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/758 2020-01-09 18:55:56 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Fix transitions for the connection state They're now mapping exactly to what https://www.w3.org/TR/webrtc/#dom-rtciceconnectionstate actually specifies. Related to https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/758 2020-01-12 16:25:01 +0200 Sebastian Dröge * gst-libs/gst/webrtc/dtlstransport.c: webrtc/dtlstransport: Proxy DTLS connection state from the DTLS elements to the transport Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/758 2020-01-12 16:18:09 +0200 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: dtls: Keep track of the connection state and signal it through all the layers This allows the application to keep track of the underlying DTLS connection state and act accordingly. 2020-01-12 13:56:00 +0200 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: dtls: Handle errors/close_notify at all steps and propagate through the layers properly Previously we simply logged errors but never reported them to elements or even to the user. Fatal errors are now properly reported. Additionally proper connection closing is implemented based on EOS: - dtlsenc: EOS will cause close_notify to be sent to the peer and only if the peer also sent back close_notify we will forward the EOS event. - dtlsdec: EOS will be forwarded normally, this only means that the unterlying transport was closed. On receiving a DTLS packet containing close_notify, return EOS and send EOS downstream. 2020-01-12 12:48:55 +0200 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlsenc.h: dtls: Propagate write errors backwards through dtlsenc/dtlsconnection 2020-01-12 11:24:15 +0200 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsenc.c: dtls: Use a plain function pointer instead of a GClosure for the send callback There's not point in using GClosure and going through all the GValue/libffi infrastructure for each DTLS packet. 2020-01-09 12:32:24 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Don't consider transceivers without mid as inactive during ICE gathering state updates We don't have any mid before parsing the SDP, which happens after we handled the SDP answer and that usually happens long after ICE candidate gathering is finished. Without this all transceivers are considered inactive and as such ICE gathering is for active transceiver was considered complete from the very beginning. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1126 2020-01-09 12:27:31 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Don't consider RTP receivers stopped We don't support stopping RTP receivers currently so let's not consider them all stopped all the time. This fixes some of the ICE/DTLS state change handling and specifically fixes the ICE gathering state. Previously the ICE gathering state was immediately going from NEW to COMPLETE because it considered all transceivers stopped and as such all activate transceivers were finished gathering ICE candidates. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1126 2020-01-09 12:26:41 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Improve logging related to ICE/DTLS state changes 2019-12-31 02:41:40 +1100 Jan Schmidt * gst/yadif/meson.build: yadif: Re-renable MMX asm on x86_64 with meson The meson build doesn't automatically set HAVE_CPU_* defines like autotools did, so the yadif plugin was being built without the MMX assembler support 2020-01-19 14:50:12 +1100 Jan Schmidt * gst/yadif/vf_yadif.c: * gst/yadif/yadif.c: yadif: Only build inline Asm with gcc/clang 2019-11-06 04:45:09 -0800 Josep Torra * sys/msdk/gstmsdkdec.c: msdkdec: align frame list using decoded timestamp Before this change decoder used the oldest frame in the list to pair it with the decoded surface. This only works when there's a perfect stream like HEADERS,SYNCPOINT,DELTA... When playing RTSP streams we can get imperfect streams like HEADERS, DELTA,SYNCPOINT,DELTA... In this case decoder drops the frames between HEADERS and SYNCPOINT which leads into using wrong PTS on the output frames. With this change we inject the input PTS into the bitstream and use it to align the internal frame list with the actually decoded position. Fixes playback with: ``` gst-launch-1.0 rtspsrc location=... latency=0 drop-on-latency=1 ! ... ``` 2019-11-28 21:30:18 +0900 Seungha Yang * sys/nvcodec/gstnvenc.c: nvenc: Query supported minimum resolution Hard-coded 16x16 resolution is likely to differ from the device's support in most cases. If we can use NV_ENC_CAPS_WIDTH_MIN and NV_ENC_CAPS_HEIGHT_MIN, update pad template with returned value. 2019-11-28 20:47:34 +0900 Seungha Yang * sys/nvcodec/cuviddec.h: * sys/nvcodec/nvEncodeAPI.h: * sys/nvcodec/nvcuvid.h: nvcodec: Bump SDK header to version 9.1 Update header to query minimum resolution of encoder and to control the number of reference frame if it's supported 2019-12-18 18:01:30 +0000 Tim-Philipp Müller * gst/mxf/meson.build: * gst/mxf/mxf.c: * gst/mxf/mxfprores.c: * gst/mxf/mxfprores.h: mxfdemux: add support for Apple ProRes 2019-11-27 12:23:58 +0800 Haihao Xiang * tests/examples/meson.build: * tests/examples/msdk/meson.build: * tests/examples/msdk/test-roi.c: examples: add test-roi for gst-msdk Copied and pasted from gstreamer-vaapi and did a few changes for gst-msdk. 2019-11-27 15:16:17 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: support transform_meta virtual method Allow the base class to copy GstVideoRegionOfInterestMeta data to the output buffer when calling gst_video_decoder_finish_frame 2019-11-27 16:00:59 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkenc: set ROI region for msdk{h264, h265}enc A reconfig is needed when ROI is changed, otherwise the ROI parameters won't take effect 2019-12-03 10:48:21 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkenc: add set_extra_params virtual method set_extra_params is added to allow sub class to add extra mfx parameters for changed input frame or meta data 2019-11-28 14:54:30 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkenc: add need_reconfig virtual method need_reconfig is added to allow sub class requires a reconfig when the input frame or the MetaData (e.g. GstVideoRegionOfInterestMeta) attached to the input frame is changed. 2020-01-13 17:20:14 +0900 Seungha Yang * sys/d3d11/gsth265decoder.c: d3d11h265dec: Fix wrong NoRaslOutputFlag setting ... and handle EOS and EOB nals. Only the first CRA picture should be associated with NoRaslOutputFlag as the comment in code. 2020-01-12 08:07:23 +0530 Nirbheek Chauhan * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: pkgconfig: Remove unused substitution in uninstalled.pc.in `@videolibdir@` isn't used anymore. 2020-01-12 07:49:47 +0530 Nirbheek Chauhan * tests/check/meson.build: * tests/examples/ipcpipeline/ipcpipeline1.c: * tests/examples/mpegts/meson.build: * tests/examples/opencv/meson.build: * tests/examples/waylandsink/meson.build: * tests/examples/webrtc/meson.build: tests: Fix minor bugs in usage of config.h 2020-01-12 07:41:34 +0530 Nirbheek Chauhan * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/gstipcpipelinesrc.c: ipcpipeline: Minimal fixes that allow building with MSVC 2020-01-11 14:47:13 +0530 Nirbheek Chauhan * sys/ipcpipeline/meson.build: * tests/examples/ipcpipeline/meson.build: ipcpipeline: Rework compiler checks `pipe()` isn't used since 15927b6511bc8304ae144a45c9fbfca88e5dd641, and `socketpair()` from `#include ` is used only in the examples. In practice, you can use probably also use anything that allows you to create fd pairs, such as named pipes or anonymous pipes. We use the cross-platform GstPollFD API in the plugin. 2020-01-13 17:10:39 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Add property to set the extra latency to introduce for waiting for LTC timecodes Default to 150ms instead of 8 frames, which seems to work in the majority of cases. 2020-01-13 12:54:35 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Add some more debug output 2020-01-11 18:24:02 +0900 Seungha Yang * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/gstd3d11window.cpp: d3d11memory: Always use native DXGI format if device support it Use consistent memory layout between dxva and other shader use case. For example, use DXGI_FORMAT_NV12 texture format instead of two textures with DXGI_FORMAT_R8_UNORM and DXGI_FORMAT_R8G8_UNORM. 2020-01-10 20:44:19 +0900 Seungha Yang * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11vp9dec.c: Revert "d3d11: Add support for D3D11_USAGE_DYNAMIC" This reverts commit ddd13fc7c061a9873b181d0de32aaf9546e7d0af Dynamic usage can reduce the number of copy per frame but make things complicated and the benefit seems to not significant. Also since we don't provide _map() method for the dynamic usage, application cannot read buffers which make "last-sample" property unusable in case of d3d11videosink. 2020-01-13 02:30:07 +1100 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: WebRTC: Support non-trickle ICE candidates in the SDP Add any ICE candidates from the SDP before adding pending trickle ICE candidates to support non-trickle peers Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/678 2020-01-11 00:01:55 +0900 Seungha Yang * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h264dec.h: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11h265dec.h: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/gstd3d11vp9dec.h: * sys/d3d11/plugin.c: d3d11: Don't register decoders if unavailable DXVA requires a hardware interface but may not be available, such as in the case of VMs or when the GPU vendor does not provide a decoder interface. 2020-01-10 23:57:15 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.c: d3d11decoder: Don't return not initialized object from _new() method ... and change some debug levels since initialization failure might not be fatal. 2019-08-22 16:04:37 +0900 Shinya Saito * ext/wayland/wlwindow.c: waylandsink: Fix xdg_shell fullscreen mode xdg_shell fullscreen mode doesn't work for committing xdg_surface without configure acknowledgement. In addition, we can't set different surface setting from acknowledged config in this mode. 2019-11-11 12:40:07 -0800 Josep Torra * gst/videoparsers/gsth264parse.c: * tests/check/elements/h264parse.c: h264parse: do not push wrong PTS with some raw files Some raw h264 encoded files trigger the assignment of wrong PTS to buffers when some SEI data is provided. This change prevents it to happen. Also ensure this behavior is being tested. 2020-01-10 13:08:38 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Skip over invalid LTC timecodes immediately 2020-01-10 11:40:54 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Clean up old LTC timecodes on LTC discontinuity We might have some old timecodes that are in the future now and have to drop those to make sure that our queue is correctly ordered and we don't have multiple timecodes for the same running time. 2020-01-10 11:33:28 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Fix waiting for the first video frame in case of live video input 2020-01-09 17:41:55 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Fix up handling/queueing of LTC timecodes Directly read them out of the decoder as soon as we passed audio and then store them in a queue that we handle internally together with their timestamps. This cleans up memory management and gives us proper control over the queue instead of guessing how the queue inside the LTC decoder actually works and when it overflows. 2020-01-09 15:27:28 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Only allow requesting LTC audio pad in NULL/READY states And don't introduce any latency at all if not LTC audio pad was requested. 2020-01-09 15:23:20 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: In live mode wait correctly for the latency to pass And also introduce 6 instead of 2 frames of latency compared to the LTC audio input as that seems to be an upper bound for how much the LTC library is lagging behind. 2020-01-09 15:16:02 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Use the internal LTC timecode tracker instead of the last one we retrieved Otherwise we don't interpolate between LTC timecodes but only ever put an LTC timecode on buffers once we actually received one. 2020-01-09 14:23:08 -0500 Nicolas Dufresne * sys/decklink/gstdecklink.cpp: * sys/decklink/linux/DeckLinkAPIDispatch.cpp: decklink: Silence no driver / no SO messages This g_once() is called everywhere, even in provider. This cause spurious error when device monitor is used. Just silence or remove the spurious logs. 2020-01-10 16:03:48 +0900 Seungha Yang * ext/hls/meson.build: hls: Check nettle version to ensure AES128 support AES128 support was added since nettle version 3.0 ../subprojects/gst-plugins-bad/ext/hls/gsthlsdemux.h:110:10: error: field ‘ctx’ has incomplete type struct CBC_CTX (struct aes128_ctx, AES_BLOCK_SIZE) aes_ctx; 2020-01-06 12:59:36 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: Revert "msdkdec: make sure to use video memory on Linux" Commit a1584b6 caused big performance drop if the downstream element is not a msdk element because it is very slow to read data from video memory directly. This reverts commit a1584b6f99caaf61812ac6a9654ec0e6da8240da. 2020-01-09 21:00:47 +0900 Seungha Yang * tests/check/elements/d3d11colorconvert.c: tests: d3d11colorconvert: Add test cases for visual validation By default new test cases are disabled since it might be timed out or test environment might not have render device. 2020-01-09 19:39:59 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11format.h: d3d11colorconverter: Handle P016_LE format P016 format is no different than P010. Not much things to add code. 2020-01-09 19:32:38 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: d3d11colorconverter: Add support for YUV to YUV conversion 2020-01-08 23:09:51 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: d3d11colorconverter: Add support for RGB to YUV conversion ... and remove code for RGBx since it's not supported format by our d3d11 implementation for now. 2020-01-09 11:14:47 +0900 Seungha Yang * sys/d3d11/gstd3d11format.h: d3d11format: Remove invalid format from supported format list 2020-01-08 07:42:21 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Always configure 10 bit YUV for VANC frames If 8 bit are required by the device/mode then it will be converted internally by the SDK, but the SDK won't automatically convert from 8 to 10 bit. As such, always use 10 bit VANC. Some devices require configuring also a 10 bit video format when using 10 bit VANC is required but those would fail regardless and the application would have to configure the correct video format. With newer versions of the SDK this information can be retrieved via the BMDDeckLinkVANCRequires10BitYUVVideoFrames flag but we don't use a new enough SDK version yet to extract this information. 2020-01-07 20:17:12 +0200 Sebastian Dröge * ext/webrtc/webrtcdatachannel.c: webrtc: Unmap all non-binary buffers received via the datachannel Previously they were only unmapped in case of binary data, causing all of them to be leaked. 2020-01-07 10:05:33 +0100 Stéphane Cerveau * ext/zbar/gstzbar.c: zbar: remove useless conditional on passthrough seen that passthrough is never set for this element, no need to allow to remove the 'transform' call 2019-09-27 23:02:38 +0200 Stéphane Cerveau * ext/meson.build: * ext/zxing/gstzxing.cpp: * ext/zxing/gstzxing.h: * ext/zxing/gstzxingplugin.c: * ext/zxing/meson.build: * meson_options.txt: * tests/check/elements/zxing.c: * tests/check/meson.build: zxing: initial plugin revision Status: - scan QR code with low resolution - Scan barcode with high resolution 2020-01-03 18:14:48 +0100 Stéphane Cerveau * tests/check/elements/h264parse.c: * tests/check/elements/h265parse.c: tests: add h26xparse HDR SEI test Detect caps according to MDCV + CLLI SEI message 2019-12-18 10:05:05 +0100 Stéphane Cerveau * tests/check/elements/h265parse.c: * tests/check/meson.build: test: add h265parse test 2019-12-17 12:08:34 +0100 Stéphane Cerveau * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h26xparse: Handle state change on IDR first slice As the H265/H264 bitstream can support multiple slices, mastering_display_info_state and content_light_level_state should be changed only on first slice segment. Fix #1152 2019-12-05 16:48:05 +0100 Stéphane Cerveau * gst/videoparsers/gsth265parse.c: h265parse: use same algo for MDCV and CLL SEI management 2019-11-28 12:59:46 +0100 Stéphane Cerveau * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parser: add MDCV and CLL SEI message parsing Allow to parse SEI message for: - mastering display colour volume - Light level infomation Set to caps if necessary. Fix #958 2020-01-07 01:40:57 +0900 Seungha Yang * ext/dash/gstplugin.c: dash: Remove spurious condition check and remove unused debug category Note that uppercase debug category names are used for core modules and should be redefined in lowercase for plugins if necessary. 2020-01-06 16:30:36 -0300 Thibault Saunier * gst/debugutils/gstfakevideosink.c: fakevideosink: Use our pad template to create pad 2019-12-30 18:58:59 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.cpp: * sys/d3d11/gstd3d11window.h: * sys/d3d11/gstd3d11window_corewindow.cpp: * sys/d3d11/gstd3d11window_corewindow.h: * sys/d3d11/gstd3d11window_swapchainpanel.cpp: * sys/d3d11/gstd3d11window_swapchainpanel.h: * sys/d3d11/gstd3d11window_win32.cpp: * sys/d3d11/gstd3d11window_win32.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add support for Universal Windows Platform Initial UWP support via new window (CoreWindow and SwapChainPanel) implementation. 2019-12-31 13:36:59 +0900 Seungha Yang * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h264dec.h: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11h265dec.h: * sys/d3d11/gstd3d11vp9dec.c: d3d11decoder: Fix build on non-desktop target Although the target platform of D3D11 decoding API are both desktop and UWP app, DXVA header is blocked by "WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)" which is meaning that that's only for desktop app. To workaround this inconsistent annoyingness, we need to define WINAPI_PARTITION_DESKTOP regardless of target WinAPI partition. 2019-12-25 13:21:11 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9enc.c: msdkvp9enc: fix 10bit encoding The codec profile should be consistent with the frame fourcc code, this fixes pipeline below: gst-launch-1.0 videotestsrc ! \ video/x-raw,width=320,height=240,format=P010_10LE ! msdkvp9enc ! \ fakesink 2019-12-25 10:51:36 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9enc.c: msdkvp9enc: fix width and height The frame width and height is rounded up to 128 and 32 since commit 8daac1c, so the width, height for initialization should be rounded up to 128 and 32 too because the MSDK VP9 encoder will do some check on width and height. Sample pipeline: gst-launch-1.0 videotestsrc ! \ video/x-raw,width=320,height=240,format=NV12 ! msdkvp9enc ! fakesink 2020-01-03 15:27:30 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: make sure the found response meets the request Otherwise the re-used msdk response doesn't have enough frames so it is possible the pipeline will be broken 2019-12-26 13:31:50 -0800 Julien Isorce * sys/msdk/gstmsdkenc.c: msdkenc: renegotiate when video info changes Renegotiation was implemented for bitrate change. We can re-use the same sequence when video info changes except that this can be executed right away when receiving the new input format. I.e. no need to wait for the next call to handle_frame. 2020-01-05 16:20:18 +0000 Philippe Normand * sys/decklink/gstdecklink.cpp: decklink: Fix crash when probing without driver If there is no decklink hardware/driver, the devices list is empty (NULL), so this needs to be checked before iterating over the list. 2019-05-16 19:42:37 +0200 Stéphane Cerveau * ext/dash/gstdashsink.c: * ext/dash/gstdashsink.h: * ext/dash/gstmpdclient.c: * ext/dash/gstmpdclient.h: * ext/dash/gstmpdhelper.c: * ext/dash/gstmpdhelper.h: * ext/dash/gstplugin.c: * ext/dash/meson.build: * tests/check/elements/dash_mpd.c: dashsink: Add new sink to produce DASH content Add static or dynamic mpd with: - baseURL - period - adaptation_set - representaton - SegmentList - SegmentURL - SegmentTemplate Support multiple audio and video streams. Pass conformance test with DashIF.org 2019-12-09 15:10:00 +0100 Stéphane Cerveau * ext/dash/gstxmlhelper.c: gstxmlhelper: fix xmlOutputBufferFlush ignored ret fix CID #1456553 2019-09-02 14:52:53 +0200 Stéphane Cerveau * ext/dash/gstmpdadaptationsetnode.c: * ext/dash/gstmpdbaseurlnode.c: * ext/dash/gstmpdmultsegmentbasenode.c: * ext/dash/gstmpdperiodnode.c: * ext/dash/gstmpdrepresentationbasenode.c: * ext/dash/gstmpdrepresentationnode.c: * ext/dash/gstmpdrootnode.c: * ext/dash/gstmpdrootnode.h: * ext/dash/gstmpdsegmenttemplatenode.c: * ext/dash/gstmpdsegmenturlnode.c: * ext/dash/gstmpdutctimingnode.c: dash: add set/get property for nodes Add a way to set/get properties for given nodes: - root - baseurl - representation 2019-12-04 17:25:24 +0100 Stéphane Cerveau * ext/dash/gstdashdemux.c: * ext/dash/gstmpdadaptationsetnode.c: * ext/dash/gstmpdadaptationsetnode.h: * ext/dash/gstmpdbaseurlnode.c: * ext/dash/gstmpdbaseurlnode.h: * ext/dash/gstmpdclient.c: * ext/dash/gstmpdclient.h: * ext/dash/gstmpdcontentcomponentnode.c: * ext/dash/gstmpdcontentcomponentnode.h: * ext/dash/gstmpddescriptortypenode.c: * ext/dash/gstmpddescriptortypenode.h: * ext/dash/gstmpdhelper.c: * ext/dash/gstmpdhelper.h: * ext/dash/gstmpdlocationnode.c: * ext/dash/gstmpdlocationnode.h: * ext/dash/gstmpdmetricsnode.c: * ext/dash/gstmpdmetricsnode.h: * ext/dash/gstmpdmetricsrangenode.c: * ext/dash/gstmpdmetricsrangenode.h: * ext/dash/gstmpdmultsegmentbasenode.c: * ext/dash/gstmpdmultsegmentbasenode.h: * ext/dash/gstmpdnode.c: * ext/dash/gstmpdnode.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * ext/dash/gstmpdperiodnode.c: * ext/dash/gstmpdperiodnode.h: * ext/dash/gstmpdprograminformationnode.c: * ext/dash/gstmpdprograminformationnode.h: * ext/dash/gstmpdreportingnode.c: * ext/dash/gstmpdreportingnode.h: * ext/dash/gstmpdrepresentationbasenode.c: * ext/dash/gstmpdrepresentationbasenode.h: * ext/dash/gstmpdrepresentationnode.c: * ext/dash/gstmpdrepresentationnode.h: * ext/dash/gstmpdrootnode.c: * ext/dash/gstmpdrootnode.h: * ext/dash/gstmpdsegmentbasenode.c: * ext/dash/gstmpdsegmentbasenode.h: * ext/dash/gstmpdsegmentlistnode.c: * ext/dash/gstmpdsegmentlistnode.h: * ext/dash/gstmpdsegmenttemplatenode.c: * ext/dash/gstmpdsegmenttemplatenode.h: * ext/dash/gstmpdsegmenttimelinenode.c: * ext/dash/gstmpdsegmenttimelinenode.h: * ext/dash/gstmpdsegmenturlnode.c: * ext/dash/gstmpdsegmenturlnode.h: * ext/dash/gstmpdsnode.c: * ext/dash/gstmpdsnode.h: * ext/dash/gstmpdsubrepresentationnode.c: * ext/dash/gstmpdsubrepresentationnode.h: * ext/dash/gstmpdsubsetnode.c: * ext/dash/gstmpdsubsetnode.h: * ext/dash/gstmpdurltypenode.c: * ext/dash/gstmpdurltypenode.h: * ext/dash/gstmpdutctimingnode.c: * ext/dash/gstmpdutctimingnode.h: * ext/dash/gstxmlhelper.c: * ext/dash/gstxmlhelper.h: * ext/dash/meson.build: * tests/check/elements/dash_mpd.c: dash: Generate an XML content from object. Add mpd node base class to provide xml generation facilities for child objects. 2019-12-26 11:24:37 -0800 Julien Isorce * sys/msdk/gstmsdkdec.c: msdkdec: trigger renegotiation if video info changes Useful when framerate changes. Previously it was only checking for resolution change but renego should happen if any video info changes. 2019-12-23 15:17:07 +0900 Seungha Yang * ext/vulkan/vksink.c: vulkansink: Fix null pointer exception context query might happen before creating swapper. 2019-12-17 16:10:53 -0800 Julien Isorce * sys/msdk/gstmsdkdec.c: msdkdec: make sure to use video memory on Linux The block that sets use_video_memory flag is after the the condition `if gst_msdk_context_prepare` but it always returns false when there is no other msdk elements. So the decoder ends up with use_video_memory as FALSE. Note that msdkvpp always set use_video_memory as TRUE. When use_video_memory is FALSE then the msdkdec allocates the output frames with posix_memalign (see gstmsdksystemmemory.c). The result is then copied back to the GstVideoPool's buffers (or to the downstream pool's buffers if any). When use_video_memory is TRUE then the msdkdec uses vaCreateSurfaces to create vaapi surfaces for the hw decoder to decode into (see gstmsdkvideomemory.c). The result is then copied to either the internal GstVideoPool and to the downstream pool if any. (vaDeriveImage/vaMapBuffer is used in order to read the surfaces) 2020-01-02 12:22:07 +0900 Seungha Yang * sys/msdk/gstmsdkdec.c: msdkdec: Correct return value of GstVideoDecoder::flush() Use boolean instead of GstFlowReturn as declared. Note that since base class does not check return value of GstVideoDecoder::flush(), this would not cause any change of behavior. 2019-12-23 14:09:25 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: free unlocked msdk surface before output buffer allocation https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/924 is trying to use video memory for decoding on Linux, which reveals a hidden bug in msdkdec. For video memory, it is possible that a locked mfx surface is not used indeed and it will be un-locked later in MSDK, so we have to check the associated MSDK surface to find out and free un-used surfaces, otherwise it is easy to exhaust all pre-allocated mfx surfaces and get errors below: 0:00:00.777324879 27290 0x564b65a510a0 ERROR default gstmsdkvideomemory.c:77:gst_msdk_video_allocator_get_surface: failed to get surface available 0:00:00.777429079 27290 0x564b65a510a0 ERROR msdkbufferpool gstmsdkbufferpool.c:260:gst_msdk_buffer_pool_alloc_buffer: failed to create new MSDK memory Note the sample code in MSDK does similar thing in CBuffering::SyncFrameSurfaces() 2019-12-12 19:02:25 +0200 Sebastian Dröge * ext/hls/gsthlssink2.c: * ext/hls/gsthlssink2.h: * ext/hls/meson.build: hlssink2: Add signals for allowing custom playlist/fragment handling Instead of always going through the file system API we allow the application to modify the behaviour. For the playlist itself and fragments, the application can provide a GOutputStream. In addition the sink notifies the application whenever a fragment can be deleted. 2019-12-31 12:41:25 +0200 Sebastian Dröge * tests/examples/webrtc/webrtcbidirectional.c: webrtc: Actually make use of promise created one line before Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1042 2019-12-30 19:50:29 +0100 Mark Nauwelaerts * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: resurrect actual and efficient seeking of all kinds ... by seeking to target offset determined by new seek segment, rather than that of the previous segment. The latter would typically seek back to start for a non-accurate seek, and lead to a lot of skipping in case of an accurate seek. 2019-12-26 14:28:03 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h265dec.c: * sys/d3d11/gstd3d11h265dec.h: * sys/d3d11/gsth265decoder.c: * sys/d3d11/gsth265decoder.h: * sys/d3d11/gsth265picture.c: * sys/d3d11/gsth265picture.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add h265 decoder element Some DPB management implementation is taken from gstreamer-vaapi 2019-12-20 23:05:52 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11vp9dec.c: * sys/d3d11/gstd3d11vp9dec.h: * sys/d3d11/gstvp9decoder.c: * sys/d3d11/gstvp9decoder.h: * sys/d3d11/gstvp9picture.c: * sys/d3d11/gstvp9picture.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add vp9 decoder element Based on gstreamer-vaapi and Chromium implemetation. 2019-12-26 14:24:46 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11decoder.c: * sys/d3d11/gstd3d11decoder.h: * sys/d3d11/gstd3d11h264dec.c: * sys/d3d11/gstd3d11h264dec.h: * sys/d3d11/gsth264decoder.c: * sys/d3d11/gsth264decoder.h: * sys/d3d11/gsth264picture.c: * sys/d3d11/gsth264picture.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add h264 decoder element New decoder implementation based on dxva2 on d3d11 APIs. The DPB management implementation is taken from Chromium. 2019-12-20 22:50:55 +0900 Seungha Yang * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11: Add support for Array typed texture memory A ID3D11Texture2D memory can consist of multiple planes with array. For array typed memory, GstD3D11Allocator will allocate new GstD3D11Memory with increased reference count to the ID3D11Texture2D but different array index. 2019-12-18 15:37:03 +0100 Stéphane Cerveau * ext/neon/gstneonhttpsrc.c: * gst/librfb/gstrfbsrc.c: * sys/directsound/gstdirectsoundsrc.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: bad: use of g_value_dup_string Use helper method to get string from GValue. 2019-12-30 12:52:20 +0200 Sebastian Dröge * ext/dtls/gstdtlsenc.c: dtlsenc: Don't warn on GST_FLOW_FLUSHING or GST_FLOW_EOS Only warn if pushing a buffer returns an actual error to not pollute logs with confusing warnings. 2019-12-27 16:56:32 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Refactor LTC audio waiting and properly handle live inputs If one of the inputs is live, add a latency of 2 frames to the video stream and wait on the clock for that much time to pass to allow for the LTC audio to be ahead. In case of live LTC, don't do any waiting but only ensure that we don't overflow the LTC queue. Also in non-live LTC audio mode, flush too old items from the LTC queue if the video is actually ahead instead of potentially waiting forever. This could've happened if there was a bigger gap in the video stream. 2019-12-26 20:10:55 +0900 Seungha Yang * tests/check/elements/d3d11colorconvert.c: * tests/check/meson.build: tests: Add simple d3d11colorconvert unit test 2019-12-26 19:55:40 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videosink.c: d3d11: Aggregate d3d11 memory usage query for dynamic-usage type decision Even if one of downstream d3d11 elements can support dynamic-usage memory, another one might not support it. Also, to support dynamic-usage, both upstream and downstream d3d11device must be the same object. 2019-12-26 17:00:52 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: d3d11colorconvert: Remove device type dependent behavior If d3d11colorconvert element is configured, do color space conversion regardless of the device type whether it's S/W emulation or real H/W. Since d3d11colorconvert is no more a child of d3d11videosinkbin, we don't need this behavior. Note that previous code was added to avoid color space conversion from d3d11videosink if no hardware device is available (S/W emulation of d3d11 is too slow). 2019-12-26 16:43:35 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: d3d11colorconverter: Fix unmatched lock/unlock pair 2019-12-26 16:03:31 +0900 Seungha Yang * sys/d3d11/gstd3d11upload.c: d3d11upload: Don't hard overwrite caps features to support d3d11 memory passthrough d3d11upload should be able to support upstream d3d11 memory, not only system memory. Fix for following pipeline d3d11upload ! "video/x-raw(memory:D3D11Memory)" ! d3d11videosink 2019-12-26 22:43:35 +0100 Nicola Murino * ext/opencv/meson.build: opencv: allow compilation against 4.2.x 2019-12-24 14:00:15 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11window: Make use of partial presentation with IDXGISwapChain1::Present1 Since we might draw on partial area of backbuffer in case of force-aspect-ratio, presenting only updated area is more efficient way. See also https://docs.microsoft.com/ko-kr/windows/win32/direct3ddxgi/dxgi-1-2-presentation-improvements 2019-12-24 15:54:57 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11overlaycompositor.c: * sys/d3d11/gstd3d11overlaycompositor.h: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11videosink: Add support for overlay composition Add d3d11overlaycompositor object to draw overlay image on render target using Blend method. 2019-12-20 18:56:08 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Enable dxgi debug layer and always try to pop d3d11/dxgi debug message if possible Note that dxgi and d3d11 sdk debug will be enabled on debug build 2019-11-28 18:54:31 +0900 Seungha Yang * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/plugin.c: nvcodec: Refactor plugin initialization Create CUDA context per device, instead of per codec and encoder/decoder. Allocating CUDA context is heavy operation so we should reuse it as much as possible. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1130 2019-12-20 12:37:51 +0900 Seungha Yang * gst-libs/gst/vulkan/win32/gstvkwindow_win32.c: vulkan/window/win32: Don't post any WinProc message to parent window Posting any message to parent seems to be pointless. That might break parent window. Regardless of the posting, parent window can catch mouse event and also any keyboard events will be handled by parent window by default. 2019-11-11 09:47:00 -0500 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/gstopenjpegenc.h: openjpegenc: add support for sub-frame encoding Following the standard for low latency JPEG 2000 encoding https://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.222.0-200701-S!Amd1!PDF-E&type=items we divide the image into stripes of a specified height, and encode each stripe as a self-contained JPEG 2000 image. This MR is based on https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/merge_requests/429 2019-03-23 21:01:51 +0900 Yeongjin Jeong * ext/meson.build: * ext/svthevcenc/gstsvthevcenc.c: * ext/svthevcenc/gstsvthevcenc.h: * ext/svthevcenc/meson.build: * meson_options.txt: * tests/check/elements/svthevcenc.c: * tests/check/meson.build: svthevcenc: Add new SVT-HEVC encoder element The SVT-HEVC (Scalable Video Technology[0] for HEVC) Encoder is an open source video coding technology[1] that is highly optimized for Intel Xeon Scalable processors and Intel Xeon D processors. [0] https://01.org/svt [1] https://github.com/OpenVisualCloud/SVT-HEVC 2019-09-30 16:29:50 +0900 Yeongjin Jeong * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: h265parser: Add simple GstH265Profile/string public utilites It makes more simplifies the conversion between GstH265Profile and string. 2019-12-20 00:01:26 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Use dynamic texture for fallback buffer Upload CPU memory to texture directly by using dynamic usage texture. This will reduce at least one step of staging copy per frame. 2019-12-19 23:58:17 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11colorconvert: Set TRANSFER_NEED_DOWNLOAD flag to output memory for later cpu access Otherwise CPU cannot access texture via gst_memory_map() 2019-12-19 22:07:42 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11colorconvert: Use shader resource and render target bind flags together The output of d3d11colorconvert would be used for rendering (i.e., shader resource) 2019-12-19 21:47:57 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11window: Change aspect-ratio mode from window thread Call DXGI API from window thread as much as possible 2019-12-17 20:49:52 +0900 Seungha Yang * tests/examples/d3d11videosink/d3d11videosink-kb.c: * tests/examples/d3d11videosink/d3d11videosink-kb.h: * tests/examples/d3d11videosink/d3d11videosink.c: * tests/examples/d3d11videosink/meson.build: * tests/examples/meson.build: examples: Add example for d3d11videosink This is fork of win32-videooverlay in -base but more d3d11videosink specific one. 2019-12-15 19:29:10 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11videosink: Add support for full screen mode borderless top-most style full screen mode support. Basically fullscreen toggle mode is disabled by default. To enable it use "fullscreen-toggle-mode" property to allow fullscreen mode change by user input and/or property. 2019-12-20 00:17:33 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11: Use GRecMutex to protect immediate context and dxgi API call In some cases, rendering and dxgi (e.g., swapchain) APIs should be called from window message pump thread, but current design (dedicated d3d11 thread) make it impossible. To solve it, change concurrency model to locking based one from single-thread model. 2019-12-18 20:55:01 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Prefer to use flip-sequential over discard flip-sequential is more efficient than discard 2019-12-18 20:36:32 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11window: Don't hold backbuffer interface We don't need to hold it 2019-12-18 14:23:03 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11window.c: d3d11window: Use CreateSwapChainForHwnd if available That's recommended way from MS and CreateSwapChainForHwnd supports more options than CreateSwapChain 2019-12-18 13:21:31 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/meson.build: d3d11: Use configuration file for dxgi header version check 2019-12-17 13:47:24 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11window: Use allow-tearing mode if device supports it As the recommendation from MS. 2019-12-15 18:30:22 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Disable fullscreen mode change by alt + enter Disable full screen mode change until proper handling is implemented 2019-12-15 16:23:00 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11videosink: Remove resizing window hack and unify resizing flow In earlier implementation of d3d11videosink where no shader was implemented, the aspect ratio and render size were adjusted by manipulating the backbuffer size with unintuitive formula. Since now we do color conversion and resize using shader, we can remove the hack. 2019-12-15 15:50:19 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11videosink.c: d3d11: Pass GstD3D11Memory object to ensure_{shader_resource,render_target}_view methods The method name indicates it should be d3d11memory, so passing GstD3D11Memory seems to make more sense than GstMemory. 2019-12-15 15:44:20 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Don't specify crop meta to allocation query d3d11videosink could not handle it for now 2019-12-19 15:19:29 -0500 Nicolas Dufresne * gst/autoconvert/gstautoconvert.c: autoconvert: Fix lock-less exchange or free condition Before this change, we would free the list we just have saved. Fixes #1158 2019-11-12 12:27:51 +0100 Francisco Javier Velázquez-García (francisv) * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: gstsrtsink: Add `wait-for-connection` property to `srtsink` Add `wait-for-connection` property to `srtsink` element. This property allows the element to process packets even when no clients are connected. 2019-12-07 09:56:28 -0600 Aaron Boxer * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: hold class lock for entire duration of class destruction This avoids a race condition currently when temporarily releasing the lock and then re-acquiring. 2019-12-07 09:54:49 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: d3dvideosink: improve concurrency on hidden window create/destroy 2019-12-07 14:51:28 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: use thread pool to handle events from hidden window event queue window event queue now does not lock on the class lock, so we can now shut it down without releasing the class lock, thus avoiding a potential race when stopping the sink. 2019-12-07 09:53:20 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: improve concurrency on internal window create/destroy Remove timeout and rely on condition variable instead to indicate thread start. 2019-12-07 09:34:55 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: only warn about HWND already set if new HWND is not NULL 2019-12-07 00:25:05 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: add more null checks 2019-12-07 00:01:47 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: check ref count and device before resetting display 2019-12-07 09:41:32 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: d3dvideosink: use class lock when checking d3d formats, and cache format list 2019-12-06 23:50:50 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: destroy device just before final d3d release call and free overlays after swap chain is released 2019-12-06 23:26:34 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: add two forward declarations 2019-12-06 23:24:57 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: use class lock when setting pool config 2019-12-06 23:23:45 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: use class lock when allocating pool buffer 2019-12-06 23:19:11 -0600 Aaron Boxer * sys/d3dvideosink/gstd3d9overlay.c: d3dvideosink: use class lock when creating overlay textures 2019-12-06 23:16:05 -0600 Aaron Boxer * sys/d3dvideosink/gstd3d9overlay.c: d3dvideosinnk: check d3d device exists before creating overlay vertex buffer 2019-12-06 23:14:06 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: pass hidden window hwnd to GST_DEBUG, rather than NULL 2019-12-06 23:11:11 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: fix typo 2019-12-18 03:03:40 +0000 Stéphane Cerveau * gst/videoparsers/gsth264parse.c: * tests/check/elements/h264parse.c: h264parse: Align GST_H264_PROFILE_HIGH_422 to H264 standards According to H264 ITU standards from 06/19, GST_H264_PROFILE_HIGH_422 (profile_idc = 122) with constraint_set1_flag = 0 and constraint_set3_flag = 0 can be mapped to high-4:2:2 or high-4:4:4. GST_H264_PROFILE_HIGH_422 with constraint_set1_flag = 0 and constraint_set3_flag = 1 can be mapped to high-4:2:2, high-4:4:4, high-4:2:2-intra or high-4:4:4-intra. 2019-12-17 16:44:10 -0500 Olivier Crête * gst/videoparsers/gstvideoparseutils.c: * gst/videoparsers/gstvideoparseutils.h: Revert "videoparseutils: support two new EIA 608 closed caption formats" This reverts commit f5c1c90122840396f3a34f787bd66a672be21c3b. 2019-12-17 16:43:54 -0500 Olivier Crête * ext/closedcaption/gstccextractor.c: Revert "ccextractor: support new CEA 608 formats" This reverts commit 80dd7b2d3d871f1cf456bda249bc90e4eeeb53b1. 2019-05-02 13:20:29 -0400 Aaron Boxer * ext/closedcaption/gstccextractor.c: ccextractor: support new CEA 608 formats 2019-10-24 22:06:59 -0400 Aaron Boxer * gst/videoparsers/gstvideoparseutils.c: * gst/videoparsers/gstvideoparseutils.h: videoparseutils: support two new EIA 608 closed caption formats 2019-11-09 19:37:10 +0900 Wonchul Lee * ext/wayland/gstwaylandsink.c: * ext/wayland/wlvideoformat.c: wlvideoformat: clean up video formats It cleans up videoFormat by combining the wl_shm_formats and drm_formats into a single table that represents the same format. In addition, it adds NV61 format to the waylandsink. 2019-12-16 16:59:07 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11window: Always draw to internal window ... and use SetParent() WIN32 API when external window is used. Depending on DXGI swap effect, the external window might not be reusable by another backend. To preserve the external window's property and setting, drawing to internal window seems to be safer way. 2019-12-14 21:41:01 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Always set error reason to GError object 2019-12-13 15:33:06 -0800 Julien Isorce * sys/msdk/gstmsdkdec.c: msdkdec: call finalize on the parent class Otherwise GstVideoDecoder is not finalized and resources are leaked. Somehow GST_TRACERS="leaks" GST_DEBUG="GST_TRACER:7" did not catch it. Valgrind output: ==31645== 22,480 (1,400 direct, 21,080 indirect) bytes in 5 blocks are definitely lost in loss record 5,042 of 5,049 ==31645== at 0x4C2FB0F: malloc ==31645== by 0x51D9E88: g_malloc ==31645== by 0x51FA7B5: g_slice_alloc ==31645== by 0x51FAC68: g_slice_alloc0 ==31645== by 0x58D9984: g_type_create_instance ==31645== by 0x58BA344: g_object_new_with_properties ==31645== by 0x58BADA0: g_object_new ==31645== by 0x8ECA966: gst_video_decoder_init ==31645== by 0x58D99E7: g_type_create_instance ==31645== by 0x58BA344: g_object_new_with_properties 2019-12-11 14:17:37 +0700 Roman Shpuntov * sys/applemedia/avfvideosrc.m: avfvideosrc: element requests camera permissions even with capture-screen property is true https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1137 macOS has different dialogs for camera capture and screen capture. No need to request screen capture permissions, the system detect screen capture automatically and create request dialog. 2019-12-11 21:51:03 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Initialize surface rect with given external window handle Unlike internal window, resize event might not happen with external window. 2019-12-11 20:21:42 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Report alive d3d11 objects at the end It would be useful for debugging d3d11 object leak. 2019-12-11 20:19:45 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11shader.c: d3d11: Fix ID3D11SamplerState leak 2019-12-11 10:47:20 +0100 Stéphane Cerveau * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlhttpsrc.c: * ext/fdkaac/gstfdkaacenc.c: * ext/kate/gstkatetiger.c: * ext/neon/gstneonhttpsrc.c: * ext/opencv/gsthanddetect.cpp: * ext/openni2/gstopenni2src.cpp: * ext/resindvd/gstpesfilter.c: * ext/soundtouch/gstbpmdetect.cc: * ext/teletextdec/gstteletextdec.c: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/transcoder/gsttranscoder.c: * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m: * gst/accurip/gstaccurip.c: * gst/autoconvert/gstautovideoconvert.c: * gst/mpegdemux/gstpesfilter.c: * gst/vmnc/vmncdec.c: * sys/msdk/gstmsdkdec.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * tests/check/elements/curlhttpsrc.c: * tests/check/elements/dash_demux.c: * tests/check/elements/hls_demux.c: * tests/check/elements/mssdemux.c: * tests/check/elements/webrtcbin.c: * tests/examples/playout.c: remove various useless linefeed in logs 2019-11-07 15:54:47 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp9dec.c: * sys/msdk/gstmsdkvp9enc.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: ignore MFX_ERR_UNDEFINED_BEHAVIOR when loading a plugin An issue can be seen when using msdkh265enc with bitrate change in playing state. The root cause is the corresponding plugin is loaded again. Returning MFX_ERR_UNDEFINED_BEHAVIOR from MSDK just means the plugin has been loaded, so we may ignore this error when doing configuation again in the sub class, otherwise the pipeline will be interrupted 2019-12-09 21:01:32 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Fix broken fallback rendering Make fallback rendering work 2019-12-09 19:54:30 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Add debug message for fallback reason 2019-12-09 00:14:53 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11window: Do not check shader resource view if not doing conversion If d3d11window does not convert format internally, shader resource view is not required. Note that shader resource view is used for color conversion using shader but when conversion is not required, we just copy input input texture to backbuffer. 2019-12-05 21:19:13 -0800 Julien Isorce * sys/msdk/gstmsdkvpp.c: msdkvpp: check mfx surface nullity for the input buffer In theory it should not happen but it happened to me in some cases where it failed to allocate some video buffers so this was a consequence of a corner case. Better to be safe than sorry. 2019-12-08 16:39:16 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Clear old swapchain per prepare _prepare() might be called multiple times for given window, so clear old swapchain if any. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1138 2019-12-09 15:35:03 -0500 Olivier Crête * ext/srtp/gstsrtpdec.c: srtp: Remove %z as it doesn't work on Windows 2019-12-09 17:54:02 +0100 Alicia Boya García * gst/debugutils/gsttestsrcbin.c: gsttestsrcbin: Avoid not-linked errors when switching tracks The previous implementation had a very high reproducibility race where if after a track switch, the ex-active track pad completed a buffer chain (now returning not-linked) the flow combiner had all their pads in non-linked state, propagating it as an error and stopping the pipeline. By resetting the flow combiner in response to RECONFIGURE events that race is made impossible. 2019-12-06 08:50:05 -0800 Julien Isorce * sys/msdk/gstmsdkdec.c: msdkdec: fix assertion 'frame->ref_count > 0' failed Can happen if the oldest frame is the current frame and if gst_video_decoder_finish_frame failed in which case the current is unref and then drop instead of just drop. This patch also removes some assumptions, it was strange to call unref and finish_frame in gst_msdkdec_finish_task. In principle when owning a frame, the code should either unref, or drop or finish. 2019-12-08 17:25:26 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Always set dxgi colorspace if possible Not only for the 10 bits RGB case with HDR metadata, set proper color space to swapchain in order to make color representaion correct 2019-09-03 13:56:22 +1000 Matthew Waters * meson.build: * sys/applemedia/corevideobuffer.c: * sys/applemedia/iosurfacevulkanmemory.c: * sys/applemedia/iosurfacevulkanmemory.h: * sys/applemedia/meson.build: * sys/applemedia/metal-helpers.h: * sys/applemedia/videotexturecache-vulkan.h: * sys/applemedia/videotexturecache-vulkan.mm: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: vtdec: add support for outputing vulkan images 2019-09-03 13:42:43 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: vulkan/image: expose initialization function for subclasses 2019-09-03 00:30:31 +1000 Matthew Waters * gst-libs/gst/vulkan/meson.build: vulkan/macos: link directly to MoltenVK It's currently the only sane way we can use MoltenVK functions to integrate with Metal API. It also removes the need to specify the VK_ICD_FILENAMES environment variable pointing to MoltenVK_icd.json. 2019-09-02 15:00:27 +1000 Matthew Waters * sys/applemedia/corevideobuffer.c: * sys/applemedia/iosurfaceglmemory.c: * sys/applemedia/iosurfaceglmemory.h: * sys/applemedia/iosurfacememory.h: * sys/applemedia/meson.build: * sys/applemedia/videotexturecache-gl.m: applemedia: rename IOSurfaceMemory -> IOSurfaceGLMemory 2019-08-28 18:59:35 +1000 Matthew Waters * sys/applemedia/avfvideosrc.m: * sys/applemedia/corevideobuffer.c: * sys/applemedia/meson.build: * sys/applemedia/videotexturecache-gl.h: * sys/applemedia/videotexturecache-gl.m: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: videotexturecache: implement GL specifics as a subclass 2019-08-26 16:51:03 +1000 Matthew Waters * sys/applemedia/avfvideosrc.m: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: applemedia/videocache: make a GObject subclass 2019-08-28 20:09:39 +1000 Matthew Waters * sys/applemedia/avfvideosrc.m: avfvideosrc: don't leak texture caches If decide_allocation is called multiple times, then we would continually overwrite the previous cache without freeing 2019-12-05 22:06:41 -0600 Aaron Boxer * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11window.c: d3d11: translate windows error codes to human readable strings This will help with debugging. 2019-09-16 13:15:59 -0400 Xavier Claessens * sys/magicleap/mlaudiosink.c: mlaudiosink: Fix crash when stopping pipeline This is a bug in LuminOS 0.97.0. 2019-04-09 15:22:19 -0400 Xavier Claessens * sys/magicleap/meson.build: * sys/magicleap/mlaudiosink.c: * sys/magicleap/mlaudiosink.h: * sys/magicleap/mlaudiowrapper.cpp: * sys/magicleap/mlaudiowrapper.h: * sys/magicleap/plugin.c: * sys/meson.build: Add mlaudiosink element 2019-09-05 16:48:19 +0200 Stéphane Cerveau * ext/openh264/gstopenh264enc.cpp: openh264enc: keep the headers be able to resend the headers on demand after a key-unit request 2019-12-05 21:22:18 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Return new references to the devices from get_devices() Otherwise the caller will free the devices we store internally. 2019-05-24 16:24:00 +0200 Stéphane Cerveau * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdadaptationsetnode.c: * ext/dash/gstmpdadaptationsetnode.h: * ext/dash/gstmpdbaseurlnode.c: * ext/dash/gstmpdbaseurlnode.h: * ext/dash/gstmpdclient.c: * ext/dash/gstmpdclient.h: * ext/dash/gstmpdcontentcomponentnode.c: * ext/dash/gstmpdcontentcomponentnode.h: * ext/dash/gstmpdhelper.c: * ext/dash/gstmpdhelper.h: * ext/dash/gstmpdmetricsnode.c: * ext/dash/gstmpdmetricsnode.h: * ext/dash/gstmpdmetricsrangenode.c: * ext/dash/gstmpdmetricsrangenode.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * ext/dash/gstmpdperiodnode.c: * ext/dash/gstmpdperiodnode.h: * ext/dash/gstmpdprograminformationnode.c: * ext/dash/gstmpdprograminformationnode.h: * ext/dash/gstmpdrepresentationnode.c: * ext/dash/gstmpdrepresentationnode.h: * ext/dash/gstmpdrootnode.c: * ext/dash/gstmpdrootnode.h: * ext/dash/gstmpdsegmentlistnode.c: * ext/dash/gstmpdsegmentlistnode.h: * ext/dash/gstmpdsegmenttemplatenode.c: * ext/dash/gstmpdsegmenttemplatenode.h: * ext/dash/gstmpdsegmenttimelinenode.c: * ext/dash/gstmpdsegmenttimelinenode.h: * ext/dash/gstmpdsegmenturlnode.c: * ext/dash/gstmpdsegmenturlnode.h: * ext/dash/gstmpdsnode.c: * ext/dash/gstmpdsnode.h: * ext/dash/gstmpdsubrepresentationnode.c: * ext/dash/gstmpdsubrepresentationnode.h: * ext/dash/gstmpdsubsetnode.c: * ext/dash/gstmpdsubsetnode.h: * ext/dash/gstmpdutctimingnode.c: * ext/dash/gstmpdutctimingnode.h: * ext/dash/meson.build: * tests/check/elements/dash_mpd.c: dash: move parser nodes/types to separated files Rename GstMpdClient to GstMPDClient and use GObject model. Move nodes to file from gstmpdparser.c: - GstMPDRootNode - GstMPDBaseURLNode - GstMPDUTCTimingNode - GstMPDMetricsNode - GstMPDMetricsRangeNode - GstMPDSNode - GstMPDSegmentTimelineNode - GstSegmentTemplateNode - GstMPDSegmentURLNode - GstMPDSegmentListNode - GstMPDPeriodNode - GstMPDRepresentationNode - GstMPDsubRepresentationNode - GstMPDAdaptationSetNode - GstMPDContentComponentNode - GstMPDSubsetNode - GstMPDProgramInformationNode Move types to gstmpdhelper from gstmpdparser.c: - GstURLType - GstDescriptorType - GstSegmentBaseType - GstMPDMultSegmentBaseType - GstMPDRepresentationBaseType Cleanup naming when possible. 2019-05-20 18:48:23 +0200 Stéphane Cerveau * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdclient.c: * ext/dash/gstmpdclient.h: * ext/dash/gstmpdhelper.c: * ext/dash/gstmpdhelper.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * ext/dash/gstxmlhelper.c: * ext/dash/gstxmlhelper.h: * ext/dash/meson.build: * tests/check/elements/dash_mpd.c: dash: split mpdparser, mpdclient and xmlhelper provide a separate namespace for mpd helper for xml parsing and the real mpd parsing. 2019-12-04 15:33:42 +0900 Seungha Yang * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Fix warning for unhandled enum in switch d3dhelpers.c:135:3: warning: enumeration value 'D3DFMT_D32_LOCKABLE' not handled in switch [-Wswitch] 2019-12-04 19:29:38 +1100 Matthew Waters * ext/vulkan/vkviewconvert.c: vulkanviewconvert: clear the cached uniforms on caps change Caps changes can change the output/input layout which needs to be reflected in the input uniforms to the shader. 2019-12-05 00:53:40 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/plugin.c: d3d11: Initialize debug categories of non-GstElement implementation in plugin init That's the way to expose debug category to --gst-debug-help 2019-12-04 23:23:09 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Invoke resize task with high priority On resize event, swapchain should be configured with higher priority than the other tasks since it's directly related to visual artifacts. 2019-12-04 23:20:39 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: d3d11device: Add gst_d3d11_device_thread_add_full method I would be used to invoke GPU task with specified priority. 2019-12-04 14:15:19 +0900 Seungha Yang * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11videosinkbin.h: d3d11videosinkbin: Drop d3d11 color convert element d3d11videosink can convert color space now, so the conversion element seems to be redundant. 2019-12-03 22:54:26 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11videosink: Add color conversion support Draw to back buffer texture directly. It would reduce the number of copy at least once when color conversion is required. 2019-12-03 22:29:27 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11converter: Skip setup converter if input and output formats are equal 2019-12-03 20:35:06 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: * sys/d3d11/gstd3d11colorconverter.c: * sys/d3d11/gstd3d11colorconverter.h: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11colorconvert: Split color space converter to reuse code 2019-12-02 20:24:05 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: * sys/d3d11/gstd3d11shader.c: * sys/d3d11/gstd3d11shader.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Split shader to reuse code 2019-12-02 23:27:42 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11videosink: Draw window with cached texture on resize This would render nicer than presenting scene with broken aspect ratio, especially in case of low framerate. 2019-11-30 20:26:26 +0900 Seungha Yang * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videosink.c: d3d11: Add support for D3D11_USAGE_DYNAMIC D3D11 dynamic texture is a special memory type, which is mainly used for frequent CPU write access to the texture. For now, this texture type does not support gst_memory_{map,unmap} 2019-12-02 14:23:10 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Add debug message for CreateTexture2D failure 2019-12-02 14:03:04 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11device: Fix misreading debug message 2019-12-01 16:13:38 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: d3d11colorconvert: Disable color conversion with software rasterizer It's much slower than our CPU based color-converter in most case. 2019-07-18 23:12:13 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Handle context query Propagate d3d11device via context query. 2019-10-06 21:59:54 +0900 Seungha Yang * sys/d3d11/gstd3d11colorconvert.c: d3d11colorconvert: Avoid copy in/out texture if possible When input and/or output d3d11memory has its own view, use them for rendering to avoid texture copy 2019-10-06 21:35:48 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11memory: Allocate texture with required views Store required resource views with d3d11 texture when it requested. 2019-11-06 19:39:09 +0900 Seungha Yang * sys/d3d11/gstd3d11videosinkbin.c: * sys/d3d11/gstd3d11videosinkbin.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add d3d11videosinkbin element New wrapper element to support d3d11 memory upload, color conversion, and rendering at once. 2019-08-18 21:01:55 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11colorconvert.c: * sys/d3d11/gstd3d11colorconvert.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Add color space conversion element using shader Add d3d11colorconvert element for color space conversion. Currently {RGB, YUV} to RGB conversion is supported. 2019-10-06 20:59:51 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: d3d11memory: Register mininal compare function for GstD3D11AllocationParams The d3d11 allocation param is stored in GstStructure so it should provide compare function for later use such as gst_structure_is_equal() 2019-10-03 21:24:07 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Set render target whenever drawing Device context's render target might be updated for offscreen rendering 2019-08-24 17:43:43 +0900 Seungha Yang * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11videosink.c: d3d11videosink: Specify d3d11 memory caps feature on sinkpad template 2019-11-06 19:38:31 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11basefilter.c: * sys/d3d11/gstd3d11basefilter.h: * sys/d3d11/gstd3d11download.c: * sys/d3d11/gstd3d11download.h: * sys/d3d11/gstd3d11upload.c: * sys/d3d11/gstd3d11upload.h: * sys/d3d11/meson.build: * sys/d3d11/plugin.c: d3d11: Introduce d3d11 upload/download element That's equivalent to glupload and gldownload elements but for d3d11 2019-11-06 19:37:33 +0900 Seungha Yang * sys/d3d11/gstd3d11_fwd.h: * sys/d3d11/gstd3d11bufferpool.c: * sys/d3d11/gstd3d11bufferpool.h: * sys/d3d11/gstd3d11format.c: * sys/d3d11/gstd3d11format.h: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/meson.build: d3d11: Refactor d3d11 memory and dxgi format usage * Create staging texture only when the CPU access is requested. Note that we should avoid the CPU access to d3d11 memory as mush as possible. Incoming d3d11upload and d3d11download will take this GPU memory upload/download. * Upload/Download texture memory from/to staging only if it needed, similar to GstGL PBO implementation. * Define more dxgi formats for future usage (e.g., color conversion, dxva2 decoder). Because I420_* formats are not supported formats by dxgi, each plane should be handled likewise GstGL separately, but NV12/P10 formats might be supported ones. So we decide the number of d3d11memory per GstBuffer for video memory depending on OS version and dxgi format. For instance, if NV12 is supported by OS, only one d3d11memory with DXGI_FORMAT_NV12 texture can be allocated by this commit. One use case of such texture is DXVA. In case DXVA decoder, it might need to produce decoded data to one DXGI_FORMAT_NV12 instead of seperate Y and UV planes. Such behavior will be controlled via configuration of GstD3D11BufferPool and default configuration is separate resources per plane. 2019-08-24 17:14:09 +0900 Seungha Yang * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11memory.h: d3d11: Add method for querying d3d11 memory type ... and fix misreading "private" annotation. 2019-09-25 20:34:10 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: d3d11device: Store selected d3d feature level Depending on selected feature level, d3d11 API usage can be different. Instead of querying the selected feature level by user whenever required, store it once by d3d11device. 2019-08-23 21:41:39 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11utils.h: * sys/d3d11/gstd3d11videosink.c: d3d11: Don't share d3d11 device context unconditionally without checking adapter Do not accept any GstD3D11Device context which has different adapter index from the required one. For example, if a d3d11 element is expecting d3d11 device with adapter 1 (i.e., the second GPU), any d3d11 device context having different adapter could not be shared with the d3d11 element. 2019-09-24 20:32:47 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: d3d11device: Don't allow auto adapter selection Change to d3d11device to be created with explicit target adapter index, and expose some readonly device properties 2019-08-18 20:56:06 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: * sys/d3d11/gstd3d11device.h: * sys/d3d11/gstd3d11memory.c: * sys/d3d11/gstd3d11utils.c: * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.c: d3d11: Rename native handle getter and context utils functions Make them consistent with cuda context utils functions. Put in-only parameter before all in-out parameters, and add _handle() suffix to native handle getter functions. 2019-12-02 11:13:11 -0600 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: use parent buffer pool to release buffers In certain cases, the sink's buffer pool will not call the parent's release_buffer method, so the pool does not clean up properly after the buffer is released. 2019-11-29 13:45:42 +1100 Matthew Waters * ext/vulkan/meson.build: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkcolorconvert.h: * ext/vulkan/vkelementutils.c: * ext/vulkan/vkelementutils.h: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkimageidentity.h: * ext/vulkan/vkshader.c: * ext/vulkan/vkshader.h: * ext/vulkan/vkviewconvert.c: * ext/vulkan/vkviewconvert.h: * gst-libs/gst/vulkan/gstvkfullscreenquad.c: * gst-libs/gst/vulkan/gstvkfullscreenquad.h: * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/gstvkutils.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: * tests/check/libs/vkimage.c: vulkan: move fullscreenquad object to library It's useful and extensible enough to be used by us and other elements 2019-11-29 11:05:50 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: * gst-libs/gst/vulkan/gstvktrash.c: vulkan: fix up some gir annotations 2019-12-03 15:45:26 +0200 Sebastian Dröge * gst/interlace/gstinterlace.c: interlace: Store unsigned integers in unsigned integer types And add some assertions to guard against overflows and out of bounds reads. 2019-12-03 15:35:57 +0200 Sebastian Dröge * gst/interlace/gstinterlace.c: interlace: Increment phase_index before checking if we're at the end of the phase Incrementing it afterwards will always have to phase_index >= 1 and we will never be at the beginning (0) of the phase again, and thus never reset timestamp tracking accordingly. This was broken in bea13ef43b719aad96e28766cd4d23652a891a20 in 2010, and causes interlace to run into integer overflows after 2^31 frames or about 5 hours at 29.97fps. Due to usage of wrong types for the integers this then causes negative numbers to be used in calculations and all calculations spectacularly fail, leading to all following buffers to have the timestamp of the first buffer minus one nanosecond. 2019-11-27 15:38:50 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/gstrtmp2sink.c: rtmp2sink: Only apply @setDataFrame to onMetaData messages Only the metadata needs to be made "sticky". Custom data messages should be passed on unmodified. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/878 2019-11-27 15:38:39 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpmessage.c: * gst/rtmp2/rtmp/rtmpmessage.h: rtmp2: Add gst_rtmp_message_is_metadata https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/878 2019-11-27 15:38:20 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpconnection.c: * gst/rtmp2/rtmp/rtmpconnection.h: rtmp2: Add gst_rtmp_connection_set_data_frame https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/878 2019-11-27 15:37:45 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/amf.c: * gst/rtmp2/rtmp/amf.h: rtmp2: Add single-value AMF0 parsing and serializing https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/878 2019-11-27 15:36:07 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/amf.c: * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Minor changes - Remove an unneeded initialization to zero from AmfParser - Add missing initialization to gst_amf_serialize_command_valist - Add a g_return_if_fail to gst_rtmp_connection_request_window_size https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/878 2019-12-03 14:19:05 +1100 Matthew Waters * meson.build: build: use -fvisibility=hidden for objc code 2019-12-03 14:18:49 +1100 Matthew Waters * gst-libs/gst/vulkan/cocoa/gstvkcocoa_utils.h: * gst-libs/gst/vulkan/ios/gstvkios_utils.h: vulkan: priviatise _invoke_on_main() https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1132 2019-11-21 16:59:29 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkdeviceprovider.cpp: * sys/decklink/gstdecklinkdeviceprovider.h: * sys/decklink/meson.build: decklink: Add simple device provider for Decklink devices 2019-12-01 17:04:05 +0530 Nirbheek Chauhan * ext/openexr/meson.build: openexr: Fix check for when to pass -std=c++98 commit 6adfb120ab0e1bb0b3439ad725a362cfe4fbe733 added this flag to fix builds with `-Werror`, and afterwards it was changed to use a version check when newer versions of openexr moved over to C++11. However, some distros have backported patches to older openexr versions which make it require C++11, which makes the version check incorrect and causes an error because we passed `-Werror -std=c++98`. Instead, directly check when usage of the header requires `-std=c++98` with `-Werror` and override the `cpp_std` setting on the target. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1117 2019-11-30 14:08:06 +0100 o0Ignition0o * sys/applemedia/avfvideosrc.m: avfvideosrc: Explicitly request device video permissions for macOS 10.14+ Since macOS Mojave (10.14), video permissions have to be explicitly granted by a user in order to open a video device such as a camera. This commit adds a check for the current permission status, and tries to request for permission if applicable. 2019-11-27 00:25:16 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkdownload.c: * ext/vulkan/vkfullscreenquad.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkdescriptorcache-private.h: * gst-libs/gst/vulkan/gstvkdescriptorcache.c: * gst-libs/gst/vulkan/gstvkdescriptorcache.h: * gst-libs/gst/vulkan/gstvkdescriptorpool.h: * gst-libs/gst/vulkan/gstvkdescriptorset.c: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkfence.h: * gst-libs/gst/vulkan/gstvkhandlepool.c: * gst-libs/gst/vulkan/gstvkhandlepool.h: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvktrash.c: * gst-libs/gst/vulkan/gstvktrash.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: * meson.build: * meson_options.txt: vulkan: implement caching and reuse of a couple of vulkan resources Includes a new GstVulkanHandlePool base class for pooling different resources togther. The descriptor cache object is ported to GstVulkanHandlePool with the exact same functionality. A new GstVulkanFenceCache is also implemented for caching fences which is used internally by GstVulkanDevice for creating or reusing fences. The existing GstVulkanTrashFenceList object now caches trash objects. 2019-11-26 18:29:14 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvktrash.c: * gst-libs/gst/vulkan/gstvktrash.h: vulkan/trash: remove free functions covered by GstVulkanHandle 2019-11-26 18:27:04 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: vulkancolorconvert: disable YUY2 conversion It doesn't work and never seemed to 2019-11-26 18:11:25 +1100 Matthew Waters * ext/vulkan/meson.build: * ext/vulkan/shaders/ayuv_to_rgb.frag: * ext/vulkan/shaders/identity.frag: * ext/vulkan/shaders/nv12_to_rgb.frag: * ext/vulkan/shaders/rgb_to_ayuv.frag: * ext/vulkan/shaders/rgb_to_nv12.frag: * ext/vulkan/shaders/rgb_to_yuy2.frag: * ext/vulkan/shaders/swizzle.frag: * ext/vulkan/shaders/swizzle_and_clobber_alpha.frag: * ext/vulkan/shaders/uyvy_to_rgb.frag: * ext/vulkan/shaders/view_convert.frag: * ext/vulkan/shaders/yuy2_to_rgb.frag: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkcolorconvert.h: * ext/vulkan/vkfullscreenquad.c: * ext/vulkan/vkfullscreenquad.h: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkfullscreenrender.h: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkimageidentity.h: * ext/vulkan/vkshader.c: * ext/vulkan/vkshader.h: * ext/vulkan/vkviewconvert.c: * ext/vulkan/vkviewconvert.h: * gst-libs/gst/vulkan/gstvkvideofilter.c: * gst-libs/gst/vulkan/gstvkvideofilter.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: vulkan: split vkfullscreenrender into two Part 1 is a base class (vkvideofilter) that handles instance, device, queue retrieval and holding that has been moved to the library Part 2 is a fullscreenrenderquad that is still in the plugin that performs all of the previous vulkan-specific functionality. 2019-11-26 16:26:41 +1100 Matthew Waters * ext/vulkan/vkupload.c: vulkan/upload: allocate from the correct pool Only relevant when upstream does not use our provided pool. 2019-11-26 16:25:43 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkhandle.c: * gst-libs/gst/vulkan/gstvkhandle.h: vulkan/handle: add some handle types 2019-11-18 20:29:10 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/gstvkimageview.c: * tests/check/libs/vkimage.c: * tests/check/meson.build: vulkan/image: don't rely on weak-ref notifies for views Weak refs don't quite work here correctly as there is always a race with taking the lock between find_view() and remove_view(). If find_view() returns a view that is going to removed by remove_view() then we have an interesting situation. In theory, the number and type of views for an image are relatively constant and should not change one they've been set up which means that it is actually practical to perform pool-like reference counting here where the image holds a pool of different views that it can give out as necessary. 2019-11-18 15:20:18 +1100 Matthew Waters * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvkswapper.c: vulkan: add a couple of missing fence unrefs 2019-10-04 16:05:05 +1000 Matthew Waters * ext/vulkan/vkcolorconvert.c: vulkan/colorconvert: zero out sampler create struct 2019-11-26 11:39:32 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisrc.c: wasapisrc: Correctly handle BUFFERFLAGS_SILENT We need to ignore the data we get from WASAPI in this case and write out silence (zeroes). Initially reported at https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/808 2019-11-25 21:25:43 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisrc.c: wasapisrc: Try harder to avoid debug output in the hot loop The whole `src_read()` function is a hot loop since the ringbuffer thread is waiting on us, and printing to the console from inside it can easily cause us to miss our deadline. F.ex., if you had GST_DEBUG=3 and we accidentally missed a device period, we'd trigger the "reported glitch" warning, which would cause us to miss another device period, and so on. Let's reduce the log level so that GST_DEBUG=3 is more usable, and only print buffer flag info when it's actually relevant. 2019-11-25 21:19:59 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapisrc: Fix capturing from some buggy audio drivers Some audio drivers return varying amounts of data per ::GetBuffer call, instead of following the device period that they've told us about in `src_prepare()`. Previously, we would just drop those extra buffers hoping that the extra buffers were temporary (f.ex., a startup 'burst' of audio data). However, it seems that some audio drivers, particularly on older Windows versions (such as Windows 10 1703 and older) consistently return varying amounts of data. Use GstAdapter to smooth that out, and hope that the audio driver is locally varying but globally periodic. Initially reported in https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/808 2019-11-25 21:16:05 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisrc.c: wasapisrc: Clarify that nBlockAlign is actually bpf bpf = bytes per frame. 2019-11-25 21:00:14 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.c: wasapisrc: Fix glitching and clock skew issues We were miscalculating the device period, i.e. the number of frames we'll get from WASAPI in each IAudioClient::GetBuffer call, due to a calculation mistake (truncate instead of round). For example, on my machine when the aux input is set to 44.1KHz, the reported device period is 101587, which comes out to 447.998 frames per ::GetBuffer call. In reality we will, of course, get 448 frames per call, but we were truncating, so we expected 447 and were discarding one frame every time. This led to glitching, and skew over time. Interestingly, I can only see this with 44.1Khz. 48Khz/96Khz are fine, because the device period is a more 'even' number. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/806 2019-11-27 15:41:26 +0100 Edward Hervey * gst/mpegtsmux/gstatscmux.c: atscmux: Add missing break in switch CID: 1455515 2019-11-27 12:24:46 +0900 Seungha Yang * sys/msdk/msdk.c: msdk: Fix mixed declarations warning msdk.c:194:3: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement] 2019-11-26 13:05:38 -0500 Aaron Boxer * gst/videoparsers/gsth264parse.c: h264parse: buffer mismatch in map/unmap 2019-11-19 15:35:20 -0800 Julien Isorce * sys/msdk/gstmsdkdec.c: msdkdec: log an error if leaking surfaces in finalize The for loop in gst_msdkdec_handle_frame is error prone about how it manages surfaces. Because sometimes it sets the surface variable to NULL and sometimes it needs to free it right away. So better to print an error if surfaces are leaked to help with any change around the loop. 2019-11-25 19:08:48 +0800 Jeffy Chen * ext/wayland/wlwindow.c: waylandsink: Commit the parent after creating subsurface We should commit the parent to activate new subsurface, this is documented in the protocol. Signed-off-by: Jeffy Chen 2018-07-20 21:33:24 +0900 Seungha Yang * ext/ttml/gstttmlparse.c: * ext/ttml/ttmlparse.c: * ext/ttml/ttmlparse.h: ttmlparse: Collect buffers until detecting complete xml document Given buffer could be fragmented and we might need to collect buffers until end tag is detected. And/or, a buffer can consist of multiple ttml documents. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/494 2019-11-20 13:19:02 -0600 Aaron Boxer * sys/msdk/msdk.c: msdk: query hardware when checking MFX availability msdk plugin is not used for sofware encode/decode as there are better solutions available. Also, with MFX_IMPL_AUTO_ANY, if software decode is not supported, the plugin will still load, but will then fail when trying to run the (autoplugged) pipeline. With MFX_IMPL_HARDWARE_ANY, the plugin fails and a better software decoder is auto-plugged. 2019-11-20 13:09:34 -0600 Aaron Boxer * sys/msdk/msdk.c: msdk: query platform when opening session 2019-11-14 19:00:51 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: nvenc: Fix crash when nvenc was reused then freed without encoding GstNvBaseEnc::n_bufs was set from the previous encoding session but it wasn't cleared after stop. That might result to invalid memory access at the next start (no encoded data) and then stop sequence. Instead of defining a variable for array length, use GArray::len directly to avoid such confusion. 2019-11-14 18:57:14 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Remove unused code path refilling queue would not happen 2019-11-21 16:38:35 +0100 Edward Hervey * ext/webrtc/webrtcdatachannel.c: webrtcdatachannels: Don't leak strings They would leak in error cases CID: 1455480 2019-11-21 16:24:38 +0100 Edward Hervey * ext/webrtc/gstwebrtcbin.c: webrtcbin: Fix memory leak The structure is not used after this block CID: 1455481 2019-11-19 19:29:26 -0800 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix 'utc now' gdatetime creation It broke after removal of usage of GTimeVal that was deprecated, it requires seconds in this unix-based creation instead of microseconds. The downside here is that it will create an extra object just to be discarded in order to add the microsecond part to it. It would end up segfaulting as it would return a NULL value 2019-11-18 16:15:21 +0100 Jakub Adam * ext/srt/gstsrtobject.c: srtobject: allow passing SRT Stream ID in stream URI Based on Stream ID, the application can accept or reject the connection, select the desired data stream, or set an appropriate passphrase for the connection. Example usage: srt://127.0.0.1:1234?streamid=mystream 2019-11-20 11:34:15 +0100 Linus Svensson * ext/curl/meson.build: curl: Require libcurl 7.55.0 CURLINFO_CONTENT_LENGTH_DOWNLOAD_T is available from libcurl version 7.55.0. 2019-11-18 14:26:31 -0800 Julien Isorce * sys/msdk/gstmsdkdec.c: msdkdec: fix surface leak in msdkdec_handle_frame Can be reproduced with: videotestsrc ! x264enc key-int-max=$N ! \ h264parse ! msdkh264dec ! fakesink sync=1 It happens with any gop size but the smaller is the distance N between key frames, the quicker it is leaking. Fixes #1023 2019-11-18 15:54:42 -0500 Xavier Claessens * ext/dash/meson.build: dash: Fix typo in meson.build 2019-11-01 15:58:47 -0700 Ederson de Souza * ext/avtp/gstavtpcvfdepay.c: * tests/check/elements/avtpcvfdepay.c: avtpcvfdepay: Don't hide gst_pad_push return avtpcvfdepay was effectively hiding any return from gst_pad_push, so no errors or GST_FLOW_EOS would be propagated upstream. Tests also added. 2019-11-01 15:39:25 -0700 Ederson de Souza * ext/avtp/gstavtpcvfpay.c: * tests/check/elements/avtpcvfpay.c: avtpcvfpay: Do not hide or modify gst_pad_push errors Current code would change any non-ok return from gst_pad_push to GST_FLOW_ERROR, thus hiding meaningful returns such as GST_FLOW_EOS. Tests also added. 2019-10-30 15:24:40 -0700 Ederson de Souza * ext/avtp/gstavtpcvfdepay.c: avtpcvfdepay: Tone down some log messages Most of avtpcvfdepay messages are currently logged as warnings, which can make some scenarios - such as receiving two AVTP streams on the same pipeline - too verbose. This patch tones those message down to INFO or DEBUG level - more in sync with avtpaafdepay logging. 2019-11-18 15:42:35 +0100 Marc Leeman * gst/rtp/gstrtpsink.c: * gst/rtp/gstrtpsink.h: * gst/rtp/gstrtpsrc.c: * gst/rtp/gstrtpsrc.h: rtpmanagerbad: allow setting multicast-iface Allowing the UDP elements to bind on an interface is needed in more complex networks where there are mutiple networks interfaces without default gateway 2019-11-19 12:18:39 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Create LTC sink pad with the correct name according to the template Should be "ltc_sink" and not just "ltc" 2019-10-11 16:19:26 +0300 Vivia Nikolaidou * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstvc1parse.c: videoparsers: Disable gst_base_parse_set_infer_ts From the documentation of gst_base_parse_set_infer_ts, it should be disabled for non-audio data. Currently just disabling for all video parsers that have reordered data: h264, h265, mpeg, mpeg4, vc1. Was already disabled in h263. 2019-11-18 23:38:49 +0100 Andrew Branson * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-camera.h: androidmedia: Add new effects and scene modes to Camera parameters 2019-10-10 18:18:26 +0200 Andrew Branson * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * tests/check/elements/camerabin.c: photography: Add additional settings relevant to Android Exposure mode property, extra colour tone values (aqua, emboss, sketch, neon), extra scene modes (backlight, flowers, AR, HDR). Missing vmethods for exposure mode, analog gain, lens focus, colour temperature, min & max exposure time Contribs by Mohammed Sameer , Adam Pigg 2019-09-05 03:16:28 +0200 Kyrylo Polezhaiev * gst/mpegtsmux/tsmux/tsmux.c: tsmux: Fix copying of buffer region 2019-11-15 13:12:48 -0600 Aaron Boxer * sys/d3dvideosink/gstd3d9overlay.c: d3dvideosink: use sink dimensions when calculating overlay scaling 2019-11-14 22:06:09 -0500 Aaron Boxer * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: use explicit system memory feature in overlay composition caps 2019-11-05 13:46:59 +0100 Jochen Henneberg * sys/msdk/meson.build: msdk: Fixes for meson include directory setup In case of pkg-config we need to create the include directories object from the path using include_directories(). For INTELMEDIASDKROOT or MFX_HOME we need to add the alternate include path ./include/mfx as Intel MediaSDK now puts the headers there. 2019-09-23 10:30:40 +0200 Marc Leeman * gst/rtp/gstrtpsink.c: * gst/rtp/gstrtpsrc.c: rtpmanagerbad: name the element children As discussed with RIST, it is best to name the children of the elements since these are now created at the element initialisation. 2019-05-24 17:33:33 +0100 Alex Ashley * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: * tests/check/elements/curlhttpsrc.c: curlhttpsrc: add support for range GET To allow curlhttpsrc to support DASH streams that use the on-demand profile, it needs to support HTTP Range GETs. In GStreamer, the RANGE is specified by issuing a GST_FORMAT_BYTES seek to set the start and end of the range. curlhttpsrc needs to implement seek and set the appropriate curl options to make it add the Range header to the request. 2019-10-11 17:25:04 +0300 Vivia Nikolaidou * gst/mpegtsdemux/tsdemux.c: tsdemux: Always issue a DTS even when it's equal to PTS Currently tsdemux timestamps only the PTS, and only issues the DTS if it's different. In that case, parsers tend to estimate the next DTS based on the previous DTS and the duration, which can accumulate rounding errors. 2019-11-14 10:00:35 +1100 Matthew Waters * ext/vulkan/vkdownload.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkqueue.h: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan/queue: be sure to take a lock around command submission This ensures that only one thread is submitting commands at a time as required by the Vulkan specification. 2019-11-14 09:56:49 +1100 Matthew Waters * ext/vulkan/vkfullscreenrender.c: vulkan/render: fix indent command comment typo 2019-11-13 20:17:48 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Fix subclass procedure recursion subclass window precedure should be cleared if it's no more used. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1115 2019-11-13 12:14:02 +1100 Matthew Waters * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkimageidentity.c: vulkan: NULL check destruction of vulkan resources If the element fails to start up, any number of vulkan resources could have not been created. 2019-11-13 12:07:45 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkdownload.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvktrash.c: vulkan: make new trash objects ref the fence Avoids gst_vulkan_fence_ref at each call site of the trash object creation 2019-11-13 12:05:52 +1100 Matthew Waters * gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.c: vulkan/wayland: advertise the current surface size Avoids vkswapper from creating a 0x0 output VkSurface and failing 2019-11-12 22:06:45 +1100 Jan Schmidt * gst/switchbin/gstswitchbin.c: switchbin: Free path objects on finalize Clean up path objects nicely when shutting down, first by dropping pointers to elements during dispose, and then by making sure to drop the ref to the path object when finalizing the switch bin. Fixes valgrind checks in the unit test. 2018-07-03 00:30:12 +1000 Jan Schmidt * tests/check/elements/switchbin.c: * tests/check/meson.build: switchbin: Add a basic unit-test Test the basic function of a switchbin - that it correctly selects between 2 processing paths based on caps 2018-07-03 00:25:51 +1000 Jan Schmidt * gst/switchbin/gstswitchbin.c: * gst/switchbin/gstswitchbin.h: switchbin: Add current-path property Returns the index of the currently selected processing path, or MAX-UINT if none 2019-11-05 01:40:10 +1100 Jan Schmidt * docs/plugins/gst_plugins_cache.json: * gst/switchbin/gstswitchbin.c: switchbin: Add docs Add documentation clauses and enrol switchbin to generate plugin docs 2019-11-05 01:40:04 +1100 Jan Schmidt * gst/meson.build: * gst/switchbin/gstswitchbin.c: * gst/switchbin/gstswitchbin.h: * gst/switchbin/meson.build: * gst/switchbin/plugin.c: * meson_options.txt: switchbin: Initial checkin Add code from Stream Unlimited implementing a bin which switches between different internal decoding/processing chains based on input caps 2019-11-12 19:54:46 -0600 Aaron Boxer * sys/d3d11/gstd3d11window.c: d3d11videosink: only destroy loop if external_win_id is false Loop was created with this condition, so it should also be destroyed under the same condition 2019-09-06 19:13:46 +1000 Jan Schmidt * gst-libs/gst/opencv/meson.build: * meson.build: meson: Fix plugin symbol export for C++ sources/plugins The symbol visibility=hidden flag was only being applied to C compilation, so plugins implemented in C++ would leak extra symbols than the 2 _get_desc() and _register(). That also showed that the gst-libs opencv C++ lib was not marking symbols for export correctly because the BUILDING_GST_OPENCV define wasn't in the C++ args, so fix that too. 2019-11-12 12:04:48 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpmessage.c: rtmp2: Fix NULL check in gst_rtmp_meta_transform Coverity rightly complains that checking a pointer for NULL after dereferencing it is pointless. Remove the check, and to be safe, assert that gst_buffer_add_meta returns non-NULL. CID 1455485 2019-11-12 11:46:21 +0100 Jan Alexander Steffens (heftig) * gst/rtmp2/rtmp/rtmpchunkstream.c: * gst/rtmp2/rtmp/rtmpconnection.c: rtmp2: Check for missing GstRtmpMeta The message buffers are created using `gst_rtmp_message_new` and thus always contain a GstRtmpMeta. Add checks to appease Coverity's static analysis. CID 1455596 CID 1455384 2019-11-12 12:31:48 +0200 Vivia Nikolaidou * gst/rtmp2/gstrtmp2sink.c: rtmp2sink: Add a check that meta isn't NULL before accessing It really can't be NULL, this is just to convince coverity CID 1455553 2019-11-08 18:00:46 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Do not drain if imported buffer are from KMS This adds a check to avoid draining when the imported buffers are in fact own by kmssink. This happens since we export our kms buffer as DMABuf. They are not really imported back as we pre-fill the cache, but uses the same format as if they were external. This fixes performance issues seen with videocrop2-test (found in -good). 2019-11-08 17:57:58 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Avoid drain on caps changes Draining systematically on caps changes was a hack. Instead, properly save the render information used to render last_render, and use that information to drain. This fixes performance issues met with video crop meta and per frame caps changes. 2019-11-08 17:48:40 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Ensure we have an allocator before importing This fixes cases where the kms allocator API was called with a null pointer. 2019-07-12 20:39:45 -0400 Nicolas Dufresne * gst/videoparsers/gstvc1parse.c: vc1parse: Avoid division by zero assertion A framerate of 0/1 is valid, but we cannot calculate the frame duration in this context. Simply protect against this case. Related to #660 2018-02-17 19:38:22 -0500 Nicolas Dufresne * gst/videoparsers/gstvc1parse.c: vc1parser: Relax ASF Binding Byte validation According to the spec, the least significant bit is reserved and should always we set to 1. Though, some wrong file has been found. Considering how low important this reserved bit is, relax the validation. Related to #660 2019-11-11 09:36:48 +0800 Fuwei Tang * gst-libs/gst/codecparsers/gstvc1parser.c: vc1parser : fix a miswrite 2019-11-11 10:50:58 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkhandle.h: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvktrash.c: vkhandle: expose a printf format specifier for a vulkan handle 2019-11-11 10:33:23 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkdescriptorpool.c: vkdescriptor: set the GError on the 'too many allocations' case 2019-10-17 23:25:14 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: vkswapper: add inherit support Used on android 2019-10-17 22:27:44 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: vkswapper: output specific values when swapchain flags fail 2019-10-16 17:17:51 +1100 Matthew Waters * gst-libs/gst/vulkan/android/gstvkdisplay_android.c: * gst-libs/gst/vulkan/android/gstvkdisplay_android.h: * gst-libs/gst/vulkan/android/gstvkwindow_android.c: * gst-libs/gst/vulkan/android/gstvkwindow_android.h: * gst-libs/gst/vulkan/gstvkconfig.h.meson: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/meson.build: vulkan: add android WSI integration 2019-11-10 18:31:49 +0530 Nirbheek Chauhan * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: vulkan: Fix build on ios These little bits were missed during the refactor in https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/821 2019-10-24 15:27:42 -0400 Xavier Claessens * sys/androidmedia/gstamc.c: * sys/androidmedia/meson.build: amc: Change plugin name if it's built for Magic Leap 2018-11-19 13:40:35 -0500 Xavier Claessens * meson_options.txt: * sys/androidmedia/gstamc.c: * sys/androidmedia/magicleap/gstamc-codec-ml.c: * sys/androidmedia/magicleap/gstamc-codeclist-ml.c: * sys/androidmedia/magicleap/gstamc-format-ml.c: * sys/androidmedia/magicleap/gstamc-internal-ml.h: * sys/androidmedia/magicleap/gstamc-surfacetexture-ml.c: * sys/androidmedia/magicleap/gstamc-surfacetexture-ml.h: * sys/androidmedia/meson.build: amc: Add MLSDK implementation 2019-11-08 23:42:08 +0900 Seungha Yang * gst-libs/gst/vulkan/win32/gstvkwindow_win32.c: vulkan: Fix build on Windows gstvkwindow_win32.c(166): error C2065: 'msg_source': undeclared identifier 2019-11-06 15:07:44 +0100 Edward Hervey * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Don't use deprecated SSL methods And instead use the fixed-size variants (which aren't deprecated) 2019-11-06 14:36:11 +0100 Edward Hervey * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/uridownloader/gsturidownloader.c: * gst/asfmux/gstasfobjects.c: * gst/mxf/mxftypes.c: bad: Avoid using deprecated API GTimeval is deprecated 2019-11-07 18:45:55 +0800 Haihao Xiang * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/gstmsdkvp8enc.h: * sys/msdk/meson.build: msdk: remove msdkvp8enc MediaSDK doesn't support vp8 encode which is not going to be implemented [1], so remove msdkvp8enc from this plugin [1]: https://github.com/Intel-Media-SDK/MediaSDK/issues/947 2019-11-07 02:41:10 +1100 Matthew Waters * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.h: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m: * gst-libs/gst/vulkan/gstvkbufferpool.c: * gst-libs/gst/vulkan/gstvkbufferpool.h: * gst-libs/gst/vulkan/gstvkcommandpool.c: * gst-libs/gst/vulkan/gstvkdescriptorcache.c: * gst-libs/gst/vulkan/gstvkdescriptorpool.c: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkimagebufferpool.c: * gst-libs/gst/vulkan/gstvkimagebufferpool.h: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkinstance.h: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.h: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvkswapper.h: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/gstvkwindow.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: * gst-libs/gst/vulkan/win32/gstvkwindow_win32.c: * gst-libs/gst/vulkan/win32/gstvkwindow_win32.h: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.h: vulkan: remove the private struct from the public struct Remove any references to CamelTypePrivate from the public CamelType struct. They can be accessed as needed using camel_type_get_instance_private(). 2019-11-06 22:19:42 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkcolorconvert.h: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkfullscreenrender.h: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkimageidentity.h: * ext/vulkan/vkviewconvert.c: * ext/vulkan/vkviewconvert.h: * gst-libs/gst/vulkan/gstvkdescriptorcache-private.h: * gst-libs/gst/vulkan/gstvkdescriptorcache.c: * gst-libs/gst/vulkan/gstvkdescriptorcache.h: * gst-libs/gst/vulkan/gstvkdescriptorpool.c: * gst-libs/gst/vulkan/gstvkdescriptorpool.h: * gst-libs/gst/vulkan/gstvkdescriptorset.c: * gst-libs/gst/vulkan/gstvkdescriptorset.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan: implement proper descriptor set handling The major functionality gain this provides is proper reference counting for a descriptor set. Overall this allows us to create descriptor sets when they are needed (or reused from a cache) without violating any of vulkan's object synchronisation requirements. As there are a fixed number of sets available in a pool, the number of descriptors in elements is currently hardcoded to 32. This can be extended in a future change to create pools on the fly if that limit is ever overrun. 2019-11-06 09:34:36 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkfence.h: vulkan/fence: add always-signalled fence type Allows a cleaner control flow when there is no fence available for use with the trash list. An always signalled fence type will always return TRUE for gst_vulkan_fence_is_signalled. 2019-11-06 09:29:51 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkhandle.c: * gst-libs/gst/vulkan/gstvkhandle.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan: add handle type for arbitrary vulkan handles Serve two purposes: 1. refcounting of vulkan handles with associated destruction. When combined with the trash list, the user can ensure destruction at the correct time according to the vulkan rules. 2. avoids polluting our API with 32-bit vs 64-bit integer/pointers differences as exposed through the vulkan API. on 32-bit, vulkan non-dispatchable handles are 64-bit integers and on 64-bit, they are pointers. 2019-11-06 22:09:02 +1100 Matthew Waters * ext/vulkan/vkviewconvert.c: vulkanviewconvert: fix typo of output image view name 2019-10-16 17:47:33 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvktrash.c: vulkan: fix non-dispatchable handles on 32-bit platforms non-dispatchable handles are 64-bit integers on 32-bit platforms 2019-10-16 17:42:33 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkshader.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvktrash.c: vulkan: use VK_NULL_HANDLE in more places Fixes compiler warnings on 32-bit platforms assigning a void * to a 64-bit integer value. 2019-10-16 17:27:16 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkinstance.c: vulkan: use the provided VKAPI_ATTR for the debug callback Ensures that we get the calling convention correct for the platform we are using. 2019-11-03 21:50:39 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkdebug.h: * gst-libs/gst/vulkan/gstvkswapper.c: vulkan: dump surface information 2019-10-30 19:33:25 +1100 Matthew Waters * gst-libs/gst/vulkan/gstvkinstance.c: vulkan: print criticals/warnings for vulkan errors/warnings Simplifies finding the erronous cases in using the Vulkan API incorrectly. 2019-10-30 00:57:55 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkimagebufferpool.c: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/gstvkswapper.c: vulkan/image: use the full video info for returning vulkan formats We may need some colorspace information for returning sRGB vs no sRGB. 2019-11-06 14:22:07 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle continuity mismatch in more cases Packets of a given PID are meant to have sequential continuity counters (modulo 16). If there are not sequential, this is the sign of a broken stream, which we then consider as a discontinuity. But if that new packet is a frame start (PUSI is true), then we can resume from that packet without any damage. 2019-11-01 14:22:46 +0900 Yeongjin Jeong * ext/vulkan/meson.build: vulkan: Fix build error when gstvulkan is not installed The following build error occurs: vkdeviceprovider.h:30:10: fatal error: gst/vulkan/vulkan.h: No such file or directory #include ^~~~~~~~~~~~~~~~~~~~~ 2019-10-23 10:11:46 -0700 Ederson de Souza * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstclockselect.c: * gst/debugutils/gstclockselect.h: * gst/debugutils/meson.build: * tests/check/elements/clockselect.c: * tests/check/meson.build: debugutils: clockselect, a pipeline that enables clock selection Sometimes, one wants to force a clock on some pipelines - for instance, when testing TSN related pipelines, one usually uses GstPtpClock or CLOCK_REALTIME (assuming system realtime clock is in sync with network one). Until now, one needs to write an application for that - not difficult, but quite boring if one just wants to test something. This patch presents a new element to help that: clockselect. clockselect is a pipeline with two properties to select a clock. One property, "clock-id", enables one to choose between "monotonic", "realtime", "ptp" or "default" clock - where default keeps pipeline behaviour of choosing a clock based on its elements. The other property, "ptp-domain" gives one the choice of which PTP domain should be used. Some very simple tests also added for this new element. 2019-08-27 07:59:27 +0200 Niels De Graef * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlssrtpenc.c: * ext/resindvd/rsninputselector.c: * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpenc.c: * ext/sctp/sctpassociation.c: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/sctptransport.c: * ext/webrtc/webrtcdatachannel.c: * ext/wpe/gstwpesrc.cpp: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/webrtc/icetransport.c: * gst/camerabin2/gstcamerabin2.c: * sys/d3d11/gstd3d11window.c: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/ipcpipeline/gstipcpipelinesink.c: * sys/ipcpipeline/gstipcpipelinesrc.c: * sys/shm/gstshmsink.c: Don't pass default GLib marshallers for signals By passing NULL to `g_signal_new` instead of a marshaller, GLib will actually internally optimize the signal (if the marshaller is available in GLib itself) by also setting the valist marshaller. This makes the signal emission a bit more performant than the regular marshalling, which still needs to box into `GValue` and call libffi in case of a generic marshaller. Note that for custom marshallers, one would use `g_signal_set_va_marshaller()` with the valist marshaller instead. 2019-10-28 13:42:15 +0900 Justin Kim * ext/srt/gstsrtobject.c: srt: split incoming buffer up into srt chunk 2019-11-02 16:29:02 +0100 Ignacio Casal Quinteiro * sys/wasapi/gstwasapisrc.c: wasapi: minor cleanup 2019-08-27 15:14:31 +0200 Michael Olbrich * gst/sdp/gstsdpsrc.c: sdp: don't leak the ghost pad The peer is already gone when pad_removed_cb() called, so the ghost cannot be removed. Use g_object_set_data() instead to remember the ghost pad. Copied from similar code in GstRTPBin. 2019-10-22 14:10:30 -0400 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/gstd3d9overlay.c: * sys/d3dvideosink/gstd3d9overlay.h: * sys/d3dvideosink/meson.build: d3dvideosink: support OverlayComposition for GPU overlay compositing 2019-11-04 20:42:19 -0500 Aaron Boxer * gst/mpegtsmux/gstbasetsmux.c: basetsmux: allow null J2K profile Since we are not requiring that profile equals GST_JPEG2000_PARSE_PROFILE_BC_SINGLE, (as the standard requires) we can allow profile to be null. We relax this condition because OpenJPEG can't create broadcast profiles. 2019-11-03 05:56:12 -0500 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: fail caps negotiation if caps are NOT fixed 2019-08-08 15:27:11 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: use pre_push_frame to reset parser 2019-08-08 15:26:22 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: parse_event: call base class at end derived class should do it's work first before calling base 2019-08-05 21:53:54 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: do hard reset if gst_base_parse_finish_frame fails 2019-08-05 17:15:57 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: initialize some variables to make valgrind happy 2019-08-09 09:29:22 -0400 Aaron Boxer * tests/check/elements/jpeg2000parse.c: * tests/check/meson.build: jpeg2000parse: add unit test 2019-08-09 09:28:53 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: use GST_INT in caps for profile Negotiation failed with GST_UINT 2019-08-05 15:38:08 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: jpeg2000parse: make explicit that codec_format is for src caps 2019-08-05 15:24:49 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: refactor 1. only recalculate src codec format if sink caps change 2. use correct value for "jp2c" magic in J2C box ID 3. only parse J2K magic once, and store result 4. more sanity checks comparing caps to parsed codec 2019-08-05 15:34:08 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: set parsed to TRUE in src caps 2019-08-05 15:33:33 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: only cache caps parameters when caps have in fact changed 2019-08-05 15:23:24 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: fix typos in media format 2019-08-05 15:19:12 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: jpeg2000parse: add reset method Also add three new struct members, currently unused. 2019-09-02 15:08:44 -0400 Aaron Boxer * NEWS: * docs/plugins/gst_plugins_cache.json: * ext/aom/gstav1enc.c: * ext/assrender/gstassrender.c: * ext/closedcaption/gstcea708decoder.c: * ext/closedcaption/gstceaccoverlay.c: * ext/closedcaption/raw_decoder.c: * ext/closedcaption/sliced.h: * ext/colormanagement/gstlcms.c: * ext/curl/gstcurlhttpsrc.h: * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/directfb/dfbvideosink.c: * ext/dtls/gstdtlsconnection.h: * ext/hls/gsthlsdemux.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/ladspa/gstladspa.c: * ext/libmms/gstmms.c: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2utils.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/neon/gstneonhttpsrc.c: * ext/opencv/MotionCells.cpp: * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/opencv/gsttextoverlay.cpp: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsninputselector.c: * ext/rtmp/gstrtmpsrc.c: * ext/soundtouch/gstpitch.cc: * ext/spandsp/gstdtmfdetect.c: * ext/spandsp/gsttonegeneratesrc.c: * ext/srt/gstsrtobject.c: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: * ext/ttml/subtitle.h: * ext/ttml/ttmlparse.c: * ext/vulkan/vkdownload.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkshader.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkviewconvert.c: * ext/wayland/gstwaylandsink.c: * ext/wayland/wlbuffer.c: * ext/webp/gstwebpdec.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportreceivebin.c: * ext/webrtc/webrtcsdp.c: * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.h: * ext/wildmidi/gstwildmididec.c: * ext/wpe/gstwpesrc.cpp: * ext/x265/gstx265enc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstvc1parser.h: * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/gstvp9parser.h: * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/uridownloader/gstfragment.c: * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/win32/gstvkwindow_win32.c: * gst-libs/gst/wayland/wayland.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfobjects.c: * gst/audiovisualizers/gstsynaescope.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautovideoconvert.c: * gst/autoconvert/plugin.c: * gst/bayer/gstbayer2rgb.c: * gst/camerabin2/camerabin2-src.txt: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstdebugspy.c: * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvdspu/Notes.txt: * gst/dvdspu/gstspu-vobsub-render.c: * gst/festival/gstfestival.c: * gst/frei0r/frei0r.h: * gst/frei0r/gstfrei0r.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/id3tag/id3tag.c: * gst/ivfparse/gstivfparse.c: * gst/jpegformat/gstjpegparse.c: * gst/librfb/rfbdecoder.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegpsmux/psmux.c: * gst/mpegpsmux/psmuxstream.c: * gst/mpegpsmux/psmuxstream.h: * gst/mpegtsdemux/TODO: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/gstmpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mxf/mxfdms1.c: * gst/netsim/gstnetsim.c: * gst/pcapparse/gstirtspparse.c: * gst/pnm/gstpnmdec.c: * gst/removesilence/gstremovesilence.c: * gst/rist/gstristrtxsend.c: * gst/rist/gstristsink.c: * gst/rist/gstroundrobin.c: * gst/rtp/gstrtpsrc.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/h263parse.c: * gst/vmnc/vmncdec.c: * hooks/pre-commit.hook: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstjniutils.c: * sys/applemedia/avfvideosrc.m: * sys/applemedia/vtenc.c: * sys/d3d11/gstd3d11device.c: * sys/d3d11/meson.build: * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/directsound/gstdirectsoundsrc.c: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.h: * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/camtransport.c: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/ipcpipeline/gstipcpipelinesink.c: * sys/ipcpipeline/gstipcslavepipeline.c: * sys/kms/gstkmssink.c: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvc1dec.c: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpputil.c: * sys/msdk/msdk.c: * sys/nvcodec/gstcudautils.c: * sys/nvcodec/gstnvbaseenc.c: * sys/uvch264/gstuvch264_src.c: * sys/uvch264/gstuvch264deviceprovider.c: * sys/wasapi/gstwasapisink.c: * sys/winks/gstksvideodevice.c: * sys/winks/ksvideohelpers.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: * tests/check/elements/adaptive_demux_engine.h: * tests/check/elements/avtpcvfpay.c: * tests/check/elements/dash_mpd.c: * tests/check/elements/hlsdemux_m3u8.c: * tests/check/elements/jifmux.c: * tests/check/elements/nvdec.c: * tests/check/libs/insertbin.c: * tests/check/libs/player.c: * tests/check/pipelines/ipcpipeline.c: * tests/examples/ipcpipeline/ipc-play.c: * tests/examples/playout.c: * tools/gst-transcoder.c: * tools/utils.c: documentation: fixed a heap o' typos 2019-11-05 13:52:55 +0000 Vivia Nikolaidou * gst/meson.build: * gst/rtmp2/TODO: * gst/rtmp2/gstrtmp2.c: * gst/rtmp2/gstrtmp2locationhandler.c: * gst/rtmp2/gstrtmp2locationhandler.h: * gst/rtmp2/gstrtmp2sink.c: * gst/rtmp2/gstrtmp2sink.h: * gst/rtmp2/gstrtmp2src.c: * gst/rtmp2/gstrtmp2src.h: * gst/rtmp2/meson.build: * gst/rtmp2/rtmp/amf.c: * gst/rtmp2/rtmp/amf.h: * gst/rtmp2/rtmp/rtmpchunkstream.c: * gst/rtmp2/rtmp/rtmpchunkstream.h: * gst/rtmp2/rtmp/rtmpclient.c: * gst/rtmp2/rtmp/rtmpclient.h: * gst/rtmp2/rtmp/rtmpconnection.c: * gst/rtmp2/rtmp/rtmpconnection.h: * gst/rtmp2/rtmp/rtmphandshake.c: * gst/rtmp2/rtmp/rtmphandshake.h: * gst/rtmp2/rtmp/rtmpmessage.c: * gst/rtmp2/rtmp/rtmpmessage.h: * gst/rtmp2/rtmp/rtmputils.c: * gst/rtmp2/rtmp/rtmputils.h: * meson_options.txt: Add files from gst-rtmp For master, without autotools. 2019-10-06 22:46:52 +0900 Wonchul Lee * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: av1enc: Add tile-{columns,rows} properties It provides to set tile-columns and tile-rows configurations. The av1 codec allows an input image frame be partitioned into separate vertical or horizontal tile which can be encoded or decoded independently. It helps to encode/decode parallel. 2019-10-06 17:20:12 +0900 Wonchul Lee * ext/aom/gstav1enc.c: av1enc: Enable row-mt by default Enabling row-mt property can help to increase cpu utilization and reduce encoding speed, so set it to on by default. 2019-07-23 18:24:11 +0900 Yeongjin Jeong * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Hook up libcurl logging message to gstreamer CURLOPT_DEBUGFUNCTION option replaces the standard debug function used when CURLOPT_VERBOSE is in effect. This callback receives various debug information. 2019-09-20 14:52:15 +0200 Olivier Crête * gst/rist/gstristsrc.c: ristsrc: Apply BINDTODEVICE to socket created by udpsrc too 2019-11-03 09:54:40 +0100 Sebastian Dröge * ext/closedcaption/gstccconverter.c: * tests/check/elements/ccconverter.c: ccconverter: Instead of erroring out on too big input drop additional data 2019-10-30 14:56:41 +0700 Roman Shpuntov * sys/applemedia/vtdec.c: vtdec: fix leak of CMFormatDescription There was consideration for replacing the CMFormatDescription used on format changes in `set_format()` however on shutdown, we were leaking the CMFormatDescription at the end of processing. 'https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1106' 2019-10-12 04:04:59 +0900 Yeongjin Jeong * gst/videoparsers/gsth265parse.c: h265parse: Fix wrong NALU minimum length check Fixes a problem where an EOS/EOB NALU placed at the end of an AU is detected as an other AU and create a buffer that does not have valid pts. 2019-10-12 03:49:33 +0900 Yeongjin Jeong * gst/videoparsers/gsth264parse.c: h264parse: Fix wrong NALU minimum length check Fixes a problem where an EOS/EOB NALU placed at the end of an AU is detected as an other AU and create a buffer that does not have valid pts. 2019-11-02 16:51:09 +0100 Jan Alexander Steffens (heftig) * ext/openexr/meson.build: openexr: Fix compilation with OpenEXR 2.4 It uses modern C++; adding -std=c++98 breaks the build. 2019-10-31 15:14:21 +0700 Roman Shpuntov * sys/applemedia/vtdec.c: vtdec: memory leaks bugfix release 'videoDecoderSpecification' variable in 'gst_vtdec_create_session' function. release 'extensions' variable in 'create_format_description_from_codec_data' function. 2019-10-11 14:48:11 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkmjpegenc.c: msdkmjpegenc: convert UYVY to YUY2 instead of NV12 Before this fix, the chroma subsampling of the output is 4:2:0. It is 4:2:2 with this fix, which is better for UYVY input 2019-10-11 13:05:33 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkmjpegenc.c: msdkmjpegenc: don't need conversion for BGRA and YUY2 jpeg encoder in MSDK can accept BGRA and YUY2 input. 2019-10-11 12:50:02 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkenc: add need_conversion method In future, a sub class of GstMsdkEncClass may decide a native format by using this method, e.g. JPEG encoder may accept YUY2 input, however the current implemation needs a conversion from YUY2 to NV12 before encoding. In addtion, a sub class may choose a format for encoding if the input format is not supported by MSDK, e.g. the current implemation does UYVY->NV12 if the input format is UYVY. We may do UYVY->YUY2 for JPEG encoder in future 2019-10-09 13:41:09 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/msdk_libva.c: msdk: support for MFX_FOURCC_BGR4 frame allocation MFX_FOURCC_BGR4 is mapped to VA_FOURCC_ABGR and JPEG encoder needs a MFX_FOURCC_BGR4 frame for internal usage when the input format is MFX_FOURCC_RGB4 This is a preparation for supporting native formats of JPEG encoder 2019-09-26 17:45:31 +0200 Edward Hervey mpegtsmux: Add SCTE-35 support This adds two properties: * scte-35-pid: If not 0, enables the SCTE-35 support for the current program. This will write the proper PMT and send SCTE-35 NULL commands (i.e. heartbeats) at a regular interval * scte-35-null-interval: This specifies the interval at which the NULL commands should be sent Sending SCTE-35 commands is done by creating the appropriate SCTE-35 GstMpegtsSection and then sending them on the muxer. See the associated example 2019-09-26 17:28:27 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-scte-section.c: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/meson.build: * gst/mpegtsdemux/mpegtsbase.c: * tests/check/libs/mpegts.c: * tests/examples/mpegts/ts-parser.c: mpegts: Add support for SCTE-35 sections Not all commands are supported, but the most common ones are. Both parsing and packetizing is supported 2019-09-26 17:43:57 +0200 Edward Hervey * gst/mpegtsmux/tsmux/tsmux.c: tsmux: Disable bluray-isms from PMT We were unconditionally adding top-level descriptors in the PMT which were only related to bluray support for PS3 (from 10 years ago). These should be re-added conditionally 2019-09-26 17:13:30 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix off-by-one error This went un-noticed for 6 years :( The issue is that for short sections (without subtables and CRC), we would always fail when checking whether we had enough data or not and then default to the long section checking. Use the long section checking would then cause interesting side-effects for short sections (such as believing they were already seen and therefore would be dropped/ignored). 2019-10-28 13:28:28 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkvc1dec.c: msdkdec: use decoder base class packetized flag Instead of using a proxy of `is_packetized` flag this patch replaces it with the accessor to that flag in decoder base class, avoiding probable mismatches. 2019-09-27 10:50:18 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkvc1dec.c: msdkdec: add parse callback for non-packetized input commit 55c0d720 added the capability to handle non-packetized bitstream, and there is a loop to handle multiple frames in a non-packetized buffer in gst_msdkdec_handle_frame. However it is possible that a non-packetized buffer still contains valid data but there is no long any pending unfinished frame. Currently gst_video_decoder_decode_frame is invoked to send a new frame with new input data, the situaltion is repeated till an EOS is received. An application has to exit when receiving an EOS, however there is still valid data in a non-packetezied input buffer, hence some frames are dropped. This fix adds a parse callback for non-packeteized input, a new frame will be sent to the subclass as soon as the input buffer has valid data This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/665 2019-10-28 11:25:15 +0200 Sebastian Dröge * ext/closedcaption/gstccextractor.c: ccextractor: Remove unused set/get_property() functions 2019-10-28 11:22:06 +0200 Sebastian Dröge * ext/closedcaption/gstccextractor.c: ccextractor: Always forward all sticky events to the caption pad And only update the caps and stream-start event accordingly. This ensures that we'll always forward sticky events that arrive after the caption pad was created, and especially updates to existing sticky events like the segment event. Also create a proper stream id based on the upstream stream id for the stream-start event, and make sure that all the sticky events we know are already on the caption pad at the time it is added to the element. 2019-10-28 02:27:04 +1100 Matthew Waters * ext/vulkan/vkimageidentity.c: vulkanimage: move fence creation earlier Fixes a critical: GStreamer-CRITICAL **: 02:26:34.698: gst_mini_object_ref: assertion 'mini_object != NULL' failed 2019-10-28 02:18:18 +1100 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkviewconvert.c: vulkan: change to clamp to edge rather than clamp to border clamp-to-border will return the border color which is typically black, white or transparent. When linear filtering the edge pixels will typeically be combined with the border color which is not typically what we want. Especially when color converting, this removes a green box around the edge when converting YUV->RGB. 2019-10-24 15:26:33 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: Add support for tiled encoding Add num-tile-rows and num-tile-cols properties to set the number of rows and columns 2019-10-24 16:42:23 -0700 Julien Isorce * ext/srtp/gstsrtpenc.c: srtpenc: also insert ssrc(s) from rtp buffers This fixes a regression from commit "srtp: Support libsrtp2" e9aa11720071f8a1d22b336395e66dd8cbca0c00 where an internal set of ssrc(s) was added because the libsrtp v2 keeps its internal streams as private. But the change prevented that ssrc(s) that not in the caps from being added to the stats. This patch ensures that all ssrc(s) are inserted to this set instead of only inserting those from the caps. 2019-10-18 12:26:26 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp9enc.c: msdk: support P010_10LE in DMABuf mode for VP9/HEVC encoding 2019-10-24 19:10:30 +0800 Cheng-Chang Wu * sys/androidmedia/jni/gstamcsurfacetexture-jni.c: androidmedia: Make sure that the first member of GstAmcSurfaceTextureJNI is correct It's a subclass of GstAmcSurfaceTexture so should have that as first struct member or otherwise it won't work. Fixes #1105 2019-10-24 19:14:58 +0800 Cheng-Chang Wu * sys/androidmedia/jni/gstamc-codec-jni.c: androidmedia: Call JNI method with the actual Java object instead of our wrapper struct Fixes #1105 2019-10-24 15:40:25 +0200 Jan Alexander Steffens (heftig) * ext/opencv/meson.build: opencv: Don't error when unable to detect OpenCV data dir Instead, mark OpenCV as not found. We error out later if OpenCV was explicitly enabled. 2019-10-11 23:54:55 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: add support Y410 and Y210 formats And clean up some macros 2019-10-16 11:59:32 -0700 U. Artie Eoff * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/gstmsdkvpputil.c: msdkvpp: allow cropping via properties Add crop-left, crop-right, crop-top and crop-bottom properties to msdkvpp and apply to input surface at vpp transform run-time. Implements #1097 2019-10-22 18:33:18 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpe: Get rid of un-necessary frameComplete dispatchs frameComplete() should be called only if there's a new commited frame. 2019-10-19 12:48:55 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpe: Run frameComplete outside of images mutex scope If the mutex is locked while running frameComplete there is a potential deadlock bound to happen when we get a new exported images from the backend. Fixes #1101 2019-10-23 16:47:43 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Add properties to time out cached upstream/LTC timecodes after a while By default we never time them out and simply continue couting up with each frame forever. 2019-10-23 15:03:09 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Add new auto-resync boolean property This allows selecting whether we continue updating our last known upstream timecode whenever a new one arrives or instead only keep the last known one and from there on count up. 2019-10-23 14:31:16 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Add last-known-or-zero mode This uses the last known upstream timecode (counted up per frame), or otherwise zero if none was known. The normal last-known timestamp uses the internal timecode as fallback if no upstream timecode was ever known. 2019-10-23 14:29:06 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Don't initialize upstream timecode with zero if none was seen Instead keep it unset and use the internal timecode wherever needed as fallback. 2019-10-23 14:28:24 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Update set-tc property documentation with latest version of reality 2019-10-22 09:30:34 +0300 Sebastian Dröge * gst/pnm/gstpnmdec.c: pnmdec: Return early on ::finish() if we have no actual data to parse Otherwise we'd be working with a NULL buffer and cause various critical warnings along the way. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1104 2019-09-24 08:55:07 +0300 Jordan Petridis * ext/lv2/gstlv2utils.c: lv2: fix build without the debug system ``` FAILED: subprojects/gst-plugins-bad/ext/lv2/b8a2ebe@@gstlv2@sha/gstlv2utils.c.o ../subprojects/gst-plugins-bad/ext/lv2/gstlv2utils.c: In function 'lv2_log_printf': ../subprojects/gst-plugins-bad/ext/lv2/gstlv2utils.c:50:3: error: attempt to use poisoned "gst_debug_log_valist" 50 | gst_debug_log_valist (lv2_debug, GST_LEVEL_INFO, "", "", 0, NULL, fmt, ap); | ^ ../subprojects/gst-plugins-bad/ext/lv2/gstlv2utils.c:50:25: error: 'lv2_debug' undeclared (first use in this function); did you mean 'g_debug'? 50 | gst_debug_log_valist (lv2_debug, GST_LEVEL_INFO, "", "", 0, NULL, fmt, ap); | ^~~~~~~~~ | g_debug ``` 2019-08-29 21:20:37 +0700 Ratchanan Srirattanamet * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabin2: preview: remove redundant property setting on appsink Commit 8a56a7de6d5f2cf70dbe6efbd7c8ed74600c8565 (camerabin2: preview: Appsink doesn't need to sync) add a line that set the "sync" property on the appsink. However, the author seems to forget that there's another property setting on appsink a few lines below. It's very likely that the added line is required because the original line doesn't take effect (maybe because it's too late). But for whatever reason, the original line is now redundant. So, I remove it in this commit. 2019-10-19 13:52:54 +0100 Alistair Buxton * gst-libs/gst/transcoder/meson.build: meson: use gir_init_section in GstTranscoder GstTranscoder adds extra_args for gir which call gst_init() during introspection. These extra arguments are the same as the standard ones defined in the top level meson.build as "git_init_section", However, the top level definition also ensures an empty plugin repository is used. Because GstTranscoder does not use the standard args, plugins get loaded when it is introspected. Since some of the plugins fail without specific hardware, this causes #1100. This patch makes it use gir_init_section. Fixes #1100. 2019-10-18 00:39:12 +0100 Tim-Philipp Müller * meson.build: meson: build gir even when cross-compiling if introspection was enabled explicitly This can be made to work in certain circumstances when cross-compiling, so default to not building g-i stuff when cross-compiling, but allow it if introspection was enabled explicitly via -Dintrospection=enabled. See gstreamer/gstreamer#454 and gstreamer/gstreamer#381. 2019-09-24 16:57:54 -0700 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpesrc.cpp: wpesrc: Implement load-bytes action signal 2019-08-07 17:07:21 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpesrc.cpp: * ext/wpe/gstwpesrc.h: wpe: Rewrite wpesrc as a glbasesrc subclass And since it no longer allocates memories itself, this fixes issues with fakevideosink. A lot of code previously copied from gltestsrc is no longer needed thanks to the glbasesrc super-class. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1046 2019-10-09 14:55:55 +0200 Javier Celaya * sys/androidmedia/jni/gstamc-codeclist-jni.c: Fix get_supported_types function name 2019-10-09 14:55:29 +0200 Javier Celaya * sys/androidmedia/jni/gstamc-codeclist-jni.c: Fix releasing local refs 2019-10-09 14:55:05 +0200 Javier Celaya * sys/androidmedia/jni/gstamc-codeclist-jni.c: Fix names of MediaCodecInfo inner classes 2019-10-09 14:54:24 +0200 Javier Celaya * sys/androidmedia/jni/gstamc-codeclist-jni.c: Fix getting MediaCodecList static methods 2019-10-11 09:51:24 -0700 Julien Isorce * sys/msdk/gstmsdkenc.c: msdkenc: close encoder upon bitrate change Upon bitrate change, make sure to close the encoder otherwise the encoder is not re-initialized and the target bitrate is never reached, and the encoder was flushed at each frame from this moment. Regression introduced in f2b35abcab which replaced the call that was closing the encoder by an early return to avoid re-initialization. 2019-09-17 20:32:18 +0900 Seungha Yang * sys/wasapi/gstwasapiutil.c: wasapi: Fix build warnings gstwasapiutil.c(173) : warning C4715: 'gst_wasapi_device_role_to_erole': not all control paths return a value gstwasapiutil.c(188) : warning C4715: 'gst_wasapi_erole_to_device_role': not all control paths return a value 2019-09-17 20:29:03 +0900 Seungha Yang * sys/wasapi/gstwasapidevice.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Don't cast GstDeviceProvider to GstElement The GstDeviceProvider isn't subclass of GstElement. (gst-device-monitor-1.0:49356): GLib-GObject-WARNING **: 20:21:18.651: invalid cast from 'GstWasapiDeviceProvider' to 'GstElement' 2019-10-13 14:22:50 +0100 Tim-Philipp Müller * .gitignore: * .gitmodules: * Makefile.am: * README: * autogen.sh: * common: * configure.ac: * docs/.gitignore: * ext/Makefile.am: * ext/aom/Makefile.am: * ext/assrender/Makefile.am: * ext/avtp/Makefile.am: * ext/bs2b/Makefile.am: * ext/bz2/Makefile.am: * ext/chromaprint/Makefile.am: * ext/closedcaption/Makefile.am: * ext/colormanagement/Makefile.am: * ext/curl/Makefile.am: * ext/dash/Makefile.am: * ext/dc1394/Makefile.am: * ext/directfb/.gitignore: * ext/directfb/Makefile.am: * ext/dtls/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/fdkaac/Makefile.am: * ext/flite/Makefile.am: * ext/fluidsynth/Makefile.am: * ext/gme/Makefile.am: * ext/gsm/Makefile.am: * ext/hls/Makefile.am: * ext/iqa/Makefile.am: * ext/kate/Makefile.am: * ext/ladspa/Makefile.am: * ext/libde265/Makefile.am: * ext/libmms/Makefile.am: * ext/lv2/Makefile.am: * ext/modplug/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/.gitignore: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/openal/Makefile.am: * ext/opencv/Makefile.am: * ext/openexr/Makefile.am: * ext/openh264/Makefile.am: * ext/openjpeg/Makefile.am: * ext/openmpt/Makefile.am: * ext/openni2/Makefile.am: * ext/opus/Makefile.am: * ext/resindvd/Makefile.am: * ext/rsvg/Makefile.am: * ext/rtmp/Makefile.am: * ext/sbc/Makefile.am: * ext/sctp/Makefile.am: * ext/smoothstreaming/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spandsp/Makefile.am: * ext/srt/Makefile.am: * ext/srtp/.gitignore: * ext/srtp/Makefile.am: * ext/teletextdec/Makefile.am: * ext/ttml/Makefile.am: * ext/voaacenc/Makefile.am: * ext/voamrwbenc/Makefile.am: * ext/wayland/.gitignore: * ext/wayland/Makefile.am: * ext/webp/Makefile.am: * ext/webrtc/Makefile.am: * ext/webrtcdsp/Makefile.am: * ext/wildmidi/Makefile.am: * ext/wpe/Makefile.am: * ext/x265/Makefile.am: * ext/zbar/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/adaptivedemux/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/interfaces/.gitignore: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/isoff/Makefile.am: * gst-libs/gst/mpegts/.gitignore: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/opencv/Makefile.am: * gst-libs/gst/player/Makefile.am: * gst-libs/gst/sctp/Makefile.am: * gst-libs/gst/uridownloader/Makefile.am: * gst-libs/gst/vulkan/.gitignore: * gst-libs/gst/wayland/Makefile.am: * gst-libs/gst/webrtc/Makefile.am: * gst/Makefile.am: * gst/accurip/Makefile.am: * gst/adpcmdec/Makefile.am: * gst/adpcmenc/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffersplit/Makefile.am: * gst/audiofxbad/Makefile.am: * gst/audiolatency/Makefile.am: * gst/audiomixmatrix/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/autoconvert/Makefile.am: * gst/bayer/Makefile.am: * gst/camerabin2/Makefile.am: * gst/coloreffects/Makefile.am: * gst/debugutils/Makefile.am: * gst/dvbsuboverlay/Makefile.am: * gst/dvdspu/.gitignore: * gst/dvdspu/Makefile.am: * gst/faceoverlay/Makefile.am: * gst/festival/Makefile.am: * gst/fieldanalysis/Makefile.am: * gst/freeverb/Makefile.am: * gst/frei0r/Makefile.am: * gst/gaudieffects/Makefile.am: * gst/gdp/Makefile.am: * gst/geometrictransform/Makefile.am: * gst/id3tag/Makefile.am: * gst/inter/.gitignore: * gst/inter/Makefile.am: * gst/interlace/Makefile.am: * gst/ivfparse/Makefile.am: * gst/ivtc/Makefile.am: * gst/jp2kdecimator/Makefile.am: * gst/jpegformat/Makefile.am: * gst/librfb/Makefile.am: * gst/midi/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegpsmux/Makefile.am: * gst/mpegtsdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/tsmux/Makefile.am: * gst/mxf/Makefile.am: * gst/netsim/Makefile.am: * gst/onvif/Makefile.am: * gst/pcapparse/Makefile.am: * gst/pnm/Makefile.am: * gst/proxy/Makefile.am: * gst/rawparse/Makefile.am: * gst/removesilence/Makefile.am: * gst/rist/Makefile.am: * gst/rtp/Makefile.am: * gst/sdp/Makefile.am: * gst/segmentclip/Makefile.am: * gst/siren/Makefile.am: * gst/smooth/.gitignore: * gst/smooth/Makefile.am: * gst/speed/.gitignore: * gst/speed/Makefile.am: * gst/subenc/Makefile.am: * gst/timecode/Makefile.am: * gst/videofilters/Makefile.am: * gst/videoframe_audiolevel/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videosignal/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * gst/yadif/Makefile.am: * m4/.gitignore: * m4/Makefile.am: * m4/README: * m4/a52.m4: * m4/aalib.m4: * m4/as-ffmpeg.m4: * m4/as-liblame.m4: * m4/as-slurp-ffmpeg.m4: * m4/check-libheader.m4: * m4/freetype2.m4: * m4/gconf-2.m4: * m4/gst-fionread.m4: * m4/gst-sdl.m4: * m4/gst-sid.m4: * m4/libgcrypt.m4: * m4/libmikmod.m4: * m4/lrint.m4: * m4/lrintf.m4: * pkgconfig/Makefile.am: * po/.gitignore: * po/Makevars: * po/POTFILES: * sys/Makefile.am: * sys/androidmedia/Makefile.am: * sys/applemedia/Makefile.am: * sys/bluez/Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/decklink/Makefile.am: * sys/directsound/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dshowvideosink/Makefile.am: * sys/dvb/Makefile.am: * sys/fbdev/Makefile.am: * sys/ipcpipeline/Makefile.am: * sys/kms/Makefile.am: * sys/msdk/Makefile.am: * sys/nvcodec/Makefile.am: * sys/opensles/Makefile.am: * sys/shm/Makefile.am: * sys/tinyalsa/Makefile.am: * sys/uvch264/Makefile.am: * sys/wasapi/Makefile.am: * sys/winks/Makefile.am: * sys/winscreencap/Makefile.am: * tests/Makefile.am: * tests/check/.gitignore: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/generic/.gitignore: * tests/check/libs/.gitignore: * tests/check/pipelines/.gitignore: * tests/examples/Makefile.am: * tests/examples/audiomixmatrix/Makefile.am: * tests/examples/avsamplesink/.gitignore: * tests/examples/avsamplesink/Makefile.am: * tests/examples/camerabin2/.gitignore: * tests/examples/camerabin2/Makefile.am: * tests/examples/codecparsers/Makefile.am: * tests/examples/directfb/.gitignore: * tests/examples/directfb/Makefile.am: * tests/examples/ipcpipeline/Makefile.am: * tests/examples/mpegts/Makefile.am: * tests/examples/mxf/.gitignore: * tests/examples/mxf/Makefile.am: * tests/examples/opencv/Makefile.am: * tests/examples/uvch264/Makefile.am: * tests/examples/waylandsink/Makefile.am: * tests/examples/webrtc/Makefile.am: * tests/files/Makefile.am: * tests/icles/.gitignore: * tests/icles/Makefile.am: * tools/Makefile.am: Remove autotools build system 2019-10-14 02:22:18 -0500 Matthew Waters * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklink: fix timestamp tracking when pausing play->pause->sleep()->play would result in late frames being scheduled 2019-09-04 16:48:29 +0200 Philipp Zabel * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: record pic_order_cnt elements size Some hardware decoders, for example Hantro G1, have to be told the size of the pic_order_cnt related syntax elements pic_order_cnt_lsb, delta_pic_order_cnt_bottom, delta_pic_order_cnt[0], and delta_pic_order_cnt[1] in bits. 2019-09-04 15:57:30 +0200 Philipp Zabel * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: record dec_ref_pic_marking() size Some hardware decoders, for example Hantro G1, have to be told the size of the dec_ref_pic_marking() syntax element in bits. Record the size so it can be passed on to the hardware. 2019-09-20 20:14:57 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Calculate short term RPS size in slice header The calculated size of short_term_ref_pic_set is not a part of HEVC syntax but the value is used by some stateless decoders (e.g., vaapi, dxva, vdpau and nvdec) for the purpose of skipping parsing the syntax by the accelerator. 2019-10-07 10:36:37 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Add H265 slice segment header documentation Adding brief description for each value. 2019-09-11 17:59:37 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Expose parsed GstH264PPS::pic_scaling_matrix_present_flag 2019-08-27 20:34:48 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Expose all parsed flags of slice header Add num_ref_idx_active_override_flag and sp_for_switch_flag to member of GstH264SliceHdr. No reason to hiding them and some decoder implementations (e.g., DXVA) rely on externally parsed header data which can be provided by h264parser. 2019-10-09 14:00:01 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: msdk: return the right pointer The first channel in memory for MFX_FOURCC_RGB4 (VA_FOURCC_ARGB or GST_VIDEO_FORMAT_BGRA) is B, not A. In MSDK, channle B is used to access data for RGB4 surface. In addition, the returned pointers for MFX_FOURCC_AYUV and MFX_FOURCC_Y410 in gst_msdk_video_memory_map_full were wrong too before this fix. 2019-10-07 08:39:06 -0700 Josep Torra * sys/msdk/gstmsdkenc.c: msdkenc: handle bitrate changes in playing state When the bitrate is changed in playing state the encoder issues a reconfig that drains and recreates the underlaying hw encoder instance. With this set of changes we ensure that all this work is only made when the bitrate did actually change. It also tries to reuse the vpp buffer pool and fixes the pool leak spotted when testing this feature. 2019-09-17 01:52:54 +0200 Mathieu Duponchelle * ext/mdns/gstmicrodns.c: * ext/mdns/gstmicrodnsdevice.c: * ext/mdns/gstmicrodnsdevice.h: * ext/mdns/meson.build: * ext/meson.build: * meson_options.txt: ext: add libmicrodns-based mdns device provider The provider for now only detects and handles rtsp devices, but more protocols should be easy to add. 2019-10-08 09:40:06 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add the missing profile string 2019-10-07 14:21:58 +0900 Seungha Yang * ext/hls/gsthlssink2.c: hlssink2: Respect requested max-files property for decision on removing old fragments from disk hlssink2 defined "max-files" property to decide the maximum number of fragments which should be stored in disk. But we've not used the property. Instead, the size has been maintained by "playlist-length". Since "max-files" and "playlist-length" have different meaning, the decision should be done by "max-files" property. For example, an user might want expose only 3 fragments via playlist but might want to keep more files than 3 in disk. 2019-10-07 00:05:08 +1100 Matthew Waters * ext/assrender/gstassrender.c: ass: avoid infinite unref loop with bad data A classic case of not updating the next item to iterate after deleting it from the singly linked list. Only ever hit with a text buffer with GST_CLOCK_TIME_NONE for either the timestamp or duration. 2019-09-17 19:56:23 +0900 Seungha Yang * sys/d3d11/gstd3d11window.c: d3d11window: Protect registration/creation of WIN32 window Querying existing window class info and creation of window object should be protected since they are not thread safe. 2019-10-04 21:15:15 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11videosink: Don't try to post error message by d3d11window self The d3d11window isn't GstElement. To post error message, proxy it to d3d11videosink instead. 2019-10-04 01:32:34 +0200 Alexandru Băluț * pkgconfig/meson.build: pkgconfig: Fix gstreamer-bad-transcoder-1.0.pc generation 2019-10-01 11:00:02 +0200 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: msdkenc: guard MFX_FOURCC_Y410 with MFX version 1027 2019-10-01 15:36:29 +0900 Seungha Yang * ext/hls/gsthlssink.c: * ext/hls/gsthlssink.h: * ext/hls/gsthlssink2.c: * ext/hls/gsthlssink2.h: * ext/hls/gstm3u8playlist.h: hlssink,hlssink2: Ensure writing ENDLIST tag at the end hlssink* elements could be finalized without EOS event, and in that case the final playlist might not include the EXT-X-ENDLIST tag. Since missing ENDLIST tag means it's live stream, but we did't intend it, hlssink* elements should put the tag at the end. 2019-09-26 09:52:14 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: set lockable flag When postpone_free_surface is TRUE, the output buffer is not writable, however the base decoder needs a writable buffer as output buffer, otherwise it will make a copy of the output buffer. As the underlying memory is always lockable, so we may set the LOCKABLE flag for this buffer to avoid buffer copy in the base class. The refcount of the output buffer is 1 when postpone_free_surface is FALSE, so needn't set the LOCKABLE flag for this case. 2019-09-30 10:13:56 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add support for Y410 in sink pad Sample pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=Y410 ! msdkh265enc low-power=1 ! filesink location=output.h265 2019-09-30 09:48:26 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add support for VUYA in sink pad sample pipelie: gst-launch-1.0 videotestsrc ! video/x-raw,format=VUYA ! msdkh265enc low-power=1 ! filesink location=output.h265 2019-09-30 08:57:42 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265enc.c: msdkenc: clean up code by using switch It is convenient for us to add support for new formats in future, there is no change in functionality. 2019-09-30 09:09:23 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvc1dec.c: msdk: remove some dead code 2019-08-06 21:08:12 +0100 olivier.crete@collabora.com * ext/wayland/wlvideoformat.c: wayland: Add more DRM formats Add DRM format equivalents that we were missing compared to our caps. 2019-08-06 19:09:54 +0100 olivier.crete@collabora.com * ext/wayland/wlvideoformat.c: * ext/wayland/wlwindow.c: wayland: Drop big-endian version of the DRM formats They were a big in some big-endian implementations 2019-08-23 13:41:54 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11window.c: d3d11videosink: Use pixel aspect ratio to setup window draw area ... instead of calculated display ratio from given PAR and DAR. d3d11window calculates output display ratio to decide padding area per window resize event. In the formula, actual PAR is required to handle both 1:1 PAR and non-1:1 PAR. 2019-09-24 20:29:21 +0200 Fabian Greffrath * ext/fluidsynth/gstfluiddec.c: fluidsynth: add sf3 to soundfont search path In Debian, soundfonts in SF3 format (i.e. the same as SF2 format but with Ogg/Vorbis-compressed samples) are installed into /usr/share/sounds/sf3. Soundfonts in SF3 format are supported since FluidSynth 1.1.7 (released in Feb 2018). 2019-09-25 21:36:58 +0900 Seungha Yang * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/meson.build: vulkan: Fix build on Windows * Fix meson build script for Windows. Since the Vulkan dependency object was declared by us in case of Windows, the dependency object shouldn't be used for finding header * Fix build error by including Windows specific header gstvkdisplay.c(563): error C2065: 'VK_KHR_WIN32_SURFACE_EXTENSION_NAME': undeclared identifier 2019-09-24 17:24:38 +1000 Matthew Waters * ext/vulkan/meson.build: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkcolorconvert.h: * ext/vulkan/vkelementutils.c: * ext/vulkan/vkelementutils.h: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/gstvkimageview.c: * gst-libs/gst/vulkan/gstvkimageview.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan: remove VkImageView from the memory There can be multiple views per image for different subresource ranges or planes in multi-planer images. 2019-09-24 13:53:22 +1000 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkbuffermemory.h: * gst-libs/gst/vulkan/gstvkbufferpool.c: * tests/check/libs/vkmemory.c: vkbuffer: remove buffer view from the memory It's only really useful for texture buffers which we currently do not use. 2019-09-24 13:52:17 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkconfig.h.meson: build/vulkan: fix copy-paste error in gstvkconfig.h 2019-09-18 23:49:08 +1000 Matthew Waters * gst-libs/gst/vulkan/cocoa/gstvkdisplay_cocoa.h: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.h: * gst-libs/gst/vulkan/gstvkapi.h: * gst-libs/gst/vulkan/gstvkcommandpool-private.h: * gst-libs/gst/vulkan/ios/gstvkdisplay_ios.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/wayland/gstvkdisplay_wayland.h: * gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.h: * gst-libs/gst/vulkan/win32/gstvkwindow_win32.h: * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.h: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.h: vulkan: remove the winsys-specific headers from gst/vulkan/vulkan.h Allows not having wayland, xcb, Cocoa, UIKit, windows.h included in the public GstVulkan API. 2019-09-24 11:25:00 +0300 Vivia Nikolaidou * gst/debugutils/gsterrorignore.c: errorignore: Added convert-error signal The convert-error signal is emitted whenever we get a GstFlowReturn other than GST_FLOW_OK. The handler can then decide what to convert that into - for instance, return the same GstFlowReturn to not convert it. The default handler will act according to the ignore-error, ignore-notlinked, ignore-notnegotiated and convert-to properties. If a handler is connected, these properties are ignored. 2019-09-24 10:29:44 +1000 Matthew Waters * gst/rist/gstristsink.c: * gst/rtp/gstrtpsink.c: build: fix werror build with newer gcc In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstbin.h:27, from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:35, from ../gst/rtp/gstrtpsink.h:23, from ../gst/rtp/gstrtpsink.c:49: In function ‘gst_rtp_sink_start’, inlined from ‘gst_rtp_sink_change_state’ at ../gst/rtp/gstrtpsink.c:509:11: ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstelement.h:422:18: error: ‘%s’ directive argument is null [-Werror=format-overflow=] 422 | gchar *__txt = _gst_element_error_printf text; \ ../gst/rtp/gstrtpsink.c:476:3: note: in expansion of macro ‘GST_ELEMENT_ERROR’ 476 | GST_ELEMENT_ERROR (self, RESOURCE, NOT_FOUND, | ^~~~~~~~~~~~~~~~~ ../gst/rtp/gstrtpsink.c: In function ‘gst_rtp_sink_change_state’: ../gst/rtp/gstrtpsink.c:477:37: note: format string is defined here 477 | ("Could not resolve hostname '%s'", remote_addr), | ^~ In file included from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstbin.h:27, from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gst.h:35, from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/rtp/gstrtpdefs.h:27, from ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/rtp/rtp.h:25, from ../gst/rist/gstristsink.c:72: In function ‘gst_rist_sink_setup_rtcp_socket’, inlined from ‘gst_rist_sink_start’ at ../gst/rist/gstristsink.c:658:10, inlined from ‘gst_rist_sink_change_state’ at ../gst/rist/gstristsink.c:801:13: ../../../../dist/linux_x86_64/include/gstreamer-1.0/gst/gstelement.h:422:18: error: ‘%s’ directive argument is null [-Werror=format-overflow=] 422 | gchar *__txt = _gst_element_error_printf text; \ ../gst/rist/gstristsink.c:595:3: note: in expansion of macro ‘GST_ELEMENT_ERROR’ 595 | GST_ELEMENT_ERROR (sink, RESOURCE, NOT_FOUND, | ^~~~~~~~~~~~~~~~~ ../gst/rist/gstristsink.c: In function ‘gst_rist_sink_change_state’: ../gst/rist/gstristsink.c:596:37: note: format string is defined here 596 | ("Could not resolve hostname '%s'", remote_addr), | ^~ 2019-09-09 13:40:53 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvideomemory.h: msdk: fix for mfx frame alloc response Both MSDK and this plugin use mfxFrameAllocResponse for video and DMABuf memory, it is possible that some GST buffers are still in use when calling gst_msdk_frame_free, so add a reference count in the wrapper of mfxFrameAllocResponse (GstMsdkAllocResponse) to make sure the underlying mfx resources are still available if the corresponding buffer pool is in use. In addtion, currently all allocators for input or output share the same mfxFrameAllocResponse pointer in an element, so it is possible that the content of mfxFrameAllocResponse is updated for a new caps then all GST buffers allocated from an old allocator will use this new content of mfxFrameAllocResponse, which will result in unexpected behavior. In this fix, we save the the content of mfxFrameAllocResponse in the corresponding tructure to avoid such issue Sample pipeline: gst-launch-1.0 filesrc location=vp9_multi_resolutions.ivf ! ivfparse ! msdkvp9dec ! msdkvpp ! video/x-raw\(memory:DMABuf\),format=NV12 ! glimagesink 2019-09-11 10:49:10 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: msdk: don't cache mfxFrameAllocResponse pointer Otherwise it is possible that different wrappers share the same mfxFrameAllocResponse pointer, so instead of caching the pointer, we may cache the content of mfxFrameAllocResponse 2019-07-02 15:21:24 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkvc1dec.c: msdkdec: postpone surface free for VC1 For a skipped frame in VC1, MSDK returns the mfx surface of the reference frame, so we have to make sure the corresponding surface for the reference frame is not freed. In this fix, we postpone surface free because we don't know whether a surface is referenced Before this fix, the error is like as below: New clock: GstSystemClock 0:00:00.181793130 23098 0x55f8a9d622d0 ERROR msdkdec gstmsdkdec.c:622:gst_msdkdec_finish_task: Couldn't find the cached MSDK surface Sample pipeline: gst-launch-1.0 filesrc location=input_has_skipped_frame.wmv ! asfdemux ! vc1parse ! msdkvc1dec ! glimagesink 2019-09-17 14:42:51 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: release the surface if this surface is not in use If the surface is not in use, we may release it even if GST_FLOW_OK is going to be returned, which may avoid the issue of failing to get surface available This fixes the regression caused by commit c05acf4 2019-08-01 13:48:54 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: adjust the stride align GstAllocationParams::align is set to 31 in msdkdec/msdken/msdkvpp, hence the stride align should be greater than or equal to 31, otherwise it will result in issue https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/861 (msdk: "GStreamer-CRITICAL: gst_buffer_resize_range failed" SPAM), In addition, the stride should match the pitch alignment in the media driver, otherwise it will result in some issues when a buffer is shared between different elements, e.g. the NV12 issue mentioned in commit 3f2314a, which can be reproduced by `gst-launch-1.0 vidoetestsrc ! msdkvpp ! video/x-raw\(memory:DMABuf\),format=NV12 ! glimagesink` Fixed https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/861 2019-09-20 15:35:09 +0000 Marc Leeman * gst/rtp/gstrtpsink.c: * gst/rtp/gstrtpsrc.c: * gst/rtp/gstrtpsrc.h: * tests/check/elements/rtpsink.c: * tests/check/elements/rtpsrc.c: rtpmanagerbad: allow creation of elements at initialisation 2019-09-17 22:24:04 +1000 Matthew Waters * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkdownload.c: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkviewconvert.c: * gst-libs/gst/vulkan/gstvkcommandbuffer.c: * gst-libs/gst/vulkan/gstvkcommandbuffer.h: * gst-libs/gst/vulkan/gstvkcommandpool-private.h: * gst-libs/gst/vulkan/gstvkcommandpool.c: * gst-libs/gst/vulkan/gstvkcommandpool.h: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvktrash.c: * gst-libs/gst/vulkan/gstvktrash.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: * tests/check/libs/vkcommandpool.c: * tests/check/meson.build: vulkan: implement command buffer reuse Using a similar design for reference counting as GstBuffer/GstBufferPool. 2019-09-18 16:27:35 -0400 Nicolas Dufresne * gst/rist/gstristsrc.c: ristsrc: Fix comment about odd/even ports It is the RTP port that is even, and the RTCP port being +1 (hence odd). 2019-09-18 18:43:41 +0900 Seungha Yang * sys/d3d11/gstd3d11device.c: d3d11: Use g_cond_broadcast() to wake up waiting threads gst_d3d11_device_thread_add() can be called concurrently from different threads so the cond signal should reach to all waiting threads. 2019-09-16 15:29:26 +1000 Matthew Waters * ext/vulkan/gstvulkan.c: * ext/vulkan/meson.build: * ext/vulkan/vkdeviceprovider.c: * ext/vulkan/vkdeviceprovider.h: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: * tests/check/elements/vkdeviceprovider.c: * tests/check/meson.build: vulkan: add device provider implementation 2019-09-16 13:00:34 +1000 Matthew Waters * ext/vulkan/vksink.c: vulkansink: attempt a context query for a device 2019-09-16 12:59:08 +1000 Matthew Waters * ext/vulkan/vkdownload.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvkdebug.c: * gst-libs/gst/vulkan/gstvkdebug.h: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkmemory.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.c: * gst-libs/gst/vulkan/gstvkphysicaldevice.h: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: * tests/check/libs/vkdevice.c: * tests/check/libs/vkmemory.c: vulkan: split physical device from logical device 2019-09-16 11:24:13 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdebug-private.h: * gst-libs/gst/vulkan/gstvkdebug.c: * gst-libs/gst/vulkan/gstvkdebug.h: * gst-libs/gst/vulkan/gstvkdevice.c: vulkan: expose various flags to string methods 2019-09-16 11:21:55 +1000 Matthew Waters * ext/vulkan/vkdownload.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vksink.c: * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkinstance.h: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkqueue.h: * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/gstvkutils.h: vulkan: only pass the device/instance/display in to *_handle_*() functions We don't need to change the pointer value in these functions. 2019-09-16 10:52:53 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: msdkenc: remove unneeded label 2019-09-09 15:28:32 +0200 VaL Doroshchuk * gst/camerabin2/gstviewfinderbin.c: GstViewfinderBin: Fix typo in videoscale's name element If user's video sink has been changed, it is unable to fetch videoscale element by name and link to the video sink. 2019-08-26 16:48:13 +1000 Matthew Waters * sys/applemedia/videotexturecache.h: applemedia/videocache: remove unimplemented/used upload function 2019-09-11 23:09:35 +1000 Matthew Waters * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: vulkan/window/ios: fix race on window startup 1. The iOS create_surface implementation needs to call out to the main thread to create the window (UIKit requirement) 2. get_surface() can be called and will attempt to create the VkSurface from an invalid view/layer. Also pass the layer for MoltenVK so we don't get pesky 'UIView function not called on main thread' warnings. 2019-09-12 00:10:37 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdisplay.c: vulkan: create the macos/ios-specific displays 2019-09-12 15:29:05 +1000 Matthew Waters * gst-libs/gst/vulkan/meson.build: vulkan: install public gstvkdebug.h header 2019-09-11 15:06:58 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: set pointer to NULL to avoid freeing an used surface The surface should be cached in the surface list when GST_FLOW_OK is going to be returned This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1051 2019-08-21 12:45:37 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: free mfx frames to avoid memory leaks in encoder and vpp 2019-09-10 14:44:19 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: unref the caps to avoid memory leaks 2019-08-29 09:31:22 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: free msdk surfaces to avoid memory leak 2019-08-21 12:27:57 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: unref buffer pools Unref the pools first in caps re-negotiation to avoid memory leak 2019-08-29 15:28:36 +0800 Haihao Xiang * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: msdk: fix memory leaks in msdk allocators 2019-09-05 09:05:10 +0800 Fuwei Tang * sys/msdk/gstmsdkenc.c: msdkenc: work-around to avoid zero fps in MediaSDK structure 2019-09-09 13:42:56 +0800 Fuwei Tang * sys/msdk/gstmsdkh265enc.c: msdkenc: add an extra surface for hevc encoding For some hevc 10bit 4K encoding cases, the encoding process may be slow, and MediaSDK surface can't be released in time before one other available surface is needed. So add an extra surface for hevc encoding to avoid this issue. 2019-08-12 19:42:12 +1000 Matthew Waters * ext/webrtc/gstwebrtcstats.c: webrtc/stats: redo considering internal sources Internal sources seem to be rtp streams we are sending whereas non-internal sources are the rtp streams we are receiving. Redo the statistics with that in mind. 2019-09-12 09:33:44 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdebug.c: vulkan: fix build with older API headers The protected memory flags were only added later as was the multi-instance flag. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1081 2019-09-06 12:52:37 +0900 Seungha Yang * tests/examples/meson.build: * tests/examples/nvcodec/meson.build: * tests/examples/nvcodec/nvcodec-kb.c: * tests/examples/nvcodec/nvcodec.c: * tests/examples/nvcodec/nvcodec.h: examples: nvcodec: Add example for runtime configuration change with nvcodec Add new example for testing dynamic change of configuration suce as resolution and properties. 2019-08-30 21:35:44 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Early terminate handle_frame if the last flow was not GST_FLOW_OK If the last flow was not GST_FLOW_OK, the encoding thread is not running and there is nothing to pop from GAsyncQueue (this causes deadlock). To prevent deadlock, just return the handle_frame without further encoding process if the last flow was not GST_FLOW_OK. Note that the last flow will be cleared per FLUSH_STOP and STREAM_START event. 2019-08-20 22:07:30 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: nvenc: Add support VUYA format The addition is very simple. Map NV_ENC_BUFFER_FORMAT_AYUV format to GST_VIDEO_FORMAT_VUYA and add a condition for the VUYA format. 2019-08-28 23:46:44 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Add support for mpeg4 video decoding with codec_data Decoder should handle codec_data of mpeg4 video which includes essential config data. 2019-09-11 14:56:00 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Reduce the number of pre-allocated device memory The hard-coded upper bound 32 (or 48 depending on resolution) might waste GPU memory and high resolution encoding causes OUT-OF-MEMORY allocation error quite easily. This commit calculates the number of required pre-allocated device memory based on encoding options and it can reduce the amount of device memory used by nvenc. 2019-09-11 19:24:50 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdebug-private.h: * gst-libs/gst/vulkan/gstvkdebug.c: * gst-libs/gst/vulkan/gstvkdebug.h: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkmemory.c: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: vulkan: dump most of the device information Dump anything that can be queried using the physical device like features, limits, queue properties, memory properties. 2019-09-11 15:16:45 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Update plugin description and fix typo Use consistent description with nvenc, and fix typo s/devide/device/g 2019-08-18 17:31:53 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: nvenc: Adjust DTS when bframe is enabled NVDEC driver always uses input timestamp without adjustment even if bframe encoding was enabled. So DTS can be larger than PTS when bframe was enabled. To ensure PTS >= DTS, we should adjust the timestamp manually based on the PTS difference between the first encoded frame and the second one. That's also the maximum PTS/DTS difference. 2019-09-03 19:46:09 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: nvenc: Add qp-{min,max,const}-{i,p,b} properties This new properties allows more detailed target QP value setting 2019-09-03 21:22:08 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: nvenc: Add properties to support bframe encoding if device supports it Note that bframe encoding capability varies with GPU architecture 2019-09-02 14:13:26 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: nvenc: Refactoring internal buffer pool structure To support rc-lookahead and bframe encoding, nvenc needs one more staging queue, because NvEncEncodePicture can return NV_ENC_ERR_NEED_MORE_INPUT but which was not considered so far. As documented by NVENC programming guide, pending buffers should wait other inputs until NvEncEncodePicture returns success. New encoding flow is - Submit raw picture buffer to encoder with NvEncEncodePicture - The submitted input/output buffer pair will be queued to pending_queue - If NvEncEncodePicture returned success, then move all pair in pending_queue to final stage - Otherwise, wait more input raw pictures. Another change is dropping NV_ENC_LOCK_INPUT_BUFFER usage. So now nvenc always uses CUDA memory input buffer. As a result, both opengl and system memory handling are unified. 2019-07-28 15:41:07 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Remove pointless iteration and cleanup some code * The number of iteration is always one so the iteration is useless and that makes code complicated. * Also defining named structure can code mroe readable. * g_free is null safe 2019-09-03 21:33:15 +0900 Seungha Yang nvenc: Add more rate-control options New rate-control modes are introduced (if device can support) * cbr-ld-hr: CBR low-delay high quality * cbr-hq: CBR high quality * vbr-hq: VBR high quality Also, various configurable rate-control related properties are added. 2019-09-03 21:28:44 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh264enc.h: * sys/nvcodec/gstnvh265enc.c: * sys/nvcodec/gstnvh265enc.h: nvenc: Add support for weighted prediction option Note that this property will be exposed only if the device supports the weighted prediction. 2019-07-26 16:46:30 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh264enc.h: * sys/nvcodec/gstnvh265enc.c: * sys/nvcodec/gstnvh265enc.h: nvenc: Add property for AUD insertion Make AUD insertion configurable option 2019-09-03 18:46:30 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh264enc.h: * sys/nvcodec/gstnvh265enc.c: * sys/nvcodec/gstnvh265enc.h: nvenc: Refactor class hierarchy to handle device capability dependent options Introducing new dynamic class between GstNvBaseEncClass and each subclass to be able to access device specific properties and capabilities from each subclass implementation side. 2019-09-11 02:12:55 +0200 Mathieu Duponchelle * sys/msdk/meson.build: msdk: actually use the include dir we compute 2019-09-10 23:13:17 +0000 Marc Leeman * sys/nvcodec/gstnvdec.c: nvcodec: minor spell corrects in log messages 2019-08-26 14:54:13 +0900 Seungha Yang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkvp9dec.c: * sys/msdk/gstmsdkvp9enc.c: * sys/msdk/msdk.h: msdk: Remove all DMABuf caps features on Windows Add new macro for sink/src pad template to ensure no DMABuf caps features are exposed on Windows. Some DMABuf caps features were not handled by the commit 9ec62418c31cab4072bf173f279234e36eeec596 2019-09-04 13:30:37 +0900 Seungha Yang * sys/msdk/gstmsdkdec.c: msdkdec: Do not use video memory on Windows Like msdkenc, do not use video memory by default on Windows. 2019-09-04 13:18:38 +0900 Seungha Yang * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: msdk: Allow video and system memory share among buffers gst_buffer_make_writable() requires exclusive reference to the GstMemory so the _make_writable() for the msdk buffer will result to fallback system memory copy, because the msdk memory were initialized with GST_MEMORY_FLAG_NO_SHARE flag. Note that, disable sharing GstMemory brings high overhead but actually the msdk memory objects can be shared over multiple buffers. If the memory is not shareable, newly added GstAllocator::mem_copy will create copied msdk memory. 2019-08-08 11:27:19 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: remove the requirement on profile Sometimes a HEVC/H265 stream doesn't have a valid profile but MSDK can handle this stream. Like vaapih265dec, msdkh265dec may advertise the sink caps without profile 2019-09-08 21:25:44 +0200 Mark Nauwelaerts * ext/wayland/gstwaylandsink.c: wayland: gracefully handle unknown formats 2019-09-06 22:21:50 +0900 Wonchul Lee * ext/aom/gstav1enc.c: av1enc: change cpu-used range upto 5 The speed 6, 7 and 8 has been removed because it's not yet tuned correctly. https://aomedia.googlesource.com/aom/+/7ffbf92030baf6886c2486574cca16d60499bbb8 2019-09-04 12:54:17 +0300 Askar Safin * gst-libs/gst/player/gstplayer.c: gst-player: fix bug with changing playback direction Fix gst_event_new_seek call in gst-libs/gst/player/gstplayer.c If rate >= 0.0, then previous code doesn't set end of segment. So, the end of segment will be in place where previous seek put it. This is not neccesary end of media file (in case of reverse playback). So if we play video backward for some time and then switched to forward playing, we will get EOS somewhere in the middle of media file. This commit always sets end of segment, thus fixing this bug 2019-05-24 16:48:45 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: output the decoded frame immediately if decoded order is required DecodedOrder was deprecated in msdk-2017 version, but some customers still use this for low-latency streaming of non-b-frame encoded streams, which needs to output the frame at once 2019-09-02 09:22:10 +0800 Jeffy Chen * ext/wayland/wlwindow.c: Revert "waylandsink: Don't create throwaway empty regions" This reverts commit 68fa80e83118a7a2be037eb235e5d211912dee0e. Some wayland servers, especially weston, only expect empty input region as a request to disable input. Signed-off-by: Jeffy Chen 2019-08-21 06:35:30 -0500 Matthew Waters * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Drop late buffers Asking decklink to render audio data seems to be based entirely on the sample counts which completely disregards the timestamps we pass to decklink. As a result, we need to explicitly check for late buffers and drop them ourselves. 2019-08-31 18:19:41 +0900 Seungha Yang * tests/check/elements/nvenc.c: tests: nvenc: Test runtime resolution change 2019-08-31 17:34:13 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: nvenc: Add support runtime resolution change freely Do not restrict allowed maximum resolution depending on the initial resolution. If new resolution is larger than previous one, just re-init encode session. 2019-08-27 17:04:50 +0800 Wangfei * tests/check/libs/h265parser.c: tests: h265parser: Add test parsing range extension in PPS 2019-08-19 10:08:46 +0800 Wangfei * gst-libs/gst/codecparsers/gsth265parser.c: h265parse lib: fix missing condition when parse PPS Follow h265 spec(04/2015), log2_max_transform_skip_block_size_minus2 should get with condition when transform_skip_enabled_flag is 1. 2019-08-28 17:26:00 -0700 Sam Gigliotti * ext/webrtc/gstwebrtcstats.c: webrtcbin: Fixed memory leak in gstwebrtcstats The function _get_stats_from_ice_transport returns a string which must be freed by the caller. However, _get_stats_from_dtls_transport was ignoring the return value from this function, resulting in a leak. Ran this with valgrind. Before this fix there was a leak of 40 bytes each time this was called. After there was no leak. 2019-08-30 14:15:43 +1000 Matthew Waters * sys/decklink/gstdecklink.cpp: decklink: fix macos werror build ../sys/decklink/gstdecklink.cpp:1703:7: error: format specifies type 'long' but the argument has type 'int64_t' (aka 'long long') [-Werror,-Wformat] persistent_id); ^~~~~~~~~~~~~~ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:1070:87: note: expanded from macro 'GST_DEBUG' #define GST_DEBUG(...) GST_CAT_LEVEL_LOG (GST_CAT_DEFAULT, GST_LEVEL_DEBUG, NULL, __VA_ARGS__) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~ /Library/Frameworks/GStreamer.framework/Versions/1.0/include/gstreamer-1.0/gst/gstinfo.h:646:31: note: expanded from macro 'GST_CAT_LEVEL_LOG' (GObject *) (object), __VA_ARGS__); \ ^~~~~~~~~~~ 2019-08-29 17:19:27 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Check flow return of the only current handle_frame() to fix seeking issue Due to uncleared last flow, decoding after seek was never possible (last_ret == GST_FLOW_FLUSHING). nvdec dose not need to keep track of the previous flow return, and actually the interest is data/even flow of the current handle_frame(). 2019-08-29 20:20:14 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Fallback to system memory if OpenGL context could not support PBO memory If the environment could not support OpenGL PBO memory, nvdec will do negotiation with system memory as fallback. 2019-08-09 20:19:38 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Add support dynamic output format change Implementing ::negotiate() method to support runtime output format change. If downstream was reconfigured, baseclass will invoke ::negotiate() method, and nvdec should update output memory type depending on downstream caps. 2019-08-09 18:47:14 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Re-negotiate whenever output format is changed Input stream might be silently changed without ::set_format() call. Since nvdec has internal parser, nvdec element can figure out the format change by itself. 2019-08-09 15:27:54 +0900 Seungha Yang * tests/check/elements/nvdec.c: * tests/check/meson.build: tests: nvdec: Add test runtime downstream reconfigure Add test case for output format change 2019-08-08 10:59:04 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Add support 4:4:4 and 4:2:0 12bit decoding Depending on GPU architecture, HEVC decoder can support 4:4:4 format up to 12 bitdepth. This commit covers VP9 4:2:0 12 bits decoding also. 2019-08-08 14:16:07 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: nvenc: Add support for old drivers which could not understand SDK version 9.0 Add helper functions to support old drivers with our previous SDK version 8.1 2019-08-08 14:00:08 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: nvenc: Use consistent snake case convention 2019-08-07 23:03:15 +0900 Seungha Yang * sys/nvcodec/cuviddec.h: * sys/nvcodec/nvEncodeAPI.h: * sys/nvcodec/nvcuvid.h: nvcodec: Bump SDK header to version 9.0 The latest Turing architecture (e.g., RTX serise) can support decoding HEVC 4:4:4 format up to 12bits. 2019-08-02 01:37:22 +0900 Yeongjin Jeong * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.c: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: vulkan: Fix some confusing typos Seems to have been copy pasted from around gl element 2019-08-09 20:13:59 +0900 Yeongjin Jeong * ext/vulkan/vkdownload.c: * ext/vulkan/vksink.c: * ext/vulkan/vkupload.c: vulkan: Don't dereference null pointer when printing error When printing error message because the function failed, the GError variable may not be used and it can be NULL. 2019-08-09 18:43:06 +0900 Yeongjin Jeong * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: vulkan/xcb: Don't try to create xcb window with non-xcb display Non-xcb display does not have a xcb_connection and trying to create xcb window with wild pointer can cause segfault. 2019-08-18 14:09:16 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Port to GstCudaGraphicsResource Register openGL resource only once per memory. Also if upstream provides the registered information, reuse the information instead of doing it again. This can improve performance dramatically depending on system since the resource registration might cause high overhead. 2019-08-18 13:27:38 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Port to GstCudaGraphicsResource Make it possible to share registered graphics resource among nvidia encoders and decoders. 2019-08-17 17:45:44 +0900 Seungha Yang * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstcudautils.c: * sys/nvcodec/gstcudautils.h: * sys/nvcodec/stub/cuda.h: cudautils: Add GstCudaGraphicsResource structure for better openGL interoperability Introduce GstCudaGraphicsResource structure to represent registered CUDA graphics resources and to enable sharing the information among nvdec and nvenc. This structure can reduce the number of resource registration which cause high overhead. 2019-08-17 14:46:00 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Port to openGL PBO memory For openGL interoperability, nvdec uses cuGraphicsGLRegisterImage API which is to register openGL texture image. Meanwhile nvenc uses cuGraphicsGLRegisterBuffer API to registure openGL buffer object. That means two kinds of graphics resources are registered per memory when nvdec/nvenc are configured at the same time. The graphics resource registration brings possibly high overhead so the registration should be performed only once per resource from optimization point of view. 2019-08-17 14:03:57 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Filter openGL API version to use To ensure PBO buffer, openGL API >= 3 is required. 2019-08-21 16:46:36 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: msdk: avoid reading data from freed memory Both g_list_delete_link and g_list_remove remove an element and free it, so l->next is invalid (catched by valgrind) after calling g_list_delete_link or g_list_remove 2019-08-22 10:46:12 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: doc: Update plugin cache 2015-12-03 12:32:05 +0100 Saunier Thibault * data/meson.build: * data/targets/device/dvd.gep: * data/targets/file-extension/avi.gep: * data/targets/file-extension/flv.gep: * data/targets/file-extension/mkv.gep: * data/targets/file-extension/mp3.gep: * data/targets/file-extension/mp4.gep: * data/targets/file-extension/oga.gep: * data/targets/file-extension/ogv.gep: * data/targets/file-extension/webm.gep: * data/targets/online-service/youtube.gep: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/transcoder/index.md: * docs/libs/transcoder/sitemap.txt: * docs/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/transcoder/gsttranscoder.c: * gst-libs/gst/transcoder/gsttranscoder.h: * gst-libs/gst/transcoder/meson.build: * gst-libs/gst/transcoder/transcoder-prelude.h: * gst/meson.build: * gst/transcode/gst-cpu-throttling-clock.c: * gst/transcode/gst-cpu-throttling-clock.h: * gst/transcode/gsttranscodebin.c: * gst/transcode/gsttranscoding.h: * gst/transcode/gsturitranscodebin.c: * gst/transcode/meson.build: * meson.build: * meson_options.txt: * pkgconfig/gstreamer-bad-transcoder-uninstalled.pc.in: * pkgconfig/gstreamer-bad-transcoder.pc.in: * pkgconfig/meson.build: * tools/gst-transcoder.c: * tools/meson.build: * tools/utils.c: * tools/utils.h: Import GstTranscoder 2019-08-23 17:07:43 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: vulkan/swapper: add a couple of missing g_clear_error()'s 2019-08-23 17:04:42 +1000 Matthew Waters * gst-libs/gst/vulkan/meson.build: vulkan/build: conditionally depend on Vulkan-1.0.gir Vulkan-1.0.gir is new in gobject-introspection >= 1.61.1 2019-08-23 17:03:20 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdisplay.c: vulkandisplay: silence an unused but set error with no enable winsys implementations 2019-08-23 14:20:59 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: vulkan/swapper: check queue present return later During resizes, the VkQueuePresent can return OUT_OF_DATE and if a buffer is displayed returning OUT_OF_DATE it would error out and stop the pipeline. We already have a explicit check for OUT_OF_DATE and the same general error check in the statements following so just use that code. 2019-08-23 14:19:22 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvkwindow.c: vulkan/swapper: destroy the surface in finalize Fixes a leak of the VkSurface object. 2019-08-23 14:17:02 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: vulkan/swapper: set some values to NULL in error conditions So that they are not double free()-ed. 2019-08-23 14:14:39 +1000 Matthew Waters * ext/vulkan/vkcolorconvert.c: vulkancolorconvert: explicitly initalize swizzle arrays Fixes uninitialized access of the indexed values larger than the number of planes in the video format. 2019-08-23 14:13:16 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkerror.c: vulkan/error: add the error value in hex and decimal Provides more information for what may be an 'Unknown' error. 2019-08-23 14:11:16 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: vulkanswapper: disconnect window signals before any internal resources Otherwise, it's racy whether the necessary resources are available in the signal callbacks on destruction. 2019-08-19 12:30:30 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: don't return GST_FLOW_ERROR for MFX_WRN_INCOMPATIBLE_VIDEO_PARAM Returning MFX_WRN_INCOMPATIBLE_VIDEO_PARAM means MSDK detects some incompatible parameters but it is resolved, and we may not regard MFX_WRN_INCOMPATIBLE_VIDEO_PARAM as a fatal error. In this fix, GST_FLOW_OK is returned but with a warning message so that a pipeline may run to the end. 2019-08-28 16:11:12 +1000 Matthew Waters * sys/androidmedia/gstahcsrc.c: ahcsrc: #define GST_USE_UNSTABLE_API for phtography inteface Fixes werror build: In file included from ../sys/androidmedia/gstahcsrc.c:70: ../gst-libs/gst/interfaces/photography.h:27:2: error: "The GstPhotography interface is unstable API and may change in future." [-Werror,-W#warnings] #warning "The GstPhotography interface is unstable API and may change in future." ^ ../gst-libs/gst/interfaces/photography.h:28:2: error: "You can define GST_USE_UNSTABLE_API to avoid this warning." [-Werror,-W#warnings] #warning "You can define GST_USE_UNSTABLE_API to avoid this warning." ^ 2019-08-27 12:05:10 +1000 Matthew Waters * ext/mpeg2enc/meson.build: mpeg2enc: fix werror build with clang /usr/include/mjpegtools/mpeg2enc/ontheflyratectlpass1.hh:1:9: error: '_ONTHEFLYRATECTLPASS1_HH' is used as a header guard here, followed by #define of a different macro [-Werror,-Wheader-guard] #ifndef _ONTHEFLYRATECTLPASS1_HH ^~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mjpegtools/mpeg2enc/ontheflyratectlpass1.hh:2:9: note: '_ONTHELFYRATECTLPASS1_HH' is defined here; did you mean '_ONTHEFLYRATECTLPASS1_HH'? #define _ONTHELFYRATECTLPASS1_HH ^~~~~~~~~~~~~~~~~~~~~~~~ _ONTHEFLYRATECTLPASS1_HH In file included from ../subprojects/gst-plugins-bad/ext/mpeg2enc/gstmpeg2encoder.cc:31: /usr/include/mjpegtools/mpeg2enc/ontheflyratectlpass2.hh:1:9: error: '_ONTHEFLYRATECTLPASS2_HH' is used as a header guard here, followed by #define of a different macro [-Werror,-Wheader-guard] #ifndef _ONTHEFLYRATECTLPASS2_HH ^~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/mjpegtools/mpeg2enc/ontheflyratectlpass2.hh:2:9: note: '_ONTHELFYRATECTLPASS2_HH' is defined here; did you mean '_ONTHEFLYRATECTLPASS2_HH'? #define _ONTHELFYRATECTLPASS2_HH ^~~~~~~~~~~~~~~~~~~~~~~~ _ONTHEFLYRATECTLPASS2_HH /usr/include/mjpegtools/mpeg2enc/encoderparams.hh:82:1: error: struct 'RateCtl' was previously declared as a class; this is valid, but may result in linker errors under the Microsoft C++ ABI [-Werror,-Wmismatched-tags] struct RateCtl; ^ /usr/include/mjpegtools/mpeg2enc/ratectl.hh:50:7: note: previous use is here class RateCtl ^ /usr/include/mjpegtools/mpeg2enc/encoderparams.hh:82:1: note: did you mean class here? struct RateCtl; ^~~~~~ class 2019-08-26 22:19:13 +1000 Matthew Waters * sys/uvch264/gstuvch264deviceprovider.c: * sys/uvch264/gstuvch264deviceprovider.h: uvch264: fix werror build with clang ../subprojects/gst-plugins-bad/sys/uvch264/gstuvch264deviceprovider.c:48:1: warning: unused function 'GST__UVC_H264_DEVICE' [-Wunused-function] G_DECLARE_FINAL_TYPE (GstUvcH264Device, gst_uvc_h264_device, GST_, ^ /usr/include/glib-2.0/gobject/gtype.h:1405:33: note: expanded from macro 'G_DECLARE_FINAL_TYPE' static inline ModuleObjName * MODULE##_##OBJ_NAME (gpointer ptr) { \ ^ :75:1: note: expanded from here GST__UVC_H264_DEVICE ^ ../subprojects/gst-plugins-bad/sys/uvch264/gstuvch264deviceprovider.c:48:1: warning: unused function 'GST__IS_UVC_H264_DEVICE' [-Wunused-function] /usr/include/glib-2.0/gobject/gtype.h:1407:26: note: expanded from macro 'G_DECLARE_FINAL_TYPE' static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) { \ ^ :78:1: note: expanded from here GST__IS_UVC_H264_DEVICE ^ ../subprojects/gst-plugins-bad/sys/uvch264/gstuvch264deviceprovider.c:139:1: warning: unused function 'GST_UVC_H264_DEVICE_PROVIDER' [-Wunused-function] G_DECLARE_FINAL_TYPE (GstUvcH264DeviceProvider, gst_uvc_h264_device_provider, GST, UVC_H264_DEVICE_PROVIDER, GstDeviceProvider) ^ /usr/include/glib-2.0/gobject/gtype.h:1405:33: note: expanded from macro 'G_DECLARE_FINAL_TYPE' static inline ModuleObjName * MODULE##_##OBJ_NAME (gpointer ptr) { \ ^ :137:1: note: expanded from here GST_UVC_H264_DEVICE_PROVIDER ^ ../subprojects/gst-plugins-bad/sys/uvch264/gstuvch264deviceprovider.c:139:1: warning: unused function 'GST_IS_UVC_H264_DEVICE_PROVIDER' [-Wunused-function] /usr/include/glib-2.0/gobject/gtype.h:1407:26: note: expanded from macro 'G_DECLARE_FINAL_TYPE' static inline gboolean MODULE##_IS_##OBJ_NAME (gpointer ptr) { \ ^ :140:1: note: expanded from here GST_IS_UVC_H264_DEVICE_PROVIDER ^ 2019-08-26 22:17:57 +1000 Matthew Waters * ext/aom/gstav1enc.c: av1enc: fix werror build with clang ../subprojects/gst-plugins-bad/ext/aom/gstav1enc.c:415:34: warning: implicit conversion from enumeration type 'GstAV1EncEndUsageMode' to different enumeration type 'enum aom_rc_mode' [-Wenum-conversion] av1enc->aom_cfg.rc_end_usage = DEFAULT_END_USAGE; ~ ^~~~~~~~~~~~~~~~~ ../subprojects/gst-plugins-bad/ext/aom/gstav1enc.c:162:41: note: expanded from macro 'DEFAULT_END_USAGE' #define DEFAULT_END_USAGE GST_AV1_ENC_END_USAGE_VBR ^~~~~~~~~~~~~~~~~~~~~~~~~ 2019-08-23 18:40:49 -0400 Olivier Crête * ext/srt/gstsrtobject.c: srt: Set latency property on SRT socket 2019-08-23 17:54:49 -0400 Olivier Crête * ext/srt/gstsrtobject.c: srt: Add sender side statistics 2019-08-23 16:21:47 -0400 Olivier Crête * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: srtobject: Remove pointless GMainLoop Just use srt's blocking epoll function and fix locking while we're at it. 2019-08-13 22:54:42 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapidevice.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Move to CoInitializeEx for COM initialization CoInitialize is not allowed when targeting UWP and causes a Windows Application Certification Kit (WACK) error. 2019-08-23 17:55:00 -0400 Olivier Crête * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Make latency configurable Allows for "low latency" mpeg-ts mode which is not standard, but somewhat common. For this to work the sender has to put timestamps at a higher frequency than the spec requires. 2019-08-26 14:36:35 +0530 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: fix colorimetry in src caps if sink caps has no structure We do want to include the colorimetry in the src caps if the sink caps doesn't have any structure associated. 2019-08-26 14:36:35 +0530 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: h264parse: fix colorimetry in src caps if sink caps has no structure We do want to include the colorimetry in the src caps if the sink caps doesn't have any structure associated. 2019-08-26 14:53:39 -0400 Xavier Claessens * sys/androidmedia/gstamc.c: amc: Do not skip decoders that have no profile levels 2019-05-08 11:06:40 -0400 Aaron Boxer * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: add support for SEI registered user data 2019-05-08 11:05:40 -0400 Aaron Boxer * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: use gstvideoparseutils to handle user data 2019-05-08 11:04:49 -0400 Aaron Boxer * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: use gstvideoparseutils to handle user data 2019-05-08 11:02:35 -0400 Aaron Boxer * gst/videoparsers/Makefile.am: * gst/videoparsers/gstvideoparseutils.c: * gst/videoparsers/gstvideoparseutils.h: * gst/videoparsers/meson.build: videoparseutils: add new parser class 2019-08-23 09:51:20 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdkvpp: support video-direction property video-direction property is common property in gstreamer. In addition, both mirroring & rotation properties are marked as deprecated, video-direction will override mirroring & rotation properties when they are set explicitly Fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1058 2019-08-21 16:44:39 +0800 Yan Wang * sys/msdk/gstmsdkdec.c: msdkdec: Fix buffer allocation based on frame. gst_msdkdec_finish_task() may release all frames in GstVideoDecoder object. In this case, allocate_output_buffer() cannot get the oldest frame to allocate buffer. So gst_msdkdec_handle_frame() should return GST_FLOW_OK for letting gst_video_decoder_decode_frame() to send a new frame for decoding. Fixes #664. Fixes #665. 2019-08-08 11:54:45 +0900 Shinya Saito * ext/wayland/gstwaylandsink.c: waylandsink: Fix return type of prototype of show_frame() 2019-08-24 12:18:20 +0900 Yeongjin Jeong * sys/msdk/gstmsdkallocator_libva.c: msdk: Don't use VA_RT_FORMAT_YUV420_10 if it's undefined ../sys/msdk/gstmsdkallocator_libva.c:99:16: error: ‘VA_RT_FORMAT_YUV420_10’ The minimum required version seems to VA_API_VERSION >= 1.2.0 2019-08-23 19:56:35 +0200 Mathieu Duponchelle * ext/chromaprint/gstchromaprint.c: * ext/directfb/dfbvideosink.c: * ext/fluidsynth/gstfluiddec.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkatetiger.c: * ext/ladspa/gstladspa.c: * ext/lv2/gstlv2.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/openmpt/gstopenmptdec.c: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/wayland/gstwaylandsink.c: * ext/webrtc/webrtcdatachannel.c: * ext/wildmidi/gstwildmididec.c: * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/rtcsessiondescription.c: * gst-libs/gst/webrtc/rtcsessiondescription.h: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtptransceiver.c: * gst-libs/gst/webrtc/webrtc_fwd.h: * gst/accurip/gstaccurip.c: * gst/festival/gstfestival.c: * gst/pcapparse/gstpcapparse.c: docstrings: port ulinks to markdown links 2019-08-20 12:44:44 +0200 gla * sys/dshowsrcwrapper/gstdshow.cpp: dshowsrcwrapper: fix regression on device selection Do not take device_name if a device has been specified. Do not take device_index into account if a device or a device name has been specified. 2019-08-23 17:08:20 +1000 Matthew Waters * docs/meson.build: meson: Don't generate doc cache when no plugins are enabled Fixes gst-build with -Dauto-features=disabled -Dbad=enabled 2019-08-21 10:46:43 -0700 U. Artie Eoff * sys/msdk/gstmsdkvpputil.c: msdk: vpp: rotate output frame When vpp rotation is 90 or 270, the output frame should be rotated, too. Example: gst-launch-1.0 -vf videotestsrc \ ! video/x-raw,width=720,height=480 \ ! msdkvpp rotation=90 ! vaapisink 2019-08-22 17:23:39 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdisplay.c: vulkandisplay: Also free the GSource NULL checking the main_context does not help as we've just destroyed the GMainContext and set that field to NULL, not to mention it's unnecessary. Fixes a leak of display's GSource. 2019-08-22 17:02:07 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdisplay.c: vulkandisplay: free the list of windows on destruction They may not have had an explicit removal from the subclass. 2019-08-22 14:57:02 +1000 Matthew Waters * ext/vulkan/vkfullscreenrender.c: vulkan/fullscreenrender: free the attachment descriptions Fixes a memory leak of the attachment descriptions we receive from the subclass. 2019-08-22 14:55:40 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdisplay.c: vulkandisplay: fix use-after-free with removal of window g_list_delete_link() free()'s the list node so any access after that is a use-after-free. 2019-08-22 14:54:30 +1000 Matthew Waters * gst-libs/gst/vulkan/xcb/xcb_event_source.c: vulkan/xcb: display->windows is a list of allocated GWeakRef Don't access them as plain GstVulkanWindow objects. 2019-08-22 11:48:11 +1000 Matthew Waters * ext/vulkan/vkviewconvert.c: vulkanviewconvert: perform a renegotiation on multiview mode/flag property changes Otherwise changing the output* properties have no effect until someone else performs a renegotiation. 2019-08-22 11:47:29 +1000 Matthew Waters * ext/vulkan/shaders/view_convert.frag: shaders/view-convert: remove some debugging colours Fixes left and right output modes. 2019-06-28 15:04:29 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: tsdemux: Limit the maximum PES payload size PES packets with size 0 are unbounded, and could therefore overflow the 32-bit size accumulator. Add a 32MB limit, which is larger than any PES packet should ever get. If one does, then output a 32MB chunk and continue. 2019-08-21 23:47:45 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Post error message if hlsdemux could not start decryption _decrypt_start() failure will lead to decryption failure eventually but catching it earlier if possible. The decrpytion start failure means that the hls plugin was built without crypto library or crypto library does not want to accept given key and IV. 2019-04-09 20:07:05 +0900 Seungha Yang * configure.ac: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/meson.build: hls: Make crypto dependency optional when hls-crypto is auto crypto libraries are not required for hlssink and hlssink2. Also, hlsdemux with nonencrypted stream can work without crpyto. Make an error only when users set "hls-crpyto" with non-auto option explicitly, but no crpyto library was found. 2019-08-17 13:58:33 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Always response QUERY_CONTEXT even if openGL is unavailable on the system nvdec can response for the CUDA context type query regardless of openGL availability. 2019-08-14 11:24:19 +0100 Thomas Coldrick * ext/wayland/meson.build: ext/wayland: Define libdrm_dep in meson.build 2019-08-16 11:07:44 -0400 Xavier Claessens * sys/androidmedia/jni/gstamcsurfacetexture-jni.c: amc: Print error when failing to register listener 2019-08-16 11:01:05 -0400 Xavier Claessens * sys/androidmedia/jni/gstamcsurface.c: amc: Do not use g_log() for criticals 2019-05-15 10:16:33 -0400 Xavier Claessens * sys/androidmedia/gstamcvideodec.c: amc: crop values are not mandatory in format Android documentation has example code how to compute width and height when crop values are present. https://developer.android.com/reference/android/media/MediaCodec#accessing-raw-video-bytebuffers-on-older-devices 2019-04-26 11:03:26 -0400 Xavier Claessens * sys/androidmedia/gstamcsurfacetexture.c: * sys/androidmedia/gstamcsurfacetexture.h: * sys/androidmedia/jni/gstamcsurfacetexture-jni.c: amc: Remove unused gst_amc_surface_texture_set_default_buffer_size() 2019-04-25 14:50:43 -0400 Xavier Claessens * sys/androidmedia/gstamcsurfacetexture.c: * sys/androidmedia/gstamcsurfacetexture.h: * sys/androidmedia/jni/gstamcsurfacetexture-jni.c: amc: Fix matrix constness in _get_transform_matrix() 2019-03-26 11:24:58 -0400 Xavier Claessens * sys/androidmedia/gstamc-codec.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/jni/gstamc-codec-jni.c: amc: Select between encoder/decoder at GstAmcCodec construct time Magical 0/1 values where passed to gst_amc_codec_configure() flags argument. It's more natural to have a boolean is gst_amc_codec_new(). 2018-11-13 13:16:34 -0500 Xavier Claessens * sys/androidmedia/gstamc-format.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/jni/gstamc-format-jni.c: amc: Remove gst_amc_format_contains_key() It is not needed, we can just try to get the key and ignore error. NdkMediaFormat doesn't have that method. 2018-11-12 14:02:37 -0500 Xavier Claessens * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-camera.h: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahcsrc.h: * sys/androidmedia/gstamc-codec.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcsurfacetexture.c: * sys/androidmedia/gstamcsurfacetexture.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: * sys/androidmedia/gstjniutils.h: * sys/androidmedia/jni/gstamc-codec-jni.c: * sys/androidmedia/jni/gstamcsurface.c: * sys/androidmedia/jni/gstamcsurface.h: * sys/androidmedia/jni/gstamcsurfacetexture-jni.c: * sys/androidmedia/jni/gstamcsurfacetexture-jni.h: * sys/androidmedia/meson.build: amc: Turn GstAmcSurfaceTexture into a base class with JNI implementation 2018-11-11 08:51:04 -0500 Xavier Claessens * sys/androidmedia/gstamc-codeclist.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/jni/gstamc-codeclist-jni.c: * sys/androidmedia/meson.build: amc: Create JNI wrapper for MediaCodecList There is no NdkMediaCodecList API yet, but it is still better to isolate JNI code. This will facilitate porting to a native API if Google ever release one. 2018-11-10 16:51:02 -0500 Xavier Claessens * sys/androidmedia/gstamc-codec.h: * sys/androidmedia/gstamc-format.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: * sys/androidmedia/jni/gstamc-codec-jni.c: * sys/androidmedia/jni/gstamc-format-jni.c: * sys/androidmedia/jni/gstamc-internal-jni.h: * sys/androidmedia/meson.build: amc: Move MediaCodec JNI wrapper into its own module This will facilitate adding another implementation based on NdkMediaCodec instead of JNI. 2019-08-20 14:21:17 +0530 Nirbheek Chauhan * ext/sctp/sctpassociation.c: sctp: Fix crash on free() when using the MSVC binaries On Windows, if libusrsctp and gstreamer are built with different C runtimes (CRT), we cannot free memory allocated inside libusrsctp with the `free()` function from gstreamer's CRT. `usrsctp_freedumpbuffer()` simply calls `free()`, but because of the way DLLs work on Windows, it will always call the free function from the correct CRT. 2019-08-14 22:08:34 +1000 Matthew Waters * gst/videoparsers/gsth264parse.c: h264parse: don't critical on VUI parameters > 2^31 A guint32 greater than 2^31 would be interpreted as negative by gst_util_uint64_scale_int() and critical. Use the 64-bit integer version of the function instead. 2019-08-13 10:07:38 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Fix possible null object unref gst_query_get_n_allocation_pools > 0 does not guarantee that the N th internal array has GstBufferPool object. So users should check the returned GstBufferPool object from gst_query_parse_nth_allocation_pool. 2019-08-19 13:22:20 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: nvcodec: Use default flag for CUDA stream creation Since nvdec/nvenc engine is running on default stream, non-default CUDA stream should be synchronized with default stream eventually. 2019-08-15 10:58:01 +0800 Wangfei * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/codecparsers/nalutils.h: h26[45]parser: Fix emulation prevention byte detection Add a separate epb_cache variable to the codecparser NalReader to detect Emulation Prevention Bytes separately from the main bit cache. This fixes problems where the existing logic can mistakenly detect multiple EPB with a sequence like: 0x00 0x00 0x03 0x00 0x03. In that case, the 5th byte should not be regarded as an EPB. 2019-08-18 22:51:18 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: nvenc: Use non default CUDA stream and async operation Use CUDA async operation if possible with non default CUDA stream 2019-08-18 22:07:38 +0900 Seungha Yang * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/stub/cuda.h: nvdec: Don't use default CUDA stream Async CUDA operation with default stream (NULL CUstream) is not much beneficial than blocking operation since all CUDA operations which belong to the CUDA context will be synchronized with the default stream's operation. Note that CUDA stream will share all resources of the corresponding CUDA context but which can help parallel operation similar to the relation between thread and process 2019-08-18 22:14:37 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Push/Pop CUDA context around library API call 2019-08-18 15:45:37 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Fix timestamp mismatch on draining frames The internal decoding state must be GST_NVDEC_STATE_PARSE before calling CuvidParseVideoData(). Otherwise, nvdec will be confused on decode callback as if the frame is decoding only frame and the input timestamp of corresponding frame will be ignored. Eventually one decoded frame will have non-increased PTS. 2019-08-08 16:54:32 -0400 Aaron Boxer * gst/mpegtsdemux/tsdemux.c: tsdemux: do not error if buffer size is invalid due to DISCONT Don't signal a pipeline error when processing incomplete j2pk PES packets that are too small. That can happen normally during a DISCONT and shouldn't shut down the whole pipeline 2019-08-16 15:22:26 +0200 Mathieu Duponchelle * ext/iqa/iqa.c: iqa: fix leak of map_meta.data 2019-08-16 19:32:39 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Do not access nvdec object from destroy function of qdata The destroy callback can be called just before the fìnalization of GstMiniObject. So the nvdec object might be destroyed already. Instead, store the GstCudaContext with increased ref to safely unregister the CUDA resource. 2019-08-15 17:49:12 +0900 Seungha Yang * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Fix crash on WinProc handler ... caused by null pointer dereference. The d3dvideosink object might not available yet on the handler. 2019-08-15 16:31:01 +0900 Seungha Yang * sys/d3d11/meson.build: meson: d3d11: Remove unnecessary dependency d3d11 never use any API of gstreamer-allocators-1.0 2019-08-15 16:20:26 +0900 Seungha Yang * sys/d3d11/gstd3d11videosink.c: * sys/d3d11/gstd3d11videosink.h: * sys/d3d11/gstd3d11window.c: * sys/d3d11/gstd3d11window.h: d3d11videosink: Take into account pixel aspect ratio Fix unexpected cropping with non 1:1 pixel aspect-ratio. The actual buffer width/height should be passed to gst_d3d11_window_render(), instead of the calculated resolution. The width/height values are parameters for copying d3d11 video memory. Also, aspect-ratio should be considered on resize callback to decide render rectangle size. 2019-08-14 10:13:52 +0300 Sebastian Dröge * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstcccombiner.h: cccombiner: Make use of new GstAggregator::negotiate() Simplifies the caps handling code considerably here and removes some spurious negotiation. 2019-08-14 11:21:30 -0400 Xavier Claessens * sys/androidmedia/gstamcvideodec.c: amc: Fix crash when a sync_meta survives its sink _amc_gl_free() could be called after the GstAmcVideoDec has been finalized, in the case downstream still has a ref to a buffer. 2019-08-09 02:41:51 -0400 Doug Nazar * ext/soundtouch/gstpitch.cc: pitch: Fix race between putSamples() and setting soundtouch parameters The various soundtouch set*() functions may cause buffer (re)allocations which interferes with inputting the audio data. 2019-08-09 14:49:24 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/gstvkwindow.h: * gst-libs/gst/vulkan/ios/gstvkios_utils.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: vulkan/ios: keep track of surface changes 2019-08-06 12:38:41 +1000 Matthew Waters * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: vulkan/ios: initialize the frame to the parent's 2019-08-13 23:24:41 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstatscmux.c: atscmux: fix AC-3 stream id According to ATSC A/52, Annex A, section 4.2: The value of stream_id in the PES header shall be 0xBD (indicating private_stream_1) 2019-08-13 17:50:33 +0300 OleksandrKvl * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: fix DISCONT flag setting DISCONT flag should be set only for first packet. Fixes #1047. 2019-08-13 12:10:54 +0200 David Gunzinger * ext/webrtc/gstwebrtcbin.c: webrtc: fix type of max-retransmits, make it work 2019-08-12 20:26:51 +0300 Sebastian Dröge * gst/mxf/mxfvc3.c: mxfdemux: Also allow picture essence element type 0x05 for VC-3 It's found like this in various files out there even if it does not conform to SMPTE 2019-4. 2019-08-06 17:42:15 +0200 Ignacio Casal Quinteiro * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: fix symbol redefinition build error 2019-07-31 11:49:55 -0400 Olivier Crête * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: Fix documentation 2019-07-30 12:54:04 -0400 Olivier Crête * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: Document stats-internal unit 2019-07-26 16:17:59 -0400 Olivier Crête * gst/rist/gstristsink.c: ristsink: Only accept RTCP APP packets with subtype==0 2019-07-09 16:50:43 -0400 Olivier Crête * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: Fix typo in the documentation 2019-07-09 16:50:14 -0400 Olivier Crête * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: Use the right parameters the signal 2019-08-09 12:52:31 +0900 Seungha Yang * ext/x265/gstx265enc.c: * ext/x265/gstx265enc.h: x265enc: Enhance profile setting with fixing infinite loop condition Don't fixate profile caps which will choose the first profile from list. Instead, store all profiles allowed by peer and try them until x265 can accept one of them. 2019-08-09 12:03:34 +0900 Seungha Yang * ext/x265/gstx265enc.c: x265enc: Fix deadlock on profile setting failure Don't miss unlock before returning 2019-08-09 11:39:43 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Add support YV12 format YV12 format is supported by Nvidia NVENC without manual conversion. So nvenc is exposing YV12 format at sinkpad template but there is some missing point around uploading the memory to GPU. 2019-08-08 18:47:05 +0000 Marc Leeman * gst/rtp/gstrtpsrc.c: rtp: do not overrule RtpInfo when non dynamic type When looking up the Rtp information, do not overwrite information already found with encoding-name by static information. 2019-08-08 20:06:41 +0900 Seungha Yang * sys/nvcodec/gstnvh265enc.c: * sys/nvcodec/gstnvh265enc.h: nvh265enc: Enable HDR related SEI nal insertion If upstream provides the HDR related information, create SEI message nals and pass them to NVENC. 2019-08-08 20:01:41 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Fix mastering display info parsing Fix mismatched Red Y coordinate value. 2019-08-08 04:54:38 +0800 Fuwei Tang * sys/msdk/gstmsdkdec.c: msdkdec: fix decoding issue for interlaced streams Currently h264parser produces a field or a frame for alignment=au for interlaced streams, but the flag MFX_BITSTREAM_COMPLETE_FRAME needs a complete frame or complementary field pair of data, this results in broken images being output. Some patches have been sent out to fix h264parser, but they are pending on some unfinished work. In order to make gstreamer-msdk decoding work properly for interlaced streams before h264parser is fixed, this flag will be removed temporarily and will be added back once h264parser if fixed. Related to: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/399 https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/228 2019-08-06 21:54:49 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvh265enc.c: nvh265enc: Add support YUV 444 10bits encoding Note that h264 encoder does not support the YUV 444 10bits format 2019-08-06 21:55:36 +0900 Seungha Yang * sys/nvcodec/gstnvenc.c: nvenc: Remove unnecessary constraint from YUV420 10bits capability decision YUV444 capability shouldn't be applied to YUV420 10 bits format 2019-08-07 12:58:40 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Retrieve mode of the ancillary data from the frame Instead of using the information we stored ourselves for the video frame itself. Which was also the wrong one: it was the mode from the property, not the autodetected one. This fixes vanc extraction with mode=auto 2019-08-07 12:58:03 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Also set the INTERLACED buffer flag on non-TFF buffers 2019-07-22 12:52:53 -0400 Aaron Boxer * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: no need to cache output state info 2019-08-07 11:49:43 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Fix broken RGB format support Add missing format check introduced by the commit 7de4dbdeb27561c00be94f8666b39dc661c59f7b 2019-01-29 21:57:44 +0100 Mathieu Duponchelle * gst/mpegtsdemux/tsdemux.c: tsdemux: always take the seek segment stop into account Even if an accurate seek was not requested, we should still respect the seek stop. 2018-09-20 01:05:52 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: tsdemux: Use gst_segment_do_seek() Remove some custom and incomplete seek calculation logic in favour of gst_segment_do_seek(), and short-circuit any actual seeking or recalculation if the position didn't change and just send an updated segment directly. This removes the custom seeking logic in favour of using standard core seek handling. 2018-09-20 01:07:34 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Keep the position increasing. Don't keep the segment position jumping back and forth based on stream DTS/PTS, only increase the position if the new value is larger than the old. 2018-08-31 22:43:46 +1000 Jan Schmidt * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: mpegts: Re-work segment tracking Add an output segment into the base class for sub-classes to use for their output segment, in a place where the base class can see it. 2019-08-06 13:50:28 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: nvcodec: Wrap CUDA API return check with gst_cuda_result The gst_cuda_result macro function is more helpful for debugging than previous cuda_OK because gst_cuda_result prints the function and line number. If the CUDA API return was not CUDA_SUCCESS, gst_cuda_result will print WARNING level debug message with error name, error text strings. 2019-08-06 13:44:20 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Port to GstCUDAContext ... and drop CUvideoctxlock usage. The CUvideoctxlock basically has the identical role of cuda context push/pop but nvdec specific way. Since we can share the CUDA context among encoders and decoders, use CUDA context directly for accessing GPU API. 2019-07-25 19:33:54 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: nvenc: Port to GstCudaContext ... and add support CUDA context sharing similar to glcontext sharing. Multiple CUDA context per GPU is not the best practice. The context sharing method is very similar to that of glcontext. The difference is that there can be multiple context object on a pipeline since the CUDA context is created per GPU id. For example, a pipeline has nvh264dec (uses GPU #0) and nvh264device0dec (uses GPU #1), then two CUDA context will propagated to all pipeline. 2018-11-23 22:01:41 +0900 Seungha Yang * sys/nvcodec/Makefile.am: * sys/nvcodec/gstcudacontext.c: * sys/nvcodec/gstcudacontext.h: * sys/nvcodec/gstcudautils.c: * sys/nvcodec/gstcudautils.h: * sys/nvcodec/meson.build: nvcodec: Introduce NVIDA CUDA helpers New object and helper functions can remove duplicated code from nvenc/nvdec. Also this is prework for CUDA device context sharing among nvdec(s)/nvenc(s). 2019-07-26 03:27:22 +0200 Mathieu Duponchelle * gst/onvif/gstrtponvifparse.c: * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: rtponviftimestamp: add opt-out "drop-out-of-segment" property The default behaviour of rtponviftimestamp is to drop buffers outside the segment. This creates obvious problems for reverse playback. The ONVIF specification unfortunately doesn't describe how to handle that specific use case, but we can expose a property to let the user disable the dropping behaviour, and forward these buffers with a G_MAXUINT64 ONVIF timestamp. Also modify rtponvifparse to handle such timestamps appropriately. 2019-07-26 03:26:25 +0200 Mathieu Duponchelle * gst/onvif/gstrtponvifparse.c: rtponvifparse: parse E flag and send EOS when needed 2019-06-21 20:47:37 +0900 Seungha Yang * ext/x265/gstx265enc.c: * ext/x265/gstx265enc.h: x265enc: Add support more 8/10/12 bits 4:2:0, 4:2:2 and 4:4:4 profiles ... with multi-library interface support. Depending on bit depth support of the linked library, run-time api switch can be made via multi-library interface. See more detail about libx265 multi-library interface https://x265.readthedocs.io/en/default/api.html#multi-library-interface 2019-08-06 21:44:35 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkaudiosrc/decklinkvideosrc: Do nothing in BaseSrc::negotiate() and always set caps in ::create() We don't support negotiation with downstream but simply set caps based on the buffers we receive. This prevents renegotiation to other formats, and negotiation to NTSC in mode=auto in the beginning until the first buffer is received. As side-effect of this, also remove various other caps handling code that was working around the behaviour of the default BaseSrc::negotiate(). 2019-08-06 18:55:28 +0300 Sebastian Dröge * gst/debugutils/gsterrorignore.c: errorignore: Try pushing again after a caps event too It might have reconfigured everything correctly so that pushing buffers works again afterwards, e.g. if the previous caps event was just rejected. 2019-08-06 18:51:54 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Require a non-0/1 framerate on the pad templates We reject caps with other framerates as it's impossible to generate timecodes unless we actually know a constant framerate. Reflect this also in the pad template caps. 2019-08-06 16:38:08 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Improve debug output a bit 2019-07-29 13:52:04 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Return profile compatible input formats from GstVideoEncoder::getcaps Do not accept any input formats which could not be supported by downstream requested codec profiles. 2019-07-27 00:52:59 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Fix caps negotiation failure on unspecified interlace-mode During GstVideoInfo conversion from GstCaps, interlace-mode is inferred to progressive so unspecified interlace-mode should not cause any negotiation issue. Simly set GST_PAD_FLAG_ACCEPT_INTERSECT flag on sinkpad to fix issue. 2019-07-27 00:57:02 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh264enc.h: * sys/nvcodec/gstnvh265enc.c: * sys/nvcodec/gstnvh265enc.h: nvenc: Remove unused member variables Supported interlace-mode and codec profiles are checked during plugin init and those values are never used. 2019-07-27 00:41:17 +0900 Seungha Yang * tests/check/elements/nvenc.c: tests: nvenc: Add test caps negotiation with interlace-mode field 2019-08-05 19:45:05 +0300 Sebastian Dröge * ext/webrtc/webrtctransceiver.c: * gst-libs/gst/webrtc/rtptransceiver.c: * gst-libs/gst/webrtc/rtptransceiver.h: * tests/check/elements/webrtcbin.c: * tests/examples/webrtc/webrtcrenego.c: rtptransceiver: Remove direction setter and vfunc and replace it by a property It was changed from a function to a property in the latest WebRTC spec. 2019-07-25 22:55:09 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdkdec: Update frame info from video parameters A 10bit stream may have different depth values for Luma and Chroma, and MSDK requires the frame info must match the corresponding video parameters 2019-08-02 16:31:59 +0900 Yeongjin Jeong * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkmemory.c: vulkan: Fix GstMemory leaks Allocated GstMemory should be freed with g_free() 2019-08-03 11:31:21 +0800 Fuwei Tang * gst/videoparsers/gsth264parse.c: h264parse: fix issue that caps "interlace-mode" can't be updated correctly Upstream overrides the info "interlace-mode", otherwise update it with SPS info. 2019-07-30 23:49:09 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Respect upstream provided timestamp Decoder sometimes reports nonincreasing timestamp. Use input frame's timestamp like other decoder elements. 2019-07-30 13:15:32 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvenc.c: nvenc: Add support RGB 8/10bits formats BGRA/RGBA/RGB10A2/BGR10A2 formats can be supported by nvenc. Depending on device, supported format can be different. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1038 2019-07-31 00:02:59 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Use upstream framerate if possible Encoded bitstream might not have valid framerate. If upstream provided non-variable-framerate (i.e., fps_n > 0 and fps_d > 0) use upstream framerate instead of parsed one. 2019-07-30 23:54:48 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Fix crash with unspecified framerate Nvidia driver seems to calculating floating point framerate without validation. This causes crash both on linux and Windows. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1012 2019-08-03 05:28:33 -0400 Doug Nazar * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Parse mpeg audio layer version and add to caps. 2019-08-03 05:21:29 -0400 Doug Nazar * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Finish setting up stream before adding pad. 2019-07-26 07:45:46 -0600 Aaron Boxer * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: no need to cache allocation_caps 2019-08-05 11:31:48 +1000 Matthew Waters * gst-libs/gst/vulkan/meson.build: vulkan: add a couple of headers to the install list 2019-07-31 18:03:19 +0000 Marc Leeman * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: allow sending config at IDR Based on h264parse, also allow to send the config at every IDR. 2019-07-31 12:12:18 +0900 Seungha Yang * configure.ac: * sys/nvcodec/Makefile.am: configure: Update for nvcodec dependency change nvcodec is compilable without external dependency 2019-07-31 12:11:05 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Fix build warning error gstnvdec.c:1222:3: error: implicit declaration of function ‘memset’ [-Werror=implicit-function-declaration] memset (&type_info, 0, sizeof (type_info)); ^~~~~~ 2019-07-30 21:18:59 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: basetsmux: expose pcr-interval property Instead of using a static hardcoded PCR interval, allow the user to configure it. Also revert back the default to a 40 ms interval, that was changed in recent patches for no good reason. 2019-07-31 18:02:02 +0900 Yeongjin Jeong * tests/check/elements/x265enc.c: tests: x265enc: Add tiny resolution encoding check Add the tiny picture encoding test case allowed in x265 2019-07-01 18:14:55 +0900 Yeongjin Jeong * ext/x265/gstx265enc.c: * tests/check/elements/x265enc.c: x265enc: Specify max CU size depending on input resolution x265 does not allow user to configure a picture size smaller than at least one CU size, and maxCUSize must be 16, 32, or 64. Therefore, the CU size must be set according to the input resolution, and the input resolution can not be less than 16. 2019-07-23 13:06:55 -0700 Ederson de Souza * ext/avtp/gstavtpcvfpay.c: avtp: CVF - fix error message The error is about *not* being able to map a buffer. 2019-07-08 14:19:07 -0700 Ederson de Souza * ext/avtp/gstavtpcvfpay.c: * tests/check/elements/avtpcvfpay.c: avtp: CVF - Do not infinite loop trying to fragment zero sized NAL unit Zero sized NAL-units should not happen, but if they do, do not infinite loop. Added also a unit test for this case. 2019-07-31 00:38:44 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Skip unused SEI bits differently 3-byte emulation bytes can confuse the current code that skips bits at the end of an SEI. Use a simpler method that's also quicker because it skips all remaining bits in one go instead of 1 bit at a time. 2019-07-20 22:38:46 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: h265parse: Add support for compatible profiles of extensions From decoder's capability point of view as defined by the h265 specification, accept peer profile caps. 2019-07-30 19:07:42 +0900 Seungha Yang * sys/nvcodec/gstnvenc.c: nvenc: Fix build error with x86 msvc __stdcall is accepted or ignored by the compiler on x64 but x86 is not the case. So the function definition should be consistent with declaration. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1039 2019-07-30 17:49:25 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: nvenc: Fix deadlock when pad_push return was not GST_FLOW_OK Encoding thread is terminated without any notification so upstream streaming thread is locked because there is nothing to pop from GAsyncQueue. If downstream returns error, we need put SHUTDOWN_COOKIE to GAsyncQueue for chain function can wakeup. 2019-07-30 11:06:43 +0900 Seungha Yang * sys/nvcodec/stub/cuda.h: nvcodec: Fix broken ABI in cuda stub header to fix nvenc with opengl Fix the broken ABI introduced by the commit 367e742e5dd53400d212ce07d0ac0745f3535ac3 From CUDA Toolkit 3.2, size_t has been used in CUDA_MEMCPY2D structure instead of unsigned int. 2019-06-12 15:00:38 +0200 Jakub Adam * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtcsdp.c: webrtcbin: Support data channel SDP offers from Chrome When negotiating a data channel, Chrome as recent as 75 still uses SDP based on version 05 of the SCTP SDP draft, for example: m=application 9 DTLS/SCTP 5000 a=sctpmap:5000 webrtc-datachannel 1024 Implement support for parsing SCTP port out of SDP message with sctpmap attribute. Fixes data channel negotiation with Chrome browser. 2019-07-28 19:08:24 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: openjpegdec: enable multi-threaded decode 2019-07-28 19:07:04 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: openjpegdec: check return value when setting up decoder 2019-07-02 12:27:40 +0100 Charlie Turner * ext/hls/gsthlsdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: remove some deadlocks using webkitwebsrc. WebKit's websrc depends on the main-thread for download completion rendezvous. This exposed a number of deadlocks in adaptivedemux due to it holding the MANIFEST_LOCK during network requests, and also needing to hold it to change_state and resolve queries, which frequently occur during these download windows. Make demux->running MT-safe so that it can be accessed without using the MANIFEST_LOCK. In case a source is downloading and requires a MT-thread notification for completion of the fragment download, a state change during this download window will deadlock unless we cancel the downloads and ensure they are not restarted before we finish the state-change. Also make demux->priv->have_manifest MT-safe. A duration query happening in the window described above can deadlock for the same reason. Other src queries (like SEEKING) that happen in this window also could deadlock, but I haven't hit this scenario. Increase granularity of API_LOCK'ing in change_state as well. We need to cancel downloads before trying to take this lock, since sink events (EOS) will hold it before starting a fragment download. 2019-07-29 14:56:16 +0700 Ilya Smelykh * ext/webrtc/gstwebrtcice.c: webrtcbin: fix GInetAddress leak 2019-07-28 14:19:36 -0400 Aaron Boxer * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/meson.build: openjpeg: remove support for OpenJPEG 1.5 Also require OpenJPEG version >= 2.2 2019-07-23 22:26:19 +0900 Wonchul Lee * ext/aom/gstav1enc.c: av1enc: enable row-mt property conditionally The row based multi threading control was introduced after 1.0.0 version of libaom released. It adds a guard to check the relevant control definition declared. It fixes #1025 2019-07-24 12:44:21 -0600 Aaron Boxer * sys/msdk/meson.build: msdk: enable 32 bit build on windows 2019-07-26 06:35:53 +0000 Sebastian Dröge * ext/dtls/gstdtlsdec.c: Revert "dtls: fix generated cert dtls agent leak" This reverts commit e5585b1bde162bc038fd1265438edbcd94ccb5ed 2019-07-19 22:46:01 +0900 Seungha Yang * sys/nvcodec/Makefile.am: * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/meson.build: * sys/nvcodec/plugin.c: * sys/nvcodec/stub/cuda.h: nvdec: Make OpenGL dependency optional By adding system memory support for nvdec, both en/decoder in the nvcodec plugin are able to be usable regardless of OpenGL dependency. Besides, the direct use of system memory might have less overhead than OpenGL memory depending on use cases. (e.g., transcoding using S/W encoder) 2019-07-25 18:27:30 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Validate LTC timestamps before trying to use them There's no point in working with invalid LTC timestamps as all future calculations will be wrong based on this, and invalid LTC timestamps can sometimes be read via the audio input. 2019-07-25 20:03:02 +0700 Ilya Smelykh * ext/dtls/gstdtlsdec.c: dtls: fix generated cert dtls agent leak The generated certificate dtls agent was refed two times on the first call. 2019-07-25 10:00:14 +0000 Ilya Smelykh * ext/dtls/gstdtlsconnection.c: dtls: fix dtls connection object leak 2019-07-22 19:10:15 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Make sure to return a value from all code paths False warning from MSVC, or it does not understand that g_assert_not_reached() does not return. ...\gst-plugins-bad-1.0-1.17.0.1\sys\decklink\gstdecklink.cpp(1647) : warning C4715: 'gst_decklink_configure_duplex_mode': not all control paths return a value 2019-07-22 17:57:01 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklinksrc: Reset timestamp observations on format change We will usually get timestamps starting from 0 again and due to the format change the clock of the input might also be different. 2019-07-25 16:45:21 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/plugin.c: nvcodec: Clean up pointless return values around plugin init Any plugin which returned FALSE from plugin_init will be blacklisted so the plugin will be unusable even if an user install required runtime dependency next time. So that's the reason why nvcodec returns TRUE always. This commit is to remove possible misreading code. 2019-07-24 13:06:16 +0900 Seungha Yang * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcuvidloader.c: * sys/nvcodec/gstnvenc.c: nvcodec: Change log level for g_module_open failure Since we build nvcodec plugin without external CUDA dependency, CUDA and en/decoder library loading failure can be natural behavior. Emit error only when the module was opend but required symbols are missing. 2019-07-24 10:00:56 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Add support for 10bits 4:2:0 decoding This commit includes h265 main-10 profile support if the device can decode it. Note that since h264 10bits decoding is not supported by nvidia GPU for now, the additional code path for h264 high-10 profile is a preparation for the future Nvidia's enhancement. 2019-07-24 18:06:41 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Specify supported profiles of h264/h265 codec See more details about supported formats at nvidia codec sdk document "NVDEC_VideoDecoder_API_ProgGuide.pdf" Table 1. Hardware Video Decoder Capabilities. Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/926 2019-07-24 20:38:58 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Skip draining before creating internal parser GstVideoDecoder::drain/flush can be called at very initial state with stream-start and flush-stop event, respectively. Draning with NULL CUvideoparser seems to unsafe and that eventually failed to handle it. 2019-07-24 14:37:40 -0400 Xavier Claessens * ext/dash/meson.build: dash: Fallback to libxml2 subproject 2019-07-23 13:47:44 -0400 Aaron Boxer * sys/msdk/gstmsdkdec.c: msdkdec: improve spelling and grammar of comments 2019-07-23 13:16:36 +0800 Haihao Xiang * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdkdec: make sure mfx frame width/height meets MSDK's requirement It is possible that the output region size (e.g. 192x144) is different from the coded picture size (e.g. 192x256). We may adjust the alignment parameters so that the padding is respected in GstVideoInfo and use GstVideoInfo to calculate mfx frame width and height This fixes the error below when decoding a stream which has different output region size and coded picture size 0:00:00.057726900 28634 0x55df6c3220a0 ERROR msdkdec gstmsdkdec.c:1065:gst_msdkdec_handle_frame: DecodeFrameAsync failed (failed to allocate memory) Sample pipeline: gst-launch-1.0 filesrc location=output.h265 ! h265parse ! msdkh265dec ! glimagesink 2019-07-23 13:28:17 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: remove unneeded code Before calling gst_msdkdec_create_buffer_pool, the alignment parameters have been adjusted. 2019-07-23 09:40:24 +0900 Seungha Yang * sys/nvcodec/meson.build: * sys/nvcodec/stub/cuda.h: * tests/check/meson.build: nvcodec: Drop system installed cuda.h dependency ... and add our stub cuda header. Newly introduced stub cuda.h file is defining minimal types in order to build nvcodec plugin without system installed CUDA toolkit dependency. This will make cross-compile possible. 2019-07-23 10:24:10 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.c: nvcodec: Keep requested rank for default device Fix for default encoder and decoder element factory to make them have higher rank than the others. 2019-07-09 13:31:27 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: nvenc: Register elements per GPU device with capability check * By this commit, if there are more than one device, nvenc element factory will be created per device like nvh264device{device-id}enc and nvh265device{device-id}enc in addition to nvh264enc and nvh265enc, so that the element factory can expose the exact capability of the device for the codec. * Each element factory will have fixed cuda-device-id which is determined during plugin initialization depending on the capability of corresponding device. (e.g., when only the second device can encode h265 among two GPU, then nvh265enc will choose "1" (zero-based numbering) as it's target cuda-device-id. As we have element factory per GPU device, "cuda-device-id" property is changed to read-only. * nvh265enc gains ability to encoding 4:4:4 8bits, 4:2:0 10 bits formats and up to 8K resolution depending on device capability. Additionally, I420 GLMemory input is supported by nvenc. 2019-07-21 21:23:30 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Create CUDA context with registered device id Only the default device has been used by NVDEC so far. This commit make it possible to use registered device id. To simplify device id selection, GstNvDecCudaContext usage is removed. 2019-07-11 21:53:46 +0900 Seungha Yang * sys/nvcodec/gstcuvidloader.c: * sys/nvcodec/gstcuvidloader.h: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/plugin.c: nvdec: Register elements per device/codec with capability check By this commit, each codec has its own element factory so the nvdec element factory is removed. Also, if there are more than one device, additional nvdec element factory will be created per device like nvh264device{device-id}dec, so that the element factory can expose the exact capability of the device for the codec. 2019-07-18 18:27:55 +0900 Seungha Yang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: Do not expose DMA buffer caps feature on Windows On Windows, DMA buffer is not supported. PadTemplate with actually supported feature seems to more make sense. 2019-07-22 23:01:43 +0900 Seungha Yang * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/meson.build: nvcodec: Drop cudaGL.h dependency nvcodec does not use any type/define/enum in cudaGL.h. 2019-07-22 12:23:51 +0300 Sebastian Dröge * ext/aom/gstav1enc.c: av1enc: Also set AV1E_SET_ROW_MT from the property value when initializing the encoder Previously it was only set if the property was changed after the encoder was initialized. 2018-12-02 22:49:19 +0900 Wonchul Lee * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: av1enc: Add threads and row-mt properties Add threads related property that setting a number of threads to encode av1 codec and row-mt configuration. 2018-12-02 21:45:50 +0900 Wonchul Lee * ext/aom/gstav1enc.c: av1enc: Release lock when failing to initialize Add to missing unlock when failing to initialize encoder. 2019-07-22 11:23:22 +0300 Sebastian Dröge * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: Revert "av1enc: Release lock when failing to initialize" This reverts commit 7de6b5d48161cb4982efe7fd04c8be408ca85424. It was accidentally squashed together from the MR instead of keeping the individual commits. 2019-07-22 08:00:00 +0000 Fabrice Bellet * gst/siren/huffman.c: siren: fix a global buffer overflow spotted by asan This patch just enforces boudaries for the access to the standard_deviation array (64 floats). Such case can be seen with a corrupted stream, where there's no hope to obtain a valid decoded frame anyway. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1002 2019-07-22 06:59:48 +0000 Wonchul Lee * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: av1enc: Release lock when failing to initialize Add to missing unlock when failing to initialize encoder. 2019-07-19 01:07:38 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Fix video stuttering issue with VP9 Address nvidia driver specific behavior to avoid unexpected frame mismatch between GStreamer and NVDEC. 2019-07-19 00:52:59 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: nvdec: Drop async queue and handle data on callback of CUvideoparser Callbacks of CUvideoparser is called on the streaming thread. So the use of async queue has no benefit. Make control flow straightforward instead of long while/switch loop. 2019-07-12 20:24:10 +0200 Mathieu Duponchelle * gst/onvif/gstrtponviftimestamp.c: rtponviftimestamp: fix setting of the discontinuity flag The D bit is meant to be set whenever there is a discontinuity in transmission, and directly maps to the DISCONT flag. The E bit is not meant to be set on every buffer preceding a discontinuity, but only on the last buffer of a contiguous section of recording. This has to be signaled through the unfortunately-named "discont" field of the custom NtpOffset event. 2019-07-12 20:23:24 +0200 Mathieu Duponchelle * gst/onvif/gstrtponvifparse.c: rtponvifparse: set ONVIF timestamps as buffer PTS 2019-07-10 23:40:36 +0200 Mathieu Duponchelle * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h26{4,5}parse: add support for forward predicted trick mode Also stop assigning TRUE to fields with |= 2019-07-17 22:42:10 +0900 Seungha Yang * ext/x265/gstx265enc.c: x265enc: Specify colorimetry related VUI parameters Set the colorimetry config for the information to be embedded in encodec bitstream. 2019-07-15 23:40:21 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Port to color_{primaries,transfer,matrix}_to_iso ... and update the color information only when upstream was not provided the information. 2019-07-17 09:35:35 +0900 Seungha Yang * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh265enc.c: nvenc: Specify colorimetry related VUI parameters Set the colorimetry config for the information to be embedded in encodec bitstream. 2019-07-16 23:30:07 +0200 Mathieu Duponchelle * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcdatachannel.h: webrtcdatachannel: inherit directly from GObject There's no reason for it to inherit from GstObject apart from locking, which is easily replaced, and inheriting from GInitiallyUnowned made introspection awkward and needlessly complicated. 2019-07-17 00:13:24 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: h264parse: Update caps per pixel aspect ratio change Output caps should be updated per pixel aspect ratio change. 2019-07-16 22:58:26 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Expose parsed colorimetry when VUI provided it ... and also if upstream did not specify the colorimetry. 2019-07-16 09:40:01 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Expose parsed colorimetry when VUI provided it ... and also if upstream did not specify the colorimetry. 2019-07-17 01:05:32 +0900 Seungha Yang * sys/kms/gstkmssink.c: kmssink: Fix implicit declaration build error ffs() and strcmp() require string.h gstkmssink.c:255:28: error: implicit declaration of function ‘ffs’ [-Werror=implicit-function-declaration] crtc_id = res->crtcs[ffs (crtcs_for_connector) - 1]; ^~~ gstkmssink.c:590:10: error: implicit declaration of function ‘strcmp’ [-Werror=implicit-function-declaration] if (!strcmp (property->name, prop_name)) { ^~~~~~ 2019-07-15 16:05:05 +0200 Martin Liska * configure.ac: Fix -Werror=return-type error in configure. 2019-07-15 15:48:08 -0400 Martin Theriault * gst/aiff/aiffparse.c: aiff: Fix infinite loop in header parsing. 2019-07-15 12:06:25 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Don't report that we have signal until we know for sure Previously we would've reported that there is signal unless we know for sure that we don't have signal. For example signal would've been reported before the device is even opened. Now keep track whether the signal state is unknown or not and report no signal if we don't know yet. As before, only send an INFO message about signal recovery if we actually had a signal loss before. 2019-07-12 12:53:09 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: In running-time mode, select start/end running time based on the actual video timestamps Otherwise we would start/end at exactly the given times, which might be up to 1 frame earlier/later than the video. 2019-07-12 12:29:09 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Add some more debug output 2019-07-12 12:28:59 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Fix clipping of audio buffers at the start of recording 2019-07-10 00:34:18 +0800 Ting-Wei Lan * docs/meson.build: build: Fix error messages for missing hotdoc extensions 2019-07-09 12:43:53 +0300 Sebastian Dröge * ext/closedcaption/gstcccombiner.c: cccombiner: Proxy POSITION/DURATION/URI/CAPS/ALLOCATION queries between video sinkpad and source pad We pass-through the video as is, only putting a GstMeta on it from the caption sinkpad. This fixes negotation problems caused by not passing through caps queries in both directions. Also handle CAPS/ACCEPT_CAPS queries directly for the caption pad instead of proxying. 2018-12-20 12:37:43 +0900 Seungha Yang * sys/nvcodec/gstnvdec.c: nvdec: Fix possible frame drop on EOS On eos, baseclass videoencoder call finish() vfunc instead of drain() 2019-07-08 16:43:10 -0400 Ray Tiley * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: remove g_print Causes a lot of output :) 2019-07-08 23:58:29 +0900 Seungha Yang * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkviewconvert.c: vulkan: Fix incompatible type build warning Make declare/define a function consistent. Note that GstBaseTransform::set_caps should return gboolean Compiling C object subprojects/gst-plugins-bad/ext/vulkan/f3f9d6b@@gstvulkan@sha/vkviewconvert.c.obj. ../subprojects/gst-plugins-bad/ext/vulkan/vkviewconvert.c(644): warning C4133: '=': incompatible types - from 'GstFlowReturn (__cdecl *)(GstBaseTransform *,GstCaps *,GstCaps *)' to 'gboolean (__cdecl *)(GstBaseTransform *,GstCaps *,GstCaps *)' 2019-07-08 15:51:43 -0400 Olivier Crête * ext/srt/gstsrtobject.c: srt: Remove msg-size property Remove the now unused property 2019-07-08 15:50:59 -0400 Olivier Crête * ext/srt/gstsrtobject.c: srtsrc: Receive one frame per gstbuffer Don't aggregate the received data, just receive it one packet at a time. So it keeps the packetization boundaries 2019-07-06 16:15:40 -0400 Nicolas Dufresne * ext/srt/gstsrtobject.c: srt: Fix listener crash if no URI is specified 2019-07-06 15:53:26 -0400 Nicolas Dufresne * ext/srt/gstsrtobject.c: srt: Use macro instead of duplicating a default value 2019-07-06 15:45:20 -0400 Nicolas Dufresne * ext/srt/gstsrtobject.c: srt: Fix confusing typo in FIXME comment SRT does not support IPv6, but the comment said IPv4 which was the opposite of the following code. 2019-07-01 13:43:28 +0300 Sebastian Dröge * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: * gst/timecode/meson.build: timecodestamper: Add support for linear timecode (LTC) from an audio stream Based on a patch by Georg Lippitsch Vivia Nikolaidou Using libltc from https://github.com/x42/libltc 2019-07-01 13:42:16 +0300 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: * gst/timecode/meson.build: timecodestamper: Rewrite element API and code flow We now have a single property to select the timecode source that should be applied, and for each timecode source the timecode is updated at every frame. Then based on a set mode, the timecode is added to the frame if none exists already or all existing timecodes are removed and the timecode is added. In addition the real-time clock is considered a proper timecode source now instead of only allowing to initialize once in the beginning with it, and also instead of just taking the current time we now take the current time at the clock time of the video frame. 2019-06-07 13:27:21 +0200 Marc Leeman * sys/nvcodec/meson.build: nvcodec: do a generic cuda tests before going into version specifics 2019-05-17 22:27:50 +0900 Seungha Yang * configure.ac: * meson_options.txt: * sys/Makefile.am: * sys/meson.build: * sys/nvcodec/Makefile.am: * sys/nvcodec/cuviddec.h: * sys/nvcodec/gstcudaloader.c: * sys/nvcodec/gstcudaloader.h: * sys/nvcodec/gstcuvidloader.c: * sys/nvcodec/gstcuvidloader.h: * sys/nvcodec/gstnvbaseenc.c: * sys/nvcodec/gstnvbaseenc.h: * sys/nvcodec/gstnvdec.c: * sys/nvcodec/gstnvdec.h: * sys/nvcodec/gstnvenc.c: * sys/nvcodec/gstnvenc.h: * sys/nvcodec/gstnvh264enc.c: * sys/nvcodec/gstnvh264enc.h: * sys/nvcodec/gstnvh265enc.c: * sys/nvcodec/gstnvh265enc.h: * sys/nvcodec/meson.build: * sys/nvcodec/nvEncodeAPI.h: * sys/nvcodec/nvcuvid.h: * sys/nvcodec/plugin.c: * sys/nvdec/Makefile.am: * sys/nvdec/meson.build: * sys/nvenc/Makefile.am: * sys/nvenc/README: * sys/nvenc/TODO: * sys/nvenc/meson.build: * tests/check/Makefile.am: * tests/check/meson.build: nvdec,nvenc: Port to dynamic library loading ... and put them into new nvcodec plugin. * nvcodec plugin Now each nvenc and nvdec element is moved to be a part of nvcodec plugin for better interoperability. Additionally, cuda runtime API header dependencies (i.e., cuda_runtime_api.h and cuda_gl_interop.h) are removed. Note that cuda runtime APIs have prefix "cuda". Since 1.16 release with Windows support, only "cuda.h" and "cudaGL.h" dependent symbols have been used except for some defined types. However, those types could be replaced with other types which were defined by "cuda.h". * dynamic library loading CUDA library will be opened with g_module_open() instead of build-time linking. On Windows, nvcuda.dll is installed to system path by CUDA Toolkit installer, and on *nix, user should ensure that libcuda.so.1 can be loadable (i.e., via LD_LIBRARY_PATH or default dlopen path) Therefore, NVIDIA_VIDEO_CODEC_SDK_PATH env build time dependency for Windows is removed. 2019-01-30 20:07:29 +0900 Seungha Yang d3d11videosink: Add new Direct3D11 video render plugin Direct3D11 was shipped as part of Windows7 and it's obviously primary graphics API on Windows. This plugin includes HDR10 rendering if following requirements are satisfied * IDXGISwapChain4::SetHDRMetaData is available (decleared in dxgi1_5.h) * Display can support DXGI_COLOR_SPACE_RGB_FULL_G2084_NONE_P2020 color space * Upstream provides 10 bitdepth format with smpte-st 2084 static metadata 2019-07-06 00:58:47 +0300 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/utils.c: webrtcbin: Don't assert if an SDP media can't be converted to caps Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1008 2019-04-25 16:32:34 +0800 Haihao Xiang * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvp9enc.c: * sys/msdk/gstmsdkvp9enc.h: * sys/msdk/meson.build: msdk: add msdkvp9enc element 2019-04-28 16:10:13 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: workaround for MFX_FOURCC_VP9_SEGMAP surface MFX_FOURCC_VP9_SEGMAP surface in MSDK is an internal surface however MSDK still call the external allocator for this surface, so this plugin has to return UNSUPPORTED and force MSDK allocates surface using the internal allocator. See https://github.com/Intel-Media-SDK/MediaSDK/issues/762 for details 2019-05-08 16:05:07 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkenc: allow encode element requires extra frames The call of MFXVideoENCODE_EncodeFrameAsync may not generate output and the function returns MFX_ERR_MORE_DATA with NULL sync point, the input frame is cached in this case, so it is possible that all allocated frames go into the surfaces_used list after calling MFXVideoENCODE_EncodeFrameAsync a few times, then the encoder will fail to get an available surface before releasing used frames This patch adds a new field of num_extra_frames to GstMsdkEnc and allows encode element requires extra frames, the default value is 0. This patch is the preparation for msdkvp9enc element. 2019-07-05 16:20:29 +1000 Matthew Waters * tests/check/libs/vkmemory.c: tests/vulkan: fix copyright name 2019-07-05 16:20:05 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkwindow.c: * tests/check/libs/vkwindow.c: * tests/check/meson.build: vulkan/window: add property for the parent display 2019-07-05 16:13:13 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdevice.c: * tests/check/libs/vkdevice.c: * tests/check/meson.build: vulkan/device: add property for the parent instance 2019-07-04 17:22:07 +1000 Matthew Waters * ext/vulkan/gstvulkan.c: * ext/vulkan/meson.build: * ext/vulkan/shaders/meson.build: * ext/vulkan/shaders/view_convert.frag: * ext/vulkan/shaders/view_defines.h: * ext/vulkan/vkviewconvert.c: * ext/vulkan/vkviewconvert.h: vulkan: add view converter element 2019-07-04 17:19:31 +1000 Matthew Waters * ext/vulkan/vkcolorconvert.c: vulkan: fix output framebuffer creation size We don't scale when color converting so there is no impact. 2019-07-05 01:26:26 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: tsmux: output smoothly increasing PTS when in CBR mode Thanks to that, when its output is plugged into eg a udp sink, the outgoing data can be output in a smoother way, reducing burstiness 2019-07-05 00:17:10 +1000 Jan Schmidt * tests/check/libs/h264parser.c: tests: Add h264parser SEI checks Add some tests around SEI parsing. 2019-06-28 14:59:18 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.c: h264parser lib: Add more profile_idc to the recognised set Update the list of profile_idc recognised during SPS parsing based on H.264 201704 2019-06-28 14:50:00 +1000 Jan Schmidt * ext/smoothstreaming/gstmssmanifest.c: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: h264parse lib: Remove the SPS parse_vui_params flag The SPS parsing functions take a parse_vui_param flag to skip VUI parsing, but there's no indication in the output SPS struct that the VUI was skipped. The only caller that ever passed FALSE seems to be the important gst_h264_parser_parse_nal() function, meaning - so the cached SPS were always silently invalid. That needs changing anyway, meaning noone ever passes FALSE. I don't see any use for saving a few microseconds in order to silently produce garbage, and since this is still unstable API, let's remove the parse_vui_param. 2019-06-28 14:46:36 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.c: h264parser lib: Warn on invalid pic_timing SEI The spec calls for pic_timing SEI to be absent unless there's either a CpbDpbDelaysPresentFlag or pic_struct_present_flag in the SPS VUI data. If both those flags are missing, warn. 2019-06-28 14:42:19 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.c: h264parser lib: Always consume all SEI bits If parsing an SEI errors out, it might not consume all bits, leaving extra unparsed data in the reader that the outer loop then tries to parse as a new appended SEI. Skip all the bits if any are left over to avoid 'finding' extra garbage SEI in the parsing. 2019-06-28 02:42:00 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Return BROKEN_LINK for missing SPS When parsing SEI that require an SPS, return GST_H264_PARSER_BROKEN_LINK instead of a generic parsing error to let callers distinguish bitstream errors from (expected) missing packets when resuming decode. 2019-06-28 01:26:19 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Improve documentation Improve some docs around the NALU structure contents 2019-06-28 00:27:12 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gstmpegvideoparser.h: gstmpegvideoparser: Documentation fixes Fix some spelling mistakes and improve documentation in the MPEG video parser 2019-07-04 19:43:42 +0900 Seungha Yang * gst/mpegtsmux/tsmux/tsmuxstream.c: tsmuxstream: Do not try return from void function ../subprojects/gst-plugins-bad/gst/mpegtsmux/tsmux/tsmuxstream.c(1082): warning C4098: 'tsmux_stream_get_es_descrs': 'void' function returning a value 2019-07-04 19:42:48 +0900 Seungha Yang * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: * gst/mpegtsmux/gstbasetsmuxaac.c: * gst/mpegtsmux/gstbasetsmuxaac.h: * gst/mpegtsmux/gstbasetsmuxjpeg2000.c: * gst/mpegtsmux/gstbasetsmuxjpeg2000.h: * gst/mpegtsmux/gstbasetsmuxopus.c: * gst/mpegtsmux/gstbasetsmuxopus.h: * gst/mpegtsmux/gstbasetsmuxttxt.c: * gst/mpegtsmux/gstbasetsmuxttxt.h: * gst/mpegtsmux/gstmpegtsmux.c: * gst/mpegtsmux/gstmpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: Remove white space 2019-07-04 14:16:17 +1000 Matthew Waters * ext/vulkan/meson.build: * ext/vulkan/vksink.c: * ext/vulkan/vksink.h: * gst-libs/gst/vulkan/gstvkswapper.c: * gst-libs/gst/vulkan/gstvkswapper.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: vulkan: move swapper object to the gstvulkan library Allows other sinks and/or user code to display to a VkSurface 2019-07-04 14:03:51 +1000 Matthew Waters * ext/vulkan/meson.build: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkdownload.c: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkfullscreenrender.h: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvktrash.c: * gst-libs/gst/vulkan/gstvktrash.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan: move trash list to library 2019-07-03 13:48:49 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/utils.c: * ext/webrtc/utils.h: webrtcbin: use the latest self-generated SDP as the basis for renegotiations Fixes multiple errors when a webrtcbin renegotiation can switch between the offerer and the answerer. 2019-05-17 16:00:24 -0700 Ederson de Souza * ext/avtp/gstavtp.c: avtp: Update documentation 2019-03-26 14:25:56 -0700 Ederson de Souza * tests/check/Makefile.am: * tests/check/elements/avtpcvfdepay.c: * tests/check/meson.build: tests: Add AVTP CVF depayloader tests In these tests, some specially crafted buffers are sent to the depayloader, simulating some scenarios and checking what comes out from it. 2019-03-25 17:23:49 -0700 Ederson de Souza * tests/check/Makefile.am: * tests/check/elements/avtpcvfpay.c: * tests/check/meson.build: tests: Add AVTP CVF payloader tests In these tests, some specially crafted buffers are sent to the payloader, simulating some scenarios and checking what comes out from it. 2019-05-02 10:52:42 -0700 Andre Guedes * tests/check/Makefile.am: * tests/check/elements/avtpsrc.c: * tests/check/meson.build: tests: Add AVTP source tests This patch adds test cases for the AVTP source element. For now, only properties get() and set() are covered. 2019-04-25 14:16:46 -0700 Andre Guedes * tests/check/Makefile.am: * tests/check/elements/avtpsink.c: * tests/check/meson.build: tests: Add AVTP sink tests This patch adds test cases for the AVTP sink element. For now, only properties get() and set() are covered. 2019-04-09 14:10:36 -0700 Andre Guedes * tests/check/Makefile.am: * tests/check/elements/avtpaafdepay.c: * tests/check/meson.build: tests: Add AAF depayloader tests This patch adds test cases for the AAF depayloader element covering the basic functionalities. 2019-03-22 15:54:23 -0700 Andre Guedes * tests/check/Makefile.am: * tests/check/elements/avtpaafpay.c: * tests/check/meson.build: tests: Add AAF payloader tests This patch adds the infrastructure to test AVTP plugin elements. It also adds a test case to check avtpaafpay element basic functionality. The test consists in setting the element sink caps and properties, and verifying if the output buffer is set as expected. 2019-04-16 17:32:46 -0700 Ederson de Souza * docs/plugins/gst_plugins_cache.json: * ext/avtp/meson.build: docs: Add AVTP elements documentation 2019-03-20 16:40:13 -0700 Ederson de Souza * ext/avtp/gstavtpcvfdepay.c: * ext/avtp/gstavtpcvfdepay.h: avtp: Add fragmented packets handling to CVF depayloader This patch adds to the CVF depayloader the capability to regroup H.264 fragmented FU-A packets. After all packets are regrouped, they are added to the "stash" of H.264 NAL units that will be sent as soon as an AVTP packet with M bit set is found (usually, the last fragment). Unrecognized fragments (such as first fragment seen, but with no Start bit set) are discarded - and any NAL units on the "stash" are sent downstream, as if a SEQNUM discontinuty happened. 2019-03-12 15:46:16 -0700 Ederson de Souza * ext/avtp/Makefile.am: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpcvfdepay.c: * ext/avtp/gstavtpcvfdepay.h: * ext/avtp/meson.build: avtp: Introduce AVTP CVF depayloader element This patch introduces the AVTP Compressed Video Format (CVF) depayloader specified in IEEE 1722-2016 section 8. Currently, this depayloader only supports H.264 encapsulation described in section 8.5. Is also worth noting that only single NAL units are handled: aggregated and fragmented payloads are not handled. As stated in AVTP CVF payloader patch, AVTP timestamp is used to define outgoing buffer DTS, while the H264_TIMESTAMP defines outgoing buffer PTS. When an AVTP packet is received, the extracted H.264 NAL unit is added to a "stash" (the out_buffer) of H.264 NAL units. This "stash" is pushed downstream as single buffer (with NAL units aggregated according to format used on GStreamer, based on ISO/IEC 14496-15) as soon as we get the AVTP packet with M bit set. This patch groups NAL units using a fixed NAL size lenght, sent downstream on the `codec_data` capability. The "stash" of NAL units can be prematurely sent downstream if a discontinuity (a missing SEQNUM) happens. This patch reuses the infra provided by gstavtpbasedepayload.c. 2019-03-05 18:09:13 -0800 Ederson de Souza * ext/avtp/gstavtpcvfpay.c: avtp: Add fragmentation feature to CVF payloader Based on `mtu` property, the CVF payloader is now capable of properly fragmenting H.264 NAL units that are bigger than MTU in several AVTP packets. AVTP spec defines two methods for fragmenting H.264 packets, but this patch only generates non-interleaved FU-A fragments. Usually, only the last NAL unit from a group of NAL units in a single buffer will be big enough to be fragmented. Nevertheless, only the last AVTP packet sent for a group of NAL units will have the M bit set (this means that the AVTP packet for the last fragment will only have the M bit set if there's no more NAL units in the group). 2019-02-28 15:49:02 -0800 Ederson de Souza * ext/avtp/Makefile.am: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpcvfpay.c: * ext/avtp/gstavtpcvfpay.h: * ext/avtp/meson.build: avtp: Introduce AVTP CVF payloader element This patch introduces the AVTP Compressed Video Format (CVF) payloader specified in IEEE 1722-2016 section 8. Currently, this payload only supports H.264 encapsulation described in section 8.5. Is also worth noting that only single NAL units are encapsulated: no aggregation or fragmentation is performed by the payloader. An interesting characteristic of CVF H.264 spec is that it defines an H264_TIMESTAMP, in addition to the AVTP timestamp. The later is translated to the GST_BUFFER_DTS while the former is translated to the GST_BUFFER_PTS. From AVTP CVF H.264 spec, it is clear that the AVTP timestamp is related to the decoding order, while the H264_TIMESTAMP is an ancillary information to the H.264 decoder. Upon receiving a buffer containing a group of NAL units, the avtpcvfpay element will extract each NAL unit and payload them into individual AVTP packets. The last AVTP packet generated for a group of NAL units will have the M bit set, so the depayloader is able to properly regroup them. The exact format of the buffer of NAL units is described on the 'codec_data' capability, which is parsed by the avtpcvfpay, in the same way done in rtph264pay. This patch reuses the infra provided by gstavtpbasepayload.c. 2019-01-23 15:17:48 -0800 Andre Guedes * ext/avtp/Makefile.am: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpsrc.c: * ext/avtp/gstavtpsrc.h: * ext/avtp/meson.build: avtp: Introduce AVTP source element This patch introduces the avtpsrc element which implements a typical network source. The avtpsrc element receives AVTPDUs encapsulated into Ethernet frames and push them downstream in the GStreamer pipeline. Implementation if pretty straightforward since the burden is implemented by GstPushSrc class. Likewise the avtpsink element, applications that utilize this element must have CAP_NET_RAW capability since it is required by Linux to open sockets from AF_PACKET domain. 2019-01-23 10:56:10 -0800 Andre Guedes * ext/avtp/Makefile.am: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpsink.c: * ext/avtp/gstavtpsink.h: * ext/avtp/meson.build: avtp: Introduce AVTP sink element This patch introduces the avtpsink elements which implements a typical network sink. Implementation is pretty straightforward since the burden is implemented by GstBaseSink class. The avtpsink element defines three new properties: 1) network interface from where AVTPDU should be transmitted, 2) destination MAC address (usually a multicast address), and 3) socket priority (SO_PRIORITY). Socket setup and teardown are done in start/stop virtual methods while AVTPDU transmission is carried out by render(). AVTPDUs are encapsulated into Ethernet frames and transmitted to the network via AF_PACKET socket domain. Linux requires CAP_NET_RAW capability in order to open an AF_PACKET socket so the application that utilize this element must have it. For further info about AF_PACKET socket domain see packet(7). Finally, AVTPDUs are expected to be transmitted at specific times - according to the GstBuffer presentation timestamp - so the 'sync' property from GstBaseSink is set to TRUE by default. 2019-01-23 16:20:27 -0800 Andre Guedes * ext/avtp/Makefile.am: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpaafdepay.c: * ext/avtp/gstavtpaafdepay.h: * ext/avtp/gstavtpbasedepayload.c: * ext/avtp/gstavtpbasedepayload.h: * ext/avtp/meson.build: avtp: Introduce AAF depayloader element This patch introduces the AAF depayloader element, the counterpart from the AAF payloader. As expected, this element inputs AVTPDUs and outputs audio raw data and supports AAF PCM encapsulation only. The AAF depayloader srcpad produces a fixed format that is encoded within the AVTPDU. Once the first AVTPDU is received by the element, the audio features e.g. sample format, rate, number of channels, are decoded and the srcpad caps are set accordingly. Also, at this point, the element pushes a SEGMENT event downstream defining the segment according to the AVTP presentation time. All AVTP depayloaders will share some common code. For that reason, this patch introduces the GstAvtpBaseDepayload abstract class that implements common depayloader functionalities. AAF-specific functionalities are implemented in the derived class GstAvtpAafDepay. 2019-01-16 17:16:59 -0800 Andre Guedes * ext/avtp/Makefile.am: * ext/avtp/gstavtp.c: * ext/avtp/gstavtpaafpay.c: * ext/avtp/gstavtpaafpay.h: * ext/avtp/gstavtpbasepayload.c: * ext/avtp/gstavtpbasepayload.h: * ext/avtp/meson.build: avtp: Introduce AAF payloader element This patch introduces the AVTP Audio Format (AAF) payloader element from the AVTP plugin. The element inputs audio raw data and outputs AVTP packets (aka AVTPDUs), implementing a typical protocol payloader element from GStreamer. AAF is one of the available formats to transport audio data in an AVTP system. AAF is specified in IEEE 1722-2016 section 7 and provides two encapsulation mode: PCM and AES3. This patch implements PCM encapsulation mode only. The AAF payloader working mechanism consists of building the AAF header, prepending it to the GstBuffer received on the sink pad, and pushing the buffer downstream. Payloader parameters such as stream ID, maximum transit time, time uncertainty, and timestamping mode are passed via element properties. AAF doesn't support all possible sample format and sampling rate values so the sink pad caps template from the payloader is a subset of audio/x-raw. Additionally, this patch implements only "normal" timestamping mode from AAF. "Sparse" mode should be implemented in future. Upcoming patches will introduce other AVTP payloader elements that will have some common code. For that reason, this patch introduces the GstAvtpBasePayload abstract class that implements common payloader functionalities, and the GstAvtpAafPay class that extends the GstAvtpBasePayload class, implementing AAF-specific functionalities. The AAF payloader element is most likely to be used with the AVTP sink element (to be introduced by a later patch) but it could also be used with UDP sink element to implement AVTP over UDP as described in IEEE 1722-2016 Annex J. This element was inspired by RTP payloader elements. 2019-01-14 10:18:42 -0800 Andre Guedes * configure.ac: * ext/Makefile.am: * ext/avtp/Makefile.am: * ext/avtp/gstavtp.c: * ext/avtp/meson.build: * ext/meson.build: * meson_options.txt: avtp: AVTP plugin bootstrap code This patch introduces the bootstrap code from the AVTP plugin (plugin definition and init) as well as the build system files. Upcoming patches will introduce payloaders, source and sink elements provided by the AVTP plugin. These elements can be utilized by a GStreamer pipeline to implement TSN audio/video applications. Regarding the plugin build system files, both autotools and meson files are introduced. The AVTP plugin is landed in ext/ since it has an external dependency on libavtp, an opensource AVTP packetization library. For further information about libavtp check [1]. [1] https://github.com/AVnu/libavtp 2019-07-04 01:12:06 +1000 Jan Schmidt * gst/videoparsers/gsth265parse.c: h265parse: Don't segfault when SPS hasn't been seen yet. Fix a recently introduced segfault. Don't de-reference a NULL SPS pointer when attempting to update source caps before SPS has been seen in the stream. 2019-07-02 14:30:35 +0300 OleksandrKvl * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstirtspparse.h: irtspparse: handle multiple and incomplete frames Interleaved frames can be fragmented between incoming frames. Thus, we can have multiple frames within the single input frame, as well as incomplete frame. Now it preserves parsing state and handle both situations. Fixes #991 2019-06-24 13:33:54 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: don't share context between msdkvpp and msdkenc msdkenc supports CSC implicitly, so it is possible that two VPP processes are required when a pipeline contains msdkvpp and msdkenc. Before this fix, msdkvpp and msdkenc may share the same context, hence the same mfx session, which results in MFX_ERR_UNDEFINED_BEHAVIOR in MSDK because a mfx session has at most one VPP process only This fixes the broken pipelines below: gst-launch-1.0 videotestsrc ! video/x-raw,format=I420 ! msdkh264enc ! \ msdkh264dec ! msdkvpp ! video/x-raw,format=YUY2 ! fakesink gst-launch-1.0 videotestsrc ! msdkvpp ! video/x-raw,format=YUY2 ! \ msdkh264enc ! fakesink 2019-06-21 18:18:44 -0700 U. Artie Eoff * sys/msdk/gstmsdkmjpegdec.c: msdkmjpegdec: support 422 output MSDK supports JPEG YUY2 (422 chroma) output color format. The color format of input bitstream is described by JPEGChromaFormat and JPEGColorFormat fields in the mfxInfoMFX structure which is filled in by the MFXVideoDECODE_DecodeHeader function. To obtain lossless decoded output from 422 encoded JPEGs, we must set the output color format in the FourCC and ChromaFormat fields in the mfxFrameInfo structure to the appropriate values at post_configure so that they are propagated through to the srcpad caps accordingly. 2019-06-21 18:12:48 -0700 U. Artie Eoff * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: add post_configure virtual method A post_configure virtual method is added to allow codec subclasses to adjust the initialized parameters after MFXVideoDECODE_DecodeHeader is called from the gstmsdkdec::gst_msdkdec_handle_frame function. This is useful if codecs want to adjust the output parameters based on the codec-specific decoding options that are present in the mfxInfoMFX structure after MFXVideoDECODE_DecodeHeader initializes them. 2019-06-03 16:25:57 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9dec.c: msdkvp9dec: add support for VP9 444 The output formats are VUYA for 8bit 444 and Y410 for 10bit 444. 2019-05-31 16:34:54 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: add support for main-444-10/main-444-10-intra profile The output format is Y410 2019-05-31 16:22:08 +0800 Haihao Xiang * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: msdk: return a right pointer for Y410 when mapping a frame 2019-06-03 14:05:07 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: set right BitDepth and Shift for Y410 mfx frame BitDepth is 10 and Shitf must be set to 0 when creating Y410 mfx frame in MSDK 2019-05-31 15:37:51 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: msdk: set parameters in mfxFrameData for a MFX_FOURCC_Y410 frame 2019-05-31 15:26:50 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_Y410 to VA_FOURCC_Y410 2019-05-31 15:21:05 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map GST_VIDEO_FORMAT_Y410 to VA_FOURCC_Y410 2019-05-31 15:13:47 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: map GST_VIDEO_FORMAT_Y410 to MFX_FOURCC_Y410 2019-05-31 12:48:15 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: add support for main-444 profile The output format is VUYA 2019-05-30 11:13:26 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: add support for main-422-10/main-422-10-intra 10bit The ouput format is Y210 2019-05-30 12:20:54 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: set right BitDepth and Shift for Y210 mfx frame BitDepth is 10 and Shitf must be set to 1 when creating Y210 mfx frame in MSDK 2019-05-30 11:10:58 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: msdk: set parameters in mfxFrameData for a MFX_FOURCC_Y210 frame 2019-05-30 11:02:08 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_Y210 to VA_FOURCC_Y210 2019-05-30 09:56:43 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map GST_VIDEO_FORMAT_Y210 to VA_FOURCC_Y210 2019-05-30 09:49:22 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: map GST_VIDEO_FORMAT_Y210 to MFX_FOURCC_Y210 2019-05-28 16:50:59 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: add support for main-422-10/main-422-10-intra 8bit The output format is YUY2 2019-06-28 15:46:22 +1000 Jan Schmidt * sys/uvch264/Makefile.am: uvch264: Fix autotools build. Add gstuvch264deviceprovider.c to the Makefile.am missed in MR 387 2019-06-26 19:53:51 +0900 Seungha Yang * gst/rtp/gstrtpsink.c: * gst/rtp/gstrtpsrc.c: rtp: Fix incompatible type build warning Use GstURIType instead of guint ../subprojects/gst-plugins-bad/gst/rtp/gstrtpsink.c(575): warning C4133: '=': incompatible types ... ../subprojects/gst-plugins-bad/gst/rtp/gstrtpsrc.c(725): warning C4133: '=': incompatible types ... 2019-06-25 20:37:57 +0200 Juan Navarro * ext/dtls/gstdtlsagent.c: dtlsagent: Clear the certificate upon finalize Cleaning this up was likely just forgotten 2019-06-25 20:37:38 +0200 Juan Navarro * ext/dtls/gstdtlsdec.c: dtlsdec: Avoid duplicate ref when passing certificate property The agent itself will take a ref on the property setter, so we'll be left with two references to the certificate object, when actually there should be only one 2019-05-20 23:19:19 +0900 Seungha Yang * sys/bluez/meson.build: meson: bluez: Early terminate configure on Windows This plugin is for linux bluetooth stack. So the early termination can save configure time on Windows (i.e., we can avoid glib subproject fallback) 2019-06-12 11:12:37 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: wpe: Port for WPEWebKit 2.25.x When WPEBackend-fdo >= 1.3.0 is detected, the threaded view now relies on the wpe_fdo_egl_exported_image API instead of the EGLImageKHR-based API which is going to be deprecated in 2.26. The GLib sources created by the view now use the default priority as well, the custom priority is no longer required. 2019-06-24 18:39:35 +0300 OleksandrKvl * gst/pcapparse/gstpcapparse.c: pcapparse: Fix handling of TCP payload length The length of the TCP payload is the IP plus TCP header length subtracted from the IP datagram length specified in the IP header. Prior to this, the size was calculated incorrectly, considering all data after TCP header as a payload till the end of a packet. Fixes #995 2019-06-24 13:50:19 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Make sure to never unref an input buffer we already unreffed before 2019-06-20 19:59:16 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Add support for setting an end running time It was possible to set a start running time and start/end timecode before, but not an end running time. 2019-06-20 17:50:43 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Correctly stop recording and signal recording stop on EOS If recording is set to FALSE after the last audio or video buffer and before the EOS event then recording stop is never signalled. Similarly, we should signal recording stop once both audio and video are EOS, regardless of the recording property, as there's nothing to be recorded anymore. 2019-06-24 16:22:47 +1000 Matthew Waters * ext/vulkan/vksink.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: vkswapper: support rescaling to the output size 2019-06-24 15:32:25 +1000 Matthew Waters * ext/vulkan/vksink.c: * ext/vulkan/vkswapper.c: vksink: Don't take vulkan buffer's as input 2019-06-24 15:30:56 +1000 Matthew Waters * tests/check/elements/vkcolorconvert.c: tests/vkcolorconvert: remove extra instance/device creation It's unnecessary. 2019-06-20 08:59:22 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Correctly ensure >=16 byte alignment for the buffers we allocate We'll ensure at least 64 byte alignment for AVX2 but 16 byte alignment is what is required by the decklink SDK. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/986 2019-06-23 17:03:32 +0100 Philippe Normand * ext/webrtc/webrtcdatachannel.c: webrtc: Fix data-channel send-string doc 2019-06-20 10:04:06 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Notify about signal loss even when dropping no-signal frames Otherwise the application has no way of knowing that signal loss happened other than noticing a gap between actual frames. 2019-06-20 14:36:02 +1000 Matthew Waters * ext/vulkan/shaders/ayuv_to_rgb.frag: * ext/vulkan/shaders/downsample_ayuv.glsl: vulkan: remove unused downsample AYUV shader 2019-06-19 19:43:14 +0200 Mathieu Duponchelle * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportreceivebin.h: webrtcbin: fix DTLS when receivebin is set to DROP Regression introduced by b4bdcf15b7237eb5c5943c4f746701a477333000 This commit prevents the handshake from reaching dtlsdec when the receive state of the receive bin is set to DROP (for example when transceivers are sendonly). This preserves the intent of the commit, by blocking the bin at its sinks until the receive state is no longer BLOCK, but makes sure the handshake still goes through, by only dropping data at the src pads, as was the case before. 2019-06-20 01:39:53 +1000 Matthew Waters * ext/vulkan/shaders/meson.build: * ext/vulkan/shaders/nv12_to_rgb.frag: * ext/vulkan/shaders/rgb_to_nv12.frag: * ext/vulkan/shaders/upsample_nv12.glsl: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkfullscreenrender.c: vkcolorconvert: add support for RGB<->NV12 2019-06-20 01:36:55 +1000 Matthew Waters * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkbufferpool.c: * tests/check/elements/vkcolorconvert.c: vkbuffermemory: report requested size of the memory Rather than using Vulkan's much larger aligned sizes. Fixes multi-planer video with the GstVideoFrame API. 2019-06-19 19:09:21 +1000 Matthew Waters * ext/vulkan/shaders/ayuv_to_rgb.frag: * ext/vulkan/shaders/color_convert_generic.glsl: * ext/vulkan/shaders/downsample_ayuv.glsl: * ext/vulkan/shaders/meson.build: * ext/vulkan/shaders/rgb_to_ayuv.frag: * ext/vulkan/shaders/rgb_to_yuy2.frag: * ext/vulkan/shaders/swizzle.glsl: * ext/vulkan/shaders/upsample_ayuv.glsl: * ext/vulkan/shaders/upsample_yuy2.glsl: * ext/vulkan/shaders/uyvy_to_rgb.frag: * ext/vulkan/shaders/yuy2_to_rgb.frag: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkcolorconvert.h: vulkancolorconvert: support RGB <-> AYUV/YUY2/UYVY 2019-06-19 15:28:42 +1000 Matthew Waters * ext/vulkan/vktrash.c: * ext/vulkan/vktrash.h: vktrash: add mini_object_unref destroy function 2019-06-19 15:27:11 +1000 Matthew Waters * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkimageidentity.c: vkfullscreenrender: create descriptor sets later The desciptor sets may be dependant on the caps 2019-06-19 15:25:18 +1000 Matthew Waters * ext/vulkan/shaders/meson.build: vulkan/shaders: change glslc compilation args based on configurations Add depfile support so that modifying an #included glsl snippet rebuilds all the dependant shaders. 2019-06-13 18:05:40 +1000 Matthew Waters * ext/vulkan/gstvulkan.c: * ext/vulkan/meson.build: * ext/vulkan/shaders/meson.build: * ext/vulkan/shaders/swizzle.frag: * ext/vulkan/shaders/swizzle.glsl: * ext/vulkan/shaders/swizzle_and_clobber_alpha.frag: * ext/vulkan/vkcolorconvert.c: * ext/vulkan/vkcolorconvert.h: * tests/check/elements/vkcolorconvert.c: * tests/check/meson.build: vulkan: add a color conversion element Currently converts between all 4-component RGBA/RGBx formats. 2019-06-13 17:57:51 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkformat.c: * gst-libs/gst/vulkan/gstvkformat.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: vulkan: add some information on vulkan formats 2019-06-13 17:44:22 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: Also implement copying non vulkan memory into vulkan buffers The only way we can upload things is through our memory so any non-vulkan memory that appears must be copied into our memory. 2019-06-13 17:05:44 +1000 Matthew Waters * ext/vulkan/gstvulkan.c: * ext/vulkan/meson.build: * ext/vulkan/vkdownload.c: * ext/vulkan/vkdownload.h: vulkan: add download element Currently only downloads images into a host-visible buffer and synchronises immediately. 2019-06-11 02:05:32 +1000 Matthew Waters * ext/vulkan/meson.build: * ext/vulkan/shaders/identity.frag: * ext/vulkan/shaders/identity.vert: * ext/vulkan/vkfullscreenrender.c: * ext/vulkan/vkfullscreenrender.h: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkimageidentity.h: vulkan/identity: Split out most rendering code to a base class A simple base class that renders a 2d fullscreen quad parallel to the screen surface inside the view frustum. 2019-06-12 18:25:00 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: fix a structure sType 2019-06-11 18:37:59 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkqueue.c: vulkan: ensure initialization of a couple of debug categories Needed when some of the context querying functions can be called before an instance has been created. 2019-05-21 17:19:00 +1000 Matthew Waters * ext/vulkan/vksink.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: vksink: Retrieve vulkan queue earlier Allows using the swapper's queue over upstream's queue. The swapper will check for the necessary presentation support that upstream may not consider. 2019-06-19 14:13:02 +0300 Sebastian Dröge * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Pass through interlace-mode field from upstream if available We generally always prefer the information from upstream for other metadata (pixel-aspect-ration, etc.) and should also do so here. Other parsers (h264parse) already do the same. 2019-06-19 13:31:39 +0300 Sebastian Dröge * ext/zbar/gstzbar.c: zbar: Include running-time, stream-time and duration in the messages The timestamp/PTS alone is meaningless without the segment and usually applications care about the running-time or stream-time. This also keeps the messages in sync with the spectrum and level elements. 2017-11-04 20:40:18 +0900 Seungha Yang * tests/check/elements/hlsdemux_m3u8.c: tests: hls: Add a test case for EXT-X-MAP tag https://bugzilla.gnome.org/show_bug.cgi?id=776928 2019-05-12 19:21:23 +0900 Seungha Yang * ext/hls/meson.build: * tests/check/elements/hlsdemux_m3u8.c: * tests/check/meson.build: tests: Enable hls m3u8 unit test with meson build 2017-11-04 20:39:39 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Set fragment header uri if exists To allow downloading fragment hearder, set its uri if there is available "Media Initialization" parsed from EXT-X-MAP tag https://bugzilla.gnome.org/show_bug.cgi?id=776928 2017-11-04 20:15:33 +0900 Seungha Yang * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: m3u8: Parsing EXT-X-MAP tag to store initialization data EXT-X-MAP tag informs media initialization data, such as moov box in ISOBMFF case and PAT/PMT for MPEG TS stream. https://bugzilla.gnome.org/show_bug.cgi?id=776928 2017-01-30 14:13:06 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Do not clear/advance fragment by finished header downloading Header data must be forwarded to downstream, but if demux does not finish to finding type (e.g., ts, mp4 and etc), this header data can be cleared by _stream_clear_pending_data(). Moreover, although demux finish downloading header data, still it has fragment date to be downloaded, fragment sequence shouldn't be advanced yet at that moment. https://bugzilla.gnome.org/show_bug.cgi?id=776928 2019-02-19 21:46:43 +0900 Seungha Yang * tests/check/libs/insertbin.c: tests: insertbin: Don't use duplicated variable name ../subprojects/gst-plugins-bad/tests/check/libs/insertbin.c(46): warning C4273: 'mutex': ... The "mutex" was declared in gstcheck.h already 2019-06-17 14:58:50 +1000 Matthew Waters * sys/applemedia/meson.build: applemedia: add the '-fobjc-arc' for darwin/ios We use ARC so we need to signal that to the compiler. 2019-06-03 12:18:13 -0400 Thibault Saunier * sys/uvch264/gstuvch264.c: * sys/uvch264/gstuvch264deviceprovider.c: * sys/uvch264/meson.build: uvch264: Implement device provider 2019-06-03 12:17:22 -0400 Thibault Saunier * sys/uvch264/gstuvch264_src.c: * sys/uvch264/gstuvch264_src.h: * sys/uvch264/uvc_h264.c: * sys/uvch264/uvc_h264.h: uvch264: Factor out checking if v4l2device is uvc compatible 2019-04-08 19:24:00 +0200 Nicola Murino * gst/videoparsers/gsth265parse.c: h265parse: update parser state and header flag when using fallback sps When sps parsing fails we use a fallback sps from the caps, since we have got an sps we need to update parser state and header as in the case the sps was successfully parsed 2018-11-26 17:23:21 +0100 Nicola Murino * gst/videoparsers/gsth264parse.c: h264parse: update parser state and header flag when using fallback sps When sps parsing fails we use a fallback sps from the caps, since we have got an sps we need to update parser state and header as in the case the sps was successfully parsed Closes #503 2019-05-31 10:12:54 -0400 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Post a WARNING when data is broken 2019-06-12 15:47:52 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Add more string representations of extension profiles 2019-06-12 15:32:17 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Add more profiles to known type "High Throughput", "Multiview", "Scalable", "3D", "Screen Content Coding", and "Scalable format range extensions" profiles can be supported via h265parser APIs now. 2019-04-18 18:12:34 +0900 Dong Il Park * gst/videoparsers/gsth265parse.c: h265parse: Update framerate when we found vps_timing_info The timing_info was described at vps or vui parameter. So we can update the framerate field of GstCaps when we could parse vps_timing_info parameters. 2019-04-18 16:54:51 +0900 Dong Il Park * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Use vps_timing_info when not present in vui The same timing_info will be present at vps or vui. When the timeing_info is present in the VPS, vui_timing_info , when present, shall be equal to vps_timing_info, and when not present, is inferred to be equal to vps_timing_info. 2019-06-08 22:57:21 +0900 Seungha Yang * gst-libs/gst/vulkan/gstvkapi.h: * gst-libs/gst/vulkan/gstvkconfig.h.meson: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/win32/gstvkwindow_win32.c: * gst-libs/gst/vulkan/win32/gstvkwindow_win32.h: vulkan: Add support WIN32 for Windows It's almost a fork of glwindow_win32 implementation. To build on Windows, Vulkan SDK (at https://vulkan.lunarg.com/sdk/home) and VK_SDK_PATH environment are required. Note that VK_SDK_PATH environment setting is a part of the SDK installation. 2019-06-12 10:12:14 +0200 Arun Raghavan * sys/bluez/gstavdtputil.c: avdtpsrc: Honour initial transport volume setting before connection We make the binding go from the avdtpsrc to the transport, so that any initial setting before a connection made is used. 2019-06-11 12:10:13 -0400 Thibault Saunier * sys/uvch264/gstuvch264_src.c: uvch264src: Make sure we set our segment We were not setting self->segment and we are using it when notifying downstream that we handled a REQUEST_KEY_UNIT event, leading to all sort of criticals. 2019-06-11 14:28:22 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Don't miss constraint indicator flags in codec data Set more unhandled flags to general_constraint_indicator_flags field. The field is required for building "Codecs" parameter as defined ISO/IEC 14496-15 Annex E. The resulting "Codecs" string might be used in various places (e.g., HLS/DASH manifest, browser, player, etc) 2019-06-07 14:12:25 +0000 Marc Leeman * gst/rtp/meson.build: rtpmanagerbad: fix the plugin registration After compilation, the compiled library needs to be added to the list of plugin libraries. . Also, fix for static builds 2019-06-06 18:22:43 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst_plugins_cache.json: * meson_options.txt: * sys/Makefile.am: * sys/meson.build: * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpau.c: * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpdecoder.h: * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpoutputbuffer.c: * sys/vdpau/gstvdpoutputbuffer.h: * sys/vdpau/gstvdpoutputbufferpool.c: * sys/vdpau/gstvdpoutputbufferpool.h: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideobufferpool.c: * sys/vdpau/gstvdpvideobufferpool.h: * sys/vdpau/gstvdpvideomemory.c: * sys/vdpau/gstvdpvideomemory.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/meson.build: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegdec.h: * sys/vdpau/mpeg4/gstmpeg4frame.c: * sys/vdpau/mpeg4/gstmpeg4frame.h: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.h: * sys/vdpau/mpeg4/mpeg4util.c: * sys/vdpau/mpeg4/mpeg4util.h: * tests/check/Makefile.am: Remove VDPAU plugin It's been replaced by NVENC/NVDEC and even NVIDIA doesn't support VDPAU any longer and hasn't for quite some time. The plugin has been unmaintained and unsupported for a very long time, and given the track record over the last 10 years it seems highly unlikely anyone is going to make it work well, not to mention adding plumbing for proper zero-copy or gst-gl integration. Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/828 2019-06-06 18:36:00 +0100 Tim-Philipp Müller * Makefile.am: autotools: fix distcheck 2019-06-05 17:10:19 +0100 Tim-Philipp Müller * Makefile.am: autotools: remove gst/rtp/ from cruft dir list 2019-06-05 16:58:32 +0100 Tim-Philipp Müller * gst/rtp/Makefile.am: rtp: fix autotools build some more 2019-06-05 12:47:16 +0100 Philippe Normand * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpesrc.cpp: wpe: Fix build with -Werror enabled Including gl.h from WPEThreadedView.h leads to GST_LEVEL_DEFAULT detected as redefined. The proposed fix is to include config.h from the CPP implementation file and disable gl.h inclusion in the header, by using forward declarations. 2019-06-05 11:46:49 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Allow start and end timecode to be set back to NULL And check everywhere if they're NULL before accessing them. 2019-06-05 08:12:10 +0200 Niels De Graef * gst-libs/gst/audio/gstplanaraudioadapter.h: * gst-libs/gst/insertbin/gstinsertbin.h: * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/rtcsessiondescription.h: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: Use G_DEFINE_AUTOPTR_CLEANUP_FUNC unconditionally Since we started depending on GLib 2.44, we can be sure this macro is defined (it will be a no-op on compilers that don't support it). 2019-05-21 14:04:07 +1000 Matthew Waters * tests/check/libs/vkmemory.c: tests/vulkan: allow instance creation failures Usually means that there is no vulkan implementation available. We skip tests in that case 2019-05-20 13:54:56 +1000 Matthew Waters * tests/check/libs/vkmemory.c: * tests/check/meson.build: test/vulkan: add simple memory test 2019-05-20 13:48:27 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: remove debugging error log 2019-05-20 13:46:56 +1000 Matthew Waters * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvkbarrier.h: * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkbuffermemory.h: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan: implement the correct memory barriers necessary Vulkan validation layers are finally silent! 2019-05-16 22:39:51 +1000 Matthew Waters * ext/vulkan/vkswapper.c: * ext/vulkan/vkupload.c: vulkan: remove uneeded buffer inheritence information buffer inheritence informationi is only required for secondary command buffers which we are not creating 2019-05-16 19:48:24 +1000 Matthew Waters * ext/vulkan/gstvulkan.c: * ext/vulkan/meson.build: * ext/vulkan/shaders/bin2array.py: * ext/vulkan/shaders/identity.frag: * ext/vulkan/shaders/identity.vert: * ext/vulkan/shaders/meson.build: * ext/vulkan/vkimageidentity.c: * ext/vulkan/vkimageidentity.h: * ext/vulkan/vkshader.c: * ext/vulkan/vkshader.h: vulkan: add a new image copying element Copies using the graphics pipeline, an input image and renders to an output image. 2019-05-16 19:39:20 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkmemory.c: vkmemory: fix allocation of sizes less than the alignment Avoids allocating a 0-sized device memory which is invalid vulkan usage 2019-05-16 19:38:35 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkbufferpool.c: * gst-libs/gst/vulkan/gstvkimagebufferpool.c: vk*pool: expand usage hints to cover use in a renderpass 2019-05-16 19:36:18 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkimagememory.c: vkformat: fix format conversion for matching vulkan formats Other formats still need a swizzle or conversion. 2019-05-16 19:35:11 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkbuffermemory.c: vkbuffermemory: bufferview's are only for texture-like memory 2019-05-16 19:34:41 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: add raw->vulkanimage uploader 2019-05-16 19:33:06 +1000 Matthew Waters * ext/vulkan/vktrash.c: * ext/vulkan/vktrash.h: vktrash: add more destruction of vulkan types 2019-05-09 21:50:47 +1000 Matthew Waters * ext/vulkan/vkswapper.c: * ext/vulkan/vkupload.c: * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkmacros.h: * gst-libs/gst/vulkan/vulkan.h: vulkan: use c99 designated initializers where possible Makes the code much easier to read and allows removing our terrible macros for structure initialization. 2019-05-08 21:26:17 +1000 Matthew Waters * ext/vulkan/vksink.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkupload.c: vkswapper: support displaying memory:VulkanImage 2019-05-08 14:50:29 +1000 Matthew Waters * ext/vulkan/meson.build: * ext/vulkan/vkupload.c: * ext/vulkan/vkupload.h: * gst-libs/gst/vulkan/gstvkbufferpool.c: * gst-libs/gst/vulkan/gstvkimagebufferpool.c: * gst-libs/gst/vulkan/gstvkimagebufferpool.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: vkupload: implement buffer to image uploader 2019-05-08 14:48:43 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkqueue.c: vkqueue: unly unref the context query if it succeeds 2019-05-08 14:47:43 +1000 Matthew Waters * ext/vulkan/vksink.c: vulkansink: Respond to queue queries 2019-04-11 16:52:54 +1000 Matthew Waters * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkbuffermemory.h: * gst-libs/gst/vulkan/gstvkbufferpool.c: * gst-libs/gst/vulkan/gstvkcommandpool.c: * gst-libs/gst/vulkan/gstvkcommandpool.h: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkerror.c: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkfence.h: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkmemory.c: * gst-libs/gst/vulkan/gstvkmemory.h: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkqueue.h: * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/gstvkutils.h: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/gstvkwindow.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan: large docs update 2019-04-10 14:27:26 +1000 Matthew Waters * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: * ext/vulkan/vktrash.c: * ext/vulkan/vktrash.h: * gst-libs/gst/vulkan/gstvkcommandpool.c: * gst-libs/gst/vulkan/gstvkcommandpool.h: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkqueue.h: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: vulkan: add a command pool object for tracking 2019-04-10 11:56:59 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: don't output duplicate formats 2019-04-08 21:35:22 +1000 Matthew Waters * configure.ac: * ext/Makefile.am: * ext/vulkan/.gitignore: * ext/vulkan/Makefile.am: * ext/vulkan/meson.build: * ext/vulkan/vksink.c: * ext/vulkan/vksink.h: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: * ext/vulkan/vktrash.c: * ext/vulkan/vktrash.h: * ext/vulkan/vkupload.h: * ext/vulkan/vkutils.h: * ext/vulkan/wayland/Makefile.am: * ext/vulkan/xcb/Makefile.am: * gst-libs/gst/meson.build: * gst-libs/gst/vulkan/.gitignore: * gst-libs/gst/vulkan/cocoa/gstvkcocoa_utils.h: * gst-libs/gst/vulkan/cocoa/gstvkdisplay_cocoa.h: * gst-libs/gst/vulkan/cocoa/gstvkdisplay_cocoa.m: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.h: * gst-libs/gst/vulkan/cocoa/gstvkwindow_cocoa.m: * gst-libs/gst/vulkan/gstvkapi.h: * gst-libs/gst/vulkan/gstvkbuffermemory.c: * gst-libs/gst/vulkan/gstvkbuffermemory.h: * gst-libs/gst/vulkan/gstvkbufferpool.c: * gst-libs/gst/vulkan/gstvkbufferpool.h: * gst-libs/gst/vulkan/gstvkconfig.h.meson: * gst-libs/gst/vulkan/gstvkdevice.c: * gst-libs/gst/vulkan/gstvkdevice.h: * gst-libs/gst/vulkan/gstvkdisplay.c: * gst-libs/gst/vulkan/gstvkdisplay.h: * gst-libs/gst/vulkan/gstvkerror.c: * gst-libs/gst/vulkan/gstvkerror.h: * gst-libs/gst/vulkan/gstvkfence.c: * gst-libs/gst/vulkan/gstvkfence.h: * gst-libs/gst/vulkan/gstvkimagememory.c: * gst-libs/gst/vulkan/gstvkimagememory.h: * gst-libs/gst/vulkan/gstvkinstance.c: * gst-libs/gst/vulkan/gstvkinstance.h: * gst-libs/gst/vulkan/gstvkmacros.h: * gst-libs/gst/vulkan/gstvkmemory.c: * gst-libs/gst/vulkan/gstvkmemory.h: * gst-libs/gst/vulkan/gstvkqueue.c: * gst-libs/gst/vulkan/gstvkqueue.h: * gst-libs/gst/vulkan/gstvkutils.c: * gst-libs/gst/vulkan/gstvkutils.h: * gst-libs/gst/vulkan/gstvkwindow.c: * gst-libs/gst/vulkan/gstvkwindow.h: * gst-libs/gst/vulkan/ios/gstvkdisplay_ios.h: * gst-libs/gst/vulkan/ios/gstvkdisplay_ios.m: * gst-libs/gst/vulkan/ios/gstvkios_utils.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.h: * gst-libs/gst/vulkan/ios/gstvkwindow_ios.m: * gst-libs/gst/vulkan/meson.build: * gst-libs/gst/vulkan/vulkan-prelude.h: * gst-libs/gst/vulkan/vulkan.h: * gst-libs/gst/vulkan/vulkan_fwd.h: * gst-libs/gst/vulkan/wayland/gstvkdisplay_wayland.c: * gst-libs/gst/vulkan/wayland/gstvkdisplay_wayland.h: * gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.c: * gst-libs/gst/vulkan/wayland/gstvkwindow_wayland.h: * gst-libs/gst/vulkan/wayland/wayland_event_source.c: * gst-libs/gst/vulkan/wayland/wayland_event_source.h: * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.c: * gst-libs/gst/vulkan/xcb/gstvkdisplay_xcb.h: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.c: * gst-libs/gst/vulkan/xcb/gstvkwindow_xcb.h: * gst-libs/gst/vulkan/xcb/xcb_event_source.c: * gst-libs/gst/vulkan/xcb/xcb_event_source.h: * pkgconfig/gstreamer-vulkan-uninstalled.pc.in: * pkgconfig/gstreamer-vulkan.pc.in: * pkgconfig/meson.build: vulkan: make a gstvulkan library out of the existing API 2019-04-08 18:43:50 +1000 Matthew Waters * ext/vulkan/vkbufferpool.c: vkbufferpool: Fix multiplaner allocations Use the plane width/height and the sizes required by vulkan Fixes allocation of: videotestsrc ! video/x-raw,format=I420 ! vulkanupload ! fakesink 2019-04-08 18:42:12 +1000 Matthew Waters * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkerror.h: * ext/vulkan/vkimagememory.c: vk*memory: explicitly error out for driver NPOT alignment 2019-04-04 19:30:28 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: vulkan/image: initialize the requirements struct before using it 2019-04-04 19:27:55 +1100 Matthew Waters * ext/vulkan/vkupload.c: * ext/vulkan/vkupload.h: * ext/vulkan/vkutils.c: vulkan: don't require every element to have a display Only sink elements really care about a valid display 2019-04-04 18:38:13 +1100 Matthew Waters * ext/vulkan/gstvulkan.c: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vkwindow.c: vulkan: remove unused X11 window system references We use XCB instead 2019-04-04 17:33:34 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkutils.c: * ext/vulkan/vkutils_private.h: vulkan: remove unused layer enablement This is possible now via the vulkan loader 2019-05-20 16:34:55 +0500 Ali Yousuf * ext/webrtc/gstwebrtcice.c: webrtc: Fix log when adding stun server 2019-06-04 15:35:24 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: fix the location of signalling-state change notification 1. The spec indicates that the notification should occur near the end of 'setting the description' processing 2. The current location with the drop of the lock could cause the 'check if negotiation is needed' logic to execute and become confused about the state of the webrtcbin's current local descriptions. In the bad case, the following assertions could be hit: g_assert (trans->mline < gst_sdp_message_medias_len (webrtc->current_local_description->sdp)); g_assert (trans->mline < gst_sdp_message_medias_len (webrtc->current_remote_description->sdp)); Moving the signalling state change later in the set description task means that checking for a renegotiation will early abort as the signalling state is not STABLE before the session description and transceivers have been updated. 2019-06-03 20:29:18 -0400 Nicolas Dufresne * gst/rtp/Makefile.am: make: rtp: Remove spurious header file This header file no longer exist. 2019-06-03 20:08:23 +0000 Marc Leeman * configure.ac: * gst/meson.build: * gst/rtp/Makefile.am: * gst/rtp/gstrtp-utils.c: * gst/rtp/gstrtp-utils.h: * gst/rtp/gstrtpsink.c: * gst/rtp/gstrtpsink.h: * gst/rtp/gstrtpsrc.c: * gst/rtp/gstrtpsrc.h: * gst/rtp/meson.build: * gst/rtp/plugin.c: * meson_options.txt: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rtpsink.c: * tests/check/elements/rtpsrc.c: * tests/check/meson.build: rtpmanagerbad: add RTP streaming elements This is a re-implementation of the RTP elements that are submitted in 2013 to handle RTP streams. The elements handle a correct connection for the bi-directional use of the RTCP sockets. https://bugzilla.gnome.org/show_bug.cgi?id=703111 The rtpsink and rtpsrc elements add an URI interface so that streams can be decoded with decodebin using the rtp:// interface. The code can be used as follows ``` gst-launch-1.0 videotestsrc ! x264enc ! rtph264pay config-interval=3 ! rtpsink uri=rtp://239.1.1.1:1234 gst-launch-1.0 videotestsrc ! x264enc ! rtph264pay config-interval=1 ! rtpsink uri=rtp://239.1.2.3:5000 gst-launch-1.0 rtpsrc uri=rtp://239.1.2.3:5000?encoding-name=H264 ! rtph264depay ! avdec_h264 ! videoconvert ! xvimagesink gst-launch-1.0 videotestsrc ! avenc_mpeg4 ! rtpmp4vpay config-interval=1 ! rtpsink uri=rtp://239.1.2.3:5000 gst-launch-1.0 rtpsrc uri=rtp://239.1.2.3:5000?encoding-name=MP4V-ES ! rtpmp4vdepay ! avdec_mpeg4 ! videoconvert ! xvimagesink ``` rtpmanagerbad: add pkg-config rtpmanagerbad: Rtp should be uppercase rtpmanagerbad: add G_OS_WIN32 for shielding unix headers rtpmanagerbad: remove Since from documentation rtpmanagerbad: rename lib name from nrtp to rtpmanagerbad rtpmanagerbad: sync meson.build with other modules rtpmanagerbad: add Makefile.am rtpmanagerbad: use GstElement to count pads rtpmanagerbad: use gst_bin_set_suppressed_flags rtpmanagerbad: check element creation rtpmanagerbad: post message when trying to access missing rtpbin rtpmanagerbad: return FALSE with g_return tests rtpmanagerbad: use gsocket multicast check rtpmanagerbad: use gst_caps_new_empty_simple iso gst_caps_from_string rtpmanagerbad: sync with gstrtppayloads.h rtpmanagerbad: correct media type X-GST rtpmanagerbad: test if a compatible pad was found rtpmanagerbad: remove evil copy of GstRTPPayloadInfo rtpmanagerbad: add gio_dep to meson rtpmanagerbad: revert to old glib boilerplate GStreamer 1.16 does not yet support the newer GLib templates, so revert. rtpmanagerbad: return GST_STATE_CHANGE_NO_PREROLL for live sources for live sources, NO_PREROLL should be returned for PLAYING->PAUSED and READY->PAUSED transitions. rtpmanagerbad: use GstElement pad counting rtpmanagerbad: just use template name to request pad rtpmanagerbad: remove commented code rtpmanagerbad: use funnel to send multiple streams on one socket rtpmanagerbad: avoid beaches beaches should only be used during the summer, so rewrite the code to return explicitly and avoid beaches during the winter. rtpmanagerbad: add copyright to test code rtpmanagerbad: g_free is NULL safe rtpmanagerbad: do not trace rtpbin rtpmanagerbad: return NULL explitly rtpmanagerbad: warn when data port is not even According to RFC 3550, RTP data should be sent on even ports, while RTCP is sent on the following odd port. rtpmanagerbad: document port allocation in rtpsink/src rtpmanagerbad: improve uri description rtpmanagerbad: add comment re-use socket rtpmanagerbad: rename gst_object_set_properties_from_uri_query rtpmanagerbad: loan prop/val setter from rist rtpmanagerbad: rtpsrc: fix unitialised pointer rtpmanagerbad: fix silly typo rtpmanagerbad: test for empty key/value rtpmanagerbad: rtpsrc: deprecate ssrc collision to INFO rtpmanagerbad: sync debug with rist rtpmanagerbad: small strings allocated on stack rtpmanagerbad: correct rename rtpmanagerbad: add locking on prop setters/getters Locking is added because the URI allows to access the properties too. rtpmanagerbad: allow for RTCP through NAT rtpmanagerbad: move gio to header file rtpmanagerbad: free small strings too rtpmanagerbad: ttl_mc for ttl on dynudpsink rtpmanagerbad: add comments on the URI registered rtpmanagerbad: correct macro after file rename rtpmanagerbad: code style rtpmanagerbad: handle wrong URIs in setter rtpmanagerbad: nit URI notation correction In an URI, the first key/value pair should not have an ampersand, the parser did not die though. 2019-05-31 23:06:33 +0200 Niels De Graef * configure.ac: * meson.build: meson: Bump minimal GLib version to 2.44 This means we can use some newer features and get rid of some boilerplate code using the G_DECLARE_* macros. As discussed on IRC, 2.44 is old enough by now to start depending on it. 2018-12-11 14:43:21 +0000 Alex Ashley * tests/check/elements/dash_mpd.c: tests/dash_mpd: take account of Period start in expected timestamps The start of each segment is relative to the Period start, minus the presentation time offset. As specified in section 5.3.9.6 of the MPEG DASH specification: The value of the @t attribute minus the value of the @presentationTimeOffset specifies the MPD start time of the first Segment in the series. Several tests use a Period@start value of 10 seconds, which either needs to be taken into account when calculating expected timestamps or have that attribute removed. This commit uses a mix of updating the timestamps and removing the start attribute, so that both the case of its presence and absence is tested. 2018-10-16 16:57:30 +0100 Alex Ashley * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: include both Period start and presentationTimeOffset in segment start The start of each segment is relative to the Period start, minus the presentation time offset. As specified in section 5.3.9.6 of the MPEG DASH specification: The value of the @t attribute minus the value of the @presentationTimeOffset specifies the MPD start time of the first Segment in the series. dashdemux was not taking account of presentationTimeOffset and in some methods was not taking into account the Period start time. This commit modifies the segment->start value to always be relative to the MPD start time (zero for VOD, availabilityStartTime for live streams). This makes all uses of the segment list consistent. Fixes #841 2019-06-01 01:42:51 +0200 Mathieu Duponchelle * docs/libs/audio/index.md: * docs/libs/audio/sitemap.txt: * docs/meson.build: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: docs: document gstreamer-bad-audio And unprefix subproject paths, making a special case for webrtc, to not conflict with the webrtc plugin 2019-06-01 01:42:06 +0200 Mathieu Duponchelle * gst-libs/gst/audio/meson.build: libs: build a gir file for gstreamer-bad-audio 2018-10-02 11:25:14 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Don't print warnings for every buffer passed 2019-05-31 14:09:40 +0800 Haihao Xiang * sys/msdk/gstmsdksystemmemory.c: msdk: return a right pointer for VUYA format The first channel in memory is V for VUYA format, note GST_VIDEO_FORMAT_VUYA is mapped to MFX_FOURCC_AYUV in this plugin 2019-05-29 17:05:34 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: docs: update plugin doc cache and add more plugins 2019-05-29 11:28:00 +0100 Tim-Philipp Müller * ext/bs2b/meson.build: * ext/closedcaption/meson.build: * ext/colormanagement/meson.build: * ext/dc1394/meson.build: * ext/gme/meson.build: * ext/ladspa/meson.build: * ext/lv2/meson.build: * ext/modplug/meson.build: * ext/musepack/meson.build: * ext/neon/meson.build: * ext/ofa/meson.build: * ext/openal/meson.build: * ext/openexr/meson.build: * ext/openmpt/meson.build: * ext/openni2/meson.build: * ext/sctp/meson.build: * ext/sndfile/meson.build: * ext/srt/meson.build: * ext/teletextdec/meson.build: * ext/voamrwbenc/meson.build: * ext/wildmidi/meson.build: * ext/wpe/meson.build: * gst/audiolatency/meson.build: * sys/androidmedia/meson.build: * sys/applemedia/meson.build: * sys/opensles/meson.build: * sys/tinyalsa/meson.build: * sys/vdpau/meson.build: meson: add more plugins to plugins list Makes sure their path gets added to the uninstalled environment and makes sure they get included in the docs. 2019-05-22 21:44:44 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: basetsmux: don't reset pad on flush_stop This was mistakenly added when porting to aggregator, this restores the old behaviour, by only resetting them when the muxer itself is reset 2019-05-22 21:44:22 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: events don't necessarily have a structure 2019-05-22 21:44:02 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: basetsmux: fix send_event by chaining up 2019-05-29 18:27:09 +0200 Mathieu Duponchelle * docs/meson.build: * gst/mpegtsmux/gstmpegtsmux.c: mpegtsmux: add SECTION comment We include an example for injecting sections in the transport stream in the documentation 2019-05-29 17:03:59 +0200 Mathieu Duponchelle * tests/examples/mpegts/meson.build: * tests/examples/mpegts/ts-section-writer.c: tests: add example for injecting MPEG-TS sections 2019-05-29 17:01:40 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: basetsmux: preserve user-specified sections across resets As sections can be provided by the user through send_event when the element state is NULL, their lifetime is expected to match that of the muxer, and they must be preserved when the state changes 2019-05-23 01:44:19 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstatscmux.c: atscmux: send empty RRT / MGT / STT tables These are mandated by A/65, their absence gets flagged by stream analyzers. Users can of course provide filled up versions through the send_event API. 2019-05-23 00:03:18 +0200 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: tsmux: maintain packet counters in a global array We can have multiple TsMuxPacketInfo objects for the same PID with user-provided sections, for example ATSC requires multiple tables with the same PID. 2019-05-21 02:53:20 +0200 Mathieu Duponchelle * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: extend support for ATSC tables Adds constructors for the following sections: STT: System Time Table MGT: Master Guide Table RRT: Rating Region Table Also adds parsing code for RRT 2019-05-25 00:02:05 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: only set sctp ports if they are different SCTPassociation will complain if we do that while running and resetting is not something we support at the moment 2019-03-08 00:39:59 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: wait until the SDP has been set before continuing If we renegotiate, then it is currently possible for an added stream to be added to webrtcbin before the SDP is complete. This causes an internal inconsistency as there is a 'pending sink transceiver' without a corresponding media section in the sdp. It also does not have an associated transport stream and will fail in _connect_input_stream(). 2019-03-08 00:37:39 +1100 Matthew Waters * ext/webrtc/webrtcdatachannel.h: * tests/check/elements/webrtcbin.c: tests/webrtc: fix racy test with a prenegotiated data channel If both data channels become ready simultaneously, then the two integer read-add-update cycles can execute concurrently and only ever increment once instead of the required twice. Use an atomic add instead. 2019-03-08 00:32:53 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/webrtcdatachannel.c: webrtc/dc: move some code from webrtcbin into the datachannel 2019-03-04 21:44:33 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: hold onto any unknown ICE candidates until the next SDP set It is very possible for badly behaving signalling or peers to send us ICE candidates before we receive an SDP. While we had consideration for that on the first set SDP, subsequent SDP's could result in misconfigured ICE transports. Expand the previous code to also take into account reconfigurations. 2018-11-28 17:23:31 +1100 Matthew Waters * .gitignore: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/utils.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * gst-libs/gst/webrtc/rtptransceiver.c: * tests/check/elements/webrtcbin.c: * tests/examples/webrtc/Makefile.am: * tests/examples/webrtc/meson.build: * tests/examples/webrtc/webrtcrenego.c: webrtc: Initial support for stream addition/removal Limitations: - No transport changes at all (ICE, DTLS) - Codec changes are untested and probably don't work - Stream removal doesn't remove transports (i.e. non-bundled transports will stay around until webrtcbin is shutdown) - Unified Plan SDP only. No Plan-B support. 2018-12-05 18:36:27 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: a couple of debug/error string fixes 2018-12-04 22:49:05 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: rewrite bundle checks for separate validate_sdp passes Improves reusability 2018-12-04 20:38:19 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: add helper for getting the offer/answer element 2018-12-04 20:32:56 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: only check audio/video for direction attributes 2018-12-06 23:28:18 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: expose the transceiver as a pad property 2018-12-06 23:25:54 +1100 Matthew Waters * ext/webrtc/webrtctransceiver.c: * gst-libs/gst/webrtc/rtptransceiver.c: * gst-libs/gst/webrtc/rtptransceiver.h: webrtc/transceiver: add a set_direction function Matches the setDirection() from the W3C spec and allows changing the transceiver direction at the next negotiation cycle. 2018-12-05 19:17:45 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: track and log more rtpbin state like bye's timeouts, validation, activation, etc 2018-12-06 16:59:52 +1100 Matthew Waters * ext/webrtc/webrtcsdp.c: webrtc: add support for intersecting inactive transceiver directions 2018-12-04 20:30:49 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: mark remote/local-description as readonly 2018-11-27 19:27:27 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: don't reuse stopped transceivers at all 2018-11-27 19:25:51 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: also check for a null mid to signify an unassociated transceiver We always give our transceivers an mline on creation so that check is not useful by itself 2018-11-27 19:24:40 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: only check sink pads for a 'sink pads have caps' check 2018-11-26 22:10:57 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtc: fix answer creation with multiple streams and similar caps 2018-11-26 20:41:29 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: factor out sdp validation into a single function 2018-11-26 19:54:18 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: validate number of sdp media using validate_sdp 2018-11-26 19:48:31 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: allow multiple validation functions 2018-11-26 19:19:04 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: test that duplicate negotiations succeed 2019-05-28 16:58:20 +0100 Philippe Normand * ext/webrtc/gstwebrtcbin.c: webrtcbin: Expose current and pending local/remote description properties They are already handled in the property getter and setter functions but were not formally declared in the GObject class. 2019-05-29 22:58:08 +0200 Mathieu Duponchelle * ext/aom/gstav1dec.c: * ext/aom/gstav1enc.c: * ext/closedcaption/sliced.h: * ext/colormanagement/gstlcms.c: * ext/curl/gstcurlhttpsrc.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcameraundistort.cpp: * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttextoverlay.cpp: * ext/openmpt/gstopenmptdec.c: * ext/openni2/gstopenni2.cpp: * ext/openni2/gstopenni2src.cpp: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: * ext/wildmidi/gstwildmididec.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.h: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/faceoverlay/gstfaceoverlay.c: * gst/festival/gstfestival.c: * sys/applemedia/avfassetsrc.m: * sys/applemedia/iosassetsrc.m: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: doc: remove xml from comments 2019-05-29 18:33:02 +0000 Adam Duskett * ext/hls/meson.build: ext/hls/meson.build: fix dependency logic Currently, if one was to set -Dhls-crypto to either libgcrypt or openssl instead of auto, the following lines would fail because hls_crypto_dep is not yet set: if not hls_crypto_dep.found() and ['auto', 'libgcrypt'].contains(hls_crypto) if not hls_crypto_dep.found() and ['auto', 'openssl'].contains(hls_crypto) Instead, change "if not hls_crypto_dep.found()" to "if not have_hls_crypto" which fixes the error. 2019-05-29 12:48:06 +0100 Tim-Philipp Müller * docs/plugins/gst_plugins_cache.json: docs: remove stale plugins from docs plugin cache gtk plugin has moved to -good, schroedinger has been removed. 2019-05-23 20:24:40 -0400 Nicolas Dufresne * ext/wayland/wlwindow.c: waylandsink: Workaround gnome-shell bug Use a timeout to limit that amount of time we wait after the compositor for the initial configure event. Compositor are support to emit a configure event before any wl_buffer can be attached. The problem is that Weston strongly enforce this, while gnome-shell simply does not emit such an event. 2019-05-26 12:13:48 +0200 Nicolas Dufresne * sys/kms/gstkmsallocator.c: * sys/kms/gstkmssink.c: kmssink: Fixup all errno tracing All DRM ioctl uses errno to report the error and simply returns -1 when some error occured. This patch fixes all usage of the return value instead of errno to trace the error type and moves to g_strerror instead of string.h strerror in order to be consistent with the rest of GStreamer. 2019-05-25 19:48:25 +0200 Mathieu Duponchelle * docs/plugins/gst_plugins_cache.json: doc: update plugin cache 2019-05-25 17:35:26 +0200 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: docs: Updated plugins cache file This was done so that the duplicated rist element would go way. 2019-05-25 16:57:57 +0200 Mathieu Duponchelle * gst/autoconvert/gstautoconvert.c: * gst/camerabin2/gstcamerabin2.c: * gst/videosignal/gstsimplevideomark.c: doc: fix element section documentations Element sections were not rendered anymore after the hotdoc port, fixing this revealed a few incorrect links. 2014-11-15 22:58:49 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvp8parser.c: codecparsers: fix debug category initialisation Make thread-safe. 2019-05-20 16:15:08 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Protect properties and some other code with the mutex These variables are all accessed from multiple threads. Also fix some minor leaks in error code paths. 2019-05-20 15:45:50 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Insert some empty lines to give the code some space to breath 2019-05-20 15:30:28 +0300 Sebastian Dröge * gst/timecode/gstavwait.c: avwait: Allow setting start timecode after end timecode and the other way around This might be necessary temporarily for changing the previous settings. Make it an actual error if the settings are like this while processing a buffer. 2018-10-18 13:35:04 +0800 Haihua Hu * ext/wayland/wlbuffer.c: wayland/wlbuffer: just return if used_by_compositor is true when attach When buffer is used by compositor, we don't need attach it and hold one more reference. Just check used_by_compositor, just return if it is true. Assert error log is not need, this is normal behavior. 2019-05-21 16:17:40 +0300 Sebastian Dröge * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysrc.c: proxy: Forward queries/events sent directly to the element correctly 2019-05-21 16:03:21 +0300 Sebastian Dröge * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysrc.c: proxy: Set SOURCE flag on the source and SINK flag on the sink So that they are properly recognized as such. 2019-05-22 12:25:38 +0800 Haihao Xiang * gst/ivfparse/gstivfparse.c: ivfparse: Check the data size against IVF_FRAME_HEADER_SIZE It is parsing frame data and so should check the data size against the frame header size instead of the file header size. If don't, it is possible to drop the last frame because IVF_FILE_HEADER_SIZE is greater than IVF_FRAME_HEADER_SIZE 2019-05-14 17:04:41 -0400 Nicolas Dufresne * docs/plugins/gst_plugins_cache.json: doc: Add rist plugin to hotdoc 2019-05-07 15:58:04 -0400 Nicolas Dufresne * gst/rist/Makefile.am: * gst/rist/gstristplugin.c: * gst/rist/gstristsink.c: * gst/rist/gstroundrobin.c: * gst/rist/gstroundrobin.h: * gst/rist/meson.build: rist: Add combined bonding-method support This patchs add support for configuring the bonding method used. There is two method specified - redundant: All the RTP packets are replicated - combined: RTP packet are evenly distributed over each links Additionally, an application can set the "dispatcher" property in order to implement custom dispatching method. Whenever the "dispatcher" property is set, "bonding-method" property will be ignored. 2019-05-07 11:32:00 -0400 Nicolas Dufresne * gst/rist/gstristsrc.c: ristsrc: Implement per session stats As we can now have multiple sessions, stats need to be implemented per session. This follow RTPSession model with sources. The stats are now: dropped: 0 received: 0 recovered: 0 permanently-lost: 0 duplicates: 0 retransmission-requests-sent: 0 rtx-roundtrip-time: 0 session-stats: session-id=0 rtp-from="" rtcp-from="" dropped=0 received=0 session-id=1 rtp-from="" rtcp-from="" dropped=0 received=0 . . . session-stats is a GValueArray as there is no better alternatives. 2019-05-03 22:28:56 -0400 Nicolas Dufresne * gst/rist/gstristsrc.c: ristsrc: Cleanup unused include 2019-05-03 17:44:14 -0400 Nicolas Dufresne * gst/rist/gstristsink.c: ristsink: Implement per session stats As we can now have multiple sessions, stats need to be implemented per session. This follow RTPSession model with sources. The stats are now: sent-original-packets: 0 sent-retransmitted-packets: 0 session-stats: session-id=0 sent-original-packets=0 sent-retransmitted-packets=0 round-trip-time=0 session-id=1 sent-original-packets=0 sent-retransmitted-packets=0 round-trip-time=0 . . . session-stats is a GValueArray as there is no better alternatives. 2019-05-03 16:52:02 -0400 Nicolas Dufresne * gst/rist/gstristsrc.c: ristsrc: rtxbin may be null in finalize 2019-02-28 17:21:25 -0500 Nicolas Dufresne * gst/rist/gstristsrc.c: ristsrc: Add bonding support This add support for receiving and aggregating the same stream over multiple addresses. 2019-02-15 17:13:02 -0500 Nicolas Dufresne * gst/rist/gstristsink.c: ristsink: Implement bonding support 2019-05-21 18:49:02 +0000 Marc Leeman * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: spell and grammar corrects in top comments 2019-05-20 10:26:14 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: docs: Update cache and mark some rist prop as 'show-default' 2019-05-20 10:16:02 -0400 Thibault Saunier * gst/proxy/meson.build: doc: Add proxysink/proxysrc 2019-05-21 12:15:55 +0300 Sebastian Dröge * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Add various Since markers to new types after 1.14.0 2019-05-20 19:33:27 +0900 Seungha Yang * gst/mpegtsmux/gstmpegtsmux.c: mpegtsmux: Fix build warning error gstmpegtsmux.c:291:3: error: implicit declaration of function ‘memmove’ [-Werror=implicit-function-declaration] memmove (map.data + 4, map.data, map.size - 4); ^ gstmpegtsmux.c:291:3: error: incompatible implicit declaration of built-in function ‘memmove’ [-Werror] gstmpegtsmux.c:291:3: note: include ‘’ or provide a declaration of ‘memmove’ 2019-05-17 01:21:53 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: basetsmux: improve bitrate property documentation 2019-05-15 01:35:04 +0200 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: tsmux: refactor logic for when to (re)transmit tables In order to output them at regular intervals in the bitstream when a bitrate is specified. 2019-05-15 01:34:51 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstbasetsmux.c: basetsmux: fix PCR stream selection 2019-05-10 01:33:17 +1000 Jan Schmidt * gst/mpegtsmux/Makefile.am: Fix compile after aggregator rewrite and base class refactor 2019-05-08 16:56:29 +0200 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmux.c: tsmux: fix continuity counter for packets with no payload 2019-05-01 01:09:19 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstatscmux.c: * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: * gst/mpegtsmux/gstbasetsmuxaac.c: * gst/mpegtsmux/gstbasetsmuxaac.h: * gst/mpegtsmux/gstbasetsmuxjpeg2000.c: * gst/mpegtsmux/gstbasetsmuxjpeg2000.h: * gst/mpegtsmux/gstbasetsmuxopus.c: * gst/mpegtsmux/gstbasetsmuxopus.h: * gst/mpegtsmux/gstbasetsmuxttxt.c: * gst/mpegtsmux/gstbasetsmuxttxt.h: * gst/mpegtsmux/gstmpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * tests/check/elements/mpegtsmux.c: mpegtsmux: aggregator port 2019-04-30 01:42:59 +0200 Mathieu Duponchelle * gst/mpegtsmux/gstatscmux.c: * gst/mpegtsmux/gstatscmux.h: * gst/mpegtsmux/gstbasetsmux.c: * gst/mpegtsmux/gstbasetsmux.h: * gst/mpegtsmux/gstbasetsmuxaac.c: * gst/mpegtsmux/gstbasetsmuxaac.h: * gst/mpegtsmux/gstbasetsmuxjpeg2000.c: * gst/mpegtsmux/gstbasetsmuxjpeg2000.h: * gst/mpegtsmux/gstbasetsmuxopus.c: * gst/mpegtsmux/gstbasetsmuxopus.h: * gst/mpegtsmux/gstbasetsmuxttxt.c: * gst/mpegtsmux/gstbasetsmuxttxt.h: * gst/mpegtsmux/gstmpegtsmux.c: * gst/mpegtsmux/gstmpegtsmux.h: * gst/mpegtsmux/gstmpegtsmuxplugin.c: * gst/mpegtsmux/meson.build: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: spring cleanup, no functional change 2019-04-30 00:50:06 +0200 Mathieu Duponchelle * gst/mpegtsmux/basetsmux.c: * gst/mpegtsmux/basetsmux.h: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: basetsmux: extract m2ts-mode to mpegtsmux 2019-04-26 20:26:55 +0200 Mathieu Duponchelle * gst/mpegtsmux/atscmux.c: * gst/mpegtsmux/atscmux.h: * gst/mpegtsmux/basetsmux.c: * gst/mpegtsmux/basetsmux.h: * gst/mpegtsmux/basetsmux_aac.c: * gst/mpegtsmux/basetsmux_aac.h: * gst/mpegtsmux/basetsmux_jpeg2000.c: * gst/mpegtsmux/basetsmux_jpeg2000.h: * gst/mpegtsmux/basetsmux_opus.c: * gst/mpegtsmux/basetsmux_opus.h: * gst/mpegtsmux/basetsmux_ttxt.c: * gst/mpegtsmux/basetsmux_ttxt.h: * gst/mpegtsmux/meson.build: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: extract an actual base class 2019-04-26 00:01:31 +0200 Mathieu Duponchelle * gst/mpegtsmux/atscmux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: expose the vmethods necessary for ATSC E-AC-3 handling 2019-04-25 20:23:03 +0200 Mathieu Duponchelle * gst/mpegtsmux/atscmux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: provide API for subclasses to override stream creation 2019-04-25 18:26:27 +0200 Mathieu Duponchelle * gst/mpegtsmux/atscmux.c: * gst/mpegtsmux/atscmux.h: * gst/mpegtsmux/meson.build: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmuxplugin.c: mpegtsmux: add an ATSC subclass 2019-04-22 22:50:07 +0200 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmux.c: tsmux: Calculate PCR from number of bytes written in CBR mode 2019-04-22 22:11:29 +0200 Mathieu Duponchelle * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: Expose bitrate property This allows outputting a Transport Stream with a constant bitrate, by inserting null packets. 2019-04-22 22:10:42 +0200 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: tsmux: actually respect the PCR frequency we target 2019-04-22 18:23:39 +0200 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: tsmux: Use DTS over PTS 2019-05-18 12:09:18 +0100 Philippe Normand * ext/aom/meson.build: meson: Keep track of the aom plugin Otherwise it doesn't appear in the GstPluginsPath.json and thus is not listed in gst-build's uninstalled shell's $GST_PLUGIN_PATH. 2019-05-16 13:08:19 +0900 Seungha Yang * docs/plugins/gst_plugins_cache.json: docs: Update plugins cache for nvdec/nvenc 2019-05-15 11:25:37 +0900 Seungha Yang * sys/nvdec/meson.build: * sys/nvenc/meson.build: meson: Add nvenc and nvdec to plugin list when available 2019-05-17 17:15:13 -0400 Olivier Crête * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: rist: Fix typo 2019-05-17 15:28:54 +0200 Niels De Graef * ext/webrtc/gstwebrtcbin.c: webrtc: Fix some signals' GIR annotations This will lead to wrong bindings otherwise (and creates more correct expectations for developers). 2019-05-16 15:35:58 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Add infos about windows specific plugins 2019-05-16 09:18:53 -0400 Thibault Saunier * docs/meson.build: * docs/plugins/gst_plugins_cache.json: docs: Stop building the doc cache by default And update the cache Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/36 2019-05-15 16:18:01 -0400 Thibault Saunier * gst/rist/meson.build: docs: Add gstrist to the documentation 2019-04-26 08:40:28 +0800 Haihao Xiang * sys/msdk/gstmsdk.c: msdk: fix the typo for gst_msdkvp9dec_debug 2019-05-14 19:19:46 +0100 Tim-Philipp Müller * autogen.sh: * configure.ac: configure: fix autotools build after gtk-doc removal Were using a gtk-doc specific file to check if we can find the srcdir, so configure would fail. 2019-05-14 10:45:21 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: * gst/frei0r/gstfrei0r.c: docs: Make sure frei0r plugins properties default are stable frei0r returns 'random' values as default and it makes the cache often change for no good reason 2019-05-14 10:28:17 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Remove stereo and openglmixer from the cache Thus were moved, respectively, to -good and -base 2019-05-14 07:36:15 +0000 Jose Antonio Santos Cadenas * ext/dtls/gstdtlsagent.c: dtlsagent: Do not overwrite openssl locking callbacks 2019-05-13 22:56:47 -0400 Thibault Saunier * docs/plugins/gst_plugins_cache.json: docs: Update plugins documentation cache 2018-10-22 11:30:45 +0200 Thibault Saunier * .gitignore: * Makefile.am: * configure.ac: * docs/Makefile.am: * docs/gst_api_version.in: * docs/index.md: * docs/libs/.gitignore: * docs/libs/Makefile.am: * docs/libs/adaptivedemux/index.md: * docs/libs/adaptivedemux/sitemap.txt: * docs/libs/base/index.md: * docs/libs/base/sitemap.txt: * docs/libs/codecparsers/index.md: * docs/libs/codecparsers/sitemap.txt: * docs/libs/compiling.sgml: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs.types: * docs/libs/insertbin/index.md: * docs/libs/insertbin/sitemap.txt: * docs/libs/mpegts/index.md: * docs/libs/mpegts/sitemap.txt: * docs/libs/player/index.md: * docs/libs/player/sitemap.txt: * docs/libs/tools/index.md: * docs/libs/tools/sitemap.txt: * docs/libs/video/index.md: * docs/libs/video/sitemap.txt: * docs/libs/webrtc/index.md: * docs/libs/webrtc/sitemap.txt: * docs/meson.build: * docs/plugins/.gitignore: * docs/plugins/Makefile.am: * docs/plugins/camerabin.dot: * docs/plugins/camerabin.png: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-overrides.txt: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/gst-plugins-bad-plugins.types: * docs/plugins/gst_plugins_cache.json: * docs/plugins/index.md: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-closedcaption.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-openmpt.xml: * docs/plugins/inspect/plugin-openni2.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srt.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * docs/plugins/sitemap.txt: * docs/sitemap.txt: * docs/version.entities.in: * ext/assrender/meson.build: * ext/bz2/meson.build: * ext/chromaprint/meson.build: * ext/curl/meson.build: * ext/dash/meson.build: * ext/directfb/meson.build: * ext/dtls/meson.build: * ext/dts/meson.build: * ext/faac/meson.build: * ext/faad/meson.build: * ext/fdkaac/meson.build: * ext/flite/meson.build: * ext/fluidsynth/meson.build: * ext/gsm/meson.build: * ext/hls/meson.build: * ext/iqa/meson.build: * ext/kate/meson.build: * ext/libde265/meson.build: * ext/libmms/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: * ext/opencv/meson.build: * ext/openh264/meson.build: * ext/openjpeg/meson.build: * ext/opus/meson.build: * ext/resindvd/meson.build: * ext/rsvg/meson.build: * ext/rtmp/meson.build: * ext/sbc/meson.build: * ext/smoothstreaming/meson.build: * ext/soundtouch/meson.build: * ext/spandsp/meson.build: * ext/srtp/meson.build: * ext/ttml/meson.build: * ext/voaacenc/meson.build: * ext/vulkan/meson.build: * ext/wayland/meson.build: * ext/webp/meson.build: * ext/webrtc/meson.build: * ext/webrtcdsp/meson.build: * ext/x265/meson.build: * ext/zbar/meson.build: * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/player/gstplayer.c: * gst/accurip/meson.build: * gst/adpcmdec/meson.build: * gst/adpcmenc/meson.build: * gst/aiff/meson.build: * gst/asfmux/meson.build: * gst/audiobuffersplit/meson.build: * gst/audiofxbad/meson.build: * gst/audiomixmatrix/meson.build: * gst/audiovisualizers/meson.build: * gst/autoconvert/meson.build: * gst/bayer/meson.build: * gst/camerabin2/meson.build: * gst/coloreffects/meson.build: * gst/debugutils/meson.build: * gst/dvbsuboverlay/meson.build: * gst/dvdspu/meson.build: * gst/faceoverlay/meson.build: * gst/festival/meson.build: * gst/fieldanalysis/meson.build: * gst/freeverb/meson.build: * gst/frei0r/meson.build: * gst/gaudieffects/meson.build: * gst/gdp/meson.build: * gst/geometrictransform/meson.build: * gst/id3tag/meson.build: * gst/inter/meson.build: * gst/interlace/meson.build: * gst/ivfparse/meson.build: * gst/ivtc/meson.build: * gst/jp2kdecimator/meson.build: * gst/jpegformat/meson.build: * gst/librfb/meson.build: * gst/midi/meson.build: * gst/mpegdemux/meson.build: * gst/mpegpsmux/meson.build: * gst/mpegtsdemux/meson.build: * gst/mpegtsmux/meson.build: * gst/mxf/meson.build: * gst/netsim/meson.build: * gst/onvif/meson.build: * gst/pcapparse/meson.build: * gst/pnm/meson.build: * gst/rawparse/meson.build: * gst/removesilence/meson.build: * gst/sdp/meson.build: * gst/segmentclip/meson.build: * gst/siren/meson.build: * gst/smooth/meson.build: * gst/speed/meson.build: * gst/subenc/meson.build: * gst/timecode/meson.build: * gst/videofilters/meson.build: * gst/videoframe_audiolevel/meson.build: * gst/videoparsers/meson.build: * gst/videosignal/meson.build: * gst/vmnc/meson.build: * gst/y4m/meson.build: * gst/yadif/meson.build: * meson.build: * meson_options.txt: * sys/bluez/meson.build: * sys/d3dvideosink/meson.build: * sys/decklink/meson.build: * sys/directsound/meson.build: * sys/dvb/meson.build: * sys/fbdev/meson.build: * sys/ipcpipeline/meson.build: * sys/kms/meson.build: * sys/msdk/meson.build: * sys/shm/meson.build: * sys/uvch264/meson.build: * sys/wasapi/meson.build: * sys/winks/meson.build: * sys/winscreencap/meson.build: docs: Build documentation with hotdoc 2018-11-12 18:24:20 -0300 Thibault Saunier * ext/curl/gstcurlhttpsrc.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlssrtpdec.c: Mark some properties as DOC_SHOW_DEFAULT 2018-08-10 20:32:30 -0400 Thibault Saunier * ext/closedcaption/io-sim.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurltlssink.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.c: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc_fwd.h: * gst/geometrictransform/geometricmath.c: * sys/shm/shmpipe.c: Minor documentation fixes 2018-10-22 11:30:09 +0200 Thibault Saunier * ext/directfb/dfbvideosink.c: directfb: Fixup plugin name to match plugin filename Has required by the new PLUGIN_DEFINE macro 2019-05-01 19:40:03 +0200 Niklas Hambüchen * ext/gsm/meson.build: meson: Fix missing GSM_HEADER_IN_SUBDIR logic Until now, this hadn't been translated from autoconf yet. 2019-05-01 19:16:58 +0200 Niklas Hambüchen * ext/gsm/meson.build: meson: Fix typo in gsm header file name This was wrong since commit c360ceea4deb5d56c94126e31b9614734e8c1a7e. Also fix incorrect indentation (tab instead of spaces). Found using hermetic builds with Nix: https://github.com/NixOS/nixpkgs/pull/54398#discussion_r280125735 2019-05-01 19:22:17 +0200 Mark Nauwelaerts * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: srt: set cancellation in locked section ... to avoid race with wait which uses it with 'flushing' flag state semantics. 2019-05-01 19:01:03 +0200 Mark Nauwelaerts * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: srt: avoid srtsrc segfault upon downward state change ... when it has not yet been connected to. Also, a condition variable is not a semaphore, so a lock/wait/unlock sequence is inherently racy without any state checking. So switch to a different lock and check the intended state. 2019-05-01 18:58:30 +0200 Mark Nauwelaerts * ext/srt/gstsrtobject.c: srt: initialize list access within locked region 2019-05-09 14:08:31 +0200 Niels De Graef * ext/webrtc/gstwebrtcbin.c: webrtc: Fix signals documentation Some GIR annotations were incorrect or even missing. The former isn't good for bindings, while the latter is especially annoying for signal handlers, as that means your arguments will get the wrong names in the rendered documentation. 2019-05-09 15:11:17 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: nvenc: Respect display aspect ratio and set to encoding parameter It should be written in VUI parameter for proper rendering 2019-05-08 15:46:26 +0200 Niels De Graef * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/rtcsessiondescription.h: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: webrtc: Add g_autoptr() support for public types 2019-05-08 13:35:25 +0200 Víctor Manuel Jáquez Leal * ext/openh264/gstopenh264enc.cpp: openh264enc: Fix compilation with openh264 v2.0 As OpenH264 increased its version to 2.0 the guard for structure member is not valid. This patch will fix the compilation with gst-build and openh264. 2019-05-08 19:26:03 +0900 Seungha Yang * sys/meson.build: * sys/nvenc/meson.build: meson: Allow CUDA_PATH fallback on linux That's what we've supported via autotools build Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/966 2019-05-04 20:56:38 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvh264enc.c: nvh264enc: Fix broken Y444 format encoding with system memory Y444 support separateColourPlaneFlag is mapped to separate_colour_plane_flag which means Y, U and V planes are separately processed as monochrome sampled pictures. So encoder shouldn't set that flag for normal 4:4:4 encoding. Also for 4:4:4 encoding, NV_ENC_H264_PROFILE_HIGH_444_GUID profile must be explicitly set. 2019-05-05 22:11:16 +0200 Christoph Reiter * gst-libs/gst/opencv/meson.build: meson: fix build with opencv=enabled and opencv4. Fixes #964 Having the opencv feature enabled would lead to the opencv3 dependency being required which failed with only opencv4 being available. Instead don't require anything and error out at the end if the feature was enabled but no dependency was found. 2019-05-05 19:27:15 -0400 Thibault Saunier * ext/colormanagement/meson.build: * ext/meson.build: * meson_options.txt: meson: Add support for the colormanagement plugin Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/965 2019-05-05 12:34:23 +0200 Christoph Reiter * gst-libs/gst/sctp/Makefile.am: autotools: gstsctp: set LDFLAGS This fixes the mingw build which failed because of "-no-undefined" missing. 2019-05-04 00:15:32 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add support for parsing/outputting AFD/Bar 2019-04-22 15:42:12 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Allow VANC to be used for all modes 2019-04-16 13:15:40 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Add support for widescreen NTSC/PAL Same as non-widescreen but with a different pixel-aspect-ratio. 2019-05-01 21:24:49 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Parse mastering display info and content light level from SEI ... and set to caps if necessary. Note 1) the mastering display info and content light level SEI meessages are persistent in the corresponding codec video sequence (i.e., GOP). So any bitstream containing those SEI messages (and also all pictures are intended to be HDR rendered) should be ensured that each first slice of codec video sequence follows those SEI messages. Note 2) The codec video sequence is a group an [IRAP + NoRaslOutputFlag == 1] and following AUs which are not [IRAP + NoRaslOutputFlag == 1] The NoRaslOutputFlag is equal to 1 for each IDR AU, BLA AU and some CRA AU. For a CRA AU to have NoRaslOutputFlag equal to 1, following condition should required. * When the CRA AU is the first AU in the bitstream in decoding order * or the CRA AU is the first AU that follows an end of sequence NAL in decoding order * or the HandleCraAsBlaFlag equal to 1. Due to the limited context in parse element, in this commint, CRA AU will not considered as having the NoRaslOutputFlag equal to 1. Therefore, in the worst case, mastering-display-info and content-light-level could be cleared one GOP after when stream was chagned from HDR to SDR. 2019-04-26 20:11:12 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Add parsing mastering display colour volume SEI message ... and content light level SEI message. Those SEI messages are required for HDR rendering. 2019-05-03 19:10:22 +0700 Roman Shpuntov * sys/androidmedia/gstamc.c: androidmedia: added path /system/vendor/etc to dependency 2019-05-02 14:29:03 +0200 Niels De Graef * sys/nvdec/Makefile.am: * sys/nvenc/Makefile.am: nvenc/nvdec: Add NVIDIA SDK headers to noinst_HEADERS The tarballs that were being spun for 1.16 don't contain these headers due to this small oversight, so let's add them. 2019-04-05 17:01:08 -0400 Nicolas Dufresne * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-rist.xml: rist: Enable plugin doc creation 2019-01-21 11:44:10 -0500 Nicolas Dufresne * configure.ac: * gst/meson.build: * gst/rist/Makefile.am: * gst/rist/gstrist.h: * gst/rist/gstristplugin.c: * gst/rist/gstristrtxreceive.c: * gst/rist/gstristrtxsend.c: * gst/rist/gstristsink.c: * gst/rist/gstristsrc.c: * gst/rist/meson.build: * meson_options.txt: rist: Add a plugin implenting RIST TR-06-1 Simple Profile RIST TR-06-1 is a specification for video streaming made by the VSF group. It is using a subset of RTP specification to which some modification has been made to improve RTX behaviour and avoid any need for signaling. The plugin implement ristrtxsend / ristrtxreceive element which are the RIST specific equivalent of rtprtxsend/rtprtxreceive and ristsink / ristsrc which implement rist transmitter and receiver. The RIST protocol is meant to be used in unidirectional way. Typically, MPEG TS over RTP is used. Currently we support unicast and multicast streaming according to the specification. This patch does not include any bonding support yet. The ristsrc element introduce rist:// URI handling in parallel to it's property configuration interface. 2019-05-01 15:31:34 -0400 Aaron Boxer * ext/closedcaption/gstccextractor.c: ccextractor: copy input buffer flags to output buffer GST_VIDEO_BUFFER_FLAG_INTERLACED and GST_VIDEO_BUFFER_FLAG_TFF flags are needed when processing SCTE 20 closed captions for an interlaced stream, when we need to convert back to analog, in which case we need to match the caption to the top or bottom field 2019-05-01 19:29:16 -0400 Xavier Claessens * gst/videoparsers/gsth264parse.c: h264parse: Fix typo when setting multiview mode and flags 2019-05-02 13:20:30 +0900 Seungha Yang * ext/x265/gstx265enc.c: x265enc: Do not drop SEI nals from header SEI message shouldn't be dropped since it contains various informal (or essential) information. 2019-05-02 12:21:38 +0900 Seungha Yang * ext/x265/gstx265enc.c: x265enc: Add support mastering display info and content light level encoding ... if (x265 version >= 1.9) requirement is satisfied. The SEI messages were supported since x265 version 1.8 but there was API change from version 1.9 (contentLightLevelInfo was renamed to maxCLL and maxFALL) 2019-04-30 21:25:12 -0300 Marcos Kintschner * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: Fixed segtotal value being always 2 due to an unused variable The 'MAX' expression used to set segtotal always returned 2 because the unused and unitialized variable buffer_frame_count was always 0 2019-04-26 09:52:43 +0800 Wangfei * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: parse range extension message in SPS/PPS. Range extension message may exist in some extension-profile clips. 2019-04-26 16:25:17 +0200 Fabio D'Urso * ext/sctp/sctpassociation.c: sctp: increase DEFAULT_NUMBER_OF_SCTP_STREAMS to 1024 This change makes it possible to create more than just 5 webrtc data channels. The maximum number of data channels is exactly DEFAULT_NUMBER_OF_SCTP_STREAMS / 2, therefore the limit is now 512. 2019-04-23 15:09:17 +0300 Sebastian Dröge * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/interfaces/photography.h: libs: Fix various Since markers 2019-04-23 14:33:05 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst-libs/gst/player/gstplayer.c: player: Fix various Since markers in the docs 2019-04-23 09:06:13 +0200 Nicola Murino * configure.ac: * ext/opencv/meson.build: opencv: allow compilation against 4.1.x 2019-04-21 17:17:14 +0200 Mark Nauwelaerts * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: srt: post error when failing to start ... as appropriate for a subsequent state change failure 2019-04-21 16:47:30 +0200 Mark Nauwelaerts * ext/srt/gstsrtobject.c: srt: downgrade regular message to log level 2019-04-19 10:33:49 +0100 Tim-Philipp Müller * README: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-closedcaption.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-openmpt.xml: * docs/plugins/inspect/plugin-openni2.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sctp.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srt.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * meson.build: Back to development === release 1.16.0 === 2019-04-19 00:28:55 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * README: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.16.0 2019-04-19 00:28:55 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-closedcaption.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-openmpt.xml: * docs/plugins/inspect/plugin-openni2.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sctp.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srt.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: Update docs 2019-04-19 00:28:52 +0100 Tim-Philipp Müller * po/ky.po: * po/sv.po: * po/zh_CN.po: Update translations 2019-04-17 09:12:52 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkvpp.c: * sys/msdk/msdk_libva.c: msdk: fix the build error with libva 2.4.0 This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/949 2019-04-13 13:50:25 -0700 Dan Kegel * ext/webrtcdsp/meson.build: webrtcdsp/meson.build: don't forget to set c++11 mode 2019-04-13 11:34:22 +0530 Nirbheek Chauhan * tests/check/meson.build: meson: Remove redundant env set operation This is immediately overriden 4 lines later, and starting with Meso 0.50.1 this will lead to a noisy warning. 2019-04-12 10:22:56 +0300 Sebastian Dröge * ext/sctp/Makefile.am: sctp: Create plugin with $(GST_PLUGIN_LDFLAGS) Otherwise we don't create a plugin but a proper shared library with version information, i.e. libgstsctp.so.0.0.0. === release 1.15.90 === 2019-04-11 00:32:40 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.15.90 2019-04-11 00:32:40 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-closedcaption.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-openmpt.xml: * docs/plugins/inspect/plugin-openni2.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sctp.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srt.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: Update docs 2019-04-06 21:44:35 +0200 Peter Seiderer * sys/msdk/gstmsdkdec.c: msdkdec: fix error handling in case of unsupported hardware Check the return value of gst_msdk_context_ensure_context and abort in case of failure. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/945 2019-04-06 21:29:58 +0200 Peter Seiderer * sys/msdk/gstmsdkenc.c: msdkenc: fix error handling in case of unsupported hardware Check the return value of gst_msdk_context_ensure_context and abort in case of failure. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/945 2019-04-06 21:09:03 +0200 Peter Seiderer * sys/msdk/gstmsdkcontext.c: msdk: fix error handling in case of unsupported hardware Fix double gst_object_unref for GstMsdkContext. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/945 2019-04-09 21:32:36 +0300 Andrey Konovalov * ext/wayland/wlwindow.c: waylandsink: make gst_wl_window_is_toplevel aware of XDG shell 2019-04-09 11:26:28 -0400 Aaron Boxer * ext/closedcaption/gstccextractor.c: ccextractor: document importance of pipeline order for this element 2019-03-21 16:22:23 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: add BGR10A2_LE format in the src pad example pipeline: gst-launch-1.0 videotestsrc ! video/x-raw,format=P010_10LE ! msdkvpp ! \ video/x-raw,format=BGR10A2_LE ! fakesink 2019-03-21 16:14:47 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: msdk: set some parameters in mfxFrameData for a MFX_FOURCC_A2RGB10 frame 2019-03-21 15:34:36 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_A2RGB10 to VA_FOURCC_A2R10G10B10 2019-03-21 15:29:15 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map GST_VIDEO_FORMAT_BGR10A2_LE to VA_FOURCC_A2R10G10B10 2019-03-22 13:43:23 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: map GST_VIDEO_FORMAT_BGR10A2_LE to MFX_FOURCC_A2RGB10 2019-04-09 11:06:41 +0200 Peter Körner * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: add missing break in set_property-code 2019-03-26 09:43:46 -0400 Aaron Boxer * ext/closedcaption/gstcea708decoder.c: cea708decoder: use correct mask for font style First three bits are used for font style, so mask should be 0111 rather than 011 (in binary) 2019-04-07 13:47:38 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/h264parse.c: tests: h264parse: add minimal unit test for closed caption SEI parsing 2019-03-29 21:02:44 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: extract CEA-708 closed captions Expose SEI data in the H.264 bitstream parser API and extract closed captions and other things that are not specified in the H.264 spec itself in the videoparser. Based on patch by: Mathieu Duponchelle https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/940 2019-03-27 17:56:28 +1100 Matthew Waters * ext/vulkan/ios/vkdisplay_ios.h: * ext/vulkan/ios/vkdisplay_ios.m: * ext/vulkan/ios/vkios_utils.h: * ext/vulkan/ios/vkwindow_ios.h: * ext/vulkan/ios/vkwindow_ios.m: * ext/vulkan/meson.build: * ext/vulkan/vkapi.h: * ext/vulkan/vkconfig.h.meson: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vksink.c: * ext/vulkan/vksink.h: * ext/vulkan/vkwindow.c: * ext/vulkan/vkwindow.h: vulkan: Add iOS window implementation 2019-03-25 17:50:13 +1100 Matthew Waters * ext/vulkan/cocoa/vkcocoa_utils.h: * ext/vulkan/cocoa/vkdisplay_cocoa.h: * ext/vulkan/cocoa/vkdisplay_cocoa.m: * ext/vulkan/cocoa/vkwindow_cocoa.h: * ext/vulkan/cocoa/vkwindow_cocoa.m: * ext/vulkan/meson.build: * ext/vulkan/vkapi.h: * ext/vulkan/vkconfig.h.meson: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vkwindow.c: vulkan: Add Cocoa window implementation 2019-03-29 16:24:15 +1100 Matthew Waters * ext/vulkan/vkinstance.c: vulkan: make the debug extension optional i.e. don't fail if it's not available 2019-04-06 14:39:22 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: fix seeking backwards Use proper API to flush libass events when we do a flushing seek, and also do it in FLUSH_STOP rather than FLUSH_START, so we can be sure streaming has stopped. Fixes seeking back in time. Something seems to have changed in libass that renders the old manual way of flushing events ineffective and libass then seems to ignore timestamps that are older than the ones last seen then if we do it the old way. Fixes #916 2019-04-06 14:33:45 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: improve debug logging in video chain Print video timestamps only once and enumerate text buffers to make output more concise and nicer to read. 2019-04-06 14:31:37 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: use subtitle segment to calculate running time for text Not the video segment. This just for correctness, shouldn't make any difference in practice since we don't support external SSA yet. 2018-12-12 15:25:45 +0100 Mathieu Duponchelle * gst/onvif/gstrtponviftimestamp.c: rtponviftimestamp: prioritize PTS over DTS for NTP timestamp NTP timestamps are supposed to match the expected presentation time, prefering the DTS to compute them was incorrect. Section 6.3.1: NTP Timestamps 2018-11-13 21:17:41 +0100 Mathieu Duponchelle * gst/onvif/gstrtponviftimestamp.c: rtponviftimestamp: buffer without PTS or DTS is not an error. For example, when plugged after rtpgstpay, serialized events will have neither. 2018-11-05 20:32:03 +0100 Mathieu Duponchelle * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: rtponviftimestamp: implement support for the T flag https://www.onvif.org/specs/stream/ONVIF-Streaming-Spec.pdf 6.3 RTP header extension 2019-04-04 20:19:42 +0000 Shi Yan * sys/nvenc/gstnvh264enc.c: * sys/nvenc/gstnvh265enc.c: Increase nvenc's encoding height to 4096 According to https://developer.nvidia.com/nvidia-video-codec-sdk the minimum resolution nvenc supports should be 4096x4096 2019-03-25 22:21:09 -0400 Nicolas Dufresne * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Wait for the surface to be configured With latest XDG shell, we need to fait for the surface to have been configured before we can attach a buffer to it. This is being enforce by Weston with an error. Fixes #933 2019-04-02 15:18:03 +0200 Mathieu Duponchelle * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264parse, h265parse: take unit_field_based_flag into account .. when computing timecode metas. Depending on the value of that flag, n_frames is to be interpreted as a number of fields or a number of frames. As GstVideoTimeCodeMeta always deals with frames, we want to scale that number when needed. 2019-03-30 01:17:08 +0100 Mathieu Duponchelle * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: forward time codes This transforms time code SEIs into GstVideoTimeCodeMeta 2019-03-28 22:02:02 +0100 Mathieu Duponchelle * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: forward time codes This transforms time codes from the timing SEI into GstVideoTimeCodeMeta 2019-03-30 14:02:50 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpesrc: Switch to WPEBackend-fdo 1.2.0 2019-03-29 12:09:02 +0000 Tim-Philipp Müller * configure.ac: * ext/srtp/meson.build: srtp: bump libsrtp requirement to 1.6.0 See !234 2019-03-29 13:22:55 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkvp8dec.c: msdkdec: add postinit_decoder The workaround for https://github.com/Intel-Media-SDK/MediaSDK/issues/1139 is required for vp8 only, so move this workaround to the corresponding postinit_decoder function The pipeline below works with this change gst-launch-1.0 filesrc location=SA10104.vc1 ! \ 'video/x-wmv,profile=(string)advanced',width=720,height=480,framerate=14/1 ! \ msdkvc1dec ! fakesink 2019-03-29 12:53:38 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp9dec.c: msdkdec: don't set unknown picture struct to progressive for vc1 MFXVideoDECODE_DecodeHeader only parses the sequence layer for VC1, so the structure is unknown for a stream with interlace flag set in the sequence layer. If forcing the struct to progressive in this plugin, MediaSDK will fail to decode such streams. 2019-03-29 12:57:10 +0800 Haihao Xiang * sys/msdk/gstmsdkvc1dec.c: msdkvc1dec: add the preinit_decoder function 2019-03-28 18:27:28 +0000 Philippe Normand * configure.ac: * ext/wpe/meson.build: wpe: Bump required version to WPEWebKit 2.24 Fixes #929 2019-03-27 13:22:47 -0400 Aaron Boxer * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: add debug code for closed captions This debug code will help determine why certain instances of closed captions that are present in the Picture User Data are not actually processed by the pipeline 2019-03-06 07:36:44 +0100 Ulf Olsson * ext/srtp/gstsrtp.c: * ext/srtp/gstsrtp.h: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenums.h: srtp: Add support for GCM (RFC 7714) The GCM support in libsrtp have been there for a while and it can be useful for some applications. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/913 2019-03-26 20:43:22 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: nvenc: Don't leak CUDA device memory Allocated device memory should be freed with cuMemFree 2019-03-26 20:24:22 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: nvenc: Ensure unmap resources before finalizing them Mapped resource via NvEncMapInputResource() will result to unregister fail. It can happen when paused to ready state change without EOS event. 2019-02-28 17:42:58 +0800 Haihua Hu * gst/videoparsers/gsth265parse.c: h265parse: ignore VUI parse fail when parse SPS VUI is an optional for SPS parse, some HEVC file has incorrect VUI parameters but still can be decoded 2019-03-22 22:32:59 +0100 Josep Torra * ext/closedcaption/gstccconverter.c: closedcaption: fix build error in OSX Fixes the following error. gstccconverter.c:677:7: error: variable 'len' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] if (flags & 0x40) { ^~~~~~~~~~~~ gstccconverter.c:698:10: note: uninitialized use occurs here return len; ^~~ gstccconverter.c:677:3: note: remove the 'if' if its condition is always true if (flags & 0x40) { ^~~~~~~~~~~~~~~~~~ gstccconverter.c:572:12: note: initialize the variable 'len' to silence this warning guint len; ^ = 0 2019-03-22 22:25:20 +0100 Josep Torra * ext/closedcaption/misc.h: closedcaption: fix build error in OSX Fixes the following error by commenting an unused block. ./misc.h:503:11: error: 'strlcpy' macro redefined [-Werror,-Wmacro-redefined] 2019-03-25 22:24:17 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: nvenc: Don't release stream lock on GstVideoEncoder::stop() baseclass didn't take the stream lock during stop. It's valid only for GstVideoEncoder::finish() Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/912 2019-03-08 12:22:52 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: add VUYA format in the src and sink pads 2019-03-14 12:05:58 +0800 Haihao Xiang * sys/msdk/gstmsdkvideomemory.c: msdk: return the right pointer for GST_VIDEO_FORMAT_VUYA frame The first component for GST_VIDEO_FORMAT_VUYA in memory is V. 2019-03-08 12:20:56 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: msdk: set some parameters in mfxFrameData for a MFX_FOURCC_AYUV frame 2019-03-08 12:15:14 +0800 Haihao Xiang * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_AYUV to VA_FOURCC_AYUV 2019-03-08 12:26:37 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map GST_VIDEO_FORMAT_VUYA to VA_FOURCC_AYUV 2019-03-08 12:13:05 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: map GST_VIDEO_FORMAT_VUYA to MFX_FOURCC_AYUV 2019-03-06 13:07:53 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: avoid infinite loop It is possible MFXVideoDECODE_DecodeFrameAsync returns MFX_ERR_INCOMPATIBLE_VIDEO_PARAM and this error can't be recovered by retrying MFXVideoDECODE_DecodeFrameAsync in some cases, so we need to limit the number of retries to avoid infinite loop. This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/909 2019-03-23 18:58:06 +0000 Tim-Philipp Müller * meson.build: g-i: pass --quiet to g-ir-scanner This suppresses the annoying 'g-ir-scanner: link: cc ..' output that we get even if everything works just fine. We still get g-ir-scanner warnings and compiler warnings if we pass this option. 2019-03-23 18:57:24 +0000 Tim-Philipp Müller * meson.build: g-i: silence 'nested extern' compiler warnings when building scanner binary We need a nested extern in our init section for the scanner binary so we can call gst_init to make sure GStreamer types are initialised (they are not all lazy init via get_type functions, but some are in exported variables). There doesn't seem to be any other mechanism to achieve this, so just remove that warning, it's not important at all. 2019-03-22 23:35:04 +0000 Tim-Philipp Müller * ext/vulkan/vkswapper.c: vulkan: fix some compiler warnings in gnu89 mode for loop variable initialization and conflicting types for i. 2019-03-10 19:28:24 +0000 Piotr Drąg * po/LINGUAS: Update LINGUAS 2019-03-21 11:14:37 +0000 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: openh264: fix build with gstreamer debug system disabled See https://gitlab.freedesktop.org/gstreamer/gst-ci/merge_requests/89 2019-03-21 11:13:38 +0000 Tim-Philipp Müller * meson.build: meson: add -Wno-unused also to C++ args when gst debug system is disabled 2019-03-20 21:38:04 -0300 Thibault Saunier * gst/mxf/mxfdemux.c: mxfdemux: Avoid possible NULL caps 'dereferencing' 2019-03-20 19:45:12 +0700 Ilya Smelykh * ext/rtmp/gstrtmpsrc.c: rtmpsrc: fix buffer leak on read error or EOS 2019-01-31 16:31:04 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpesrc: Register backend activity states 2019-01-31 16:30:18 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpesrc: Always log loaded URI 2019-01-18 13:28:45 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpesrc: Implement webview background configuration support 2019-03-15 11:19:03 +0100 Jan Alexander Steffens (heftig) * ext/srtp/gstsrtp.h: * ext/srtp/gstsrtpdec.c: srtpdec: Lower severity of srtp_err_status_replay_fail AFAIU this happens when encountering retransmissions. Don't print a warning for these packets. 2019-03-15 11:16:10 +0100 Jan Alexander Steffens (heftig) * ext/srtp/gstsrtpdec.c: srtpdec: Simplify code flow handling status_key_expired Ensures a balanced UNLOCK -> LOCK. 2019-03-15 11:13:14 +0100 Jan Alexander Steffens (heftig) * ext/srtp/gstsrtpdec.c: srtpdec: Simplify checking the unprotect error Introduce an err label to jump to. Avoid logging two warnings per failure. 2019-03-15 11:03:52 +0100 Jan Alexander Steffens (heftig) * ext/srtp/gstsrtpdec.c: srtpdec: Simplify locking in gst_srtp_dec_decode_buffer Don't drop the lock on filter just to unmap the buffer (or log a message). 2019-03-18 15:12:37 +0000 Tim-Philipp Müller * gst/netsim/gstnetsim.c: netsim: don't use G_INLINE_FUNC It's deprecated. Just use 'inline'. 2019-03-18 15:23:07 +0100 Xabier Rodriguez Calvar * ext/smoothstreaming/gstmssdemux.c: mssdemux: fix protection data double free For not being duplicated here it was being freed when the manifest was being destroyed and a second time when the buffer was being destroyed. 2019-03-14 16:37:13 +0800 Haihao Xiang * sys/msdk/README: * sys/msdk/gstmsdk.c: msdk: relicense the plugin to LGPL Some files licensed under LGPL were included, so relicense the plugin from BSD to LPGL. In addition, this patch removes the README per the discussion in https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/853 Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/853 2019-03-15 16:47:35 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: fix pt selection for FEC and RTX when BUNDLE When we offer bundled media, payload types must be unique across all bundled media, as they will be multiplexed in the same session. 2019-03-15 10:46:56 +0100 Andreas Frisch * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: srtp: Spell 'mechanisms' right 2019-03-13 13:43:54 +0100 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: cccombiner: improve behaviour on timeout Prior to this, cccombiner stopped consuming video buffers when data wasn't arriving on its caption pad. In a live situation, when aggregator is timing out we should still output whatever video buffers are present, even if no caption buffers can be aggregated with them. 2019-03-12 21:37:53 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: add get-transceiver signal get-transceivers is not introspectable, and a method to get a transceiver by index is convenient. 2019-03-07 14:13:14 +0100 Jan Alexander Steffens (heftig) * ext/webrtc/gstwebrtcstats.c: webrtcbin: Filter transport stream stats by ssrc Since the addition of BUNDLE support, the pads and the transceivers share a single transport stream. When getting stats from the stream, filter by the ssrc of the current pad to avoid merging the stats for different pads. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/889 2019-03-07 14:12:47 +0100 Jan Alexander Steffens (heftig) * ext/webrtc/gstwebrtcstats.c: webrtcbin: Syntax cleanup 2019-03-11 15:00:59 +0530 Nirbheek Chauhan * ext/closedcaption/io-sim.c: closedcaption: Fix build with Visual Studio ../ext/closedcaption/io-sim.c(440): error C2065: 'M_PI': undeclared identifier ../ext/closedcaption/io-sim.c(442): error C2065: 'M_LN2': undeclared identifier 2019-03-11 14:45:14 +0530 Nirbheek Chauhan * sys/nvdec/meson.build: * sys/nvenc/meson.build: nvenc: Fix build when cuda is found but nvenc is disabled tests\check\meson.build:21:5: ERROR: Unknown variable "use_nvenc_gl". Also do the same change in nvdec, just to be defensive about future issues. 2019-03-08 13:43:15 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: nvenc: More clean up on stop for encoder to be reusable Encoder will not configure internal pool again if input_state exist Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/912 2018-12-13 22:03:36 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: nvenc: Ensure drain all frames on finish To drain all queued encoding items, encoder should gracefully wait the encoding thread without stealing queued items. Otherwise, some input frames can be dropped. 2018-12-13 22:19:30 +0900 Seungha Yang * tests/check/Makefile.am: * tests/check/elements/nvenc.c: * tests/check/meson.build: tests: Add nvenc unit test 2019-03-05 18:55:16 +0900 Yeongjin Jeong * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvh264enc.c: * sys/nvenc/gstnvh265enc.c: nvenc: Fix GValue leaks GValue should be freed with g_value_unset() 2019-03-08 23:49:49 +0000 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: fix some leaks g_slist_remove_*() removes the list node without freeing it. 2019-03-07 19:26:56 +0000 Tim-Philipp Müller * ext/vulkan/vkupload.c: * ext/vulkan/vkutils.c: vulkan: fix some leaks Fix vk_instance leak when state change fails like in generic/states unit test. 2019-03-07 18:20:40 +0000 Tim-Philipp Müller * ext/teletextdec/gstteletextdec.c: teletextdec: fix some string leaks 2019-03-07 00:02:13 +0000 Tim-Philipp Müller * ext/srt/gstsrtobject.c: srt: fix uri and string leaks And simplify property getter to avoid unnecessary copy. 2019-03-06 23:45:27 +0000 Tim-Philipp Müller * ext/closedcaption/gstcea708decoder.c: * ext/closedcaption/gstcea708decoder.h: * ext/closedcaption/gstceaccoverlay.c: closedcaption: cea708decoder: fix some memory leaks 2019-03-06 18:32:38 +0000 Tim-Philipp Müller * ext/closedcaption/gstline21dec.c: * tests/check/elements/line21.c: closedcaption: fix leak in line21 decoder Destroy old decoder instance when shutting down the element, and also in case the input format changes. Fix harness/pipeline leak in unit test. 2019-03-06 21:32:50 +0000 Tim-Philipp Müller * tests/check/elements/adaptive_demux_common.c: tests: fix bus leak in hls_demux testSeek unit test We add the signal watch in testSeekPreTestCallback so remove it in testSeekPostTestCallback and not deep inside some if clause in some other callback somewhere. 2019-03-06 18:35:46 +0000 Tim-Philipp Müller * .gitignore: * tests/check/elements/.gitignore: .gitignore more things 2019-03-07 21:21:18 +0900 Seungha Yang * configure.ac: * sys/meson.build: nvdec/nvenc: Add CUDA Toolkit 10.1 support Update to support the latest CUDA Toolkit version 10.1 2019-03-07 10:15:16 +0100 Jan Alexander Steffens (heftig) * ext/fluidsynth/gstfluiddec.c: fluidsynth: Avoid Wincompatible-pointer-types with 2.0.4 In 2.0.4, the message parameter has "const char*" type. Add a cast to avoid a warning with older fluidsynth. 2019-03-06 15:17:24 +0100 Mathieu Duponchelle * tests/check/Makefile.am: line21: fix tests build with autotools 2019-03-06 11:23:32 +0100 Mathieu Duponchelle * ext/closedcaption/gstline21dec.c: line21dec: general cleanup This ports over the review comments made on line21enc in !217 2019-02-23 00:23:01 +0100 Mathieu Duponchelle * ext/closedcaption/Makefile.am: * ext/closedcaption/gstclosedcaption.c: * ext/closedcaption/gstline21enc.c: * ext/closedcaption/gstline21enc.h: * ext/closedcaption/meson.build: * tests/check/Makefile.am: * tests/check/elements/line21.c: * tests/check/meson.build: closedcaption: add line21 encoder This element acts as a counterpart of line21encoder. Also adds a simple test validating each element using the other. 2019-02-21 19:05:03 +0100 Mathieu Duponchelle * ext/closedcaption/hamm.h: * ext/closedcaption/io-sim.c: * ext/closedcaption/io-sim.h: * ext/closedcaption/meson.build: Check in vbi encoder 2019-03-01 09:56:24 +0100 Niels De Graef * configure.ac: * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/meson.build: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: * gst-libs/gst/wayland/meson.build: waylandsink: Implement XDG-shell stable support [wl_shell] is officially [deprecated], so provide support for the XDG-shell protocol should be provided by all desktop-like compositors. (In case they don't, we can of course fall back to wl_shell). Note that the [XML spec] is provided by the `wayland-protocols` git repository, which is provided by the Wayland project. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/897 [wl_shell]: https://people.freedesktop.org/~whot/wayland-doxygen/wayland/Client/group__iface__wl__shell.html [deprecated]: https://github.com/wayland-project/wayland/commit/698dde195837f3d0844b2725ba4ea8ce9ee7518c [XML spec]: https://github.com/wayland-project/wayland-protocols/blob/master/stable/xdg-shell/xdg-shell.xml 2019-03-01 10:17:23 +0100 Niels De Graef * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: prefix wl_shell-specific variables with wl_ 2019-03-03 19:34:11 +0100 Peter Körner * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: document duplex and keyer behaviour 2019-03-03 19:34:06 +0100 Peter Körner * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: implement duplex-mode property 2019-03-04 09:11:55 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-closedcaption.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-openmpt.xml: * docs/plugins/inspect/plugin-openni2.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srt.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * meson.build: Back to development 2019-03-01 21:47:14 +0530 Nirbheek Chauhan * sys/applemedia/Makefile.am: build: Don't forget to dist applemedia/avfdeviceprovider.h Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/908 2019-02-28 21:37:49 +0900 Seungha Yang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvpp.c: * sys/msdk/msdk.c: * sys/msdk/msdk_libva.c: mskd: Don't use MFX_FOURCC_RGB565 if it's undefined ../subprojects/gst-plugins-bad/sys/msdk/msdk.c(61): error C2065: 'MFX_FOURCC_RGB565' The minimum required version for the format seems to MFX_VERSION >= 1028 2019-02-28 17:24:56 +0100 Mathieu Duponchelle * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstcccombiner.h: cccombiner: implement update_src_caps It is necessary to implement this vmethod, as when the src pad is marked as reconfigure, the base class will reset to src caps, and the default update_src_caps simply queries the caps allowed downstream without taking into account the caps set by gst_aggregator_set_src_caps. 2019-02-28 12:00:56 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkvp9dec.c: msdkdec: fix for small resolution 2019-02-27 08:07:29 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: fix for resolution change Returning MFX_ERR_INCOMPATIBLE_VIDEO_PARAM from MFXVideoDECODE_DecodeFrameAsync means the allocated mfx surface is not suitable for the current frame, we need a new mfx surface and try MFXVideoDECODE_DecodeFrameAsync again. 2019-02-28 11:02:42 +0000 Tim-Philipp Müller * tests/meson.build: meson: don't build icles when tests are disabled They are manual tests, so let them be controlled via the tests option not the examples option, for consistency with -good. 2019-02-25 15:23:34 +0200 Sebastian Dröge * ext/hls/gsthlssink2.c: * ext/hls/gsthlssink2.h: hlssink2: Add property for disabling sending of force-keyunit events 2019-02-27 18:47:09 +0100 Mathieu Duponchelle * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: restore stream creation order In 7c767f3fcd5a7b40d205bb4d588dad6c6275c729 , stream creation was refactored to occur before potential program creation. This created issues with pipelines such as: gst-launch-1.0 videotestsrc ! video/x-raw, format=I420, width=640, height=640, framerate=25/1 ! \ x264enc ! hlssink2 target-duration=1 eg.: gst_buffer_copy_into: assertion 'bufsize >= offset + size' failed As this reordering was actually not needed for the purpose of allowing to specify a PCR stream, this reverts the reordering part of the initial commit. 2019-02-22 16:20:16 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp9dec.c: msdkdec: force the alignment of width/height to 16 for vp8/vp9 MSDK library requires 16 alignment for vp8/vp9, otherwise a pipeline for vp8/vp9 decoding might fail. example pipeline: gst-launch-1.0 filesrc location=vp8_1280x720.webm ! matroskademux ! \ msdkvp8dec ! fakesink 0:00:00.150565444 10657 0x55c8484036d0 ERROR msdkdec gstmsdkdec.c:1056:gst_msdkdec_handle_frame: DecodeFrameAsync failed (invalid video parameters) 2019-02-25 12:43:19 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: add RGB16 format in the sink pad Note: MSDK doesn't support RGB16 output, hence don't add RGB16 format in the src pad 2019-02-25 12:18:05 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdksystemmemory.c: msdk: set some parameters in mfxFrameData for a RGB16 frame 2019-02-25 13:24:46 +0800 Haihao Xiang * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_RGB565 to VA_FOURCC_RGB565 2019-02-25 12:29:25 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map GST_VIDEO_FORMAT_RGB16 to VA_FOURCC_RGB565 2019-02-25 13:23:49 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: map GST_VIDEO_FORMAT_RGB16 to MFX_FOURCC_RGB565 === release 1.15.2 === 2019-02-26 11:53:22 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.15.2 2019-02-26 11:53:22 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-closedcaption.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-openmpt.xml: * docs/plugins/inspect/plugin-openni2.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srt.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: Update docs 2019-02-26 11:53:18 +0000 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update translations 2019-02-11 16:49:32 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: release the occupied surface for MFX_WRN_DEVICE_BUSY When MFXVideoDECODE_DecodeFrameAsync () returns MFX_WRN_DEVICE_BUSY with an output surface, a new input surface is required when retrying MFXVideoDECODE_DecodeFrameAsync (). This fixes the out-of-surface issue mentioned in https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/890 2019-01-18 15:14:59 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: don't destroy an image twice This gets rid of annoying message in the log, e.g. run the pipeline below: gst-launch-1.0 videotestsrc num-buffers=100 ! \ video/x-raw,format=NV12,width=352,height=288 ! msdkh264enc ! filesink \ location=test.h264 [LIBVA]:CRITICAL - DdiMedia_DestroyImage:4357: Invalid image 2019-01-17 16:05:05 +0800 Haihao Xiang * sys/msdk/gstmsdkbufferpool.c: msdk: move the comment to the correct place 2019-02-20 12:52:08 -0500 Aaron Boxer * ext/srt/gstsrtobject.c: srtobject: check for null local address to avoid SIGSEV 2019-02-21 23:51:39 +0100 Mathieu Duponchelle * ext/closedcaption/gstccconverter.c: ccconverter: fix typo in framerate 2019-02-21 15:16:37 +0000 Vivia Nikolaidou * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Added max-silence-time property 2019-02-20 11:26:01 +0100 Mathieu Duponchelle * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: allow specifying the PID of the PCR stream The structure passed through the prog-map can now contain a PCR_=sink_ key-value pair. 2019-02-14 10:58:00 +0000 Tim-Philipp Müller * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: add Hardware tag to element metadata 2019-02-14 10:54:25 +0000 Tim-Philipp Müller * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: add Hardware tag to element metadata 2019-02-14 10:44:00 +0000 Tim-Philipp Müller * sys/winks/gstksvideosrc.c: winks: add Hardware tag to element metadata 2019-02-14 09:49:46 +0000 Tim-Philipp Müller * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: add Hardware tag to element metadata 2019-02-14 09:49:03 +0000 Tim-Philipp Müller * sys/applemedia/avfvideosrc.m: * sys/applemedia/avsamplevideosink.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: add Hardware tag to element metadata 2019-02-14 09:47:29 +0000 Tim-Philipp Müller * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkmpeg2dec.c: * sys/msdk/gstmsdkmpeg2enc.c: * sys/msdk/gstmsdkvc1dec.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/gstmsdkvp9dec.c: msdk: add Hardware tag to element metadata 2019-02-14 09:43:54 +0000 Tim-Philipp Müller * sys/nvdec/gstnvdec.c: * sys/nvenc/gstnvh264enc.c: * sys/nvenc/gstnvh265enc.c: nvenc, nvdec: add Hardware tag to element metadata 2019-02-05 17:10:03 +0000 Alex Ashley * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: set BUFFER_OFFSET when creating GstBuffer To make curlhttpsrc behave more like souphttpsrc, set the BUFFER_OFFSET in its output buffers to match the segment start. This means that in a HTTP RANGE request, the BUFFER_OFFSET will match the value in the RANGE request. 2019-02-05 17:06:50 +0000 Alex Ashley * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: curlhttpsrc: export same HTTP error status as souphttpsrc To make it closer to a drop-in replacement for souphttpsrc, expose the same gst_error_message_with_details as souphttpsrc, so that applications can received the HTTP status code and reason when an error occurs. 2019-02-05 16:34:40 +0000 Alex Ashley * ext/curl/gstcurldefaults.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: * ext/curl/gstcurlqueue.c: * ext/curl/gstcurlqueue.h: curlhttpsrc: fix various leaks and thread safety issues curlhttpsrc uses a single thread running the gst_curl_http_src_curl_multi_loop() function to handle receiving data and messages from libcurl. Each instance of curlhttpsrc adds an entry into a queue in GstCurlHttpSrcMultiTaskContext and waits for the multi_loop to perform the HTTP request. Valgrind has shown up race conditions and memory leaks: 1. gst_curl_http_src_change_state() does not wait for the multi_loop to complete before going to the NULL state, which means that an instance of GstCurlHttpSrc can be released while gst_curl_http_src_curl_multi_loop() still has a reference to it. 2. if multiple elements try to be removed from the queue at once, only the last one is deleted. 3. source->caps is leaked 4. curl multi_handle is leaked 5. leak of curl_handle if URI not set 6. leak of http_headers when reusing element 7. null pointer dereference in negotiate caps 8. double-free of the default user-agent string 9. leak of multi_task_context.task This commit changes the logic so that each element has a connection status, which is used by the multi_loop to decide when to remove an element from its queue. An instance of curlhttpsrc will not enter the NULL state until its reference has been removed from the queue. When shutting down the curl multi loop, the memory allocated from the call to curl_multi_init() is now released. When gstadaptivedemux uses a URI source element, it will re-use it for multiple requests, moving it between READY and PLAYING between each request. curlhttpsrc was leaking the http_headers structure in this use case. The gst_curl_http_src_negotiate_caps() function extracts the "response-headers" field from the http_headers, but did not check that this field might be NULL. If the user-agent property is set, the global user-agent string was freed. This caused a double-free error if the user-agent is ever set a second time during the execution of the process. There are situations within curlhttpsrc where the code needs both the global multi_task_context mutex and the per-element buffer_mutex. To avoid deadlocks, it is vital that the order in which these are requested is always the same. This commit modifies the locking order to always be in the order: 1. multi_task_context.task_rec_mutex 2. buffer_mutex Fixes #876 2019-02-05 16:23:01 +0000 Alex Ashley * tests/check/Makefile.am: * tests/check/elements/curlhttpsrc.c: * tests/check/meson.build: tests: curlhttpsrc: add unit tests Based upon the souphttpsrc tests, add unit tests for the curlhttpsrc element. The souphttpsrc tests are able to use an HTTP server that is provided as part of the soup library. This does not exist in the curl library, therefore these tests provide a very simple HTTP server using the GIO library. These curlhttpsrc tests contain one new test that does not come from the souphttpsrc tests. The test_multiple_http_requests test tries to reproduce the way in which GstAdaptiveDemux makes use of URI source elements. GstAdaptiveDemux creates a bin with the httpsrc element and a queue element and sets the locked state of that bin to TRUE, so that it does not follow the state transitions of its parent. It then moves this bin to the PLAYING state to start each download and back to READY when the download completes. 2019-02-14 14:48:12 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: allow UYVY in DMABuf mode in the sink pad Tested with the pipeline below: gst-launch-1.0 videotestsrc num-buffers=1 ! msdkvpp ! \ video/x-raw\(memory:DMABuf\),format=UYVY ! msdkvpp ! video/x-raw, \ format=YUY2 ! filesink location=a.yuv 2019-02-14 13:56:52 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: allow UYVY in the src pad This make the pipeline below works: gst-launch-1.0 videotestsrc num-buffers=1 ! msdkvpp ! \ video/x-raw,format=UYVY ! filesink location=a.yuv Once https://github.com/intel/media-driver/pull/526 in the media-driver is merged, the pipeline below also works: gst-launch-1.0 videotestsrc num-buffers=1 ! msdkvpp ! \ video/x-raw\(memory:DMABuf\),format=UYVY ! filesink location=a.yuv 2019-01-02 19:48:34 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_libva.c: msdk: map GST_VIDEO_FORMAT_UYVY to VA_FOURCC_UYVY 2019-02-14 13:43:13 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: allow BGRx in DMABuf mode in the src pad Tested with the pipeline below: gst-launch-1.0 videotestsrc ! msdkvpp ! \ video/x-raw\(memory:DMABuf\),format=BGRx ! glimagesink 2019-02-18 15:15:44 +0100 Bastien Nocera * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-vcdsrc.xml: * meson_options.txt: * sys/Makefile.am: * sys/meson.build: * sys/vcd/Makefile.am: * sys/vcd/meson.build: * sys/vcd/vcdsrc.c: * sys/vcd/vcdsrc.h: * tests/check/Makefile.am: vcdsrc: Remove unusable VCD source The VCD source was ported in 2014 (commit 89eb1e9), but the necessary "cdxaparse" plugin, which is used to "Parse a .dat file (VCD) into raw mpeg1" was never ported. This means that the probable main user for the feature, totem, hasn't actually been able to play back VCDs, since 2012, when it switched to using GStreamer 1.0. Note that even if cdxaparse was finally ported, a lot of work would still be necessary before it is considered usable. Notably, it is missing disc image support [1] and some VCDs just cannot be opened for reading [2]. [1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/898 [2]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/899 2019-02-15 22:51:21 +0530 Nirbheek Chauhan * ext/closedcaption/misc.h: closedcaption: Use portable variadic macro syntax args... is not understood by MSVC: error C2010: '.': unexpected in macro parameter list 2019-02-15 22:52:30 +0530 Nirbheek Chauhan * ext/closedcaption/decoder.c: * ext/closedcaption/decoder.h: closedcaption: Port plugin to MSVC pthread is not portable, so we can't use a pthread mutex use GMutex instead. 2018-05-09 13:16:15 +0100 Daniel Stone * ext/wayland/wlwindow.c: waylandsink: Don't create throwaway empty regions Instead of creating a region, adding nothing to it, setting that as the input region and destroying the region, you can instead just pass NULL to wl_surface_set_input_region for the same effect. Fixes #702 2019-02-15 19:15:11 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: fix rtx + bundle If bundle was used in combination with rtx, only the bundled transport stream would have correctly configured rtx parameters. Iterate over the payloads upfront in the bundled case to ensure the correct payload mapping is set for the RTX elements. 2019-02-13 17:24:50 +0100 Edward Hervey * ext/dtls/gstdtlsagent.c: dtls: Don't abort on non-fatal issues OpenSSL will take care of returning valid context if there are only non-fatal issues. Don't abort in those cases and instead just print out the issues Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/811 2019-02-13 16:09:45 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Fix draining with libfdk-aac v2.0.0 This release requires all buffer descriptor pointers to be valid, even when we provide zero input buffers. 2019-02-13 00:54:50 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: Skew correction should use the upstream DTS The MPEG-TS packetiser should use the upstream DTS for skew correction when running in that mode, as the DTS carries the upstream arrival time. The PTS (if it's set at all) is less useful, and can be invalid. 2019-02-12 14:31:13 +0200 Sebastian Dröge * ext/closedcaption/gstccconverter.c: ccconverter: Don't output empty buffers 2019-02-12 14:30:49 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Use S334_EIA_608 instead of S334_EIA_708 for CEA608 output 2019-02-12 14:30:13 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: S334 1A CEA608 closed captions have the first bit set for the first field And not for the second field. The logic was inverted here. 2019-02-11 13:53:19 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: set decode_only for output only MSDK may return MFX_ERR_MORE_DATA but without output surface Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/887 2019-02-12 10:53:55 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: verify the driver name We need to make sure the Intel graphics card is used in a dual GPU system. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/895 2019-01-25 16:25:10 +0900 Justin Kim * ext/srt/gstsrt-enums.h: * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: srt: re-enable passphrase With refactoring, supporting passphrase was removed accidently. This commit re-enables srt encryption and validates 'passphrase' by checking the return value of 'srt_setsockopt'. fix: #694 2019-02-11 21:21:52 +0900 Seungha Yang * ext/openh264/gstopenh264dec.cpp: openh264dec: Fix build with msvc Fix following build error ../subprojects/gst-plugins-bad/ext/openh264/gstopenh264dec.cpp(76): error C2121: Note that msvc usually complains #if inside macro 2019-01-26 22:09:59 -0500 Josh Matthews * sys/applemedia/Makefile.am: * sys/applemedia/avfdeviceprovider.h: * sys/applemedia/avfdeviceprovider.m: * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: * sys/applemedia/meson.build: * sys/applemedia/plugin.m: Add device provider for AVFoundation capture devices. 2019-02-05 23:53:17 +0530 Nirbheek Chauhan * ext/ladspa/gstladspa.c: * gst/removesilence/vad_private.c: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/win/DeckLinkAPIDispatch.cpp: * sys/decklink/win/DeckLinkAPI_i.c: * sys/wasapi/gstwasapiutil.c: * sys/winks/kshelpers.c: misc: Fix warnings on Cerbero MinGW gstladspa.c:360:5: error: zero-length ms_printf format string [-Werror=format-zero-length] vad_private.c:108:3: error: this decimal constant is unsigned only in ISO C90 [-Werror] gstdecklinkvideosink.cpp:478:32: error: comparison between 'BMDTimecodeFormat {aka enum _BMDTimecodeFormat}' and 'enum GstDecklinkTimecodeFormat' [-Werror=enum-compare] win/DeckLinkAPI_i.c:72:8: error: extra tokens at end of #endif directive [-Werror] win/DeckLinkAPIDispatch.cpp:35:10: error: unused variable 'res' [-Werror=unused-variable] gstwasapiutil.c:733:3: error: format '%x' expects argument of type 'unsigned int', but argument 8 has type 'DWORD' [-Werror=format] gstwasapiutil.c:733:3: error: format '%x' expects argument of type 'unsigned int', but argument 9 has type 'guint64' [-Werror=format] kshelpers.c:446:3: error: missing braces around initializer [-Werror=missing-braces] kshelpers.c:446:3: error: (near initialization for 'known_property_sets[0].guid.Data4') [-Werror=missing-braces] 2019-02-02 13:26:32 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: Release occupied surface for MFX_ERR_MORE_DATA An output surface is returned but without sync point when when MFXVideoDECODE_DecodeFrameAsync () returns MFX_ERR_MORE_DATA, this surface should be released too, otherwise the surface is occupied and it is easy to exhaust all pre-allocated mfx surfaces. Example pipeline (input_vp8.webm contains lots of frame with show_frame set to 0): gst-launch-1.0 filesrc location=input_vp8.webm ! matroskademux ! msdkvp8dec ! msdkvpp ! fakesink 0:00:05.995959693 19866 0x563f30f14590 ERROR default gstmsdkvideomemory.c:77:gst_msdk_video_allocator_get_surface: failed to get surface available ERROR: from element /GstPipeline:pipeline0/GstMatroskaDemux:matroskademux0: Internal data stream error. 2019-02-02 16:54:23 +0100 Nicola Murino * ext/opencv/gstcameraundistort.cpp: opencv cameraundistort: use G_GNUC_UNUSED for better portability 2018-12-17 23:32:26 +0100 Nicola Murino * configure.ac: * ext/opencv/meson.build: opencv: remove deprecated headers are not needed anymore 2018-12-01 22:48:53 +0100 Nicola Murino * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: * ext/opencv/cameraevent.cpp: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcameraundistort.cpp: * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstcvsobel.h: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdewarp.h: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstfacedetect.h: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsthanddetect.h: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: * ext/opencv/gstretinex.cpp: * ext/opencv/gstretinex.h: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: * ext/opencv/gstskindetect.cpp: * ext/opencv/gstskindetect.h: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextoverlay.cpp: * ext/opencv/gsttextoverlay.h: * ext/opencv/motioncells_wrapper.cpp: * ext/opencv/motioncells_wrapper.h: * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.h: opencv: port to c++ 2019-02-02 17:51:35 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkdec.c: msdkdec: explain the the extra ref of input buffer 2019-01-11 16:18:11 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: avoid releasing the input buffer when it is still in use The input buffer is released in gst_msdkdec_finish_task () when decoding some special clips however this buffer is still in use, so ref the input buffer before gst_msdkdec_finish_task () and unref it at the end of gst_msdkdec_handle_frame (). Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/862 2019-01-31 15:24:06 +0530 Nirbheek Chauhan * tests/check/meson.build: meson: orc-test is not required This is especially never available on iOS. 2019-01-16 15:15:13 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9dec.c: msdkvp9dec: output P010_10LE buffer if possible 2019-01-16 14:52:35 +0800 Haihao Xiang * sys/msdk/gstmsdkvp9dec.c: msdkvp9dec: use separate src caps We will add more formats in the src caps of msdkvp9dec, so let msdkvp9dec uses separate src caps. Note it doesn't change any capability 2019-01-30 22:16:39 -0300 Thibault Saunier * gst/debugutils/gsttestsrcbin.c: testbin: Do not take FlowCombiner into account when flushing The way FlowCombiner combines the FLUSH doesn't work in the case we have several "sinkpads" since any flush return FLUSH. But in the case we have a seek where on one branch flush is done, we should just say OK otherwise we might return FLUSHING to a src that has already been seeked and is ready to process new buffers 2019-01-30 18:36:51 -0300 Thibault Saunier * gst/debugutils/gsttestsrcbin.c: testbin: Forward seek to all sources 2019-01-30 11:11:47 -0500 Aaron Boxer * sys/d3dvideosink/d3dhelpers.c: d3dhelpers.c: fix typo in debug output 2019-01-30 19:54:33 +0900 Seungha Yang * meson.build: * tests/check/meson.build: meson: Add support orc fallback Allow fallback to orc subproject if any, and add missing orc version check. Additionally 'dependencies' keyword is removed from find_library, because it's invalid keyword for find_library. 2017-02-27 22:41:47 +1100 Jan Schmidt * ext/openh264/gstopenh264dec.cpp: openh264: Conditionally support the main and high profiles openh264 added main/high profile support upstream after the 1.8.0 release, so detect a version higher than that and support main/high stream input 2019-01-04 02:53:33 +1100 Jan Schmidt * ext/openh264/gstopenh264dec.cpp: openh264: Use DecodeFrameNoDelay() API instead of DecodeFrame2 Replace legacy usage of DecodeFrame2 API in favour of the recommended DecodeFrameNoDelay() This fixes problems with DecodeFrame2() not (currently) returning all frames in main/high streams with B-frames, and reduces latency - previously openh264 would not return a decoded frame until the next call to DecodeFrame2(). DecodeFrameNoDelay() returns them immediately. 2019-01-30 14:46:37 +1100 Jan Schmidt * ext/openh264/gstopenh264dec.cpp: openh264dec: Hook up openh264 messages to GStreamer logging Use the OpenH264 callback to pass Openh264 internal warning/error messages through the GStreamer logging framework 2017-04-05 15:36:06 +1000 Jan Schmidt * ext/openh264/gstopenh264dec.cpp: openh264dec: Handle B frame decoding Support out-of-order decoding in OpenH264 by tracking our internal frame reference in the OpenH264 timestamp field. Drain any pending frames at EOS. 2019-01-30 14:38:20 +1100 Jan Schmidt * ext/openh264/gstopenh264dec.cpp: Add OpenH264 version check macro 2017-03-25 03:37:35 +1100 Jan Schmidt * ext/openh264/gstopenh264dec.cpp: openh264dec: Fix up EOS handling If the last frame(s) produce errors, then we need to drop them or else we spin forever failing to decode a frame and thinking it'll get better if we wait for more data that's never coming. 2019-01-20 01:23:39 +0530 Nirbheek Chauhan * sys/nvdec/meson.build: meson: Fix building of the nvdec plugin on Windows Have to use the Nvidia Video Codec SDK when building with a newer CUDA toolkit. 2019-01-22 13:52:55 +0100 VaL Doroshchuk * sys/applemedia/avfvideosrc.m: avfvideosrc: add device-name property This property is readonly and should show the name of selected capture device. 2019-01-22 01:54:24 +0900 Yeongjin Jeong * ext/fdkaac/gstfdkaacdec.c: fdkaacdec: Fix build for fdkaac < 0.1.4 The fdkaac decoder supports 6.1 / 7.1 channels with downmixer since v0.1.4. Old versions can use AAC_PCM_OUTPUT_CHANNELS instead of AAC_PCM_MAX_OUTPUT_CHANNELS. Fixes #873 2019-01-21 12:25:36 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: msdkdec: set the mfx picture structure to MFX_PICSTRUCT_PROGRESSIVE if it is unknown The picture structure in the output parameters from MFXVideoDECODE_Query is set to MFX_PICSTRUCT_UNKNOWN for some codecs, so the structure of the corresponding mfx surfaces created for decoding are unknown. The pipeline will be broken when these surfaces are used as the input for msdkvpp. Example pipeline: gst-launch-1.0 filesrc location=input_vp8.webm ! matroskademux ! msdkvp8dec ! msdkvpp ! fakesink Error message: 0:00:00.031568911 14259 0x55b79dc684a0 ERROR msdkvpp gstmsdkvpp.c:728:gst_msdkvpp_transform: MSDK Failed to do VPP ERROR: from element /GstPipeline:pipeline0/GstMatroskaDemux:matroskademux0: Internal data stream error. This is a workaround for the above issue 2019-01-24 22:51:39 +0100 Nicola Murino * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: add stream-format and alignment to H.264 caps 2019-01-16 10:44:21 +0800 Haihao Xiang * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: msdkh265enc: enable low power mode Low power mode is disabled by default, set the value of low-power to true to enable this mode. 2019-01-24 10:32:46 +0100 Nicola Murino * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdemux.c: mpegdemux: add support for H.265 2019-01-24 10:32:14 +0100 Nicola Murino * gst/mpegdemux/gstmpegdemux.c: mpegdemux: add stream format to H.264 caps 2019-01-21 18:18:46 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkbufferpool.c: msdk: bufferpool: refactor memory type decision The memory type was used as bitwise enum, but the enum was not defined in that way. Nonetheless, most of the usage of the memory type was as mutually exclusive options, rather than option composition. This patch refactor how the memory type is defined, so it is kept the mutual exclusion among options. 2019-01-21 12:46:32 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkdec.c: msdk: fix some comments typos 2019-01-21 16:43:11 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkdec.c: msdk: decoder: fatal failure if negotiations fails Otherwise it crashes when no parser is used placed upstream, v.gr. gst-launch-1.0 filesrc location=file.264 ! msdkh264dec ! fakesink 2019-01-21 16:11:59 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkdec.c: msdk: decoder: comment to explain array reset 2019-01-21 15:53:23 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdkdec.c: msdk: decoder: fix an usage-after-free pointer bug 2019-01-17 15:06:06 +0100 Mathieu Duponchelle webrtc: expose ice-transport-policy property This is the equivalent of iceTransportPolicy in the RTCConfiguration dictionary. Only two values are implemented: * all: default behaviour * relay: only gather relay candidates The third member of the iceTransportPolicy enum, "public", is obsolete. 2019-01-22 14:34:23 -0500 Olivier Crête * ext/srt/gstsrtobject.c: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsrc.c: srt: Accepts URIs without host to go into listener mode Just setting a URI without a hostname should directly go into listener mode. 2019-01-22 14:33:32 -0500 Olivier Crête * ext/srt/gstsrtobject.c: srt: Fix GClosure usage One needs to set a marshaller as well as use the object setter when setting objects. 2019-01-22 12:52:25 +0000 Tim-Philipp Müller * meson.build: meson: detect opengl api from -base .pc files correctly There was a mismatch between the .pc files generated by autotools and by meson that would lead to meson not detecting that opengl api is available even though it is. This could lead to build failures when building -bad with meson against a -base that was built with autotools. The mismatch has now been rectified but we will still check the old one for backwards compatibility. 2019-01-22 12:41:00 +0000 Tim-Philipp Müller * meson.build: meson: remove some cruft 2019-01-18 13:28:26 +0000 Philippe Normand * ext/wpe/WPEThreadedView.cpp: wpesrc: Plug WPE's exportable leak 2019-01-21 10:57:57 +0000 Philippe Normand * configure.ac: * ext/Makefile.am: * ext/wpe/Makefile.am: wpe: Add autotools build support 2019-01-22 13:02:30 +0900 Justin Kim * ext/srt/gstsrtobject.c: srt: Use default host and port if uri doesn't provide 2019-01-22 12:44:07 +0900 Justin Kim * ext/srt/gstsrt.c: * ext/srt/gstsrtobject.c: srt: Enable logs for srtobject 2019-01-22 12:42:47 +0900 Justin Kim * ext/srt/gstsrtobject.c: srt: Fix property names Property name and its enum should match. 2019-01-22 11:35:03 +0900 Justin Kim * ext/srt/gstsrtobject.c: srt: Fix a regression crash Even in case that srt is working as a caller mode, uri can have no hostname or ip address. fix: #874 2019-01-15 13:59:05 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: add P010_10LE to sink and src caps example pipelines: gst-launch-1.0 videotestsrc num-buffers=100 ! \ video/x-raw,format=P010_10LE,width=352,height=288 ! msdkvpp ! \ video/x-raw,format=NV12! fakesink gst-launch-1.0 videotestsrc num-buffers=100 ! \ video/x-raw,format=NV12,width=352,height=288 ! msdkvpp ! \ video/x-raw,format=P010_10LE ! fakesink 2019-01-15 14:30:34 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdkh265dec: support P010_10LE in DMABuf mode 2018-12-12 13:14:13 +0100 Jacek Tomaszewski * sys/wasapi/gstwasapiutil.c: wasapi: Fixed corner-cases in mapping of channel mask 'channel-mask' field should not be put in caps if channel mask is 0x0 Mapping WASAPI channel mask to GST equivalent was going only over first nChannels elements of wasapi_to_gst_pos array, translating, for example, WASAPI's 0x63f to GST's 0x3f instead of 0xc3f. When 'channel-mask' is specified as NULL, it signifies that there's need to do downmix or upmix and it makes caps negotiation with audioconvert element impossible. Just omit it. Signed-off-by: Nirbheek Chauhan 2019-01-19 23:53:56 +0530 Nirbheek Chauhan * sys/msdk/meson.build: meson: Fix automagic build of msdk plugin When building the msdk plugin even if libmfx is found, unless the plugin is explicitly enabled we should not error out if msdk dependencies are not found. Also give an error message when we don't build the plugin on Windows because we're not building with MSVC. 2019-01-18 13:10:31 +0530 Nirbheek Chauhan * sys/msdk/Makefile.am: * sys/nvenc/Makefile.am: build: Don't forget to add windows files to EXTRA_DIST 2019-01-17 17:14:31 +0200 Sebastian Dröge * gst/removesilence/Makefile.am: removesilence: Add $(LIBM) to libraries /usr/bin/ld: .libs/libgstremovesilence_la-vad_private.o: in function `vad_set_threshold': ./gst/removesilence/vad_private.c:108: undefined reference to `pow' /usr/bin/ld: .libs/libgstremovesilence_la-vad_private.o: in function `vad_get_threshold_as_db': ./gst/removesilence/vad_private.c:114: undefined reference to `log10' === release 1.15.1 === 2019-01-17 02:16:53 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.15.1 2019-01-17 02:16:52 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-closedcaption.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-openmpt.xml: * docs/plugins/inspect/plugin-openni2.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srt.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: Update docs 2019-01-17 02:16:38 +0000 Tim-Philipp Müller * po/af.po: * po/ast.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update translations 2019-01-16 13:48:28 +0000 Tim-Philipp Müller * ext/srt/Makefile.am: srt: dist enums header 2019-01-16 01:03:40 +0000 Tim-Philipp Müller * tests/check/meson.build: meson: enable tests for orc code 2019-01-15 02:03:23 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.h: wasapi: Fix infinite loop when the device disappears When the audio device goes away during playback or capture, we were going into an infinite loop of AUDCLNT_E_DEVICE_INVALIDATED. Return -1 and post an error message so the ringbuffer thread exits with an error. 2019-01-14 14:29:07 +0100 Jan Alexander Steffens (heftig) * ext/srt/Makefile.am: srt: Fix autotools build 0a350c610dab54dcdf55b45a0293fff048d24bb3 broke the build by only building enum types with meson. It also removed gstsrt.c from the list of sources, causing the plugin to fail to load. squash! srt: Fix autotools build 2019-01-14 14:37:23 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtobject.c: srt: Fix GCC function type error gstsrtobject.c: In function ‘gst_srt_object_close’: gstsrtobject.c:1036:7: error: function called through a non-compatible type [-Werror] (GDestroyNotify) g_closure_unref); /usr/include/glib-2.0/glib/gmem.h:121:8: note: in definition of macro ‘g_clear_pointer’ (destroy) (_ptr); \ ^~~~~~~ gstsrtobject.c:1038:7: error: function called through a non-compatible type [-Werror] (GDestroyNotify) g_closure_unref); /usr/include/glib-2.0/glib/gmem.h:121:8: note: in definition of macro ‘g_clear_pointer’ (destroy) (_ptr); \ ^~~~~~~ Arch Linux gcc 8.2.1 20181127 glib 2.58.2 2019-01-10 14:28:52 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: msdk: set the right BRCParamMultiplier BRCParamMultiplier in mfxInfoMFX is a parameter which specifies a multiplier for bitrate control parameters [1], it impacts TargetKbps, MaxKbps, BufferSizeInKB and InitialDelayInKB. [1]: https://software.intel.com/en-us/node/628473 2019-01-10 15:02:16 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: msdk: set the upper bound of max-vbv-bitrate to 2048000 kbps The upper bound of bitrate is also 2048000 kbps which should be large enough in practice. Fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/863 2019-01-10 15:34:51 +0530 Nirbheek Chauhan * sys/msdk/meson.build: meson: Fix building of MSDK plugin on Windows Variable name was typoed in 604c8d5232eba961ca34c9e98de8d5454cd5ab5f 2018-11-07 14:47:44 +0900 Justin Kim * ext/srt/Makefile.am: * ext/srt/gstsrt-enums.h: * ext/srt/gstsrt.c: * ext/srt/gstsrt.h: * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesink.h: * ext/srt/gstsrtbasesrc.c: * ext/srt/gstsrtbasesrc.h: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtclientsink.h: * ext/srt/gstsrtclientsrc.c: * ext/srt/gstsrtclientsrc.h: * ext/srt/gstsrtobject.c: * ext/srt/gstsrtobject.h: * ext/srt/gstsrtserversink.c: * ext/srt/gstsrtserversink.h: * ext/srt/gstsrtserversrc.c: * ext/srt/gstsrtserversrc.h: * ext/srt/gstsrtsink.c: * ext/srt/gstsrtsink.h: * ext/srt/gstsrtsrc.c: * ext/srt/gstsrtsrc.h: * ext/srt/meson.build: srt: Integrate server and client element into one We have srt{client,server}{src,sink} elements in accordance to the norm of the connection oriented protocols. However, SRT connection mode can be changed by uri parameters so it requires an integrated element to handle the parameters. fix: #740 2019-01-09 15:03:19 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: needn't call MFXJoinSession after MFXCloneSession According to the MSDK documation[1], MFXCloneSession is a light-weight equivalent of MFXJoinSession after MFXInit, so MFXJoinSession call isn't needed in the msdk plugin, otherwise the cloned session is joined to the parent session twice, and we will get a MFX error when closing the parent session example pipeline: gst-launch-1.0 videotestsrc num-buffers=100 ! \ video/x-raw,format=NV12,width=352,height=288 ! msdkh264enc ! msdkh264dec ! \ msdkh264enc ! fakesink Error message: 0:00:00.211948518 21733 0x5586ee741c60 ERROR msdk msdk.c:148:msdk_close_session: Close failed (undefined behavior) [1]: https://software.intel.com/en-us/node/628429#MFXCloneSession 2019-01-09 12:19:50 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: check whether mfx function call fails And log the failures for debugging 2019-01-09 09:49:16 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: msdkenc: return NULL instead of FALSE The returned type is a pointer 2019-01-09 08:58:00 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: release resources if failing to create the buffer pool Needn't check the pointers against NULL because the pointers are non-NULL 2019-01-08 13:33:44 +0100 Víctor Manuel Jáquez Leal * sys/msdk/meson.build: msdk: meson: compile vp9dec if available based on the patches provided by Haihao Xiang 2019-01-08 13:36:09 +0100 Víctor Manuel Jáquez Leal * configure.ac: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/gstmsdkvp9dec.c: * sys/msdk/meson.build: * sys/msdk/msdk.h: * sys/msdk/msdk_libva.h: msdk: add mfx in include path Thus removing the preprocessor's directives to included if found. 2019-01-08 13:30:29 +0100 Víctor Manuel Jáquez Leal * sys/msdk/meson.build: msdk: meson: use libmfx pkg-config if available Refactoring to bail out early if MediaSDK is not found. based on the patches provided by Haihao Xiang 2019-01-08 13:18:13 +0100 Víctor Manuel Jáquez Leal * configure.ac: msdk: add in configure more directories to search for libraries 2018-12-29 13:56:49 +0800 Haihao Xiang * sys/msdk/gstmsdkallocator_d3d.c: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: msdk: don't reset the external frame allocator In gst-msdk, a mfx session may be shared between different gst elements, each element tries to set the frame allocator. However, per the MSDK documation[1], the behavior is undefined if reset the frame allocator while the previous allocator is in use. Fortunately all elements use the same frame allocator, so we can avoid to call MFXVideoCORE_SetFrameAllocator again. [1]: https://software.intel.com/en-us/node/628430#MFXVideoCORE3 2018-12-27 16:50:54 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: don't use NV12 as default output in normal mode If so, BGRA is the preferred output format hence BGRA will be selected as input format by default, e.g. in the pipleline below, BGRA instead of NV12 is selected without renegotiation, so we can avoid the NV12 issue (see commit 3f2314a) by default. gst-launch-1.0 videotestsrc ! msdkvpp ! glimagesink 2018-12-14 10:18:25 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: close the current VPP session if this session has been initialized Otherwise MFXVideoVPP_Init will fail because it is called twice without a close. Example pipeline: gst-launch-1.0 videotestsrc ! msdkvpp ! glimagesink Sometimes glimagesink emits GST_EVENT_RECONFIGURE event which results in that MFXVideoVPP_Init is called twice, then get the negotiation failure below: 0:00:00.093715518 21218 0x558ef56231e0 ERROR msdkvpp gstmsdkvpp.c:995:gst_msdkvpp_initialize: Init failed (undefined behavior) WARNING: from element /GstPipeline:pipeline0/GstMsdkVPP:msdkvpp0: not negotiated After applying this commit, the pipeline above may run without negotiation failure, however NV12 layout in dmabuf mode is selected in renegotiation, the display image is corrupted due to the NV12 issue which was mentioned in commit 3f2314a. Some other fixes are needed to avoid renegotiation by default 2018-12-19 10:44:50 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdkvpp: don't update pads' info if nothing have changed 2019-01-04 11:57:52 -0800 U. Artie Eoff * sys/msdk/gstmsdkenc.c: msdkenc: break out of flush frames loop on error In general, we should assume any unhandled error is non-recoverable. In the flush frames loop, some error states can cause us to never increment the task and therefore we get stuck in an infinite loop and generate GST_ELEMENT_ERROR over and over again. This eventually consumes all system memory and triggers OOM. Thus, assume the worst and break out of the loop upon the first "unhandled" error. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/859 2019-01-04 18:36:43 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Fix double call to Start when resetting the element When either the source or sink goes from PLAYING -> NULL -> PLAYING, we call _reset() which sets client_needs_restart, and then we call prepare() which calls IAudioClient_Start(), so we don't need to call it again in src_read() or sink_write(). Unlike when we're just going PLAYING -> PAUSED -> PLAYING. 2019-01-03 15:49:26 +0200 Sebastian Dröge * sys/wasapi/gstwasapisink.c: wasapisink: Don't call CoUninitialize() twice in unprepare() It has to be symmetric with CoInitialize(), otherwise everything else will fail. 2019-01-02 17:18:58 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Don't forget to unref clock after usage And don't unref a clock that is potentially NULL. 2018-12-31 12:09:42 +0000 Tim-Philipp Müller * ext/webrtc/webrtcsdp.c: webrtc: include stdlib.h for atoi() Fixes #857 2018-12-30 22:31:39 +0900 Seungha Yang * tests/check/meson.build: tests: Enable more tests on Windows 2018-12-30 22:33:03 +0900 Seungha Yang * tests/check/elements/compositor.c: tests: Remove compositor test It's moved to -base and no more part of -bad 2018-12-30 22:31:02 +0900 Seungha Yang * tests/check/elements/asfmux.c: * tests/check/elements/camerabin.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: tests: Remove pointless unistd include 2018-12-27 17:52:47 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-openglmixers.xml: * ext/Makefile.am: * ext/gl/Makefile.am: * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglbumper.c: * ext/gl/gstglbumper.h: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfilterreflectedscreen.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmixerbin.c: * ext/gl/gstglmixerbin.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: * ext/gl/meson.build: * ext/meson.build: * meson_options.txt: Remove openglmixers plugin, moved to -base Merged into the existing opengl plugin in -base. 2018-12-27 13:41:05 +0100 Tim-Philipp Müller * .gitignore: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-compositor.xml: * gst/compositor/.gitignore: * gst/compositor/Makefile.am: * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/blendorc.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: * gst/compositor/compositororc.orc: * gst/compositor/meson.build: * gst/meson.build: * meson_options.txt: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/meson.build: * tests/examples/Makefile.am: * tests/examples/compositor/Makefile.am: * tests/examples/compositor/crossfade.c: * tests/examples/compositor/meson.build: * tests/examples/meson.build: Remove compositor plugin which was moved to -base https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/138 2018-12-26 17:54:21 +0100 Tim-Philipp Müller * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * ext/gl/Makefile.am: * ext/gl/meson.build: * ext/iqa/Makefile.am: * ext/iqa/meson.build: * gst-libs/gst/Makefile.am: * gst-libs/gst/meson.build: * gst-libs/gst/video/.gitignore: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video-bad-prelude.h: * gst/compositor/Makefile.am: * gst/compositor/meson.build: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video.pc.in: * pkgconfig/meson.build: Remove GstVideoAggregator, moved into libgstvideo in -base https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/137 2018-12-25 14:16:36 +0100 Tim-Philipp Müller * ext/opencv/Makefile.am: opencv: fix disting of new header files Fixes distcheck. 2018-10-08 23:45:28 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-stereo.xml: * gst/meson.build: * gst/stereo/.gitignore: * gst/stereo/Makefile.am: * gst/stereo/gststereo.c: * gst/stereo/gststereo.h: * gst/stereo/meson.build: * meson_options.txt: stereo: remove plugin which has been merged into audiofx in -good https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/457 2018-12-25 16:10:57 +0900 Seungha Yang * sys/msdk/gstmsdkbufferpool.c: msdk: Fix invalid return type build warning void function cannot have return value gst-plugins-bad/sys/msdk/gstmsdkbufferpool.c(332): warning C4098: 'gst_msdk_buffer_pool_release_buffer': ... 2018-12-24 23:05:55 +0900 Justin Kim * ext/openal/gstopenalsink.h: * ext/openal/gstopenalsrc.h: * ext/openal/meson.build: openal: Fix AL header path for Mac OS X OpenAL.framework doesn't provide 'alext.h'. Thus, openal is enabled only if the dependency is set by pkg-config. fixes: #852 2018-12-22 18:39:44 +0100 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: Logging fix for updated audio info Bitrate was logged a second time instead of the max_bitrate. 2018-12-20 10:12:42 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Don't use deprecated API 2018-12-18 13:50:43 +1100 Matthew Waters * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportreceivebin.h: webrtc/receive-bin: block pads before dtlssrtpdec: Fixes SSL errors in fast-start scenarios and whenever media stream may be received before an answer is set. 2018-12-18 13:32:02 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: only change the receive state after setting the dtls-client Doing so before will cause SSL errors with fast-start implementations like Chrome or if media data arrives before an answer. 2018-12-18 13:31:00 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: A couple of documentation fixes set-*-description only takes the combined GstWebRTCSessionDescription object 2018-12-16 11:02:50 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Fix support for raw CEA608 input and add support for raw CEA708 input The former was only considering the first byte pair, for the latter we have to convert raw CEA708 cc_data into CDP. 2018-12-13 14:27:25 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/ccconverter.c: * tests/check/meson.build: ccconverter: Add unit test 2018-12-12 14:59:50 +0200 Sebastian Dröge * ext/closedcaption/Makefile.am: * ext/closedcaption/gstccconverter.c: * ext/closedcaption/gstccconverter.h: * ext/closedcaption/gstclosedcaption.c: * ext/closedcaption/meson.build: closedcaption: Add ccconverter element that can convert between different types of Closed Caption formats 2018-12-18 15:25:58 -0500 Xavier Claessens * sys/tinyalsa/meson.build: Fix build when we have tinyalsa but not its header 2018-12-18 22:07:48 +0900 Seungha Yang * tests/check/meson.build: tests: Re-enable isoff test on Windows ... and drop libxml2 dependency since it never be used by both test and gstisoff. 2018-12-16 22:46:02 +0900 Seungha Yang * tests/check/elements/parser.h: tests: Fix build with MSVC 2018-12-18 21:16:43 +0900 Seungha Yang * meson.build: * tests/check/meson.build: meson: Prefer to use join_paths() over '/' ... to avoid mixing '/' and '\' in a path string on Windows. 2018-12-07 23:22:08 +0900 Seungha Yang * meson.build: * tests/check/meson.build: * tests/meson.build: tests: Enable unit test on Windows Allow run some unit tests on Windows. * Add dependency explicitly for some test cases, otherwise plugins couldn't be loaded on uninstalled environment of Windows. * Add missing GST_PLUGIN_LOADING_WHITELIST on meson build. 2018-11-06 22:07:52 +0000 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Accept underscore in property Otherwise sdi_mode and similar properties would be canonicalised to sdi-mode. 2018-12-18 15:41:09 +0100 Guillaume Desmottes * sys/kms/gstkmssink.c: kmssink: fix tmp_kmsmem leaks configure_mode_setting() keeps a ref on tmp_kmsmem which is released in gst_kms_sink_show_frame(). But if for some reason configure_mode_setting() is re-called before showing a frame or if none is showed this memory was leaked. 2018-12-18 00:34:44 +0000 Tim-Philipp Müller * configure.ac: * meson.build: * sys/Makefile.am: * sys/acmenc/Makefile.am: * sys/acmenc/acmenc.c: * sys/acmmp3dec/Makefile.am: * sys/acmmp3dec/acmmp3dec.c: * sys/meson.build: Remove acmmp3dec and acmenc plugins ACM is an ancient legacy API, and there's no point in keeping it around for a licensed mp3 decoder now that mp3 patents have expired and we have a decoder in -good. We didn't ship this in cerbero anyway. If there's a good case for the AAC encoder (which is LC only anyway) someone should write a new plugin based on current APIs, that can actually be built out of the box. Fixes #850 2018-12-17 18:58:52 +0000 Tim-Philipp Müller * ext/opencv/meson.build: meson: fix opencv=disabled case if opencv is available on the system ext/opencv/meson.build:103:2: ERROR: Unknown variable "gstopencv_dep". 2018-12-17 11:18:06 +0000 Tim-Philipp Müller * ext/wildmidi/meson.build: meson: wildmidi detection fixes Need at least 0.4.2 apparently. ext/wildmidi/meson.build:11:2: ERROR: String '' cannot be converted to int 2018-12-17 08:43:57 +0100 Jonathan Karlsson * ext/curl/gstcurlhttpsink.c: curlhttpsink: free content type before assigning it Not doing this would result in a memory leak. 2018-12-17 08:07:26 +0100 Jonathan Karlsson * ext/curl/gstcurlbasesink.c: curlbasesink: cleanup transfer immediately when done 2018-12-05 01:29:18 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacenc.c: fdkaac: Syntax tweaks to increase readability Mostly move some assignments out of conditionals that gst-indent completely destroys. 2018-12-04 18:33:09 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacdec.c: fdkaacdec: Enable 8-channel playback The decoder seems to default to 6 channels max, downmixing 7.1 to 5.1. Disable the channel limit to expose all channels to GStreamer. In addition, none of the standard configurations use ACT_SIDE channels. The rear channels of the 7.1 configuration have to be taken from ACT_BACK. See the table in aacenc_lib.h, reproduced here: ---------------------------------------------------------------------------------------- ChannelMode | ChCfg | Height | front_El | side_El | back_El | lfe_El -----------------------+-------+--------+---------------+----------+----------+--------- MODE_1 | 1 | NORM | SCE | | | MODE_2 | 2 | NORM | CPE | | | MODE_1_2 | 3 | NORM | SCE, CPE | | | MODE_1_2_1 | 4 | NORM | SCE, CPE | | SCE | MODE_1_2_2 | 5 | NORM | SCE, CPE | | CPE | MODE_1_2_2_1 | 6 | NORM | SCE, CPE | | CPE | LFE MODE_1_2_2_2_1 | 7 | NORM | SCE, CPE, CPE | | CPE | LFE MODE_6_1 | 11 | NORM | SCE, CPE | | CPE, SCE | LFE MODE_7_1_BACK | 12 | NORM | SCE, CPE | | CPE, CPE | LFE -----------------------+-------+--------+---------------+----------+----------+--------- MODE_7_1_TOP_FRONT | 14 | NORM | SCE, CPE | | CPE | LFE | | TOP | CPE | | | -----------------------+-------+--------+---------------+----------+----------+--------- MODE_7_1_REAR_SURROUND | 0 | NORM | SCE, CPE | | CPE, CPE | LFE MODE_7_1_FRONT_CENTER | 0 | NORM | SCE, CPE, CPE | | CPE | LFE ---------------------------------------------------------------------------------------- - NORM: Normal Height Layer. - TOP: Top Height Layer. - BTM: Bottom Height Layer. - SCE: Single Channel Element. - CPE: Channel Pair. - LFE: Low Frequency Element. Restores 8 channels to https://www2.iis.fraunhofer.de/AAC/7.1auditionOutLeader_v2_rtb.mp4 2018-12-04 18:06:26 +0100 Jan Alexander Steffens (heftig) * configure.ac: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/meson.build: fdkaacenc: Add support for v2.0.0 and its configurations These are MPEG-standard configurations so should be checked first, before the PCE clones added by v0.1.4. 2018-12-04 18:04:28 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Add support for MPEG configuration 7 2018-12-04 18:04:06 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Add a description of each configuration 2018-12-04 17:57:15 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Prefer REAR for surround channels We (currently?) prefer to use the REAR positions for what MPEG calls "surround" channels. 2018-12-16 23:45:32 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.interfaces: * ext/Makefile.am: * ext/daala/Makefile.am: * ext/daala/gstdaala.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaaladec.h: * ext/daala/gstdaalaenc.c: * ext/daala/gstdaalaenc.h: * ext/meson.build: Remove daala plugin Not so useful now that all effort is focused on AV1 instead. Was only ever enabled with --enable-experimental anyway. Fixes #848 2018-12-17 12:30:27 +0200 Sebastian Dröge * ext/openal/meson.build: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/meson.build: * ext/sndfile/meson.build: meson: Add libsinc to the CFLAGS Otherwise gst-i18n-plugin.h can't be found. 2018-12-17 00:26:47 +0000 Tim-Philipp Müller * ext/meson.build: * ext/openni2/meson.build: * meson_options.txt: meson: build openni2 plugin 2018-12-17 00:19:37 +0000 Tim-Philipp Müller * ext/meson.build: * ext/openmpt/meson.build: * meson_options.txt: meson: build openmpt plugin 2018-12-17 00:11:16 +0000 Tim-Philipp Müller * ext/meson.build: * ext/openexr/meson.build: * meson_options.txt: meson: build openexr plugin 2018-12-17 00:00:11 +0000 Tim-Philipp Müller * ext/meson.build: * ext/openal/meson.build: * meson_options.txt: meson: build openal plugin 2018-12-16 20:27:56 +0000 Tim-Philipp Müller * ext/meson.build: * ext/sndfile/meson.build: * meson_options.txt: meson: build sndfile plugin 2018-12-16 20:18:11 +0000 Tim-Philipp Müller * gst/freeverb/meson.build: meson: install freeverb preset file 2018-12-16 20:13:08 +0000 Tim-Philipp Müller * ext/meson.build: * ext/voamrwbenc/meson.build: * meson.build: * meson_options.txt: meson: build voamrwbenc plugin 2018-12-16 20:02:07 +0000 Tim-Philipp Müller * ext/meson.build: * ext/teletextdec/meson.build: * meson_options.txt: meson: build teletext plugin 2018-12-16 18:45:53 +0000 Tim-Philipp Müller * ext/meson.build: * ext/modplug/meson.build: * meson_options.txt: meson: build modplug plugin 2018-12-16 18:07:48 +0000 Tim-Philipp Müller * ext/meson.build: * ext/wildmidi/meson.build: * meson_options.txt: meson: build wildmidi plugin 2018-12-16 17:35:58 +0000 Tim-Philipp Müller * ext/dc1394/meson.build: * ext/meson.build: * meson_options.txt: meson: build dc1394 plugin 2018-12-16 01:05:25 +0000 Tim-Philipp Müller * ext/meson.build: * ext/ofa/meson.build: * meson_options.txt: meson: build ofa plugin 2018-12-16 00:56:50 +0000 Tim-Philipp Müller * ext/gme/meson.build: * ext/meson.build: * meson_options.txt: meson: build gme plugin 2018-12-16 00:41:23 +0000 Tim-Philipp Müller * meson_options.txt: * sys/meson.build: * sys/vdpau/meson.build: meson: build vdpau plugin 2018-12-15 20:02:48 +0000 Tim-Philipp Müller * meson_options.txt: * sys/meson.build: * sys/tinyalsa/meson.build: meson: build tinyalsa plugin 2018-12-15 18:24:11 +0000 Tim-Philipp Müller * meson_options.txt: * sys/meson.build: * sys/vcd/meson.build: meson: build vcdsrc plugin 2018-12-16 23:35:58 +0000 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/meson.build: * ext/spc/Makefile.am: * ext/spc/gstspc.c: * ext/spc/gstspc.h: * ext/spc/tag.c: * ext/spc/tag.h: Remove spc plugin Replaced by gme plugin. Fixes #467 2018-12-11 14:12:13 +0200 Sebastian Dröge * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstccextractor.c: closedcaption: Use new API for converting GstVideoCaptionType from/to GstCaps 2018-12-10 15:54:49 +0200 Sebastian Dröge * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstccextractor.c: * ext/closedcaption/gstline21dec.c: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: closedcaption: Replace GST_VIDEO_CAPTION_TYPE_CEA608_IN_CEA708_RAW with CEA608_S334_1A As a side-effect we can now actually store the line offset in the line21dec element, and have to perform fewer transformations in the decklink elements (which were also buggy as they assumed a single byte triplet per meta). 2018-12-10 15:43:19 +0200 Sebastian Dröge * ext/closedcaption/gstline21dec.c: line21dec: If CCs are not found at the previous line, reset and search from the beginning again 2018-12-10 15:42:04 +0200 Sebastian Dröge * ext/closedcaption/gstline21dec.c: line21dec: Don't read more lines than the height of the frame 2018-12-14 19:55:32 +0100 Nicola Murino * gst/removesilence/meson.build: removesilence: add libm to meson.build 2018-12-14 17:09:01 +0100 Nicola Murino * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: removesilence: reset filter on start and on segment events 2018-12-14 15:48:09 +0100 Nicola Murino * gst/removesilence/gstremovesilence.c: removesilence: improve documentation 2018-11-26 16:40:01 +0100 Nicola Murino * gst/removesilence/gstremovesilence.c: * gst/removesilence/vad_private.c: * gst/removesilence/vad_private.h: removesilence: add threshold property silence thresold was hardcoded to -60 dB, now it is configurable using this new property Closes #63 2018-11-26 16:39:16 +0100 Nicola Murino * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: removesilence: add properties to detect silence only after minimum silence time/buffers Closes #63 2018-11-26 16:38:37 +0100 Nicola Murino * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: removesilence: add silent property to control bus message notifications Closes #63 2018-11-26 16:37:40 +0100 Nicola Murino * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: removesilence: post bus messages when silence is detected/finished Closes #63 2018-11-26 16:36:18 +0100 Nicola Murino * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: removesilence: add squash property allows to output buffers without timestamp gap when silence is removed Closes #63 2018-12-14 12:22:51 +0900 Justin Kim * sys/applemedia/meson.build: sys: applemedia: meson: Add dependencies by using appleframeworks gst-build#13 2018-12-03 16:18:32 +0900 Wonchul Lee * configure.ac: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Avoid race condition on multi-threaded client When waylandsink is used on some other thread than the main wayland client thread, the waylandsink implementation is vulnerable to a condition related to registry and surface events which handled in seperated event queue. The race that may happen is that after a proxy is created, but before the queue is set, events meant to be emitted via the yet to set queue may already have been queued on the wrong queue. Wayland 1.11 introduced new API that allows creating a proxy wrappper which can help to avoid this race condition. 2018-12-03 11:59:46 +0900 Wonchul Lee * tests/examples/waylandsink/Makefile.am: * tests/examples/waylandsink/meson.build: * tests/examples/waylandsink/wayland-threads.c: examples/wayland: Add wayland multi-thread client example This is for testing race condition with multi-thread wayland client environment. The race condition will be resolved with wayland proxy wrapper API when handling event queue. 2018-12-01 22:42:53 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h26{4,5}parse: Don't confuse nal of codec_data with frame vps/sps/pps in codec_data shouldn't be considered as inband data. Otherwise, h26{4,5}parse never insert them to nal when transform (packetized to byte-stream) use case 2018-11-20 04:09:52 -0600 Matthew Waters * sys/nvdec/gstnvdec.c: nvdec: Rely on upstream's value for interlace-mode with hevc The nvdec API doesn't seem to produce interlacing information with hevc streams so rely on upstreams value for interlace-mode 2018-12-12 15:24:18 +0800 Haihao Xiang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: change the wait time for encoder and vpp In MSDK samples, the wait time for encoder, decoder and vpp is 300000. Let's set the wait time to the same value in msdk plugin 2018-12-12 13:45:34 +0800 Haihao Xiang * sys/msdk/gstmsdkvpp.c: msdk: correct the error message It is VPP session instead of Encoder session 2018-12-12 12:52:46 +0800 Haihao Xiang * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkvpp.c: msdk: check the created context against NULL pointer gst_msdk_context_new_with_parent() may return NULL 2018-12-11 15:54:51 +0800 Haihao Xiang * sys/msdk/gstmsdkcontext.c: msdk: decrease the reference count of object Otherwise there are reference leaks if failed to clone or join a mfx session 2018-12-11 15:04:12 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: assign the returned value to status variable Othervise the subsequent check will use the stale value of status variable 2018-11-27 15:56:03 +0800 Xiang, Haihao * sys/msdk/gstmsdkh265enc.c: msdkh265enc: output main-10 bitstream if the input is P010_10LE Tested on KBL using the following command: gst-launch-1.0 videotestsrc num_buffers=100 ! video/x-raw,format=P010_10LE ! \ msdkh265enc ! filesink location=a.hevc This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/829 2018-11-27 19:22:16 +0800 Xiang, Haihao * sys/msdk/gstmsdkh265enc.c: msdkh265enc: add P010_10LE to the sink pad template 2018-11-27 15:55:51 +0800 Xiang, Haihao * sys/msdk/gstmsdkh265enc.c: msdkh265enc: re-add the sink pad template We will add more profiles in the sink caps of msdkh265enc, so let msdkh265enc re-add the sink pad template. Note this change doesn't impact any capability 2018-11-27 16:08:42 +0800 Xiang, Haihao * sys/msdk/gstmsdkenc.c: msdkenc: handle P010_10LE input format Note it is up to each codec to support P010_10LE format 2018-11-27 15:52:56 +0800 Xiang, Haihao * sys/msdk/gstmsdkenc.c: msdkenc: use macro GST_VIDEO_INFO_FORMAT if possible 2018-11-27 22:28:15 -0600 Matthew Waters * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklink: calculate the decklink output time from the internal clock Fixes the time calculations when dealing with a slaved clock (as will occur with more than one decklink video sink), when performing flushing seeks causing stalls in the output timeline, pausing. Tighten up the calculations by relying solely on the internal time (from the internal clock) for determining when to schedule display frames instead attempting to track pause lengths from the external clock and converting to internal time. This results in a much easier offset calculation for choosing the output time and ensures that the clock is always advancing when we need it to. This is fixup to the 'monotonically increasing output timestamps' goal in: bf849e9a69442f7a6f9d4f0a1ef30d5a8009f689 2018-11-29 19:22:51 +0000 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/mpegvideoparse.c: * tests/files/Makefile.am: * tests/files/mpeg2-es-with-cea708-cc.dat: tests: mpegvideoparse: add unit test for CEA-708 closed captions extraction 2018-11-28 17:05:33 +0000 Tim-Philipp Müller * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: extract CEA-708 closed captions 2018-12-10 16:14:07 +0200 Sebastian Dröge * tests/check/elements/mpegtsmux.c: mpegtsmux: Change unit test to not generate zero-sized buffers ever 2018-12-10 16:13:37 +0200 Sebastian Dröge * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: Handle zero-sized buffers correctly without going into an infinite loop Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/844 2018-11-29 13:49:04 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't crash if playbin is not available but kill the process cleanly 2018-12-07 16:52:39 +1100 Matthew Waters * sys/androidmedia/meson.build: androidmedia: also install java sources As needed by our ndk-build integration 2018-12-05 19:01:40 +0200 Sebastian Dröge * ext/closedcaption/gstccextractor.c: * tests/check/elements/ccextractor.c: ccextractor: Copy over timecode meta from the input buffers to the outgoing caption buffers Formats like SCC and MCC work based on timecodes so ideally we pass through the timecodes when writing them. 2018-12-05 18:46:52 +0200 Sebastian Dröge * ext/closedcaption/gstccextractor.c: * ext/closedcaption/gstccextractor.h: * tests/check/elements/ccextractor.c: ccextractor: Include framerate in the closedcaption caps It depends on the framerate how many cc_data byte pairs are allowed per frame, and the framerate is also needed for converting into the CDP or MCC format as the framerate is part of the header metadata. 2018-12-05 17:55:14 +0100 Patricia Muscalu * ext/curl/gstcurlbasesink.c: curlbasesink: Rename curl transfer thread Some systems restrict the length of thread names to 16 bytes. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/838 2018-12-05 13:10:11 +0000 Philippe Normand * ext/meson.build: * ext/wpe/WPEThreadedView.cpp: * ext/wpe/WPEThreadedView.h: * ext/wpe/gstwpesrc.cpp: * ext/wpe/gstwpesrc.h: * ext/wpe/meson.build: * meson_options.txt: wpe: Add a source element acting as a Web Browser based on WebKit WPE The wpe element is used to produce a video texture representing a web page rendered off-screen by WPE. This element can be used to overlay HTML on top of another video stream for instance. 2018-11-19 11:39:50 +0100 Jonathan Karlsson * ext/curl/gstcurlhttpsink.c: curlhttpsink: Enable content type changes Makes it possible to change content type without having to reinitialize the element, typically after reset. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/41 2018-12-05 10:10:39 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacdec.c: fdkaacdec: Use WAV channel mapping instead of interleave setting The latter is going away in libfdk-aac 2.0.0. Instead, MPEG-style output is always non-interleaved and WAV-style output is always interleaved. Earlier libfdk-aac also defaults interleaving accordingly. Since our reordering looks at the associated PCE indices instead of the actual channel order, we're agnostic to the mapping. For https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/825 2018-12-04 17:54:42 +0100 Jan Alexander Steffens (heftig) * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Remove MODE_2_1 This is not a standard mode and no longer supported by fdk-aac 2.0.0. For https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/825 2018-12-05 17:24:20 -0300 Thibault Saunier * common: Automatic update of common submodule From cd1dee0 to 59cb678 2018-12-05 19:58:44 +0530 Nirbheek Chauhan * ext/webrtc/meson.build: meson: Add missing gio dep to webrtcbin plugin It's usually pulled in implicitly through gstsdp_dep, but it's actually a private dependency there. Fixes a build failure on Windows with newer Meson. 2018-12-04 16:15:22 +0530 Naveen Cherukuri * sys/kms/gstkmssink.c: kmssink: Avoiding get_property to take ownership of object members Double free will happen if application frees string retuned by _get_property 2018-11-28 12:39:58 +0800 Xiang, Haihao * sys/msdk/gstmsdkenc.c: * sys/msdk/msdk_libva.c: msdk: add missing breaks 2018-11-28 11:15:28 +0800 Xiang, Haihao * sys/msdk/gstmsdkbufferpool.c: msdk: fix the wrong operator The condition is for video memory only, so the operator should be & instead of | 2018-09-27 15:33:32 +0200 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: process SEI recovery point Similar change as the on I did in h264parse. We want to process SEI recovery point as keyframe so muxers will mark them as seek points and decoders will be able to start decoding from them rather than waiting for an IDR. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790 2018-09-27 15:33:32 +0200 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: parse SEI recovery point Copied the implementation from h264parser and adapted it to the HEVC syntax. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790 2018-09-19 09:07:10 +0200 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: parse SEI messages Don't do anything with them yet. I just copied the parsing and processing logic from h264parse. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790 2018-09-19 10:06:15 +0200 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: h264parse: mark SEI Recovery Point as keyframes The spec states that "recovery point SEI message assists a decoder in determining when the decoding process will produce acceptable pictures for display after the decoder initiates random access or after the encoder indicates a broken link in the coded video sequence." Mark those as keyframes so muxers will mark them as seek points and decoders will be able to start decoding from them rather than waiting for an IDR. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/790 2018-11-23 11:51:04 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Don't duplicate VPS/SPS/PPS per config-interval if exists Don't need to manually insert VPS/SPS/PPS since inband data could be useable. Also fixes #824 2018-11-23 11:28:44 +0900 Seungha Yang * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Don't duplicate SPS/PPS per config-interval if exists Don't need to manually insert SPS/PPS since inband data could be useable. Fixes #824 2018-11-26 00:58:16 +0000 Tim-Philipp Müller * sys/ipcpipeline/meson.build: * tests/examples/ipcpipeline/meson.build: * tests/examples/meson.build: * tests/examples/opencv/meson.build: meson: build opencv and ipcpipeline examples https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/576 2018-11-29 11:24:39 +0000 Tim-Philipp Müller * ext/closedcaption/gstceaccoverlay.c: cc708overlay: fix deadlock We would forget to unlock when a caption data buffer is deemed out of segment, which makes everything lock up next time buffers are received. 2018-11-28 13:35:35 +0200 Jordan Petridis * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlsconnection.c: * ext/webrtc/gstwebrtcice.c: * sys/androidmedia/gstamcvideodec.c: * sys/decklink/win/DeckLinkAPI_i.c: * sys/winks/ksdeviceprovider.c: * tests/check/libs/planaraudioadapter.c: Run gst-indent through the files This is required before we enabled an indent test in the CI. https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/33 2018-11-20 10:37:47 +0000 Maciej Wolny * gst-libs/gst/webrtc/rtpreceiver.h: webrtc: Remove duplicate declarations This causes 'redefinition of typedef ...' errors on GCC 4.5.3 2018-11-27 16:06:53 +0900 Seungha Yang * ext/hls/gsthlssink2.c: hlssink2: Fix string leak Need to free allocated string memory on _finalize() 2018-11-16 13:58:22 +0800 Xiang, Haihao * sys/msdk/gstmsdkh265dec.c: msdk: remove unnecessary assignment CodecProfile will be set in MFXVideoDECODE_DecodeHeader() to match the input stream. Setting the hard-coded profile here will mislead user that msdkh265dec supports a special profile only. 2018-11-16 08:56:34 +0800 Xiang, Haihao * sys/msdk/gstmsdkh265dec.c: msdk: update the sink and src caps of msdkh265dec Now hevc 10bit video can be decoded correctly, so update the sink and src caps accordingly. This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/720 2018-11-19 22:24:33 +0800 Xiang, Haihao * sys/msdk/msdk.c: msdk: set right BitDepth and Shift for P010 mfx frame BitDepth is 10 and Shitf must be set to 1 when creating P010 mfx frame in MSDK 2018-11-19 15:34:38 +0800 Xiang, Haihao * sys/msdk/gstmsdkdec.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: don't use hard-coded video format Some codecs may support varied formats, e.g. HEVC may support NV12 and P010_10LE etc 2018-11-16 20:01:52 +0800 Xiang, Haihao * sys/msdk/gstmsdkallocator_libva.c: msdk: adjust the RT format for P010 surface According to VA API, VA_RT_FORMAT_YUV420_10 is expected for P010 surface 2018-11-16 14:36:31 +0800 Xiang, Haihao * sys/msdk/gstmsdkallocator_libva.c: msdk: create VA_FOURCC_P010 surface from dmabuf 2018-11-16 14:32:29 +0800 Xiang, Haihao * sys/msdk/gstmsdkallocator_libva.c: msdk: VA_FOURCC_P010 frame lock P010 and NV12 have the same layout, so we may reuse the code in gst_msdk_frame_lock() 2018-11-16 16:42:43 +0800 Xiang, Haihao * sys/msdk/msdk_libva.c: msdk: map MFX_FOURCC_P010 to VA_FOURCC_P010 2018-11-16 14:18:36 +0800 Xiang, Haihao * sys/msdk/gstmsdksystemmemory.c: msdk: make sure the surface data is set for GST_VIDEO_FORMAT_P010_10LE P010_10LE and NV12 have the same layout, so we may reuse the code. 2018-10-19 16:23:21 +0800 Haihao Xiang * sys/msdk/msdk.c: msdk: map GST_VIDEO_FORMAT_P010_10LE to MFX_FOURCC_P010 2018-11-16 14:00:02 +0800 Xiang, Haihao * sys/msdk/gstmsdkallocator_libva.c: msdk: add an assert in gst_msdk_frame_lock() for unhandled formats We will add support for more formats, e.g. P010, Adding an assert here may catch the error early 2018-10-19 16:23:34 +0800 Haihao Xiang * sys/msdk/gstmsdkh265dec.c: msdk: use separate src caps for msdkh265dec We will add more formats in the src caps of msdkh265dec, so let msdkh265dec uses separate src caps. Note it doesn't change any capability 2018-11-20 15:17:44 +0800 Xiang, Haihao * sys/msdk/gstmsdkdec.c: msdk: Make sure a variable is initialized when it is used Previously alloc_info is initialized when both thiz->initialized and thiz->allocation_caps are true, but only thiz->initialized is checked when alloc_info is used. 2018-11-20 14:21:54 +0800 Xiang, Haihao * sys/msdk/gstmsdkvideomemory.c: msdk: Close fd handle Otherwise it will result in resource leak if mem == NULL 2018-11-25 20:27:25 +0100 Nicola Murino * ext/opencv/gsthanddetect.cpp: opencv: define CASCADE_DO_CANNY_PRUNING for opencv < 4 2018-11-25 16:13:28 +0100 Nicola Murino * configure.ac: * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: * ext/opencv/camerautils.hpp: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcameraundistort.cpp: * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstdewarp.h: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsthanddetect.h: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: * ext/opencv/gstskindetect.cpp: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttextoverlay.h: * ext/opencv/meson.build: * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: * gst-libs/gst/opencv/meson.build: opencv: make compatible with opencv 4 Closed #826 2018-11-25 16:12:40 +0100 Nicola Murino * ext/opencv/MotionCells.cpp: * ext/opencv/camerautils.cpp: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcameraundistort.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: opencv: fix indentation 2018-11-27 16:22:04 +0800 Wangfei * configure.ac: configure.ac: add gst-allocator check in msdk. With out check gst-allocator, there will be a gst-allocator api symbol link error when call for libgstmsdk.so. 2018-11-21 08:43:56 -0600 Matthew Waters * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklink: fixup internal time tracking over buffering pauses Instead of relying on buffers after a state change to PLAYING to always start from 0, track the amount of time we have spent outside playing but not changed state to PAUSED. 2018-11-26 16:53:52 +1100 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtc: fix tests for no libnice webrtcbin will fail the state change to READY when libnice elements are not available. 2018-11-26 16:50:17 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/utils.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: * tests/check/elements/webrtcbin.c: tests/webrtc: use the existing functions in the plugin Instead of redefining our own, use the function implementations in webrtcsdp.c and utils.c 2018-11-26 16:21:58 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: fix typo in RTCRemoteOutboundRTPStreamStats 2018-11-26 16:21:19 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: add a few comments on bundle and src pad exposure 2018-11-26 16:20:02 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: factor out dtls fingerprint setting 2018-11-26 16:12:03 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: remove extra 'pad' from log line 2018-11-26 16:07:57 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: webrtc: move some functions to the appropriate files 2018-11-26 11:26:52 +0900 Seungha Yang * sys/meson.build: meson: Fix Windows CUDA dependency check Python returns 'None' string for unknown environment 2018-11-22 17:18:18 +0900 Seungha Yang * sys/nvenc/gstnvh265enc.c: nvh265enc: Fix email address typo 2018-11-22 16:14:12 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: nvenc: Fix undefined reference build error on MSVC and CUDA 9.1 2018-11-22 14:01:28 +0900 Seungha Yang * sys/nvenc/gstnvh264enc.c: * sys/nvenc/gstnvh265enc.c: nvenc: Fix MSVC build error C2121 2018-11-22 12:14:44 +0900 Seungha Yang * configure.ac: * meson_options.txt: * sys/meson.build: * sys/nvenc/Makefile.am: * sys/nvenc/gstnvenc.c: * sys/nvenc/gstnvenc.h: * sys/nvenc/meson.build: nvenc: Add meson build with Windows support Note that, since Nvidia does not provide nvEncodeAPI.lib file, find_library() couldn't be used for build on Windows. This patch changes to load nvEncodeAPI(64).dll or libnvidia-encode.so in runtime 2018-11-19 22:40:50 +0900 Seungha Yang * meson_options.txt: * sys/meson.build: * sys/nvdec/meson.build: nvdec: Add meson build with Windows support 2018-11-22 00:22:25 +0900 Seungha Yang * configure.ac: * sys/nvdec/Makefile.am: * sys/nvdec/dynlink_cuda.c: * sys/nvdec/dynlink_nvcuvid.c: * sys/nvdec/gstnvdec.c: * sys/nvdec/gstnvdec.h: nvdec: Drop dynlink interface and use NVIDIA CODEC SDK instead dynlink_* was introduced since CUDA Toolkit 9.x but it's deprecated from 10.0. Instead of using #ifdef hack, shipping nvidia headers of NVIDA CODEC SDK can make build/code simple 2018-11-22 10:57:00 +0900 Seungha Yang * sys/nvdec/cuviddec.h: * sys/nvdec/nvcuvid.h: * sys/nvenc/nvEncodeAPI.h: nvdec/nvenc: Shipping NVIDA Codec SDK headers Add cuvidec.h, nvcuvid.h and nvEncodeAPI.h of NVIDIA Codec SDK 8.2.16 2018-11-15 21:52:27 +0900 Seungha Yang * configure.ac: nvenc/nvdec: Add support CUDA Toolkit 10.0 2018-11-25 17:33:04 +0000 Tim-Philipp Müller * tests/examples/codecparsers/meson.build: examples: codecparser: fix compiler warnings for unstable API use Breaks build bots and build with --werror 2018-10-08 23:47:51 +0100 Tim-Philipp Müller * tests/examples/camerabin2/gst-camera2.c: * tests/examples/uvch264/test-uvch264.c: examples: force gtk to x11 backend Until someone makes it work with the wayland backend. The code currenty assumes and hard-codes X11. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/49 2018-10-08 23:47:42 +0100 Tim-Philipp Müller * tests/examples/audiomixmatrix/meson.build: * tests/examples/avsamplesink/meson.build: * tests/examples/camerabin2/meson.build: * tests/examples/codecparsers/meson.build: * tests/examples/directfb/meson.build: * tests/examples/meson.build: * tests/examples/mxf/meson.build: * tests/examples/uvch264/meson.build: * tests/icles/meson.build: * tests/meson.build: meson: build more examples See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/576 2018-11-24 19:26:30 +0900 Seungha Yang * meson.build: meson: Specify encoding to UTF-8 when building with MSVC Use build arguments consistent with core and -base. This can also remove noisy "C4819" warning of non-us locale MSVC. 2018-11-23 17:05:51 +0100 Víctor Manuel Jáquez Leal * sys/msdk/meson.build: msdk: don't declare headers in meson This partially reverts commit 0bae64835302574953c3e5e89fa0822eb4f6ca4b. The compiler tells ninja the header dependency, then there is no need to add them explicity. 2018-11-23 13:41:57 +0100 Víctor Manuel Jáquez Leal * sys/msdk/meson.build: msdk: declare headers in meson 2018-11-20 14:36:30 +0800 Wangfei * sys/msdk/Makefile.am: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkdecproputil.c: * sys/msdk/gstmsdkdecproputil.h: * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkh264dec.h: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265dec.h: * sys/msdk/gstmsdkmpeg2dec.c: * sys/msdk/gstmsdkmpeg2dec.h: * sys/msdk/gstmsdkvc1dec.c: * sys/msdk/gstmsdkvc1dec.h: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8dec.h: * sys/msdk/gstmsdkvp9dec.c: * sys/msdk/gstmsdkvp9dec.h: * sys/msdk/meson.build: msdkdec: move output-order out of decode bass class. Since output-order is a deprecated attribute, move it out of decode bass class and configure it in each sub decoder class who need it. https://bugzilla.gnome.org/show_bug.cgi?id=796853 2018-11-22 17:02:09 +0100 Víctor Manuel Jáquez Leal * sys/msdk/meson.build: msdk: add support for open sourced MediaSDK MediaSDK has been released as open source [1], but the directories where it installs its files, are different from the binary only distribution. This patch adds to the libraries path the directory /lib. Also it is defined in meson if the include directory has the mfx/ prefix, something that is already handled in autotools. 1. https://github.com/Intel-Media-SDK/MediaSDK 2018-11-22 18:47:13 +0530 Harshad Khedkar * ext/webrtc/gstwebrtcice.c: Webrtcbin : Need to use 'host' from gst_uri_get_host s libnice agent expects it Currently master code of gst1-plugins-bad use plain-string host name while passing it to libnice agent: nice_agent_set_relay_info() in gstwebrtcice.c while adding turn_server(_add_turn_server). It is observered that if we don't convert the host parameter by using gst_uri_get_host, it fails in libnice agent(0.1.14-1). Code does, actually, set the host correctly but while passing params to nice_agent_set_relay_info, it uses incorrect one. https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/823 2018-11-12 12:03:53 +0100 Lars Petter Endresen * gst/siren/common.c: siren: Fix floating point invalid operation Mix of single and double precision leads to zero-by-zero divide for upper 64-bit of the xmm register, even though they are not used. 2018-11-14 14:55:37 -0800 Rosen Penev * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlscertificate.c: dtls: Fix compilation without deprecated APIs on OpenSSL 1.1.x 2018-11-13 18:20:15 +0900 Justin Kim * ext/opencv/gstcameracalibrate.h: cameracalibrate: Fix build error on Mac OSX It fails to build only on Mac OSX with the following error. In file included from ../subprojects/gst-plugins-bad/ext/opencv/gstopencv.cpp:45: ../subprojects/gst-plugins-bad/ext/opencv/gstcameracalibrate.h:96:38: error: a space is required between consecutive right angle brackets (use '> >') std::vector> imagePoints; ^~ > > 1 error generated. Fix: #817 2018-11-13 17:50:26 +0900 Seungha Yang * sys/opensles/meson.build: meson: Fix invalid keyword warning "required" keyword is not a valid argument for has_header() WARNING: Passed invalid keyword argument "required". WARNING: This will become a hard error in the future. 2018-11-13 10:02:57 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Cast result of bitwise-or of multiple enum values to the enum again In C++ the bitwise-or results in an int, and ints are not implicitely cast to enums. See https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/merge_requests/25#note_78122 2018-11-13 09:55:56 +0530 Nirbheek Chauhan * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Remove unused variable Fixes a compiler warning. 2018-11-07 17:15:25 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Add support for outputting closed captions 2018-11-12 13:23:45 +0200 Jordan Petridis * .gitlab-ci.yml: Add Gitlab CI configuration This commit adds a .gitlab-ci.yml file, which uses a feature to fetch the config from a centralized repository. The intent is to have all the gstreamer modules use the same configuration. The configuration is currently hosted at the gst-ci repository under the gitlab/ci_template.yml path. Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-project/issues/29 2018-11-12 21:23:37 +1100 Matthew Waters * ext/soundtouch/meson.build: * ext/webrtcdsp/meson.build: * meson.build: build: link against the gnustl dependency on android for c++ plugins 2018-11-09 15:20:09 +0000 Jochen Henneberg * sys/bluez/gstavdtputil.c: * sys/bluez/gstavdtputil.h: avdtputil: Remove dead code These function are not used at all, using them together with the transport-volume property from avdtpsrc may end up in a binding loop so we better remove the functions. 2018-11-09 15:16:46 +0000 Jochen Henneberg * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtpsrc.h: avdtpsrc: Fix transport-volume write If properties are proxied through GBinding this can work only if the proxied property keeps it's own value. The previous implementation will read the original value if the proxied property signals a change and thus nothing will happen. 2018-10-18 14:49:50 -0400 Olivier Crête * tests/check/elements/srtp.c: srtp: Add unit tests for MKI support Both as a srtpenc ! srtpdec pipeline and as a test that uses fake packets for multiple mixed MKIs. https://bugzilla.gnome.org/show_bug.cgi?id=797305 2018-10-17 18:30:10 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: srtpenc: Add support for adding a MKI https://bugzilla.gnome.org/show_bug.cgi?id=797305 2018-10-15 18:23:35 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Add support for MKI Add support for MKIs which allow multiple keys to be used with a single SRTP stream. https://bugzilla.gnome.org/show_bug.cgi?id=797305 2018-10-16 11:53:20 -0400 Joshua M. Doe * sys/dshowsrcwrapper/CMakeLists.txt: * sys/dshowsrcwrapper/dshowdeviceprovider.cpp: * sys/dshowsrcwrapper/dshowdeviceprovider.h: * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: dshowsrcwrapper: add implementation of GstDeviceMonitor Right now this only works for video. An attempt was made at adding monitoring following the example winks, but it seems the only devices that can be easily detected are KS sources, which winks already handles. 2018-10-16 11:45:15 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowsrcwrapper: refactor device selection, filter creation, and caps retrieval This allows a future GstDeviceProvider to more easily query devices and caps. 2018-10-12 10:12:14 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: add get_property implementation to sources 2018-10-12 09:59:54 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowvideosrc: handle empty strings for device and device-name The device and device-name properties should treat NULL and empty strings the same 2018-10-12 08:57:07 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowvideosrc: delay selecting device until source is started The previous behaviour had issues when setting one of the device properties after _get_caps had been called. The device shouldn't be locked in until after _start has been called. 2018-10-12 08:49:06 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowvideosrc: fix template caps to reflect actual supported caps 2018-10-11 12:58:35 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: add some helpful debug statements 2018-10-15 12:49:55 -0400 Joshua M. Doe * sys/winks/ksvideohelpers.c: ksvideosrc: initialize pointer to satisfy MSVC 2018-10-15 12:48:10 -0400 Joshua M. Doe * sys/winks/ksvideohelpers.c: ksvideosrc: support 'Y16 ' FOURCC as GRAY16_LE The FLIR Boson USB provides 16-bit grayscale video using this FOURCC. 2018-10-15 12:46:32 -0400 Joshua M. Doe * sys/winks/gstksvideosrc.c: ksvideosrc: gracefully handle device prop when empty string 2018-11-08 08:15:41 +0000 Russel Winder * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegts: Register a number of new boxed types to support auto generation of bindings. 2018-11-07 17:24:35 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Search from line 1 again if we didn't find closed captions at the same line as before 2018-05-29 01:06:09 +1000 Matthew Waters * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: implement preliminary support for the bitrate query Return the size / total duration as a ballpark estimate. https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/60 2018-10-14 16:36:33 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Various update of vps parsing * Add FIXME for future correction of HRDParames parsing. Spec. defines that the number of HRDParames could be up to "vps_num_layer_sets_minus1 + 1" (i.e., 1024). * Add parsing vps_base_layer_{internal,available}_flag. * Fix possible invalid vps_extension parsing. Fixes #798 2018-10-14 16:02:01 +0900 Seungha Yang * tests/check/libs/h265parser.c: tests: h265parser: Add test parsing nonzero vps_max_layer_id in VPS 2018-10-12 19:26:01 +0900 Seungha Yang * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Fix wrong maximum range check in gst_h265_parse_vps() Fix validation of some syntax. Fixes #798 2018-10-29 21:51:14 +0200 Jordan Petridis * sys/msdk/meson.build: meson: avoid unkown variables in the msdk tests 2018-11-06 18:47:43 +0100 Jan Alexander Steffens (heftig) * ext/dtls/Makefile.am: * ext/dtls/meson.build: dtls: Link against winsock2 on Windows Should fix the Windows build after b1509b1047bb76c9b2d8b14e9cecd0da72fd8e65. 2018-11-06 11:06:01 -0600 admin * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: fix segfault when audiosink is closed before videosink 2018-11-06 16:50:29 +0100 Jan Alexander Steffens (heftig) * ext/dtls/gstdtlsconnection.c: dtlsconnection: Print out errno info for syscall errors As suggested in [the SSL_get_error manpage][1]. Upgrade the message to a warning if the errno isn't 0 (success). The latter apparently means the transport encountered an EOF (shutdown) without the shut down handshake on the (D)TLS level. This happens quite often for otherwise normal DTLS connections. [1]: https://www.openssl.org/docs/man1.1.1/man3/SSL_get_error.html 2018-03-29 13:33:10 +0200 Andreas Frisch * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlsconnection.c: dtls: Properly display all errors/warnings from ERR queue Print out all errors from the OpenSSL error queue instead of just looking at the topmost error. Using the callback interface also removes the need for formatting using a buffer on the stack. 2018-11-05 12:37:21 +0100 Jan Alexander Steffens (heftig) * ext/dtls/gstdtlsconnection.c: dtlsconnection: Replace if-else chain with switch A more idiomatic construct for testing a bunch of integers. 2018-11-05 12:31:38 +0100 Jan Alexander Steffens (heftig) * ext/dtls/gstdtlsconnection.c: dtlsconnection: Clear error queue before SSL_do_handshake As documented on [the SSL_get_error manpage][1] we need to empty the error queue before making any call that we check with SSL_get_error. [1]: https://www.openssl.org/docs/man1.1.1/man3/SSL_get_error.html 2018-11-05 12:26:26 +0100 Jan Alexander Steffens (heftig) * ext/dtls/gstdtlsconnection.c: dtlsconnection: Lower BIO error log level to DEBUG Periodic SSL_ERROR_SYSCALL errors with errno == 0 seem to be normal behavior for DTLS connections. Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/677 2018-11-06 17:08:35 +0100 Jan Alexander Steffens (heftig) * ext/dtls/gstdtlsconnection.c: dtlsconnection: Run gst-indent 2018-11-05 17:00:20 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/cccombiner.c: * tests/check/meson.build: cccombiner: Add unit test 2018-11-05 16:24:58 +0200 Sebastian Dröge * ext/closedcaption/Makefile.am: * ext/closedcaption/gstcccombiner.c: * ext/closedcaption/gstcccombiner.h: * ext/closedcaption/gstclosedcaption.c: * ext/closedcaption/meson.build: cccombiner: Add new closed caption combiner element This is the inverse of ccextractor: it takes a video and closed caption stream and places the closed caption metas on the video output buffers. 2018-11-05 17:07:32 +0200 Sebastian Dröge * ext/closedcaption/gstccextractor.c: ccextractor: Handle multiple caption metas per buffer 2018-11-06 12:40:12 +0100 Florent Thiéry * sys/msdk/meson.build: msdk: fix intel sdk libdir path the 2018.3.1 intel sdk release places libraries into /lib64 instead of /lib/lin_x64 or /lib/x64, this commit adds /lib64 to the libdir locations list Fixes #815 2018-11-06 20:14:32 +0900 Seungha Yang * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Fix calculating buffer size of packed format The Pitch (i.e., stride) of D3DLOCKED_RECT structure is already respecting required stride value. 2018-11-04 22:41:50 +0900 Seungha Yang * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Set actual buffer size to buffer pool If configured size of buffer pool and actual buffer size are mismatched, pool will do unwanted buffer resize. Fixes #801 2018-11-03 20:52:20 +0900 Seungha Yang * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Use lock/cond to wait internal window construction We can save one (or possibly more) sleep time by using lock/cond 2018-11-03 20:20:50 +0900 Seungha Yang * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Don't leak GThread object Need to call g_thread_join() to avoid leak 2018-10-30 22:49:01 +0900 Seungha Yang * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Print lock/unlock log with trace debug level 2018-11-06 19:36:12 +0900 Seungha Yang * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Remove white space 2018-11-02 15:53:56 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Stop considering 6 bytes NAL complete This is only TRUE for EOS / EOB NALs. Before this patch, passing any valid 6 bytes of a NAL would make the parser pretend this NAL is complete. 2018-11-02 15:50:15 -0400 Nicolas Dufresne * tests/check/libs/h265parser.c: h265parser: Add same parsing test as for H264 This adds the same test as found in H264 test. 2018-11-02 13:59:58 -0400 Nicolas Dufresne * tests/check/libs/h264parser.c: h264parser: Add unit test parsing 5 valid bytes of a NAL In the case 5 valid bytes of a slice NAL, the parser should return NO_NAL_END. 2018-11-02 14:18:54 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Stop considering 5 bytes NAL complete This is only TRUE for SEQ_END / STREAM_END. Before this patch, passing any valid 5 bytes of a NAL would make the parser pretend this NAL is complete. 2018-11-06 14:35:20 +1100 Matthew Waters * sys/applemedia/meson.build: applemedia: install plugin pkg-config file 2018-11-05 15:21:35 +0000 Russel Winder * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: remove insignificant trailing whitespace from lines of files in the MPEG-TS library. 2018-08-16 11:30:08 -0400 Joshua M. Doe * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: respect pixel format property even if mode is set to auto Before this patch, if mode=auto and video-format!=auto, video-format would always be ignored, and get set to 8bit-yuv, or if detected to be RGB444, then it would be set to 8bit-argb. This change respects video-format if it is set to 10bit-yuv (v210) or 8bit-bgra, even when mode=auto. Closes #772 2018-11-05 05:39:12 +0000 Matthew Waters * .gitmodules: Update common submodule location Remove the git directory 2018-11-05 12:46:29 +0800 Haihao Xiang * .gitmodules: * gst-plugins-bad.doap: Clone the code from gitlab This fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/814 2018-11-02 20:31:54 +0000 Tim-Philipp Müller * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: compositor: update disted orc backup files 2018-11-02 20:31:11 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: docs: update for git master 2018-11-02 20:16:56 +0000 Tim-Philipp Müller * ext/webrtc/meson.build: webrtc: update default libnice options Uses feature options now. 2018-11-02 12:21:45 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/ccextractor.c: * tests/check/meson.build: ccextractor: Add unit test https://bugzilla.gnome.org/show_bug.cgi?id=797370 2018-11-02 12:21:24 +0200 Sebastian Dröge * ext/closedcaption/gstccextractor.c: ccextractor: Support changes of the caption type https://bugzilla.gnome.org/show_bug.cgi?id=797370 2018-11-01 17:59:17 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Add support for extracing CEA608 according to S334-1 Annex A https://bugzilla.gnome.org/show_bug.cgi?id=797363 2018-10-31 18:44:34 +0000 Russel Winder * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Register a boxed type for GstMpegtsContent 2018-06-25 19:37:56 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/player/gstplayer.c: player: don't change uri when setting subtitle uri https://bugzilla.gnome.org/show_bug.cgi?id=797362 2018-11-01 10:44:44 +0000 Philippe Normand * docs/libs/gst-plugins-bad-libs-sections.txt: docs: Follow-up fix for GstPlayer new subtitle-video-offset API These symbols were not renamed after the initial review in Bugzilla. https://bugzilla.gnome.org/show_bug.cgi?id=797134 2018-10-28 14:48:35 +0000 Philippe Normand * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: API additions for subtitle-video-offset property This new property contols the synchronisation offset between subtitles and video in nanoseconds. https://bugzilla.gnome.org/show_bug.cgi?id=797134 2018-10-31 19:20:20 +0100 Víctor Manuel Jáquez Leal * gst/compositor/compositor.c: compositor: Fix enum type mismatch The variable blend_mode is GstCompositorBlendMode but it is assigned to a GstCompositorOperator enum value. 2018-10-30 10:05:03 +0100 Johan Bjäreholt * gst/compositor/compositororc-dist.h: compositor: fix undeclared functions 2018-10-27 16:44:27 +0100 Sebastian Dröge * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc.orc: * tests/examples/compositor/crossfade.c: compositor: Implement different operators via per-pad property This removes the crossfade-ratio property and replaces it with an operator property. Currently this implements the following operators: - SOURCE: Copy over the source and don't look at the destination - OVER: Default blending of the source over the destination - ADD: Like OVER but simply adding the alpha instead See the example for how to implement crossfading with this. https://bugzilla.gnome.org/show_bug.cgi?id=797169 2018-10-28 14:54:52 +0000 Nirbheek Chauhan * meson_options.txt: * sys/msdk/meson.build: meson: Add a feature option for the MSDK plugin 2018-10-28 11:53:42 +0000 Tim-Philipp Müller * ext/curl/meson.build: * meson_options.txt: meson: add 'curl-ssh2' option for curl libssh2 support https://bugzilla.gnome.org/show_bug.cgi?id=797346 2018-10-28 06:47:38 -0400 Xavier Claessens * ext/curl/meson.build: meson: Use the 'curl' feature option https://bugzilla.gnome.org/show_bug.cgi?id=797346 2018-10-28 11:07:47 +0000 Sebastian Dröge * gst-libs/gst/mpegts/meson.build: mpegts: Use gst and gst_mpegts as symbol prefix in the meson build Just like we do in the autotools build. 2018-10-11 12:45:21 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowsrcwrapper: add device-index property to sources This allows users to more easily select different devices without having to first get the device or device-name. https://bugzilla.gnome.org/show_bug.cgi?id=797338 2018-10-24 14:16:38 -0400 Joshua M. Doe * sys/dshowsrcwrapper/BUILD.txt: dshowsrcwrapper: update CMake build instructions GStreamer 1.8 is minimum version, and remove paragraph about 32 vs 64-bit build https://bugzilla.gnome.org/show_bug.cgi?id=797338 2018-10-24 14:15:08 -0400 Joshua M. Doe * sys/dshowsrcwrapper/CMakeLists.txt: dshowsrcwrapper: support building 32- and 64-bit with CMake https://bugzilla.gnome.org/show_bug.cgi?id=797338 2018-10-11 11:17:11 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: dshowsrcwrapper: add debug category for general dshowsrcwrapper https://bugzilla.gnome.org/show_bug.cgi?id=797338 2018-10-27 17:55:54 +0200 Edward Hervey * tests/check/Makefile.am: * tests/check/meson.build: check: Disable mssdemux unit test for now This is for the same reason as the dash tests. This should ideally be converted to gst-validate tests. These tests randomly timeout also due to the tests doing seeks from the streaming thread (sic). 2018-10-27 13:57:45 +0100 Sebastian Dröge * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add boxed type for DVB CableDeliverySystem descriptor 2018-10-27 12:37:07 +0100 Sebastian Dröge * gst/compositor/Makefile.am: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositorpad.h: compositor: Remove extra header for the pad declaration There's no reason for having this separate apart from making things less discoverable. 2018-10-27 13:37:38 +0200 Edward Hervey * tests/check/libs/player.c: tests: Disable most gstplayer tests for now https://bugzilla.gnome.org/show_bug.cgi?id=787374 2018-10-26 15:15:41 +0100 Luis de Bethencourt * ext/webrtc/gstwebrtcbin.c: webrtcbin: options is a placeholder argument Make it clear this unused argument is there for planned future use. 2018-10-26 14:36:37 +0100 Luis de Bethencourt * ext/webrtc/gstwebrtcbin.c: webrtcbin: ws-semantic is not supported Don't offer something that isn't supported. 2018-10-24 14:34:13 +0100 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't set state to READY if we're already stopped Otherwise setting an URI after creation will already set the state to READY/buffering and disallow setting the configuration. See https://github.com/servo/servo/issues/22010 2018-10-22 09:59:24 +0200 Edward Hervey * ext/hls/gsthlsdemux-util.c: hls: Remove stray '\n' from debug statement 2018-10-17 18:33:12 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: Revert "srtpdec: also check for "roc" in caps" This reverts commit 73ebdb888e047b14ceea19ce1a0bbbeff0cd7b2a. This isn't needed and it breaks srtpenc ! srtpdec, specifying the roll-over counter manually is an advanced feature. Also revert "srtp: Add "roc" caps field to the gst-launch example" This reverts commit 67ae35813bff9362065bbfec770f3fdbb89165a3. https://bugzilla.gnome.org/show_bug.cgi?id=765079 2018-10-17 21:09:22 +0900 Seungha Yang * gst/bayer/meson.build: * gst/compositor/meson.build: * gst/fieldanalysis/meson.build: * gst/gaudieffects/meson.build: meson: Replace empty configuration_data() with copy keyword Use 'copy' keyword to avoid meson warning message. Note that 'copy' keyword in configure_file() is available since meson 0.47.0 https://bugzilla.gnome.org/show_bug.cgi?id=797298 2018-10-17 21:04:51 +1100 Matthew Waters * ext/sctp/meson.build: sctp: link against ws2_32 on windows ext/sctp/ext@sctp@@gstsctp@sha/sctpassociation.c.obj: In function `receive_cb': /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/sources/windows_x86/gst-plugins-bad-1.0-1.15.0.1/_builddir/../ext/sctp/sctpassociation.c:692: undefined reference to `_imp__ntohl@4' 2018-09-14 00:08:34 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/webrtcsdp.c: * gst-libs/gst/webrtc/webrtc_fwd.h: * tests/check/elements/webrtcbin.c: webrtcbin: implement support for group: BUNDLE 2018-10-07 16:19:03 +0900 Wonchul Lee * ext/aom/gstav1enc.c: * ext/aom/gstav1utils.c: * ext/aom/gstav1utils.h: av1enc: Add to configure image formats Expanded to support image format to YV12/I422/I444. It's related to the color bit-depth and profile of the codec. It can make configuring appropriate profile according to bit-depth and format. https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-10-03 17:13:32 +0900 Wonchul Lee * ext/aom/gstav1enc.c: av1enc: fix compliation with removed defines AOM_FRAME_IS_INVISIBLE is unused and remove in aom_encoder.h https://aomedia-review.googlesource.com/c/aom/+/70421 https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-07-30 23:31:00 +0900 Wonchul Lee * ext/aom/Makefile.am: * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: * ext/aom/gstav1utils.c: * ext/aom/gstav1utils.h: * ext/aom/meson.build: av1enc: Add configurations Added rate control and profile related configuration. The profile configuration has been copied from vpx. https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-10-09 16:59:54 +0200 Josep Torra * sys/shm/gstshmsrc.c: shmsrc: delay fd removal until there's no uses This fixes the remaining race condition with the fd by delaying the removal until last pipe ref. Unexpected critical/warning: gst_poll_fd_has_error: assertion 'fd->fd >= 0' failed Stack trace: gst_debug_get_stack_trace (gstinfo.c:2788) gst_check_log_critical_func (gstcheck.c:281) g_logv (/lib/x86_64-linux-gnu/libglib-2.0.so.0.4800.2:0x7fdd4efa0a40) g_log (/lib/x86_64-linux-gnu/libglib-2.0.so.0.4800.2:0x7fdd4efa0c6b) gst_poll_fd_has_error (gstpoll.c:1217) gst_shm_src_create (gstshmsrc.c:364) gst_push_src_create (gstpushsrc.c:131) gst_base_src_get_range (gstbasesrc.c:2521) gst_base_src_loop (gstbasesrc.c:2845) gst_task_func (gsttask.c:328) default_func (gsttaskpool.c:69) https://bugzilla.gnome.org/show_bug.cgi?id=797203 2018-09-28 13:35:49 +0200 Josep Torra * sys/shm/gstshmsrc.c: shmsrc: fixes a crash when is-live is true due a race condition There's a race condition when is-live is set to true and the shmsrc element releases the pipe in the transition from PLAYING to PAUSED. To avoid it this change ensures that _create method takes the pipe and increases the use_count in one operation protected by object lock. Also perform apropriate protections when releasing the pipe. https://bugzilla.gnome.org/show_bug.cgi?id=797203 2018-09-28 13:23:38 +0200 Josep Torra * tests/check/elements/shm.c: tests: shm: add an end to end test for live reception Add a unit test to exchange data between two pipelines with shmsrc acting as a live source. https://bugzilla.gnome.org/show_bug.cgi?id=797203 2018-10-10 13:07:50 -0400 Olivier Crête * sys/shm/gstshmsrc.c: shmsrc: Remove commented out code 2018-10-08 13:56:56 -0700 Aleix Conchillo Flaqué * sys/shm/gstshmsink.c: shmsink: do not keep locking if element is unlocked https://bugzilla.gnome.org/show_bug.cgi?id=797260 2018-10-08 20:53:17 +0100 Tim-Philipp Müller * meson.build: meson: use new 'python' module instead of deprecated 'python3' one https://github.com/mesonbuild/meson/pull/4169 2018-10-09 02:38:14 +1100 Matthew Waters * ext/webrtc/webrtcdatachannel.c: * tests/check/elements/webrtcbin.c: webrtc/datachannel: fix support for prenegotiated channels With prenegotiated channels, the data-channel protocol is not used and instead the channel's negotiation is intended to be performed out of band in some application-specific manner. Comes with test! 2018-10-08 21:56:31 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: * tests/check/elements/webrtcbin.c: webrtc: start in the closed state This means that we will reject all operations before we've transitioned into READY. This also fixes the tests using the default GMainContext in the NULL state instead of the webrtcbin internal GMainContext and thread. Also removes a potential ordering race where on the element transitioning to READY, an operations could have been queued on two different threads and removing a guarentee on operation ordering. 2018-10-05 12:10:06 -0700 Aleix Conchillo Flaqué * ext/webrtc/gstwebrtcbin.c: webrtcbin: start and stop thread when changing state It might be possible that if we set webrtcbin to the NULL state some tasks (idle sources) are still executed and they might even freeze. The freeze is caused because the webrtcbin tasks don't hold a reference to webrtcbin and if it's last unref inside the idle source itself this will not allow the main loop to finish because the main loop is waiting on the idle source to finish. We now start and stop webrtcbin thread when changing states. This will allow the idle sources to finish properly. https://bugzilla.gnome.org/show_bug.cgi?id=797251 2018-10-04 23:45:49 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: fix the default blend modes for unpremultipled alpha Alpha in GStreamer is unpremultiplied 2018-10-04 12:07:31 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Fix sending of dropping=true messages If the first audio buffer to be dropped started right between two video buffers (after the end of the first but before the start of the second, as is often the case with N/1001 video frame rates), we would miss sending the dropping=true message. https://bugzilla.gnome.org/show_bug.cgi?id=797248 2018-10-04 16:29:25 +1000 Matthew Waters * tests/check/elements/webrtcbin.c: tests/webrtcbin: add a couple more dependant element checks Without the sctp elements, all the data channel tests will fail 2018-09-27 16:37:28 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: add gloverlaycompositor to each input stream Flattens the overlay compositions into the stream before the mixer will mix them. https://bugzilla.gnome.org/show_bug.cgi?id=759867 2018-10-03 16:00:23 +0300 Sebastian Dröge * ext/gl/gstglstereomix.c: glstereomix: Fix build after deprecating misnamed GST_TYPE_GL_STEREO_DOWNMIX_MODE_TYPE 2018-09-27 15:24:20 +0900 Seungha Yang * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvpp.c: msdk: Fix building on MSVC And add missing #ifdef _WIN32 for MSVC build https://bugzilla.gnome.org/show_bug.cgi?id=797211 2018-09-27 14:42:44 +0900 Seungha Yang * sys/msdk/meson.build: msdk: Fix meson build gst-plugins-bad\sys\msdk\meson.build:57:4: ERROR: File msdk-enum.c does not exist. https://bugzilla.gnome.org/show_bug.cgi?id=797211 2018-09-27 17:15:20 +0200 Mathieu Duponchelle * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: add custom AC-3 descriptor tsdemux expects a custom descriptor (GST_MTS_DESC_AC3_AUDIO_STREAM) to detect a stream as AC3 and not EAC3. Note that tsdemux expects this descriptor because mpegtsmux writes a stream with a HDMV registration descriptor. Fixes: gst-launch-1.0 -v audiotestsrc ! avenc_ac3 ! ac3parse ! mpegtsmux ! \ tsdemux ! ac3parse ! avdec_ac3 ! audioconvert ! autoaudiosink https://bugzilla.gnome.org/show_bug.cgi?id=797220 2018-09-26 16:00:50 +1000 Matthew Waters * ext/webrtc/webrtcdatachannel.c: webrtcdatachannel: take ref of data so it doesn't disappear 2018-09-24 23:26:10 +0300 Sebastian Dröge * ext/gl/gstglmixerbin.c: glmixerbin: "latency" property on aggregator is uint64, not int64 Also update the property description and range with aggregator's values. 2018-09-24 14:40:31 +0100 Tim-Philipp Müller * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/player-prelude.h: player: fix deprecated api declaration 2018-09-24 11:52:22 +0100 Tim-Philipp Müller * common: * configure.ac: * gst-libs/gst/adaptivedemux/Makefile.am: * gst-libs/gst/adaptivedemux/adaptive-demux-prelude.h: * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-bad-prelude.h: * gst-libs/gst/audio/gstplanaraudioadapter.c: * gst-libs/gst/audio/meson.build: * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/basecamerabinsrc/basecamerabinsrc-prelude.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/codecparsers-prelude.h: * gst-libs/gst/codecparsers/dboolhuff.c: * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstvp8rangedecoder.c: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/codecparsers/parserutils.c: * gst-libs/gst/codecparsers/vp8utils.c: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/insertbin/gstinsertbin.h: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/interfaces/photography-prelude.h: * gst-libs/gst/isoff/Makefile.am: * gst-libs/gst/isoff/gstisoff.c: * gst-libs/gst/isoff/gstisoff.h: * gst-libs/gst/isoff/meson.build: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/mpegts/mpegts-prelude.h: * gst-libs/gst/opencv/Makefile.am: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/opencv/opencv-prelude.h: * gst-libs/gst/player/Makefile.am: * gst-libs/gst/player/meson.build: * gst-libs/gst/player/player-prelude.h: * gst-libs/gst/sctp/Makefile.am: * gst-libs/gst/sctp/meson.build: * gst-libs/gst/sctp/sctp-prelude.h: * gst-libs/gst/sctp/sctpreceivemeta.c: * gst-libs/gst/sctp/sctpsendmeta.c: * gst-libs/gst/uridownloader/Makefile.am: * gst-libs/gst/uridownloader/gstfragment.c: * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/uridownloader/uridownloader-prelude.h: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video-bad-prelude.h: * gst-libs/gst/wayland/Makefile.am: * gst-libs/gst/wayland/meson.build: * gst-libs/gst/wayland/wayland.h: * gst-libs/gst/webrtc/Makefile.am: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/webrtc_fwd.h: * meson.build: libs: fix API export/import and 'inconsistent linkage' on MSVC For each lib we build export its own API in headers when we're building it, otherwise import the API from the headers. This fixes linker warnings on Windows when building with MSVC. The problem was that we had defined all GST_*_API decorators unconditionally to GST_EXPORT. This was intentional and only supposed to be temporary, but caused linker warnings because we tell the linker that we want to export all symbols even those from externall DLLs, and when the linker notices that they were in external DLLS and not present locally it warns. What we need to do when building each library is: export the library's own symbols and import all other symbols. To this end we define e.g. BUILDING_GST_FOO and then we define the GST_FOO_API decorator either to export or to import symbols depending on whether BUILDING_GST_FOO is set or not. That way external users of each library API automatically get the import. While we're at it, add new GST_API_EXPORT in config.h and use that for GST_*_API decorators instead of GST_EXPORT. The right export define depends on the toolchain and whether we're using -fvisibility=hidden or not, so it's better to set it to the right thing directly than hard-coding a compiler whitelist in the public header. We put the export define into config.h instead of passing it via the command line to the compiler because it might contain spaces and brackets and in the autotools scenario we'd have to pass that through multiple layers of plumbing and Makefile/shell escaping and we're just not going to be *that* lucky. The export define is only used if we're compiling our lib, not by external users of the lib headers, so it's not a problem to put it into config.h Also, this means all .c files of libs need to include config.h to get the export marker defined, so fix up a few that didn't include config.h. This commit depends on a common submodule commit that makes gst-glib-gen.mak add an #include "config.h" to generated enum/marshal .c files for the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=797185 2018-09-24 10:59:16 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: docs: plugins: update for git master 2018-09-22 19:49:13 +0100 Tim-Philipp Müller * pkgconfig/Makefile.am: * pkgconfig/meson.build: pkgconfig: generate sctp lib .pc file also with Meson build and fix up autotools definition now that it's not conditional any more. 2018-09-22 17:37:42 +0100 Tim-Philipp Müller * pkgconfig/Makefile.am: pkgconfig: sctp lib does not depend on external sctp library So install .pc files unconditionally. 2018-09-21 15:04:01 +0100 Tim-Philipp Müller * gst-libs/gst/Makefile.am: libs: dist new sctp lib 2018-09-14 16:05:20 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Send dropping=true message after all streams stopped Previously it was dispatched before the last video buffer, and audio buffers would follow afterwards. It's misleading to send the dropping=true message before both streams have really stopped, it can lead to races when someone is e.g. waiting for that message to send EOS. Also added some debug output. https://bugzilla.gnome.org/show_bug.cgi?id=797145 2018-09-21 14:56:52 +0200 Edward Hervey * gst-libs/gst/Makefile.am: gst-libs: Always build sctp mini-library It doesn't depend on any external library 2018-09-19 18:01:26 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: fix constant alpha enum value for constant alpha 2018-09-10 23:52:05 +1000 Matthew Waters * ext/webrtc/Makefile.am: * ext/webrtc/fwd.h: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/meson.build: * ext/webrtc/sctptransport.c: * ext/webrtc/sctptransport.h: * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportsendbin.c: * ext/webrtc/webrtcdatachannel.c: * ext/webrtc/webrtcdatachannel.h: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: * gst-libs/gst/webrtc/webrtc_fwd.h: * tests/check/elements/webrtcbin.c: webrtcbin: add support for data channels based on SCTP Mostly follows the W3C specification https://www.w3.org/TR/webrtc/#peer-to-peer-data-api With contributions from: Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=794351 2018-09-10 23:30:56 +1000 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtcbin: functionify dependent element checks 2018-09-10 23:27:08 +1000 Matthew Waters * ext/webrtc/gstwebrtcstats.c: webrtc/stats: rename debug category not to be ice related 2018-09-13 19:56:47 +0200 Mathieu Duponchelle * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpenc.c: sctp elements: avoid assertions on shutdown 2018-09-10 23:25:36 +1000 Matthew Waters * gst-libs/gst/sctp/sctpreceivemeta.h: * gst-libs/gst/sctp/sctpsendmeta.h: sctp*meta: fix api define in gst_sctp_buffer_get_*_meta() 2018-09-10 23:24:21 +1000 Matthew Waters * ext/sctp/sctpassociation.c: sctpassociation: don't join a NULL thread Can occur if no connection is actually made and thus no connection thread is created. 2018-09-10 23:23:43 +1000 Matthew Waters * ext/sctp/gstsctpenc.c: sctpenc: don't require caps when requesting the pad They can be set later 2018-09-10 23:21:52 +1000 Matthew Waters * ext/sctp/gstsctpenc.c: sctpenc: start pad task after the parent has activated pads Fixes a race where the task could attempt to set stream-start/caps/segment before the pad was active and would be dropped resulting in a 'data-flow before stream-start' warning. 2018-09-06 17:27:27 +1000 Matthew Waters * ext/meson.build: * ext/sctp/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/sctp/Makefile.am: * gst-libs/gst/sctp/meson.build: * gst-libs/gst/sctp/sctp-prelude.h: * gst-libs/gst/sctp/sctpreceivemeta.h: * gst-libs/gst/sctp/sctpsendmeta.h: * meson_options.txt: Update sctp plugin for the current build system - Add meson build definitions - Add necessary API decorators 2015-02-04 17:12:48 +0100 George Kiagiadakis * configure.ac: * ext/Makefile.am: * ext/sctp/Makefile.am: * ext/sctp/gstsctpdec.c: * ext/sctp/gstsctpdec.h: * ext/sctp/gstsctpenc.c: * ext/sctp/gstsctpenc.h: * ext/sctp/gstsctpplugin.c: * ext/sctp/sctpassociation.c: * ext/sctp/sctpassociation.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/sctp/Makefile.am: * gst-libs/gst/sctp/sctpreceivemeta.c: * gst-libs/gst/sctp/sctpreceivemeta.h: * gst-libs/gst/sctp/sctpsendmeta.c: * gst-libs/gst/sctp/sctpsendmeta.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-sctp-uninstalled.pc.in: * pkgconfig/gstreamer-sctp.pc.in: Add new SCTP plugins (sctpenc/sctpdec) https://bugzilla.gnome.org/show_bug.cgi?id=744863 2018-08-28 18:48:48 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcice.c: webrtcice: do not run host resolution from applictation thread g_resolver_lookup_by_name is a blocking call, and should not be run when the user sets or adds a turn-server. https://bugzilla.gnome.org/show_bug.cgi?id=797012 2018-08-22 19:05:02 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: webrtcbin: New add-turn-server API It is possible and often desirable to pass multiple ICE relays to libnice agents, the "turn-server" property, while convenient to use from the command line, does not allow that. This adds a new action signal, "add-turn-server" to address that. https://bugzilla.gnome.org/show_bug.cgi?id=797012 2018-09-19 12:02:19 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add glib-checks option to disable API guards and such We want this enabled by default, also in releases, but people may want to disable this for performance-critical workloads or on embedded devices. 2018-09-19 12:01:47 +0100 Tim-Philipp Müller * meson_options.txt: meson: fix missing closing bracket in option descriptions 2018-09-19 10:28:56 +0300 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer: Fix typo in property description 2018-09-06 20:23:55 +0300 Sebastian Dröge * ext/closedcaption/gstccextractor.c: ccextractor: Use gst_caps_new_simple() instead of gst_caps_from_string() 2018-09-12 22:38:56 +1000 Matthew Waters * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: fix build ../sys/decklink/gstdecklinkvideosink.cpp:1006:11: error: ‘GstDecklinkVideoSink {aka struct _GstDecklinkVideoSink}’ has no member named ‘scheduled_stop_time’ self->scheduled_stop_time = start_time; ^ 2018-09-12 05:29:09 -0500 Matthew Waters * sys/decklink/gstdecklinkvideosink.cpp: decklink: wait for stop with a timeout Decklink sometimes does not notify us through the callback that it has stopped scheduled playback either because it was uncleanly shutdown without an explicit stop or for unknown other reasons. Wait on the cond for a short amount of time before checking if scheduled playback has stopped without notification. https://bugzilla.gnome.org/show_bug.cgi?id=797130 2018-07-08 09:54:04 -0500 Matthew Waters * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklink: start scheduled playback in paused This is part of a much larger goal to always keep the frames we schedule to decklink be always increasing. This also allows us to avoid using both the sync and async frame display functions which aren't recomended to be used together. If the output timestatmsp is not always increasing decklink seems to hold onto the latest frame and may cause a flash in the output if the played sequence has a framerate less than the video output. Scenario is play for N seconds, pause, flushing seek to some other position, play again. Each of the play sequences would normally start at 0 with the decklink time. As a result, the latest frame from the previous sequence is kept alive waiting for it's timestamp to pass before either dropping (if a subsequent frame in the new sequence overrides it) or displayed causing the out of place frame to be displayed. This is also supported by the debug logs from the decklink video sink element where a ScheduledFrameCompleted() callback would not occur for the frame until the above had happened. It was timing related as to whether the frame was displayed based on the decklink refresh cycle (which seems to be 16ms here), when the frame was scheduled by the sink and the difference between the 'time since vblank' of the two play requests (and thus start times of scheduled playback). https://bugzilla.gnome.org/show_bug.cgi?id=797130 2018-09-12 05:32:04 -0500 Matthew Waters * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: fix debug string copy-paste error Stopping != Starting 2018-08-13 22:44:51 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Fix periodic SPS/PPS sending work after a seek Apply the commit ef71b61 See also https://bugzilla.gnome.org/show_bug.cgi?id=742212 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-13 20:34:36 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Add support insert parameter set per IDR Apply commits 0c04e00, bf0d952 and a0876aa to h265parse. See also https://bugzilla.gnome.org/show_bug.cgi?id=766803 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-14 00:46:26 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Don't discard first AU delimiter Apply the commit 48a1f27 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-14 00:43:01 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Consider SEI NALU as "HEADER" packets Apply the commit 69c09c3 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-13 22:45:54 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Don't unref buffer that was unreffed just a few lines before already Apply the commit 9b50a12 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-14 01:11:27 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Reset the parser information when caps changes Apply the commit 14f6fcd https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-13 23:45:13 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Fix collection of access units to preserve config headers Apply the commit 7d44a51 See also https://bugzilla.gnome.org/show_bug.cgi?id=732203 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-13 23:36:33 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Improve conditions for skipping NAL units See also https://bugzilla.gnome.org/show_bug.cgi?id=732203 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-13 22:23:22 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Introduce new state tracking variables Direct applying the commit 7bb6443. This could fix also unexpected nal dropping when nonzero "config-interval" is set. (e.g., gst-launch-1.0 videotestsrc ! x265enc key-int-max=30 ! h265parse config-interval=30 ! avdec_h265 ! videoconvert ! autovideosink) Similar to the h264parse, have_{vps,sps,pps} variables will be used for deciding on when to submit updated caps or not, and rather mean "have new SPS/PPS to be submitted?" See also https://bugzilla.gnome.org/show_bug.cgi?id=732203 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-13 21:49:57 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Fix and optimize NAL collection function Adopt h264parse's _collect_nal() behavior. See also commit 5601c87 and https://bugzilla.gnome.org/show_bug.cgi?id=732154 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-14 00:29:56 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Unref/replace force_key_unit_event in gst_h265_parse_reset Apply the commit 36a2aca https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-14 00:27:12 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Copy over DISCONT flag from input buffers Apply the commit 10ffa08 https://bugzilla.gnome.org/show_bug.cgi?id=754124 2018-08-16 16:58:31 -0400 Nicolas Dufresne * gst/debugutils/gstwatchdog.c: watchdog: Add missing static keyword get/set_property method should have been static. 2018-09-11 01:00:21 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Remove code that sets thread priority This is now handled directly in gstaudiosrc/sink, and we were setting it in the wrong thread anyway. prepare() is not the same thread as sink_write() or src_read(). 2018-09-05 21:31:22 +0530 Nirbheek Chauhan * ext/dts/meson.build: meson: Don't pass GNU-like compiler wargs on MSVC cl : Command line error D8021 : invalid numeric argument '/Wno-missing-include-dirs' 2018-09-05 20:47:05 +0530 Nirbheek Chauhan * ext/meson.build: meson: Don't skip plugins that don't build with MSVC We now have options for all plugins, so we will just disable these in the cerbero recipe instead. These require external deps, so they won't affect gst-build either. 2018-09-03 15:15:45 +0300 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: timecodestamper: Fix typo in set_drop_frame Was checking if fps_d == 60000 (instead of fps_n), causing 60000/1001 to be always falsely interpreted as non-drop-frame 2018-09-01 11:23:33 +0100 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: Set default position and duration value to GST_CLOCK_TIME_NONE When the position query fails the returned value shall remain -1 instead of 0 to avoid confusion on application side between error and beginning of media. https://bugzilla.gnome.org/show_bug.cgi?id=797066 2018-09-01 21:48:31 +0530 Nirbheek Chauhan * sys/applemedia/meson.build: meson: Fix applemedia dependencies on iOS These were accidentally not being found because they were incorrectly specified. 2018-08-31 14:37:46 +0530 Nirbheek Chauhan * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/isoff/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/player/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/video/meson.build: * gst-libs/gst/wayland/meson.build: * gst-libs/gst/webrtc/meson.build: * meson.build: meson: Maintain macOS ABI through dylib versioning Requires Meson 0.48, but the feature will be ignored on older versions so it's safe to add it without bumping the requirement. Documentation: https://github.com/mesonbuild/meson/blob/master/docs/markdown/Reference-manual.md#shared_library 2018-08-31 17:19:02 +1000 Matthew Waters * ext/webrtc/meson.build: meson: add pkg-config file for the webrtc plugin 2018-08-31 00:37:17 +1000 Matthew Waters * sys/androidmedia/meson.build: androidmedia/meson: we also depend on gmodule and orc 2018-08-31 14:55:05 +0900 Seungha Yang * ext/rtmp/gstrtmpsink.c: rtmpsink: Fix leak on connection failure Although RTMP_ConnectStream() was failed, librtmp's internal memory is not freed by RTMP_ConnectStream(), so RTMP_Close() should be called before RTMP_Free() https://bugzilla.gnome.org/show_bug.cgi?id=797058 2018-08-25 22:47:34 +0530 Devarsh Thakkar * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Add "restore-crtc" property This adds "restore-crtc" property using which one can restore previous crtc mode. By default it is enabled, if CRTC was already active with a valid mode and kmssink set a new mode on CRTC using force-modesetting. This helps user restore previous crtc mode and get the previous session back after running a kmssink pipeline involving a force-modesetting. For e.g. When running a kmssink pipeline on rpi using force-modesetting on tty console, it was giving a blank screen after pipeline, and now with help of restore-crtc functionality, CRTC is set with previous crtc mode previously active on tty console. Edited-by: Nicolas Dufresne https://bugzilla.gnome.org/show_bug.cgi?id=797025 2018-08-29 12:02:22 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Document possible advance usage This adds a mention about modetest command line tool and adds an example on how to use the connector/plane-properties. https://bugzilla.gnome.org/show_bug.cgi?id=797027 2018-08-29 11:53:13 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Escape DRM property names This allow setting properties that contains spaces. The spaces are replaced with '-'. As an example, one can set the connector proper "scaling mode" with the following: ... ! kmssink connector-properties="s,scaling-mode=1" https://bugzilla.gnome.org/show_bug.cgi?id=797027 2018-08-27 15:08:08 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Add 'plane-properties' property This is similar to 'connector-properties' but will change selected plane properties instead. https://bugzilla.gnome.org/show_bug.cgi?id=797027 2018-08-27 15:07:47 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Generalize setting DRM object properties https://bugzilla.gnome.org/show_bug.cgi?id=797027 2018-08-23 14:29:37 +0200 Guillaume Desmottes * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add 'connector-properties' prop Can be used to pass custom connector properties to DRM. Properties can be enumerated using modetest tool. These properties can then be applied with the following gst-launch-1.0 syntax. Note that the name of the structure is ignored. ... ! kmssink connector-properties="s,props1=value,props2=value" https://bugzilla.gnome.org/show_bug.cgi?id=797027 2018-08-28 12:54:07 +0530 Nirbheek Chauhan * meson_options.txt: * sys/androidmedia/meson.build: * sys/meson.build: * sys/opensles/meson.build: meson: Add build files for androidmedia and opensles Note that androidmedia requires Android gstgl 2018-08-28 15:04:53 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Only use drop-frame flag for 29.97 and 59.94 FPS Otherwise it can cause errors in gstvideotimecode.c because drop-frame is not defined for any other frame rate (e.g. 24000/101) https://blog.frame.io/2017/07/17/timecode-and-frame-rates/ https://bugzilla.gnome.org/show_bug.cgi?id=797037 2018-08-28 09:11:32 +0200 Johan Bjäreholt * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Fix format string warning We have a GST_DEBUG_OBJECT, which prints a guint64 with %lu which gave a compiler warning. Used G_GUINT64_FORMAT instead. https://bugzilla.gnome.org/show_bug.cgi?id=797036 2018-08-17 11:12:26 +0200 Philipp Zabel * sys/kms/gstkmssink.c: kmssink: configure mode setting from video info drmModeGetFB returns -EINVAL for multi-planar framebuffers. Instead of depending on the framebuffer dimensions to select the mode, use width and height from GstVideoInfo, which was used to create the framebuffer in the first place. This enables kmssink to display multi-planar formats such as I420 or NV12 with modesetting enabled. https://bugzilla.gnome.org/show_bug.cgi?id=796985 2018-08-16 12:35:50 +0200 Jerome Laheurte * sys/winks/ksdeviceprovider.c: ksvideosrc: fix device enumeration when hotplugging a camera Since both audio and video capture devices declare the KSCATEGORY_CAPTURE interface, plugging a camera that supports both could result in an audio device being mistaken for a video one. https://bugzilla.gnome.org/show_bug.cgi?id=796958 2018-08-19 15:50:25 +0100 Tim-Philipp Müller * ext/meson.build: * ext/musepack/meson.build: * meson_options.txt: meson: build musepack plugin 2018-08-19 15:44:16 +0100 Tim-Philipp Müller * configure.ac: * ext/musepack/gstmusepackdec.c: * ext/musepack/gstmusepackdec.h: * ext/musepack/gstmusepackreader.c: * ext/musepack/gstmusepackreader.h: musepack: remove support for the 'old' API 2018-08-19 14:39:53 +0100 Tim-Philipp Müller * gst/freeverb/gstfreeverb.c: freeverb: update for g_type_class_add_private() deprecation Not that the private struct is really needed here. 2018-08-19 01:11:38 +0100 Tim-Philipp Müller * ext/meson.build: * ext/neon/meson.build: * meson_options.txt: meson: build neonhttpsrc 2018-08-18 21:32:11 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add options to disable gobject cast checks and glib asserts ... and define G_DISABLE_DEPRECATED for development versions, like we do in autotools. 2018-08-17 16:37:45 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Add a gapless mode which inserts silence/drops samples on disconts The output is always a continguous stream without any gaps. 2018-08-17 16:37:31 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Always set DISCONT flag after resyncs 2018-08-17 16:33:52 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Keep track of resync time separately If we drain after a discont, the discont time given by the stream synchronizer is already the time after the discontinuity. But we need to drain all pending data based on the previous discont time instead. 2018-08-17 14:56:51 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Update output buffer size after each buffer to compensate for accumulated errors https://bugzilla.gnome.org/show_bug.cgi?id=796981 2018-08-16 17:47:55 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: * tests/check/elements/avwait.c: * tests/check/meson.build: avwait: Start video and audio together if audio starts late Also add test to meson https://bugzilla.gnome.org/show_bug.cgi?id=796977 2018-08-17 02:59:26 +0530 Nirbheek Chauhan * meson.build: * sys/applemedia/meson.build: * sys/decklink/meson.build: * sys/shm/meson.build: meson: host_system is 'ios' when building for iOS The cross file sets this value, and we use 'ios' in Cerbero. 2018-08-17 01:49:07 +0530 Nirbheek Chauhan * meson.build: * meson_options.txt: * tests/meson.build: meson: Add an option for tests This is needed because we don't always have gstreamer-check available, for instance inside Cerbero on iOS. 2018-08-16 15:21:00 -0400 Nicolas Dufresne * ext/dash/gstdashdemux.c: dashdemux: Always create the adapter Worst case it will be empty. This fixes a crash when the base class calls data_received() when the stream is neither is_isobmff or has_isoff_ondemand_profile. https://bugzilla.gnome.org/show_bug.cgi?id=796745 2018-08-16 17:07:06 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Define crossfade-ratio to have range [0.0,1.0] Previously negative values had the same effect as 0.0, which was confusing. https://bugzilla.gnome.org/show_bug.cgi?id=796845 2018-08-16 11:42:25 +0200 Wim Taymans * ext/curl/gstcurlhttpsrc.c: curlhhtpsrc: avoid invalid memory references gst_curl_http_src_remove_queue_item() can free qelement and then we get an invalid memory reference when we do qelement->next a couple of lines below. Take the next pointer earlier so that we can safely free. 2018-08-16 11:20:54 +0200 Wim Taymans * gst/librfb/rfbdecoder.c: rfbdecoder: don't free decoder data The decoder data is freed when we read more data. 2018-08-16 10:02:42 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Make sure to hold object lock while iterating sink pads They might otherwise just change while we iterate. 2018-08-15 19:44:17 +0530 Nirbheek Chauhan * meson.build: meson: Define HAVE_OSX on macOS and iOS Needed by the shm, ladspa, and lv2 plugins. Same as Autotools. 2018-08-15 19:34:31 +0530 Nirbheek Chauhan * sys/shm/meson.build: meson: Fix shm librt dep check on macOS, iOS, and *BSD 2018-08-14 15:59:52 -0400 Nicolas Dufresne * ext/opencv/Makefile.am: makefile: opencv: Fix header names in noinst_HEADERS This should fix missing gstcameracalibrate.h and gstcameraundistort.h missing into generated tarballs. 2018-08-14 19:48:28 +0530 Nirbheek Chauhan * meson_options.txt: * sys/applemedia/meson.build: meson: Add an option for the applemedia plugin 2018-07-18 11:11:17 +0100 Michael Drake * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: fix multiple subtitles on screen simultaneously This fixes an issue with SSA/ASS subtitles, where subtitles would fail to appear if there was already a subtitle on screen. This was because `struct _GstAssRender` had a single `GstBuffer *subtitle_pending` member. This meant that the assrender context could only be aware of one subtitle at a time. This patch changes the subtitle_pending member to a linked list of pending subtitles. The `gst_ass_render_chain_text` function no longer needs to care about whether there are already subtitles pending, it simply appends new subtitles to the list. The `gst_ass_render_chain_video` function has been modified to handle the list of pending subtitles. Finally, the `gst_ass_render_pop_text` function has been modified to pop the entire list of pending subtitles. https://bugzilla.gnome.org/show_bug.cgi?id=735944 2018-08-14 13:53:00 +0200 Víctor Manuel Jáquez Leal * tests/check/elements/.gitignore: * tests/check/libs/.gitignore: check: update gitignore 2018-08-14 12:42:02 +0200 Víctor Manuel Jáquez Leal * ext/closedcaption/raw_decoder.c: closedcaption: comment out unused function When compiling with clang-6 this error raises: raw_decoder.c:411:1: error: unused function 'cpr1204_crc' [-Werror,-Wunused-function] This patch only comments it out. https://bugzilla.gnome.org/show_bug.cgi?id=796957 2018-08-14 12:36:53 +0200 Víctor Manuel Jáquez Leal * ext/closedcaption/raw_decoder.c: closedcaption: avoid implicit convertion of enums When compiling with clang-6 this error pops out: raw_decoder.c:1011:62: error: implicit conversion from enumeration type 'const vbi_modulation' to different enumeration type 'vbi3_modulation' [-Werror,-Wenum-conversion] This is because function vbi3_bit_slicer_set_params() sets vbi3_modulation as enum type parameter, nonetheless vbi_modulation enum is passed. Both enums looks semantically equal, thus the fix is a simple cast. https://bugzilla.gnome.org/show_bug.cgi?id=796957 2018-08-11 04:12:46 +0530 Nirbheek Chauhan * ext/webrtcdsp/meson.build: meson: Add gnustl dep for webrtcdsp on Android Needed for C++ headers. Without this, webrtcdsp can't find 2018-08-10 12:57:47 +0100 Bastian Köcher * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/webrtc/meson.build: meson: fix install dir for generated header files Nixos installs into a non-standard includedir, so need to take account of the 'includedir' option instead of just hard-coding 'include' here. https://bugzilla.gnome.org/show_bug.cgi?id=794856 2018-08-08 00:31:51 +0530 Nirbheek Chauhan * sys/wasapi/gstaudioclient3.h: * sys/wasapi/meson.build: wasapi: Fix build with Windows 8.1 SDK With the Windows 8.1 SDK, the v1 of the AUDCLNT_STREAMOPTIONS enum is defined which only has NONE and RAW, so it's not only defined when AudioClient3 is available. Add a meson check for the symbol. This is not needed for Autotools because there we build against the MinGW audioclient.h which is still at v1 of the AudioClient interface. 2018-08-03 15:23:24 +0300 George Kiagiadakis * tests/check/Makefile.am: tests/check/Makefile.am: add GST_AUDIO_CFLAGS also on the planar audio adapter unit test 2018-08-03 08:16:19 -0400 Nicolas Dufresne * gst-libs/gst/audio/Makefile.am: badaudio: Fix typo, ADUIO vs AUDIO 2018-08-03 07:57:50 -0400 Nicolas Dufresne * gst-libs/gst/audio/Makefile.am: GstPlanarAudioAdapter: Add audio library in Makefile.am This fixes a build regression. 2018-08-03 07:57:02 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.h: * ext/webrtcdsp/gstwebrtcechoprobe.h: webrtcdsp: Avoid redefinition of GST_USE_UNSTABLE_API 2018-02-19 18:30:13 +0200 George Kiagiadakis * ext/webrtcdsp/Makefile.am: * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcdsp.h: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.h: * ext/webrtcdsp/meson.build: webrtcdsp: add support for using F32/non-interleaved buffers This is the native format that is in use by the webrtc audio processing library internally, so this avoids internal {de,}interleaving and format conversion (S16->F32 and back) https://bugzilla.gnome.org/show_bug.cgi?id=793605 2018-02-19 11:48:01 +0200 George Kiagiadakis * gst-libs/gst/audio/gstplanaraudioadapter.c: * gst-libs/gst/audio/gstplanaraudioadapter.h: GstPlanarAudioAdapter: copy pts, dts and offset tracking from GstAdapter https://bugzilla.gnome.org/show_bug.cgi?id=793605 2018-02-16 15:55:45 +0200 George Kiagiadakis * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstplanaraudioadapter.c: * gst-libs/gst/audio/gstplanaraudioadapter.h: * gst-libs/gst/audio/meson.build: * tests/check/Makefile.am: * tests/check/libs/planaraudioadapter.c: * tests/check/meson.build: libs: audio: add new GstPlanarAudioAdapter class This is a GstAdapter, but for planar audio buffers. https://bugzilla.gnome.org/show_bug.cgi?id=793605 2017-07-21 17:53:11 +1000 Alessandro Decina * meson.build: * sys/applemedia/meson.build: * sys/meson.build: meson: enable applemedia 2018-08-02 21:05:24 -0400 Thibault Saunier * ext/rsvg/gstrsvgdec.c: rsvg: Also accept as ending tag Some SVG files created by inkscape use that, such as: https://gitlab.gnome.org/GNOME/pitivi/uploads/8dd8d9d988b5eb6cc38f871196caac6f/Titel-Tafel3.2_anim.svg This is a first patch for https://bugzilla.gnome.org/show_bug.cgi?id=796909 but it is not enough to support animated gifs. 2018-08-02 11:19:07 -0400 Nicolas Dufresne * configure.ac: * ext/opencv/MotionCells.h: * ext/opencv/gsthanddetect.h: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttemplatematch.h: * ext/opencv/meson.build: * meson.build: opencv: Fixup include to follow new standard This uses the new path for OpenCV headers. OpenCV now have master headers files per modules, which reduce the amount of required includes. Note that HIGHGUI was included to get the imgcodecs includes, which I fixed, though the master header is missing the C headers, so I included that directly. All the image stuff should be ported to C++ eventually. Finally, this patch also update the header checks to reflect the modules that are really being used. 2018-08-02 11:03:47 -0400 Nicolas Dufresne * ext/opencv/MotionCells.h: * ext/opencv/gstcameracalibrate.h: * ext/opencv/gstcameraundistort.h: * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstdewarp.h: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.h: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: * ext/opencv/gsthanddetect.h: * ext/opencv/gstmotioncells.h: * ext/opencv/gstretinex.cpp: * ext/opencv/gstretinex.h: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/opencv/gsttemplatematch.h: * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: opencv: Updated to use new header path 2018-08-02 10:39:14 -0400 Nicolas Dufresne * configure.ac: * ext/opencv/MotionCells.cpp: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcameraundistort.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttextoverlay.h: * ext/opencv/meson.build: * gst-libs/gst/opencv/meson.build: opencv: Bump requirement to 3.0.0+ And removes all the ifdef code to support the 2.X APIs. 2018-08-02 16:18:12 +0300 Sebastian Dröge * ext/closedcaption/gstceaccoverlay.c: ceaccoverlay: Initialize debug category 2018-08-02 18:24:02 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisrc.c: wasapisrc: Correctly disable provide-clock `#ifdef` will, of course, evaluate to 1 in this case. We want `#if`. 2018-08-02 08:13:08 -0400 Nicolas Dufresne * ext/opencv/gstcameracalibrate.h: * ext/opencv/gstcameraundistort.h: cameracalibrtate: Fix opencv2 core.hpp path This is to support older release of OpenCV2 https://bugzilla.gnome.org/show_bug.cgi?id=789075 2018-05-27 14:31:55 +0200 Christoph Reiter * sys/wasapi/gstwasapiutil.c: wasapisink: fix regression in shared mode segment size In commit fd806628a8 (839cc3926 in the stable branch) I changed the segment size to match exactly the buffer size. I missed that this is only valid in exclusive mode and in shared mode the buffer size is a multiple of the device period. Revert the logic for the shared mode. https://bugzilla.gnome.org/show_bug.cgi?id=796354 https://bugzilla.gnome.org/show_bug.cgi?id=796858 2017-10-16 22:29:01 +0200 Philippe Renon * ext/opencv/Makefile.am: * ext/opencv/cameraevent.cpp: * ext/opencv/cameraevent.hpp: * ext/opencv/camerautils.cpp: * ext/opencv/camerautils.hpp: * ext/opencv/gstcameracalibrate.cpp: * ext/opencv/gstcameracalibrate.h: * ext/opencv/gstcameraundistort.cpp: * ext/opencv/gstcameraundistort.h: * ext/opencv/gstopencv.cpp: * ext/opencv/meson.build: opencv: new cameracalibrate and cameraundistort elements https://bugzilla.gnome.org/show_bug.cgi?id=789075 2018-08-01 15:11:09 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Don't wait if audio_running_time_to_wait_for is NONE The case is properly handled a few lines below by dropping the buffer. We shouldn't perpetually block the audio chain function until the target-timecode is reached. https://bugzilla.gnome.org/show_bug.cgi?id=796906 2018-08-01 03:43:31 +0530 Nirbheek Chauhan * meson_options.txt: * sys/winks/meson.build: meson: Add option for winks plugin This was accidentally missed. 2018-07-29 20:55:26 +0900 Seungha Yang * ext/srt/gstsrt.c: * ext/srt/gstsrt.h: srt: Allow the host name "localhost" Add support "srt://localhost:port" style uri, and change the default host to "localhost" https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-28 15:59:04 +0900 Seungha Yang * ext/srt/gstsrt.c: * ext/srt/gstsrtclientsink.c: srtclientsink: Fix SRT socket option setting SRTClientSink is sender https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-27 15:04:29 +0900 Seungha Yang * ext/srt/gstsrt.c: * ext/srt/gstsrtclientsrc.c: srt: Do not ignore SRT socket error event ... and set SRT_EPOLL_IN flag if the client is not sender (i.e., source element) since waiting readable event for srt_recvmsg() makes more sense. https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-27 13:23:43 +0900 Seungha Yang * ext/srt/gstsrtbasesrc.c: * ext/srt/gstsrtclientsrc.c: * ext/srt/gstsrtserversrc.c: srtbasesrc: Use GstBaseSrc's timestamp impl. ... instead of doing it ourselves. Otherwise, we should add more logic here (such as checking GstClock and etc) which was already provided by GstBaseSrc. https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-25 10:44:20 +0900 Seungha Yang * ext/srt/gstsrt.c: * ext/srt/gstsrt.h: srt: Add "const" keyword to a function argument Given "passphrase" shouldn't be modified https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-20 16:02:26 +0900 Seungha Yang * ext/srt/gstsrt.c: * ext/srt/gstsrt.h: * ext/srt/gstsrtserversink.c: * ext/srt/gstsrtserversrc.c: srt: Remove duplicated code for setting server socket https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-28 18:06:08 +0900 Seungha Yang * ext/srt/gstsrtserversink.h: * ext/srt/gstsrtserversrc.h: srt: Fix signal args mismatch client-added and client-{removed,closed} signals were defined to be emitted with two arguments (socket fd and address) https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-25 17:36:03 +0900 Seungha Yang * ext/srt/gstsrtserversrc.c: srtserversrc: Emit client-closed signal in _stop() ... instead of client-added https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-25 15:16:32 +0900 Seungha Yang * ext/srt/gstsrtclientsink.c: srtclientsink: Do not leak string https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-23 14:28:05 +0900 Seungha Yang * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtclientsrc.c: srtclient: Fix bind-port and rendez-vous property getter https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-20 14:05:32 +0900 Seungha Yang * ext/srt/gstsrt.c: * ext/srt/gstsrt.h: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtclientsrc.c: srt: Reduce useless call depth Providing simplified _client_connect() is not required for now. https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-20 12:10:21 +0900 Seungha Yang * ext/srt/gstsrtbasesink.h: * ext/srt/gstsrtbasesrc.c: * ext/srt/gstsrtbasesrc.h: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtclientsink.h: * ext/srt/gstsrtclientsrc.c: * ext/srt/gstsrtclientsrc.h: * ext/srt/gstsrtserversink.c: * ext/srt/gstsrtserversink.h: * ext/srt/gstsrtserversrc.c: * ext/srt/gstsrtserversrc.h: srt: Remove white space https://bugzilla.gnome.org/show_bug.cgi?id=796842 2018-07-27 23:00:53 -0400 Nicolas Dufresne * gst/jpegformat/gstjpegparse.c: jpegparse: Generate timestamp if framerate is known This change allow setting timestamp on streams that would otherwise have no timestamp. This is useful to make a video from bunch of JPEG files. An example of such pipeline would be: gst-launch-1.0 multifilesrc location=%05d.jpeg caps=image/jpeg,framerate=30/1 \ ! jpegparse ! fakesink silent=0 -v 2018-07-27 22:36:40 -0400 Nicolas Dufresne * ext/mplex/meson.build: meson: mjpegtools_api should be 20K for mplex too This error was duplicated. 2018-07-27 22:33:47 -0400 Nicolas Dufresne * ext/mpeg2enc/meson.build: meson: mjpegtools_api should have been 20K not 2K This was miss-ported when the options got added. The requires version was properly set to 2000 before. 2018-07-27 22:17:56 -0400 Nicolas Dufresne * sys/bluez/meson.build: meson: Generate bluez.h instead of bluez-interface.h This is a recent regression, the meson code was ported to use the meson gnome module helpers, but the generated file was changed to bluez-interface.h. 2018-07-27 18:59:23 +0530 Nirbheek Chauhan * ext/aom/meson.build: * ext/assrender/meson.build: * ext/bs2b/meson.build: * ext/bz2/meson.build: * ext/chromaprint/meson.build: * ext/closedcaption/meson.build: * ext/dash/meson.build: * ext/directfb/meson.build: * ext/dtls/meson.build: * ext/dts/meson.build: * ext/faac/meson.build: * ext/faad/meson.build: * ext/fdkaac/meson.build: * ext/flite/meson.build: * ext/fluidsynth/meson.build: * ext/gl/meson.build: * ext/gsm/meson.build: * ext/hls/meson.build: * ext/iqa/meson.build: * ext/kate/meson.build: * ext/ladspa/meson.build: * ext/libde265/meson.build: * ext/libmms/meson.build: * ext/lv2/meson.build: * ext/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: * ext/openh264/meson.build: * ext/openjpeg/meson.build: * ext/opus/meson.build: * ext/resindvd/meson.build: * ext/rsvg/meson.build: * ext/rtmp/meson.build: * ext/sbc/meson.build: * ext/smoothstreaming/meson.build: * ext/soundtouch/meson.build: * ext/spandsp/meson.build: * ext/srt/meson.build: * ext/srtp/meson.build: * ext/ttml/meson.build: * ext/voaacenc/meson.build: * ext/vulkan/meson.build: * ext/webp/meson.build: * ext/webrtc/meson.build: * ext/webrtcdsp/meson.build: * ext/x265/meson.build: * ext/zbar/meson.build: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/wayland/meson.build: * gst/mpegtsdemux/meson.build: * meson.build: * meson_options.txt: * sys/bluez/meson.build: * sys/d3dvideosink/meson.build: * sys/decklink/meson.build: * sys/directsound/meson.build: * sys/dvb/meson.build: * sys/fbdev/meson.build: * sys/ipcpipeline/meson.build: * sys/kms/meson.build: * sys/msdk/meson.build: * sys/shm/meson.build: * sys/uvch264/meson.build: * sys/wasapi/meson.build: * sys/winks/meson.build: * sys/winscreencap/meson.build: * tests/check/meson.build: Add feature options for almost all plugins The only plugins remaining are those that haven't been ported to Meson yet, and msdk. Also, the tests are still automagic. https://bugzilla.gnome.org/show_bug.cgi?id=795107 2018-07-25 17:12:00 +0530 Nirbheek Chauhan * ext/meson.build: * gst/meson.build: * meson.build: * meson_options.txt: * tests/examples/waylandsink/meson.build: * tests/meson.build: meson: Add feature options for many plugins The rest will be converted later, these are necessary for gst-build to set options correctly. https://bugzilla.gnome.org/show_bug.cgi?id=795107 2018-07-26 11:19:41 -0400 Olivier Crête * ext/aom/gstav1enc.c: av1enc: Implement latency setting 2018-07-26 10:48:34 -0400 Olivier Crête * ext/aom/gstav1enc.c: av1enc: Propagate flags from encoder to GstBuffer 2018-07-26 09:55:48 -0400 Olivier Crête * ext/aom/gstav1enc.c: av1enc: Implement finish for EOS Call the encode function repeatedly until nothing comes out. https://bugzilla.gnome.org/show_bug.cgi?id=796727 2018-07-26 09:49:02 -0400 Olivier Crête * ext/aom/gstav1enc.c: av1enc: Return downstream error from push 2018-07-26 00:20:02 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Don't leak all buffers while crossfading and not all pads are crossfading 2018-07-25 13:44:48 +0200 Gary Bisson * sys/kms/gstkmssink.c: kmssink: Add support for mxsfb-drm driver The mxsfb-drm driver has been added to the kernel long ago and will now be the default display driver for NXP i.MX28, i.MX6SX and i.MX7D processors so now is a good time to add it to kmssink. Also, this is used in the upcoming i.MX8MQ and i.MX8MM processors. https://bugzilla.gnome.org/show_bug.cgi?id=796873 2018-07-09 20:20:59 -0500 Matteo Valdina * ext/wayland/Makefile.am: * ext/wayland/meson.build: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: waylandsink: relaxed wl_shell check and added zwp_fullscreen_shell. Relaxed the wl_shell interface constrains, so application that pass via GstContext the wl_surface can use waylandsink in a compositor without wl_surface and zwp_fullscreen_shell. Added support for zwp_fullscreen_shell. https://bugzilla.gnome.org/show_bug.cgi?id=796772 2018-07-19 18:34:40 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: * tests/check/Makefile.am: * tests/check/elements/avwait.c: avwait: Add recording property It works like a valve in front of the actual avwait. When recording == TRUE, other rules are then examined. When recording == FALSE, nothing is passing through. https://bugzilla.gnome.org/show_bug.cgi?id=796836 2018-07-20 16:25:02 +0300 Sebastian Dröge * gst/compositor/blend.c: compositor: Use 255 as maximum alpha instead of 256 255 will easily become 0 in the blending function as they expect the maximum value to be 255. Can be reproduce with gst-launch-1.0 videotestsrc pattern=ball ! c.sink_0 \ videotestsrc pattern=snow ! c.sink_1 \ compositor name=c \ sink_0::zorder=0 sink_1::zorder=1 sink_0::crossfade-ratio=0.5 \ background=black ! \ videoconvert ! xvimagesink crossfade-ratio +/- 0.001 makes it work correctly and the same happens at e.g. 0.25, 0.75, N*0.0625 https://bugzilla.gnome.org/show_bug.cgi?id=796846 2018-07-22 10:34:06 +1000 Jan Schmidt * ext/ladspa/gstladspa.c: ladspa: Only scan LADSPA subdir APPDATA and COMMONPROGRAMFILES Don't scan the entire APPDATA and COMMONPROGRAMFILES path tree, just the LADSPA sub-directory inside them, if any. https://bugzilla.gnome.org/show_bug.cgi?id=796450 2018-07-22 09:52:23 +1000 Jan Schmidt * ext/ladspa/gstladspa.c: ladspa: Don't try and load every file as a plugin When scanning paths for LADSPA plugins, don't try and load every random file as a module, as g_module_open ends up throwing errors on Windows. Use a G_MODULE_SUFFIX and GST_EXTRA_MODULE_SUFFIX suffix check as we do for GStreamer plugins. https://bugzilla.gnome.org/show_bug.cgi?id=796450 2018-07-18 14:26:17 +0100 Sam Gigliotti * ext/webrtc/gstwebrtcbin.c: webrtc: fix memory leak When it parses SDP, it doesn't free the error object. https://bugzilla.gnome.org/show_bug.cgi?id=796830 2018-07-18 20:05:26 +0900 Seungha Yang * gst/compositor/compositor.c: compositor: Update conversion info in property setter ... not in getter. Otherwise, video-converter will not be updated with new width/height https://bugzilla.gnome.org/show_bug.cgi?id=796828 2018-06-18 13:01:50 +0200 Jonathan Karlsson * ext/curl/gstcurlhttpsink.c: curlhttpsink: Support for multipart/form-data Content-Type Add support to set multipart/form-data as Content-Type by sending a caps event to the curlhttpsink with a field named "boundary". https://bugzilla.gnome.org/show_bug.cgi?id=796618 2018-07-15 23:05:26 +1000 Jan Schmidt * tests/check/elements/webrtcbin.c: webrtc: Add some ssrc to caps in the unit test. The unit test uses incomplete caps to test webrtcbin, causing some weirdness generating RTX stream mappings. https://bugzilla.gnome.org/show_bug.cgi?id=796810 2018-07-14 23:15:02 +1000 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: webrtc: Add a warning in sdp_media_from_transceiver() When generating caps with no ssrc, at least throw a warning instead of using an uninitialised stack variable https://bugzilla.gnome.org/show_bug.cgi?id=796810 2018-07-14 23:05:53 +1000 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: webrtc: Fix memory leak Fix a leaked string when building RTX info. 2018-07-14 23:04:30 +1000 Jan Schmidt * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: webrtc: Clean up and fix transportsendbin Refactor transportsendbin, and change the way pads are blocked on dtlssrtpenc so that they don't interfere with state changes. As well as being easier to read, this fixes spurious failures shutting down webrtcbin if DTLS negotiation hasn't completed yet. 2018-07-14 23:02:05 +1000 Jan Schmidt * ext/webrtc/transportsendbin.c: * gst-libs/gst/webrtc/dtlstransport.c: webrtc: Move dtlssrtpenc state management Move the errant piece of dtlssrtpenc state change management from dtlstransport in the Webrtc libs, into the transportsendbin that does the rest of the element management so it's all in one place. 2018-07-02 19:55:41 +1000 Jan Schmidt * gst-libs/gst/webrtc/dtlstransport.c: webrtc/dtlstransport: Add more debug. Rename category Rename the dtlstransport debug category to webrtcdtlstransport. 2018-07-13 14:42:28 -0400 Thibault Saunier * ext/opencv/MotionCells.cpp: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsttemplatematch.cpp: opencv: Fix build for opencv >= 3.4.2 The `CV_RGB` macro is now in `imgproc.hpp`. Fixes: ../subprojects/gst-plugins-bad/ext/opencv/gsthanddetect.cpp:497:40: error: ‘CV_RGB’ was not declared in this scope cvCircle (img, center, radius, CV_RGB (0, 0, 200), 1, 8, 0); ^~~~~~ 2018-07-07 03:40:49 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: find_codec_preferences: use received caps When negotiation is triggered by receiving caps on our sink pad probes, we could encounter a race condition where need-negotiation is emitted and the application requires the creation of an offer before the current caps were actually updated. This led to retrieving incomplete caps when creating the offer, using find_codec_preferences -> pad_get_current_caps. Instead, as we save the caps in the probe callback anyway, it is better and thread safe to use these if they were set. https://bugzilla.gnome.org/show_bug.cgi?id=796801 2018-07-12 12:48:39 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: fix default placement when different sized output i.e. when expanding from 320x240 to 800x600, the resulting frame should appear in the top left corner, not the middle. https://bugzilla.gnome.org/show_bug.cgi?id=794401 2018-04-25 16:36:21 +0200 Daniel Klamt * ext/gl/gstglvideomixer.c: glvideomixer: Moves the objects to zero on z axis Matches the output from a similar glimagesink pipeline when rotating from an upstream gltransformation passed through the affine transformation meta with xpos/ypos being set. https://bugzilla.gnome.org/show_bug.cgi?id=794401 2018-07-10 09:45:31 -0400 Nicolas Dufresne * ext/gl/gstglvideomixer.c: glvideomixer: Fix coding style 2018-07-10 09:42:47 -0400 Nicolas Dufresne * ext/gl/gstglvideomixer.c: glvideomixer: Add missing string.h include 2018-07-08 09:54:04 -0500 Matthew Waters * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklink: keep the internal time we send to decklink always increasing Otherwise decklink seems to hold onto the latest frame and may cause a flash in the output if the played sequence has a framerate less than the video output. Scenario is play for N seconds, pause, flushing seek to some other position, play again. Each of the play sequences would normally start at 0 with the decklink time. As a result, the latest frame from the previous sequence is kept alive waiting for it's timestamp to pass before either dropping (if a subsequent frame in the new sequence overrides it) or displayed causing the out of place frame to be displayed. This is also supported by the debug logs from the decklink video sink element where a ScheduledFrameCompleted() callback would not occur for the frame until the above had happened. It was timing related as to whether the frame was displayed based on the decklink refresh cycle (which seems to be 16ms here), when the frame was scheduled by the sink and the difference between the 'time since vblank' of the two play requests (and thus start times of scheduled playback). 2018-07-10 20:12:15 +1000 Matthew Waters * ext/gl/gstglutils.c: gl/utils: fix matrix conversion for column majorness Companion to https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=e4bf9ed8f060021151cd57e2b00493ed696cb47b https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=16cba63d43f319ac33bc993eca2b1b51679727b3 2018-04-25 16:39:34 +0200 Daniel Klamt * ext/gl/gstglvideomixer.c: Moved the pad offset and aspect ratio to a matrix so it will be added in view space and not in world space https://bugzilla.gnome.org/show_bug.cgi?id=794401 2018-07-09 06:40:29 +0530 Arun Raghavan * ext/closedcaption/gstceaccoverlay.c: closedcaption: Fix compilation on older compilers For when -std=c99 (or later) is not the default. 2018-07-09 06:40:24 +0530 Arun Raghavan * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtputil.c: * sys/bluez/gstavdtputil.h: bluez: Expose transport volume as a property on avdtpsrc This can be handy if we want to track Bluetooth volume changes from the device, or if we want to set it. https://bugzilla.gnome.org/show_bug.cgi?id=787020 2018-07-03 18:38:04 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: msdkdec: Fix latency calculation Use async_depth for latency calcuation instead of the length of Tasks array which could be NULL since we don't do the msdk decoder init in set_format(). 2018-07-02 16:50:46 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/msdk.c: msdk: Set 16 bit alignment for width According to MediaSDK specification, Width must be a multiple of 16 and Height must be a multiple of 16 for progressive frame sequence and a multiple of 32 otherwise. This patch sets a 16 bit alignment for width and 32 bit alignment for height as default. https://bugzilla.gnome.org/show_bug.cgi?id=796566 2018-07-02 16:50:02 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: msdkdec: avoid early destruction of frame in dynamic resolution change In cases where we do hard resest, the current code destroys the frame which has new resolution bit early and this causes buffer_unmap warnings. Keep an extra ref to the frame internally to avoid this. 2018-07-02 16:49:23 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvc1dec.c: msdkdec: vc1: Fix handling of advanced profile elementary stream Advanced profile elementary streams may not have codec_data always. So make sure we don't do anything with null buffer. 2018-07-02 16:48:11 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: msdkdec: Fix advanced profile vc1 decode when codec_data presents The gst-msdk decoders only support packetized formats for all codecs except VC1. For VC1, it supports codec_data for advanced profiles and this codec_data wan't submitting to MSDK's DecodeHeader APIs. Make sure the subclass deocders correctly configured so that the codec_data buffers are in place in the internal adapter for MediaSDK's DecoderHeader usage. 2018-07-02 16:42:20 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: msdkdec: Fix the PTS of output frames Currently we use the gst_video_decoder_get_oldest_frame() to get the old pending frame to output. But this is not correct if pts re-ordering required. This patch uses a custom made get_old_frame() which accounts the PTS too similar to the v4l2decoder. https://bugzilla.gnome.org/show_bug.cgi?id=796699 2018-07-02 16:41:58 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: Remove dead code We are not using any ExtendedParams for decoding. 2018-07-02 16:17:49 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkvp9dec.c: msdk: dec: Add dynamic-configuration change support The patch adds a serios of changes to support dynamic resolution change and efficient utilization of resources. Major changes: -- Use MSDK's apis to retrieve the headers instead of only relying on upsteram notification. For eg: avc decoder requires SEI header information for dpb count calculation which we don't get from caps. -- For all codecs other than VP9, we force the reset of decoder if resoultion changes to fit with gstreamer flow. VP9 enfource the hard reset only if the new resolution is bigger. -- delay the src caps setting till msdk api's invokation in handle_frame to avoid caching multiple configuration values -- ensure pool negotiation is based on decoder's allocation_caps. --dynamic resoluttion change use an explicit allocation_query to reclaim the buffers before closing the decoder (thanks to v4l2dec) --In case if we don't get upstream notification of res change (for eg, this can can happen for vp9 frames with ivfheader where ivfparse is not able to notify the dynamic changes), we handle the the case based on MFX_ERR_INCOMPATIBLE_VIDEO_PARAM which is the return value of MFXVideoDECODE_DecodeFrameAsync -- calculate the minimum surfaces to be preallocated based on msdk suggestion, downstream requirement, async depth and scratch surface count for smooth display. https://bugzilla.gnome.org/show_bug.cgi?id=796566 2018-07-02 19:09:19 +0800 Roland Jon * gst-libs/gst/player/gstplayer.c: player: Avoid trying to join the player thread from itself https://bugzilla.gnome.org/show_bug.cgi?id=796731 2018-07-01 10:44:45 +1000 Jan Schmidt * ext/webrtc/gstwebrtcbin.c: webrtc: Explicitly initialise mutex and condition Fixes random crashes when an allocated webrtcbin isn't given fresh 0-filled memory in its allocation. It works mostly because GMutex and GCond are automatically initialised in that case. 2018-06-30 00:56:29 +1000 Jan Schmidt * ext/webrtc/transportsendbin.c: webrtc: Move the transportsendbin pad block removal Move freeing of the pad blocks back to before we call the GstBin state change function, as there's something racy going on on the build server otherwise, where the pads don't unblock during downward state changes. This is a bit of a stab in the dark, since I can't recreate the build server failure locally. 2018-06-27 09:48:00 +0000 Sean-Der * ext/aom/gstav1dec.c: aomenc: Handle 8 bit_depth images with AOM_IMG_FMT_HIGHBITDEPTH enabled https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-06-27 09:44:00 +0000 Sean-Der * ext/aom/gstav1dec.c: aomenc: Add support for 10/12bit decoding https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-06-26 17:45:36 +0200 Georg Ottinger * gst/ivfparse/gstivfparse.c: ivfparse: Add the AV01 FOURCC for parsing AV1 IVFs Adds AV01 FOURCC to the list of allowed media files, in order to allow parsing the IVF Container holding AV1 content. At a later point dynamic resolution change can be supported - therefore the sequence header OBU and frame header OBU of AV1 file must be parsed, which can be done in future with the help of gst-lib gstav1parse. https://bugzilla.gnome.org/show_bug.cgi?id=796677 2018-06-28 15:21:12 -0400 Thibault Saunier * ext/openh264/meson.build: meson: Add fallback for openh264 dependency 2018-06-27 22:42:12 +1000 Jan Schmidt * ext/webrtc/transportsendbin.c: webrtc: Clean up pad block allocs on dispose. Release references in pad blocks and release the memory in the dispose function too, in case the state change doesn't get run (because calling the parent state change fails). 2018-06-27 03:05:55 +1000 Jan Schmidt * ext/webrtc/transportsendbin.c: webrtc: Don't deadlock on block pads on shutdown When changing state downward, we can't set pads to inactive if they are blocked, it will deadlock trying to acquire the streaming lock. Just calling the parent state change function will do the correct things to unblock probes and set the pad inactive, so let it do that and remove the probes after the parent state change function has run https://bugzilla.gnome.org/show_bug.cgi?id=796682 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * sys/winks/gstksclock.c: * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideosrc.c: winks: Update for g_type_class_add_private() deprecation in recent GLib Untested 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkcontext.c: msdk: Update for g_type_class_add_private() deprecation in recent GLib Untested. 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/insertbin/gstinsertbin.c: * gst-libs/gst/uridownloader/gstfragment.c: * gst-libs/gst/uridownloader/gsturidownloader.c: libs: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: gl: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * ext/vulkan/vkbufferpool.c: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkwindow.c: * ext/vulkan/xcb/vkwindow_xcb.c: vulkan: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: soundtouch: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlsconnection.c: dtls: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:17:26 +0200 Tim-Philipp Müller * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/icestream.c: * ext/webrtc/nicetransport.c: webrtc: Update for g_type_class_add_private() deprecation in recent GLib 2018-06-24 00:07:59 +0200 Tim-Philipp Müller * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_mjpgdemux.h: uvch264src: get rid of unnecessary private struct 2018-06-23 23:51:37 +0200 Tim-Philipp Müller * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjifmux.h: * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: jpegformat: get rid of unnecessary private structs 2018-06-21 08:49:01 -0400 Olivier Crête * ext/closedcaption/misc.h: ext/closedcaption/misc.h: Transform into UTF-8 2018-06-20 11:38:17 +0530 Nirbheek Chauhan * sys/decklink/gstdecklinkaudiosink.cpp: decklink: Fix warning about HRESULT not being unsigned int 2018-06-18 23:06:18 -0400 Nicolas Dufresne * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't set invalid seqnum on segment event https://bugzilla.gnome.org/show_bug.cgi?id=796623 2018-06-18 23:42:04 +0200 Mathieu Duponchelle * ext/soundtouch/gstpitch.cc: pitch: remove trailing whitespaces from previous commit 2018-06-18 07:39:10 +0530 Suhas Nayak * ext/soundtouch/gstpitch.cc: pitch: Flush only if there are unprocessed samples Otherwise we end up trying to flush before sample rate of SoundTouch is set https://bugzilla.gnome.org/show_bug.cgi?id=796613 2018-06-18 12:18:07 +0300 Sebastian Dröge * tests/check/elements/dash_demux.c: * tests/check/elements/dash_mpd.c: * tests/check/elements/hls_demux.c: * tests/check/elements/mssdemux.c: tests: Make sure to provide the KEY_UNIT flag always together with the SNAP flags in seeks SNAP flags alone make no sense and nowadays cause warnings. 2018-06-16 18:23:41 +0200 Mathieu Duponchelle * ext/soundtouch/gstpitch.cc: pitch: preserve seek event seqnums This was wreaking havoc when used with a downstream audiomixer. https://bugzilla.gnome.org/show_bug.cgi?id=796603 2018-06-16 18:21:58 +0200 Mathieu Duponchelle * ext/soundtouch/gstpitch.cc: pitch: fix latency reporting When max is GST_CLOCK_TIME_NONE in the query, it should not be set in the query handler, this otherwise could lead to impossible situations, where the minimum latency ended up greater than the maximum. https://bugzilla.gnome.org/show_bug.cgi?id=796603 2018-06-16 18:19:39 +0200 Mathieu Duponchelle * ext/soundtouch/gstpitch.cc: pitch: Fix single input buffer followed by EOS The flush function immediately returned when pitch->next_buffer_offset was 0. This is clearly wrong, as next_buffer_offset can be 0 when a single input buffer has been received, and no output buffer has been produced before receiving EOS. Simply remove that condition. https://bugzilla.gnome.org/show_bug.cgi?id=796603 2018-06-15 22:48:42 +0900 Seungha Yang * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix string leak gst_video_colorimetry_to_string() returns allocated memory which must be freed. https://bugzilla.gnome.org/show_bug.cgi?id=796596 2018-03-07 00:07:29 +1100 Jan Schmidt * sys/androidmedia/gstamcvideodec.c: androidmedia: Invert the transform matrix from the decoder The transform from mediacodec applies to the texture coords, but GStreamer affine meta applies to the video geometry, which is the opposite - so invert it to get display correct for decoders that require transforming 2018-02-08 17:02:17 +1100 Matthew Waters * ext/vulkan/vkinstance.c: vulkaninstance: add missing precondition to _open() 2018-06-12 11:14:25 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't query duration if program isn't active 2018-06-11 18:34:24 +0200 Mathieu Duponchelle * gst-libs/gst/webrtc/rtcsessiondescription.c: gst_webrtc_session_description_new: fix annotations 2018-06-11 13:48:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: log an ERROR if we're going to return a flow error 2018-06-07 15:31:54 -0800 Wang,Fei * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdk: vpp: remove mfxExtVPPDoUse from vpp filters. According to msdk spec, there are two ways to enable filters: 1: Filters can be enabled by adding a filter ID to mfxExtVPPDoUse. In this case, default filter parameters are used 2: Add filter configuration structures directly to mfxVideoParam. Using 1 with 2 is optional but legal. Unfortunately it won't work with some specific use cases like Detail/EdgeEnhancement. Let's stick with option2 which works fine for all VPP operations. https://bugzilla.gnome.org/show_bug.cgi?id=796468 2018-06-07 15:30:23 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: msdk: vpp: set passthrough from set_caps method for code clarity Call passthrough setting method from set_caps so that msdk initialize subroutine looks more clear. 2018-06-07 15:29:29 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: mskd: vpp: error out gracefully instead of segfaulting if Init failed Since we do the MSDK initializing in set_caps(), a FALSE return may still cause the invokation of set_caps() again and this will leads to buffer allocation and other mess-up. So make sure the msdk initialized correctly before trying to do any buffer allocation. https://bugzilla.gnome.org/show_bug.cgi?id=796465 2018-06-07 15:28:44 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: msdk: vpp: Add filters to VideoParm before doing the Query Make sure all the enabled filter structures are added in the mfxVideoParm before doing the VPPQuery so that msdk can do the input param validation https://bugzilla.gnome.org/show_bug.cgi?id=796465 2018-06-06 14:32:56 -0400 Nicolas Dufresne * tests/examples/compositor/meson.build: * tests/examples/mpegts/meson.build: * tests/examples/webrtc/meson.build: examples: Don't install non-prefixed examples 2018-06-06 14:31:43 -0400 Nicolas Dufresne * tests/examples/meson.build: * tests/examples/waylandsink/meson.build: examples: Build waylandsink example 2018-06-06 07:51:19 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Fix SEGMENT seqnum propagation * If the seek was handled upstream, use that SEGMENT seqnum * Use the proper invalid default value 2018-06-06 07:50:21 +0200 Edward Hervey * sys/vdpau/gstvdpsink.c: vdpau: Run gst-indent 2018-06-05 17:01:13 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: msdk: vpp: fix the filter count in mfxExtVPPDoUse Repostion the mfxExtVPPDoUse enabling code so that it will get the filter algorithm count correctly. 2018-06-05 14:11:13 -0400 Thibault Saunier * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.h: webrtc: Fix wrong parent classes for DTLSTransport and ICETransport Those are GObjects not GstBins 2018-06-04 16:35:41 +0800 Lyon Wang * gst-libs/gst/player/gstplayer.c: player: Fix duration-changed CRITICAL warning if duration did not actually change Check if duration is changed before emitting duration-changed signal https://bugzilla.gnome.org/show_bug.cgi?id=796491 2018-06-01 17:07:19 +1000 Jan Schmidt * sys/dvb/camconditionalaccess.h: dvb: Fix typo in comment termination 2018-06-01 16:37:13 +1000 Alessandro Decina * sys/dvb/cam.c: * sys/dvb/cam.h: * sys/dvb/camapplication.c: * sys/dvb/camapplication.h: * sys/dvb/camapplicationinfo.c: * sys/dvb/camapplicationinfo.h: * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camresourcemanager.c: * sys/dvb/camresourcemanager.h: * sys/dvb/camsession.c: * sys/dvb/camsession.h: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camtransport.c: * sys/dvb/camtransport.h: * sys/dvb/camutils.c: * sys/dvb/camutils.h: * sys/dvb/dvbbasebin.c: * sys/dvb/dvbbasebin.h: * sys/dvb/gstdvb.c: dvb: update my email address 2018-06-01 16:30:12 +1000 Alessandro Decina * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: dvb: camconditionalaccess: fix wrong license headers Update the license blurb in camconditionalaccess.[hc] from GPL to LGPL. The plugin is LGPL and the GPL header in those two files was just a copy/paste mistake. 2018-06-01 08:20:21 +0200 Edward Hervey * tests/check/libs/.gitignore: gitignore: Add h265parser test 2018-05-31 18:21:58 -0800 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: mpeg2: don't mess the StartCode only packets It is completely legal to have packets with zero sizes. Zero-sized packet indicates header with only Start Code. One eg: is user data packet. The patch allows having GstMpegVideoPacket with zero sizes. https://bugzilla.gnome.org/show_bug.cgi?id=796477 2018-05-30 16:27:37 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: msdk: vpp: don't use NV12 as vpp default output for DMABuf usecase Using NV12 layout in dmabuf mode giving mis-aligned VPP output with the media-driver. Keep the NV12 support (so that we can file the bug agianst msdk or mediadriver), but lower the ordering so that BGRA picks as default. NV12 issue can be reproduced with explicit capfilter: vidoetestsrc ! msdkvpp ! video/x-raw\(memory:DMABuf\),format=NV12 ! glimagesink 2018-05-30 16:26:27 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: msdk: enc: Add supprot for dmabuf-import MediaSDK requires all the input buffers to be pre-allocated during init phase and this won't work with current design of GStreamer or gst-msdk. But this can be done in future once we have a solution for: https://bugzilla.gnome.org/show_bug.cgi?id=795747 There is a workaround possible as per https://github.com/Intel-Media-SDK/MediaSDK/issues/155#issuecomment-381790504 by faking the mem-id during MFXInit. This patch enabling it in gst-msdk by replacing the MemID of mfxSurface with dmabuf-backed vasurface dynamically. Important: v4l2 ! msdkenc won't work without a copy because of the GMMLib (https://github.com/intel/gmmlib) memory restrictions. https://bugzilla.gnome.org/show_bug.cgi?id=794817 2018-05-30 16:24:24 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: msdk: vpp: Add supprot for dmabuf-import MediaSDK requires all the input and output buffers to be pre-allocated during init phase and this won't work with current design of GStreamer or gst-msdk. But this can be done with https://bugzilla.gnome.org/show_bug.cgi?id=795747 There is a workaround possible as per https://github.com/Intel-Media-SDK/MediaSDK/issues/155#issuecomment-381790504 by faking the mem-id during MFXInit. This patch do this in gst-msdk by replacing the MemID of mfxSurface with dmabuf-backed vasurface dynamically. Important: v4l2 ! msdkvpp won't work without a copy because of the GMMLib (https://github.com/intel/gmmlib) memory restrictions. https://bugzilla.gnome.org/show_bug.cgi?id=794817 2018-05-30 16:23:44 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkallocator_libva.h: msdk: Add method to replace internal VASurface of mfxFrameSurface Added a utility method to replace the MemID (interanl VASurfaceID) associated with the mfxFrameSurface. This is usefull for dmabuf-import where we need to replace the memID dynamically https://bugzilla.gnome.org/show_bug.cgi?id=794817 2018-05-30 16:22:49 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkallocator_libva.h: msdk: Add method to export dmabuf to VASurface Exporting DRM_PRIME fd to VASurface requires direct invocation of VA api VACreateSurface with VASurfaceAttribExternalBufferDescriptor and other necessary surface attributes. https://bugzilla.gnome.org/show_bug.cgi?id=794817 2018-05-29 13:03:54 +0200 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: webrtcbin: copy sticky events on our ghostpads This lets users call gst_pad_get_current_caps on newly-added pads to easily determine what to plug them into. We cannot copy sticky events unconditionally in core, see #719437 https://bugzilla.gnome.org/show_bug.cgi?id=796387 2017-07-10 16:56:26 +0900 Hosang Lee * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Set connection-speed value as current download rate if set If connection-speed property is in use, this value should be used as the current download rate since subclasses might read it to figure out which playlist variant they will use. https://bugzilla.gnome.org/show_bug.cgi?id=784592 2018-05-28 15:55:57 +0200 Edward Hervey * ext/closedcaption/gstcea708decoder.c: * ext/closedcaption/gstceaccoverlay.c: * ext/closedcaption/misc.h: closedcaption: Fix compilation without debugging 2015-03-11 18:00:08 +0800 Edward Hervey * ext/closedcaption/Makefile.am: * ext/closedcaption/gstcea708decoder.c: * ext/closedcaption/gstcea708decoder.h: * ext/closedcaption/gstceaccoverlay.c: * ext/closedcaption/gstceaccoverlay.h: * ext/closedcaption/gstclosedcaption.c: * ext/closedcaption/meson.build: ceaccoverlay: New CEA-708 Closed Caption decoder and overlayer This new element allows decoding and overlaying CEA-708 Closed Caption streams over video. * Supports CDP and cc_data closedcaption/x-cea-708 streams * Uses pango to render CC stream * Support GstVideoOverlayComposition meta if downstream supports is Tested on various test files. Remains to be fixed/improved: * Switch to GstByteReader (for code safety) * Switch to GString (instead of manual pango string construction) * Move pango/rendering code outside of main 708 decoder file (so that actual CC parser/decoder can be (re)used in other scenarios). Initial patches and improvements by: * CableLabs RUIH-RI Team * Steve Maynard * cjun.wang" https://bugzilla.gnome.org/show_bug.cgi?id=704881 2018-05-28 14:16:48 +0100 Tim-Philipp Müller * ext/closedcaption/meson.build: closedcaption: fix meson build 2018-03-19 10:56:31 +0100 Edward Hervey * ext/closedcaption/Makefile.am: * ext/closedcaption/gstclosedcaption.c: * ext/closedcaption/gstline21dec.c: * ext/closedcaption/gstline21dec.h: closedcaption: Add new "line 21 VBI" CC decoder Allows detecting and extracting CEA608 closed caption present on the VBI of analog NTSC SD signals. 2018-03-19 10:55:06 +0100 Edward Hervey * ext/closedcaption/decoder.c: * ext/closedcaption/decoder.h: * ext/closedcaption/misc.h: closedcaption: zvbi: Add gst-debug category to zvbi code And adapt their logging system to go through it 2018-03-19 10:53:52 +0100 Edward Hervey * ext/closedcaption/decoder.c: * ext/closedcaption/decoder.h: closedcaption: zvbi: Disable unused legacy bit slicer The code only uses the new 'optimized' bit slicer 2018-03-19 10:52:08 +0100 Edward Hervey * ext/closedcaption/raw_decoder.c: closedcaption: zvbi: Enforce strict line21 CC detection zvbi switched to a lot more flexible CC detection in VBI. The problem is that it returns a *lot* of non-VBI lines as containing CC which isn't the case. 2018-03-22 15:35:45 +0100 Edward Hervey * ext/closedcaption/misc.h: closedcaption: zvbi: Comment out bogus redefinition All this code should be converted to glib eventually, but for now just comment out a function which isn't even used 2018-03-20 09:01:25 +0100 Edward Hervey * ext/closedcaption/bit_slicer.c: closedcaption: zvbi: Remove dead code * RGB8 is never used * some inline functions were never used 2018-03-15 07:07:16 +0100 Edward Hervey * ext/closedcaption/Makefile.am: * ext/closedcaption/bcd.h: * ext/closedcaption/bit_slicer.c: * ext/closedcaption/bit_slicer.h: * ext/closedcaption/decoder.c: * ext/closedcaption/decoder.h: * ext/closedcaption/macros.h: * ext/closedcaption/misc.h: * ext/closedcaption/raw_decoder.c: * ext/closedcaption/raw_decoder.h: * ext/closedcaption/sampling_par.c: * ext/closedcaption/sampling_par.h: * ext/closedcaption/sliced.h: closedcaption: Include zvbi raw vbi decoder code Current code from zapping/zvbi as of 2018-03-14. Files copied are all LGPL v2+. Changes from original zvbi code: * Switch to gst-debug logging system * Use glib for endianness detection * Fix compilation warnings 2018-05-28 11:09:45 +0100 Tim-Philipp Müller * ext/closedcaption/meson.build: * ext/meson.build: closedcaption: add meson build files 2018-03-08 15:22:47 +0100 Edward Hervey * configure.ac: * ext/Makefile.am: * ext/closedcaption/Makefile.am: * ext/closedcaption/gstccextractor.c: * ext/closedcaption/gstccextractor.h: * ext/closedcaption/gstclosedcaption.c: ext: New ccextractor element Allows extracting GstVideoCaptionMeta from a stream and outputs it to a standalone stream. Part of a new 'ext' closedcaption plugin, since more features are going to be added, which will depend on external dependencies such as pango. 2018-05-27 20:34:50 +0100 Tim-Philipp Müller * ext/webrtc/gstwebrtcbin.c: webrtcbin: rtpstorage takes a 64-bit integer for "size-time" property https://bugzilla.gnome.org/show_bug.cgi?id=796429 2018-05-25 19:49:34 +0100 Tim-Philipp Müller * ext/directfb/Makefile.am: * tests/examples/directfb/Makefile.am: directfb: don't error out for warnings in system headers On debian system headers trigger compiler warnings like these, don't error out on them: /usr/include/directfb/direct/os/linux/glibc/waitqueue.h:95:1: note: previous definition of ‘direct_waitqueue_signal’ was here 2018-05-28 10:59:01 +0200 Edward Hervey * .gitignore: gitignore: Add new webrtc example 2018-05-23 21:15:09 +0200 Christoph Reiter * sys/wasapi/gstwasapisink.c: wasapisink: recover from low buffer levels in shared mode In case the wasapi buffer levels got low in shared mode we would still wait until more buffer is available until writing something in it, which means we could never catch up and recover. Instead only wait for a new buffer in case the existing one is full and always write what we can. Also don't loop until all data is written since the base class can handle that for us and under normal circumstances this doesn't happen anyway. This only works in shared mode, as in exclusive mode we have to exactly fill the buffer and always have to wait first. This fixes noisy (buffer underrun) playback with the wasapisink under load. https://bugzilla.gnome.org/show_bug.cgi?id=796354 2018-05-24 11:04:08 +0200 Christoph Reiter * sys/wasapi/gstwasapiutil.c: wasapisink: fix a rounding error when calculating the buffer frame count The calculation for the frame count in the non-aligned case resulted in a one too low buffer frame count. This resulted in: 1) exclusive mode not working as the frame count has to match exactly there. 2) Buffer underruns in shared mode as the current write() code doesn't handle catching up to low buffer levels (fixed in the next commit) To fix just use the wasapi API to get the buffer size which will always be correct. https://bugzilla.gnome.org/show_bug.cgi?id=796354 2018-05-23 21:10:00 +0200 Christoph Reiter * sys/wasapi/gstwasapisink.c: wasapisink: fix missing unlock in case IAudioClient_Start fails https://bugzilla.gnome.org/show_bug.cgi?id=796354 2018-05-22 22:58:22 +0200 Christoph Reiter * sys/wasapi/gstwasapiutil.h: wasapi: use FAILED to detect errors S_FALSE is a valid return value which does not indicate an error. For example IAudioClient_Stop() returns S_FALSE when it is already stopped. Use the FAILED macro instead which just checks if an error occured or not. This fixes spurious warnings when using the wasapisink element. https://bugzilla.gnome.org/show_bug.cgi?id=796280 2018-05-22 22:12:34 +0200 Christoph Reiter * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Don't pass CoTaskMemFree to g_clear_pointer CoTaskMemFree has a different calling convention than GDestroyNotify and things crash at least with MinGW. https://bugzilla.gnome.org/show_bug.cgi?id=796280 2018-05-21 14:42:56 +0100 Tim-Philipp Müller * ext/webrtc/meson.build: meson: fix libnice fallback options 2018-05-21 12:07:04 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add 'nls' option to disable translations And enable by default. Was implicitly disabled because ENABLE_NLS was not defined. 2018-05-19 12:24:40 +0100 Tim-Philipp Müller * ext/webrtc/meson.build: webrtc: add some default options for libnice fallback The tests are not very reliable, so disable for now. 2018-05-18 18:42:43 +0100 Russel Winder * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: Add GIR generation array anotations For function parameters that are known to be arrays. https://bugzilla.gnome.org/show_bug.cgi?id=796221 2018-05-19 11:03:08 +0200 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix string copy wiht strlen() argument This is a new warning introduced by gcc 8 We already check just before that we have enough space, just do a regular memcpy with the full string size. camswclient.c:87:3: error: ‘strncpy’ specified bound depends on the length of the source argument [-Werror=stringop-overflow=] 2014-04-18 10:38:47 +0200 Antoine Jacoutot * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/mpegts/Makefile.am: libs: g-ir-scanner: do not hardcode libtool path https://bugzilla.gnome.org/show_bug.cgi?id=726571 2018-05-17 21:36:51 +0900 Seungha Yang * configure.ac: nvdec/nvenc: Bump up supported CUDA Toolkit version Add CUDA 9.2 to configure.ac https://bugzilla.gnome.org/show_bug.cgi?id=796202 2018-05-17 21:49:25 +0900 Seungha Yang * sys/nvenc/gstnvenc.c: nvenc: Fix build warning error 'cuDeviceComputeCapability' was deprecated as of CUDA 5.0 gstnvenc.c: In function ‘gst_nvenc_create_cuda_context’: gstnvenc.c:290:9: error: ‘cuDeviceComputeCapability’ is deprecated [-Werror=deprecated-declarations] && cuDeviceComputeCapability (&maj, &min, cdev) == CUDA_SUCCESS) { ^ https://bugzilla.gnome.org/show_bug.cgi?id=796203 2018-04-23 13:30:38 -0400 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove custom get_next_time implementation GstAggregator now has the same thing in the simple implementation. https://bugzilla.gnome.org/show_bug.cgi?id=795486 2018-05-15 16:33:00 -0800 Sreerenj Balachandran * configure.ac: * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvp9dec.c: msdk: Add conditional build for vp9 decoder https://bugzilla.gnome.org/show_bug.cgi?id=796119 2018-05-15 16:32:22 -0800 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvp9dec.c: * sys/msdk/gstmsdkvp9dec.h: msdk: dec: Add VP9 decoder https://bugzilla.gnome.org/show_bug.cgi?id=796119 2018-05-15 16:31:02 -0800 Sreerenj Balachandran * configure.ac: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/msdk.h: * sys/msdk/msdk_libva.h: msdk: allow building against open sourced msdk Building against mfx_dispatcher is used to search for headers in PREFIX/include/mfx/ only (commit: 62f04e801bd7e247102ac67df889bee33ab74ff7), but it is just PREFIX/include with open source msdk version. https://bugzilla.gnome.org/show_bug.cgi?id=796118 2018-05-11 15:49:05 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Fix sync of updated manifest from previous one _get_next_fragment_timestamp() returns relative timestamp to period start. But gst_mpd_client_stream_seek() uses absolute MPD timeline. https://bugzilla.gnome.org/show_bug.cgi?id=781183 2018-05-10 23:08:10 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Support period change in live playlist Regardless of LIVE or VOD, "a manifest has next period but currently EOSed" state is meaning that it's time to advance period. Previous behavior of adpativedemux, however, was able to period advancing only for VOD case, since the adaptivedemux tried to update and wait new manifest without respecting existence of the next period. https://bugzilla.gnome.org/show_bug.cgi?id=781183 2018-05-11 20:54:35 +0200 Olivier Crête * ext/srtp/gstsrtpdec.c: srtp: Add "roc" caps field to the gst-launch example The currrent example was broken since 1.8.3 it seems. https://bugzilla.gnome.org/show_bug.cgi?id=786304 2018-05-11 17:39:35 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix crash with closed-captions signal and 10-bit input Only free the parser if there is one. If the format hadn't changed but had always been 10-bit, there might genuinely be no parser. https://bugzilla.gnome.org/show_bug.cgi?id=796030 2018-05-11 12:30:35 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Don't check for closed captions when there's no signal Otherwise the gst_decklink_video_format_from_type() call spams the logs with one "Unknown pixel format 0x0" line per frame. 2018-05-11 09:54:22 +0200 Edward Hervey * ext/opencv/gstgrabcut.cpp: opencv: Fix memcpy within C++ Explicitly cast to void* because GCC 8 is (rightfully) upset that this is "writing to an object of type ‘...’ with no trivial copy-assignment". Caused by the new "class-memaccess" warning 2017-11-29 17:57:52 +0100 Mathieu Duponchelle * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * gst-libs/gst/webrtc/webrtc_fwd.h: * tests/check/elements/webrtcbin.c: * tests/examples/webrtc/Makefile.am: * tests/examples/webrtc/meson.build: * tests/examples/webrtc/webrtctransceiver.c: webrtcbin: implement support for FEC and RTX https://bugzilla.gnome.org/show_bug.cgi?id=795044 2018-05-07 14:12:10 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk:dec: Add new propery to dump frames in decoded order The new property "output-order" can be set to either "display" order which is the default where frames will be outputting in display order, or "decoded-order" which will be outputting the frames in decoded order. The "decoded order" output is generally useful for debugging. But there are few customers who use it for low-latency streaming. For eg if the customer already knows that the stream doesn't have b-frames (which means no algorithm requires for display order calculation), then they can use "decoded-order" output to skip some of the DPB logic to avoid the frame accumulation at start-up. The root cause of the above issue is a bit of unclarity in h264 spec + lazy implementation of many H264 encoders; This is well handled in gstreamer-vaapi using "low-latency" property: https://bugzilla.gnome.org/show_bug.cgi?id=762509 https://bugzilla.gnome.org/show_bug.cgi?id=795783 2018-05-07 14:11:34 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: msdk: dec: inform msdk if the buffer contains a complete frame For packetized input, inform the msdk that the buffer has a complete frame or complementary field pairs. For decoding, this means that the decoder can proceed with this buffer without waiting for the start of the next frame, which effectively reduces decoding latency. https://bugzilla.gnome.org/show_bug.cgi?id=795783 2018-05-07 14:11:14 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: msdk: dec: reset async depth to one Currently we use an async depth of 4 as default (based on recommendations in msdk apps), which indicates how many asynchronous operations an application performs before the application explicitly synchronizes the result. As a result, we queue four frames in decoder which might not be good approach for live streaming. This patch reset the async-depth to 1 as default so that we do sync for each frame we decode without queuing. Customer can play with already exposed "async-depth" property for other use cases https://bugzilla.gnome.org/show_bug.cgi?id=795783 2018-05-07 17:53:32 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Set video-meta option on buffer pool configuration correctly CID 1435451 2018-05-07 09:17:16 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: First override set/get_property vfuncs, then install properties Gives assertions otherwise. 2016-02-02 19:18:26 +0200 Kyrylo Polezhaiev * gst/gdp/dataprotocol.c: * gst/gdp/gstgdppay.c: gdp: ignore timestamp of event This field is not used and will be removed in 2.0 API. https://bugzilla.gnome.org/show_bug.cgi?id=761462 2018-05-06 16:49:43 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Some more documentation fixes 2018-05-06 16:44:47 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: expose converter-config on convert pads This in order to allow users control over the conversion process, for example the scaling method. 2018-05-06 16:43:32 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix up documentation some more 2018-05-06 16:22:01 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Clean up header and update docs a bit 2018-05-06 16:05:28 +0200 Sebastian Dröge * ext/gl/gstglstereomix.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Rename get_output_buffer() to create_output_buffer() For consistency with GstAudioAggregator. 2018-05-06 15:49:36 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Validate pool configuration and create a new pool if it just does not work Also pass the given allocator to the pool if one is set. 2018-05-06 15:21:24 +0200 Sebastian Dröge * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/iqa/iqa.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: * gst/compositor/compositorpad.h: videoaggregator: Switch to a GstVideoAggregatorConvertPad subclass This moves all the conversion related code to a single place, allows less code-duplication inside compositor and makes the glmixer code less awkward. It's also the same pattern as used by GstAudioAggregator. 2017-02-23 11:48:13 +0100 Fabien Dessenne * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: support fullscreen Add the fullscreen property that makes the sink displayed all across the output. https://bugzilla.gnome.org/show_bug.cgi?id=688190 2018-05-05 17:55:58 +0200 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-kms.xml: docs: plugins: update 2018-05-05 17:47:55 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Include string.h for memset() gstglmixer.c:143:5: error: implicit declaration of function ‘memset’ [-Werror=implicit-function-declaration] memset (prepared_frame, 0, sizeof (GstVideoFrame)); ^~~~~~ gstglmixer.c:143:5: error: incompatible implicit declaration of built-in function ‘memset’ [-Werror] 2018-05-05 19:30:42 +0530 Nirbheek Chauhan * meson.build: * meson_options.txt: * tests/check/meson.build: meson: Update option names to omit disable_ and with- prefixes Also yield common options to the outer project (gst-build in our case) so that they don't have to be set manually. 2018-05-05 14:32:59 +0000 Jan Schmidt * configure.ac: * tests/examples/Makefile.am: waylandsink: Only build if gtk-3.0 was built with wayland target Check in configure if the gtk-3.0 has wayland support, and don't build the waylandsink example if it doesn't. 2018-05-05 16:31:13 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Remove sink_non_alpha_caps class field This is only used for caching reasons and should never actually be in the public API. If this is ever a bottleneck later, caching around a class private struct could be implemented. 2018-05-05 16:14:14 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: Move needs_alpha pad field to the private struct And also trigger renegotiation if the value has changed. https://bugzilla.gnome.org/show_bug.cgi?id=795836 2018-05-05 15:49:17 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * ext/iqa/iqa.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: Move aggregated_frame and the pad buffer into the private struct The aggregated_frame is now called prepared_frame and passed to the prepare_frame and cleanup_frame virtual methods directly. For the currently queued buffer there is a method on the video aggregator pad now. 2018-05-05 18:48:13 +0530 Nirbheek Chauhan * ext/webrtc/meson.build: meson: Add a subproject fallback for libnice in webrtc 2018-05-05 12:16:35 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Move frame/texture mapping/unmapping into prepare/clean_frame Previously we assumed that the texture ID is going to be valid even after unmapping the frame, as it was immediately unmapped before even being used. Now we only unmap once we're done with the texture. 2018-05-05 14:37:06 +0900 Seungha Yang * sys/nvdec/gstnvdec.c: nvdec: Add support VP8/VP9 decoding NVIDIA video decoder supports VP8 and VP9 decoding https://bugzilla.gnome.org/show_bug.cgi?id=795823 2018-05-05 01:59:53 +1000 Jan Schmidt * ext/srtp/gstsrtpenc.c: srtpenc: Handle session object disappearing During element shutdown, the srtp encryption session object can be cleaned up. In that case, return GST_FLOW_FLUSHING from the chain function. Also properly return GST_FLOW_ERROR upstream during actual errors. https://bugzilla.gnome.org/show_bug.cgi?id=790508 2018-05-04 17:18:12 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Move property storage to private pad struct 2018-05-04 16:46:00 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * tests/check/elements/compositor.c: * tests/examples/playout.c: videoaggregator: Rename ignore-eos pad property to repeat-after-eos What it does is to repeat the last frame forever after EOS, it does not literally ignore EOS. 2018-05-04 16:13:16 +0200 Sebastian Dröge * ext/gl/gstglmosaic.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: videoaggregator: Move GstChildProxy implementations into leaf classes Not every subclass will want to expose the pads via the interface. https://bugzilla.gnome.org/show_bug.cgi?id=739011 2018-05-04 14:53:21 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst-libs/gst/video/meson.build: videoaggregator: Get rid of separate header for the aggregator pad 2015-03-16 16:20:44 +0100 Aurélien Zanelli * gst/mpegtsdemux/tsdemux.c: tsdemux: ignore sparse stream when checking for initial timestamp Unless we only have sparse streams. In this case we will consider them. It fixes a bug happening when first observed timestamp comes from a sparse stream and other streams don't have a valid timestamp, yet. Thus leading the timestamp from sparse stream to be the start of the following segment. In this case, if the timestamp is really bigger than non-sparse stream (audio/video), it will lead the pipeline to clip samples from the non-parse stream. https://bugzilla.gnome.org/show_bug.cgi?id=744469 2018-05-04 22:24:18 +1000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvsrc: Don't use the GST_EVENT_TIMESTAMP Store a PTS of a highlight event directly into the event structure, rather than the GST_EVENT_TIMESTAMP that will probably be removed in GStreamer 2.0, and is hardly used. https://bugzilla.gnome.org/show_bug.cgi?id=761477 2014-10-27 09:41:51 +0530 Vineeth T M * gst/videofilters/gstscenechange.c: scenechange: improve detection algorithm Scene detection determines, how many scenes have changed in a video. It compared the previous frame with present frame to find out the score and a threshold is calculated for the same. I have added an intermediate condition which helps in improving the positive detections. https://bugzilla.gnome.org/show_bug.cgi?id=735094 2018-05-02 14:52:24 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: enc: Add dmabuf-export support Current implementation is only supporting dmabuf-export through DMABufCapsfeatures. MSDK dmabuf fds are not mappable and dmabuf-import is not yet supported too (#794817). https://bugzilla.gnome.org/show_bug.cgi?id=795707 2018-04-30 12:40:32 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdkvpp: Disable passthrough if memory capsfeature changes So far msdk produced dmabuf fds are non-mappable. If user wants to download the content of underlined surfaces, dmabufcapsfeature negotiated pipeline will fail. So if the input surface is dmabuf and downstream doesn't have support for dmabuf capsfeatures, we do the vpp (no passthrough) and produce the mappable videomemory buffers. https://bugzilla.gnome.org/show_bug.cgi?id=794946 2018-04-30 12:39:52 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdk: vpp: Add dmabuf-export support Currenly, the dmabuf buffer pool can be negotiated only through DMABuf capsfeatures. This will not allow to negotiate dmabuf support with v4l2src (v4l2src ! msdkvpp) where v4l2src always export the dmabuf based memory with out using the DMABuf capsfeatures. So it requires fix based on: https://bugzilla.gnome.org/show_bug.cgi?id=794817 https://bugzilla.gnome.org/show_bug.cgi?id=794946 2018-04-28 01:15:44 +1000 Jan Schmidt * sys/nvdec/gstnvdec.c: nvdec: Add colorimetry info to the caps Output any colorimetry information extracted from the stream into the caps. 2018-04-27 14:41:14 +1000 Jan Schmidt * sys/nvdec/gstnvdec.c: nvdec: Use gst_video_info_to_caps to build caps. Don't build caps directly, as that won't add any GstVideoInfo newer fields (such as colorimetry) automatically. 2018-03-08 20:23:05 +0000 Nicolas Dufresne * sys/kms/gstkmsutils.c: kmssink: Add 24bit RGB support https://bugzilla.gnome.org/show_bug.cgi?id=794186 2018-04-25 12:26:43 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: msdk: vpp: Add YV12, YUY2 and BGRx formats to template 2018-04-24 16:46:20 -0800 Sreerenj Balachandran * sys/msdk/msdk.c: msdk: Add more video format mapping BGRx format can be supported with Msdk's RGB4 2018-04-24 16:45:24 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: msdk: vpp: Allocation query fixes prpose_allocation: -- always instantiate a pool for for upstream -- use async_depth + 1 as min buffer count decide_allocation: -- always create a new bufferpool for source pad. Each of the msdk element has to create it's own mfxsurfacepool which is an msdk contraint. For eg: Each Msdk component (vpp, dec and enc) will invoke the external Frame allocator for video-memory usage So sharing the pool between gst-msdk elements might not be a good idea. https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-04-25 15:05:38 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Fix decide_allocation to support NULL pool We were assuming that NULL pool meant that downstream didn't reply. Update the pool index 0 instead of adding at the end. Otherwise we ended up letting basesrc decide, which would pick the blocksize as a size (4096) instead of the image size. https://bugzilla.gnome.org/show_bug.cgi?id=795327 2018-04-25 13:36:01 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Fix support for applevncserver This server uses an unknown 003.889 protocol version. This patch fixes the version validation in order to simply fallback to 3.3 as suggested by the spec. 2018-04-24 14:05:30 -0400 Xavier Claessens * ext/aom/meson.build: * ext/assrender/meson.build: * ext/bs2b/meson.build: * ext/bz2/meson.build: * ext/chromaprint/meson.build: * ext/curl/meson.build: * ext/dash/meson.build: * ext/directfb/meson.build: * ext/dtls/meson.build: * ext/dts/meson.build: * ext/faac/meson.build: * ext/faad/meson.build: * ext/fdkaac/meson.build: * ext/flite/meson.build: * ext/fluidsynth/meson.build: * ext/gl/meson.build: * ext/gsm/meson.build: * ext/hls/meson.build: * ext/iqa/meson.build: * ext/kate/meson.build: * ext/ladspa/meson.build: * ext/libde265/meson.build: * ext/libmms/meson.build: * ext/lv2/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: * ext/opencv/meson.build: * ext/openh264/meson.build: * ext/openjpeg/meson.build: * ext/opus/meson.build: * ext/resindvd/meson.build: * ext/rsvg/meson.build: * ext/rtmp/meson.build: * ext/sbc/meson.build: * ext/smoothstreaming/meson.build: * ext/soundtouch/meson.build: * ext/spandsp/meson.build: * ext/srt/meson.build: * ext/srtp/meson.build: * ext/ttml/meson.build: * ext/voaacenc/meson.build: * ext/vulkan/meson.build: * ext/wayland/meson.build: * ext/webp/meson.build: * ext/webrtcdsp/meson.build: * ext/x265/meson.build: * ext/zbar/meson.build: * gst/accurip/meson.build: * gst/adpcmdec/meson.build: * gst/adpcmenc/meson.build: * gst/aiff/meson.build: * gst/asfmux/meson.build: * gst/audiobuffersplit/meson.build: * gst/audiofxbad/meson.build: * gst/audiolatency/meson.build: * gst/audiomixmatrix/meson.build: * gst/audiovisualizers/meson.build: * gst/autoconvert/meson.build: * gst/bayer/meson.build: * gst/camerabin2/meson.build: * gst/coloreffects/meson.build: * gst/compositor/meson.build: * gst/debugutils/meson.build: * gst/dvbsuboverlay/meson.build: * gst/dvdspu/meson.build: * gst/faceoverlay/meson.build: * gst/festival/meson.build: * gst/fieldanalysis/meson.build: * gst/freeverb/meson.build: * gst/frei0r/meson.build: * gst/gaudieffects/meson.build: * gst/gdp/meson.build: * gst/geometrictransform/meson.build: * gst/id3tag/meson.build: * gst/inter/meson.build: * gst/interlace/meson.build: * gst/ivfparse/meson.build: * gst/ivtc/meson.build: * gst/jp2kdecimator/meson.build: * gst/jpegformat/meson.build: * gst/librfb/meson.build: * gst/midi/meson.build: * gst/mpegdemux/meson.build: * gst/mpegpsmux/meson.build: * gst/mpegtsdemux/meson.build: * gst/mpegtsmux/meson.build: * gst/mxf/meson.build: * gst/netsim/meson.build: * gst/onvif/meson.build: * gst/pcapparse/meson.build: * gst/pnm/meson.build: * gst/proxy/meson.build: * gst/rawparse/meson.build: * gst/removesilence/meson.build: * gst/sdp/meson.build: * gst/segmentclip/meson.build: * gst/siren/meson.build: * gst/smooth/meson.build: * gst/speed/meson.build: * gst/stereo/meson.build: * gst/subenc/meson.build: * gst/timecode/meson.build: * gst/videofilters/meson.build: * gst/videoframe_audiolevel/meson.build: * gst/videoparsers/meson.build: * gst/videosignal/meson.build: * gst/vmnc/meson.build: * gst/y4m/meson.build: * gst/yadif/meson.build: * meson.build: * sys/bluez/meson.build: * sys/d3dvideosink/meson.build: * sys/decklink/meson.build: * sys/directsound/meson.build: * sys/dvb/meson.build: * sys/fbdev/meson.build: * sys/ipcpipeline/meson.build: * sys/kms/meson.build: * sys/msdk/meson.build: * sys/shm/meson.build: * sys/uvch264/meson.build: * sys/wasapi/meson.build: * sys/winks/meson.build: * sys/winscreencap/meson.build: Meson: Generate pc file for all plugins in bad https://bugzilla.gnome.org/show_bug.cgi?id=794568 2018-04-25 11:00:00 +0100 Tim-Philipp Müller * meson.build: meson: use -Wl,-Bsymbolic-functions where supported Just like the autotools build. 2018-03-06 15:18:46 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: h264parse: add constrained and progressive profiles Those profiles have been added in the version 2012-01 and 2011-06 of the AVC spec. https://bugzilla.gnome.org/show_bug.cgi?id=794127 2018-02-27 10:51:07 +0800 Jun Xie * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: deadlock in multi-instance scenario Fixed queue iterator issue and set context state to GSTCURL_MULTI_LOOP_STATE_RUNNING in case other instance are in running state. https://bugzilla.gnome.org/show_bug.cgi?id=793863 2018-04-25 02:43:26 +1000 Jan Schmidt * sys/nvenc/gstnvh264enc.c: * sys/nvenc/gstnvh265enc.c: nvenc: Remove GST_USE_UNSTABLE_API defines GstGL is no longer unstable API since moving to -base 2018-04-25 02:25:16 +1000 Jan Schmidt * configure.ac: configure: Fix nvenc GL check Make the nvenc OpenGL usage rely on the the same condition that the automake USE_OPENGL conditional checks, as the USE_OPENGL doesn't actually get set into the configure script, so it can't check that 2018-04-25 02:42:43 +1000 Jan Schmidt * sys/nvenc/gstnvh264enc.c: * sys/nvenc/gstnvh265enc.c: nvenc: Use the HAVE_NVENC_GST_GL define instead of HAVE_GST_GL Fix compiling against the GL interop by gating includes on the right header 2018-04-06 23:22:26 +0900 Seungha Yang * sys/nvenc/Makefile.am: * sys/nvenc/gstnvenc.c: * sys/nvenc/gstnvh265enc.c: * sys/nvenc/gstnvh265enc.h: nvh265enc: Add Nvidia GPU based HEVC encoder https://bugzilla.gnome.org/show_bug.cgi?id=795037 2018-04-07 00:05:46 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvh264enc.c: nvencbase: Define sinkpad template in subclass https://bugzilla.gnome.org/show_bug.cgi?id=795037 2018-04-06 23:49:12 +0900 Seungha Yang * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvenc.c: * sys/nvenc/gstnvenc.h: * sys/nvenc/gstnvh264enc.c: nvenc: Add debug catagory for nvh264enc https://bugzilla.gnome.org/show_bug.cgi?id=795037 2014-05-29 16:54:59 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/mpegts/gst-atsc-section.h: docs: mpegts: add atsc docs https://bugzilla.gnome.org/show_bug.cgi?id=730940 2018-03-09 12:23:04 +0100 Edward Hervey * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Add support for extracting Closed Caption If the "output-cc" property is set to TRUE and there is CC present in the VBI Ancillary Data, they will be extracted and set on the outgoing buffer as GstVideoCaptionMeta. Only CDP packets are supported. https://bugzilla.gnome.org/show_bug.cgi?id=773863 2018-04-22 18:28:13 +0100 Tim-Philipp Müller * configure.ac: configure: look for right version of plugins, not >= 0.11 Well, just look for same version as we require for -base which should be good enough. Also use plugins base req for -base libs. 2018-04-22 18:27:37 +0100 Tim-Philipp Müller * ext/dash/gstmpdparser.c: * ext/dts/gstdtsdec.c: * ext/faad/gstfaad.c: * gst/freeverb/gstfreeverb.c: * sys/applemedia/vtdec.c: * sys/winks/gstksvideodevice.c: * sys/winscreencap/gstdx9screencapsrc.c: Fix code indentation 2018-04-22 18:25:34 +0100 Tim-Philipp Müller * sys/winscreencap/gstdx9screencapsrc.c: dx9screenscapsrc: consolidate UNLOCK 2018-04-21 11:03:54 +0100 Tim-Philipp Müller * gst/debugutils/gsttestsrcbin.c: testsrcbin: typo fixes 2018-04-21 11:00:58 +0100 Tim-Philipp Müller * gst/debugutils/gsttestsrcbin.c: testsrcbin: fix bug setting stream flags We would mark all streams with FLAG_UNSELECT as we would check the pointer for non-NULLness not the dereferenced stream number (and the pointer is always non-NULL). The intention here was presumably to mark the first stream of each type as SELECT and the others as UNSELECT by default. CID 1434970. 2018-04-21 10:51:03 +0100 Tim-Philipp Müller * gst/debugutils/gsttestsrcbin.c: testsrcbin: fix memory leak CID 1434971 2018-04-20 21:51:34 -0300 Thibault Saunier * ext/iqa/iqa.c: * ext/iqa/iqa.h: dssim: Add a dssim-error-threshold property If that threshold is reached, `iqa` will emit an ERROR message on the bus, stopping any processing. This way we can do a simpler comparison with gst-validate and the process will error out if the specified threshold is reached. https://bugzilla.gnome.org/show_bug.cgi?id=795428 2018-04-20 11:46:07 +0100 Tim-Philipp Müller * sys/fbdev/meson.build: meson: fbdev: fix 'invalid keyword argument' meson warnings Required is not a valid kwarg for cc.has_header() 2018-04-19 20:58:55 -0300 Thibault Saunier * gst/debugutils/gsttestsrcbin.c: testsrcbin: Do not use G_DECLARE_ as it requires GLib 2.44 Fixes https://bugzilla.gnome.org/show_bug.cgi?id=795382 2018-04-18 15:53:34 -0300 Thibault Saunier * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gsttestsrcbin.c: * gst/debugutils/meson.build: debugutils: Add a testsrcbin element This is a simple Bin that will expose audiotestsrc or videotestsrc based on what is asked by the user either through the GstURIHandler API or through the "stream-types" property. This element also provides GstStream and GstStreamCollection so it is nicely usable from playbin3. https://bugzilla.gnome.org/show_bug.cgi?id=795366 2018-04-18 03:43:57 -0700 Devarsh Thakkar * sys/kms/gstkmssink.c: kmssink: Add new entry for Xilinx DRM Driver This adds entry for new DRM driver from xilinx called "xlnx" which supports atomic modesetting. We have kept entry for older DRM driver "xilinx_drm" for backward compatility with a note describing deprecation. Signed-off-by: Devarsh Thakkar https://bugzilla.gnome.org/show_bug.cgi?id=795228 2018-04-18 15:03:19 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisrc.c: wasapisrc: Don't provide a clock based on WASAPI's clock The clock seems to have a lot of drift (or we're using it incorrectly) which causes buffers to be late on the sink and get dropped. Disable till someone can investigate whether our usage of the API is incorrect (it looked correct to me) or if something is wrong. 2018-03-22 10:18:57 +0200 Snir Sheriber * configure.ac: * sys/nvdec/Makefile.am: * sys/nvdec/dynlink_cuda.c: * sys/nvdec/dynlink_nvcuvid.c: * sys/nvdec/gstnvdec.c: * sys/nvdec/gstnvdec.h: nvdec/nvenc: Support CUDA Toolkit 9 Since cuda-tools 9.0, nvcuvid.h is replaced by dynlink_nvcuvid.h. This patch changes nvdec to use run-time dynamic linking if cuda-tools version >= 9. nvenc does not require any change since its necessary headers are still available. https://bugzilla.gnome.org/show_bug.cgi?id=791724 2018-04-16 14:37:21 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkmjpegdec.c: msdk: jpegdec: Fix non-interleaved sample decode Using the default value (InterleavedDec == MFX_SCANTYPE_UNKNOWN) causing issues with non-interleaved sample decode. Ideally the usage of MFXVideoDECODE_DecodeHeader should fix these type of issue, but it seems to be not. But hardcoding the InterleaveDec to MFX_SCANTYPE_NONINTERLEAVED is fixing the problem and fortunately msdk seems to be taking care of Interleaved samples too .So let's hardcode it for now. https://bugzilla.gnome.org/show_bug.cgi?id=793787 2018-04-16 14:00:39 -0800 Sreerenj Balachandran * gst/jpegformat/gstjpegparse.c: jpegparse: Fix APP1 marker segment parsing Reposition the bytereader for proper skipping of APP1 marker segment if it is not Exif. https://bugzilla.gnome.org/show_bug.cgi?id=795117 2018-04-16 19:35:07 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: wasapi: Call CoIn/Uninitialize() around prepare() Seems to be required for exclusive mode and also for all initialization on Windows 7 https://bugzilla.gnome.org/show_bug.cgi?id=795274 2018-04-16 10:53:07 +0100 Tim-Philipp Müller * README: * common: Automatic update of common submodule From f0c2dc9 to ed78bee 2018-04-16 10:44:10 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/webrtc/rtcsessiondescription.h: webrtc: fix gtk-doc annotations 2018-04-15 10:06:46 +0200 Antonio Ospite * gst/pcapparse/gstpcapparse.c: pcapparse: bail out in case of fragmented packets pcapparse cannot parse fragmented IP packets correctly, in particular it will get confused when trying to parsing fragments as standalone frames in two ways: 1. the first fragment will have the packet length greater than the frame size and will always be discarded; 2. fragments with non-zero offsets will be interpreted as full packets and the first part of their raw payload data will be parsed as the transport protocol header, resulting in bogus values for addresses and ports, thus evading the properties filtering on those values. This can make it difficult for users to see why the data does not get downstream. So be more explicit and just bail out when fragmented packets are encountered. https://bugzilla.gnome.org/show_bug.cgi?id=795284 2018-04-14 20:14:35 +0200 Antonio Ospite * gst/pcapparse/gstpcapparse.c: pcapparse: add some comments about the pcap format headers Since the code is full of magic add at least some guidance for newbies. https://bugzilla.gnome.org/show_bug.cgi?id=795284 2016-12-27 11:14:00 +0530 Garima Gaur * ext/resindvd/rsninputselector.c: * sys/uvch264/gstuvch264_src.c: * sys/winscreencap/gstdx9screencapsrc.c: resindvd, uvch264src, dx9screencapsrc: fix clock ref leaks in error paths https://bugzilla.gnome.org/show_bug.cgi?id=776376 2016-12-27 13:45:49 +0530 Garima Gaur * sys/bluez/gstavdtpsrc.c: bluez: avdtpsrc: fix caps leak in error code paths https://bugzilla.gnome.org/show_bug.cgi?id=776085 2018-04-06 23:22:39 +0900 Seungha Yang * gst/videoparsers/gsth265parse.c: h265parse: Make caps writable before modifying them Fix following assertion failure GStreamer-CRITICAL **: gst_structure_remove_field: assertion 'IS_MUTABLE (structure)' failed https://bugzilla.gnome.org/show_bug.cgi?id=795032 2018-04-10 10:20:52 +0100 Philippe Normand * gst/debugutils/gstfakevideosink.c: fakevideosink: explicit type cast for max-lateness property setter g_object_set() expects the parameters values to be the exact type of the property being set. 2018-04-10 05:13:17 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Handle return value of WaitForSingleObject The wait could've failed for whatever reason, we should handle that. 2018-04-10 05:09:42 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Call _Start if the client was _Reset Otherwise we will wait forever in WaitForSingleObject because we forgot to start the client again after _Stop is called in reset(). https://bugzilla.gnome.org/show_bug.cgi?id=795114 2018-04-09 17:54:05 +0200 Guillaume Desmottes * gst/debugutils/gstfakevideosink.c: fakevideosink: request an extra buffer if enable-last-sample is enabled If the 'enable-last-sample' property is enabled, fakevideosink will keep a reference on last rendered buffer which may lead to buffer starvation in the pipeline. Request one extra buffer in this case so we always have a buffer flying in the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=795109 2018-04-09 17:16:38 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Don't open the device in get_caps() We can just return the template caps till the device is opened when going from READY -> PAUSED. This fixes a CRITICAL when calling ELEMENT_ERROR before the ringbuffer is allocated. Also fixes a couple of leaks in error conditions. https://bugzilla.gnome.org/show_bug.cgi?id=794611 2018-04-06 23:01:36 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: wasapi: Only use audioclient3 when low-latency Causes glitches on very slow CPU machines or VMs, and our out-of-the-box experience should be good. https://bugzilla.gnome.org/show_bug.cgi?id=794497 2018-03-21 14:53:27 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.c: wasapi: Don't derive device period from latency time This seems to cause glitches on devices with low CPU availability, such as virtual machines. Maybe even actual machines under high load. https://bugzilla.gnome.org/show_bug.cgi?id=794497 2018-04-04 17:30:21 -0800 U. Artie Eoff * sys/msdk/gstmsdkcontext.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: fix plugin load on implementations with only HW support We can't assume that MSDK always supports SW implementation on all platforms. Thus, msdk_is_available should check for ANY implementation. https://bugzilla.gnome.org/show_bug.cgi?id=794991 2018-04-04 18:32:19 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.h: wasapi: Squelch warning about %x and HRESULT HRESULT is always a 32-bit value, as is guint. 2018-04-04 01:07:14 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapisrc: Implement loopback recording Now, when you set loopback=true on wasapisrc, the `device` property should refer to a sink (render) device for loopback recording. If the `device` property is not set, the default sink device is used. 2018-04-03 23:54:41 +0530 Nirbheek Chauhan * gst/audiolatency/gstaudiolatency.c: audiolatency: Fix wave detection in buffers -1/1000 is 0, so we were *always* detecting a buffer. 2018-04-03 23:53:24 +0530 Nirbheek Chauhan * gst/audiolatency/gstaudiolatency.c: audiolatency: Avoid bogus pts values while starting 2018-04-03 19:21:46 +0100 Tim-Philipp Müller * sys/msdk/meson.build: msdk: fix meson syntax 2018-03-22 16:04:02 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/gstmsdkvpputil.c: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: vpp : Add frame rate control https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-21 18:17:11 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/gstmsdkvpputil.c: msdk: vpp : Add force-aspect-ratio property https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-21 17:57:27 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: Add more scaling filter algorithms https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-21 17:22:18 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: vpp: Add support for horizontal and vertical mirroring https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-21 17:14:04 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdk: vpp: Add detail/edge enhancement tuning https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-21 14:45:35 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: msdk: vpp: Add ProAmp(colorbalance) support Added Hue, Saturation, Brightness and Contrast tuning support. Fixme: Add GstColorBalanceInterface support https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-06 13:52:04 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/gstmsdkvpputil.c: * sys/msdk/gstmsdkvpputil.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: * sys/msdk/msdk.c: msdk: vpp: Add deinterlacing support https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-06 13:51:32 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: vpp:Add more filters -- Add Denoise -- Add Rotation https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-03-06 13:51:05 +0000 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvpp.c: * sys/msdk/gstmsdkvpp.h: * sys/msdk/gstmsdkvpputil.c: * sys/msdk/gstmsdkvpputil.h: * sys/msdk/meson.build: msdk: Add VPP element https://bugzilla.gnome.org/show_bug.cgi?id=793705 2018-04-03 14:03:17 +0100 Tim-Philipp Müller * gst-libs/gst/mpegts/meson.build: meson: mpegts: make internal mpegts lib dep depend on the enumtypes header 2018-03-29 19:18:23 +0300 Sebastian Dröge * ext/hls/gsthlssink2.c: hlssink2: Use the new reset-muxer property on splitmuxsink We don't want to reset the muxer, otherwise the continuity counter will reset after each segment and some software gets confused. We want to create a continuous stream. https://bugzilla.gnome.org/show_bug.cgi?id=794816 2018-03-29 19:03:45 +0300 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Resend initial segments and header sections after FLUSH_STOP https://bugzilla.gnome.org/show_bug.cgi?id=794816 2018-04-02 15:49:59 -0800 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdk: dec: rename the function to what it means more exactly. https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-04-02 15:49:32 -0800 Hyunjun Ko * sys/msdk/gstmsdkallocator_libva.c: msdk: allocator: libva: check if it's already using dmabuf when mapping As long as we negotiate the "DMABuf" capsfeatures for now, map can't be working. So we need to confirm not to do it if using DMABuf memory. https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-04-02 21:43:53 +0900 Daeseok Youn * sys/nvenc/gstnvbaseenc.c: nvbaseenc: fix build warnings with HAVE_NVENC_GST_GL fix following error: gstnvbaseenc.c: In function ‘gst_nv_base_enc_set_context’: gstnvbaseenc.c:451:17: error: unused variable ‘nvenc’ [-Werror=unused-variable] GstNvBaseEnc *nvenc = GST_NV_BASE_ENC (element); ^ https://bugzilla.gnome.org/show_bug.cgi?id=794896 2018-03-31 10:41:32 +0530 Nirbheek Chauhan * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPI_i.c: decklink: Fix MinGW warnings due to MSVC-specific pragmas https://bugzilla.gnome.org/show_bug.cgi?id=794652#c7 2018-03-30 11:06:40 -0800 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: use dmabuf if possible https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-03-30 11:06:05 -0800 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkbufferpool.h: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvideomemory.h: * sys/msdk/meson.build: * sys/msdk/msdk.c: msdk: dmabuf support This patch includes: 1\ Implements MsdkDmaBufAllocator and allocation of msdk dmabuf memroy. 2\ Each msdk dmabuf memory include its own msdk surface kept by GQuark. 3\ Adds new option GST_BUFFER_POOL_OPTION_MSDK_USE_DMABUF https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-03-30 11:05:16 -0800 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkallocator_libva.h: msdk: adds new function to get dmabuf information from surface. https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-03-30 11:03:17 -0800 Hyunjun Ko * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_libva.c: msdk: allocator: get dmabuf handle during allocation if required https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-03-30 11:03:00 -0800 Hyunjun Ko * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvideomemory.h: msdk: generalize the parameter of msdk video memory functions There needs to be generalized for the parameter from GstVideoMsdkVideoMemory to GstMemory. Thus we can call these functions if using DMABuf memory. https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-03-30 11:02:26 -0800 Hyunjun Ko * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkcontext.c: msdk: specify the way to find a proper cached response by request The current way to find proper response by just comparing request's value is wrong. We need to compare the size of a frame and the number of suggested frames. Refer to the sample in https://github.com/Intel-Media-SDK/samples. https://bugzilla.gnome.org/show_bug.cgi?id=793707 2018-03-30 13:47:00 +0200 Paul Kocialkowski * sys/kms/gstkmssink.c: kmssink: Add support for the Allwinner DRM driver (sun4i-drm) This adds the sun4i DRM driver to the list of DRM drivers in kmssink. The driver allows displaying video in either the main plane or an overlay plane. https://bugzilla.gnome.org/attachment.cgi?bugid=794839 2018-03-29 13:06:41 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmpeg2dec.c: msdk: dec: remove framerate field from sink caps template Removes unessential field framerate for decoder so that negotiation works even if framerate is not provided from upstream. https://bugzilla.gnome.org/show_bug.cgi?id=789752 2018-03-29 12:41:48 -0800 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdk: dec: set framerate to the driver only if provided For example, if framerate 0/1 is provided from upstream, the driver fails to configure and complain about it. We can let it go and make the driver assuming framerate itself. https://bugzilla.gnome.org/show_bug.cgi?id=789752 2018-03-29 12:40:34 -0800 Hyunjun Ko * sys/msdk/gstmsdkh265dec.c: msdk: h265dec: remove framerate field from sink caps template Removes unessential field framerate for decoder so that negotiation works even if framerate is not provided from upstream. https://bugzilla.gnome.org/show_bug.cgi?id=789752 2018-03-29 11:56:19 -0800 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmpeg2enc.c: * sys/msdk/gstmsdkvp8enc.c: msdk: Don't set extended coding options for JPEG encode MJPEG doesn't have support for extended coding options https://bugzilla.gnome.org/show_bug.cgi?id=793873 2018-03-27 17:36:27 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-rawparse.xml: docs: plugins: remove stale xml data for moved or renamed plugins rawparse plugin moved to -base, only legacyrawparse remains. siren plugin was renamed and was listed twice. https://bugzilla.gnome.org/show_bug.cgi?id=794069 2018-03-27 16:51:30 +0100 Tim-Philipp Müller * gst/onvif/gstrtponviftimestamp.c: rtponviftimestamp: fix state change function init/reset When starting up we need to initialise things *before* streaming starts, so before we chain up to the parent class in the state change function. And when we shut down the element, we need to reset things after streaming has stopped, so after we chain up to the parent class in the state change function. Possibly related to memory leak in: https://bugzilla.gnome.org/show_bug.cgi?id=794353 2018-03-27 14:25:24 +0530 Nirbheek Chauhan * ext/ladspa/meson.build: meson: Add missing optional lrdf dep to ladspa build https://bugzilla.gnome.org/show_bug.cgi?id=794350 2018-03-27 12:47:13 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: decklink: Use g_thread_new instead of g_thread_create It's deprecated, and causes a build failure in Cerbero because we pass -DG_DISABLE_DEPRECATED. 2018-03-27 12:24:30 +0900 Takeshi Sato * sys/decklink/gstdecklink.cpp: decklink: fix initialization fails in windows binary There is no log of gst_decklink_com_thread () which initializes COM. The initialization part is not valid with #ifdef MSC_VER. Windows binaries are built with gcc. As with other codes, it was avoidable by setting it to G_OS_WIN32 instead of MSC_VER. https://bugzilla.gnome.org/show_bug.cgi?id=794652 2018-03-25 18:08:58 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.h: wasapi: Print the hresult hex value on error This helps figure out precisely what error enum value was returned, which can be necessary when the description is too generic 2018-03-23 09:15:38 +0530 Nirbheek Chauhan * ext/ladspa/gstladspa.c: ladspa: Fix critical during plugin load on Windows https://bugzilla.gnome.org/show_bug.cgi?id=794611 2018-03-26 19:52:50 +0100 Tim-Philipp Müller * ext/x265/gstx265enc.c: x265enc: no //-style comments 2018-03-23 14:14:12 +0000 James Stevenson * ext/x265/gstx265enc.c: * ext/x265/gstx265enc.h: x265enc: Add "key-int-max" property https://bugzilla.gnome.org/show_bug.cgi?id=794623 2018-03-25 12:53:06 +0300 Sebastian Dröge * ext/gl/Makefile.am: gl: Rename gstglutils.h functions to prevent symbol conflicts with static linking The gl plugin in -base has the same function. 2018-03-25 12:52:32 +0300 Sebastian Dröge * ext/opus/Makefile.am: opus: Rename opusheader functions to prevent symbol conflicts with static linking The opus plugin in -base has the same functions. 2018-03-23 13:42:05 +0000 James Stevenson * ext/x265/gstx265enc.c: x265: Fix tagging of keyframes on output buffers https://bugzilla.gnome.org/show_bug.cgi?id=794620 2018-03-22 14:07:53 +0000 Tim-Philipp Müller * Makefile.am: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/webrtc_mkenum.py: * meson.build: meson: webrtc: use gnome.mkenums_simple() to generate enumtypes files 2018-03-22 13:43:52 +0000 Tim-Philipp Müller * gst-libs/gst/webrtc/Makefile.am: * gst-libs/gst/webrtc/webrtc_mkenum.py: webrtc: use right export define in generated enumtypes file 2018-03-22 13:42:31 +0000 Tim-Philipp Müller * gst-libs/gst/webrtc/Makefile.am: webrtc: fix g-ir-scanner complaining about unstable API 2017-07-20 17:47:55 +1000 Alessandro Decina * Makefile.am: * ext/srtp/meson.build: * ext/srtp/srtp_mkenum.py: * gst-libs/gst/interfaces/build_mkenum.py: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/mpegts/mpegts_enum.py: * meson.build: meson: use gnome.mkenums_simple() to generate enumtypes files Means we no longer need our custom scripts, nor template files. 2018-03-22 10:35:25 +0000 Tim-Philipp Müller * pkgconfig/Makefile.am: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: pkgconfig: remove some cruft gl has moved to -base, remove leftover files. 2018-03-05 17:43:26 +0100 Patrik Nilsson * ext/ladspa/meson.build: meson: fix ladspa dependencies There are two issues, both related to dependency checking with the meson support for the ladspa plugin. With autotools, lrdf is handled like an optional dependency. But with meson it is required. This makes the meson support less flexible and inconsistent with autotools. When autotools is used it properly checks if ladspa.h is available. But with meson it does not, instead it treats lrdf as the main dependency. This could cause a build failure if lrdf is installed, but the ladspa sdk is not. https://bugzilla.gnome.org/show_bug.cgi?id=794350 2018-03-05 18:23:09 +0100 Patrik Nilsson * ext/bs2b/meson.build: * ext/meson.build: meson: enable bs2b compilation Add meson build system support to bs2b plugin. https://bugzilla.gnome.org/show_bug.cgi?id=794346 2018-03-21 13:42:30 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: Explicitly resend PAT/SI/PMT on force-keyunit events And don't randomly change the PCR stream, which would cause a new PMT version to be generated instead and could confuse players. 2018-03-21 13:34:17 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Deterministically set the PCR stream to the first stream of the program Otherwise it would be randomly set to the first stream of the program that receives a buffer. 2018-03-21 11:05:23 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Reset a few more fields in mpegtsmux_reset() to their original values 2018-03-21 10:59:29 +0200 Sebastian Dröge * gst/mpegtsmux/tsmux/tsmux.c: tsmux: Don't use GST_DEBUG_OBJECT() with non-GObject types 2018-03-20 11:49:19 -0700 Brendan Shanks * gst/videoparsers/gsth264parse.c: h264parse: reset internal 'state' variable properly Reset the internal 'state' variable when the parser is started, fixes errors when parser is being re-used. https://bugzilla.gnome.org/show_bug.cgi?id=794537 2018-03-20 16:16:19 +0200 Sebastian Dröge * sys/shm/gstshmsink.c: shmsink: Fix compilation with latest GLib g_object_ref() forwards its arguments type. gstshmsink.c: In function ‘gst_shm_sink_allocator_alloc_locked’: /usr/include/glib-2.0/gobject/gobject.h:512:32: error: passing argument 3 of ‘gst_memory_init’ from incompatible pointer type [-Werror=incompatible-pointer-types] #define g_object_ref(Obj) ((__typeof__(Obj)) (g_object_ref) (Obj)) ^ gstshmsink.c:292:45: note: in expansion of macro ‘g_object_ref’ gst_memory_init (memory, params->flags, g_object_ref (self), NULL, ^~~~~~~~~~~~ 2018-03-20 09:39:17 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * meson.build: Back to development === release 1.14.0 === 2018-03-19 20:24:05 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.14.0 2018-03-19 20:24:05 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: Update docs 2018-03-18 14:11:53 +0000 Tim-Philipp Müller * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: try to satisfy both mingw and msvc Fix-up for previous commit, hopefully. 2018-03-18 09:50:51 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add Amlogic upstreamer DRM driver support Amlogic Upstream driver is named meson, not to be confuse with the build system. 2018-03-17 23:52:31 +0000 Tim-Philipp Müller * sys/wasapi/gstwasapiutil.c: wasapi: fix indentation 2018-03-17 23:48:13 +0000 Tim-Philipp Müller * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: fix unresolved symbol linker error with vs2017 on win10 ERROR: unresolved external symbol PKEY_AudioEngine_DeviceFormat Apparently the order of the header includes matters, and initguid.h must be included first. Let's hope this doesn't break anything on the other toolchains. https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/ceff4e2d-8f63-4ab6-b09b-fdac65d62a80/pkeyaudioenginedeviceformat-link-error?forum=windowspro-audiodevelopment 2018-03-16 19:21:31 +0200 Sebastian Dröge * gst-libs/gst/webrtc/Makefile.am: webrtc: Fix make distcheck for g-i build ERROR: ../../../../../gst-libs/gst/webrtc/webrtc-enumtypes.c: no such a file or directory 2018-03-16 17:00:56 +0200 Sebastian Dröge * gst-libs/gst/webrtc/Makefile.am: webrtc: Include webrtc-enumtypes in the g-i build 2018-03-16 11:07:01 +0200 Sebastian Dröge * ext/webrtc/gstwebrtcbin.c: webrtcbin: Remove parameter from gst_webrtc_rtp_sender_new() 2018-03-15 17:32:24 +0200 Sebastian Dröge * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: webrtc: Remove unused parameter from rtpsender constructor https://bugzilla.gnome.org/show_bug.cgi?id=794363 2018-03-15 17:31:50 +0200 Sebastian Dröge * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: webrtc: Add some locks to setters and remove non-existing functions from headers https://bugzilla.gnome.org/show_bug.cgi?id=794363 2018-03-15 16:58:40 +0200 Sebastian Dröge * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: Rename GstWebRTCIceRole to GstWebRTCICERole for consistency Everything else is ICE, not Ice. https://bugzilla.gnome.org/show_bug.cgi?id=794362 2018-03-15 16:45:46 +0200 Sebastian Dröge * gst-libs/gst/webrtc/meson.build: webrtc: Fix gobject-introspection build with meson 2018-03-15 12:04:00 +0200 Sebastian Dröge * gst-libs/gst/webrtc/Makefile.am: * gst-libs/gst/webrtc/meson.build: webrtc: Add gobject-introspection integration https://bugzilla.gnome.org/show_bug.cgi?id=794347 2018-03-14 11:42:42 +0100 Jan Alexander Steffens (heftig) * ext/srt/Makefile.am: srt: Add missing gstsrt.h to noinst_HEADERS Reorder the list to match the SOURCES. https://bugzilla.gnome.org/show_bug.cgi?id=794320 2018-03-13 14:21:40 -0800 Hyunjun Ko * sys/msdk/msdk_libva.c: msdk: libva: remove unnecessary code and comments https://bugzilla.gnome.org/show_bug.cgi?id=794276 2018-03-13 14:20:50 -0800 Hyunjun Ko * sys/msdk/gstmsdk.c: * sys/msdk/msdk.c: msdk: adds new debug category https://bugzilla.gnome.org/show_bug.cgi?id=794276 2018-03-13 14:18:23 -0800 Hyunjun Ko * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdkvideomemory.c: msdk: fix typo https://bugzilla.gnome.org/show_bug.cgi?id=794276 2018-03-13 13:54:17 -0800 Wang,Fei * sys/msdk/gstmsdkvideomemory.c: msdk: Fix the I420 video format support Make sure I420 surface mapping works as expected by using YV12 format and swap U/V plane's offset and pitches. https://bugzilla.gnome.org/show_bug.cgi?id=793865 === release 1.13.91 === 2018-03-13 19:22:10 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.13.91 2018-03-13 19:22:10 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-wasapi.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: Update docs 2018-03-13 13:14:58 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: docs: update api decorators to ignore 2018-03-13 13:11:17 +0000 Tim-Philipp Müller * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/rtcsessiondescription.h: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc_fwd.h: webrtc: GST_EXPORT -> GST_WEBRTC_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:09:28 +0000 Tim-Philipp Müller * gst-libs/gst/wayland/wayland.h: wayland: GST_EXPORT -> GST_WAYLAND_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:07:52 +0000 Tim-Philipp Müller * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst-libs/gst/video/meson.build: * gst-libs/gst/video/video-bad-prelude.h: video: GST_EXPORT -> GST_URI_VIDEO_BAD_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:05:45 +0000 Tim-Philipp Müller * gst-libs/gst/uridownloader/Makefile.am: * gst-libs/gst/uridownloader/gstfragment.h: * gst-libs/gst/uridownloader/gsturidownloader.h: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/uridownloader/uridownloader-prelude.h: uridownloader: GST_EXPORT -> GST_URI_DOWNLOADER_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 13:02:54 +0000 Tim-Philipp Müller * gst-libs/gst/player/Makefile.am: * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-types.h: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * gst-libs/gst/player/gstplayer-video-renderer.h: * gst-libs/gst/player/gstplayer-visualization.h: * gst-libs/gst/player/gstplayer.h: * gst-libs/gst/player/meson.build: * gst-libs/gst/player/player-prelude.h: * gst-libs/gst/player/player.h: player: GST_EXPORT -> GST_PLAYER_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:57:56 +0000 Tim-Philipp Müller * gst-libs/gst/opencv/Makefile.am: * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.h: * gst-libs/gst/opencv/meson.build: * gst-libs/gst/opencv/opencv-prelude.h: opencv: GST_EXPORT -> GST_OPENCV_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:47:03 +0000 Tim-Philipp Müller * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/mpegts/mpegts-prelude.h: * gst-libs/gst/mpegts/mpegts.h: * gst-libs/gst/mpegts/mpegts_enum.py: mpegts: GST_EXPORT -> GST_MPEGTS_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:43:00 +0000 Tim-Philipp Müller * gst-libs/gst/isoff/gstisoff.h: isoff: GST_EXPORT -> GST_ISOFF_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:41:42 +0000 Tim-Philipp Müller * common: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/build_mkenum.py: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/interfaces/photography-prelude.h: * gst-libs/gst/interfaces/photography.h: photography: GST_EXPORT -> GST_PHOTOGRAPHY_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:36:26 +0000 Tim-Philipp Müller * gst-libs/gst/insertbin/gstinsertbin.h: insertbin: GST_EXPORT -> GST_INSERT_BIN_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:34:24 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/codecparsers-prelude.h: * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstjpeg2000sampling.h: * gst-libs/gst/codecparsers/gstjpegparser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstmpegvideometa.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.h: * gst-libs/gst/codecparsers/gstvp8parser.h: * gst-libs/gst/codecparsers/gstvp8rangedecoder.h: * gst-libs/gst/codecparsers/gstvp9parser.h: * gst-libs/gst/codecparsers/meson.build: codecparsers: GST_EXPORT -> GST_CODEC_PARSERS_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:29:08 +0000 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/basecamerabinsrc/basecamerabinsrc-prelude.h: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: * gst-libs/gst/basecamerabinsrc/meson.build: basecamerabinsrc: GST_EXPORT -> GST_BASE_CAMERA_BIN_SRC_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:21:39 +0000 Tim-Philipp Müller * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/audio-bad-prelude.h: * gst-libs/gst/audio/gstnonstreamaudiodecoder.h: * gst-libs/gst/audio/meson.build: audio: GST_EXPORT -> GST_AUDIO_BAD_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-13 12:17:50 +0000 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/Makefile.am: * gst-libs/gst/adaptivedemux/adaptive-demux-prelude.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: GST_EXPORT -> GST_ADAPTIVE_DEMUX_API We need different export decorators for the different libs. For now no actual change though, just rename before the release, and add prelude headers to define the new decorator to GST_EXPORT. 2018-03-12 20:10:02 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: docs: plugins: add some more elements and plugins 2018-03-10 18:51:14 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.c: wasapi: Minor fixes for debug logging 2018-03-10 18:49:59 +0530 Nirbheek Chauhan * sys/directsound/meson.build: meson: Add deviceprovider changes to directsoundsrc These were missed when they were added to Makefile.am 2018-03-09 22:05:49 +0530 Nirbheek Chauhan * sys/wasapi/gstaudioclient3.h: wasapi: Guard IAudioClient2 structs and enums These are already defined in the audioclient.h provided by the latest MinGW headers, and the existing #ifndef were obviously wrong. https://bugzilla.gnome.org/show_bug.cgi?id=794197 2018-03-10 11:41:54 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-wasapi.xml: docs: add wasapi elements 2018-03-09 23:59:16 +0000 Tim-Philipp Müller * sys/msdk/meson.build: * tests/check/meson.build: meson: fix build when msdk is not found 2018-03-09 10:48:11 -0900 Wang,Fei * tests/check/Makefile.am: * tests/check/elements/msdkh264enc.c: * tests/check/meson.build: tests: add msdkh264enc element unit test https://bugzilla.gnome.org/show_bug.cgi?id=793236 2018-03-09 10:32:40 -0900 Sreerenj Balachandran * sys/msdk/meson.build: msdk: Fix the misspelled file name in meson build 2018-03-09 11:11:40 +0100 Emilio Pozuelo Monfort * sys/wasapi/Makefile.am: wasapi: ship audioclient3 header in tarballs https://bugzilla.gnome.org/show_bug.cgi?id=794197 2018-03-08 11:39:25 -0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: enc: fix missing some frames to be encoded There was not handling the end of encoding sequence in encoder. This patch does drain any remaining internal streams while decoder already does this. Document says: "To mark the end of the encoding sequence, call this function with a NULL surface pointer. Repeat the call to drain any remaining internally cached bitstreams—one frame at a time—until MFX_ERR_MORE_DATA is returned." https://bugzilla.gnome.org/show_bug.cgi?id=793236 2018-03-08 11:38:52 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdk: dec: fix leaks when flushing https://bugzilla.gnome.org/show_bug.cgi?id=793708 2018-03-08 11:38:30 -0900 Hyunjun Ko * sys/msdk/gstmsdkcontext.c: msdk: manage child sessions on parent GstMsdkContext Sometimes parent context is released before its children get released. In this case MFXClose of parent session fails. To make sure that child sessions are closed before closing a parent session, Parent context needs to manage child sessions and close them first when it's released. https://bugzilla.gnome.org/show_bug.cgi?id=793412 2018-03-08 11:37:52 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdk: dec: remove code to manage buffers with locked surface https://bugzilla.gnome.org/show_bug.cgi?id=793413 2018-03-08 11:37:12 -0900 Hyunjun Ko * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvideomemory.h: msdk: manage MSDK surfaces seperately Currently a gst buffer has one mfxFrameSurface when it's allocated and can't be changed. This is based on that the life of gst buffer and mfxFrameSurface would be same. But it's not true. Sometimes even if a gst buffer of a frame is finished on downstream, mfxFramesurface coupled with the gst buffer is still locked, which means it's still being used in the driver. So this patch does this. Every time a gst buffer is acquired from the pool, it confirms if the surface coupled with the buffer is unlocked. If not, replace it with new unlocked one. In this way, user(decoder or encoder) doesn't need to manage gst buffers including locked surface. To do that, this patch includes the following: 1. GstMsdkContext - Manages MSDK surfaces available, used, locked respectively as the following: 1\ surfaces_avail : surfaces which are free and unused anywhere 2\ surfaces_used : surfaces coupled with a gst buffer and being used now. 3\ surfaces_locked : surfaces still locked even after the gst buffer is released. - Provide an api to get MSDK surface available. - Provide an api to release MSDK surface. 2. GstMsdkVideoMemory - Gets a surface available when it's allocated. - Provide an api to get an available surface with new unlocked one. - Provide an api to release surface in the msdk video memory. 3. GstMsdkBufferPool - In acquire_buffer, every time a gst buffer is acquired, get new available surface from the list. - In release_buffer, it confirms if the buffer's surface is unlocked or not. - If unlocked, it is put to the available list. - If still locked, it is put to the locked list. This also fixes bug #793525. https://bugzilla.gnome.org/show_bug.cgi?id=793413 https://bugzilla.gnome.org/show_bug.cgi?id=793525 2018-03-08 10:12:16 +0100 Michael Tretter * configure.ac: configure.ac: enable largefile support if possible https://bugzilla.gnome.org/show_bug.cgi?id=793103 2018-03-05 19:37:06 +0000 Tim-Philipp Müller * tests/check/libs/player.c: tests: player: disable broken test_play_media_info test Until someone can be bothered to debug + fix it. https://bugzilla.gnome.org/show_bug.cgi?id=787372 https://bugzilla.gnome.org/show_bug.cgi?id=787374 2018-03-05 14:21:14 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * tests/check/libs/h265parser.c: h265parser: allow partial matching on range extension profile Best to return a valid profiles rather than no profile if bitstream uses a not standard profile. https://bugzilla.gnome.org/show_bug.cgi?id=793876 2018-02-26 17:26:07 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * tests/check/libs/h265parser.c: h265parse: add support for 'Format range extensions profiles' Those profiles have been introduced in version 2 of the HEVC spec (A.3.5). https://bugzilla.gnome.org/show_bug.cgi?id=793876 2018-02-27 11:30:15 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: parse extra profile fields Those fields have been introduced in version 2 and later to define new profiles like the format range extensions profiles (A.3.5). NOTE: This patch breaks the parser ABI, rebuild needed. https://bugzilla.gnome.org/show_bug.cgi?id=793876 2018-03-01 11:08:44 +0100 Guillaume Desmottes * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst/videoparsers/gsth265parse.c: * tests/check/Makefile.am: * tests/check/libs/h265parser.c: * tests/check/meson.build: h265parser: decouple GstH265Profile and GstH265ProfileIDC We used to have the same enum to represent H265 profiles and idc values. Those are no longer the same with extension profiles defined from version 2 of the spec. Split those enums so the semantic of each is clearer and we'll be able to add extension profiles to GstH265Profile. Also add gst_h265_profile_tier_level_get_profile() to retrieve the GstH265Profile from the GstH265ProfileTierLevel. It will be used to implement the detection of extension profiles. https://bugzilla.gnome.org/show_bug.cgi?id=793876 === release 1.13.90 === 2018-03-03 22:39:27 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.13.90 2018-03-03 22:39:27 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: Update docs 2018-03-02 21:53:47 +0200 Sebastian Dröge * ext/iqa/iqa.c: iqa: Fix build with latest aggregator API changes 2018-03-02 10:37:53 -0500 Nicolas Dufresne * gst/videoparsers/gsth265parse.c: Revert "h265parse: early set src caps when input not byte-stream" This reverts commit 93d29e80300f566b7a8e7d86beecb578fe03821c. 2018-03-02 10:37:45 -0500 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: Revert "h264parse: early set src caps when input is avc" This reverts commit 5ac886d85aab4b919f84fb80e2d1ef36dc8e647d. 2018-03-01 18:44:13 +0100 Mathieu Duponchelle * ext/dts/meson.build: * meson.build: meson: enable more warnings 2018-03-01 15:24:39 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-schro.xml: * ext/Makefile.am: * ext/meson.build: * ext/schroedinger/Makefile.am: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: * ext/schroedinger/meson.build: * meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/schroenc.c: * tests/check/meson.build: Remove schroedinger plugin No upstream (website disappeared), no maintainer, and pretty much a fringe format anyway. https://bugzilla.gnome.org/show_bug.cgi?id=776215 2018-03-01 00:34:40 +0100 Mathieu Duponchelle * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: Port to latest GstAggregator segment API The aggregator segment is now exposed on the src pad https://bugzilla.gnome.org/show_bug.cgi?id=793946 2018-03-01 15:29:27 +0530 Nirbheek Chauhan * sys/directsound/gstdirectsoundplugin.c: * sys/wasapi/gstwasapi.c: wasapi: Increase rank to prefer over directsoundsrc Directsoundsrc/sink have multiple issues, most of which cannot be fixed at all because the API is deprecated and is implemented as a compatibility wrapper around WASAPI since Vista. Users and developers should now use the wasapisrc/sink elements, and future development efforts should go towards that. 2018-02-28 23:46:32 +0100 Mathieu Duponchelle * gst/mxf/mxfmux.c: mxfmux: instantiate adapter at the correct place 2018-02-28 00:06:41 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiolatency.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: add new audiolatency element to docs and update docs for git 2018-02-28 00:56:38 +0530 Nirbheek Chauhan * gst/audiolatency/gstaudiolatency.c: audiolatency: Fix string format specifier and use microseconds everywhere Should fix warnings or build errors on 32-bit platforms and on Windows. Also clarify in logging that all timestamps are in microseconds. 2018-02-28 00:40:21 +0530 Nirbheek Chauhan * gst/audiolatency/gstaudiolatency.c: audiolatency: Fix cerbero build failure Average latency is a 64-bit integer. https://ci.gstreamer.net/job/GStreamer-master/9962/ 2018-02-27 15:47:40 +0100 Alicia Boya García * ext/x265/gstx265enc.c: x265enc: Add format example for option-string https://bugzilla.gnome.org/show_bug.cgi?id=793881 2018-02-26 18:38:58 +0530 Nirbheek Chauhan * configure.ac: * gst/audiolatency/Makefile.am: * gst/audiolatency/gstaudiolatency.c: * gst/audiolatency/gstaudiolatency.h: * gst/audiolatency/meson.build: * gst/meson.build: audiolatency: New plugin for measuring audio latency Measures the audio latency between the source pad and the sink pad by outputting period ticks on the source pad and measuring how long they take to arrive on the sink pad. Very useful for quantifying latency improvements in audio pipelines. This plugin was particularly useful during development of the low-latency features of the wasapi plugin. https://bugzilla.gnome.org/show_bug.cgi?id=793839 2018-02-27 10:07:18 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/subtitle.h: * ext/ttml/ttmlparse.c: ttml: Add support for IMSC 1.0.1 fillLineGap attribute Strictly speaking, the TTML spec requires that text backgrounds extend only to the font height of the related text, rather than to the vertical distance between lines. The result of this is that there will typically be vertical gaps between line backgrounds through which moving video can be seen. Since this was unnacceptable to some content providers, v1.0.1 of the IMSC spec (which profiles TTML) adds a new attribute, itts:fillLineGap[1], that allows content authors to specify that clients should extend text backgrounds such that there are no gaps between lines. This attribute is also going to be included in the next release of EBU-TT-D. This patch adds support for fillLineGap to ttmlparse and ttmlrender. [1] https://www.w3.org/TR/ttml-imsc1.0.1/#itts-fillLineGap https://bugzilla.gnome.org/show_bug.cgi?id=787071 2018-02-26 11:20:51 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: plugins: add some more elements Many will still be missing corresponding doc sections in the source code though. 2018-02-26 16:08:28 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Clarify usage of low-latency property, add myself as author The low-latency property is *always* safe to enable, so applications that do realtime communication should set it, and the elements will automatically configure WASAPI to use the lowest possible device period, and the audioringbuffer in audiobasesink will also be configured accordingly. Applications can also use exclusive mode during capture and playback for the lowest possible latency if they know that the device will not be used by any other application. In this mode, the latency-time and buffer-time properties will be completely ignored. 2018-02-26 15:55:19 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Add a property for trying the AudioClient3 API The AudioClient3 API is only available on Windows 10, and we will automatically detect when it is available and use it. However, using it for capturing audio with low latency and without glitches seems to require setting the realtime priority of the entire pipeline to "critical", which we cannot do from inside the element. Hence, we can only enable that by default for wasapisink since apps should be able to safely set the low-latency property to TRUE if they need low-latency capture or playback. 2018-02-14 20:12:07 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Set realtime thread priority at runtime Use LoadLibrary() to set the thread characteristics at runtime so it works automagically regardless of where or how the plugin was built. 2018-02-14 12:13:36 +0530 Nirbheek Chauhan * sys/wasapi/gstaudioclient3.h: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Use IAudioClient3 interface when available This allows us to request ultra-low-latency device periods even in shared mode. However, this requires good drivers and Windows 10, so we only enable this when we detect that we are running on Windows 10 at runtime. You can forcibly disable this feature on Windows 10 by setting GST_WASAPI_DISABLE_AUDIOCLIENT3=1 in the environment. 2018-02-14 11:56:45 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapiutil.c: wasapi: __uuidof is simply not available in C Fix comment, and don't try to use it at all. 2018-02-14 11:47:14 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapiutil.c: wasapi: Set a default category for util functions Without this, they all go to the default category where they can be missed 2018-02-14 09:27:31 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Use a macro for HRESULT failure paths Saves a lot of boilerplate across all files. 2018-02-23 14:08:32 -0900 Sreerenj Balachandran * gst/debugutils/gstchecksumsink.c: checksumsink: remove src pad template from sink element https://bugzilla.gnome.org/show_bug.cgi?id=793774 2018-02-23 14:30:56 -0900 Hyunjun Ko * sys/msdk/msdk.c: msdk: remove unused code There's unused code remaining since MSDK bufferpool patches landed. https://bugzilla.gnome.org/show_bug.cgi?id=793741 2018-02-16 09:17:40 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesink.h: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtserversink.c: srt: Add support for streamheaders to sinks https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-16 09:16:12 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtserversink.c: srt: Refactor gst_srt_*_sink_send_buffer, extract send https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-16 09:12:51 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtserversink.c: srt: Add gst_srt_base_sink_stop https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-15 12:07:32 +0100 Jan Alexander Steffens (heftig) * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesink.h: srt: Remove unused queued_buffers field https://bugzilla.gnome.org/show_bug.cgi?id=793503 2018-02-22 12:32:45 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: msdkenc: remove unnecessary memset https://bugzilla.gnome.org/show_bug.cgi?id=791479 2018-02-22 12:32:20 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: enc: Support force-key-unit events https://bugzilla.gnome.org/show_bug.cgi?id=791479 2018-02-07 16:29:59 -0500 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Expose framerate even if fixed_frame_rate flag isn't set There is nothing in the spec that state that framerate is not valid in that case. This aligns GStreamer with FFMPEG behaviour for similar streams. https://bugzilla.gnome.org/show_bug.cgi?id=793284 2018-02-21 19:45:33 +0000 Tim-Philipp Müller * meson.build: meson: simplify GST_DISABLE_GST_DEBUG check and don't use add_global_* add_global_arguments() can't be used in subprojects. It's entirely possible that -bad is a subproject but gstreamer is picked up from an installed location, so we should really use add_project_arguments() in both cases. 2018-02-21 11:41:40 -0500 Nicolas Dufresne * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/debugutils/gstfakevideosink.c: doc: Add section for fakevideosink https://bugzilla.gnome.org/show_bug.cgi?id=793624 2018-02-19 22:02:14 -0500 Nicolas Dufresne * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstfakevideosink.c: * gst/debugutils/gstfakevideosink.h: * gst/debugutils/meson.build: Add fakevideosink element This is a wrapper around fakesink that will advertise GstVideoMeta and other meta API in order to achieve zero-copy whenever possible. his new element is useful when doing performance testing with video stream and don't want the sink capability to change the upstream behaviour. https://bugzilla.gnome.org/show_bug.cgi?id=793624 2018-02-19 21:52:43 -0500 Nicolas Dufresne * gst/debugutils/meson.build: meson: Remove unused header list https://bugzilla.gnome.org/show_bug.cgi?id=793624 2018-02-19 14:52:30 -0500 Nicolas Dufresne * ext/srt/meson.build: Fix SRT Library package config name 2018-02-19 15:45:36 +0900 Justin Kim * meson.build: meson: Use .dylib suffix if darwin For Mac OS, GST_EXTRA_MODULE_SUFFIX should be set as '.dylib'. https://bugzilla.gnome.org/show_bug.cgi?id=793585 2018-02-20 17:22:35 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: msdk: enc: Fix typo 2018-02-15 19:00:04 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: h264_enc: Enable B-pyramid prediction support Since there is already an "adaptive-B" option, just use boolean property for B-pyramid enabling. Fixme: Not sure whether this can be supported in vp8 and vp9. It could be possible through GPB (b without backward ref) but can't verify currently. We can move this as common property once verified with vp8 and vp9 without breaking any backward compatibility. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 17:29:13 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: Add more tuning options Added tuning options for mb level bitrate control, adaptive I-frame insertion, and adaptive B-frame insertion. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 16:31:56 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: h264_enc: Add slice size tuning option According to spec, it is a general property. But based on testing it only works for h264 encoder. Let's keep it as h264 specific for now. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 15:59:08 +0000 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/meson.build: * sys/msdk/msdk-enums.c: * sys/msdk/msdk-enums.h: msdk: move enum definitions to separte file Move enum value defintions which are (or in future) supported by more than one codec into a common file. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 15:05:10 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: encoder: h264: Enable trellis quantization tuning Add a new property "trellis" to enable trellis quantization. Keeping trellis as a flag value (which is boolean for gst x264 enc element) since it is possible to enable/disable this seperately for I,P and B frames through MediaSDK ext option headers. The subclass implementations always need to inform base-encoder if it requires the inclusion of Extend Header buffers (mfxExtCodingOption2 and mfxExtCodingOption3). https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-15 12:19:48 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdk: h264_enc: Add LookaheadDownsampling support This option controls down sampling in look ahead bitrate control mode. According to spec it is only supported in AVC. Fixme: Probably HEVC also have support for this in recent MSDK versions. We could move the enumeration types to common header usable for multiple codecs. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 17:01:38 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: encode: Add more rate control options MediaSDK has support for a number of rate control algorithms. Adding all possible options to the property rate-control. Fixme1: In case of failure, currently we don't have a proper method to show which rate-control has been failed. It could be better to add some extensive validation on EncQuery output in case of error. Unfortunately, not all ratecontrol methods are supported by every codecs and we don't have the dynamic detection of supported ratecontrol methods yet. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 16:27:47 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdk: encode: Add property to set slice/partitioning Adding a new property num-slices to set the number of slices/partitions per frame. Adding it as a general property for all codecs (except jpeg). https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 14:29:57 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkh265enc.c: msdk: encoder: h265: generalize the behavior of "i-frames" property We have the property "i-frames" to set the IDR interval in a gop. Unfortunately MSDK HEVC encoder behaves bit differently for IdrInterval field, IdrInteval == 1 indicate every I-frame should be an IDR (which is IdrInterval == 0 for other codecs), IdrInteval == 2 means every other I-frame is an IDR (which is IdrInterval == 1 for other codecs) etc. So we generalize the behaviour of property "i-frames" by incrementing the value by one in each case (only for HEVC). https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-14 11:42:55 +0000 Sreerenj Balachandran * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmpeg2enc.c: * sys/msdk/gstmsdkvp8enc.c: msdk: encoder: register only the required properties The base encoder common properties are not valid for mjpeg encoder where there is no motion compensation or rate control. Delaying the property installation on the base gobject untill the subclass class_init get invoked. https://bugzilla.gnome.org/show_bug.cgi?id=791637 2018-02-18 14:46:52 +0100 Víctor Manuel Jáquez Leal * sys/msdk/Makefile.am: msdk: add missing files for dist target https://bugzilla.gnome.org/show_bug.cgi?id=793563 2018-02-18 12:01:07 +0200 Sebastian Dröge * ext/colormanagement/Makefile.am: colormanagement: Link to libgstbase for basetransform 2018-02-18 11:49:25 +0200 Sebastian Dröge * ext/gl/Makefile.am: gl: GL_LIBS does not exist anymore but X11_LIBS does and is needed In case of X11 we have to call XInitThreads(). 2018-02-18 11:37:18 +0200 Sebastian Dröge * configure.ac: configure: Add configure check for gmodule-no-export-2.0 This is needed for all code using the g_module_*() API. 2018-02-16 17:36:04 +0200 Sebastian Dröge * configure.ac: webrtc: We need at least libnice 0.1.14 meson.build already required that, let's do the same for configure.ac 2018-02-15 19:44:23 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * meson.build: Back to development === release 1.13.1 === 2018-02-15 17:13:06 +0000 Tim-Philipp Müller * NEWS: * configure.ac: * gst-plugins-bad.doap: * meson.build: Release 1.13.1 2018-02-15 18:50:51 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * tests/examples/Makefile.am: * tests/examples/compositor/Makefile.am: * tests/examples/compositor/crossfade.c: Dist compositor crossfade example and pythons script for meson build And add to autotools build so it gets disted. 2018-02-15 15:07:26 +0000 Tim-Philipp Müller * configure.ac: configure: fix build with --disable-external 2018-02-15 14:59:35 +0000 Tim-Philipp Müller * po/bg.po: * po/cs.po: * po/hr.po: * po/it.po: * po/ky.po: * po/nl.po: * po/sv.po: * po/tr.po: po: update translations 2018-02-15 14:57:00 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiobuffersplit.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixmatrix.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colormanagement.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-de265.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fdkaac.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gme.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ipcpipeline.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyrawparse.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-neonhttpsrc.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openglmixers.xml: * docs/plugins/inspect/plugin-openh264.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-proxy.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-sbc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-siren.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-timecode.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-vulkan.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: docs: update plugin docs 2018-02-14 15:57:48 +0100 Edward Hervey * sys/decklink/gstdecklink.cpp: decklink: Fix array of devices usage We need to allocate actual Device structures since we are going to be setting callbacks with address to that structure https://bugzilla.gnome.org/show_bug.cgi?id=777239 2018-02-14 14:36:00 +0100 Edward Hervey * gst/bayer/gstbayerorc-dist.c: * gst/compositor/compositororc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/gaudieffects/gstgaudieffectsorc-dist.c: Update ORC fallback disted code 2018-02-05 08:52:55 +0000 Sean DuBois * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Implement cpu-used in av1enc https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-13 11:16:29 +0100 Dimitrios Katsaros * gst/pnm/gstpnmenc.c: pnm: Fixed segfault in pnmenc The pnmenc was not mapping the input buffers as video buffers. Because of this, the video frame stride was not being set based on frame but based on the caps, which make the assumption that the strides are a power of 4. For input that is not a power of 4, this would lead to a SIGSEGV. https://bugzilla.gnome.org/show_bug.cgi?id=793419 2018-02-13 17:39:26 -0900 Sreerenj Balachandran * configure.ac: build: check gudev dependency for msdk plugin gudev is the dependecy for rendernode support in MediaSDK plugin. https://bugzilla.gnome.org/show_bug.cgi?id=791599 2018-02-13 14:41:52 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkvc1dec.c: msdk: vc1_dec: Add Advanced profile (WVC1) support Only supporting asf header-format having BDUs with startcode. It might be possible to support other formats too, but haven't tested. https://bugzilla.gnome.org/show_bug.cgi?id=792589 2018-02-13 14:41:20 -0900 Sreerenj Balachandran * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdk: dec: Add non-packetized stream handling support The gst-msdk decoders prefer packetized streams as input and in this case we can avoid unnecessary input bitstream copy to mfxBitstream. This works fine for codecs like h264 where we only support byte-stream with au alignment. Other format conversions should be done thorugh parsers. But this won't work for codecs like vc1 where we don't have an autoplugged parser. Even the parser is not capable to do format conversions. Packetizing through base decoders parse() routine will bring a lot of uncecessary of complexities and codecparser libraray dependency. So we just use an interal gst_adaper to keep track of bitstream which is not consumed by msdk durig AsynchronusDecoding. This adapter will get used only if subclass implementations set the "is_packetized" to FALSE for msdk base encoder. https://bugzilla.gnome.org/show_bug.cgi?id=792589 2018-02-13 14:40:54 -0900 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvc1dec.c: * sys/msdk/gstmsdkvc1dec.h: * sys/msdk/meson.build: msdk: Add VC1 decoder (simple and main profiles) Adding Simple and Main profiles decode support. Currently msdkvc1dec is not capable to handle the codec_data, only instream headers are supported. Also msdk vc1 decoder expecting instream with Sequence header as per SMPTE 421M Annex L. Most of the decdoebin/playbin pipeline won't work with the above constraints because vc1parse is still not an autoplug element. Only way to make mskdvc1dec work is by connecting a vc1parse as an upstream element. https://bugzilla.gnome.org/show_bug.cgi?id=792589 2018-02-13 14:40:22 -0900 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdkcontext.c: * sys/msdk/meson.build: msdk : Add RenderNode support Use drm render node as the first choice of device node file. Fall backs to use drm primary (/dev/dri/card[0-9]) if there is no render node available Basic logic is inherited from gstreamer-vaapi, but using gudev API rather than libudev directly. Added gudev library as dependency for msdk. https://bugzilla.gnome.org/show_bug.cgi?id=791599 2018-02-13 13:54:03 -0900 Hyunjun Ko * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_d3d.c: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/meson.build: msdk: Avoid build failures on Windows until d3d allocator is implemented https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:53:02 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: use video memory if there's another MSDK context in a pipeline 1\ If downstream's pool is MSDK bufferpool, 2\ If there's shared GstMsdkContext in the pipeline, a decoder decides to use video memory. This policy should be improved to handle more cases. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:52:14 -0900 Hyunjun Ko * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: msdk: add async depth from each msdk element to GstMsdkContext to be shared In case that pipeline is like ".. ! decoder ! encoder ! ..." with using video memory, decoder needs to know the async depth of the following msdk element so that it could allocate the correct number of video memory. Otherwise, decoder's memory is exhausted while processing. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:51:18 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkdec/enc: query GstContext to share GstMsdkContext How to share/create GstMsdkcontext is the following: - Search GstMsdkContext if there's in the pipeline. - If found, check if it's decoder, encoder or vpp by job type. - If it's same job type, it creates another instance of GstMsdkContext with joined-session. - Otherwise just use the shared GstMsdkContext. - If not found, just creates new instance of GstMsdkContext. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:50:48 -0900 Hyunjun Ko * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkcontextutil.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkenc.c: msdk: context: add job type to figure out if joining session is necessary According to the driver's instruction, if there are two or more encoders or decoders in a process, the session should be joined by MFXJoinSession. To achieve this successfully by GstContext, this patch adds job type specified if it's encoder, decoder or vpp. If a msdk element gets to know if joining session is needed by the shared context, it should create another instance of GstContext with joined session, which is not shared. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:50:08 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkcontextutil.c: * sys/msdk/gstmsdkcontextutil.h: * sys/msdk/meson.build: msdk: adds util functions to handle GstContext To share GstMsdkContext with each msdk element, it will be using GstContext. Most common code is from gstreamer-vaapi. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:49:28 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: msdkdec: use bufferpool 1\ In decide_allocation, it makes its own msdk bufferpool. - If downstream supports video meta, it just replace it with the msdk bufferpool. - If not, it uses the msdk bufferpool as a side pool, which will be decoded into. and will copy it to downstream's bufferpool. 2\ Decide if using video memory or system memory. - This is not completed in this patch. - It might be decided in update_src_caps. - But tested for both system memory and video memory cases. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:48:32 -0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdkenc: use bufferpool 1\ Proposes msdk bufferpool to upstream. - If upstream has accepted the proposed msdk bufferpool, encoder can get msdk surface from the buffer directly. - If not, encoder get msdk surface its own msdk bufferpool and copy from upstream's frame to the surface. 2\ Replace arrays of surfaces with msdk bufferpool. 3\ In case of using VPP, there should be another msdk bufferpool with NV12 info so that it could convert first and encode. Calls gst_msdk_set_frame_allocator and uses video memory only on linux. and uses system memory on Windows until d3d allocator is implemented. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 13:44:08 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkbufferpool.c: * sys/msdk/gstmsdkbufferpool.h: * sys/msdk/gstmsdksystemmemory.c: * sys/msdk/gstmsdksystemmemory.h: * sys/msdk/gstmsdkvideomemory.c: * sys/msdk/gstmsdkvideomemory.h: * sys/msdk/meson.build: msdk: supports bufferpool Implements 2 memory allocators: 1\ GstMsdkSystemAllocator: This will allocate system memory. 2\ GstMsdkVideoAllocator: This will allocate device memory depending on the platform. (eg. VASurface) Currently GstMsdkBufferPool uses video allocator currently by default only on linux. On Windows, we should use system memory until d3d allocator is implemented. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:43:42 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkallocator.h: * sys/msdk/gstmsdkallocator_libva.c: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/meson.build: msdk: adds frame allocator using libva Implements msdk frame allocator which is required from the driver. Also makes these functions global so that GstMsdkAllocator could use the allocated video memory later and couple with GstMsdkMemory. GstMsdkContext keeps allocation information such as mfxFrameAllocRequest and mfxFrameAllocResponse after allocation. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:43:00 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: fix typo https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:41:28 -0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdkcontext.c: * sys/msdk/gstmsdkcontext.h: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/meson.build: * sys/msdk/msdk.h: * sys/msdk/msdk_d3d.c: * sys/msdk/msdk_libva.c: msdk: implements GstMsdkContext. Makes GstMsdkContext to be a descendant of GstObject so that we could track the life-cycle of the session of the driver. Also replaces MsdkContext with this one. Keeps msdk_d3d.c alive for the future. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:39:44 -0900 Hyunjun Ko * sys/msdk/msdk_libva.c: * sys/msdk/msdk_libva.h: msdk: libva: adds utility function between mfx and libva https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:37:47 -0900 Hyunjun Ko * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: adds new utility functions for conversion from gstreamer to libmfx https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 12:36:46 -0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: * sys/msdk/msdk.c: * sys/msdk/msdk.h: msdk: move and rename the function msdk_video_alignment Move the msdk_video_alignment function from decoder to msdk.c and rename so that others could call this function without duplicated declaration. https://bugzilla.gnome.org/show_bug.cgi?id=790752 2018-02-13 14:11:49 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs.types: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/audio/meson.build: audioaggregator: remove, moved to -base https://bugzilla.gnome.org/show_bug.cgi?id=791218 2018-02-13 00:28:36 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-audiomixer.xml: * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * gst/audiomixer/gstaudiomixerorc-dist.c: * gst/audiomixer/gstaudiomixerorc-dist.h: * gst/audiomixer/gstaudiomixerorc.orc: * gst/audiomixer/meson.build: * gst/meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/audiointerleave.c: * tests/check/elements/audiomixer.c: * tests/check/meson.build: audiomixer: remove, moved to -base https://bugzilla.gnome.org/show_bug.cgi?id=791218 2018-02-12 19:30:01 +0000 Tim-Philipp Müller * gst/proxy/gstproxy-priv.h: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: proxy: remove unneeded object private structs Plugin headers are not installed. Also mark internal funcs as internal. 2018-02-12 18:48:32 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-qt.xml: * ext/Makefile.am: * ext/qt/.gitignore: * ext/qt/Makefile.am: * ext/qt/gstplugin.cc: * ext/qt/gstqsgtexture.cc: * ext/qt/gstqsgtexture.h: * ext/qt/gstqtgl.h: * ext/qt/gstqtglutility.cc: * ext/qt/gstqtglutility.h: * ext/qt/gstqtsink.cc: * ext/qt/gstqtsink.h: * ext/qt/gstqtsrc.cc: * ext/qt/gstqtsrc.h: * ext/qt/qtitem.cc: * ext/qt/qtitem.h: * ext/qt/qtplugin.pro: * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: * tests/examples/meson.build: * tests/examples/qt/qmlsink/.gitignore: * tests/examples/qt/qmlsink/CMakeLists.txt: * tests/examples/qt/qmlsink/main.cpp: * tests/examples/qt/qmlsink/main.qml: * tests/examples/qt/qmlsink/play.pro: * tests/examples/qt/qmlsink/qml.qrc: * tests/examples/qt/qmlsrc/.gitignore: * tests/examples/qt/qmlsrc/grabqml.pro: * tests/examples/qt/qmlsrc/main.cpp: * tests/examples/qt/qmlsrc/main.qml: * tests/examples/qt/qmlsrc/qml.qrc: qt: remove plugin, moved to -good https://bugzilla.gnome.org/show_bug.cgi?id=754094 2018-02-12 15:44:00 +0000 Tim-Philipp Müller * configure.ac: configure: remove two more unneeded gtk conditionals 2018-02-08 19:11:21 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gtk.xml: * ext/Makefile.am: * ext/gtk/Makefile.am: * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkbasesink.h: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: * ext/gtk/gstgtkutils.c: * ext/gtk/gstgtkutils.h: * ext/gtk/gstplugin.c: * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstglwidget.h: * ext/gtk/gtkgstwidget.c: * ext/gtk/gtkgstwidget.h: * ext/gtk/meson.build: * ext/meson.build: * tests/examples/Makefile.am: * tests/examples/gtk/Makefile.am: * tests/examples/gtk/glliveshader.c: * tests/examples/gtk/gtkglsink.c: * tests/examples/gtk/gtksink.c: * tests/examples/meson.build: gtk: remove, plugin has moved to -good 2017-12-07 15:52:39 +0100 Carlos Rafael Giani * gst/inter/gstinteraudiosrc.c: interaudio: Make sure both PTS and DTS values are defined The inter plugin originated in 0.10, which had only one timestamp. As a result, during the port to 1.0, the DTS were left undefined. This can cause subtle bugs with basesrc, which can end up incorrectly picking DTS over PTS and producing output buffers with incorrect timestamps. https://bugzilla.gnome.org/show_bug.cgi?id=791347 2018-02-09 02:05:23 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapisrc: Re-align device period if necessary Same changes as done for wasapisink in cbe2fc40a. Turns out this is sometimes also needed for capture. Reported by Mathieu_Du. Also improve logging in that case for easier debugging. 2018-02-08 19:09:45 +0000 Tim-Philipp Müller * meson.build: meson: make version numbers ints and fix int/string comparison WARNING: Trying to compare values of different types (str, int). The result of this is undefined and will become a hard error in a future Meson release. 2018-02-05 18:03:31 +0100 Víctor Manuel Jáquez Leal * gst/gdp/gstgdpdepay.c: Revert "gdpdepay: don't use allocator if it has custom alloc" This reverts commit f6cb16ab8cecfe683473b173732ad040e858abd5. 2018-02-08 15:19:12 +0530 Nirbheek Chauhan * gst/proxy/gstproxy.c: proxy: Fix plugin definition I'm not sure how this was missed in review... 2018-02-08 14:45:28 +0530 Nirbheek Chauhan * gst/proxy/Makefile.am: proxy: Remove dead code from Makefile.am There is no gstproxytest.c 2018-02-08 14:41:05 +0530 Nirbheek Chauhan * sys/wasapi/meson.build: meson: Fix wasapi build on Windows Was missing device prober and avrt (on msvc) 2018-02-08 14:27:43 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Unprepare when src/sink_prepare fails unprepare() is not called automatically on failure. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-08 03:11:10 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: wasapisink: Re-align device period if necessary Sometimes the minimum period advertised by a card results in an unaligned buffer size error during initialization in exclusive mode. In that case, we can fetch the actual buffer size in frames and calculate the period from that. We can't do this pre-emptively because we can't call GetBufferSize till Initialize has been called at least once. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-08 03:09:26 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapisink: pre-load the buffer with silence This reduces the chances of startup glitches, and also reduces the chances that we'll get garbled output due to driver bugs. Recommended by the WASAPI documentation. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-07 04:48:58 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Try to use latency-time and buffer-time So far, we have been completely discarding the values of latency-time and buffer-time and trying to always open the device in the lowest latency mode possible. However, sometimes this is a bad idea: 1. When we want to save power/CPU and don't want low latency 2. When the lowest latency setting causes glitches 3. Other audio-driver bugs Now we will try to follow the user-set values of latency-time and buffer-time in shared mode, and only latency-time in exclusive mode (we have no control over the hardware buffer size, and there is no use in setting GstAudioRingBuffer size to something larger). The elements will still try to open the devices in the lowest latency mode possible if you set the "low-latency" property to "true". https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:56:41 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Cover more HRESULT error messages This requires using allocated strings, but it's the best option. For instance, a call could fail because CoInitialize() wasn't called, or because some other thing in the stack failed. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:45:02 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Increase thread priority to reduce glitches This is particularly important when running in exclusive mode because any delays will immediately cause glitching. The MinGW version in Cerbero is too old, so we can only enable this when building with MSVC or when people build GStreamer for MSYS2 or other MinGW-based distributions. To force-enable this code when building with MinGW, build with CFLAGS="-DGST_FORCE_WIN_AVRT -lavrt". https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:40:49 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Allow opening devices in exclusive mode This provides much lower latency compared to opening in shared mode, but it also means that the device cannot be opened by any other application. The advantage is that the achievable latency is much lower. In shared mode, WASAPI's engine period is 10ms, and so that is the lowest latency achievable. In exclusive mode, the limit is the device period itself, which in my testing with USB DACs, on-board PCI sound-cards, and HDMI cards is between 2ms and 3.33ms. We set our audioringbuffer limits to match the device, so the achievable sink latency is 6-9ms. Further improvements can be made if needed. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-06 23:37:19 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: wasapi: Rename struct element for device name We will use ->device for storing a pointer to the IMMDevice structure which is needed for fetching the caps supported by devices in exclusive mode. https://bugzilla.gnome.org/show_bug.cgi?id=793289 2018-02-08 11:32:32 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapidevice.c: * sys/wasapi/gstwasapidevice.h: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: wasapi: Fix indentation issues missed by the commit hook These were missed because the relevant commits were made on Windows where `indent` wasn't installed. 2018-02-08 16:55:43 +1100 Matthew Waters * ext/vulkan/vkupload.c: vulkanupload: actually loop over possible uploaders Fix some funky control that wasn't working CID #1417219 2018-02-08 15:48:49 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: Fix ffeb09e4 conditional Fixes ffeb09e4abe73d3b9e8909996816f0288e307e22 if (sscanf(...)) { // != 0 error; } Is not correct where != 0 indicates some kind of success. Check instead that the correct number of elements were slurped. 2018-02-08 15:47:33 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: change dead code to an assert CID #1429140 2018-02-08 15:29:13 +1100 Matthew Waters * tests/check/meson.build: dtls: add meson definition for recently added test 2018-02-08 15:25:22 +1100 Matthew Waters * ext/webrtc/gstwebrtcbin.c: webrtc: bail on invalid rtpbin names If we fail parsing rtpbin pad names, someone has screwed up so critical and return. CID #1429142 2016-02-04 00:08:57 +0530 Nirbheek Chauhan * configure.ac: * gst/meson.build: * gst/proxy/Makefile.am: * gst/proxy/gstproxy-priv.h: * gst/proxy/gstproxy.c: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: * gst/proxy/meson.build: Add new 'proxy' element to stream data between pipelines This keep-it-simple plugin is useful when you want to pipe arbitrary data to a different pipeline within the same process. Some advantages over appsink/appsrc, the inter elements, etc: * Ease of use. Buffers, events, and caps are transmitted as-is without copying or serialization. * Enables zerocopy (especially DMABUF) transparently without any special-casing. * Enables usage with sinks or elements that are unreliable and may throw errors and need re-initialization, such as a network sink, a USB device sink (v4l2), etc. * Transmits arbitrary data, not just audio/video/subs * Can easily implement 1 producer pipeline -> N dynamic consumer pipelines within a single process when combined with the `tee` element. All queries, events, buffers, and buffer lists are proxied. State changes, clocks, and base times for the two pipelines are independent since the upstream and downstreams continue to be different pipelines. https://bugzilla.gnome.org/show_bug.cgi?id=788200 2018-02-07 20:15:00 +1100 Matthew Waters * ext/qt/gstqtglutility.cc: qt: don't #include platform specific gstglcontext_*.h headers They aren't public headers 2018-02-06 11:36:27 +0100 Guillaume Desmottes * ext/opencv/meson.build: opencv: fix OPENCV_PATH_NAME when using meson Meson was checking for $prefix/OpenCV but was then defining OPENCV_PATH_NAME with 'OpenCv' rather than 'OpenCV'. https://bugzilla.gnome.org/show_bug.cgi?id=793212 2018-02-05 08:53:20 +0000 Sean DuBois * ext/aom/gstav1enc.c: aom: Drop pointless cast from av1enc https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-02 06:56:17 +0000 Sean DuBois * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Fix all definite leaks in av1enc Track if the encoder has been inited, and cleanup if needed. Also unref input_state if has been set https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-02 05:43:20 +0000 Sean DuBois * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Consistent naming between av1dec and av1enc https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-31 07:34:32 +0000 Sean DuBois * ext/aom/gstav1dec.c: aom: Implement flush for av1dec https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-02-04 12:18:06 +0100 Tim-Philipp Müller * configure.ac: autotools: use -fno-strict-aliasing where supported https://bugzilla.gnome.org/show_bug.cgi?id=769183 2018-02-05 17:00:15 +1100 Matthew Waters * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dtls.c: tests: add a test for the dtls{enc,dec} elements 2018-02-05 16:57:52 +1100 Matthew Waters * ext/dtls/gstdtlsenc.c: dtls: drop upstream segment and stream-start events Fixes tests with GstHarness We will push our own from the srcpad task. 2018-02-05 17:41:25 +1100 Matthew Waters * ext/dtls/gstdtlsconnection.c: dtls: don't leak the system clock Obtain and release it as needed. 2018-02-05 16:16:31 +1100 Matthew Waters * ext/dtls/gstdtlsenc.c: dtlsenc: fix typo in is-client property description 2017-07-07 17:32:33 +0200 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: reject segment seeks While #782140 can stay open for actually handling these, the fact is currently adaptivedemux does not handle segment seeks, and as such should not accept them. https://bugzilla.gnome.org/show_bug.cgi?id=784655 2017-01-31 20:56:59 +1100 Matthew Waters * .gitignore: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * ext/Makefile.am: * ext/meson.build: * ext/webrtc/Makefile.am: * ext/webrtc/fwd.h: * ext/webrtc/gstwebrtc.c: * ext/webrtc/gstwebrtcbin.c: * ext/webrtc/gstwebrtcbin.h: * ext/webrtc/gstwebrtcice.c: * ext/webrtc/gstwebrtcice.h: * ext/webrtc/gstwebrtcstats.c: * ext/webrtc/gstwebrtcstats.h: * ext/webrtc/icestream.c: * ext/webrtc/icestream.h: * ext/webrtc/meson.build: * ext/webrtc/nicetransport.c: * ext/webrtc/nicetransport.h: * ext/webrtc/transportreceivebin.c: * ext/webrtc/transportreceivebin.h: * ext/webrtc/transportsendbin.c: * ext/webrtc/transportsendbin.h: * ext/webrtc/transportstream.c: * ext/webrtc/transportstream.h: * ext/webrtc/utils.c: * ext/webrtc/utils.h: * ext/webrtc/webrtcsdp.c: * ext/webrtc/webrtcsdp.h: * ext/webrtc/webrtctransceiver.c: * ext/webrtc/webrtctransceiver.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/meson.build: * gst-libs/gst/webrtc/Makefile.am: * gst-libs/gst/webrtc/dtlstransport.c: * gst-libs/gst/webrtc/dtlstransport.h: * gst-libs/gst/webrtc/icetransport.c: * gst-libs/gst/webrtc/icetransport.h: * gst-libs/gst/webrtc/meson.build: * gst-libs/gst/webrtc/rtcsessiondescription.c: * gst-libs/gst/webrtc/rtcsessiondescription.h: * gst-libs/gst/webrtc/rtpreceiver.c: * gst-libs/gst/webrtc/rtpreceiver.h: * gst-libs/gst/webrtc/rtpsender.c: * gst-libs/gst/webrtc/rtpsender.h: * gst-libs/gst/webrtc/rtptransceiver.c: * gst-libs/gst/webrtc/rtptransceiver.h: * gst-libs/gst/webrtc/webrtc.h: * gst-libs/gst/webrtc/webrtc_fwd.h: * gst-libs/gst/webrtc/webrtc_mkenum.py: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-webrtc-uninstalled.pc.in: * pkgconfig/gstreamer-webrtc.pc.in: * pkgconfig/meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/webrtcbin.c: * tests/check/meson.build: * tests/examples/Makefile.am: * tests/examples/meson.build: * tests/examples/webrtc/Makefile.am: * tests/examples/webrtc/meson.build: * tests/examples/webrtc/webrtc.c: * tests/examples/webrtc/webrtcbidirectional.c: * tests/examples/webrtc/webrtcswap.c: webrtcbin: an element that handles the transport aspects of webrtc connections SDP's are generated and consumed according to the W3C PeerConnection API available from https://www.w3.org/TR/webrtc/ The SDP is either created initially from the connected sink pads/attached transceivers as in the case of generating an offer or intersected with the connected sink pads/attached transceivers as in the case for creating an answer. In both cases, the rtp payloaded streams sent by the peer are exposed as separate src pads. The implementation supports trickle ICE, RTCP muxing, reduced size RTCP. With contributions from: Nirbheek Chauhan Mathieu Duponchelle Edward Hervey https://bugzilla.gnome.org/show_bug.cgi?id=792523 2018-01-16 20:53:15 +1100 Matthew Waters * ext/dtls/gstdtlsdec.c: dtls: remove reliance on a default GMainContext/Loop By removing the indirection to the main loop completely when receiving the peer certificate. For reference, the on-decoder-key signal does not have a redirection. 2018-01-31 13:21:58 -0500 Omar Akkila * gst/netsim/gstnetsim.c: netsim: fix format errors for different platforms https://bugzilla.gnome.org/show_bug.cgi?id=793073 2018-01-31 16:10:24 +0000 Tim-Philipp Müller * configure.ac: configure: fix opengl api conditional Fixes build of openglmixers plugin due to mismatch between build system conditional USE_OPENGL and define in gstglconfig.h 2018-01-31 13:03:28 +0000 Tim-Philipp Müller * configure.ac: * ext/gl/Makefile.am: configure: fix OpenGL API detection And don't build gl mosaic element unconditionally. 2018-01-31 13:02:07 +0000 Tim-Philipp Müller * configure.ac: autotools: fix build if OpenGL support is not available https://bugzilla.gnome.org/show_bug.cgi?id=793039 2018-01-29 12:53:51 +0100 Víctor Manuel Jáquez Leal * gst/gdp/gstgdpdepay.c: gdpdepay: don't use allocator if it has custom alloc gdpdepay element uses the decide_allocation to fetch the downstream allocator. Nonetheless it is possible that allocate uses a custom alloc function, which is not usable by gdpdepay, crashing later the application when the allocater buffer is NULL. This patch checks for the allocator flags and reset it if the allocator has a custom alloc function. https://bugzilla.gnome.org/show_bug.cgi?id=789476 2018-01-29 12:50:36 +0100 Víctor Manuel Jáquez Leal * gst/gdp/gstgdpdepay.c: gdpdepay: don't allocation query if caps aren't fixed When querying downstream for allocation, and the source caps hasn't set its caps, using ANY by default, it raises a critical message in console: CRITICAL **: gst_video_info_from_caps: assertion 'gst_caps_is_fixed (caps)' failed This patch bails out decide_allocation() if the caps aren't fixed. https://bugzilla.gnome.org/show_bug.cgi?id=789476 2018-01-31 03:51:47 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: wasapi: Correctly set ringbuffer segsize/segtotal This will set the actual-latency-time and actual-buffer-time of the sink and source. We completely ignore the latency-time/buffer-time values set on the element because WASAPI is happiest when it is reading/writing at the default period. Improving this will likely require the use of the IAudioClient3 interfaces which are not available in MinGW yet. https://bugzilla.gnome.org/show_bug.cgi?id=792897 2018-01-25 00:51:22 +0530 Nirbheek Chauhan * sys/wasapi/Makefile.am: * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapidevice.c: * sys/wasapi/gstwasapidevice.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Implement a device provider for probing Currently only does probing and does not handle messages from endpoints/devices. In the future we want to do proper monitoring which is well-supported in WASAPI. https://bugzilla.gnome.org/show_bug.cgi?id=792897 2018-01-24 08:20:38 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Implement support for >2 channels We need to parse the WAVEFORMATEXTENSIBLE structure, figure out what positions the channels have (if they are positional), and reorder them as necessary. https://bugzilla.gnome.org/show_bug.cgi?id=792897 2018-01-30 20:35:07 +0000 Tim-Philipp Müller * meson.build: meson: use -fno-strict-aliasing where supported https://bugzilla.gnome.org/show_bug.cgi?id=769183 2018-01-30 11:34:58 -0900 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstvp8parser.c: codecparser: vp8: Fix range decoder init According to the vp8 spec, the first partition (size can be derived from the frame header) should have all compressed header information and we implemented gst codecparser based on that. But it doesn't seem to be the case with some of the streams (#792773) and libvpx works fine because it uses the whole frame size (not the first partition size) to initialize the bool decoder. https://bugzilla.gnome.org/show_bug.cgi?id=792773 2018-01-22 16:21:27 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Make render rectangle property controllable https://bugzilla.gnome.org/show_bug.cgi?id=792798 2016-10-03 13:11:07 +0100 Vincent Penquerc'h * ext/gl/gstglvideomixer.c: glvideomixer: fix vertex_buffer leak We call the base class first as this will remove the pad from the aggregator, thus stopping misc callbacks from being called, one of which (process_textures) will recreate the vertex_buffer if it is destroyed https://bugzilla.gnome.org/show_bug.cgi?id=760873 2018-01-26 16:25:33 +0100 Jan Alexander Steffens (heftig) * configure.ac: * ext/srtp/Makefile.am: * ext/srtp/gstsrtp.c: * ext/srtp/gstsrtp.h: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: * ext/srtp/gstsrtpenums.h: * ext/srtp/meson.build: * ext/srtp/srtp_mkenum.py: srtp: Support libsrtp2 For libsrtp 1, add defines that translate the new namespaced identifiers to the old unnamespaced ones. Also move the code for setting and getting a stream's ROC into two compat functions that match libsrtp2's API. It seems that libsrtp2 properly supports changing the ROC without having to touch the sequence numbers afterwards, given that srtp_set_stream_roc sets a pending_roc field, so the entire roc_changed dance should not be needed anymore. The compat functions for libsrtp 1 just contain our preexisting hacks, however, so it's still needed there. libsrtp2 has no means of discovering the streams in the session, so to create the stats structure we need to iterate over our own set of SSRCs. For this we also need to re-add the previously removed ssrcs_set to the encoder. https://bugzilla.gnome.org/show_bug.cgi?id=776901 2018-01-28 14:28:33 +0000 Tim-Philipp Müller * ext/rtmp/gstrtmpsink.c: rtmpsink: don't crash if there's streamheader field in the caps Fix regression when used in combination with new flvmux which was ported to GstAggregator, and which sends plain video/x-flv caps before sending full caps that include streamheaders. 2017-12-13 13:43:30 +0900 Justin Kim * sys/androidmedia/gst-android-hardware-camera.c: ahc: enable autofocus callback It should be enabled to set autofocus properly, but it seems to be commented out mistakenly from the first commit. https://bugzilla.gnome.org/show_bug.cgi?id=790945 2018-01-26 06:01:35 +0000 Sean DuBois * ext/aom/gstav1dec.c: * ext/aom/gstav1dec.h: * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: aom: Add direct casts for GstAV1Enc and GstAV1Dec https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-26 05:20:55 +0000 Sean DuBois * ext/aom/gstav1dec.c: * ext/aom/gstav1enc.c: aom: Deadline was removed from AV1 https://bugzilla.gnome.org/show_bug.cgi?id=791674 2017-12-31 07:47:47 +0000 Sean DuBois * ext/aom/gstav1dec.c: aom: Fix leak in av1dec AOM Decoder wasn't being destroyed in stop https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-14 22:22:07 +0000 Sean DuBois * ext/aom/gstav1enc.c: aom: Put av1enc config debugging under gst_av1_enc_debug namespace https://bugzilla.gnome.org/show_bug.cgi?id=791674 2018-01-25 21:23:09 +0200 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Add missing \ in multi-line #define 2018-01-22 14:06:31 +0200 Sebastian Dröge * sys/directsound/Makefile.am: * sys/directsound/gstdirectsounddevice.c: * sys/directsound/gstdirectsounddevice.h: * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Add support for a DeviceProvider https://bugzilla.gnome.org/show_bug.cgi?id=792782 2018-01-24 08:20:13 +0530 Nirbheek Chauhan * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: wasapi: Fix some leaks, bugs, and compiler warnings Also improve logging. 2017-11-06 12:39:32 +0100 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h26{4,5}parse: expose chroma format and bit depth in caps This information could be used for example to pick a decoder supporting a specific chroma and/or bit depth, like 4:2:2 10 bits. It can also be used to inform earlier decoder about the format it is about to decode. https://bugzilla.gnome.org/show_bug.cgi?id=792039 2017-04-16 16:08:27 +0200 Tim-Philipp Müller * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: * sys/nvenc/gstnvh264enc.c: nvenc: add "gop-size" property This also changes the default gop size from 30 to 75 frames. https://bugzilla.gnome.org/show_bug.cgi?id=781410 2018-01-24 10:21:48 +0000 Tim-Philipp Müller * sys/nvenc/gstnvbaseenc.c: nvenc: mark properties that can be changed at runtime accordingly https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-17 13:58:53 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: nvenc: Add support for dynamic bitrate/preset reconfiguration Useful for dynamically updating bitrate in live scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-14 15:30:44 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: nvenc: Add support for I420 https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-12-21 18:33:49 +0800 Jun Xie * gst/netsim/gstnetsim.c: netsim: fix misleading packet delay log packet delay time shall be calculated by ready_time minus current time https://bugzilla.gnome.org/show_bug.cgi?id=791838 2017-12-28 12:15:21 +0100 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregatorpad: implement skip_buffer Skip buffers from sources with a framerate higher than the output framerate. https://bugzilla.gnome.org/show_bug.cgi?id=781928 2018-01-23 14:49:51 +0000 Tim-Philipp Müller * sys/decklink/gstdecklink.cpp: decklink: don't crash if there are no decklink devices Fixes generic/states check. 2018-01-23 10:27:57 +0000 Tim-Philipp Müller * sys/decklink/gstdecklink.cpp: decklink: don't limit number of devices to 16 There is no fixed limitation for the number of devices on the decklink API side according to BlackMagic. Many PC motherboards are able support 6 decklink cards each with up to 8 inputs so a limit of 16 might well be too low. https://bugzilla.gnome.org/show_bug.cgi?id=777239 2018-01-23 09:01:00 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/mxf/mxfmux.c: Update for renamed aggregator pad API https://bugzilla.gnome.org/show_bug.cgi?id=791204 2018-01-22 18:53:22 +0000 Tim-Philipp Müller * ext/curl/meson.build: * meson.build: meosn: curl: also check for and use libssh2 if available 2018-01-22 13:44:29 +0200 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Don't dynamically load one DirectSound symbol at runtime Just link statically to it, like for all other DirectSound symbols. 2018-01-21 09:02:30 +0530 Nirbheek Chauhan wasapi: Rewrite most of the code to make it work Both the source and the sink elements were broken in a number of ways: * prepare() was assuming that the format was always S16LE 2ch 44.1KHz. We now probe the preferred format with GetMixFormat(). * Device initialization was done with the wrong buffer size (buffer_time is in microseconds, not nanoseconds). * sink_write() and src_read() were just plain wrong and would never write or read anything useful. * Some functions in prepare() were always returning FALSE which meant trying to use the elements would *always* fail. * get_caps() and delay() were not implemented at all. TODO: support for >2 channels TODO: pro-audio low-latency TODO: SPDIF and other encoded passthroughs Three new properties are now implemented: role, mute, and device. * 'role' designates the stream role of the initialized device, see: https://msdn.microsoft.com/en-us/library/windows/desktop/dd370842(v=vs.85).aspx * 'device' is a system-wide GUIDesque string for a specific device. * 'mute' is a sink property and simply mutes it. On my Windows 8.1 system, the lowest latency that works is: wasapisrc buffer-time=20000 wasapisink buffer-time=10000 aka, 20ms and 10ms respectively. These values are close to the lowest possible with the IAudioClient interface. Further improvements require porting to IAudioClient2 or IAudioClient3. https://docs.microsoft.com/en-us/windows-hardware/drivers/audio/low-latency-audio 2018-01-20 15:49:35 +0000 Tim-Philipp Müller * tests/check/elements/camerabin.c: tests: camerabin: skip checks if we don't have encoders for the default format https://bugzilla.gnome.org/show_bug.cgi?id=767863 2018-01-17 12:06:28 +0000 Tim-Philipp Müller * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: fix struct initialisation warnings with clang Use init macros to avoid gst-indent making a mess of it. https://bugzilla.gnome.org/show_bug.cgi?id=787980 2018-01-16 11:35:22 +0000 Tim-Philipp Müller * tests/icles/Makefile.am: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.h: * tests/icles/metadata_editor.ui: tests: remove test that's never been ported to 1.x 2018-01-03 10:26:49 +0800 Jun Xie * ext/hls/gsthlsdemux.c: hlsdemux: fix memory leak while updating master playlist new_master needs to be freed if current playlist is not a master playlist https://bugzilla.gnome.org/show_bug.cgi?id=792146 2018-01-15 20:01:06 +0000 Tim-Philipp Müller * ext/lv2/gstlv2utils.c: lv2: fix inverted boolean properties https://bugzilla.gnome.org/show_bug.cgi?id=791330 2018-01-11 11:49:06 +0100 Edward Hervey * tests/check/elements/.gitignore: * tests/check/libs/.gitignore: check: Update gitignore 2018-01-11 11:41:33 +0100 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Remove useless check Any modification of ret in that "while (ret == GST_FLOW_OK)" loop will break (and cause it to stop the iteration). CID #1427095 2018-01-11 11:33:22 +0100 Edward Hervey * ext/kate/gstkateenc.c: kateenc: Refactoring for readability and leak fixing Instead of a massive if/else/if/else/if/else/...: * Use a common cleanup path for allocated items just before leaving the function (which will be free-d only if we're not dealing with a delayed SPU). * "goto" that cleanup path wherever needed CID #1427096 CID #1427114 2018-01-11 11:29:38 +0100 Víctor Manuel Jáquez Leal * sys/msdk/gstmsdk.c: msdk: change plugin's description There are not only encoders nowadays, there are decoders too and a postprocessor in the future. 2018-01-10 18:24:07 -0900 Sreerenj Balachandran * sys/msdk/gstmsdk.c: msdk: init the debug category for mpeg2dec https://bugzilla.gnome.org/show_bug.cgi?id=792260 2018-01-10 10:40:24 -0900 Sreerenj Balachandran * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkmpeg2dec.c: * sys/msdk/gstmsdkmpeg2dec.h: * sys/msdk/meson.build: msdk: Add mpeg2 decoder https://bugzilla.gnome.org/show_bug.cgi?id=792260 2018-01-09 18:11:52 -0500 Olivier Crête * configure.ac: srt: The pkgconfig is "srt", not "libsrt" Also, always use the pkgconfig file instead of falling back 2018-01-09 18:10:04 -0500 Olivier Crête * ext/srt/gstsrtserversrc.c: * ext/srt/gstsrtserversrc.h: srt: Include srt.h inside object header Otherwise, newer GCC complains about now having sockaddr defined in the header. 2018-01-07 14:45:37 +0000 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: doc update for set_subtitle_uri() A call to this function without enabling the subtitle track has no effect. 2017-12-29 15:14:54 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing Sometimes we might get an audio packet without a corresponding video frame. In these cases, the stream and hardware reference timestamps would be missing, because they're called on the video frame. Instead of potentially breaking stuff downstream that might depend on these, we now extrapolate them. https://bugzilla.gnome.org/show_bug.cgi?id=792042 2017-04-26 19:05:21 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Detect gaps on incoming stream times, issue warnings When we receive a video or audio buffer, we calculate the next stream time based on the current stream time + buffer duration. If the next buffer's stream time is after that, we issue a warning. This happens because the stream time incoming from Decklink should be really constant and without gaps. If there is a gap, it means that something went wrong, e.g. the internal buffer pool is empty (too many buffers queued up downstream). https://bugzilla.gnome.org/show_bug.cgi?id=781776 2018-01-04 15:41:51 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: Revert "WIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue warnings""" This reverts commit 8dceeb5ccd6e46a61e3bbe79efa45275504fa500. 2018-01-04 15:41:50 +0200 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: Revert "WIP: Revert "Revert "debugutils: Added new jitterer element""" This reverts commit a401cb9a61f21c2fbc803eb3f098a9e2496edc06. 2018-01-04 15:41:49 +0200 Vivia Nikolaidou * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "WIP: Revert "Revert "timecodestamper: LTC from audio""" This reverts commit e0be05dc7059cc97dceb70a48ca9cad4ee2edce6. 2018-01-04 15:41:48 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "WIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add""" This reverts commit 2f9da0ab59ef4231e9c850afb089d920e9d25609. 2018-01-04 15:41:44 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: Revert "decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing" This reverts commit 6af863916a7bf3bfe31970fdc2dd2d42ea3f9690. 2017-12-29 15:14:54 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Extrapolate stream/hw reference timestamps when video frame is missing Sometimes we might get an audio packet without a corresponding video frame. In these cases, the stream and hardware reference timestamps would be missing, because they're called on the video frame. Instead of potentially breaking stuff downstream that might depend on these, we now extrapolate them. https://bugzilla.gnome.org/show_bug.cgi?id=792042 2017-11-07 21:14:18 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: WIP: Revert "Revert "timecodestamper: Modify ltc-add to tc-add"" This reverts commit 05426d9298431c149807fb435cd1d632e9fd061f. 2017-11-07 21:14:15 +0200 Vivia Nikolaidou * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: WIP: Revert "Revert "timecodestamper: LTC from audio"" This reverts commit 1998ccf1fbd586ef1dc4b1e7256bad7af8136f13. 2017-11-07 21:14:01 +0200 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: WIP: Revert "Revert "debugutils: Added new jitterer element"" This reverts commit ccc1624d097cbfdaf9f99526c033c642c863400c. 2017-11-07 21:13:57 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: WIP: Revert "Revert "decklink: Detect gaps on incoming stream times, issue warnings"" This reverts commit 07819afda461f5e4d77c9be9f484a7aae3c5ec8c. 2018-01-03 16:07:24 +0100 Edward Hervey * ext/openh264/gstopenh264dec.cpp: openh264dec: Remove useless check We are sure to have a frame at this point CID #1427138 2018-01-03 15:15:25 +0100 Edward Hervey * ext/hls/gsthlssink2.c: hlssink2: Remove useless if statement message will always be present CID #1409853 2018-01-03 12:15:01 +0100 Edward Hervey * ext/kate/gstkateenc.c: kateenc: Fix memory leak in error cases CID #1427096 CID #1427114 2018-01-02 20:51:25 +0900 Justin Kim * ext/srt/gstsrt.h: * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesrc.c: * ext/srt/gstsrtclientsrc.c: * ext/srt/gstsrtserversink.h: * ext/srt/gstsrtserversrc.h: srt: Remove platform dependent socket headers SRT modules entrust `gnetworking.h` with finding right headers for the platforms. https://bugzilla.gnome.org/show_bug.cgi?id=792123 2018-01-02 15:23:00 +0100 Edward Hervey * gst-libs/gst/codecparsers/nalutils.c: nalutils: Fix Exponential-Golomb 'ue' parsing The algorithm we use only supports up to a maximum exponent of 31 (for a maximum resulting of 2**32 -1) CID #1427097 2018-01-02 11:43:39 +0000 Tim-Philipp Müller * configure.ac: * ext/opencv/meson.build: opencv: allow all future 3.4.x versions Fix-up for previous patch which I modified incorrectly. https://bugzilla.gnome.org/show_bug.cgi?id=792114 2018-01-02 10:12:11 +0100 Nicola Murino * configure.ac: * ext/opencv/meson.build: opencv: allow compilation against 3.4.x https://bugzilla.gnome.org/show_bug.cgi?id=792114 2017-12-27 13:08:18 +0000 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: transfer ownership of info properties The previous code would emit GObject critical warnings when the info properties are NULL. https://bugzilla.gnome.org/show_bug.cgi?id=791982 2017-12-26 09:54:18 +0900 Justin Kim * ext/srtp/gstsrtp.c: srtp: get ssrc for Application-Defined RTCP Packet Application-defined RTCP(204) packets also have a ssrc in their header. To find a valid stream from the packet, the ssrc should be used. https://bugzilla.gnome.org/show_bug.cgi?id=791955 2017-12-26 13:52:18 +0100 Tim-Philipp Müller * meson.build: meson: skip translations if gettext is not available 2017-12-24 11:36:01 +0100 Tim-Philipp Müller * pkgconfig/gstreamer-bad-audio.pc.in: Fix typo in gstreamer-bad-audio-1.0.pc https://bugzilla.gnome.org/show_bug.cgi?id=791910 2017-12-23 12:53:39 +0100 Tim-Philipp Müller * ext/gl/Makefile.am: gl: local libs should come first in Makefile.am And keep consistent order in CFLAGS and LIBS. 2017-12-23 12:29:03 +0100 Mark Nauwelaerts * ext/gl/Makefile.am: gl: arrange for finding headers and libs that have moved to -base In file included from ../../../gst-plugins-bad/ext/gl/gstopengl.c:47:0: ../../../gst-plugins-bad/ext/gl/gstglmixerbin.h:25:29: fatal error: gst/video/video.h: No such file or directory 2017-12-19 23:13:34 -0500 Nicolas Dufresne * gst/festival/gstfestival.c: festival: Don't forward all queries This fixes issues where wavparse would query the file size upstream and assert because the file size is way smaller then what the WAVE header says. This patch disable or cane a handful of queries that make no sense to forward. https://bugzilla.gnome.org/show_bug.cgi?id=791811 2017-12-20 15:02:30 +0100 Edward Hervey * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Don't leak pads all audioaggregator subclasses were leaking the first sink pad :) 2017-12-20 15:01:16 +0800 Jun Xie * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix pending_segment log pending_segment shall be logged as GST_PTR_FORMAT, it's an event https://bugzilla.gnome.org/show_bug.cgi?id=791813 2017-12-19 17:35:39 -0500 Olivier Crête * sys/shm/gstshmsink.c: shmsink: Block in preroll_wait on unlock The correct behaviour of anything stuck in the ->render() function between ->unlock() and ->unlock_stop() is to call gst_base_sink_wait_preroll() and only return an error if this returns an error, otherwise, it must continue where it left off! https://bugzilla.gnome.org/show_bug.cgi?id=774950 2017-07-22 20:32:20 +0200 Mathieu Duponchelle * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * tests/check/elements/audiomixer.c: audioaggregator: implement input conversion https://bugzilla.gnome.org/show_bug.cgi?id=786344 2016-07-07 20:40:22 +0200 Marcin Lewandowski * sys/shm/gstshmsink.c: smhsink: Check return values of functions working on memory https://bugzilla.gnome.org/show_bug.cgi?id=768530 2017-12-19 21:35:08 +0000 Tim-Philipp Müller * sys/applemedia/videotexturecache.m: applemedia: don't include private cocoa gl header 2017-12-19 16:22:52 -0500 Olivier Crête * tests/examples/gtk/Makefile.am: gtk example: Fix cflags in Makefile.am 2017-12-19 19:23:43 +0000 Tim-Philipp Müller * ext/Makefile.am: gl: enable openglmixers plugin in autotools again too 2017-12-19 17:56:33 +0000 Tim-Philipp Müller * sys/applemedia/Makefile.am: applemedia: fix build after gl move to -base 2017-12-19 17:34:50 +0000 Tim-Philipp Müller * ext/gl/meson.build: * ext/meson.build: * meson.build: meson: gl: fix build of openglmixers plugin 2017-12-19 15:14:07 +0000 Tim-Philipp Müller * meson.build: meson: fix dependency type name to check for 2017-12-19 15:06:22 +0000 Tim-Philipp Müller * meson.build: meson: fix build with GstGL from gst-plugins-base as subproject - use right fallback variable - get platform/winsys variables from subproject instead of pkg-config With contributions from Thibault Saunier. 2017-12-19 13:03:28 +0000 Tim-Philipp Müller * ext/gtk/gtkgstglwidget.c: gtk: don't include uninstalled header 2017-12-13 01:05:32 +0000 Tim-Philipp Müller * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/badallocators.h: * gst-libs/gst/allocators/gstphysmemory.c: * gst-libs/gst/allocators/gstphysmemory.h: * gst-libs/gst/allocators/meson.build: * gst-libs/gst/meson.build: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-bad-allocators.pc.in: allocatorsbad: physmem moved to -base 2017-12-17 20:54:06 +0000 Tim-Philipp Müller * configure.ac: * ext/gl/Makefile.am: * ext/gtk/Makefile.am: * ext/gtk/meson.build: * ext/qt/Makefile.am: * meson.build: * sys/androidmedia/Makefile.am: * sys/applemedia/Makefile.am: * sys/nvdec/Makefile.am: * sys/nvenc/Makefile.am: * tests/check/Makefile.am: * tests/examples/gtk/Makefile.am: gl: update plugins to use GstGL from -base 2017-12-11 14:20:59 +0000 Tim-Philipp Müller * configure.ac: * ext/gl/Makefile.am: * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectscurves.c: * ext/gl/effects/gstgleffectscurves.h: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorbalance.h: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfilterbin.c: * ext/gl/gstglfilterbin.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsinkbin.h: * ext/gl/gstglsrcbin.c: * ext/gl/gstglsrcbin.h: * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstgluploadelement.c: * ext/gl/gstgluploadelement.h: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: * ext/gl/gstglviewconvert.c: * ext/gl/gstglviewconvert.h: * ext/gl/gstopengl.c: * ext/gl/meson.build: gl: most of opengl plugin has moved to -base, keep mixer bits in -bad for now Since they rely on GstVideoAggregator. Fix detection of things again, and Meson 2017-12-11 12:59:09 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * ext/Makefile.am: * ext/meson.build: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/.gitignore: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/README: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/base.h: * gst-libs/gst/gl/glprototypes/blending.h: * gst-libs/gst/gl/glprototypes/buffers.h: * gst-libs/gst/gl/glprototypes/debug.h: * gst-libs/gst/gl/glprototypes/eglimage.h: * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/glprototypes/fixedfunction.h: * gst-libs/gst/gl/glprototypes/gles.h: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/query.h: * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/glprototypes/sync.h: * gst-libs/gst/gl/glprototypes/vao.h: * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfeature_private.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglfuncs.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglpixelformat.c: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_private.h: * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/utils/gles_versions.h: * gst-libs/gst/gl/utils/opengl_versions.h: * gst-libs/gst/gl/viv-fb/Makefile.am: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/win32_message_source.c: * gst-libs/gst/gl/win32/win32_message_source.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/xcb_event_source.c: * gst-libs/gst/gl/x11/xcb_event_source.h: * gst-libs/gst/meson.build: * meson_options.txt: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/meson.build: * po/POTFILES.in: * tests/check/Makefile.am: * tests/check/elements/glimagesink.c: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglheaders.c: * tests/check/libs/gstglmatrix.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglquery.c: * tests/check/libs/gstglshader.c: * tests/check/libs/gstglsl.c: * tests/check/libs/gstglslstage.c: * tests/check/libs/gstglupload.c: * tests/check/meson.build: * tests/check/pipelines/simple-launch-lines.c: * tests/examples/Makefile.am: * tests/examples/gl/Makefile.am: * tests/examples/gl/clutter/.gitignore: * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: * tests/examples/gl/clutter/cluttershare.c: * tests/examples/gl/clutter/cluttershare.cbp: * tests/examples/gl/cocoa/.gitignore: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/cocoa-videooverlay.m: * tests/examples/gl/generic/Makefile.am: * tests/examples/gl/generic/README: * tests/examples/gl/generic/cube/.gitignore: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/.gitignore: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/.gitignore: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/generic.sln: * tests/examples/gl/generic/recordgraphic/.gitignore: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/generic/recordgraphic/main.cpp: * tests/examples/gl/gtk/3dvideo/.gitignore: * tests/examples/gl/gtk/3dvideo/Makefile.am: * tests/examples/gl/gtk/3dvideo/main.cpp: * tests/examples/gl/gtk/3dvideo/mviewwidget.c: * tests/examples/gl/gtk/3dvideo/mviewwidget.h: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/README: * tests/examples/gl/gtk/filternovideooverlay/.gitignore: * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: * tests/examples/gl/gtk/filternovideooverlay/main.cpp: * tests/examples/gl/gtk/filtervideooverlay/.gitignore: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/fxtest/.gitignore: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/gl/gtk/gstgtk.c: * tests/examples/gl/gtk/gstgtk.h: * tests/examples/gl/gtk/gtk.sln: * tests/examples/gl/gtk/switchvideooverlay/.gitignore: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: * tests/examples/gl/meson.build: * tests/examples/gl/qt/.gitignore: * tests/examples/gl/qt/Makefile.am: * tests/examples/gl/qt/README: * tests/examples/gl/qt/mousevideooverlay/gstthread.cpp: * tests/examples/gl/qt/mousevideooverlay/gstthread.h: * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pri: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.sln: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/mousevideooverlay/qrenderer.cpp: * tests/examples/gl/qt/mousevideooverlay/qrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pri: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.sln: * tests/examples/gl/qt/qglwtextureshare/.gitignore: * tests/examples/gl/qt/qglwtextureshare/AsyncQueue.h: * tests/examples/gl/qt/qglwtextureshare/README: * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm: * tests/examples/gl/qt/qglwtextureshare/gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/main.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.h: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_gstthread.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_pipeline.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_qrenderer.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.pri: * tests/examples/gl/qt/videooverlay/videooverlay.pro: * tests/examples/gl/qt/videooverlay/videooverlay.sln: * tests/examples/gl/sdl/.gitignore: * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/meson.build: * tests/examples/gl/sdl/sdl.sln: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: * tests/examples/meson.build: gl: remove GStreamer OpenGL integration library and move to -base https://bugzilla.gnome.org/show_bug.cgi?id=754094 2017-12-18 16:54:15 -0500 Nicolas Dufresne * ext/ladspa/gstladspa.c: ladspa: Add Windows/OSX path support This is to mimic LV2 and what is commonly documented over the web. We also completely track these directories when updating the cache now. Unlike LV2, the plugins are flat in the plugin directories, so no need for the recursive lookup. This also fixes support for Fedora and other architecture using lib64 as a libdir. 2017-12-18 16:09:53 -0500 Nicolas Dufresne * ext/ladspa/meson.build: * ext/meson.build: meson: Enable ladspa plugins compilation 2017-12-18 14:42:21 -0500 Nicolas Dufresne * ext/lv2/gstlv2.c: lv2: Try and reflect better lilv default path While keeping it simple, this patch tries and mimic lilv default path. It does not matter if some path are duplicated due to symlink because in the end it's lilv that will walk these paths. The worst case is that we update our cache more often then strictly needed. https://bugzilla.gnome.org/show_bug.cgi?id=791717 2017-12-18 12:11:21 -0500 Nicolas Dufresne * ext/lv2/gstlv2.c: lv2: Recursively monitor the lv2 plugin path Otherwise we might not update the cache when needed. https://bugzilla.gnome.org/show_bug.cgi?id=791717 2017-12-19 01:16:35 +0530 Nirbheek Chauhan * configure.ac: * gst/meson.build: * gst/proxy/Makefile.am: * gst/proxy/gstproxy.c: * gst/proxy/gstproxysink-priv.h: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc-priv.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: * gst/proxy/meson.build: Revert "New element 'proxy' to send data to in-process pipelines" This reverts commit 8a056af05e23ad5b81cd1dc2699ae20abcf9b91a. Accidentally pushed this element, oops! Progress on this element is being tracked at: https://bugzilla.gnome.org/show_bug.cgi?id=788200 2017-12-19 01:14:03 +0530 Nirbheek Chauhan * meson.build: meson: Use cdata.set_quoted and set LIBDIR correctly LIBDIR must include the prefix. Also use set_quoted instead of manually quoting because it's clearer what the intention is. https://bugzilla.gnome.org/show_bug.cgi?id=791751 2017-09-26 20:12:24 +0530 Nirbheek Chauhan * configure.ac: * gst/meson.build: * gst/proxy/Makefile.am: * gst/proxy/gstproxy.c: * gst/proxy/gstproxysink-priv.h: * gst/proxy/gstproxysink.c: * gst/proxy/gstproxysink.h: * gst/proxy/gstproxysrc-priv.h: * gst/proxy/gstproxysrc.c: * gst/proxy/gstproxysrc.h: * gst/proxy/meson.build: New element 'proxy' to send data to in-process pipelines This plugin is useful when you want to pipe arbitrary data to a different pipeline within the same process. Buffers, events, and caps are transmitted as-is without copying or manipulation. 2017-12-18 11:34:13 -0500 Nicolas Dufresne * ext/lv2/meson.build: * ext/meson.build: meson: Enable building LV2 Note that I only support lilv 0.22+ for now, because it's simple and old enough. If anyone needs to use the 0.16 support it will need to be added. 2017-12-18 20:39:07 +0800 Jun Xie * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix log integer format range_start/range_end shall be logged as G_GINT64_FORMAT https://bugzilla.gnome.org/show_bug.cgi?id=791735 2017-12-14 15:18:38 +0800 Jun Xie * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: parse xs:dateTime's timezone indicator The lexical form of xs:dateTime is YYYY-MM-DDThh:mm:ss[Z|(+|-)hh:mm] timezone indicator (+|-)hh:mm] needs to be parsed. https://bugzilla.gnome.org/show_bug.cgi?id=791602 2017-12-16 10:44:26 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Fix-up set_seek_accurate() configuration to take a player config instead of a player instance 2017-12-16 10:22:44 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Consistently use GstVideoMultiviewFramePacking instead of Mode The latter needs additional metadata, and the former was already used everywhere except for the functions: in properties in playbin itself. 2017-12-15 17:38:12 +0100 Edward Hervey * ext/aom/gstav1enc.c: av1enc: Add debugging of configuration settings In preparation of making such properties configurable via gobject properties. 2017-12-15 17:37:08 +0100 Edward Hervey * ext/aom/gstav1enc.c: av1enc: Remove g_print for errors And use standard debugging system for it 2017-06-27 22:50:41 +0000 Sean DuBois * configure.ac: * ext/Makefile.am: * ext/aom/Makefile.am: * ext/aom/gstaom.c: * ext/aom/gstaom.h: * ext/aom/gstav1dec.c: * ext/aom/gstav1dec.h: * ext/aom/gstav1enc.c: * ext/aom/gstav1enc.h: * ext/aom/meson.build: * ext/meson.build: Add aom plugin with av1enc and av1dec element https://bugzilla.gnome.org/show_bug.cgi?id=784160 2017-12-14 13:31:33 -0800 Reynaldo H. Verdejo Pinochet * ext/opencv/gsthanddetect.cpp: opencv: handdetect: fix typo in example launch line 2017-11-22 14:29:51 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Start audio pre-rolling if the output is not started yet in render() This seems to allow to schedule audio samples correctly at their right times already. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-06 20:36:37 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Only start if both sinks are set to PLAYING already Not only if the video sink is set to PLAYING so far. Also give more useful debug output about why we don't start, and don't start if already started. Also refactor the function to early-return instead of having a huge if-else block over the whole function. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-06 19:42:42 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Include final flow return in debug output https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-11-27 17:41:52 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Check also against the clock if we run ahead of the clock too much The buffer level as reported by the Decklink driver is completely unreliable, and we could otherwise easily run ahead >1s if we're unlucky. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-11-22 16:37:12 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosink.h: decklinkaudiosink: Implement resampling/buffer reversing for trick-modes https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-11-08 19:31:37 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkaudiosink: Re-implement around GstBaseSink instead of GstAudioBaseSink The Decklink and GstAudioBaseSink APIs don't fit very well together, which causes various problems due to inaccuracies in the clock calculations and the actual ringbuffer and GStreamer's copy getting of sync. Problems are audio drop-outs and A/V sync getting wrong after pausing/seeking. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-14 14:49:10 +1100 Matthew Waters * common: Automatic update of common submodule From e8c7a71 to 3fa2c9e 2017-12-12 08:40:33 +0100 Josep Torra * sys/applemedia/vtenc.c: vtenc: fix a warning when building in MacOS 10.12 vtenc.c:564:20: error: incompatible pointer types passing 'GstVTEnc *' (aka 'struct _GstVTEnc *') to parameter of type 'GstVideoEncoder *' (aka 'struct _GstVideoEncoder *') 2017-12-12 08:31:47 +0100 Josep Torra * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: cocoa: fix a warning when building in MacOS 10.12 gstglwindow_cocoa.m:186:60: error: incompatible pointer types sending 'GstGLContextCocoa *' (aka 'struct _GstGLContextCocoa *') to parameter of type 'GstGLContext *' (aka 'struct _GstGLContext *') 2017-12-08 14:46:35 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: gl: display: demote error level at display creation error https://bugzilla.gnome.org/show_bug.cgi?id=791391 2017-11-10 15:56:40 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Added "avwait-status" element message "avwait-status" is posted when avwait starts or stops passing through data (e.g. because target-timecode and end-timecode respectively have been reached). The attached structure includes a "dropping" boolean (set to TRUE if we are currently dropping data, FALSE otherwise), and a "running-time" GST_CLOCK_TIME which contains the running time of the change. https://bugzilla.gnome.org/show_bug.cgi?id=790170 2017-10-16 19:51:36 +0200 Mathieu Duponchelle * meson_options.txt: * tests/check/media/download-media: * tests/check/media/meson.build: * tests/check/meson.build: meson test: Enable libs tests https://bugzilla.gnome.org/show_bug.cgi?id=789064 2017-12-08 13:54:27 +0100 Edward Hervey * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-audio.pc.in: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video.pc.in: pkgconfig: Move fixes for move of aggregator to core 2017-12-07 19:14:23 +0000 Tim-Philipp Müller * gst/videoparsers/gsth264parse.c: h264parse: make caps writable before modifying them https://bugzilla.gnome.org/show_bug.cgi?id=790628 2017-12-07 11:02:02 +0900 Seungha Yang * ext/srt/gstsrt.c: srt: Post error message for NULL host ... instead of crash without any information https://bugzilla.gnome.org/show_bug.cgi?id=791329 2017-12-06 20:50:31 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Fix memory leak of shm allocator This fixes conflict resolution error introduced in commit: 816d115317c522c87297109de781c63b16146493 http://bugzilla.gnome.org/show_bug.cgi?id=790042 2017-11-01 18:05:26 +0900 Shinya Saito * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: waylandsink: Fix memory leak of shm allocator. gst_allocator_find() needs gst_object_unref() after usage. https://bugzilla.gnome.org/show_bug.cgi?id=790042 2017-11-25 15:35:05 +0800 Jun Xie * ext/dash/gstmpdparser.c: dashdemux: fix coredump issue with external AdaptationSet fix wrong AdaptationSet list iterator https://bugzilla.gnome.org/show_bug.cgi?id=790812 2017-11-25 22:24:39 +0900 Hosang Lee * ext/hls/m3u8.c: m3u8: Parse and use AVERAGE-BANDWIDTH attribute if available The AVERAGE-BANDWIDTH attribute in the EXT-X-STREAM-INF tag represents the average segment bit rate of the Variant Stream, while the BANDWIDTH attribute represents the peak segment bit rate of the Variant Stream. (https://tools.ietf.org/html/draft-pantos-http-live-streaming-23#section-4.3.4.2) Using the average bit rate instead of the peak bit rate for variant switching is more efficient and appropriate. Sometimes due to VBR encoding, the BANDWIDTH may represent a value way above the average bit rate, which could result to players not switching to that variant stream although network bandwidth is sufficiently available. https://bugzilla.gnome.org/show_bug.cgi?id=790821 2017-11-26 11:46:06 +0900 Wonchul Lee * tests/examples/audiomixmatrix/Makefile.am: * tests/examples/audiomixmatrix/test-audiomixmatrix.c: examples: audiomixmatrix: Remove unused part matrix-value-array property is removed since 18917de9562d0d33cf80ca68c071eee3572d4483 commit applied https://bugzilla.gnome.org/show_bug.cgi?id=790836 2017-12-04 11:52:16 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Fix CropMeta support We copy the meta's from the original buffer to the wrapper or copied buffer. https://bugzilla.gnome.org/show_bug.cgi?id=790473 2017-12-01 16:53:34 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Enforce pixel aspect ratio when we cannot scale When we cannot scale, we need to enforce the pixel aspect ratio. This was partly implemented in the previous patch. Doing this simplify some of the code. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-11-22 10:42:37 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Wait until scheduled playback is actually stopped before continuing Otherwise we might "start" again, just to get finally stopped and then getting errors all over the place. https://bugzilla.gnome.org/show_bug.cgi?id=790114 2017-12-06 19:15:40 +0900 Seungha Yang * ext/srt/gstsrt.c: srt: Fix warning error gstsrt.c: In function ‘gst_srt_client_connect_full’: gstsrt.c:151:6: error: ‘sock’ may be used uninitialized in this function [-Werror=maybe-uninitialized] if (sock != SRT_INVALID_SOCK) { https://bugzilla.gnome.org/show_bug.cgi?id=791302 2017-12-01 13:02:12 +0000 Ursula Maplehurst * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: when flushing, better handle IllegalStateException received from getOutputBuffer 1. Similar to 880f3d8, don't consider not getting an output buffer as an error during flushing. I've seen the following sometimes when encoding: W GStreamer+amcvideoenc: java.lang.IllegalStateException W GStreamer+amcvideoenc: at android.media.MediaCodec.getBuffer(Native Method) W GStreamer+amcvideoenc: at android.media.MediaCodec.getOutputBuffer(MediaCodec.java:2886) 2. For amcvideodec/enc, call _find_nearest_frame (which grabs a fresh reference on a GstVideoCodecFrame) after we have an output buffer, so as to not leak the reference, in case getting an output buffer fails. Otherwise, if we get an error grabbing the output buffer, we leak the reference to the frame. This can cause issues with a v4l2bufferpool feeding the encoder not being able to clean itself up properly due to buffers still being marked as in-use. https://bugzilla.gnome.org/show_bug.cgi?id=791258 2017-12-05 10:37:40 +0100 Víctor Manuel Jáquez Leal * ext/gl/gstgldownloadelement.c: gldownload: fix wrong enum When compiling with clang, an enum conversion error is triggered since GstVideoFrameFlags are not GstVideoFlags. This patch sets GST_VIDEO_FRAME_FLAG_NONE to the added video meta. https://bugzilla.gnome.org/show_bug.cgi?id=791251 2017-12-03 11:22:02 +0100 Edward Hervey * docs/libs/gst-plugins-bad-libs-docs.sgml: docs: aggregator has moved to base 2017-12-02 19:28:30 -0500 Nicolas Dufresne * ext/gl/gstgldownloadelement.c: gldownload: Add missing ifdef for dmabuf and egl This fixes the build for platforms that don't support one or the other. 2017-12-02 15:25:38 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Prefer wayland over X11 As most Wayland compositors supports XWayland, X11 backend get selected. This also realign better GStreamer decision to what happens with GTK and other stack out there. 2017-12-02 15:25:16 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Add missing GL API to the doc 2017-01-10 19:23:58 -0600 Matt Fischer * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: gldownload: Add dmabuf exporting This patch adds code to gldownload to export the image as a dmabuf if requested. The element now exposes memory:DMABuf as a cap feature, and if it is selected, the element exports the texture to an EGL image and then a dmabuf. It also implements a fallback to system memory download in case the exportation failed. https://bugzilla.gnome.org/show_bug.cgi?id=776927 2017-12-02 16:01:25 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * ext/gl/Makefile.am: * ext/gl/meson.build: * ext/iqa/Makefile.am: * ext/iqa/meson.build: * ext/openmpt/Makefile.am: * ext/wildmidi/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/meson.build: * gst-libs/gst/base/Makefile.am: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/base/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/meson.build: * gst/audiomixer/Makefile.am: * gst/audiomixer/meson.build: * gst/compositor/Makefile.am: * gst/compositor/meson.build: * gst/mxf/Makefile.am: * gst/mxf/meson.build: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-base-uninstalled.pc.in: * pkgconfig/gstreamer-bad-base.pc.in: * pkgconfig/meson.build: * tests/check/Makefile.am: * tests/check/libs/aggregator.c: Remove GstAggregator from -bad, moved to core https://bugzilla.gnome.org/show_bug.cgi?id=739010 2017-12-01 11:59:01 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add display-width/height properties This is to be used with gst_video_overlay_set_render_rectangle() so the application can calculate a rectangle that fits inside the display. The property changes are notify in a way that you can watch either notify::display-width or notify::display-height and both will be up-to-data when this is called back. Before the element is started, the size will be 0x0. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-09-14 18:12:18 +0800 Haihua Hu * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: support videooverlay interface Implement videooverlay interface in kmssink, divided into two cases: when driver supports scale, then we do refresh in show_frame(); if not, send a reconfigure event to upstream and re-negotiate, using the new size. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-09-12 15:46:01 +0800 Haihua Hu * sys/kms/gstkmssink.c: kmssink: add can-scale property https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-11-27 20:05:29 +0800 Jun Xie * ext/dash/gstmpdparser.c: dashdemux: remove duplicated code remove duplicated code https://bugzilla.gnome.org/show_bug.cgi?id=790895 2017-11-27 21:27:23 +0800 Jun Xie * ext/dash/gstmpdparser.c: dashdemux: fix memory leak GPtrArray in GstActiveStream is leaked in some cases. gst_mpdparser_free_active_stream shall be invoked to free GstActiveStream https://bugzilla.gnome.org/show_bug.cgi?id=790899 2017-11-28 13:44:54 +0000 Tim-Philipp Müller * pkgconfig/meson.build: meson: don't generate or install pkg-config file for gstreamer-wayland which is not for public consumption currently (headers not installed). https://bugzilla.gnome.org/show_bug.cgi?id=790912 2017-11-27 20:11:23 +1100 Matthew Waters * common: Automatic update of common submodule From 3f4aa96 to e8c7a71 2017-11-27 14:44:58 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/qt/gstqtglutility.cc: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: use public GstGLContext instead of Cocoa-specific one Allows keeping the GstGLCAOpenGLLayer public but not the winsys-specific context/display/window. 2017-11-27 14:44:24 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: Revert "gl: cocoa: sprinkle some GST_EXPORT" This reverts commit 94d798c3337013bd902c0fd0a66f7f6842243eeb. cocoac headers don't need to be public as all the functionality can be provided by the base class 2017-11-26 22:36:35 +0000 Tim-Philipp Müller * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: gl: cocoa: sprinkle some GST_EXPORT Undefined symbols for architecture x86_64: "_gst_gl_context_cocoa_get_type", referenced from: __create_layer in libgstopengl_la-caopengllayersink.o Might need some more in other headers, but first need to clarify what exactly should be exported, there are some inconsistencies (installed header files vs. funcs in docs). 2017-11-26 18:35:13 +0000 Tim-Philipp Müller * Makefile.am: autotools: remove check-exports target dep which no longer exists 2017-11-26 16:32:01 +0000 Tim-Philipp Müller * Makefile.am: * win32/MANIFEST: * win32/common/libgstadaptivedemux.def: * win32/common/libgstbadaudio.def: * win32/common/libgstbadbase.def: * win32/common/libgstbadvideo.def: * win32/common/libgstbasecamerabinsrc.def: * win32/common/libgstcodecparsers.def: * win32/common/libgstinsertbin.def: * win32/common/libgstisoff.def: * win32/common/libgstmpegts.def: * win32/common/libgstphotography.def: * win32/common/libgstplayer.def: * win32/common/libgsturidownloader.def: win32: remove .def file with exports They're no longer needed, symbol exporting is now explicit via GST_EXPORT in all cases (autotools, meson, incl. MSVC). 2017-11-26 16:25:50 +0000 Tim-Philipp Müller * configure.ac: autotools: stop controlling symbol visibility with -export-symbols-regex Instead, use -fvisibility=hidden and explicit exports via GST_EXPORT. This should result in consistent behaviour for the autotools and Meson builds. 2017-11-26 16:07:13 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * win32/common/libgstcodecparsers.def: codecparsers: mpegvideoparser: remove API that was deprecated 5 years ago Libraries in -bad are not covered by our API/ABI stability guarantees, and to the best of our knowledge everyone using this API has moved to the replacement APIs ages ago. 2017-11-25 20:06:57 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Add prototype for gst_wayand_pool_get_type() 2017-11-22 22:27:04 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Rollback video info changes when copying We change the video info base on the received buffer. We need to rollback these changes whenever we want to copy into our internal pool of buffers. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:18:24 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wlshmallocator.c: waylandsink: Validate strides and offset when using FD as SHM As SHM interface only support 1 stride, and 1 offset, we need to make sure that there is no padding between planes for planar formats. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:17:14 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Update video info size to buffer size We where setting the size to the first memory size, this may be too small in case we received a buffer with multiple memory. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:12:12 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Allocate only what's needed when copying There was this regression that we'd be using the updated video info size instead of default size when initializing the pool. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:11:02 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Only try SHM for single memory buffer https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-21 23:10:03 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: wlwindow: Only update video info on new render The sink->video_info might not reflect the current buffer when expose is being called. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2017-11-20 21:09:28 -0500 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Disable video-alignment from the pool The SHM interface does not allow passing arbitrary strides and offsets, for this reason, we simply disable this feature from the proposed pool. This fixes video artifact seen when using the FFMPEG based video decoder. https://bugzilla.gnome.org/show_bug.cgi?id=790057 2016-10-24 23:02:38 +0200 Havard Graff * ext/opus/gstopusparse.c: opusparse: fix uninitialized-warning 2016-01-29 11:46:52 +0100 Stian Selnes * gst/videoparsers/h263parse.c: h263parse: Add debug log for more annexes when plustype 2017-11-25 13:10:11 +0100 Edward Hervey * ext/hls/m3u8.c: hls: Don't leak mutex 2017-11-25 12:48:40 +0100 Edward Hervey * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't leak string The result of gst_video_colorimetry_to_string () needs to be free'd 2017-11-25 11:27:57 +0000 Tim-Philipp Müller * gst/netsim/gstnetsim.c: netsim: simplify getting buffer size in bits 2017-10-10 15:45:47 +0200 Håvard Graff * pkgconfig/meson.build: meson.build: use join_paths() on prefix So that "/" are correct on Windows and the paths in the .pc files are like C:/some/where and not C:\some\where. 2017-11-25 11:16:28 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: ignore waylandsink in state change test "Unexpected critical/warning: Wayland compositor is missing the ability to scale, video display may not work properly." 2016-11-01 16:03:00 +0100 Havard Graff * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: add "allow-reordering" property Reordering of packets is not very common in networks, and the delay functions will always introduce reordering if delay > packet-spacing, so by setting allow-reordering to FALSE you guarantee that the packets are in order, while at the same time introducing delay/jitter to them. 2016-10-03 18:43:24 +0200 Stian Selnes * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: Add gamma distribution for delay This simulates the delay on wifi networks better. 2016-08-02 13:45:54 +0200 Stian Selnes * gst/netsim/gstnetsim.c: netsim: Change max-delay to be inclusive It is more intuitive for the user that in order to acheive a constant delay min-delay and max-delay are equal. 2016-08-01 20:27:03 +0200 Stian Selnes * gst/netsim/Makefile.am: * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: * gst/netsim/meson.build: netsim: Add "delay-distribution" property plus normal distribution By using the property "delay-distribution" the user can control how the delay applied to delayed packets is distributed. This is either the uniform distribution (as before) or the normal distribution. "min-delay" and "max-delay" control both distributions. For the normal distribution it defines the bounds of the 95% confidence interval. 2017-11-23 13:47:48 +0100 Havard Graff * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: add token bucket algorithm for simulating network congestion 2017-11-23 13:48:32 +0100 Havard Graff * gst/netsim/gstnetsim.c: netsim: change property enums to PROP_* and fix indentation 2017-11-24 22:09:25 +0000 Tim-Philipp Müller * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: netsim: remove private struct and padding There's no need for these things, since the plugin headers are not public, and all the extra ->priv-> just clutter the code. 2017-11-25 09:41:00 +0100 Edward Hervey * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Handle bitrate > 2**31 On very-high connection, we could quite well exceed that. Instead use gint64 for max-bitrate. 2017-11-24 17:06:22 -0500 Nicolas Dufresne * tests/examples/gl/sdl/sdlshare.c: sdlshare: Destroy GL backend buffer before the GL Context This was otherwise leading to a deadlock in the GL library. 2017-11-24 16:58:21 -0500 Nicolas Dufresne * tests/examples/gl/sdl/sdlshare2.c: sdlshare2: Fix race conditions The client-draw callback is running on the GL Thread, which will be required to map the buffer. Map early, and pass the mapped frame instead. On top of that, make sure to signal any pending draw before trying to push EOS, as some pad locks might be taken. This is the cost of using the same thread to control GStreamer and to render GL. 2017-11-24 16:58:01 -0500 Nicolas Dufresne * tests/examples/gl/meson.build: * tests/examples/gl/sdl/meson.build: * tests/examples/meson.build: meson: Build gl/sdl examples 2017-11-24 15:48:19 -0500 Nicolas Dufresne * tests/examples/meson.build: meson: Playout example has not GL deps 2017-11-24 15:19:25 -0500 Nicolas Dufresne * tests/examples/meson.build: meson: Add missing examples directory This will make it more visible what is missing in meson. 2017-11-24 15:17:02 -0500 Nicolas Dufresne * tests/examples/meson.build: meson: Build playout example 2017-11-22 14:35:31 +0100 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: early set src caps when input not byte-stream When input is not in byte-stream format there is no need to wait for the first buffer before setting src caps. We already have all the information from the input codec_data. This allow us to already configure downstream elements allowing them, for example, to already allocate their internal buffers as they know the format of the input they are about to receive. Same change as the one I just did in h264parse. https://bugzilla.gnome.org/show_bug.cgi?id=790709 2017-11-22 14:35:31 +0100 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: h264parse: early set src caps when input is avc When input is in AVC format there is no need to wait for the first buffer before setting src caps. We already have all the information from the input codec_data. This allow us to already configure downstream elements allowing them, for example, to already allocate their internal buffers as they know the format of the input they are about to receive. https://bugzilla.gnome.org/show_bug.cgi?id=790709 2017-11-24 08:06:52 +0100 Edward Hervey * sys/uvch264/gstuvch264_src.c: uvch264src: Check return values of all xu_query calls And use warnings/returns like for other calls CID #1373414 CID #1373417 2017-11-24 08:00:21 +0100 Edward Hervey * ext/gtk/gtkgstglwidget.c: gtk: Fix possibility of NULL variable It's quite unlikely since it's initialized in instance initialization. CID #1417721 2017-11-24 07:57:49 +0100 Edward Hervey * ext/dc1394/gstdc1394src.c: dc1394src: Remove logically dead code buffer would always be NULL in the error case. Simplify and just return GST_FLOW_ERROR CID #1417216 2017-11-23 23:01:52 +1100 Jan Schmidt * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: viv-fb: Don't destroy the native FB display It causes crashes in applications because the result of fbGetDisplay() might be in use elsewhere in the application and Vivante doesn't seem to do any refcounting 2017-11-23 22:58:40 +1100 Jan Schmidt * ext/qt/gstqtglutility.cc: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: Revert "gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass" This reverts commit 47fd4d391e775c11f529705bb0f457a9d25ba5e7. This patch is incorrect. It doesn't actually compile, and causes a crash because the viv-fb window implementation needs a native EGL handle to pass to fbCreateWindow, but the GstGLDisplayEGL handleis actually an EGLDisplay now (and gets cast to the wrong type) 2017-11-24 01:37:48 +1100 Jan Schmidt * tests/examples/gl/gtk/3dvideo/main.cpp: 3dvideo example: Correct video overlay for HiDPI Use the GTK scaling factor to scale the video allocation so video displays correctly on hi-dpi screens 2017-11-23 11:15:49 +0100 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: meson: remove outdated comment in build file 2017-11-23 12:38:11 +0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: keep draining even if a finish_task fails Should continue draining so that it could try to discard the rest of pending frames even if a finish_task fails. https://bugzilla.gnome.org/show_bug.cgi?id=790312 2017-11-10 13:32:17 -0600 Mario Alfredo Carrillo Arevalo * configure.ac: opencv: Update version for building plugins This commit allows to build the OpenCV plugin with OpenCV >= 2.3.0 to < 3.4.0. https://bugzilla.gnome.org/show_bug.cgi?id=790192 2017-11-23 08:14:06 +0100 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix previous commit strlen on strings (and not sizeof) *sigh* 2017-11-23 08:12:03 +0100 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix sock_addr usage (for real) It was great checking that the string was not too big ... but it's better if we actually copy the proper amount of bytes :) CID #206004 2017-11-23 08:09:36 +0100 Edward Hervey * sys/ipcpipeline/gstipcpipelinecomm.c: ipcpipeline: Don't leak structure CID #1416131 2017-11-23 08:05:48 +0100 Edward Hervey * sys/ipcpipeline/gstipcpipelinecomm.c: ipcpipeline: Simplify usage of g_cond_wait_until() It will return FALSE if a timeout happened. So don't check if we timed out afterwards, just use the return value. CID #1416347 2017-11-23 08:02:58 +0100 Edward Hervey * sys/ipcpipeline/gstipcpipelinesink.c: ipcpipeline: Check the proper value The code is meant to check the *peer* state change return value (and not the sink's one). CID #1416128 2017-11-22 17:37:02 +0100 Piotr Drąg * po/POTFILES.in: po: update POTFILES.in https://bugzilla.gnome.org/show_bug.cgi?id=790716 2017-11-22 16:53:17 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Don't leak structure CID #1415716 2017-11-06 21:07:51 +0100 Mathieu Duponchelle * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/compositor/compositor.c: * gst/mxf/mxfmux.c: aggregator: Remove klass->sinkpads_type This posed problems for the python bindings (and possibly others). Instead, subclasses now use add_pad_template_with_gtype. https://bugzilla.gnome.org/show_bug.cgi?id=789986 2017-11-20 17:54:54 +0100 Guillaume Desmottes * gst/videoparsers/gsth265parse.c: h265parse: put downstream caps first if possible on sink caps Try prioritizing downstream's caps over upstream's if possible so the parser can configured in "passthrough" if possible and save it from doing useless conversions. Exact same change as the one I just did in h264parse. https://bugzilla.gnome.org/show_bug.cgi?id=790628 2017-11-20 17:54:54 +0100 Guillaume Desmottes * gst/videoparsers/gsth264parse.c: * tests/check/elements/h264parse.c: h264parse: put downstream caps first if possible on sink caps Try prioritizing downstream's caps over upstream's if possible so the parser can configured in "passthrough" if possible and save it from doing useless conversions. https://bugzilla.gnome.org/show_bug.cgi?id=790628 2017-11-22 11:33:54 +0900 Hyunjun Ko * sys/msdk/gstmsdkdec.c: msdkdec: fix buffer leaks during drain and a leak of videobufferpool https://bugzilla.gnome.org/show_bug.cgi?id=790312 2017-11-21 14:57:03 +0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: msdkenc: handle the MORE_DATA case If the driver requires more data, just unref the frame at the moment then retreive/finish the frame after encoding is finished. This also fixes a memory leak. https://bugzilla.gnome.org/show_bug.cgi?id=790312 2017-11-22 10:30:22 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Print "Starting" instead of "Stopping" when starting 2017-11-17 17:09:22 +1100 Matthew Waters * sys/nvdec/gstnvdec.c: nvdec: implement flush/drain Fixes outputted frame sequence when performing a seek i.e. when seeking backwards, the first frame after the seek was a frame from the future. This would result in GstVideoDecoder essentially marking all the timestamps as essentially bogus and the base class would attempt to compensate. A visible indication of this was 'decreasing timestamp' warning after a seek. https://bugzilla.gnome.org/show_bug.cgi?id=790478 2017-11-21 20:56:38 +0100 Tim-Philipp Müller * ext/curl/meson.build: curl: fix meson build Include libsdir so our i18n header there is found. 2017-11-21 12:03:38 -0500 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add Raspberry Pi (vc4) support 2017-11-21 16:43:03 +0100 Edward Hervey * ext/libde265/libde265-dec.c: de265: Don't leak CodecState Unref it in error case CID #1417220 2017-11-21 16:39:14 +0100 Edward Hervey * ext/vulkan/vkupload.c: vulkan: Fix out-of-bound read G_N_ELEMENTS is the *number* of entries, not the maximum entry number CID #1417215 2017-11-21 16:30:35 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Post an error message if no URI was set Like for other sources 2017-11-21 16:30:17 +0100 Edward Hervey * ext/curl/gstcurl.c: * ext/curl/gstcurlhttpsrc.c: curl: Add i18n 2017-11-21 15:48:06 +0100 Edward Hervey * tests/check/elements/srtp.c: tests/srtp: Bump up timeout to 3mins for testcase This involves generating and processing 65536 packets, let's give it time to actually complete that. And a bit of debug to track what's going on. 2017-11-21 15:33:57 +0100 Edward Hervey * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: Handle invalid XML Nothing guarantees the manifest is valid and will return a root node 2017-11-21 15:33:08 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Fix return value The function returns a gchar * (and not a boolean) 2017-11-21 15:31:05 +0100 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Don't switch to PAUSED if not URI was specified Like for other sources 2017-11-20 17:06:07 +0100 Edward Hervey * gst-libs/gst/gl/gstglcontext.c: * gst/dvbsuboverlay/dvb-sub.c: * gst/mxf/mxftypes.c: all: Fix left-shift undefined behaviour Cast to the target type before shifting (or use macro if available) 2017-10-31 10:09:44 +0200 Sebastian Dröge * sys/msdk/Makefile.am: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: msdkh264enc: Implement frame-packing SEI insertion for side-by-side and top-bottom Ideally this would be supported directly in the Intel MediaSDK but that's not the case nowadays. https://bugzilla.gnome.org/show_bug.cgi?id=774920 2017-11-17 17:49:16 +0900 Hyunjun Ko * sys/msdk/gstmsdkenc.c: * sys/msdk/msdk.c: msdkenc: Fix handling of YUY2, UYVY, BGRA surfaces https://bugzilla.gnome.org/show_bug.cgi?id=789847 2017-11-16 11:32:52 +0200 Sebastian Dröge * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/msdk.c: msdkenc: Add support for YV12, YUY2, UYVY and BGRA By doing conversion with VPP to NV12 before the actual encoding. https://bugzilla.gnome.org/show_bug.cgi?id=789847 2017-11-09 12:36:44 +0800 Jun Xie * ext/hls/gsthlsdemux.c: hlsdemux: Fix memory leak caused by double buffer map https://bugzilla.gnome.org/show_bug.cgi?id=789999 2017-11-13 23:01:58 +0900 Justin Kim * ext/srt/gstsrt.c: * ext/srt/gstsrt.h: * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesink.h: * ext/srt/gstsrtbasesrc.c: * ext/srt/gstsrtbasesrc.h: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtclientsrc.c: * ext/srt/gstsrtserversink.c: * ext/srt/gstsrtserversrc.c: srt: add passphrase and key length properties For stream encryption, both `passphrase` and `key-length` properties are required. https://bugzilla.gnome.org/show_bug.cgi?id=790315 2017-11-14 18:13:54 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Deserialised timecodes set after caps event now get correct framerate A deserialised timecode has a framerate of 0/1 by default. That breaks it when comparing the frames field with another timecode (incoming from the frame). We were setting the framerate when receiving the caps event, but not when setting the timecode in set_property, so it was broken for timecodes set after the caps event. Also checking if the fps_n we got from the caps event is != 0 before setting it - also at the caps event. https://bugzilla.gnome.org/show_bug.cgi?id=790334 2017-11-10 17:21:43 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: timecode: Fix incorrect wording in error message 2017-11-10 17:18:45 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Better handling of deserialised timecode framerates Now that timecodes support proper serialisation / deserialisation, a timecode might have an invalid fps_n / fps_d even without using the target-time-code-string property. Detect those cases and set fps_n/fps_d properly. 2017-11-09 12:08:35 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Remove unused "bflags" variable We are ignoring all its flags anyway, so let's remove it altogether. 2017-11-09 11:44:17 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Ignore some driver-set timecode flags The "fields" flag is ignored because currently GStreamer doesn't support having only top or only bottom fields inside a frame. The "drop frame" flag is ignored because some occurrences have been spotted where it wasn't set while it should have been. In practice, when we have 29.97 or 59.94 FPS, it's always drop-frame. https://bugzilla.gnome.org/show_bug.cgi?id=790112 2017-11-09 00:16:21 +0200 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: decklink: Don't crash when getting hw serial number doesn't return OK If the return value isn't OK, it means we might be getting data that points to an invalid memory address. That shouldn't make us crash. 2017-07-31 14:38:34 +0900 Justin Kim * configure.ac: * ext/Makefile.am: * ext/meson.build: * ext/srt/Makefile.am: * ext/srt/gstsrt.c: * ext/srt/gstsrt.h: * ext/srt/gstsrtbasesink.c: * ext/srt/gstsrtbasesink.h: * ext/srt/gstsrtbasesrc.c: * ext/srt/gstsrtbasesrc.h: * ext/srt/gstsrtclientsink.c: * ext/srt/gstsrtclientsink.h: * ext/srt/gstsrtclientsrc.c: * ext/srt/gstsrtclientsrc.h: * ext/srt/gstsrtserversink.c: * ext/srt/gstsrtserversink.h: * ext/srt/gstsrtserversrc.c: * ext/srt/gstsrtserversrc.h: * ext/srt/meson.build: srt: Introduce SRT source and sink SRT[0] is an open source transport technology[1] that optimizes streaming performance across unpredictable networks. Although SRT is based on UDP, it works like connection-oriented protocol. However, it doesn't mean that the SRT server or client is necessarily to link to a receiver or a sender so, here, the pairs of source and sink elements are introduced. - srtserversink: SRT server to feed SRT stream - srtclientsrc: SRT client to get SRT stream from srtserversink - srtclientsink: SRT client to send SRT stream - srtserversrc: SRT server to listen from srtclientsink [0] https://github.com/Haivision/srt [1] http://www.srtalliance.org/ https://bugzilla.gnome.org/show_bug.cgi?id=785730 2017-11-07 21:12:42 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: Revert "decklink: Detect gaps on incoming stream times, issue warnings" This reverts commit c1294e10f99adf04a104397da735904634400464. Was not ready to be pushed yet. 2017-11-07 21:12:36 +0200 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: Revert "debugutils: Added new jitterer element" This reverts commit 595254f21b15702d95d5a7cf6e43d29f9c179f43. Was not ready to be pushed yet. 2017-11-07 21:12:32 +0200 Vivia Nikolaidou * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "timecodestamper: LTC from audio" This reverts commit c01afab9f7fa7e822dea38e358e92163e8d36282. Was not ready to be pushed yet 2017-11-07 21:12:25 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: Revert "timecodestamper: Modify ltc-add to tc-add" This reverts commit 6552981b795a024d26bf509893d55970c2294c04. Was not ready to be pushed yet 2017-11-07 21:03:22 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Fix crash when explicitly setting end_tc to NULL If end_tc is NULL, it means that we don't want avwait to stop at any timecode. When explicitly setting end_tc to NULL, there is no point in comparing end_tc with start_tc (to see if we'll reject end_tc for being before start_tc), so the check in question is completely disabled instead of letting it crash. 2017-10-02 18:39:49 +0200 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Modify ltc-add to tc-add It is more general now and also adds TC to internal counter 2017-06-13 13:19:19 +0300 Georg Lippitsch * configure.ac: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: LTC from audio Add support for parsing linear time code from an audio source using libltc https://github.com/x42/libltc The user can now choose between 3 different and independently running timecode sources. The old override-existing property has been replaced by timecode-source. https://bugzilla.gnome.org/show_bug.cgi?id=784295 2017-09-06 13:16:21 +0300 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstjitterer.c: * gst/debugutils/gstjitterer.h: * gst/debugutils/meson.build: debugutils: Added new jitterer element This element can be configured to add jitter and/or drift to incoming buffers' PTS, DTS, or both. Amplitude and average of jitter and drift are configurable. https://bugzilla.gnome.org/show_bug.cgi?id=787358 2017-04-26 19:05:21 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Detect gaps on incoming stream times, issue warnings When we receive a video or audio buffer, we calculate the next stream time based on the current stream time + buffer duration. If the next buffer's stream time is after that, we issue a warning. This happens because the stream time incoming from Decklink should be really constant and without gaps. If there is a gap, it means that something went wrong, e.g. the internal buffer pool is empty (too many buffers queued up downstream). https://bugzilla.gnome.org/show_bug.cgi?id=781776 2017-11-07 15:21:43 +1100 Matthew Waters * tests/check/Makefile.am: * tests/check/libs/gstglshader.c: * tests/check/libs/gstglslstage.c: gl/tests: add some simple shader testing Making sure that the default shaders compile and are usable 2017-11-07 12:39:58 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: guard stop in gl thread So we don't result in a critical when we've never created the GL context: gst_gl_context_thread_add: assertion 'GST_IS_GL_CONTEXT (context)' failed 2017-11-07 00:07:42 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: actually indicate start internally Otherwise when we stop, the necessary stop functions will not be called and things may be leaked. https://bugzilla.gnome.org/show_bug.cgi?id=788280 2017-11-06 23:19:15 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: free in the GL thread on stop Calling GL functions not on the GL thread may crash in some GL implementations. https://bugzilla.gnome.org/show_bug.cgi?id=789665 2017-11-03 10:55:28 +0900 Hyunjun Ko * sys/msdk/gstmsdkvp8dec.c: msdk: fix to build msdkvp8dec with mfx_dispatch https://bugzilla.gnome.org/show_bug.cgi?id=789751 2017-11-04 07:49:24 +0100 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix sockaddr_un usage The sun_path field needs to be NULL-terminated CID #206004 2017-11-02 18:32:55 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: add doc blurb for gst_aggregator_pad_is_eos() 2017-11-02 16:05:12 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: also remove now-unused PadForeachFunc declaration https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-08-02 12:08:26 -0400 Olivier Crête * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * win32/common/libgstbadbase.def: aggregator: Remove pad iterator function Use new gst_element_foreach_sink_pad() from core instead. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:56:57 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: add CAST macros 2017-11-02 12:46:26 +0000 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 12:17:38 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl: use new gst_element_foreach_sink_pad() Instead of gst_aggregator_iterate_sinkpads() which will soon be removed. https://bugzilla.gnome.org/show_bug.cgi?id=785679 2017-11-02 11:57:24 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst/compositor/compositor.c: videoaggregator: drop ABI compat in padding for new struct member Don't really have to do that while it's in -bad and most users are in-tree anyway. 2017-10-23 22:03:22 +0200 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.h: audioaggregator: make class padding larger 2017-11-01 15:18:08 +0100 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: add more comments 2017-10-30 15:06:32 +0900 Hyunjun Ko * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkvp8dec.c: * sys/msdk/gstmsdkvp8dec.h: * sys/msdk/meson.build: msdk: adds msdkvp8dec https://bugzilla.gnome.org/show_bug.cgi?id=789751 2017-10-30 18:17:40 +0200 Sebastian Dröge * configure.ac: * sys/msdk/Makefile.am: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/msdk.h: msdk: Allow building against mfx_dispatcher E.g. from https://github.com/lu-zero/mfx_dispatch 2017-09-22 14:27:51 +1000 Matthew Waters * sys/applemedia/vtdec.c: vtdec: destroy and create the GL context on start()/stop() Removes a reference count loop 2017-10-23 10:42:51 +0200 Nicola Murino * sys/applemedia/vtdec.c: vtdec: flush decoder on stop fix a memory leak if the decoder shut down before EOS https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-10-23 10:40:43 +0200 Nicola Murino * sys/applemedia/vtenc.c: vtenc: flush encoder on stop https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-10-28 21:34:08 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: gl/shader: allow setting non-square matrices as uniforms on gles platforms It is possible with GLES3 2017-10-28 18:33:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglquery.c: * tests/check/libs/gstglquery.c: gl/query: split tests and fix some corresponding issues in usage 2017-10-14 13:22:18 -0700 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: add replaced flag to not error out on bitrate change When switching bitrates we set the old streams as cancelled, but it could also be confused with a cancel due to other reasons (as an error) and it would lead the element to stop the pipeline mistankely. This would happen when the stream being replaced was waiting for a manifest update on live. Ss make it sure that we are stopping for switching bitrates to avoid erroring out. https://bugzilla.gnome.org/show_bug.cgi?id=789457 2017-10-25 16:11:58 +0200 Florent Thiéry * configure.ac: configure.ac: fix fdk-aac version check https://bugzilla.gnome.org/show_bug.cgi?id=789471 2017-10-25 14:35:12 +0200 Mathieu Duponchelle * ext/fdkaac/meson.build: fdkaacenc: check fdk-aac version in meson.build configure.ac used to set -DHAVE_FDK_AAC_0_1_4 , which enables 7.1 support. https://bugzilla.gnome.org/show_bug.cgi?id=789471 2017-10-24 16:17:28 +0300 Vivia Nikolaidou * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: avwait: Added end-timecode property avwait can now be configured to stop when a given timecode has been reached. It will start at the timecode indicated with start-timecode and end at the timecode indicated with end-timecode. If end-timecode is NULL (default), the previous functionality is preserved: keep going and not end. https://bugzilla.gnome.org/show_bug.cgi?id=789403 2017-10-23 11:52:38 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: * tests/check/libs/aggregator.c: tests: comment and logging cleanups for audiomixer and aggregator Remove some references to 'collectpads'. Logs pads through the object variants. Add some more comments. Remove a left over comment. 2017-10-22 19:43:17 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: * gst/audiomixer/gstaudiomixer.c: aggregator: fix type for latency property (int64 -> GStClockTime) The value is used as GstClockTiem in the code. Adapt the hack^H^H^H^Hcode in live-adder. 2017-07-13 19:09:43 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Accept buffer with no data, but duration and gap flag These are produced from GAP events by the base class. https://bugzilla.gnome.org/show_bug.cgi?id=784846 2017-07-13 19:03:19 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Don't take flush lock from output thread Instead just take it in the chain function. https://bugzilla.gnome.org/show_bug.cgi?id=784911 2017-07-13 18:38:34 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Don't block if adding to the tail of the queue If we're adding to the tail of the queue, it's because we're converting a gap event, so don't block there it means we're calling from the output thread. https://bugzilla.gnome.org/show_bug.cgi?id=784911 2017-10-20 11:44:50 +0200 Jan Alexander Steffens (heftig) * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/meson.build: openjpeg: Remove compatibility with openjpeg 2.0 Everyone seems to be shipping 2.1 as the oldest v2 version, even debian oldstable (jessie). Also remove an unneeded (debug?) #include . https://bugzilla.gnome.org/show_bug.cgi?id=788703 2017-10-19 16:36:17 +0200 Jan Alexander Steffens (heftig) * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: openjpeg: Support building with openjpeg 2.3, simpler OpenJPEG 2.3 installs its headers to /usr/include/openjpeg-2.3. However, since libopenjp2.pc seems to provide the right includedir CFLAGS at least since version 2.1, instead of adding yet another version check, just remove the subdir and the check for 2.2. https://bugzilla.gnome.org/show_bug.cgi?id=788703 2017-10-19 16:26:45 +0200 Jan Alexander Steffens (heftig) * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: Revert "openjpeg: Support building with openjpeg 2.3" This reverts commit ef4d6b93e6078b7056c51a928f5620b13e55e323. A better fix follows. https://bugzilla.gnome.org/show_bug.cgi?id=788703 2017-10-20 10:32:23 +0200 Stefan Sauer * tests/check/pipelines/ipcpipeline.c: ipcpipeline: work around gcc bug in struct initializers Unfortunately we need to use an extra set of parenthesis for each data level. For details see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 Affected versions are e.g. gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4 which is the default on ubuntu-trusty. I looks like the fix was never backported. 2017-09-27 11:37:26 +0200 Nicola Murino * sys/applemedia/vtenc.c: vtenc: fix memory leak finish encoding and clean buffers queue on flush. This avoid a memory leak if the element shuts down before EOS https://bugzilla.gnome.org/show_bug.cgi?id=787311 2017-10-01 19:04:15 +0200 Jérôme Laheurte * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * tests/examples/avsamplesink/main.m: * tests/examples/gl/cocoa/cocoa-videooverlay.m: Use value instead of version macro when testing for mac OS version https://bugzilla.gnome.org/show_bug.cgi?id=788404 2017-10-19 16:01:46 +0200 Andreas Frisch * configure.ac: * ext/Makefile.am: * ext/colormanagement/Makefile.am: * ext/colormanagement/gstcolormanagement.c: * ext/colormanagement/gstlcms.c: * ext/colormanagement/gstlcms.h: lcms: Add LCMS ICC color correction element https://bugzilla.gnome.org/show_bug.cgi?id=765927 2017-09-27 09:17:07 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Refine sequence update debug messages Actually give some details about why it failed. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-27 09:27:12 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Don't try to match URIs when we have media sequences It is legal for a stream to reuse segments (marking discontinuities as needed). Uplynk delivers such playlists for their placeholder loops. Leave the URI scanning in place for playlists which have no EXT-X-MEDIA-SEQUENCE tag. This should be harmless since the spec requires these playlists to not be missing segments (RFC8216 6.2.2), so we should be always matching on the first segment. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-27 09:39:02 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Ignore empty playlists in check_media_seqnums Let these error in the immediately following check in gst_m3u8_update. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-15 08:57:03 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Split gst_m3u8_update_check_consistent_media_seqnums The function was basically one big if-else. Move the branch to the one caller. Currently, it's never called with previous_files == NULL. Assert that this continues. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-09-15 08:42:49 +0200 Jan Alexander Steffens (heftig) * ext/hls/m3u8.c: m3u8: Simplify control flow for sequence update Split the tail from the rest of the loop. https://bugzilla.gnome.org/show_bug.cgi?id=788417 2017-10-04 13:53:35 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Add read-only property to read the device serial number https://bugzilla.gnome.org/show_bug.cgi?id=788510 2017-10-17 08:03:02 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: review code related to time level Add a comment for when the state matters. Use a local var for priv in update_time_level() to improve readability. Move the our_latency local var below the query results checks. 2017-10-17 07:51:51 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: init latency values with 0 instead of FALSE 2017-10-09 18:08:47 +0200 Michał Górny * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: opencv: Support smoothing only part of the image https://bugzilla.gnome.org/show_bug.cgi?id=788567 2017-10-11 22:03:24 +0200 Michał Górny * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: opencv: Add 'kernel' prefix to width/height Rename width to kernel-width, and height to kernel-height to avoid ambiguity in the name. https://bugzilla.gnome.org/show_bug.cgi?id=788567 2017-10-16 10:43:28 +0200 Thibault Saunier * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: openjpeg: Support building with openjpeg 2.3 And avoid failling the build each time openjpeg releases a new version. 2017-10-15 20:46:09 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: code cleanup for event and query func Only look up klass for non serialized events/queries. For events remove superfluous assignment for the return value in the flushing case. 2017-10-15 17:46:45 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: simplify pad_event_func for FLUSH_STOP events We want to skip serialization for FLUSH_STOP events (apparently). We can simplify the code to add it to the top-level conditions. There was nothing done in the first code path if the event was FLUSH_STOP. 2017-10-15 16:57:13 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: drop special casing for eos Just queue it like any other serialized event. This way we don't need to check if there still are buffers in the queue. Validated with the tests and gst-launch-1.0 pipelines. 2017-10-15 16:51:21 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: add a doc-blob for the event_func 2017-10-15 16:48:21 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: rename a local variable The variable tracks wheter the queue is not empty, but num_buffers==0. That means we have events or queries to process. Rename accordingly. 2017-10-15 12:17:42 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: remove commented code The SEGMENT_DONE event does not require any special treatment. This is commented out in 6efc106a67. 2017-10-15 12:14:28 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: move the comment for the locks to the lock macros Looks like some code was inserted afterwards. 2017-10-15 10:44:44 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: improve section docs Mention how data ends up in the queues. Document the relation of the pad functions and the class vmethods to get events and queries. 2017-10-15 10:29:20 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: improve readability in offset calculation Don't reuse the offset variables will contain a sample offset for an intermediate time value. Instead add a segment_pos variable of type GstClockTime for this. Use The clock-time macros to check if we got a valid time. 2017-10-14 18:18:44 +0200 Stefan Sauer * tests/check/libs/aggregator.c: aggregator: add two more tests for a sequence of data This verifies that we handle events and queries at the head of the queue and then buffers. 2017-10-14 13:26:02 +0200 Stefan Sauer * tests/check/libs/aggregator.c: aggregator: refactor the test helper Make the test helpers use a queue. This lets us also test sequences of events, queries and data. 2017-10-14 12:08:19 +0200 Stefan Sauer * tests/check/libs/aggregator.c: aggregator: test cleanup Remove gst_init() from a few tests. Use _OBJECT variants in logging. Remove arbitrary extra blank lines. Make push_event() more like push_buffer() - set the event to NULL and add cleanup to _chain_data_clear(). 2017-10-05 20:48:59 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: move comment to the place it is meant to be This probably got shifted after some changes. 2017-10-07 14:57:44 +0530 Ponnam Srinivas * sys/nvenc/gstnvbaseenc.c: nvbaseenc: Fix Memory leak in error case https://bugzilla.gnome.org/show_bug.cgi?id=788243 2017-10-13 12:25:22 +0100 Tim-Philipp Müller * ext/qt/qtplugin.pro: qt: update qmake .pro file Update for renaming of plugin file, and add some missing source files. 2017-10-13 11:46:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use GstFlowReturn for flow returns 2017-10-10 18:03:15 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Print one "dropped N old frames" message, not one per frame If we drop many frames at once, printing one message per video frame and one per audio packet would cause a lot of disk IO. Just print a total at the end. https://bugzilla.gnome.org/show_bug.cgi?id=788780 2017-10-06 15:07:58 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Fix crash on NULL dmabuf allocator pointer Now that we are doing lazy allocation, we may endup calling _stop() before the allocator was created. As a side effect, we need to nul-check the pointer before calling it's method (_clear_cache()). https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-10-04 16:29:52 +0530 Ponnam Srinivas * gst/mxf/mxfdemux.c: mxfdemux: Fix memory leak in error case https://bugzilla.gnome.org/show_bug.cgi?id=788508 2017-10-05 17:28:30 -0700 U. Artie Eoff * sys/kms/gstkmsallocator.c: kms: Fix compilation error when libdrm < 2.4.68 DRM_RDWR was not defined until libdrm 2.4.68. However, in configure.ac we only require libdrm >= 2.4.55. Seems silly to to bump minimum libdrm version for a simple define. Thus, define DRM_RDWR if it's not defined. This fixes compilation error introduced in: commit 922031b0f98bf5c7b01f4431d1c08617f65865f7 Author: Nicolas Dufresne Date: Tue Sep 12 12:07:13 2017 -0400 kms: Export DMABuf from Dumb buffer when possible https://bugzilla.gnome.org/show_bug.cgi?id=787593 Signed-off-by: U. Artie Eoff 2017-10-05 15:46:20 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: kmsallocator: Update GstVideoInfo.size when extrapolating When we guess the strides, we need to also update the GstVideoInfo.size otherwise the memory size will be set to something smaller then needed. This was causing crash with the DMABuf exportation, since we would not mmap() a large enough buffer. https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-12 12:07:13 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmsbufferpool.c: * sys/kms/gstkmsbufferpool.h: * sys/kms/gstkmssink.c: kms: Export DMABuf from Dumb buffer when possible https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-12 10:36:51 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Move the mem cache into the allocator No functional change, the cache will be later reused by the buffer pool to keep track of the kmssink memory when exporting dmabuf. https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-11 16:32:32 -0400 Nicolas Dufresne * sys/kms/gstkmsbufferpool.c: kmsbufferpool: Don't check allocator pointer twice https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-11 16:32:15 -0400 Nicolas Dufresne * sys/kms/gstkmsbufferpool.c: kmsbufferpool: Removed unused member fd https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-09-11 15:00:53 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Check if we can prime export This will be used later to decide if a DMABuf allocator should be exposed. https://bugzilla.gnome.org/show_bug.cgi?id=787593 2017-10-05 17:54:34 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: remove buffer!=NULL check Acording to the logic this cannot happen (we already check this before). So add a assert like we do above and remove the check. This make it clearer that we check for the offset range. Also remove a dead assignment since we reassign this a few lines below. 2017-10-05 17:52:37 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggreator: update docs Remove wrote references to collectpads. Document the units. 2017-10-04 14:29:20 +0200 Havard Graff * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/base/meson.build: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/isoff/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/player/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/video/meson.build: * meson.build: meson: remove vs_module_defs The GST_EXPORT should handle it. 2017-10-05 14:30:43 +0200 Rico Tzschichholz * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/player/meson.build: meson: Fix namespace and add some missing args in the gir generation 2017-10-05 08:11:29 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: pass blocksize to mix_buffer() No need to recalc the value twice per run. Establishes that it is the same value. 2017-10-05 08:12:45 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: rename _fill_buffer() to _queue_new_buffer() It does not fill a buffer. Rename it and add a short comment. 2017-10-03 12:36:10 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: cleanup event forwarding Don't copy the whole event struct. Set the input params when we call the forwarding helper. Initialize the internal fields and return values in the helper. 2017-10-03 12:08:42 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: simplify src_event Avoid extra ref/unref, we have a ref and do_seek unrefs. Just return the result as we have. This lets us remove the local var plus the label. 2017-10-04 10:00:48 -0400 Nicolas Dufresne * tests/examples/mpegts/meson.build: * tests/examples/mpegts/ts-parser.c: meson: Define GST_USE_UNSTABLE_API in the build system This way meson and autotools both do the same thing and we don't need to modify the code after all. 2017-10-03 15:26:34 -0700 Reynaldo H. Verdejo Pinochet * tests/examples/mpegts/ts-parser.c: Fix autotools build broken by 25dee2f2cb21d3fdd Build fails on GST_USE_UNSTABLE_API being redefined 2017-10-02 14:28:26 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstvideoanalyse.c: * tests/check/elements/adaptive_demux_engine.h: Use proper GtkDoc notation for NULL/FALSE/TRUE 2017-09-26 16:46:10 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: fix typos 2017-10-03 17:16:15 -0400 Nicolas Dufresne * tests/examples/meson.build: * tests/examples/mpegts/meson.build: meson: Build tsparser example 2017-10-03 17:14:53 -0400 Nicolas Dufresne * tests/examples/mpegts/ts-parser.c: tsparses: Define GST_USE_UNSTABLE_API This example is entirely based on unstable API, this avoids the expected compilation warning. 2017-10-02 12:35:48 -0700 Cassandra Rommel * ext/qt/gstqtglutility.cc: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl: Use GstGLDisplayEGL directly instead of creating a GstGLDisplayVIVFb subclass This simplifies the code a lot without any functional changes apart from not closing the display connection. Closing the display connection is not safe to do as it is shared between all other code in the same process and no reference counting or anything happens at the platform layer. 2017-10-02 16:57:21 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: reduce variable scope This is a non-functional change that makes the code more alike to the previous check. I should be more obvious when we drop a buffer. 2017-10-02 09:40:50 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: update comment for aggregate Replace collect-pads left-over. Remove first paragraph, we're not doing this. Remove 3), 4) since this is not per pad. 2017-10-02 16:22:26 +0900 Justin Kim * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext_egl: Add gstglwindow header Otherwise, compiler complains implicit function declaration warning. https://bugzilla.gnome.org/show_bug.cgi?id=788413 2017-09-12 16:43:26 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Drain pending samples if the caps are changing https://bugzilla.gnome.org/show_bug.cgi?id=787560 2017-09-12 16:41:18 +0300 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Use new GstAudioStreamAlign API https://bugzilla.gnome.org/show_bug.cgi?id=787560 2017-09-28 16:20:53 +0530 Ponnam Srinivas * gst-libs/gst/gl/gstglfilter.c: glfilter: Unmap video frame in error case https://bugzilla.gnome.org/show_bug.cgi?id=788194 2017-09-28 13:55:18 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkaudio/videosrc: Put hardware reference timestamp in a reference timestamp meta This can be useful to know on multi-channel cards which frames from different channels were captured at the same time. 2017-09-25 17:20:58 +0530 Ponnam Srinivas * ext/gl/gstglmixer.c: glmixer: Unmap video frame in error case https://bugzilla.gnome.org/show_bug.cgi?id=788127 2017-09-21 18:13:19 +0530 Ponnam Srinivas * ext/webp/gstwebpenc.c: webpenc: Unmap video frame in failed case https://bugzilla.gnome.org/show_bug.cgi?id=787985 2017-09-22 08:10:44 +0100 James Stevenson * gst/autoconvert/gstautoconvert.c: autoconvert: Fix two memory leaks on error conditions Both the sink_chain and sink_chain_list will neither pass or free the buffer if the internal src pad doesn't exist yet. https://bugzilla.gnome.org/show_bug.cgi?id=788035 2017-09-21 14:40:06 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Free the correct memory in our own buffer pool The buffer itself is 128 bytes into the allocated memory area, to be able to store the size and other metadata before it. Freeing the buffer directly will make malloc moderately unhappy. 2017-09-21 11:46:22 +0300 George Kiagiadakis * tests/check/Makefile.am: tests/check: disable all ipcpipeline tests until I find a way to make them run reliably 2017-09-20 20:00:03 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvidemixer: need reconfigure output gemotry after caps renegotiated 2017-09-21 11:59:22 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: Revert "glvideomixer: need update output geometry after src caps reconfigure" This reverts commit d6e538dc5651fb03c85d7c7614bcf6c689f2db2f. 2017-09-18 15:42:00 +0800 Haihua Hu * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: need update output geometry after src caps reconfigure Need update output geometry when sink caps changed and use gst_structure_set to update caps if structure is fixed https://bugzilla.gnome.org/show_bug.cgi?id=787820 2017-09-19 15:37:42 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Ensure default showBackground behaviour is enacted Ensure that region backgrounds are always show when tts:showBackground is not explicitly set, in accordance with the default behavour given in the TTML spec. https://bugzilla.gnome.org/show_bug.cgi?id=787942 2017-09-19 17:18:48 -0700 Per-Erik Brodin * sys/nvdec/gstnvdec.c: nvdec: Correctly set the discontinuity flag Instead of clearing the "valid timestamp" flag, which would result in a timestamp mismatch after a discontinuity. https://bugzilla.gnome.org/show_bug.cgi?id=787926 2017-09-11 16:00:24 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl/viv-fb: transform screen coordinate to viewport coordinate In y direction, screen coordinate are opposite to viewport coordinate. https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-11 15:12:53 +0800 Haihua Hu * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: gl/viv-fb: fix wrong pos (x,y) calculate in queue_resize queue_resize viewport coordinate calculate is wrong and force queue_resize when do _set_render_rectangle in case user input pos changed https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-11 16:11:19 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: expose should do redisplay all the time when using internal window, window resize should work when pause state, but expose only do redisplay when window_id is valid. So expose should do redisplay all the time. https://bugzilla.gnome.org/show_bug.cgi?id=787394 2017-09-17 21:05:03 -0700 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix typo in comment 2017-09-17 12:37:03 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: register func for do_events_and_queries This fixes logging the func ptr from _iterate_sinkpads(). 2017-09-17 12:30:37 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: only set clipped_buffer to NULL if needed 2017-09-17 12:25:37 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: rename check_events This function also handles queries. Update the code to loop until all events and queuries are handled. 2017-09-17 12:24:54 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: add a few more comments to PadPrivate struct 2017-09-17 11:39:12 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: rename buffers field to data The queue stores buffers, events and queries. 2017-09-17 10:18:56 -0700 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: documentaion fixes Fix typos and remove params docs, where the param was moved. 2017-09-10 20:55:07 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: simplify audiomixer test Use _link_many() and reuse a helper to reduce the test code. 2017-09-15 20:34:28 +0100 Tim-Philipp Müller * ext/smoothstreaming/gstmssdemux.c: mssdemux: fix caps leak in error code path https://bugzilla.gnome.org/show_bug.cgi?id=787736 2017-09-15 15:04:02 +0200 Philippe Renon * gst-libs/gst/player/gstplayer.c: player: introduce helper method to remove seek source this incidentally fixes a missing g_source_destroy() call in _main() https://bugzilla.gnome.org/show_bug.cgi?id=787727 2017-09-15 14:58:56 +0200 Philippe Renon * gst-libs/gst/player/gstplayer.c: player: remove duplicate state_ret check in play internal https://bugzilla.gnome.org/show_bug.cgi?id=787727 2017-09-06 07:59:56 +0000 Jochen Henneberg * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qmlglsink: Expose itemInitialized as property Instead of just signalling when ready exposing the state as a property allows us to bind at any time if player is loaded async. 2017-09-08 10:16:12 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Don't leak the dumb buffer on drain 2017-09-08 09:28:19 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Don't assume buffer pool won't touch buf pointer Just for extra safety, let's not assume that gst_buffer_pool_acquire() won't ever touch the buf pointer. 2017-09-08 14:57:06 +0200 Guillaume Desmottes * sys/kms/gstkmsbufferpool.c: kms: fix crash if bo allocation failed when copying to dumb buffer If bo allocation failed we destroy the buffer and return GST_FLOW_ERROR, but the @buffer pointer was still pointing to the address of the destroyed buffer. gst_kms_sink_copy_to_dumb_buffer() was then trying to unref it when bailing out causing a crash. Leave @buffer untouched if allocation failed to fix the crash. Also remove the check on *buffer being not NULL as gst_buffer_new() will abort if it failed. https://bugzilla.gnome.org/show_bug.cgi?id=787442 2017-09-07 09:39:13 +0100 Tim-Philipp Müller * ext/qt/gstplugin.cc: * ext/qt/qtplugin.pro: qt: fix build with qmake Move the package defines for GST_PLUGIN_DEFINE from the command line into the source file to avoid quoting issues (-DPACKAGE_NAME="foo" means the quotes won't actually make it to the compiler and then it no longer gets a string constant). 2017-09-06 16:04:49 -0300 Thibault Saunier * ext/directfb/dfbvideosink.c: dfbvideosink: Pass the VideoInfo to gst_video_info_from_caps Fixing the build 2017-09-05 16:20:44 -0400 Nicolas Dufresne * ext/directfb/dfbvideosink.c: * ext/gl/caopengllayersink.m: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gtk/gstgtkglsink.c: * ext/qt/gstqtsink.cc: * ext/vulkan/vkupload.c: * ext/wayland/gstwaylandsink.c: * gst-libs/gst/gl/gstglfilter.c: * sys/applemedia/avsamplevideosink.m: * sys/d3dvideosink/d3dvideosink.c: * sys/kms/gstkmssink.c: Request minimum buffer even if need_pool is FALSE When tee is used, it will not request a pool, but still it wants to know how many buffers are required. https://bugzilla.gnome.org/show_bug.cgi?id=730758 2017-09-05 15:07:03 +0300 George Kiagiadakis * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: fix compilation with OpenSSL 1.1.0 OpenSSL 1.1.0 no longer allows stack-allocated structures; it hides the implementation behind typedefs https://bugzilla.gnome.org/show_bug.cgi?id=787309 2017-09-05 14:26:52 +0200 Edward Hervey * tests/check/libs/aggregator.c: check: Fix usage of dual probes Using two (or more) probes on the same pad where one of the probe returns HANDLED or DROP is tricky since the other probes might not be called. Instead use regular probes and a proper pad (the sinkpad already existed, it only required to be activated and have a dummy chain function for the events/buffers to be received/handled properly) 2017-08-31 18:56:37 +1000 Matthew Waters * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-sensor.c: * sys/androidmedia/gstjniutils.c: amc: actually use the provided application class loader For the camera and sensor Fixes a couple of ClassNotFound java exceptions when initializing GStreamer off the main thread. 2017-09-05 16:14:02 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gl/wayland: call eglTerminate() before wl_display_disconnect() Calling these two functions in the wrong order will result in use-after-free inside wayland. https://bugzilla.gnome.org/show_bug.cgi?id=787293 2017-09-01 15:00:12 +1000 Matthew Waters * ext/gtk/gstgtkglsink.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gtkglsink: expose the created display and context correctly 1. Propagate the GstGLDisplay we create 2. Add the created GstGLContext to the propagated GstGLDisplay Otherwise with multi-branch GL pipelines involving gtkglsink, things will fall apart and errors will be genarated somewhere. 2017-09-05 10:56:12 +0300 Sebastian Dröge * ext/sbc/gstsbcenc.c: sbcenc: Fix typo in docs 2017-09-05 09:51:41 +0200 Edward Hervey * Makefile.am: * ext/libde265/Makefile.am: plugin: Rename libde265 to de265 for consistency And avoids it being blacklisted 2017-09-04 16:13:41 +0300 George Kiagiadakis * tests/examples/Makefile.am: examples: Makefile.am: add ipcpipeline in SUBDIRS if enabled 2017-09-04 16:00:02 +0300 George Kiagiadakis * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/gstipcpipelinecomm.h: * sys/ipcpipeline/gstipcpipelinesink.c: * sys/ipcpipeline/gstipcpipelinesrc.c: ipcpipeline: cleanup header includes We are only using read(), write(), memcpy(), strlen() and errno in ipcpipelinecomm.c. Everything else is glib/gstreamer. 2017-09-04 15:52:03 +0300 George Kiagiadakis * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/gstipcpipelinecomm.h: ipcpipeline: use GstPoll instead of select() to watch for socket activity ... and make that code more readable in the process https://bugzilla.gnome.org/show_bug.cgi?id=787208 2017-09-04 10:39:58 +0300 George Kiagiadakis * tests/examples/ipcpipeline/ipc-play.c: examples: ipcpipeline: get rid of yet another use of SOCK_NONBLOCK https://bugzilla.gnome.org/show_bug.cgi?id=786763 2017-09-04 08:30:58 +0200 Nicola Murino * configure.ac: * ext/opencv/meson.build: opencv: allow compilation against 3.3.0 https://bugzilla.gnome.org/show_bug.cgi?id=787234 2017-09-01 15:56:04 +0200 Edward Hervey * ext/qt/gstqtgl.h: qt: Only include qtgui-config.h on qt >= 5.9.0 The file does not exist in previous versions 2017-08-30 08:37:04 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Make jp2k handling more robust and efficient * Avoid copying the pending data and instead create a buffer directly from that data with the appropriate offset. * Locate the jp2k magic to determine the exact location of the (first) frame data instead of assuming that the header is of an expected size https://bugzilla.gnome.org/show_bug.cgi?id=786111 2017-08-29 11:14:59 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle quirk in jp2k es header handling The jp2k specification (ITU-T T.800) specifies that the 'brat' box has two fields and the second one (AUF2) can be set to 0 for progressive streams. The problem is that the mpeg-ts specification (ITU-T H.222.0 06/2012) says that the AUF2 field is only present if the stream is interlaced In order to cope with both situation, accept those next 32bit if the stream is marked as progressive and those bits contain 0 https://bugzilla.gnome.org/show_bug.cgi?id=786111 2017-08-31 15:07:45 +0300 George Kiagiadakis * tests/examples/ipcpipeline/ipc-play.c: * tests/examples/ipcpipeline/ipcpipeline1.c: examples: ipcpipeline: do not use the linux-specific SOCK_NONBLOCK flag Use fcntl() instead to set O_NONBLOCK, which is portable. https://bugzilla.gnome.org/show_bug.cgi?id=786763 2017-08-31 14:57:34 +0300 George Kiagiadakis * configure.ac: * meson.build: * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: provide pipe2() on systems that don't have it https://bugzilla.gnome.org/show_bug.cgi?id=786763 2017-08-31 14:40:44 +1000 Matthew Waters * ext/qt/gstqtgl.h: qt: the defines for QT_OPENGL_ES_2 have moved Update the includes to account for that 2017-04-26 13:50:41 +0200 Jochen Henneberg * ext/qt/qtwindow.cc: qt: ensure GL_DRAW_FRAMEBUFFER 2017-08-30 18:11:27 +0300 George Kiagiadakis * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: make the state_changes test more deterministic Watching the STATE_CHANGED messages is way more deterministic than polling the state. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-30 16:37:21 +0300 George Kiagiadakis * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: fix broken exclusivity checks In most cases we want to stop the pipeline just once, but we have to do this from code that runs in the streaming threads and in case we have multiple streams, we need to make sure that we do this only once. The previous checks were broken, this should fix it. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-30 14:37:32 +0300 George Kiagiadakis * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: attempt to make tags test more deterministic Instead of using a timeout and pushing the tags from an outside thread, use a pad probe and push them from the streaming thread. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-30 15:18:58 +0100 Philippe Normand * tests/examples/gl/gtk/3dvideo/main.cpp: examples/gl/gtk: build fix for the 3dvideo example on macOS 2017-08-30 15:16:39 +0100 Philippe Normand * tests/examples/gl/gtk/gstgtk.c: examples/gl/gtk: fix overlay handling for macOS The GTK+ window requires a NSView sub-view, not an NSWindow. 2017-08-29 16:52:07 -0700 Per-Erik Brodin * sys/nvdec/gstnvdec.c: nvdec: fix build after GL/gl.h no longer included GL headers are no longer included in public gstgl headers, except for gstglfuncs.h so make sure to include that one. https://bugzilla.gnome.org/show_bug.cgi?id=786993 2017-08-29 10:37:11 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Properly error out on jp2k parsing errors Avoids crashes later on where we assume buffer exists 2017-08-28 12:56:34 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: gl: fix build for ios/win32/android after 2fd84a6c Some missing GL includes. 2017-08-26 13:08:27 +0100 Tim-Philipp Müller * gst-libs/gst/isoff/gstisoff.c: isoff: make debug category private Otherwise it shows up in .def file in autotools build. 2017-08-26 12:03:06 +0100 Tim-Philipp Müller * ext/smoothstreaming/meson.build: * tests/check/meson.build: meson: fix build for isoff lib addition 2017-08-26 12:02:51 +0100 Tim-Philipp Müller * gst-libs/gst/isoff/gstisoff.h: isoff: export symbols 2017-05-17 22:09:48 +0900 Seungha Yang * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssfragmentparser.c: * ext/smoothstreaming/gstmssfragmentparser.h: * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: Use isoff to parse tfxd/tfrf https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-07-02 14:27:33 +0900 Seungha Yang * gst-libs/gst/isoff/gstisoff.c: * gst-libs/gst/isoff/gstisoff.h: * tests/check/libs/isoff.c: * tests/check/libs/isoff.h: isoff: Add parsing mss specific tfrf and tfxd boxes This code is imported from mssdemux's tfxd/tfrf parsing function https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-06-02 23:19:36 +0900 Seungha Yang * gst-libs/gst/isoff/gstisoff.c: * gst-libs/gst/isoff/gstisoff.h: * tests/check/libs/isoff.c: * tests/check/libs/isoff.h: * win32/common/libgstisoff.def: isoff: Add parsing moov and tfdt To extract isobmff level timestamp, moov and tfdt parsing is required. https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-05-25 18:14:09 +0900 Seungha Yang * configure.ac: * ext/dash/Makefile.am: * ext/dash/gstdashdemux.h: * ext/dash/meson.build: * gst-libs/gst/Makefile.am: * gst-libs/gst/isoff/Makefile.am: * gst-libs/gst/isoff/gstisoff.c: * gst-libs/gst/isoff/gstisoff.h: * gst-libs/gst/isoff/meson.build: * gst-libs/gst/meson.build: * tests/check/Makefile.am: * tests/check/libs/isoff.c: * tests/check/libs/isoff.h: * win32/common/libgstisoff.def: isoff: Move isoff to gst-libs Also rename unit test dash_isoff to isoff https://bugzilla.gnome.org/show_bug.cgi?id=777825 2017-08-25 20:37:39 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/meson.build: gl: install new glfuncs.h header 2017-08-25 19:33:41 +0100 Tim-Philipp Müller * tests/check/pipelines/ipcpipeline.c: tests: ipcpipeline: skip broken tests These fail on the build bots. Blacklist until someone investigates. https://bugzilla.gnome.org/show_bug.cgi?id=786006 2017-08-24 13:43:18 +0100 Philippe Normand * tests/check/libs/player.c: tests/player: check for media-info-updated before duration-changed The media-info-updated signal is now emitted before duration-changed since commit 8a29da8023604a1419ac5f2cae7f165198d6fbbf. https://bugzilla.gnome.org/show_bug.cgi?id=786201 2017-08-24 18:00:41 +1000 Matthew Waters * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: srtp: zero out session member on dealloc Fixes a user-after-free retrieving stats from _get_property() 2017-08-24 01:18:40 +1000 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/checks: fix build 2017-08-23 16:36:09 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: add build for the vivante fb backend 2017-08-23 16:34:39 +1000 Matthew Waters * gst-libs/gst/allocators/meson.build: * gst-libs/gst/meson.build: meson: build allocators library 2017-08-23 16:32:57 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/meson: detect valid configuration from enabled apis/platform/winsys 2017-08-23 16:23:07 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: gl/build: also check for the GL/gl.h header In order to successfully build against a detected libGL library we also need headers 2017-08-17 13:46:04 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils_private.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglmatrix.c: glutils: fix matrix operations everywhere - correct the matrix multiplication - Use column-major matrices - reverse order of matrix multiplications https://bugzilla.gnome.org/show_bug.cgi?id=785980 2017-08-17 13:42:21 +1000 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: draw with GL_TRIANGLES Drawing 5 vertices with GL_TRIANGLE_STRIP will draw an extra unneeded triangle. 2017-08-22 16:16:44 +0100 Philippe Normand * sys/applemedia/iosurfacememory.h: applemedia: fix build after commit 2fd84a6c 2017-08-22 16:16:24 +0100 Philippe Normand * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: gl/cocoa: fix build after commit 2fd84a6c 2017-08-22 12:39:43 +0100 Julien Isorce * ext/qt/gstqsgtexture.cc: * ext/qt/gstqtglutility.cc: * ext/qt/gstqtsink.cc: * ext/qt/qtwindow.cc: qt: fix broken build due to commit 2fd84a6c for gstgl https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-08-22 12:39:43 +0100 Julien Isorce * ext/gl/caopengllayersink.h: * ext/gl/gstgltransformation.h: gl: fix broken build due to previous commit 2fd84a6c Can reproduce after installing libgraphene-dev Also fixes caopengllayersink.h to anticipate build error on osx. https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-07-07 16:15:12 +0100 Julien Isorce * ext/gl/gltestsrc.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.h: * ext/gl/gstgloverlay.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstglutils.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglviewconvert.c: * ext/gl/gstglviewconvert.h: * ext/gtk/Makefile.am: * ext/gtk/gstgtkglsink.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglfuncs.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglheaders.c: * tests/check/libs/gstglupload.c: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gtk/glliveshader.c: gl: do not include GL headers in public gstgl headers Except for gst/gl/gstglfuncs.h It is up to the client app to include these headers. It is coherent with the fact that gstreamer-gl.pc does not require any egl.pc/gles.pc. I.e. it is the responsability of the app to search these headers within its build setup. For example gstreamer-vaapi includes explicitly EGL/egl.h and search for it in its configure.ac. For example with this patch, if an app includes the headers gst/gl/egl/gstglcontext_egl.h gst/gl/egl/gstgldisplay_egl.h gst/gl/egl/gstglmemoryegl.h it will *no longer* automatically include EGL/egl.h and GLES2/gl2.h. Which is good because the app might want to use the gstgl api only without the need to bother about gl headers. Also added a test: cd tests/check && make libs/gstglheaders.check https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-08-21 06:49:02 -0700 Jan Schmidt * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: gldownload: Micro-optimisation. Don't check output caps on every buffer The output caps will only change on a set_caps() call, so check if they contain the SystemMemory feature then and save some per-buffer CPU. 2017-08-17 12:23:37 +0100 Tim-Philipp Müller * README: * common: Automatic update of common submodule From 29046b8 to 3f4aa96 2017-08-16 13:59:01 +0200 Jan Alexander Steffens (heftig) * sys/directsound/gstdirectsoundsrc.h: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: sys: Convert source files to UTF-8 Otherwise we have problems with the new gtk-doc ported to python. But it's a good thing to do anyway. https://bugzilla.gnome.org/show_bug.cgi?id=786364 2017-08-14 14:09:33 +0100 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: notify of media-info update after duration change This is a follow-up of 98b0802a981eab05e610638bf5422a08a378a68a https://bugzilla.gnome.org/show_bug.cgi?id=786201 2017-08-15 10:27:03 +0930 Dave Johnstone * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Add support for Decklink hardware keying Add two properties (keyer-mode and keyer-level) to control the built-in hardware keyer of Decklink cards. https://bugzilla.gnome.org/show_bug.cgi?id=773660 2017-08-14 21:33:51 +1000 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: start/stop the manifest update loop on liveness or periodic update changes Scenario: A manifest starts out in live mode but then the recording is finalized and a subsequent update changes the state to a non-live manifest when the server has finished recording/transcoding/whatever with the full list of fragments. Without this patch, the manifest update task is never stopped on the live->non-live transition and will busy loop, burning through one CPU core. https://bugzilla.gnome.org/show_bug.cgi?id=786275 2017-08-14 16:33:48 -0300 Thibault Saunier * ext/openjpeg/meson.build: meson: Fix build with openjpeg>=2.2 2.2 implies HAVE_2_1 2017-05-21 16:01:14 +0200 Carlos Rafael Giani * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qmlglsink: Add itemInitialized signal to QML item This is useful for autoplay for example. With autoplay, it is necessary to wait until the scene graph is fully set up. This signal is emitted once the QML item node is ready. So, inside a connected slot, the pipeline's state can be set to PLAYING to automatically start playback as soon as the QML script is loaded. https://bugzilla.gnome.org/show_bug.cgi?id=786246 2017-08-14 12:12:34 +0100 Tim-Philipp Müller * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: fix build Include private headers for parent class debug categories. 2017-08-14 10:11:00 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcontext_private.h: * gst-libs/gst/gl/gstglwindow_private.h: gl: add missing new header files https://bugzilla.gnome.org/show_bug.cgi?id=786170 2017-08-14 09:33:38 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: make some debug categories private They weren't supposed to be public. https://bugzilla.gnome.org/show_bug.cgi?id=786170 2017-08-12 16:08:02 +0100 Philippe Normand * gst-libs/gst/player/gstplayer.c: player: propagate updated duration to media_info https://bugzilla.gnome.org/show_bug.cgi?id=786201 2017-08-13 21:17:18 +0200 Clemens Lang * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/meson.build: openjpeg: Fix build against openjpeg 2.2 OpenJPEG 2.2 has some API changes and thus ships its headers in a new include path. Add a configure check (to both meson and autoconf) to detect the newer version of OpenJPEG and add conditional includes. Fix the autoconf test for OpenJPEG 2.1, which checked for HAVE_OPENJPEG, which was always set even for 2.0. https://bugzilla.gnome.org/show_bug.cgi?id=786250 2017-08-11 18:38:41 +0100 Tim-Philipp Müller * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/xcb_event_source.c: gl: don't export symbols that are not supposed to be public Make a bunch of symbols private that are currently leaked accidentally because they have a gst_* prefix and are used internally. We mark those we can't make static with G_GNUC_INTERNAL so that they get hidden with the autotools build as well (although we could just pass -fvisibility=hidden there too). 2017-08-11 14:55:48 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglbasememory.h: gl: sprinkle more GST_EXPORT 2017-08-11 14:39:07 +0100 Tim-Philipp Müller * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * win32/common/libgstmpegts.def: mpegts: make accidentally exported debug category symbol private Was never in header files, was just exported by accident because of the gst_ prefix of the variable name. 2017-08-11 14:21:05 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gstmpegvideometa.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvp8parser.c: * gst-libs/gst/codecparsers/gstvp9parser.c: * win32/common/libgstcodecparsers.def: codecparsers: make debug categories static They're only used internally. The VP9 parser's debug category symbol was accidentally exported. 2017-08-09 14:55:44 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Add bus-id property https://bugzilla.gnome.org/show_bug.cgi?id=786112 2017-08-11 13:59:04 +0100 Tim-Philipp Müller * meson.build: meson: hide symbols by default unless explicitly exported 2017-08-10 23:25:13 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Drop current frame if passing it to the decoder caused an error Otherwise we will get it again later for output, however this frame will never actually be output so we will shift timestamps. This is especially bad if we're handling a live stream where the first frames are not keyframes. We would output the keyframe with the timestamp of the first frame, and everything would be too late when arriving in the sink. 2017-08-10 23:21:46 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Don't unref NULL frame on EOS decoding error 2017-08-10 17:00:37 +0300 Sebastian Dröge * gst/mxf/mxfvc3.c: mxfvc3: Use correct wrapping byte value 2017-08-10 01:48:18 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use colorimetry from find_best_format. This increases the chances that we won't need to do any conversion for a given pad. https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 01:45:53 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: improve find_best_format heuristic. The goal here is to minimize the work needed to bring all images to a common format. A better criteria than the number of pads with a given format is the number of pixels with a given format. https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 01:43:15 +0200 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: improve conversion debugging https://bugzilla.gnome.org/show_bug.cgi?id=786078 2017-08-10 09:09:22 +0100 Tim-Philipp Müller * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/wayland/wayland.h: gl, wayland: mark more declared functions with GST_EXPORT 2017-08-10 09:07:17 +0100 Tim-Philipp Müller * tests/check/elements/parser.h: * tests/check/meson.build: tests: export symbols of parser tests helper lib and make it static And only make the tests that use it link against the helper lib. 2017-08-09 14:59:19 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Free devname before setting it This avoids leaking the devname if the property is set twice. 2017-07-05 20:55:11 +0200 Mark Nauwelaerts * gst/mpegtsdemux/mpegtspacketizer.h: mpegtsdemux: remove obsolete function declaration 2017-08-09 15:10:56 +0100 Alex Ashley * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: curlhttpsrc: set http-version default if curl does not have HTTP2 feature present If the version of the curl library is recent enough to allow support for HTTP2 (i.e. CURL_VERSION_HTTP2 is defined) but does not actually have that feature enabled, the call to g_object_class_install_property() uses an incorrect default value for the "http-version" property. The default should be 1.1 if HTTP2 is not supported by libcurl or if not enabled by libcurl. https://bugzilla.gnome.org/show_bug.cgi?id=786049 2017-08-09 11:26:37 +0200 Nicola Murino * sys/applemedia/vtenc.c: vtenc: assume 25 fps for unknown framerate This is better than reporting no latency at all and then later failing in live pipelines. https://bugzilla.gnome.org/show_bug.cgi?id=786036 2017-08-03 11:16:20 -0400 Aaron Boxer * gst/pcapparse/gstpcapparse.c: pcapparse: support vlan 802.1q https://bugzilla.gnome.org/show_bug.cgi?id=785778 2017-08-03 08:42:14 -0400 Aaron Boxer * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: Support pcap with nanosecond timestamps https://bugzilla.gnome.org/show_bug.cgi?id=785770 2017-08-02 18:17:08 +0100 Tom Bailey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix leak of pad probes in GstAdaptiveDemuxStream This commit ensures that the idle probe which GstAdaptiveDemuxStream adds to the upstream source pad is removed after use. Previously a new probe was added to the pad whenever a fragment was downloaded, meaning the number of pad probe callbacks being executed increased continually. https://bugzilla.gnome.org/show_bug.cgi?id=785957 2017-08-07 14:25:26 +0300 George Kiagiadakis * ext/rtmp/gstrtmpsrc.c: rtmpsrc: fix flushing seek Previously this was broken, because a flushing seek causes unlock() to be called and in the implementation of unlock() we close the socket, so the seek errors out. This patch fixes it by re-connecting before the seek. Unfortunately, a seek does not work properly right after re-connecting, so a small hack is also in place: we read 1 buffer before seeking to allow librtmp to do its processing in RTMP_Read() https://bugzilla.gnome.org/show_bug.cgi?id=785941 2017-08-07 14:05:14 +0300 George Kiagiadakis * ext/rtmp/gstrtmpsrc.c: rtmpsrc: remove unused macro 2017-08-08 09:20:00 +0000 davecraig@unbalancedaudio.com * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Stop prepared streams as well as running streams There can be twice as many stream tasks running as there are output pads for playback of variant HLS playlists. Half of them are the current pads, and the other half are the pads that are about to be switched to due to a bitrate change. The old code only stopped the current streams which could result in a deadlock on stopping the pipeline. The changes force stopping and joining of any prepared streams too. https://bugzilla.gnome.org/show_bug.cgi?id=785987 2017-08-07 16:41:27 +0100 Sam Hurst * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Does version set fail because of HTTP2 Check to see if setting CURL_HTTP_VERSION_2_0 failed due to lack of HTTP/2 support or some bigger underlying libcurl failure https://bugzilla.gnome.org/show_bug.cgi?id=785878 2017-08-07 10:25:17 +0100 Philippe Normand * ext/curl/gstcurldefaults.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: curlhttpsrc: set http-version class property as enum This matches better with the preferred_http_version which was already declared as enum. https://bugzilla.gnome.org/show_bug.cgi?id=785878 2017-08-08 11:05:15 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Constify the config argument to gst_player_get_video_snapshot() This structure is only ever read from. 2017-08-07 16:00:16 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: Revert "kmssink: support videooverlay interface" This is causing hard failure for non-squared pixel. The fix isn't trivial so taking offline by reverting. This reverts commit db07f4507dad6561fc7e9320624aa7f0f0e10b36. 2017-08-04 11:08:18 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't mix up width and height CID 1416129 2017-08-03 20:21:17 +0100 Tim-Philipp Müller * tests/examples/compositor/crossfade.c: examples: fix compiler warning in compositor crossfade example warning: control reaches end of non-void function 2017-08-03 20:17:03 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gtk.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: docs: update for git master 2017-08-03 20:14:20 +0100 Tim-Philipp Müller * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: compositor: update disted orc fallback files 2017-07-11 22:04:55 -0400 Thibault Saunier * tests/examples/compositor/crossfade.c: * tests/examples/compositor/meson.build: * tests/examples/meson.build: * tests/meson.build: tests: examples: Add a simple crossfade example https://bugzilla.gnome.org/show_bug.cgi?id=784827 2017-07-06 14:26:21 -0400 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc.orc: * gst/compositor/compositorpad.h: compositor: Add support for crossfade blending Crossfading is a bit more complex than just having two pads with the right keyframes as the blending is not exactly the same. The difference is in the way we compute the alpha channel, in the case of crossfading, we have to compute an additive operation between the destination and the source (factored by the alpha property of both the input pad alpha property and the crossfading ratio) basically so that the crossfade result of 2 opaque frames is also fully opaque at any time in the crossfading process, avoid bleeding through the layer blending. Some rationnal can be found in https://phabricator.freedesktop.org/T7773. https://bugzilla.gnome.org/show_bug.cgi?id=784827 2017-07-20 16:17:16 -0400 Thibault Saunier * ext/libde265/gstlibde265.c: de265: Fix plugin name to match new plugin naming convention 2017-07-14 09:54:40 -0400 Thibault Saunier * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: Do not dereference a NULL pointer 2017-08-02 18:43:54 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Fix indentation 2017-08-02 10:46:46 +0300 George Kiagiadakis * sys/ipcpipeline/gstipcpipelinecomm.c: ipcpipeline: don't use g_steal_pointer; it's not in the current required version of GLib We depend on GLib 2.40, g_steal_pointer was introduced in 2.44. https://bugzilla.gnome.org/show_bug.cgi?id=785698 2017-08-01 17:07:59 +0300 George Kiagiadakis * configure.ac: * gst/ipcpipeline/meson.build: * gst/meson.build: * sys/Makefile.am: * sys/ipcpipeline/Makefile.am: * sys/ipcpipeline/gstipcpipeline.c: * sys/ipcpipeline/gstipcpipelinecomm.c: * sys/ipcpipeline/gstipcpipelinecomm.h: * sys/ipcpipeline/gstipcpipelinesink.c: * sys/ipcpipeline/gstipcpipelinesink.h: * sys/ipcpipeline/gstipcpipelinesrc.c: * sys/ipcpipeline/gstipcpipelinesrc.h: * sys/ipcpipeline/gstipcslavepipeline.c: * sys/ipcpipeline/gstipcslavepipeline.h: * sys/ipcpipeline/meson.build: * sys/ipcpipeline/protocol.txt: * sys/meson.build: * tests/check/Makefile.am: ipcpipeline: move to sys/ and make it dependent on platform support for unix sockets 2017-08-01 10:15:13 -0400 Georg Lippitsch * sys/decklink/gstdecklink.cpp: decklinksrc: Raise limit of devices to 16 https://bugzilla.gnome.org/show_bug.cgi?id=785694 2017-08-01 13:26:38 +0300 George Kiagiadakis * gst/ipcpipeline/meson.build: * gst/meson.build: meson: enable building the ipcpipeline plugin 2017-07-05 16:56:24 +0300 George Kiagiadakis * .gitignore: * configure.ac: * tests/examples/Makefile.am: * tests/examples/ipcpipeline/Makefile.am: * tests/examples/ipcpipeline/ipc-play.c: * tests/examples/ipcpipeline/ipcpipeline1.c: tests/examples: add manual tests/examples for the ipcpipeline elements ipcpipeline1 is a very simple test that shows a short videotestsrc fragment. ipc-play is a clone of gst-play that splits the pipeline in two processes, running the source & demuxer on the master process and the decoders & sinks on the slave. 2017-07-05 16:53:48 +0300 George Kiagiadakis * .gitignore: * tests/check/Makefile.am: * tests/check/pipelines/ipcpipeline.c: * tests/files/sine.wav: * tests/files/test.ts: tests/check: add automatic unit test suite for the ipcpipeline elements All tests run within a common framework for splitting processes and making them interract properly with the gst check system. 2017-07-05 16:50:22 +0300 George Kiagiadakis * configure.ac: * gst/ipcpipeline/Makefile.am: * gst/ipcpipeline/gstipcpipeline.c: * gst/ipcpipeline/gstipcpipelinecomm.c: * gst/ipcpipeline/gstipcpipelinecomm.h: * gst/ipcpipeline/gstipcpipelinesink.c: * gst/ipcpipeline/gstipcpipelinesink.h: * gst/ipcpipeline/gstipcpipelinesrc.c: * gst/ipcpipeline/gstipcpipelinesrc.h: * gst/ipcpipeline/gstipcslavepipeline.c: * gst/ipcpipeline/gstipcslavepipeline.h: * gst/ipcpipeline/protocol.txt: ipcpipeline: introduce new plugin for inter-process pipelines These elements allow splitting a pipeline across several processes, with communication done by the ipcpipelinesink and ipcpipelinesrc elements. The main use case is to split a playback pipeline into a process that runs networking, parser & demuxer and another process that runs the decoder & sink, for security reasons. https://bugzilla.gnome.org/show_bug.cgi?id=752214 2017-08-01 10:21:51 +0100 Julien Isorce * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl: return NULL mem if eglCreateImage failed Found on rpi when gpu_mem is too low so there is not enough memory to create the eglimage. But still gst_buffer_pool_acquire_buffer succeeded. And it leads to a CRITICAL assert: gst_egl_image_get_image: assertion 'GST_IS_EGL_IMAGE (image)' failed https://bugzilla.gnome.org/show_bug.cgi?id=785518 2017-06-20 13:11:27 +0800 Haihua Hu * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: support videooverlay interface Implement videooverlay interface in kmssink, divided into two cases: when driver supports scale, then we do refresh in show_frame(); if not, send a reconfigure event to upstream and re-negotiate, using the new size. https://bugzilla.gnome.org/show_bug.cgi?id=784599 2017-07-30 12:17:57 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: log all events We already log a few events explicitly, just log them all with more detail. 2017-07-29 16:54:38 +0100 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: fix header formatting 2017-07-28 16:58:38 +0100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: gl: document missing GstGLShader functions 2017-07-28 11:00:12 +0100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.h: gl/docs: some documentation updates Add some missing/incomplete docs 2017-07-26 19:04:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: gl/docs: correctly name our objects in the documentation GstGl -> GstGL 2017-07-26 19:03:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglformat.h: gl/docs: document GstGLFormat enum 2017-07-26 17:22:31 -0700 Reynaldo H. Verdejo Pinochet * ext/curl/gstcurlqueue.c: curl: curlqueue: add symbol name to avoid confusing gtkdoc 2017-07-26 16:51:50 -0700 Reynaldo H. Verdejo Pinochet * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: do not check for NULL before g_free() g_free() is NULL-safe. 2017-07-26 17:06:17 +0100 Sam Hurst * ext/curl/curltask.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlqueue.c: curlhttpsrc: Fix flagged Coverity errors Fixes CIDs 1415707 - 1415717 2017-07-26 17:43:19 +0100 Sam Hurst * ext/curl/curltask.h: * ext/curl/gstcurldefaults.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: curl: Reorganise header files to fix macOS builds https://bugzilla.gnome.org/show_bug.cgi?id=744261 2017-07-23 13:26:23 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: use local var Instead of the self->priv-> deref use the local var we created already. 2017-07-26 09:19:42 +0200 Edward Hervey * ext/curl/gstcurlhttpsrc.c: curlhttpsrc: Fix compilation without debugging system enabled 2017-07-25 15:23:57 +0100 Sam Hurst * ext/curl/Makefile.am: * ext/curl/curltask.h: * ext/curl/gstcurl.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurldefaults.h: * ext/curl/gstcurlhttpsrc.c: * ext/curl/gstcurlhttpsrc.h: * ext/curl/gstcurlqueue.c: * ext/curl/gstcurlqueue.h: * ext/curl/meson.build: curl: Add curlhttpsrc element Merged from https://github.com/bbc/gst-curlhttpsrc commit f8aabcfc5c50a44f3362de831377d6e86dcd2d49 https://bugzilla.gnome.org/show_bug.cgi?id=744261 2017-07-17 16:07:21 +0200 Guillaume Desmottes * sys/kms/gstkmsallocator.c: kmsallocator: add driver pitch support for planar formats We used to to handle the driver pitch only for single plan video format. Add support for multi planes format by re-using the extrapolate function from the v4l2 element. Also use this pitch to calculate the proper offsets. Prevent DRM drivers to pick a slow path if the pitches/offsets don't match the ones it reported. https://bugzilla.gnome.org/show_bug.cgi?id=785029 2017-07-17 15:58:57 +0200 Guillaume Desmottes * sys/kms/gstkmsallocator.c: kmsallocator: inline gst_kms_allocator_alloc_empty() No semantic change, just renamed the 'tmp' variable to a more meaningful name and to use the same structure as in gst_kms_allocator_bo_alloc(). Needed as I'm going to move the gst_memory_init() call after the allocation of the DUMB buffer. https://bugzilla.gnome.org/show_bug.cgi?id=785029 2017-07-25 10:03:25 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix compilation with gcc 4.8.4 https://bugzilla.gnome.org/show_bug.cgi?id=785367 2017-07-24 18:38:57 +0300 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Remove the GAP event from the queue before queueing up the GAP buffer Otherwise check_events() will not remove the GAP event (as the queue tail is not the event anymore but the GAP buffer), then the GAP buffer is handled, then the GAP event is handled again, ... forever. 2017-07-24 17:00:02 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Correctly consider frame reordering for timecode calculation 2017-07-24 16:54:22 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Use material track edit rate for component PTS offsetting 2017-07-24 16:49:19 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Output timecodes for video streams 2017-07-24 16:21:31 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Keep track of component start positions and material track positions This allows us to know exactly where in the material track we are, and how to convert from a PTS for a source track to the actual PTS of the material track (i.e. by adding the component start position). https://bugzilla.gnome.org/show_bug.cgi?id=785119 2017-07-21 12:28:23 +0300 Sebastian Dröge * gst/mpegtsmux/Makefile.am: tsmux: Fix make distcheck 2017-07-21 08:43:45 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglframebuffer.c: gl: fix g-i annotations for glframebuffer gstglframebuffer.c:176: Error: GstGL: annotations not supported for tag "Since:". 2017-07-21 09:33:54 +0300 Sebastian Dröge * gst/mpegtsmux/meson.build: tsmux: Add mpegtsmux_jpeg2000.c to meson.build 2017-07-21 09:27:20 +0300 Sebastian Dröge * gst/mpegtsmux/tsmux/tsmuxstream.h: tsmux: Store PES payload size in a 32 bit integer While the size in the packet is only 16 bits, we need to handle bigger sizes without overflowing. For video streams this can happen, 0 is written to the stream instead. This fixes muxing of buffers >= 2**16. 2017-07-19 10:14:21 -0400 Aaron Boxer * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux_jpeg2000.c: * gst/mpegtsmux/mpegtsmux_jpeg2000.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: tsmux/tsdemux: Add support for JPEG2000 Based on patches by Milos Seleceni. https://bugzilla.gnome.org/show_bug.cgi?id=753323 2017-07-20 10:29:18 -0400 Nicolas Dufresne * Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/meson.build: d3dsinkwrapper: Make the DLL name match the plugin name Otherwise, since 1.12, the plugin gets blacklisted. https://bugzilla.gnome.org/show_bug.cgi?id=785168 2017-07-20 18:09:15 +0530 Nirbheek Chauhan * configure.ac: * sys/decklink/gstdecklink.h: decklink: Fix building with MSYS2's MinGW Reported and tested by Philippe Renon. https://bugzilla.gnome.org/show_bug.cgi?id=784943 2017-07-20 18:51:53 +1000 Alessandro Decina * sys/shm/meson.build: meson: fix potentially undefined shm_deps variable 2017-07-20 18:43:11 +1000 Alessandro Decina * ext/smoothstreaming/meson.build: meson: make smoothstreaming depend on gio 2017-07-20 17:49:59 +1000 Alessandro Decina * gst-libs/gst/gl/meson.build: meson: specify fallback for libgmodule_dep Fixes build with glib built as a subproject. 2017-07-19 04:19:34 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix format specifier warnings in logging v2 HRESULT is unsigned long on Windows, but the Decklink headers define it to 'int' on Linux. Confusingly, the defines that talk about the possible return values for it use long constants. The easy fix would be to change the linux/LinuxCOM.h header, but that's copied from the decklink SDK. Change the logging to always upcast to unsigned long while printing HRESULT for consistency across platforms. 2017-07-19 04:14:13 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.h: decklink: Fix CI failure due to missing WINAPI definition WINAPI is for the windows calling convention to use, and should expand to nothing on Linux. https://build.gnome.org/continuous/buildmaster/builds/2017/07/18/76/build/log-gst-plugins-bad.txt 2017-07-19 02:21:42 +0530 Nirbheek Chauhan * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix format specifier warnings in logging gstdecklinkvideosrc.cpp:425:7: warning: format '%x' expects argument of type 'unsigned int', but argument 8 has type 'HRESULT {aka long int}' [-Wformat] [and so on] 2017-07-19 02:19:47 +0530 Nirbheek Chauhan * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Fix build on mingw32 by adding missing WINAPI gstdecklinkaudiosink.cpp:155:19: error: conflicting type attributes specified for 'virtual HRESULT GStreamerAudioOutputCallback::QueryInterface(const IID&, void**)' In file included from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/objbase.h:153:0, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/ole2.h:16, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/windows.h:94, from /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/rpc.h:16, from win/DeckLinkAPI.h:27, from gstdecklink.h:35, from gstdecklinkaudiosink.h:27, from gstdecklinkaudiosink.cpp:25: /var/lib/jenkins/workspace/cerbero-cross-mingw32/workdir/mingw/w32/bin/../lib/gcc/i686-w64-mingw32/4.7.3/../../../../i686-w64-mingw32/include/unknwn.h:67:25: error: overriding 'virtual HRESULT IUnknown::QueryInterface(const IID&, void**)' (and many more) https://ci.gstreamer.net/job/cerbero-cross-mingw32/6407/console 2017-07-18 12:46:09 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: video: mark symbols explicitly for export with GST_EXPORT 2017-07-18 12:45:14 +0100 Tim-Philipp Müller * gst-libs/gst/uridownloader/gstfragment.h: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: mark symbols explicitly for export with GST_EXPORT 2017-07-18 12:43:26 +0100 Tim-Philipp Müller * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * gst-libs/gst/player/gstplayer-video-renderer.h: * gst-libs/gst/player/gstplayer-visualization.h: * gst-libs/gst/player/gstplayer.h: player: mark symbols explicitly for export with GST_EXPORT 2017-07-18 01:16:28 +0100 Tim-Philipp Müller * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.h: opencv: mark symbols explicitly for export with GST_EXPORT 2017-07-18 01:10:56 +0100 Tim-Philipp Müller * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/mpegts.h: * gst-libs/gst/mpegts/mpegts_enum.py: mpegts: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:49:41 +0100 Tim-Philipp Müller * common: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/build_mkenum.py: * gst-libs/gst/interfaces/photography.h: photography: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:23:09 +0100 Tim-Philipp Müller * gst-libs/gst/insertbin/gstinsertbin.h: insertbin: mark symbols explicitly for export with GST_EXPORT 2017-05-20 13:19:07 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstjpeg2000sampling.h: * gst-libs/gst/codecparsers/gstjpegparser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstmpegvideometa.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.h: * gst-libs/gst/codecparsers/gstvp8parser.h: * gst-libs/gst/codecparsers/gstvp8rangedecoder.h: * gst-libs/gst/codecparsers/gstvp9parser.h: codecparsers: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:31:36 +0100 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: basecamerabinsrc: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:30:51 +0100 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:29:56 +0100 Tim-Philipp Müller * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/audio/gstnonstreamaudiodecoder.h: audio: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:27:54 +0100 Tim-Philipp Müller * gst-libs/gst/allocators/gstphysmemory.h: allocators: mark symbols explicitly for export with GST_EXPORT 2017-07-18 00:26:23 +0100 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: mark symbols explicitly for export with GST_EXPORT 2017-07-10 16:39:49 +0900 Seungha Yang * docs/plugins/inspect/plugin-subenc.xml: * gst/subenc/gstwebvttenc.c: webvttenc: Change src pad template to application/x-subtitle-vtt Use consistent mime-type with subparse element for webvtt format https://bugzilla.gnome.org/show_bug.cgi?id=784715 2017-07-09 14:34:21 +0900 Seungha Yang * ext/dash/gstmpdparser.c: dashdemux: Add support webvtt subtitle stream Enable exposing webvtt subtitle streams. https://bugzilla.gnome.org/show_bug.cgi?id=784715 2017-07-18 00:52:03 +0200 Nicola Murino * ext/openh264/gstopenh264enc.cpp: openh264enc: set GST_PARAM_MUTABLE_PLAYING for bitrate/max-bitrate properties This way is documented that these properties can be changed in any state https://bugzilla.gnome.org/show_bug.cgi?id=784988 2017-07-18 00:49:12 +0200 Nicola Murino * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264enc: allow to dynamically change bitrate https://bugzilla.gnome.org/show_bug.cgi?id=784988 2017-07-18 00:36:27 +0200 Nicola Murino * ext/openh264/gstopenh264enc.cpp: openh264enc: fix indentation https://bugzilla.gnome.org/show_bug.cgi?id=784988 2017-07-17 19:29:39 +0200 Stefan Sauer * Makefile.am: cruft: add ext/gsettings to the cruft list 2017-07-11 10:09:02 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: support 2-component images https://bugzilla.gnome.org/show_bug.cgi?id=784797 2017-06-24 11:18:06 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: initial support for JP2 format This is a simple way of supporting JP2 : we treat is as JPC, and throw away header info. https://bugzilla.gnome.org/show_bug.cgi?id=767546 2017-07-06 15:14:57 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: Parse colorimetry, interlace-mode, field-order, multiview-mode and chroma-site https://bugzilla.gnome.org/show_bug.cgi?id=753323 2017-07-13 13:17:57 +0530 Satya Prakash Gupta * ext/gsm/gstgsmenc.c: gsm: unmap output buffer when done https://bugzilla.gnome.org/show_bug.cgi?id=784887 2017-07-17 08:06:22 +0200 Edward Hervey * gst-libs/gst/gl/meson.build: meson: Fix GLES2 check On systems without pkg-config, we have the the library present but not the headers https://bugzilla.gnome.org/show_bug.cgi?id=785010 2017-07-15 17:25:36 +0100 Philippe Normand * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow_cocoa: fix video overlay support Make sure the window handle is configured after the NSWindow was created. https://bugzilla.gnome.org/show_bug.cgi?id=767462 2017-07-16 01:17:04 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: keep refs over async operations Avoids dereferencing dead objects What happens in the autovideosink case is that context 1 is created and destroyed before all the async operations hae executed on the associated window. When the delayed operations execute, they then reference dead objects and crash. We fix this by keeping refs over all async operations so the object cannot be deleted while async operations are in flight. https://bugzilla.gnome.org/show_bug.cgi?id=782379 2017-07-15 01:24:52 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: implement set_render_rectangle support https://bugzilla.gnome.org/show_bug.cgi?id=782959 2017-07-15 21:28:38 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: audiomixer: set all properties at once 2017-07-15 19:33:21 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: tests: audiomixer: use the buffer helper for other tests too 2017-07-15 12:52:38 +0100 Tim-Philipp Müller * meson.build: * po/meson.build: meson: add translations 2017-06-29 14:35:40 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: consolidate tuning stats gathering Additionally: drop unneeded fe_fd variable. 2017-07-14 13:54:31 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: document caps negotiation raciness Until we land conversion support in audioaggregator (#773762). https://bugzilla.gnome.org/show_bug.cgi?id=777915 2017-07-14 14:14:38 +0530 Nirbheek Chauhan * configure.ac: * sys/decklink/Makefile.am: decklink: Add autotools support on Windows Also add a missing windows file to EXTRA_DIST https://bugzilla.gnome.org/show_bug.cgi?id=784943 2017-07-07 16:33:42 +0100 Julien Isorce * pkgconfig/gstreamer-gl-uninstalled.pc.in: pkgconfig: missing GL_CFLAGS in gstreamer-gl-uninstalled.pc.in Already present in gstreamer-gl.pc.in https://bugzilla.gnome.org/show_bug.cgi?id=784779 2017-07-14 08:09:25 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: add a helper for buffer creation This makes the test setup easier to read. 2017-07-13 22:00:58 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: remove duplicated code fragment This code already runs above when (event || query). 2017-07-13 21:55:55 +0200 Stefan Sauer * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/base/gstaggregator.c: aggregator: code cleanups Fix comment typos, some copy'n'paste in logging. Add more doc comments. 2017-07-13 21:54:55 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: use test helper once more 2017-07-13 12:57:12 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Workaround for live seek ranges when advancing This is a workaround for a regression introduced by f4190a49c04f1d5d174cebba0bc9a03a7ec721c2 ( adaptivedemux: Check live seeking range more often ) The goal of the previous commit was to be able to cope with non-1.0 rates on live streams which have a "seeking window" (i.e. the server keeps around quite a bit of the live stream so you can seek back into it). Without that commit, two different kind of issues would happen: * When doing reverse playback, you would never check whether you are outside of the seekable region. And would then continuously try to download fragments that are no longer present. * When doing fast forward, you would end up requesting fragments which are not present yet. In order to determine whether one was *really* outside of the seekable window, we check whether the current stream position is still within the seekable region. The *problem* though with that commit is that it assumes that subclasses will return continuously updated seeking ranges (i.e. dependent on the current time), which is *NOT* the case. For example: * dashdemux does use the current UTC to determine the seekable region * hlsdemux uses the values from the last updated manifest Therefore if one downloads fragments faster than realtime, for HLS we would end up at the end of the last manifest seekable range, and the previous commit would consider the stream as being ended... which is not the case. In the long run, we need to figure out a way to cope with non-1.0 rates on live streams for all types of stream (including HLS). https://bugzilla.gnome.org/show_bug.cgi?id=783075 2017-05-29 22:47:10 -0700 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: update manifest streams correctly if pads aren't exposed In some cases, it is possible that we need to update the manifest before pads have been exposed at all. If there are no current pads, just expose the next prepared streams. This doesn't handle the case where a manifest update would happen while a live streams is changing periods, which is a type of use case that we're unaware of real usages yet. https://bugzilla.gnome.org/show_bug.cgi?id=783028 2017-05-13 15:17:57 -0700 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: small refactor to avoid repeated code Move segment event update to a function https://bugzilla.gnome.org/show_bug.cgi?id=773159 2017-05-09 11:41:49 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle prepared streams on seeks This is a race that was exposed by the {hls|dash}.scrub_forward_seeking validate test. The "race" is that a subclass might want to change format, causing a new stream to be created (but not exposed/switched yet) and put on the prepared_streams list. That stream will have values (including pending segment) from the pre-seek state. Before the stream is exposed/switched, a new seek comes in and the stream values get updated ... but the ones that will be changed don't get updated causing them to push out wrong segments once they are exposed. https://bugzilla.gnome.org/show_bug.cgi?id=773159 2017-07-12 15:29:32 +1000 Jan Schmidt * ext/qt/gstqtsink.cc: * ext/qt/gstqtsink.h: * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qt: Use a proxy object for access to the QML widget QML can destroy the video widget at any time, leaving us with a dangling pointer. Use a lock and a proxy object to cope with that, and block in the widget destructor if there are ongoing calls into the widget. 2017-07-06 21:09:50 +1000 Jan Schmidt * ext/gl/gstglbumper.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Remove hard-coded pad templates Add a function to install the default RGBA pad templates, but don't make them required so that there can be GstGLFilter sub-classes with different input/output caps if they want. Remove the hard-coded RGBA restriction in the set_caps_features call, as it will be taken care of by intersecting with the pad templates. Update all the sub-classes to match 2017-07-07 14:41:17 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Don't throw assertions on invalid allocation query basesrc can send an allocation query with no caps, in which case we should just fail it without throwing assertions. 2017-07-11 20:54:25 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Create index table arrays with a big enough size 2017-07-11 20:53:22 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Initialize index table entries completely in all cases When seeking backwards into a previously unseen location, we wouldn't fully initialize them and playback would fail later. 2017-07-11 12:43:46 -0400 Olivier Crête * ext/openexr/Makefile.am: openexr: Header are not C++11, force C++98 2017-05-12 14:39:54 +0200 Georg Lippitsch * sys/decklink/gstdecklink.cpp: decklinkvideosrc: Add custom memory allocator The default memory allocator of the decklink library allocates a fixed pool of buffers, and the number of buffers is unknown. This makes it impossible do useful queuing downstream. The new memory allocator can create an unlimited number of buffers, giving all queuing features one would expect from a live source. https://bugzilla.gnome.org/show_bug.cgi?id=782556 2017-07-10 17:35:32 +0200 Philippe Renon * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Properly pass pLockedBuffer by reference when calling IDirectSoundCaptureBuffer_Lock https://bugzilla.gnome.org/show_bug.cgi?id=784755 2017-07-10 21:08:09 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: more test cleanups Port over the test helpers from the adder tests. 2017-07-10 20:16:10 +0200 Stefan Sauer * tests/check/elements/audiomixer.c: audiomixer: refactor test Apply cleanups from the adder tests. Use a fixture for common code. 2017-07-05 11:07:05 +0300 Jussi Kukkonen * ext/vulkan/vkapi.h: * ext/vulkan/wayland/Makefile.am: * ext/vulkan/xcb/Makefile.am: vulkan: Use the generated version of vkconfig.h Build fails in ext/vulkan/xcb and ext/vulkan/wayland when: * building from tarball * building out-of-tree * Only one WSI integration (xcb or wayland) is enabled by configure.ac This is because vkconfig.h from source directory gets used instead of the generated one. Add the correct build directory to "-I". Use angle bracket include in vkapi.h so that it actually looks in the include search path instead of defaulting to the same (source tree) directory. https://bugzilla.gnome.org/show_bug.cgi?id=784539 2017-07-05 11:00:42 +0300 Jussi Kukkonen * ext/vulkan/vkdisplay.c: vkdisplay: Use ifdef for platform specific defines VK_KHR_*_SURFACE_EXTENSION_NAME are only available when corresponding WSI is enabled. https://bugzilla.gnome.org/show_bug.cgi?id=784539 2017-07-10 13:27:40 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: initialize variable Otherwise clang complains: gstkmssink.c:1192:7: warning: variable 'buf' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized] 2017-06-12 23:36:05 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: openjpegdec: support grayscale with alpha channel https://bugzilla.gnome.org/show_bug.cgi?id=783591 2017-06-12 09:47:49 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: allow parsing when current caps are null In this case, we assume that the format is jpc, and we infer the color space from the number of components. This allows the parser to process a jpc disk file coming from a filesrc element. https://bugzilla.gnome.org/show_bug.cgi?id=783291 2017-07-02 11:55:13 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: segment seek flag is not relevant when checking for EOS It is only relevant in deciding whether or not send SEGMENT_DONE. In this case, not detecting EOS leads to a busy loop when encountering the originally recorded end-of-file of a file that is still growing. 2017-07-07 17:20:38 -0400 Nicolas Dufresne * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: Revert "adaptivedemux: Allow application to force EOS" This reverts commit 8a070cf9aff8a122b1a52597441bab61c0476ef9. 2017-07-07 12:13:27 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: Track cached kmsmem and clear them on drain In this patch we keep track of the cached kmsmem in a way that we can clear the cache during the drain process. This release the framebuffer before waiting for the next vblank, hence add support for DRM driver (like Intel one) that release the associated DMABuf reference asynchronously. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-07 12:12:38 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Move kmsmem cache code higher This will be needed as this API will be used elsewhere to clear the cache. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-05-18 11:54:31 +0200 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: drop last rendered buffer on ALLOCATION and DRAIN queries kmssink keeps a reference on the last rendered buffer. If this buffer refers to an upstream buffer, it should be should be released on DRAIN and ALLOCATION queries so all upstream buffers can be returned to the pool if needed. As the buffer may be used for scanout, we copy this buffer into a dumb buffer prior to let it go. Based on patch from Guillaume Desmottes https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-06 17:20:56 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: kmssink: Don't leak GEM primed from DMABuf This otherwise breaks DMABuf reclaiming. This is not visible from userspace, but inside the kernel, the DRM driver will hold a ref to the DMABuf object. With a V4L2 driver allocating those DMABuf, it then prevent changing the resolution and re-allocation new buffers. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-05 16:51:12 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Factor out copying to dump buffer This will be used to copy any upstream memory in order to return it on resolution change, allocation query or drain query. https://bugzilla.gnome.org/show_bug.cgi?id=782774 2017-07-03 15:28:25 -0400 Nicolas Dufresne * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Allow application to force EOS Adaptive demuxers are special demuxers that runs their own sources internally. In this patch we flag the demuxer as being a source in order to receive the downstream events. We then handle the EOS event by resetting the internal state and pushing EOS on all pads. This handling is done asynchronously to avoid blocking user thread. https://bugzilla.gnome.org/show_bug.cgi?id=723868 2017-07-07 17:07:31 +0530 Nirbheek Chauhan * meson.build: meson: Set python3 before plugin subdir()s It's used by the msdk plugin 2017-07-07 20:20:35 +0900 Yasushi SHOJI * ext/gsm/meson.build: * ext/meson.build: meson: Added meson.build for gsm https://bugzilla.gnome.org/show_bug.cgi?id=784646 2017-07-07 12:28:14 +0100 Tim-Philipp Müller * sys/msdk/meson.build: meson: msdk: use python3 from python3 module 2017-07-07 11:59:03 +0100 Tim-Philipp Müller * meson.build: meson: find python3 via python3 module https://bugzilla.gnome.org/show_bug.cgi?id=783198 2017-04-13 22:11:55 +0200 Mathieu Duponchelle * gst-libs/gst/base/gstaggregator.c: aggregator: Invalidate pad's tail position ... when dequeuing a segment event. https://bugzilla.gnome.org/show_bug.cgi?id=784593 2017-07-06 09:37:28 +0100 Tim-Philipp Müller * ext/openjpeg/gstopenjpegdec.c: Revert "openjpegdec: support grayscale with alpha channel" This reverts commit 1883ac26b7d02724c11d4f4bad8698c4873b443d. This breaks the build on older versions of openjpeg: gstopenjpegdec.c:752:30: error: ‘opj_image_comp_t {aka struct opj_image_comp}’ has no member named ‘alpha’ https://bugzilla.gnome.org/show_bug.cgi?id=783591 2017-06-12 23:36:05 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: openjpegdec: support grayscale with alpha channel https://bugzilla.gnome.org/show_bug.cgi?id=783591 2017-04-11 01:18:51 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix gaps at end of streams. When the pad has received EOS, its buffer may still be mixed any number of times, when the pad's framerate is inferior to the output framerate. This was introduced by my patch in https://bugzilla.gnome.org/show_bug.cgi?id=782962, this patch also correctly addresses the initial issue. 2017-07-05 17:04:46 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: For intra-only streams, always output DTS=PTS 2017-07-05 15:48:57 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix integer overflow in partition position comparison function 2017-07-05 15:11:22 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Print PTS and DTS in debug output when pushing buffers 2017-07-05 13:59:12 +0300 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Set field-order correctly for interlaced video 2017-07-05 13:52:25 +0300 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Use display width/height instead of stored width/height Stored values contain padding and alignment, and should only be used as fallback if neither display values nor sampled values exist. 2017-07-05 00:48:36 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't include any KLV packets between header metadata and index table segments in calculations Minor fixup of last commit. 2017-07-04 20:01:37 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Allow filler and other KLV packets between index table segments While only filler packets should be allowed, for good measure also skip any other KLV packets in the range where there could be index table segments. This fixes parsing of partitions with multiple index table segments, which are separated by a filler packet, or other packets. 2017-07-04 15:28:36 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: flesh out documentation for GST_H264_PARSER_NO_NAL_END 2017-07-03 10:11:42 +0100 Tim-Philipp Müller * ext/ttml/Makefile.am: ttml: fix linking to libgstvideo https://bugzilla.gnome.org/show_bug.cgi?id=784439 2017-07-01 20:23:25 +0200 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: fix "'aggclass' may be used uninitialized in this function" 2016-03-09 22:01:12 +0000 Julien Isorce * gst-libs/gst/gl/gstglupload.c: glupload: add GST_CAPS_FEATURE_MEMORY_DMABUF Insert before SystemMemory to advice upstream elements that it is preferable for them to push dmabuf with the caps feature. Examples: /* Discard memory:DMABuf caps feature */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ capsfilter caps="video/x-raw(memory:SystemMemory)" ! glimagesink /* Force memory:DMABuf caps feature. */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ capsfilter caps="video/x-raw(memory:DMABuf)" ! glimagesink /* Auto select memory:DMABuf caps feature. */ GST_GL_PLATFORM=egl GST_GL_API=gles2 GST_GL_WINDOW=x11 gst-launch-1.0 \ filesrc location=test.mp4 ! qtdemux ! h264parse ! vaapih264dec ! \ glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=774649 2017-06-28 14:45:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: reset gl->DrawBuffer to the necessary values GL_COLOR_ATTACHMENT0 when a framebuffer is bound GL_BACK if no framebuffer is bound https://bugzilla.gnome.org/show_bug.cgi?id=784210 2017-06-28 12:17:37 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglmemory.c: glmemory: reset the draw buffer to GL_BACK The draw buffer should be reset to GL_BACK since the framebuffer is already unbound. https://bugzilla.gnome.org/show_bug.cgi?id=784210 2017-06-28 16:17:41 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: use correct unit in tuning-timeout prop description Milliseconds was wrong and made use of this timeout quite confusing. The code uses the value as microsenconds so any meaningful number was off by orders of magnitude. 2017-06-23 16:18:49 -0400 Thibault Saunier * meson.build: meson: Allow using glib as a subproject 2017-06-20 13:44:47 -0400 Thibault Saunier * tests/check/meson.build: meson: Do not use path separator in test names Avoiding warnings like: WARNING: Target "elements/audioamplify" has a path separator in its name. 2017-06-27 18:47:37 -0700 Per-Erik Brodin * sys/nvdec/gstnvdec.c: nvdec: Use qdata on memory instead of buffer meta Using a meta can be problematic since the memory contained in the buffer can be transferred to a new buffer in which case the meta would be lost. https://bugzilla.gnome.org/show_bug.cgi?id=784235 2017-06-27 15:41:48 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Include duration in response to SEEKING query 2017-06-27 15:01:22 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: Write temporal offset and correct keyframe offset into index table https://bugzilla.gnome.org/show_bug.cgi?id=784027 2017-06-27 10:47:44 +0300 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfd10.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfessence.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: mxfdemux: Take temporal reordering from the index table into account This is needed to know the PTS, without that we only know the DTS and using that also for the PTS is wrong unless we have an intra-only codec. If we can't get the temporal reordering from the index table, don't set any PTS for non-intra-only codecs and let decoders figure out something. https://bugzilla.gnome.org/show_bug.cgi?id=784027 2017-05-02 17:21:43 -0700 Per-Erik Brodin * configure.ac: * sys/Makefile.am: * sys/nvdec/Makefile.am: * sys/nvdec/gstnvdec.c: * sys/nvdec/gstnvdec.h: * sys/nvdec/plugin.c: nvdec: New plugin for NVIDIA hardware video decode https://bugzilla.gnome.org/show_bug.cgi?id=781537 2017-06-19 20:35:30 +0900 Eunhae Choi * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: remove unnecessary g_return_if_fail() This should never happen, and should be a g_assert() if it's a worry. Fixes warnings from source code checkers about possible caps leaks here. https://bugzilla.gnome.org/show_bug.cgi?id=783955 2017-06-26 09:52:24 +0100 Tim-Philipp Müller * meson.build: meson: fix with-package-name option https://bugzilla.gnome.org/show_bug.cgi?id=784082 2017-06-22 16:40:07 -0400 Nicolas Dufresne * tests/check/meson.build: meson: Enable netsim unit test 2017-06-22 14:21:34 -0400 Nicolas Dufresne * gst/meson.build: * gst/netsim/meson.build: meson: Add netsim plugin 2017-06-22 10:34:04 -0400 Nicolas Dufresne * gst-libs/gst/gl/meson.build: meson: Re-add pkg-config support for bcm_host Now we just fallback to find_library for Rasbian jessy and older. https://bugzilla.gnome.org/show_bug.cgi?id=784026 2017-06-21 15:15:37 -0400 Nicolas Dufresne * sys/shm/meson.build: * tests/check/meson.build: meson: Enable shm unit test 2017-06-21 13:45:04 -0400 Nicolas Dufresne * sys/meson.build: * sys/shm/meson.build: meson: Enable building shm plugin 2017-06-21 13:42:31 -0400 Nicolas Dufresne * sys/shm/shmpipe.c: shmpipe: Should not use glib type without ifdef The shmpipe should build without GLIB. 2017-06-21 11:18:43 +0200 Guillaume Desmottes * gst-libs/gst/gl/meson.build: gl: meson: use cc.find_library() to detect 'bcm_host' On the raspberry pi no pkg-config file is provided for the bcm_host library. We are using AC_CHECK_LIB to detect this lib with autotools, cc.find_library() library is a closer meson equivalent. https://bugzilla.gnome.org/show_bug.cgi?id=784026 2017-06-22 01:01:40 +1000 Jan Schmidt * configure.ac: configure: Add --with-moc/uic/rcc options For cross-compiling, it's easier to be able to specify the actual paths to the tools 2017-06-22 01:01:40 +1000 Jan Schmidt * tests/examples/qt/qmlsink/CMakeLists.txt: qmlsink example: Add CMakeLists.txt Make it possible to build using cmake instead of qmake 2017-06-22 01:01:40 +1000 Jan Schmidt * ext/qt/qtitem.cc: qt: Remove misleading reference to GTK in qtitem.cc 2017-06-20 19:19:51 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: Put gstglwindow_cocoa.h into noinst_HEADERS again And remove gstgldisplay_cocoa.h instead, which got moved to the installed headers earlier. 2017-06-19 21:59:29 +0900 Eunhae Choi * ext/directfb/dfbvideosink.c: directfb: fix caps leak add unref in case of error https://bugzilla.gnome.org/show_bug.cgi?id=783961 2017-06-16 18:08:39 -0700 Scott D Phillips * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/dash_mpd.c: tests: dash & adaptivedemux: move iterator variable declaration out of `for` This is a c99-ism that gcc 4.8.5 errors on unless -std=c99 is specified. https://bugzilla.gnome.org/show_bug.cgi?id=783868 2017-06-16 09:43:35 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: fix use of wrong array index for tune signal Erroneous value made "TUNE" overwrite "TUNNING_FAIL" .... 2017-06-15 17:08:19 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvb: src: issue warning on failed delsys-vs-parameter issues Aids in understanding misses with the delsys auto-detection logic 2017-06-15 14:13:14 -0400 Thibault Saunier * gst/mxf/mxfdemux.c: mxfdemux: Do not try to serialize unresolved metadatas When retrieving the `mxfdemux.structure` property, it leads to an assertion as metadatas need to be resolved for the call to mxf_metadata_base_to_structure to be valid. 2017-06-12 22:29:01 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Fix DirectVIV uploader for formats with a single plane We have to pass the "height" as height = vmeta->offset[1] / width to the API, which of course does not work well for formats with only a single plane. Use the whole memory size instead of the offset in that case. 2017-06-10 07:56:48 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: openjpegdec: fix display artifacts for RGB 8-bit https://bugzilla.gnome.org/show_bug.cgi?id=783626 2017-06-07 16:17:50 +0100 Vincent Penquerc'h * ext/openjpeg/gstopenjpegdec.c: openjpeg: guard against invalid memory access on crafted files 2017-06-05 15:31:52 +0100 Vincent Penquerc'h * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: jpeg2000sampling: fix critical when sampling is missing from caps This can happen with real files 2017-06-07 16:58:23 -0400 Thibault Saunier * tests/check/meson.build: meson: Fix building/running tests outside gst-build 2017-05-18 22:02:38 +0200 Mathieu Duponchelle * meson.build: * tests/check/meson.build: * tests/meson.build: tests: start porting to meson Incomplete port, to get the ball rolling https://bugzilla.gnome.org/show_bug.cgi?id=782962 2017-05-18 10:36:50 -0700 Scott D Phillips * sys/msdk/gstmsdkenc.c: msdk: enc: set pts and dts, fix inverted sync_point flag Set the pts and dts on the frame that we receive from the msdk. Also fix the inverted logic in setting sync points, previously we were marking all frames as sync points except IDRs. https://bugzilla.gnome.org/show_bug.cgi?id=782801 2017-05-29 12:22:17 -0400 Nicolas Dufresne * ext/gl/meson.build: gl: Add dependency to gstallocators 2017-06-07 17:50:09 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Make timestamp reference specifier driver specific 2017-05-12 15:28:46 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: jpeg2000parse: parse RSIZ capabilities and put profile/level into the caps The RSIZ capabilities tag stores the JPEG 2000 profile. In the case of broadcast profiles, it also stores the broadcast main level, which specifies the bit rate. https://bugzilla.gnome.org/show_bug.cgi?id=782337 2017-06-04 20:23:36 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Clear "cancelled" on uridownloader before processing manifest Previous commit let demux call gst_uri_downloader_cancel() on _demux_reset(). Note that, _demux_reset() called during PAUSED_TO_READY and READY_TO_PAUSED. And, it will set "cancelled" on uridownloader which blocks the use of uridownloader. The issue is that, subclass can use the uridownloader not only live streaming for manifest update, but also for fetching another manifests such as variant and rendition m3u8 of hls streaming. So to unblock it, demux should clear "cancelled" before processing initial manifest. https://bugzilla.gnome.org/show_bug.cgi?id=783401 2017-06-06 14:58:55 -0400 Thibault Saunier * gst/rawparse/gstvideoparse.c: videoparse: Fix property handling Usage of GstValueArray was wrong and frame-stride does not exist in rawvideoparse 2017-05-25 15:10:32 +0200 Guillaume Desmottes * sys/kms/gstkmssink.c: kmssink: Add xilinx_drm to the list of drivers This prevent having to set the driver-name explicitly when running on Zynq UltraScale+ boards. https://bugzilla.gnome.org/show_bug.cgi?id=783188 2017-06-01 16:00:50 +0200 Wim Taymans * gst/pcapparse/gstpcapparse.c: pcapparse: endianness fix Also swap the linktype after we detected that we need to do byteswapping. Fixes a problem with reading pcap files generated on a machine with different endianness. 2017-05-31 02:46:01 +0200 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: release the manifest lock ... before broadcasting preroll. The deadlock was as follows: -> The subclass pushes a buffer on a newly-created stream in T1 -> We take the preroll lock in T1, to handle_preroll -> The demuxer is stopped in T2, we take the MANIFEST_LOCK -> T1 starts blocking because it received a reconfigure event and needs to take the MANIFEST_LOCK -> T2 deadlocks because it now wants the preroll_lock. https://bugzilla.gnome.org/show_bug.cgi?id=783255 2017-05-30 15:27:37 +0200 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Implement a default presentation delay Have a fallback presentation delay is great (if not present in the manifest), having an actual default value is better. https://bugzilla.gnome.org/show_bug.cgi?id=783244 2017-05-29 22:28:21 -0700 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: do not erase data while updates-loop is running Make sure the manifest update loop is stopped before proceeding with the resetting of the manifest data. Otherwise, the updates loop will try to use it and it leads to a segfault https://bugzilla.gnome.org/show_bug.cgi?id=783028 2017-05-29 22:26:09 -0700 Thiago Santos * ext/dash/gstmpdparser.c: mpdparser: remove duplicate free of client data https://bugzilla.gnome.org/show_bug.cgi?id=783028 2017-06-01 01:15:05 +0000 Jeremy Hiatt * gst-libs/gst/gl/gstglutils.c: glutils: Fix GValue leak in gst_gl_value_set_texture_target_from_mask() 2017-05-31 03:14:04 +0200 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: make sure to free all "old streams" As we release the MANIFEST_LOCK in stop_tasks, demux->priv->old_streams can be set, we need to free these otherwise we may end up trying to dispose elements in the READY state. https://bugzilla.gnome.org/show_bug.cgi?id=783256 2017-05-16 17:29:35 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't be too aggressive with seek ranges When an accurate seek is requested on a live stream, only requests the exact value for the "starting position" (i.e. start in forward playback and stop in reverse playback). https://bugzilla.gnome.org/show_bug.cgi?id=782698 2017-05-31 10:58:39 +0200 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Remove wrong assertion This is wrong because: * If the rate is negative we should check for the *previous* period * adaptivedemux already does the proper checks before calling this method 2017-05-26 17:55:44 +0200 Edward Hervey * ext/ttml/ttmlparse.c: ttml: Simplify code n2 can never be NULL since: * it's in a "while (n1 && n2)" block * and it's not modified before CID #1405868 2017-05-26 17:44:40 +0200 Edward Hervey * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: nonstreamaudio: Avoid using wrong variable And to make that 100% obvious, only use variables declared within the switch cases instead of function-wide ones. Also remove useless one-time-use-only variable. CID #1409857 2017-05-26 17:41:39 +0200 Edward Hervey * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: nonstreamaudio: Avoid using un-initialized value We would end up with cur_position not set but proceed being at its default value of TRUE. Instead, properly set proceed to FALSE CID #1409855 2017-05-26 17:30:10 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix debugging message GstSegment position is a guint64 and not a gint64 CID #1409910 2017-05-25 09:48:53 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Check live seeking range more often The live seeking range was only checked when doing actual seeks. This was assuming that the rate would always be 1.0 (i.e. the playback would advance in realtime, and therefore fragments would always be available since the seeking window moves at the same rate). With non-1.0 rates, this no longer becomes valid, and therefore we need to check whether we are still within the live seeking range when advancing. https://bugzilla.gnome.org/show_bug.cgi?id=783075 2017-05-25 16:42:03 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't create invalid event tags could potentially be NULL 2016-12-02 17:51:57 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: retry download MAX_DOWNLOAD_RETRY_COUNT times before erroring What we want is to retry downloading the fragment on 4xx/5xx errors however returning EOS will cause waiting for a manifest update for live (which may be a really long time) or stop everything for non-live. Change that to only return EOS/ERROR once we've reached the error limit. https://bugzilla.gnome.org/show_bug.cgi?id=776609 2017-05-25 13:06:03 +0300 Sebastian Dröge * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: gl: Fix indentation 2017-05-25 13:05:23 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: #define GL_READ_FRAMEBUFFER / GL_DRAW_FRAMEBUFFER if not defined yet Just like we do elsewhere already. 2017-05-25 11:05:47 +0800 Haihua Hu * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglrenderbuffer.c: glformat: fix the usage of GST_GL_RGB565 GL_RGB565 is sized internal glformat, the corresponding glformat should be GL_RGB and type is GL_UNSIGNED_SHORT_565. Otherwise will return GL_INVALID_ENUM when creating texture. https://bugzilla.gnome.org/show_bug.cgi?id=783066 2017-05-25 10:09:04 +0800 Haihua Hu * ext/qt/qtwindow.cc: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: glframebuffer: check frame buffer status need use specific fbo target https://bugzilla.gnome.org/show_bug.cgi?id=783065 2017-05-24 11:47:47 +0300 Sebastian Dröge * ext/openmpt/gstopenmptdec.c: openmpt: Fix compilation with 0.2.7386 as in Debian The OPENMPT_API_VERSION_AT_LEAST macro does not exist. 2017-05-22 23:06:01 +0200 Olivier Crête * tests/check/elements/audiomixer.c: tests: Make audiomixer test_clip verify the resulting timestamps too 2017-05-23 00:53:57 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Process serialized queries through the queue This ensures that they really get processed in order with buffers. Just waiting for the queue to be empty is sometimes not enough as the buffers are dropped from the pad before the result is pushed to the next element, sometimes resulting in surprising re-ordering. 2017-05-23 00:53:23 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Set flow to FLUSHING on pad stop Fixes a rare race where the pad is being stopped while doing a query. 2017-05-23 00:52:27 +0200 Olivier Crête * tests/check/elements/audiointerleave.c: tests: audiointerleave: Remove drain with manual clock Now that the queries go onto the queue, you may need to pull the crank in order for them to be processed, making this test difficult. 2017-05-23 09:57:28 +0100 Tim-Philipp Müller * configure.ac: * meson.build: Require wildmidi >= 0.4 https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-05-23 09:17:08 +0100 Tim-Philipp Müller * ext/wildmidi/gstwildmididec.c: wildmidi: include stdint.h for int8_t 2017-05-23 08:42:46 +0100 Tim-Philipp Müller * win32/common/libgstbadaudio.def: win32: update .def file for new base class https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-05-22 15:52:33 -0700 Reynaldo H. Verdejo Pinochet * ext/wildmidi/gstwildmididec.c: wildmididec: explicitly cast buffer data to int8 in _decode() Fixes compiler warning introduced in commit ff32a4297: gstwildmididec.c:637:47: error: pointer targets in passing argument 2 of ‘WildMidi_GetOutput’ differ in signedness WildMidi_GetOutput (wildmidi_dec->song, (char *) (info.data), info.size); ^ wildmidi_lib.h:106:15: note: expected ‘int8_t * {aka signed char *}’ but argument is of type ‘char *’ WM_SYMBOL int WildMidi_GetOutput (midi *handle, int8_t *buffer, uint32_t size); https://bugzilla.gnome.org/show_bug.cgi?id=768576 2016-07-27 02:22:26 +0200 Carlos Rafael Giani * configure.ac: * ext/Makefile.am: * ext/openmpt/Makefile.am: * ext/openmpt/gstopenmptdec.c: * ext/openmpt/gstopenmptdec.h: * ext/openmpt/plugin.c: openmpt: Add openmptdec element https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-03-08 22:17:41 +0100 Carlos Rafael Giani * docs/plugins/Makefile.am: * ext/wildmidi/Makefile.am: * ext/wildmidi/gstwildmidi.c: * ext/wildmidi/gstwildmidi.h: * ext/wildmidi/gstwildmididec.c: * ext/wildmidi/gstwildmididec.h: wildmidi: Port to 1.0 on top of the nonstreamaudiodecoder base class https://bugzilla.gnome.org/show_bug.cgi?id=768576 2016-07-27 01:41:20 +0200 Carlos Rafael Giani * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstnonstreamaudiodecoder.c: * gst-libs/gst/audio/gstnonstreamaudiodecoder.h: * gst-libs/gst/audio/meson.build: audio: Add nonstreamaudiodecoder base class https://bugzilla.gnome.org/show_bug.cgi?id=768576 2017-05-22 13:46:36 +0200 Anders Jonsson * ext/gl/gstgltestsrc.c: gltestsrc: Fix typo (occured->occurred) https://bugzilla.gnome.org/show_bug.cgi?id=782947 2017-05-21 18:03:02 +0100 Tim-Philipp Müller * Makefile.am: * config.h.meson: * meson.build: meson: don't need config.h.meson any longer 2017-05-20 19:00:23 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: audioaggregate: Don't hold object locks across calls to aggregate_one https://bugzilla.gnome.org/show_bug.cgi?id=782878 2016-11-18 14:44:16 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Request pad templates which are not request pad https://bugzilla.gnome.org/show_bug.cgi?id=782920 2016-11-18 14:41:54 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Don't restrict sink pad names Sink pads could have other names than sink_%u https://bugzilla.gnome.org/show_bug.cgi?id=782920 2017-05-21 18:31:59 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: Remove unused negotiated member This is now all handled in GstAggregator, so this code is not called anymore. 2017-05-21 15:44:02 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Declare that it supports the video meta on input https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 15:30:10 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: gl*mixer: Use propose_allocation from the GstAggregator base class https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 15:19:17 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Implement propose allocation https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 14:34:13 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Check for the result of caps events https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-21 14:28:00 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Caps event always goes to the aggregate thread So no need to check it here. https://bugzilla.gnome.org/show_bug.cgi?id=782918 2017-05-09 23:59:04 +0200 Carlos Rafael Giani * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.c: gl/viv-fb: Fix user-choice string comparisons https://bugzilla.gnome.org/show_bug.cgi?id=782921 2017-05-21 15:26:12 +0200 Carlos Rafael Giani * ext/qt/gstqsgtexture.cc: * ext/qt/gstqsgtexture.h: qmlglsink: Add dummy texture that is shown as placeholder for NULL buffers https://bugzilla.gnome.org/show_bug.cgi?id=782917 2017-05-21 15:15:48 +0100 Tim-Philipp Müller * win32/common/libgstbadbase.def: win32: update .def file for new exports 2017-05-20 18:10:29 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Create normal video pool as a fallback https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:59:19 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: Use downstream allocator and params if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:35:43 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: glbasemixer: Remove own decide_allocation, use GstAggregator's https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:30:06 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: glbasemixer: Use aggregator for allocation handling https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 17:25:16 +0200 Olivier Crête * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Get the buffer from the pool if available https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-20 16:58:54 +0200 Olivier Crête * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Add downstream allocation query https://bugzilla.gnome.org/show_bug.cgi?id=746529 2017-05-21 12:41:53 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Return to parent on reconfigure The caps negotiation is now in the parent, so need to return there if a reconfiguration is needed, otherwise it will loops forever. 2017-05-21 11:44:37 +0100 Tim-Philipp Müller * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl: x11: fix compiler warning 2017-05-21 12:03:01 +0200 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glcontext: add public swap_buffers function That simply calls the implementation 2017-05-21 10:57:18 +0100 Tim-Philipp Müller * tests/examples/gl/generic/cube/cube.vcproj: * tests/examples/gl/generic/cubeyuv/cubeyuv.vcproj: * tests/examples/gl/generic/doublecube/doublecube.vcproj: * tests/examples/gl/generic/recordgraphic/recordgraphic.vcproj: * tests/examples/gl/gtk/3dvideo/3dvideo.vcproj: * tests/examples/gl/gtk/filternovideooverlay/filternovideooverlay.vcproj: * tests/examples/gl/gtk/filtervideooverlay/filtervideooverlay.vcproj: * tests/examples/gl/gtk/fxtest/fxtest.vcproj: * tests/examples/gl/gtk/pixbufdrop/pixbufdrop.vcproj: * tests/examples/gl/gtk/switchvideooverlay/switchvideooverlay.vcproj: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.vcproj: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.vcproj: * tests/examples/gl/qt/videooverlay/videooverlay.vcproj: * tests/examples/gl/sdl/sdlshare.vcproj: examples: gl: remove ancient bitrotten .vcproj files 2017-05-20 16:22:10 +0000 Graham Leggett * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix debug message printf format Match gsize to G_GSIZE_FORMAT in the debug message. https://bugzilla.gnome.org/show_bug.cgi?id=782873 2017-05-20 17:04:52 +0100 Tim-Philipp Müller * win32/common/libgstbadaudio.def: win32: update .def file for API removal 2017-05-20 17:47:04 +0200 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: audiointerleave: Take object lock while modifying channel count 2017-05-20 15:56:16 +0200 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/base/gstaggregator.h: aggregator: Remove unused GST_FLOW_NOT_HANDLED 2017-05-20 14:24:57 +0200 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.c: * gst/compositor/compositor.c: * tests/check/elements/audiointerleave.c: aggregator: add simple support for caps handling Modelled off the videoaggregator caps handling as that seems the most mature aggregtor-using implementation that has caps handling there is. https://bugzilla.gnome.org/show_bug.cgi?id=776931 2017-05-20 13:10:53 +0200 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Reset upstream latency on first buffer In the case an aggregator is created and pads are requested but only linked later, we end up never updating the upstream latency. This was because latency queries on pads that are not linked succeed, so we never did a new query once a live source has been linked, so the thread was never started. https://bugzilla.gnome.org/show_bug.cgi?id=757548 2017-04-04 11:25:43 +0300 George Kiagiadakis * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst/compositor/compositor.c: videoaggregator: delay using new caps from a sink pad until the next buffer in the queue is taken When caps changes while streaming, the new caps was getting processed immediately in videoaggregator, but the next buffer in the queue that corresponds to this new caps was not necessarily being used immediately, which resulted sometimes in using an old buffer with new caps. Of course there used to be a separate buffer_vinfo for mapping the buffer with its own caps, but in compositor the GstVideoConverter was still using wrong info and resulted in invalid reads and corrupt output. This approach here is more safe. We delay using the new caps until we actually select the next buffer in the queue for use. This way we also eliminate the need for buffer_vinfo, since the pad->info is always in sync with the format of the selected buffer. https://bugzilla.gnome.org/show_bug.cgi?id=780682 2016-05-14 15:52:37 +0200 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Always handle sync'ed events on output thread Having all synchronized events always be handled on the output thread should make synchronization easier. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 16:39:17 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Delay clipping to output thread This is required because the synchronized events like caps or segments may only be processed on the output thread. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-07 16:13:57 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Make pad eos as soon as all buffers are processed, dont way for events https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-07 11:47:40 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Only count buffers when declaring queue full https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 17:28:11 -0400 Olivier Crête * tests/check/elements/compositor.c: tests: Test caps using query Sending an event can accepted event if the caps were rejected because the event could be queued and processed later. Also send a drain query in the caps test to make sure that the event has been processed. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-07-06 16:41:44 -0400 Olivier Crête * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Simplify clip function The return value was ignored anyway https://bugzilla.gnome.org/show_bug.cgi?id=781673 2016-05-15 16:04:58 +0300 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Only declare first buffer on actual buffer The function needs to be unlocked if any data is received, but only end the first buffer processing on an actual buffer, synchronized events don't matter on the first buffer processing. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:20:07 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Set initial position on first buffer Set the initial position on the first buffer, otherwise the queue will grow without limits before the output thread is started. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:06:29 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Reset the pad's first buffer flag with the rest There is not reason to have separate code to reset this one. https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:05:55 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Reset pad on init Factor out the pad reset code from the flushing and use it on init as well https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-05-09 20:13:58 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Fix indentation https://bugzilla.gnome.org/show_bug.cgi?id=781673 2017-02-23 15:42:08 -0800 fvanzile * gst-libs/gst/gl/gstglcontext.c: glcontext: keep a ref to the active thread With the macOS/iOS implementations, the active thread can change multiple times over the life of a pipeline which would expose a race in the thread tracking. Fix by taking a ref on the active thread while the context is active. https://bugzilla.gnome.org/show_bug.cgi?id=779202 2017-05-20 15:04:45 +0100 Tim-Philipp Müller * meson.build: * meson_options.txt: meson: add options to set package name and origin https://bugzilla.gnome.org/show_bug.cgi?id=782172 2017-05-20 12:34:27 +0200 Josep Torra * tests/examples/avsamplesink/main.m: * tests/examples/gl/cocoa/cocoa-videooverlay.m: examples: fix macOS 9.12 deprecation warnings Add #defines to allow older versions of macOS to use the new constant names. 2017-05-20 12:19:08 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: cocoa: fix a recently introduced typo Fixes gstgldisplay_cocoa.m:175:26: error: use of undeclared identifier 'singletone'. 2017-05-20 12:16:50 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: cocoa: fix macOS 10.12 deprecation warnings Add #defines to allow older versions of macOS to use the new constant names. 2017-04-17 14:43:49 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Use correct (sub) fragment start when clipping chunk size If we didn't download anything yet, we shouldn't use fragment.start but the start position of the current sidx entry. 2017-04-17 14:25:10 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Make sure to pass the next buffer after a seek with DISCONT flag When we manually seek for skipping ahead in keyunit-only trickmode, we have to enforce that ourselves as adaptivedemux does not know about the seeks. 2017-04-15 11:55:34 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Ensure that we never ever download over the current SIDX entry Even if downloading more than needed to try to get the moof and first keyframe both together. 2017-04-13 22:49:29 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Take SIDX entry timestamp/duration into account for keyunit-only mode And not the whole segment's timestamp/duration 2017-04-13 17:12:26 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Reset parsing state correctly in various places 2017-04-13 14:51:07 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Reset previous target_time when seeking 2017-04-03 16:47:58 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Smooth out skip distances in keyframe-only trick modes This ensures smoother playback. It looks weird if we first do a big jump, then play a couple of consecutive frames, just to again skip ahead quite a bit because we ran late again. 2017-04-03 15:51:43 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Take configure max bitrate/framerate into account for keyframe skipping And by default only produce up to 10 fps. 2017-04-03 15:48:13 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Try harder to not run into a loop over the same fragment over and over While still making sure to not jump ahead one fragment further than needed. 2017-03-15 17:47:53 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Add some debug output to the target time selection 2017-03-28 14:12:12 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Use the current clock running time in addition to the QoS earliest time 2017-03-27 17:52:36 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Download keyframes from the current position if we're far enough ahead Far enough here means more than 500ms or 4 times the average keyframe download time. There is no need to jump ahead by one average keyframe download time in this case. This makes playback smooth if the network is fast enough. 2017-03-22 12:05:20 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Fix sync sample selection based on target time in reverse playback mode 2017-03-22 11:21:47 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Snap-seek for skipping ahead and use actual keyframe distance in the current fragment if applicable 2017-03-15 16:47:59 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Don't adjust for fragment duration twice when seeking ahead in KEYUNITS mode 2017-03-15 16:46:55 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Add current fragment duration in reverse playback mode to the position We play from the end of the fragment to the beginning, not from the beginning backwards. 2017-03-15 16:45:33 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Never take more than the current fragment duration for estimations inside the fragment Taking the average might give us from results. 2017-03-06 14:27:20 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Don't increase current position if we just downloaded the moof in KEYUNIT mode 2017-01-12 15:54:37 +0100 Edward Hervey * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Improve key-unit trick mode downloading When dealing with key-unit trick mode downloads, the goal is to provide the best "Quality of Experience". This is achieved by: 1) maximizing the number of frames displayed per second 2) avoiding "stalling" as much as possible (i.e. not downloading and decoding frames fast enough) This implementation achives this by: 1) Knowing very precisely the current keyframe being download (i.e more accurate than at the fragment level which might contain more than one keyfram). This is the new "actual_position" variable introduced by this commit 2) Knowing the position of downstream (provided by QoS and stored in the adaptivedemuxstream qos_earliest_time variable) 3) Knowing how long it takes to request and fully download a keyframe (the average_download_time variable) Taking those 3 variables into account, whenever a keyframe has been pushed downstream we calculate a "target time" (target_time variable) which is the ideal next keyframe time to request so that: 1) It will be requested/downloaded/demuxed/decoded in time to be displayed without being too late 2) It will not be too far ahead that it would cause too few frames per second to be displayed. How far ahead we will request is inversily proportional to how close the actual position (actual_position) is from the downstream position (qos_earliest_time). The more is buffered between the source and the sink, the "closer" the target time will be, and therefore the more frames per seconds will be displayed (up to the limit of keyframes_per_second * absolute_rate). 2017-01-11 17:11:27 +0100 Edward Hervey * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Store average download time This will be used to bound the download rate when working in keyframe-only trick mode 2017-01-11 17:08:36 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add various comments to the code 2016-11-15 08:13:27 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Store QoS time Allows subclasses to know where downstream is and make decisions based upon that 2016-09-01 17:47:11 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Collect keyunit distance and size statistics 2016-11-07 12:22:09 +0100 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Disable bitrate switching in key-unit trick mode This creates too much havoc for now 2016-10-31 10:08:35 +0100 Edward Hervey * ext/dash/gstdashdemux.c: dashdemux: Use new adaptivedemux trickmode macro Reduces the lines of code, and makes it a bit more readable 2016-10-31 10:08:04 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add a macro to know if we are in trickmode-keyunit Reduces the amount of lines of code in subclasses 2017-05-18 15:57:22 +0200 Jan Schmidt * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264src: Apply timestamps to outgoing aux buffers When extracting an aux buffer from an MJPG carrier, at *least* put the original timestamp on it, even if we fail to apply any other timestamp (which we always do at the moment, because the timestamp calculating code was never finished). Apply a DTS using the camera supplied delay value as well, assuming that there's no re-ordering going on (there isn't in the C920, which is really the only extant camera doing this stuff) and a warning if that turns out not to be true. 2017-05-18 15:23:14 +0300 Simon Himmelbauer * ext/qt/gstqtglutility.cc: qt: Use GST_GL_HAVE_PLATFORM_CGL instead of GST_GL_HAVE_PLATFORM_COCOA The latter is not used/available anymore since years. Also fix a typo in the include path for the Cocoa GL display header. 2017-05-07 19:50:00 +0000 Dmitry Zhadinets * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: motioncells: delay motionmaskcoords until caps arrive motionmaskcoords is not applied on start because the information about resolution isn't available until caps arrive. https://bugzilla.gnome.org/show_bug.cgi?id=768666 2017-05-18 14:34:04 +0300 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Unref downstream caps after usage https://bugzilla.gnome.org/show_bug.cgi?id=782771 2017-05-18 10:58:20 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264plugin.c: * ext/resindvd/plugin.c: * ext/srtp/gstsrtp.c: * ext/teletextdec/gstteletextdec.c: * ext/ttml/gstttmlplugin.c: * ext/webrtcdsp/gstwebrtcdsp.cpp: * gst/fieldanalysis/gstfieldanalysis.c: * gst/gaudieffects/gstplugin.c: * gst/pcapparse/plugin.c: * sys/acmenc/acmenc.c: * sys/applemedia/plugin.m: * sys/msdk/gstmsdk.c: * sys/vdpau/gstvdpau.c: * sys/winks/gstksvideosrc.c: Fix up package name and origin in some plugins 2017-05-18 10:53:48 +0100 Tim-Philipp Müller * gst/stereo/gststereo.c: stereo: fix typo in plugin description 2017-05-18 11:42:17 +0300 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Fix calculation of codec_data buffer size 2017-05-17 16:26:38 +0800 Haihua Hu * gst-libs/gst/gl/gstglformat.c: glformat: Add missing GST_GL_RGB565 in some switch statement https://bugzilla.gnome.org/show_bug.cgi?id=782736 2017-05-17 17:38:01 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/Makefile.am: cocoa: Install gstgldisplay_cocoa.h It's needed by e.g. qmlglsink. 2017-05-15 20:31:31 +0300 Sebastian Dröge * ext/directfb/dfbvideosink.c: * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbufferpool.c: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkmemory.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkwindow.c: * ext/vulkan/wayland/vkdisplay_wayland.c: * ext/vulkan/wayland/vkwindow_wayland.c: * ext/vulkan/xcb/vkdisplay_xcb.c: * ext/vulkan/xcb/vkwindow_xcb.c: * ext/wayland/wlshmallocator.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/uridownloader/gsturidownloader.c: * sys/applemedia/corevideomemory.c: * sys/applemedia/iosglmemory.c: * sys/applemedia/iosurfacememory.c: * sys/d3dvideosink/d3dhelpers.c: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsbufferpool.c: * sys/shm/gstshmsink.c: * sys/vdpau/gstvdpvideobufferpool.c: * sys/vdpau/gstvdpvideomemory.c: gst: Clear floating flag in constructor of all GstObject subclasses that are not owned by any parent https://bugzilla.gnome.org/show_bug.cgi?id=743062 2017-05-15 14:23:44 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Sink the clock reference in the constructor This is now needed as GstClock does not do that internally anymore, because that broke bindings. https://bugzilla.gnome.org/show_bug.cgi?id=743062 2017-05-17 10:58:05 +0800 Haihua Hu * configure.ac: * ext/qt/gstqtglutility.cc: qml: Add EGL platform support for x11 backend Add support for EGL platform when x11 is available. This can work e.g. on imx6 platform. https://bugzilla.gnome.org/show_bug.cgi?id=782718 2017-05-16 14:05:52 -0400 Nicolas Dufresne * config.h.meson: * configure.ac: * ext/assrender/Makefile.am: * ext/bs2b/Makefile.am: * ext/bz2/Makefile.am: * ext/chromaprint/Makefile.am: * ext/curl/Makefile.am: * ext/daala/Makefile.am: * ext/dash/Makefile.am: * ext/dc1394/Makefile.am: * ext/directfb/Makefile.am: * ext/dtls/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/fdkaac/Makefile.am: * ext/flite/Makefile.am: * ext/fluidsynth/Makefile.am: * ext/gl/Makefile.am: * ext/gme/Makefile.am: * ext/gsm/Makefile.am: * ext/gtk/Makefile.am: * ext/hls/Makefile.am: * ext/iqa/Makefile.am: * ext/kate/Makefile.am: * ext/ladspa/Makefile.am: * ext/libde265/Makefile.am: * ext/libmms/Makefile.am: * ext/lv2/Makefile.am: * ext/modplug/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/openal/Makefile.am: * ext/opencv/Makefile.am: * ext/openexr/Makefile.am: * ext/openh264/Makefile.am: * ext/openjpeg/Makefile.am: * ext/openni2/Makefile.am: * ext/opus/Makefile.am: * ext/qt/Makefile.am: * ext/resindvd/Makefile.am: * ext/rsvg/Makefile.am: * ext/rtmp/Makefile.am: * ext/sbc/Makefile.am: * ext/schroedinger/Makefile.am: * ext/smoothstreaming/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spandsp/Makefile.am: * ext/spc/Makefile.am: * ext/srtp/Makefile.am: * ext/teletextdec/Makefile.am: * ext/ttml/Makefile.am: * ext/voaacenc/Makefile.am: * ext/voamrwbenc/Makefile.am: * ext/vulkan/Makefile.am: * ext/wayland/Makefile.am: * ext/webp/Makefile.am: * ext/wildmidi/Makefile.am: * ext/x265/Makefile.am: * ext/zbar/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/eagl/Makefile.am: * gst/accurip/Makefile.am: * gst/adpcmdec/Makefile.am: * gst/adpcmenc/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffersplit/Makefile.am: * gst/audiofxbad/Makefile.am: * gst/audiomixer/Makefile.am: * gst/audiomixmatrix/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/autoconvert/Makefile.am: * gst/bayer/Makefile.am: * gst/camerabin2/Makefile.am: * gst/coloreffects/Makefile.am: * gst/compositor/Makefile.am: * gst/debugutils/Makefile.am: * gst/dvbsuboverlay/Makefile.am: * gst/dvdspu/Makefile.am: * gst/faceoverlay/Makefile.am: * gst/festival/Makefile.am: * gst/fieldanalysis/Makefile.am: * gst/freeverb/Makefile.am: * gst/frei0r/Makefile.am: * gst/gaudieffects/Makefile.am: * gst/gdp/Makefile.am: * gst/geometrictransform/Makefile.am: * gst/id3tag/Makefile.am: * gst/inter/Makefile.am: * gst/interlace/Makefile.am: * gst/ivfparse/Makefile.am: * gst/ivtc/Makefile.am: * gst/jp2kdecimator/Makefile.am: * gst/jpegformat/Makefile.am: * gst/librfb/Makefile.am: * gst/midi/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegpsmux/Makefile.am: * gst/mpegtsdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mxf/Makefile.am: * gst/netsim/Makefile.am: * gst/onvif/Makefile.am: * gst/pcapparse/Makefile.am: * gst/pnm/Makefile.am: * gst/rawparse/Makefile.am: * gst/removesilence/Makefile.am: * gst/sdp/Makefile.am: * gst/segmentclip/Makefile.am: * gst/siren/Makefile.am: * gst/smooth/Makefile.am: * gst/speed/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/timecode/Makefile.am: * gst/videofilters/Makefile.am: * gst/videoframe_audiolevel/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videosignal/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * gst/yadif/Makefile.am: * sys/acmenc/Makefile.am: * sys/acmmp3dec/Makefile.am: * sys/androidmedia/Makefile.am: * sys/applemedia/Makefile.am: * sys/bluez/Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/decklink/Makefile.am: * sys/directsound/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/fbdev/Makefile.am: * sys/kms/Makefile.am: * sys/msdk/Makefile.am: * sys/nvenc/Makefile.am: * sys/opensles/Makefile.am: * sys/shm/Makefile.am: * sys/tinyalsa/Makefile.am: * sys/uvch264/Makefile.am: * sys/vcd/Makefile.am: * sys/vdpau/Makefile.am: * sys/wasapi/Makefile.am: * sys/winks/Makefile.am: * sys/winscreencap/Makefile.am: * tools/gst-project-maker: Remove plugin specific static build option Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient. 2017-05-16 23:20:44 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Initialize sidx_position to GST_CLOCK_TIME_NONE If a manifest has non-zero presentation time offset (i.e., earliest presentation time specified by sidx box is not zero), the initial sidx position shouldn't be zero. Since we cannot define exact sidx position until parsing sidx box, set the value to unknown. https://bugzilla.gnome.org/show_bug.cgi?id=782693 2017-05-15 18:10:11 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle stop_type:SET, stop:NONE Seek values of type GST_SEEK_TYPE_SET with values of GST_CLOCK_TIME_NONE are perfectly valid (we essentially don't modify the existing position) 2017-05-15 16:37:14 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Copy min(gstreamer_stride, decklink_stride) per line Instead of just bpp * width, which might be more than we can copy. 2017-05-15 12:00:50 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglshader.c: glshader: Make reference counting of attach() consistent https://bugzilla.gnome.org/show_bug.cgi?id=747990 https://bugzilla.gnome.org/show_bug.cgi?id=702960 2017-05-12 10:00:56 +0100 Vincent Penquerc'h * gst/videoparsers/gsth265parse.c: h265parse: fix caps leak in renegotiation 2017-05-12 10:01:10 +0100 Vincent Penquerc'h * gst/videoparsers/gsth264parse.c: h264parse: fix caps leak in renegotiation 2017-05-09 10:32:05 +0100 Vincent Penquerc'h * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: fix negotiation with j2c and jpc both allowed upstream If upstream supports both, but downstream supports only jpc, j2c would have been selected as the first in the caps. https://bugzilla.gnome.org/show_bug.cgi?id=782221 2017-04-19 13:47:57 +0100 Sebastian Dröge * ext/hls/Makefile.am: * ext/hls/gsthlsplugin.c: * ext/hls/gsthlssink2.c: * ext/hls/gsthlssink2.h: * ext/hls/meson.build: hlssink2: New HLS sink element based on splitmuxsink This embeds the muxer inside the sink and accepts elementary streams while the old HLS sink required the muxer outside. Apart from that the interface is the same as before. Currently only mpegtsmux is supported, but support for other muxers is just a matter of adding a property. The advantage of the new sink is that it reduces complexity a lot and properly handles pre-encoded streams with appropriately spaced keyframes. https://bugzilla.gnome.org/show_bug.cgi?id=781496 2017-02-25 12:37:46 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideo/audiosrc: Add GstReferenceTimestampMeta with the stream time to each buffer This is basically a frame counter provided by the driver and it's advancing at the speed of the HDMI/SDI input. Having this available on each buffer allows to know what constant-framerate-based timestamp each frame is corresponding to and can be used e.g. to write out files accordingly without having the local pipeline clock timestamps used. https://bugzilla.gnome.org/show_bug.cgi?id=779213 2017-05-12 11:35:39 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Consistently pass stream_time and stream_duration to audio/video src It's the same value now, pass it consistently. 2017-05-09 16:06:10 +0530 Nirbheek Chauhan * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Use a GstClockID to wait instead of Sleep() The main advantage is that our sleeps can be interrupted in case of an src_reset(). Earlier, we would need to wait for a read to complete before we could do a reset, which could take a long time. https://bugzilla.gnome.org/show_bug.cgi?id=781249 2017-05-11 18:39:46 +0200 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Allow changing the output-buffer-duration at any time Previously this was only allowed before the CAPS event arrived. 2017-05-09 15:13:10 -0400 Nicolas Dufresne * ext/opencv/meson.build: opencv/meson: Allow 3.2.0 This was already added and tested in autoconf. 2017-05-11 20:05:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: build/gl/meson: check for GLES3/gl3ext.h existence 791e7522ebcb75beb31fcace271dee1342d3505d for meson https://bugzilla.gnome.org/show_bug.cgi?id=781885 2017-05-11 10:29:58 +0200 Jens Georg * configure.ac: * gst-libs/gst/gl/gstglapi.h: build: Check for GLES3/gl3ext.h existence Some OpenGL drivers do not ship this but use GLES2/gl2ext.h instead. This is also in line with Khronos's recommendations https://bugzilla.gnome.org/show_bug.cgi?id=781885 2017-05-10 22:29:10 -0700 Scott D Phillips * sys/msdk/meson.build: msdk: Declare libmfx.a as a C++ static library This lets meson know that the overall plugin needs built with C++ linking. https://bugzilla.gnome.org/show_bug.cgi?id=781561 2017-05-10 15:59:42 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Always use the video stream time for audio too The audio packet times can be completely unrelated to the video stream time, depending on the card. While this looks like a bug in the driver, just always using the video stream time (which is correct) works as a workaround for now. 2017-05-09 15:06:52 -0400 Nicolas Dufresne * ext/opencv/meson.build: opencv/meson: Ensure variable opencv_found is set If the required version is not satisfied, we need to make sure this variable is set, otherwise build will fail. 2017-05-09 13:16:50 -0400 Nicolas Dufresne * ext/opencv/meson.build: * ext/webrtcdsp/meson.build: * meson.build: Bump and update for meson 0.40.1 This patch bumps the required meson to 0.40.1 as gstreamer core just did, and cleanup some code to use a feature from 0.37 that allow specifying version range when checking dependency. https://bugzilla.gnome.org/show_bug.cgi?id=780654 2017-05-05 11:05:40 +0100 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: do not drop preskip and gain from OpusHead header https://bugzilla.gnome.org/show_bug.cgi?id=753275 2017-05-09 09:47:10 -0400 Nicolas Dufresne * ext/qt/gstplugin.cc: qmlgl: Make the plugin name match the pugin file name 2017-05-09 09:43:01 -0400 Nicolas Dufresne * ext/gme/gstgme.c: gme: Make the plugin name match the plugin library name 2017-05-09 09:41:17 -0400 Nicolas Dufresne * ext/neon/gstneonhttpsrc.c: neon: Make the plugin name match the plugin library 2017-05-09 11:25:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglmemory.c: glmemory: Only use glDrawBuffer if available Otherwise fall back to glDrawBuffers. Also check if glReadBuffer exists before using it. glDrawBuffer does not exist for GLES, only glDrawBuffers does. https://bugzilla.gnome.org/show_bug.cgi?id=782376 2017-05-08 15:34:50 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle more live seeking use-cases This commit fixes the following assumptions with live seeking: 1) start was always valid and of type GST_SEEK_TYPE_SET 2) direction was always forward 3) stop should be offsetted when handling non-accurate seeks before the range start position. In order to handle more live seeking use-cases (including reverse playback), only do non-accurate start/stop value clamping for GST_SEEK_TYPE_SET values. Also add a bit more debugging lines for issues https://bugzilla.gnome.org/show_bug.cgi?id=782330 2017-05-05 18:25:43 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Implement GST_SEEK_TYPE_END usage for live When dealing with live streams, we can't rely on GstSegment calculation since it uses the segment duration to calculate the absolute values. But since we are dealing with live *and* we know the ranges, we can compute the absolute seeking values using the range stop (i.e. "now") as the END position. Allows seeking back to "live" by using start_type:GST_SEEK_TYPE_END and start:0 https://bugzilla.gnome.org/show_bug.cgi?id=782228 2017-05-08 11:01:39 -0700 Scott D Phillips * meson.build: meson: Ignore msvc warnings in C++ as well We were only ignoring the listed msvc warnings for C language files and not C++. This was working by the coincidence that we did not have any instances of these warnings in C++ files. Lately the build of decklink has been fixed on windows, and it has an instance of one of these warnings in a C++ file. https://bugzilla.gnome.org/show_bug.cgi?id=782345 2017-05-03 22:50:27 +0530 Nirbheek Chauhan * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Use latency-time and buffer-time settings Earlier, the plugin was ignoring those settings and blindly setting buffer-time to 2 seconds and latency-time to 200ms, which forced all pipelines to have a minimum latency of 200ms + sink latency. The values of segsize and segtotal were also not derived correctly. Now we obey these values, and you can get close to the previous behaviour by setting buffer-time and latency-time manually. Note that they are set in microseconds. As a consequence, when we haven't received enough data from the device, we now sleep for a time proportional to the data remaining. However, Directsound is a deprecated API so it maintains its own software ringbuffer which updates at arbitrary intervals. Hence we might have to wait a full segsize to get the last 10% of data. To avoid tight loops, we clamp our sleep floor at 10ms. In my testing, this keeps the wakeups not-too-high (proportional to the latency-time set on the source). Further improvements should be made by fixing the WASAPI audio source plugin instead of this. Directsound is deprecated and as the comments explain, it is impossible to get low latency, decent quality, or good performance from it. Based on a patch by Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=781249 2017-05-07 11:47:40 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: fix whole example launch line actually 2017-05-07 11:41:06 +0100 Tim-Philipp Müller * ext/gl/gstglvideomixer.c: glvideomixer: remove extraneous \ from example launch line in docs 2017-05-05 18:22:18 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Allow live seeking range to go back to "now" The allowed live seek ranges returned by subclasses are "inclusive", that is to say that the "range_stop" value they return is the highest acceptable position one can seek to (i.e. "now"). Allow seeking to exactly that value 2017-05-05 18:52:24 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: Revert "decklink: Fix debug logging warnings on Windows" This reverts commit 845832263ba6b9e135b23e9a29c9d109cb2ee9c4. The commit broke cross-mingw CI: https://ci.gstreamer.net/job/GStreamer-master/8659/console It seems that cross-mingw on Autotools and native-mingw on Meson disagree about the size of HRESULT. Revert for now till I can investigate the Meson side of things some more. 2017-05-05 04:30:59 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/meson.build: decklink: Fix linking on MinGW MinGW does not provide comsupp.lib, so there's no implementation of _com_util::ConvertBSTRToString. Use a fallback implementation that uses wcstombs() instead. On MinGW we also truncate the name to 100 chars which should be fine. 2017-05-05 04:02:29 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.h: decklink: Fix building on Windows BSTR is already a pointer to a string 2017-05-05 03:59:45 +0530 Nirbheek Chauhan * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix debug logging warnings on Windows HRESULT is unsigned long int, not unsigned int 2017-05-05 04:01:38 +0530 Nirbheek Chauhan * sys/decklink/meson.build: meson: Fix decklink building on Windows Needs comsuppw, and does not need libdl or pthread. 2017-05-04 18:59:14 +0300 Sebastian Dröge * configure.ac: * meson.build: Back to development === release 1.12.0 === 2017-05-04 15:39:05 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gtk.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * meson.build: Release 1.12.0 2017-05-04 15:10:52 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-05-04 13:47:37 +0300 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2017-05-03 21:13:38 +0800 Ting-Wei Lan * ext/hls/meson.build: meson: hls: libm is required because m3u8.c uses math.h https://bugzilla.gnome.org/show_bug.cgi?id=782119 2017-05-03 13:21:42 +0200 Josep Torra * configure.ac: * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.h: * sys/applemedia/qtkitvideosrc.m: qtkit: drop the qtkitvideosrc element The QTKit framework had been deprecated for long in favour of AVFundation framework and we already have avfvideosrc that provides the same functionality. https://bugzilla.gnome.org/show_bug.cgi?id=782078 2017-04-07 17:13:52 +0300 George Kiagiadakis * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: fix doc string of echo-cancel property If the echo probe element is not found, initialization actually fails instead of silently working with echo-cancel disabled. https://bugzilla.gnome.org/show_bug.cgi?id=780976 2017-05-02 13:24:30 +0800 Haihua Hu * gst-libs/gst/gl/gstglupload.c: glupload: passthrough composition caps features in directviv upload https://bugzilla.gnome.org/show_bug.cgi?id=782046 2017-04-27 21:21:44 +0100 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/Makefile.am: * tests/check/Makefile.am: tests: fix link problem on centos7 And put LIBS before -lgstfoo in adaptivedemux Makefile.am === release 1.11.91 === 2017-04-27 17:30:38 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gtk.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-ttmlsubs.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * meson.build: Release 1.11.91 2017-04-27 16:03:28 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/fur.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-04-27 15:28:44 +0300 Sebastian Dröge * po/LINGUAS: * po/fur.po: * po/ky.po: * po/sv.po: po: Update translations 2017-04-26 17:46:10 +0800 shakin chou * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: amcvideodec/enc: Correctly check for no PTS on input buffers MediaCodec gives us a presentation timestamp of 0 if it does not know anything, but GStreamer gives us GST_CLOCK_TIME_NONE. Don't mix up these two. https://bugzilla.gnome.org/show_bug.cgi?id=780190 2017-04-25 15:15:13 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Consolidate adjacent co-styled inline elements A common subtitling use case is live-generated subtitles, in which each new word is contained in its own span, and the spans are displayed sequentially, with the effect that lines of displayed subtitles are built up word-by-word. This can, however, cause problems when the number of words in a block is greater than the number of allowed GstMemorys in a GstBuffer. Since in this use case each span will have the same styling as adjacent spans, we can join adjacent spans (and other inline elements, such as breaks) into a single element containing the concatenated text of each, thus avoiding the limit of GstMemorys in a GstBuffer and also reducing the amount of styling/layout metadata that is attached to each buffer. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 15:33:38 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Don't add GstMemorys to a GstBuffer that is full The parser stores the text from each inline element of a scene in its own GstMemory, which is inserted in the GstBuffer containing the scene data. However, GstBuffers can contain only a limited number of GstMemorys. Therefore, don't add more than the maximum number of GstMemorys to each buffer, and warn if this is attempted. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 15:10:22 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Store newline as text of br element When parsing
elements, store an actual newline in the text field of the created TtmlElement. They then don't need to be treated as a separate case from anon-span elements when being processed. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 10:17:49 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Replace repeated warning code with a function. Encapsulates in a function the code that warns of an illegally positioned element, rather than repeating the same code multiple times. Also frees a string allocated by ttml_get_element_type_string, which was previously being leaked. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-24 11:34:41 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Remove redundant text_index field of TtmlElement https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 10:04:50 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Don't leak TtmlElements when deleting GNodes/trees. https://bugzilla.gnome.org/show_bug.cgi?id=781725 2017-04-25 13:22:33 +0300 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: mssdemux: Fix compiler warning ../subprojects/gst-plugins-bad/ext/smoothstreaming/gstmssdemux.c: In function ‘gst_mss_demux_requires_periodical_playlist_update’: ../subprojects/gst-plugins-bad/ext/smoothstreaming/gstmssdemux.c:729:16: error: unused variable ‘mssdemux’ [-Werror=unused-variable] GstMssDemux *mssdemux = GST_MSS_DEMUX_CAST (demux); ^~~~~~~~ cc1: all warnings being treated as errors 2017-04-07 16:33:21 +1000 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: separate manifest update task from download tasks Rationale is to allow the manifest update task to continue running while seeks are occurring. Otherwise, if the user reliably performs a seek before the manifest is updated, then as the manifest task is reset on seeks (and thus the time to wait between manifest updates), the manifest would never be updated. This fix makes the manifest update task free-running and continously update even during seeks. 2017-04-07 14:42:24 +1000 Matthew Waters * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: mss: always periodically update the manifest taking the new fragments Without this, for streams where the content is stored indefinitely and can be seeked on, the duration would never increase when in paused or, until we reached near the end of the currently advertised stream (where the internal fragment parser would see descriptions of new fragments). 2017-04-24 20:28:06 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 60aeef6 to 48a5d85 2017-04-21 21:29:05 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Add msm to the list of drivers This prevent having to set the driver-name explicitly when running on Qualcomm/MSM boards. 2017-04-20 14:43:45 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Convert tabs to spaces in input The TTML spec has an issue in which tab (U+0009) characters that are first in a sequence of whitespace characters are not suppressed at the start and end of line areas. This issue was reported in [1] and the editor of the TTML specs confirmed that this was not the intention behind the spec. The editor has created an issue to fix this in both the TTML1 and TTML2 specs [2], giving a proposal of what the spec should say. This patch updates ttmlparse to implement the intended behaviour as proposed, in which tabs in the input are converted to spaces before processing. [1] https://github.com/w3c/imsc/issues/224 [2] https://github.com/w3c/ttml1/issues/235 https://bugzilla.gnome.org/show_bug.cgi?id=781539 2017-04-20 10:24:30 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Fix potential resource leak identified by coverity. If multiple styles/regions with the same ID are present in the input (which is not allowed in TTML), use the last and give a warning. Fixes CID #1405134. 2017-04-20 10:22:49 +0100 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: Fix potential resource leak identified by coverity Fixes CID #1405133. 2017-04-19 19:08:41 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: Revert "decklinkvideo/audiosrc: Add GstReferenceTimestampMeta with the stream time to each buffer" This reverts commit d5684d5b145a3eb0e23476f18669d1ffa552c5de. This shouldn't have been merged before 1.12. 2017-02-25 12:37:46 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideo/audiosrc: Add GstReferenceTimestampMeta with the stream time to each buffer This is basically a frame counter provided by the driver and it's advancing at the speed of the HDMI/SDI input. Having this available on each buffer allows to know what constant-framerate-based timestamp each frame is corresponding to and can be used e.g. to write out files accordingly without having the local pipeline clock timestamps used. https://bugzilla.gnome.org/show_bug.cgi?id=779213 2017-04-19 16:06:52 +0100 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: Fix potential problem identified by clang Clang's static analyser found potential code paths in which variables were being used in comparisons when uninitialised. Fix by properly handling out-of-range value returned by gst_ttml_get_element_index. 2017-04-19 14:07:06 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: Fix potential NULL dereference identified by coverity Hopefully fixes CID #1405131. 2017-04-19 14:00:47 +0100 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: Fix integer handling issue identified by coverity Fixes CID #1405132. 2017-04-19 12:36:03 +0100 Sebastian Dröge * ext/hls/gsthlssink.c: * ext/hls/gsthlssink.h: hlssink: Remove some unused struct fields 2017-04-17 19:25:49 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: nvenc: Stop bitstream thread in ::stop() Otherwise we are likely to crash if EOS didn't happen yet. https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-14 13:58:21 +0200 Ole André Vadla Ravnås * sys/nvenc/gstnvbaseenc.c: nvenc: Update to the current gstreamer-gl API https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-14 13:57:19 +0200 Ole André Vadla Ravnås * configure.ac: nvenc: Add support for the Cuda 8.0 SDK https://bugzilla.gnome.org/show_bug.cgi?id=781410 2017-04-12 20:01:40 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: dashdemux: Rewrite ISOBMFF & SIDX handling The previous code was handling both as separate steps and then tried to combine the results, but this resulted in all kinds of bugs which showed themselves as failures during seeking and offset tracking getting wrong. This also showed itself with gst-validate on the sample stream. The rewritten code now parses everything in one go and tracks the current offset only once, and as a side effect simplifies the code a lot. Also added is detection of SIDX that point to other SIDX instead of actual media segments, e.g. with this stream: http://dash.akamaized.net/dash264/TestCases/1a/sony/SNE_DASH_SD_CASE1A_REVISED.mpd Support for this will have to be added at some point but that should also be easier with the rewritten code. https://bugzilla.gnome.org/show_bug.cgi?id=781233 2017-04-15 18:17:29 -0700 Thiago Santos * tests/check/elements/dash_mpd.c: tests: dash_mpd: add some inheritance tests Tests regarding inheritance of segment template attributes 2017-04-12 16:58:10 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Do sanity check of Segment Base Information only at Repesentation level Spec 5.3.9.2 is saying about the existence of duration and SegmentTimeline only for Representation level. Other level such as Period or AdaptationSet might not have the attributes. https://bugzilla.gnome.org/show_bug.cgi?id=780570 2017-03-27 10:06:30 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Allow inherit Segment{Base,Template} from Period Similar to SegmentList, Representation can inherit Segment{Base,Template} from Period https://bugzilla.gnome.org/show_bug.cgi?id=780570 2017-04-14 18:16:28 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't hold locks when pushing FLUSH_START Some actions (Qos, reconfigure, ...) might take place before we finish pushing out flush_start. One problem would be that: 1) The QOS handling in adaptivedemux takes the MANIFEST LOCK That QOS event comes from basesink with its PREROLL_LOCK taken 2) FLUSH_START is sent from adaptivedemux with the MANIFEST_LOCK taken and the basesink flushing handler needs to take the PREROLL_LOCK => deadlock https://bugzilla.gnome.org/show_bug.cgi?id=781320 2017-04-13 13:27:57 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix segment creation/adaptation some more Take into account the segment stop and the negative rates https://bugzilla.gnome.org/show_bug.cgi?id=781267 2017-04-14 01:56:50 +1000 Jan Schmidt * ext/opencv/MotionCells.cpp: motioncells: Fix cell string generation Allow 1 extra char in the tmp buffer where the motion cell snippets are generated, so that it doesn't leave off a comma when dealing with cells that have 2 numerals in both indices 2017-04-13 11:33:41 +0100 Tim-Philipp Müller * configure.ac: * ext/ttml/gstttmlplugin.c: ttml: build, but don't autoplug unless GST_TTML_AUTOPLUG env var is set Don't hide build behind --enable-experimental. Our goal is to not autoplug it for now, so let's just always build it if the dependencies are there and hide autoplugging enablement behind an env var. 2016-10-19 14:56:06 +0200 Philipp Zabel * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: if the plane can not scale, retry without scaling and remember Retry the drmModeSetPlane call without scaling if the first try fails, and remember not to scale anymore. https://bugzilla.gnome.org/show_bug.cgi?id=781188 2017-04-12 20:09:33 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: Revert "dashdemux: Fix issue when manifest update sets slow start without passing necessary header & caps changes downstream" This reverts commit c9fbf3459a719b2c68ba69ddabd373ea9bf804a2. The representation ID comparision here was wrong and triggering always if the ID did *not* change, causing needless redownloading of the header. The sample stream provided in the bug does not exist anymore. 2017-03-08 15:01:13 -0300 Thibault Saunier * ext/assrender/gstassrender.c: * ext/bs2b/gstbs2b.c: * ext/chromaprint/gstchromaprint.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurltlssink.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaalaenc.c: * ext/dash/gstdashdemux.c: * ext/dc1394/gstdc1394src.c: * ext/directfb/dfbvideosink.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/fluidsynth/gstfluiddec.c: * ext/gl/gstglbumper.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglviewconvert.c: * ext/gl/gstopengl.c: * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlssink.c: * ext/iqa/iqa.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/ladspa/gstladspa.c: * ext/libde265/libde265-dec.c: * ext/lv2/gstlv2.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opus/gstopusparse.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsninputselector.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: * ext/smoothstreaming/gstmssdemux.c: * ext/spandsp/gstdtmfdetect.c: * ext/spandsp/gstspanplc.c: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: * ext/teletextdec/gstteletextdec.c: * ext/ttml/gstttmlparse.c: * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/subtitlemeta.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/vulkan/gstvulkan.c: * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbufferpool.c: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkmemory.c: * ext/vulkan/vksink.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkwindow.c: * ext/wayland/gstwaylandsink.c: * ext/wildmidi/gstwildmidi.c: * ext/x265/gstx265enc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvp8parser.c: * gst-libs/gst/codecparsers/gstvp8parser.h: * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.c: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst-libs/gst/player/gstplayer-visualization.c: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/accurip/gstaccurip.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfobjects.c: * gst/audiofxbad/gstaudiochannelmix.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixmatrix/gstaudiomixmatrix.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautoconvert.c: * gst/bayer/gstbayer2rgb.c: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstdigitalzoom.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/compositor/compositor.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gsterrorignore.c: * gst/debugutils/gstwatchdog.c: * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/gdp/dataprotocol.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstperspective.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstivtc.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/midi/midiparse.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstvideoparse.c: * gst/removesilence/gstremovesilence.c: * gst/sdp/gstsdpdemux.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/timecode/gstavwait.c: * gst/timecode/gsttimecodestamper.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstzebrastripe.c: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: * gst/videoparsers/gstdiracparse.c: * gst/videosignal/gstsimplevideomark.c: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstvideoanalyse.c: * gst/y4m/gsty4mdec.c: * gst/yadif/gstyadif.c: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahssrc.c: * sys/applemedia/atdec.c: * sys/applemedia/vtdec.c: * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: * sys/directsound/gstdirectsoundsrc.c: * sys/dvb/gstdvbsrc.c: * sys/kms/gstkmssink.c: * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/tinyalsa/tinyalsasink.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: * sys/vdpau/gstvdpsink.h: * sys/vdpau/gstvdpvideomemory.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: docs: Port all docstring to gtk-doc markdown 2017-03-27 15:29:16 -0300 Thibault Saunier * gst/rawparse/gstvideoparse.c: rawvideoparse: videoparse now uses GstValueArray and not GValueArray 2017-04-12 09:35:16 -0300 Thibault Saunier * gst-libs/gst/gl/gstglsl.h: docs: Stop linking to inexistant symbols 2017-04-12 12:06:52 -0300 Thibault Saunier * gst-libs/gst/base/gstaggregator.h: aggregator: Make instance var name match between .c and .h Making GI happy 2017-04-12 13:17:24 +0300 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: Revert "directsoundsrc: Correctly calculate segsize and segtotal" This reverts commit 6d256d9908e292f6c593bf45e69354f6b613cc8b. It was configuring the period/buffer size in a way that often causes drop-outs or complete underruns. Needs further investigation. 2017-04-12 10:54:23 +0200 Edward Hervey * ext/dash/gstmpdparser.c: mpdparser: Fix leak The error: location takes care of freeing new_representation CID #1405027 2017-04-12 10:54:05 +0200 Edward Hervey * ext/dash/gstmpdparser.c: mpdparser: Run gst-indent 2017-04-11 15:46:19 +0300 Claudio Saavedra * gst-libs/gst/gl/meson.build: meson: add missing gstglrenderbuffer.h header https://bugzilla.gnome.org/show_bug.cgi?id=781179 2017-04-11 09:42:49 +0100 Tim-Philipp Müller * sys/decklink/meson.build: meson: decklink: fix meson configure error on macOS "meson encountered an error in file sys/decklink/meson.build, line 33, column 2: Invalid use of addition: must be str, not list" Also remove nonsensical linker flags on windows. https://bugzilla.gnome.org/show_bug.cgi?id=781156 2016-12-30 14:05:30 -0500 Fabian Orccon * configure.ac: * gst/faceoverlay/gstfaceoverlay.c: * gst/meson.build: faceoverlay: Port to GStreamer 1.x https://bugzilla.gnome.org/show_bug.cgi?id=764011 2017-04-05 16:03:08 -0500 Fabian Orccon * configure.ac: * gst/faceoverlay/Makefile.am: * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: * gst/faceoverlay/meson.build: * gst/meson.build: faceoverlay: Revert deletion https://bugzilla.gnome.org/show_bug.cgi?id=764011 2017-03-03 09:08:06 +0100 Jürgen Sachs * ext/dash/gstmpdparser.c: dashdemux/mpdparser: Fix wrong false sanity check for manifests with nested SegmentTemplate nodes https://bugzilla.gnome.org/show_bug.cgi?id=778237 2017-04-10 23:49:16 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From 39ac2f5 to 60aeef6 2017-04-10 18:46:01 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Handle current SIDX before current position in normal mode like in keyunit-only trick mode Otherwise we'll get into an infinite loop here. Now this is still not correct and will cause a clean error, but at least it won't hang forever anymore. 2017-04-07 12:19:27 -0700 Scott D Phillips * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: meson: gl: set default value of 0 for glconf vars meson's configure_file emits only a comment like /* #undef ... */ for values which are unset in the configuration_data. For gstglconfig.h, this differs from the autotools build where the preprocessor definitions are always either 0 or 1. So loop over a list of variables to set to zero as default. Also sync up the gstglconfig.h.meson file with the additional macros defined by the autotools build. https://bugzilla.gnome.org/show_bug.cgi?id=781043 2017-04-07 10:19:43 +0100 Vincent Penquerc'h * gst-libs/gst/base/gstaggregator.c: gstaggregator: fix event use after free https://bugzilla.gnome.org/show_bug.cgi?id=781017 2017-04-07 10:39:31 +0100 Vincent Penquerc'h * gst/mxf/mxfmux.c: mxfmux: fix index entry leak https://bugzilla.gnome.org/show_bug.cgi?id=781023 2017-04-07 10:36:34 +0100 Vincent Penquerc'h * tests/check/elements/videoframe-audiolevel.c: tests: fix leak in videoframe-audiolevel test also add braces for the else case https://bugzilla.gnome.org/show_bug.cgi?id=781022 2017-04-07 10:30:09 +0100 Vincent Penquerc'h * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: fix display leak https://bugzilla.gnome.org/show_bug.cgi?id=781019 2017-04-07 10:24:19 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix list leak Windows aren't always removed in time, and it turns out to be very, very hard to remove a window in a way that's not racy and not deadlocky. Since the window itself doesn't leak, freeing the list on object destruction is enough. https://bugzilla.gnome.org/show_bug.cgi?id=781018 2017-04-07 10:43:51 +0100 Vincent Penquerc'h * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: fix invalid memory access in language descriptor Also add a couple sanity asserts/returns https://bugzilla.gnome.org/show_bug.cgi?id=781024 2017-03-27 09:56:32 +0900 Seungha Yang * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: Report error if Representation is invalid Spec "5.3.5 Representation" is saying that id and bandwidth attributes are mandatory fields. https://bugzilla.gnome.org/show_bug.cgi?id=780569 2017-03-24 15:04:21 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Retry downloading a fragment immediately if any in live streaming At the moment that demux is waiting manifest update, the target sequence of fragment was advanced already. So, checking stream_has_next_fragment() means looking for the next fragment of target fragment. This might cause unexpected buffering if each fragment has large duration and manifest is listing only limited number of fragments. https://bugzilla.gnome.org/show_bug.cgi?id=780494 2017-03-24 08:16:35 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Fix SEEK of multi-period On-Demand profile For each period, media presentation is the relative to the period-start time. So SIDX seek position should be target seek position minus period-start. Also, if presentationTimeOffset is defined, the value should be compensated https://bugzilla.gnome.org/show_bug.cgi?id=780397 2017-04-04 11:47:55 +0100 Chris Bass * ext/ttml/gstttmlparse.c: ttmlparse: push segment events downstream Without this, subtitles will stop after seeking. https://bugzilla.gnome.org/show_bug.cgi?id=780897 2017-04-07 10:16:46 +0100 Chris Bass * ext/ttml/ttmlparse.c: ttmlparse: don't filter out untimed whitespace Significant whitespace in elements that don't have begin/end values should inherit timing from its parent, or if no its parents have no timing, from the document's Root Temporal Extent. Currently, such whitespace is removed, which is not spec-compliant. Fix this by retaining whitespace in content nodes, and assigning a Root Temporal Extent of 24 hours to any significant whitespace whose parents have no associated timing. https://bugzilla.gnome.org/show_bug.cgi?id=781027 2017-03-22 10:41:44 +0000 Chris Bass * ext/ttml/gstttmlparse.c: ttmlparse: don't leak caps. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 10:35:38 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: improve function comments/descriptions https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 10:30:47 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: relocate type definitions to head of file https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 10:21:28 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/ttmlparse.c: ttml: correctly implement lineHeight behaviour The specified behaviour in TTML when lineHeight is "normal" is different from the behaviour when a percentage is given. In the former case, the line height is a percentage (the TTML spec recommends 125%) of the largest font size that is applied to the spans within the block; in the latter case, the line height is the given percentage of the font size that is applied to the block itself. The code doesn't correctly implement this behaviour; this patch fixes that. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-22 09:21:09 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/gstttmlrender.h: ttmlrender: apply correct line height to blocks with multiple text sizes In TTML, the height of every line in a block is determined by lineHeight and fontSize style attributes, and should be the same for each line in that block, regardless of whether different sized text appears on different lines. Currently, a single PangoLayout is used to lay out all the text in a block; however, pango will vary the line height in a layout depending on the size of text used in each line, which is not compliant with TTML. This patch makes ttmlrender lay out the lines in a block itself, rather than using a PangoLayout to do the work. The code still uses a PangoLayout to render the text of each element, but the overall layout of the text in a block is now controlled by ttmlrender itself. By doing this, ttmlrender is able to ensure that the height of each line in a block is correct. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 15:05:18 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: add facility to stitch images in both directions https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 14:39:39 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: extend UnifiedElement type to include font metrics https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 14:11:42 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: extend UnifiedBlock type Include a reference to the GstSubtitleStyleSet of the represented block and a string containing the concatenated text from all elements. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 13:50:12 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/subtitle.c: * ext/ttml/subtitle.h: ttml: add refcounting to GstSubtitleStlyeSet type https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 12:15:50 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: rename TextRange type and its fields. https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 12:12:28 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/gstttmlrender.h: ttmlrender: store PangoLayout in object state https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-03-21 11:28:31 +0000 Chris Bass * ext/ttml/gstttmlrender.c: ttmlrender: put all functions in gst_ttml_render namespace https://bugzilla.gnome.org/show_bug.cgi?id=780402 2017-04-08 21:28:58 +1000 Jan Schmidt * gst-libs/gst/gl/gstglframebuffer.h: gl: Remove duplicate typedef of GstGLFramebufferClass The GstGLFramebufferClass struct is typedeffed in gstgl_fwd.h, and having a duplicate elsewhere is breaking the cerbero build on my OSX machine, even though it seems to be working in CI. 2017-04-08 10:08:04 +0100 Tim-Philipp Müller * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/dash_demux.c: tests: dash: don't use deprecated g_object_newv() 2017-04-07 18:49:52 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do not mix the same buffer twice when EOS. When entering this code path, we know that: We received EOS on this pad. We consumed all its buffers. In any case, we want to replace vaggpad->buffer with NULL, otherwise we will end up mixing the same buffer twice. https://bugzilla.gnome.org/show_bug.cgi?id=781037 === release 1.11.90 === 2017-04-07 16:32:24 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gtk.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * meson.build: Release 1.11.90 2017-04-07 15:31:12 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-04-07 15:06:50 +0300 Sebastian Dröge * po/hu.po: * po/ky.po: * po/sv.po: po: Update translations 2017-04-07 14:44:54 +0300 Sebastian Dröge * win32/common/libgsturidownloader.def: win32: Update libgsturidownloader.def 2017-04-07 16:32:40 +1000 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: add some reasons on warning reporting 2017-04-06 16:13:41 +0300 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Correctly calculate segsize and segtotal segsize should be based on latency-time, and must be a multiple of the frame size. segtotal should be based on buffer-time and segsize. This prevents errors caused by outputting buffers that are not a multiple of the frame size, and actually makes the buffer-time and latency-time properties do what they're supposed to do. 2017-03-17 12:58:06 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Use a GWeakRef to the parent to prevent a reference cycle https://bugzilla.gnome.org/show_bug.cgi?id=780140 2015-12-09 13:19:11 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: set uridownloader's parent Allows internal http source to request contexts and share cookies with the pipeline in case the server imposes any restriction based on cookies. 2015-12-09 13:12:42 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: add new gst_uri_downloader_set_parent If set, the parent is used to proxy need-context messages from uridownloader's http source in order to get cookies/headers from the pipeline. Based on a patch from Philippe Normand https://bugzilla.gnome.org/show_bug.cgi?id=726314 2017-04-01 17:00:47 +0200 Josep Torra * .gitignore: examples: add audiomixmatrix test to .gitignore 2017-04-01 16:49:15 +0200 Josep Torra * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: fix warnings reported by XCode 8.1.0 gstglwindow_cocoa.m:345:16: error: unused variable 'window' [-Werror,-Wunused-variable] GstGLWindow *window = GST_GL_WINDOW (window_cocoa); ^ gstglwindow_cocoa.m:445:11: error: unused variable 'external_view' [-Werror,-Wunused-variable] NSView *external_view = (__bridge NSView *)priv->external_view; ^ 2017-03-31 23:40:05 +1300 Douglas Bagnall * gst/audiomixer/gstaudiointerleave.c: audiointerleave: don't overflow channel map with >64 channels When there are more than 64 channels, we don't want to exceed the bounds of the ordering_map buffer, and in these cases we don't want to remap at all. Here we avoid doing that. Based on a patch originally for plugins-good/interleave in https://bugzilla.gnome.org/show_bug.cgi?id=780331 2017-03-29 23:45:21 -0400 Nicolas Dufresne * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: gldisplay: Fix assert caused by missing debug category 2017-03-29 23:36:50 -0400 Nicolas Dufresne * ext/mplex/meson.build: meson: Fix mplex plugin file name Meson was creating libgstmplex2.so which didn't match the plugin name 'mplex'. 2017-03-27 18:14:54 +0300 George Kiagiadakis * ext/webrtcdsp/gstwebrtcechoprobe.cpp: webrtcechoprobe: return from _read() early if the probe is not configured yet https://bugzilla.gnome.org/show_bug.cgi?id=780642 2017-03-28 16:04:15 +0100 Luis de Bethencourt * ext/dash/gstdashdemux.c: dashdemux: fix typo in implementation notes s/enveloppe/envelope 2017-03-27 21:15:32 -0400 Nicolas Dufresne * ext/meson.build: * ext/webrtcdsp/meson.build: webrtcdsp: Add support to build with meson 2017-02-23 16:12:38 +0100 Mathieu Duponchelle * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: expose voice activity detection. The element now exposes properties to enable and configure voice activity detection, and posts "voice-activity" messages when the return value of stream_has_voice () changes. https://bugzilla.gnome.org/show_bug.cgi?id=779138 2017-03-27 15:10:45 -0400 Nicolas Dufresne * gst/audiomixmatrix/gstaudiomixmatrix.c: audiomixmatrix: Don't crash if matrix is unset Fix a crash ff one set in_channels/out_channels to non-zero, and then get the matrix property. 2017-03-27 13:34:19 -0400 Nicolas Dufresne * gst/audiomixmatrix/gstaudiomixmatrix.c: audiomixmatrix: Remove property matrix-value-array This duplicated property is no longer needed as there is now API to allow bindings access GST_TYPE_ARRAY (see gst_util_get/set/object_array). Additionnally, Python has proper overrides which will make this looks like Python. A 2x2 matrix would be set this way: element = matrix = Gst.ValueArray(Gst.ValueArray([1.0, -1.0]), Gst.ValueArray([1.0, -1.0)) Notice that you need to "cast" each arrays to Gst.ValueArray, otherwise there is an ambiguity between Gst.ValueArray and Gst.ValueList list type. Fortunatly, Gst.ValueArray implements the Sequence interface, so it can be indexed like normal python matrix. 2017-03-01 20:51:43 +1100 Matthew Waters * ext/smoothstreaming/gstmssmanifest.c: mssdemux: only add live fragments after manifest fragments A live manifest may have a set (> LookAheadFragmentCount) of fragments that have already been served and are stored on the server, maybe indefinitely. Adding the parsed live fragments after the manifest fragments breaks duration reporting and the seekable range. Fix by only adding parsed fragments outside the list of fragments which assumes that the fragment list in the manifest is accurate enough to not stray too far off what's in the retrieved data. https://bugzilla.gnome.org/show_bug.cgi?id=779447 2017-03-24 15:43:07 -0400 Nicolas Dufresne * ext/kate/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: Add missing include path for gst/glib-compat-prive.h This fixes build failure in mplex and mpeg2enc plugins and most likely in kate plugin (untested). 2017-03-24 14:25:48 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Use GstQueueArray instead of GQueue Let's save two allocations and frees per frame. 2017-03-23 02:48:10 +0530 Nirbheek Chauhan * ext/meson.build: * ext/mpeg2enc/meson.build: * ext/mplex/meson.build: * meson.build: meson: Build mpeg2enc and mplex when available 2017-03-22 17:38:20 +0200 Sebastian Dröge * sys/kms/gstkmssink.c: kmssink: Fix compiler warning with gcc 7 gstkmssink.c: In function ‘gst_kms_sink_get_input_buffer’: gstkmssink.c:1102:29: error: ‘mems[0]’ may be used uninitialized in this function [-Werror=maybe-uninitialized] kmsmem = (GstKMSMemory *) get_cached_kmsmem (mems[0]); ^~~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors 2017-03-23 00:49:43 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't send EOS on pads when there's a pending switch When there are new pads pending for a bitrate switch, don't allow EOS through from the old streams. It will be sent when the new pads are ready, just before the old streams are removed. This fixes racy bitrate switching with hlsdemux in urisourcebin where old pads EOS before new pads appear and the entire pipeline can EOS if those propagate fast enough 2017-03-22 20:10:57 +0900 Seungha Yang * gst-libs/gst/player/gstplayer-media-info-private.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer.c: player: Make use of GstStreams API with playbin3 Allow use of playbin3 and GstStreams API by setting the environment variable "GST_PLAYER_USE_PLAYBIN3" https://bugzilla.gnome.org/show_bug.cgi?id=775487 2017-03-21 18:16:52 +0100 Georg Lippitsch * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Add read-only "signal" property https://bugzilla.gnome.org/show_bug.cgi?id=780367 2017-03-22 13:22:40 +0200 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Install srcpad query function on the srcpad, not the sinkpad 2017-03-22 12:04:35 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: In reverse playback mode, if seeking to the beginning of a fragment, start with the previous one instead There's no point to start downloading a fragment just to output 1ns. 2017-03-21 20:37:17 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Implement SNAP_NEAREST seeks 2017-03-21 20:36:02 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Don't use ABS() for calculating differences We know which number is bigger. 2017-03-21 20:27:10 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Only snap seeks forwards if the seek position does not happen to be the exact segment position 2017-03-21 20:14:53 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Use gst_mpdparser_get_segment_end_time() directly instead of calculating it again It does the exact same calculations. 2017-03-06 19:44:02 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Refactor to get rid of one level of indentation in seeking code Also go out of the segment searching loop once segment->start > ts. We're not going to find any earlier segment anymore. 2017-03-21 16:18:15 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Fix snap SIDX seeking and report if we're going outside the index Instead of just going to the first or last fragment, report if we're going outside the index. This should never happen unless there's a bug or the stream is broken. Allow some possibility for inaccuracies here though. 2017-03-21 10:20:49 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/camutils.c: dvb: camutils: drop macro disabling glib deprecation warnings No longer needed. 2017-03-20 15:19:08 -0700 Scott D Phillips * gst-libs/gst/Makefile.am: build: declare dependency from gl on allocators libgstgl has a dependency on libgstallocators starting with: ed1e4c1 glupload: Add support for Vivante DirectTexture uploads The dependency wasn't stated in the Makefile, so the build could occasionally fail if you got unlucky with the ordering of build steps. https://bugzilla.gnome.org/show_bug.cgi?id=780330 2017-03-20 19:57:32 +0000 Tim-Philipp Müller * sys/dvb/Makefile.am: dvb: fix distcheck Apparently automake automatically dists README files, but can't handle when they disappear. 2017-03-20 17:15:54 +0000 Tim-Philipp Müller * ext/assrender/gstassrender.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/speed/Makefile.am: * gst/speed/demo-mp3.c: * scripts/autoplugins.sh: * sys/dvb/README: * sys/dvb/gstdvbsrc.c: Update for 'mad' mp3 decoder removal https://bugzilla.gnome.org/show_bug.cgi?id=776140 2017-03-17 15:34:33 +0900 Seungha Yang * ext/hls/m3u8.c: m3u8: Fix parsing EXT-X-DISCONTINUITY EXT-X-DISCONTINUITY tag should have no trailing ":" character https://bugzilla.gnome.org/show_bug.cgi?id=780179 2017-03-17 16:47:07 +0900 Seungha Yang * ext/hls/m3u8.c: m3u8: Release m3u8 lock if consistent checking failed To fix deadlock during live m3u8 update https://bugzilla.gnome.org/show_bug.cgi?id=780180 2017-03-16 12:35:40 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Just reset SIDX parser if the index is invalid for the current segment https://bugzilla.gnome.org/show_bug.cgi?id=780108 2016-12-23 11:07:00 +0000 Chris Bass * ext/ttml/gstttmlrender.c: * ext/ttml/ttmlparse.c: ttml: Replace assertions Remove assertions and replace, where necessary, with code that handles the error cases. https://bugzilla.gnome.org/show_bug.cgi?id=776436 2017-03-15 13:24:57 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: If a SIDX seek failed although we're in the correct segment, disable the SIDX usage for this segment The SIDX apparently does not contain information about the current segment, so better stop using it instead of using incorrect values. 2017-03-15 13:24:04 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Keep track of the PTS, not the SIDX index position between representations There is no guarantee that the index positions are the same between representations, and assuming this easily causes us to get into invalid index positions. 2017-03-15 13:21:38 +0200 Sebastian Dröge * ext/dash/gstisoff.c: dashdemux: When clearing the sidx parser, reset all state And especially don't keep entry count and index around, we have no entries anymore after clearing. 2017-03-15 10:17:59 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Drain buffer at the end of subfragment Some of streams such as below have tailing boxes at the end of subfragment. http://dash.akamaized.net/dash264/TestCases/1a/netflix/exMPD_BIP_TC1.mpd https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-15 09:24:39 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Do not advace subfragment after pending SIDX seek done If a MPD is On-Demand profile and no index described, demux will terminate download loop after parsing inband SIDX with flow return custom-success. At this moment, SIDX index is excat target position, but finish_fragment() might cause re-advancing subfragment depending on MPD structure. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 19:47:17 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Reset SIDX related variables per fragment SIDX's base offset (i.e., byte offset of SIDX + sidx.first_offset) mostly vary as per fragment. Also, target SIDX index must be zero for the new fragment. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 20:15:31 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Two depth seeking for On-Demand profile Try to find fragment using MPD first, then do refinement to find target subframgnet using SIDX if possible. Note that, if target fragment was moved from the previously activated one, we should assume that the last SIDX is invalid for new fragment. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 19:41:56 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Exception handle in _sidx_seek() If target seek position is outside of the range of sidx entries, binary search returns NULL pointer. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-14 19:27:45 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Add assertion for preventing of access after the end of the sidx entries array Better crash cleanly here than reading some random numbers from memory. 2017-03-14 14:18:17 -0700 Scott D Phillips * gst-libs/gst/gl/gstglformat.c: gl/format: correct return enums in gst_gl_format_from_video_info In commit > 956c4d0 gl/format: use our own GL format enum's instead of gstvideo's the name and return type of gst_gl_format_from_video_info changed, but some returns of the old type were missed. Here they are updated to the correct type. https://bugzilla.gnome.org/show_bug.cgi?id=780064 2017-03-14 16:46:14 -0400 Olivier Crête * tests/check/elements/srtp.c: srtp test: Remove deprecation disabling No deprecated APIs are used. 2017-03-07 21:56:03 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Advance subfragment only if any exist SIDX based playback is not restricted to SegmentBase, but it possible with SegmentList/SegmentTemplate. In the latter case, each fragment has its own SIDX box and might be subdivided into subfragment. So, demux should not assume that the end of subfragment is the end of stream. Moreover, should try advance subfragment only if there are remaining subfragments. With additional fixes by Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=776200 2017-03-13 16:06:53 +0200 George Kiagiadakis * sys/kms/gstkmssink.c: kmssink: adjust memory offset calculation for dmabuf buffers The data in the dmabuf fd may not start from byte 0, therefore we need to inform DRM about this additional offset. https://bugzilla.gnome.org/show_bug.cgi?id=779790 2017-03-13 15:48:33 +0200 George Kiagiadakis * gst-libs/gst/gl/gstglupload.c: glupload: adjust memory offset calculation for dmabuf buffers The data in the dmabuf fd may not start from byte 0, therefore we need to inform EGL about this additional offset. https://bugzilla.gnome.org/show_bug.cgi?id=779790 2017-03-13 12:46:47 +0200 George Kiagiadakis * ext/wayland/wllinuxdmabuf.c: waylandsink: fix memory offset calculation for dmabuf buffers https://bugzilla.gnome.org/show_bug.cgi?id=779790 2017-03-14 16:49:25 +1100 Matthew Waters * ext/dash/gstmpdparser.c: * ext/hls/m3u8.c: * ext/smoothstreaming/gstmssmanifest.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * tests/check/elements/hlsdemux_m3u8.c: Revert "adaptivedemux: answer duration queries for live streams" Completely disabling duration reporting with live streams is not cool. This reverts commit e1b68d9a65ba512a52c3a2b298fa830a445eb451. https://bugzilla.gnome.org/show_bug.cgi?id=753879 2017-03-14 14:15:00 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gltestsrc.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl: GL_ARRAY_BUFFER is not a part of VAO state As a result we need to bind it on every draw in order to have the correct state in the GL state machine. 2017-03-14 11:39:23 +1100 Matthew Waters * sys/applemedia/iosurfacememory.c: applemedia/iosurfacememory: Fix missing variable name change 956c4d0bde4d6707ccae2b4ae6dfba8500e55217 missed a variable name change. Fix that. 2017-03-13 14:28:47 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgloverlay.c: * ext/qt/gstqtsrc.cc: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/corevideobuffer.c: * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/iosurfacememory.c: * sys/applemedia/iosurfacememory.h: * sys/applemedia/videotexturecache.m: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/format: use our own GL format enum's instead of gstvideo's They can describe in more detail (such as component sizes) the requested format. 2017-03-10 16:57:51 +0000 Vincent Penquerc'h * gst-libs/gst/gl/gstglupload.c: glupload: fix GValue leak https://bugzilla.gnome.org/show_bug.cgi?id=779869 2017-03-12 11:50:50 -0400 Nicolas Dufresne * Makefile.am: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-teletext.xml: Add old plugins names to cruft list This helps fixing uninstalled setup. Also fixes some path in plugin xml files. https://bugzilla.gnome.org/show_bug.cgi?id=779344 2015-09-23 17:12:34 +0200 Samuel Maroy * sys/shm/gstshmsink.c: shmsink: continue polling after EINTR https://bugzilla.gnome.org/show_bug.cgi?id=779856 2017-03-02 14:36:56 +0800 Haihua Hu * gst-libs/gst/player/gstplayer.c: player: Fix setting of external subtitle URI gst_player_set_uri_internal shouldn't free suburi which maybe set by user to load external subtitle before start play. It just need reset playbin's subutri property to NULL no matter if there was a previous one or not. https://bugzilla.gnome.org/show_bug.cgi?id=779453 2017-03-09 10:09:40 +0200 Sebastian Dröge * sys/applemedia/avfvideosrc.m: avfvideosrc: Use AVCaptureDeviceTypeBuiltInDuoCamera instead of DualCamera for now The former is deprecated in 10.2 but we don't require that SDK yet. 2017-03-08 22:28:15 -0500 Nicolas Dufresne * Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: Fix doc generation This regression was caused by the renaming of plugin-sdp into plugin-sdpelem. The doc reference needed an update. Also, add the old xml to the cruft file list. https://bugzilla.gnome.org/show_bug.cgi?id=779344 2017-03-05 15:27:11 -0500 Nicolas Dufresne * ext/dash/Makefile.am: * ext/smoothstreaming/Makefile.am: dash/smoothstreaming: Use GST_PLUGIN_LIBTOOLFLAGS Use the flags defined by configure script instead of always disabling static plugins. 2017-03-04 11:03:53 -0500 Nicolas Dufresne * docs/plugins/inspect/plugin-gtk.xml: * docs/plugins/inspect/plugin-sdpelem.xml: * ext/fluidsynth/meson.build: * ext/gtk/Makefile.am: * ext/gtk/gstplugin.c: * ext/teletextdec/Makefile.am: * gst/camerabin2/Makefile.am: * gst/camerabin2/meson.build: * gst/onvif/meson.build: * gst/sdp/gstsdpelem.c: * gst/siren/gstsiren.c: * sys/kms/Makefile.am: * sys/kms/meson.build: Rename plugin filesnames to match plugin names - libgstgtksink.so -> libgstgtk.so - libgstteletextdec.so -> libgstteletex.so - libgstcamerabin2.so -> libgstcamerabin.so - libgstonvif.so -> libgstrtponvif.so (meson only) - sdp -> sdpelem (avoid clash with libgstsdp) - gstsiren -> siren - libgstkmssink.so -> libgstkms.so https://bugzilla.gnome.org/show_bug.cgi?id=779344 2017-03-08 15:52:43 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Only unref daily jam if not NULL 2017-03-08 15:48:19 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Unref daily jam after usage 2017-03-08 14:16:43 +0100 Nick Kallen * ext/gl/Makefile.am: * sys/applemedia/avfvideosrc.m: applemedia/gl: Fix compile issues for OSX https://bugzilla.gnome.org/show_bug.cgi?id=778333 2017-03-08 15:13:45 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/Makefile.am: gl/eagl: It's -fobjc-arc not -fobj-arc 2017-03-08 14:22:52 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: frame->buffer can't be NULL in pre_push_frame() CID 1402118 2017-03-08 17:11:17 +0900 Hyunjun Ko * tests/check/elements/h264parse.c: * tests/check/elements/parser.c: * tests/check/elements/parser.h: tests: h264parse: fix failures due to insertion of au delimiter Since insertion of aud landed, we need to change some testcases accroding to the change. Note that counting frames are changed in parser.c, due to generated frames, AUD. https://bugzilla.gnome.org/show_bug.cgi?id=736213 2017-03-08 17:09:28 +0900 Hyunjun Ko * gst/videoparsers/gsth264parse.c: h264parse: fix some failures in testcases Move logic of judgement whether or not to insert AU Delimiter before draining. Besides, aud_needed flag is reset to TRUE when skip. https://bugzilla.gnome.org/show_bug.cgi?id=736213 2017-02-08 12:23:09 +0100 Nick Kallen * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc supports position, device-type, and orientation Avfvideosrc represents an iphone camera or, on mac, a screencapture session. The old API allowed you to select an input device by device index only. The new API adds the ability to select the position (front or back facing) and device-type (wide angle, telephoto, etc.). Furthermore, you can now specify the orientation (portrait, landscape, etc.) of the videostream. https://bugzilla.gnome.org/show_bug.cgi?id=778333 2017-02-03 14:46:39 +0100 Nick Kallen * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * sys/applemedia/Makefile.am: * sys/applemedia/avfassetsrc.h: * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: * sys/applemedia/avsamplevideosink.h: * sys/applemedia/avsamplevideosink.m: * sys/applemedia/iosassetsrc.h: * sys/applemedia/iosassetsrc.m: * sys/applemedia/plugin.m: * sys/applemedia/videotexturecache.m: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/cocoa-videooverlay.m: applemedia/gl: Update code to use ARC All code interacting with Objective-C objects should now use Automated Reference Counting rather than manual memory management or Garbage Collection. Because ARC prohibits C-structs from containing references to Objective-C objects, all such fields are now typed 'gpointer'. Setting and gettings Objective-C fields on such a struct now uses explicit __bridge_* calls to tell ARC about object lifetimes. https://bugzilla.gnome.org/show_bug.cgi?id=777847 2017-03-07 18:33:12 +0900 Hyunjun Ko * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: insert AU delimiter only in case of byte-stream Inserts AU delimeter by default if missing au delimeter from upstream. This should be done only in case of byte-stream format. Note that: We have to compensate for the new bytes added for the AU, otherwise insertion of PPS/SPS will use wrong offsets and overwrite wrong data. Also mark the AU delimiter blob const, and use frame->out_buffer for storing the output to keep baseparse assumptions valid. Original-Patch-By: Michal Lazo Helped by Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=736213 2017-03-03 16:20:15 +0200 George Kiagiadakis * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: redo src caps negotiation if a sink pad's caps have changed in the meantime https://bugzilla.gnome.org/show_bug.cgi?id=755782 2017-03-06 17:51:32 +0530 Arun Raghavan * gst-libs/gst/gl/gstglcontext.h: gl: Missed one backwards compat define in GST_GL_TYPE_CONTEXT Continued from 296b4251e3042fe95a9cce1ad7674b708ba92599 2017-02-21 20:08:21 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Try to find type at the end of a fragment hlsdemux tries to find type if given buffer size is large enought to find type (currently the threshold is 2KB), or EOS in some cases. However, since there can be small byte fragments such as WebVTT, demux should try to find type at the end of a fragment https://bugzilla.gnome.org/show_bug.cgi?id=779011 2017-03-06 00:30:41 +0000 Tim-Philipp Müller * ext/voaacenc/gstvoaacenc.c: voaacenc: limit bitrate property to 320 kbps This appears to be the internal limit of voaacenc, higher bitrates will be ignored and 128 kbps output will be produced instead. Therefore, we might just as well limit the allowed property values, so that people who try to set higher bitrates get a big fat warning instead of silently a much lower bitrate. 2017-03-04 12:12:52 +0100 Nick Kallen * sys/applemedia/videotexturecache.m: applemedia: Fix video texture cache build issue on MacOS https://bugzilla.gnome.org/show_bug.cgi?id=779247 2017-02-26 10:24:46 +0100 Nick Kallen * sys/applemedia/videotexturecache.m: applemedia: ensure all textures are released before texturecache is released It was previously possible for videotexturecache to be finalized before all of its textures. Finalizing outstanding textures in this circumstance leads to a crash. This patch ensure resources are freed in the proper order. https://bugzilla.gnome.org/show_bug.cgi?id=779247 2017-03-04 11:47:04 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl: Fixup for last commit 2017-03-04 11:15:58 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: gl: Fix backwards compat GST_GL_TYPE_* functions/macros These have to be macros instead of inline function as they must behave more or less like an integer literal, i.e. include the function call. 2017-03-04 11:09:39 +0200 Sebastian Dröge * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl/viv-fb: Don't use deprecated symbols and make macros more consistent https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-03-03 15:17:15 +0200 Sebastian Dröge * gst/audiomixmatrix/gstaudiomixmatrix.c: audiomixmatrix: Fix negotiation in first-channels mode if downstream does not allow the same number of channels 2017-02-16 10:51:44 +0900 Dongil Park * ext/hls/gsthlsdemux-util.c: hlsdemux: Fix checking adaptation_field_control field to parse pcr The PCR_flag and PCR value is in adaptation_field, not in payload. The MSB of adaptation_field_control is used as whether adaptation_ field is exist or not. For the case(PCR in only adaptation_field without payload), we modify checking condition about adaptation_field_control field. https://bugzilla.gnome.org/show_bug.cgi?id=778731 2017-02-02 21:06:20 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: hls: Fix various leak on hlsdemux and m3u8 * default_variant should be freed, it holds ref. * GstHLSMedia holds GstM3U8 ref. * gst_m3u8_get_next_fragment() increases ref count. https://bugzilla.gnome.org/show_bug.cgi?id=778073 2017-02-02 21:04:36 +0900 Seungha Yang * tests/check/elements/hlsdemux_m3u8.c: tests: hls: Fix leak on test code https://bugzilla.gnome.org/show_bug.cgi?id=778073 2016-04-01 17:42:32 +0100 Wojciech Przybyl * ext/dash/gstdashdemux.c: dashdemux: fix default suggestedPresentationDelay When MPD@suggestedPresentationDelay is not present in the MPD, dashdemux can provide default suggestedPresentationDelay. However when applying default value of suggestedPresentationDelay, the value should be subtracted from current time, not added to it. When streams setup is performed and live point is calculated, we have to go to the wall clock (current time) minus suggestedPresentationDelay, if we tried to start with current time plus suggestedPresentationDelay, we would be asking for future stream, which has not yet been recorded. Also the value needs to be converted from ms to us. https://bugzilla.gnome.org/show_bug.cgi?id=764726 2016-02-05 12:44:23 +0000 Alex Ashley * ext/dash/gstmpdparser.c: * ext/hls/m3u8.c: * ext/smoothstreaming/gstmssmanifest.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * tests/check/elements/hlsdemux_m3u8.c: adaptivedemux: answer duration queries for live streams For duration queries on live streams, adaptivedemux ignores the query. The problem then is that the query is answered by the downstream qtdemux element, with the duration of the currently passing fragment. This commit changes the behaviour of adaptivedemux to answer the duration queries for live streams, returning GST_CLOCK_TIME_NONE. https://bugzilla.gnome.org/show_bug.cgi?id=753879 2017-02-01 19:55:22 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Implement adaptivedemux's _stream_seek() _stream_seek() can be called by adaptivedemux when "restart download" condition. It's mostly caused by track switching. https://bugzilla.gnome.org/show_bug.cgi?id=776997 2017-02-01 19:15:31 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Simplify seeking code by using macro Import an adaptivedemux's macro to minimize code. Also, this patch considers KEY_UNIT and TRICKMODE_KEY_UNITS as snap seek. https://bugzilla.gnome.org/show_bug.cgi?id=776997 2017-02-01 17:44:25 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Early terminate seeking if we don't need to do Some codes are imported from dashdemux https://bugzilla.gnome.org/show_bug.cgi?id=776997 2016-10-10 16:41:15 -0600 Thomas Bluemel * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Add support for EXT-X-DISCONTINUITY-SEQUENCE https://bugzilla.gnome.org/show_bug.cgi?id=772811 2017-02-27 14:54:43 -0700 Thomas Bluemel * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivemutex: Fix double mutex unlock https://bugzilla.gnome.org/show_bug.cgi?id=779480 2017-03-01 15:29:42 +0200 Sebastian Dröge * ext/openexr/gstopenexrdec.cpp: openexrdec: Also catch other exceptions by reference instead of by value It would have to be copied otherwise, and is quite big. CID 1373419 2017-03-01 12:08:58 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Don't error out if displaying the preroll frame fails This seems to happen sometimes on some hardware, and is not really critical as long as the scheduling of the normal frames works fine. Only post a warning message for this case. 2017-02-28 15:56:02 +0200 Sebastian Dröge * ext/openexr/gstopenexrdec.cpp: openexrdec: Catch exception by reference instead of by value It would have to be copied otherwise, and is quite big. CID 1373419 2017-02-28 15:53:10 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Fix potential NULL pointer dereference CID 1399700 2017-02-28 15:31:53 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Compare media type of the correct variable that is actually set CID 1364752 2017-02-28 15:22:43 +0200 Sebastian Dröge * ext/gl/gstgltestsrc.c: gltestsrc: Fix potential NULL pointer dereference if we fail without GError Which can happen here if we just propagate an error that happened elsewhere, e.g. FBO failed. CID 1364604 2017-02-28 13:06:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst/compositor/compositor.c: glvideomixer/compositor: Correctly error out if calculating DAR fails CID 1320700 2017-02-28 12:53:11 +0200 Sebastian Dröge * ext/opencv/MotionCells.cpp: motioncells: Initialize m_changed_datafile class field CID 1197704 2017-02-28 12:46:42 +0200 Sebastian Dröge * ext/gme/gstgme.c: gme: Remove useless comparison of unsigned integer with < 0 CID 206187 2017-02-28 12:34:30 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Check return value of gst_gl_context_check_framebuffer_status() CID 1401588 2017-02-28 12:31:54 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: gl: Add viv-fb to DIST_SUBDIRS to fix "make distcheck" 2017-02-28 10:53:04 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * ext/gl/gstglvideomixer.c: gl: Rename gst_gl_get_affine_transformation_meta_as_ndc_ext() to prevent symbol conflict The same symbol also exists in libgstgl, although marked as private and internal. This has no effect when doing static linking and there's a symbol conflict. 2017-02-28 10:50:23 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglutils_private.h: glutils: Mark private functions as G_GNUC_INTERNAL 2017-02-28 09:26:25 +0100 Edward Hervey * gst/mpegtsdemux/pesparse.c: mpegtsdemux: Fix wrong usage of '<<' operator Detected by GCC 7. Add comments for clarity https://bugzilla.gnome.org/show_bug.cgi?id=779333 2017-02-27 21:22:30 -0500 Nicolas Dufresne * gst/audiomixmatrix/meson.build: audiomixmatric: Add missing libm deps for meson 2017-02-27 10:32:45 -0300 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Include `interlace-mode` in caps Those are the rules: In the SPS: * if frame_mbs_only_flag=1 => all frame progressive * if frame_mbs_only_flag=0 => field_pic_flag defines if each frame is progressive or interlaced, thus the mode is 'mixed' in GStreamer terms. https://bugzilla.gnome.org/show_bug.cgi?id=779309 2017-02-14 11:09:46 -0300 Thibault Saunier * ext/iqa/iqa.c: iqa: Plug a leak allocating twice the same data 2017-02-27 19:13:11 +0200 Sebastian Dröge * pkgconfig/gstreamer-insertbin-uninstalled.pc.in: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-wayland-uninstalled.pc.in: pkg-config: Add both srcdir and builddir to the include path Just the build dir is not going to work for srcdir!=builddir. 2017-02-27 23:47:25 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtsparse.c: tsparse: Convert PCR values immediately Doing lazy conversion of PCR values doesn't work right when a PCR discont is encountered. Instead, convert PCR values to the continuous timestamp domain as soon as we encounter them and store that instead. 2017-02-22 14:55:58 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglupload.c: glupload: Add support for Vivante DirectTexture uploads Together with the upcoming gstreamer-imx patch, this allows zerocopy between imxvpudec and other elements and glimagesink. This is losely based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779067 2017-02-17 19:26:41 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/allocators/Makefile.am: * gst-libs/gst/allocators/badallocators.h: * gst-libs/gst/allocators/gstphysmemory.c: * gst-libs/gst/allocators/gstphysmemory.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-allocators-uninstalled.pc.in: * pkgconfig/gstreamer-bad-allocators.pc.in: allocators: Add GstPhysMemoryAllocator abstraction This can be used in a generic way as common interface by all platforms that, in one way or another, pass around physical memory addresses. https://bugzilla.gnome.org/show_bug.cgi?id=779067 2017-02-17 14:37:08 +0200 Sebastian Dröge * configure.ac: * ext/qt/gstqtglutility.cc: qml: Add support for Vivante EGL FS windowing system https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-02-17 12:24:58 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/viv-fb/Makefile.am: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.c: * gst-libs/gst/gl/viv-fb/gstgldisplay_viv_fb.h: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.c: * gst-libs/gst/gl/viv-fb/gstglwindow_viv_fb_egl.h: gl: Add support for Vivante EGL FB windowing system This is very similar to how dispmanx on the Raspberry Pi works. Based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/tree/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad https://bugzilla.gnome.org/show_bug.cgi?id=778825 2017-02-25 21:47:47 -0300 Edgard Lima * docs/plugins/inspect/plugin-neon.xml: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: * ext/voamrwbenc/gstvoamrwb.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/voamrwbenc/gstvoamrwbenc.h: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camera2.h: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.h: Update Edgard Lima's email https://bugzilla.gnome.org/show_bug.cgi?id=779230 2017-02-25 14:43:55 +0200 Sebastian Dröge * Makefile.am: * gst/rawparse/Makefile.am: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedaudioparse.h: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstunalignedvideoparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/meson.build: * gst/rawparse/plugin.c: * gst/rawparse/unalignedaudio.h: * gst/rawparse/unalignedvideo.h: * tests/check/Makefile.am: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Move to gst-plugins-base and keep legacy audioparse/videoparse here https://bugzilla.gnome.org/show_bug.cgi?id=774544 2017-02-24 15:59:44 +0200 Sebastian Dröge * meson.build: meson: Update version 2017-02-24 15:37:40 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.11.2 === 2017-02-24 15:07:38 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: Release 1.11.2 2017-02-24 12:53:00 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-02-24 12:46:06 +0200 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2017-02-24 01:28:35 +0200 Vivia Nikolaidou * gst/audiomixmatrix/meson.build: * gst/meson.build: * gst/timecode/meson.build: meson: Added meson.build for audiomixmatrix and timecode https://bugzilla.gnome.org/show_bug.cgi?id=779154 2017-02-22 14:09:45 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/gstglmemory.c: glmemory: Use glBlitFramebuffer() instead of glCopyTexImage2D() if available glBlitFramebuffer() is new GLES3/GL3 API. They are probably often implemented in terms of each other, and glBlitFramebuffer() can potentially be implemented more flexible. Let's use it if available. Also it actually works on imx6 with DirectVIV textures. Based on a patch by Haihua Hu from https://github.com/Freescale/meta-freescale/blob/master/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/ https://bugzilla.gnome.org/show_bug.cgi?id=779070 2017-01-16 19:36:07 +0200 Vivia Nikolaidou * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/audiomixmatrix/Makefile.am: * gst/audiomixmatrix/gstaudiomixmatrix.c: * gst/audiomixmatrix/gstaudiomixmatrix.h: * tests/examples/Makefile.am: * tests/examples/audiomixmatrix/Makefile.am: * tests/examples/audiomixmatrix/test-audiomixmatrix.c: audiomixmatrix: New element that mixes audio channels This element transforms a given number of input channels into a given number of output channels according to a given transformation matrix. The matrix coefficients must be between -1 and 1. In the auto mode, input/output channels are automatically negotiated and the transformation matrix is a truncated or zero-padded identity matrix. https://bugzilla.gnome.org/show_bug.cgi?id=777376 2017-02-22 22:31:17 +0100 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Remove clock-source property Remove clock-source property, because the GST clock usually starts at some random value and is thus uselsess for creating a timecode from it. https://bugzilla.gnome.org/show_bug.cgi?id=778703 2017-02-22 22:30:17 +0100 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: First timecode from current system time Add a new flag which automatically sets this first timecode to the current system time in local time zone. https://bugzilla.gnome.org/show_bug.cgi?id=778703 2017-02-22 22:26:57 +0100 Georg Lippitsch * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: First timecode property Add an new property to start from a given timecode instead of zero. https://bugzilla.gnome.org/show_bug.cgi?id=778703 2017-02-22 02:17:35 +0100 Mathieu Duponchelle * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: expose new properties. This gives the user more control over the gain control and experimental gain control behaviour. https://bugzilla.gnome.org/show_bug.cgi?id=779103 2017-02-17 16:09:53 +0530 Arun Raghavan * sys/bluez/gstavdtpsrc.c: bluez: Chain up to basesrc query instead of override pad query function Overriding the pad query function completely overrides all the default query handling implemented in basesrc, including caps etc. The correct thing to do is just override the basesrc query vfunc and then chain up for the queries we don't handle. 2017-02-20 18:58:11 +0200 Vivia Nikolaidou * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: audiobuffersplit: Add strict-buffer-size property If set to TRUE, any last audio samples too small to fill a buffer will be discarded. https://bugzilla.gnome.org/show_bug.cgi?id=779064 2017-01-30 11:04:32 +0100 Fabien Dessenne * ext/wayland/gstwaylandsink.c: waylandsink: consider buffer size when copying to wl shm pool When the sink receives a buffer that is neither a wl_shm one nor a dmabuf one, this buffer is copied to an internal wl_shm buffer before being sent to the display. In that case, the actual size of the received buffer (which may differ from the one negotiated in the caps) must be used. https://bugzilla.gnome.org/show_bug.cgi?id=777841 2017-02-17 21:25:21 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Fix GHashTable leak https://bugzilla.gnome.org/show_bug.cgi?id=778828 2017-02-18 20:18:50 +0200 Sebastian Dröge * gst/rawparse/gstrawbaseparse.c: * tests/check/elements/rawvideoparse.c: rawbaseparse: Drop incomplete frames at EOS See https://bugzilla.gnome.org/show_bug.cgi?id=773666 This would ideally be solved in baseparse but that requires further thought at this point, and in the meantime it would be good to have rawbaseparse not assert on this but handle it gracefully instead. 2017-02-16 20:08:35 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/meson.build: configure: Remove unused Mali EGL/fbdev_window support This existed a long time ago but there's no actual code for this anymore. 2017-02-15 19:07:32 +0000 Tim-Philipp Müller * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-mpegts-uninstalled.pc.in: pkgconfig: fix uninstalled .pc files for codecparsers + mpegts Really need to include the srcdir for codecparsers, and build dir for mpegts. 2017-02-14 23:00:06 +0000 Tim-Philipp Müller * Makefile.am: * win32/MANIFEST: Fix distcheck Don't use wildcards in Makefile.am, buildbot doesn't seem to like them. 2017-02-14 20:23:12 +0000 Tim-Philipp Müller * win32/common/photography-enumtypes.c: * win32/common/photography-enumtypes.h: win32: remove disted enumtypes files which are no longer used 2017-02-14 20:19:44 +0000 Tim-Philipp Müller * Makefile.am: * gst/mxf/meson.build: meson: dist meson build files Ship meson build files in tarballs, so people who use tarballs in their builds can start playing with meson already. 2017-02-14 13:04:01 +0100 Nick Kallen * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/videotexturecache.m: Builds for MacOS https://bugzilla.gnome.org/show_bug.cgi?id=778434 2017-02-10 11:32:23 +0100 Nick Kallen * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/videotexturecache.m: applemedia: free videotexturecache texture in gl thread The cached texture was treated as user_data passed to GstGLBaseMemory and freed with a GDestroyNotify function. However, this data must be treated specially: it must be destroyed in the GL thread. https://bugzilla.gnome.org/show_bug.cgi?id=778434 2017-02-10 10:29:49 -0300 Juan Pablo Ugarte * ext/gl/gstglsinkbin.c: GstGLSinkBin: fixed sink property leak No need to keep an extra reference to sink since an indirect one is added by gst_bin_add() https://bugzilla.gnome.org/show_bug.cgi?id=778452 2017-02-13 13:32:14 +0200 Sebastian Dröge * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: shm: Change example pipelines to something that actually works Enforce exactly the same raw video format on both sides, include a videoconvert and queue before the video sink and make the shm area a little bit bigger so that things don't get stuck. 2017-02-09 01:12:56 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Convert premature EOS on non-exposed pads to ERROR If we need to send EOS on a pad that hasn't prerolled, generate an error on the bus instead, otherwise the app will have no idea. Fixes the HLS testFragmentNotFound test, which is waiting for either EOS or an error. 2017-02-09 00:54:07 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle errors from prepared_streams too Check both active and prepared_streams when we receive an error on the bus, so we post errors for streams that are still pre-rolling 2017-02-09 00:16:33 +1100 Jan Schmidt * tests/check/elements/adaptive_demux_engine.c: adaptivedemux: Allow that 2017-02-08 22:59:49 +1100 Jan Schmidt * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: adaptivedemux: Fix tests for delayed pad exposure. Make the unit tests handle the fact that pads don't appear immediately. Before, the test assumed pads are exposed before the internal source element is created, which is no longer true. 2017-02-07 19:44:54 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Encoder output is generally not properly parsed Don't claim it is and let h264parse and other parsers do their job. https://bugzilla.gnome.org/show_bug.cgi?id=774772 2017-02-07 19:42:47 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Set timestamps on header buffers too https://bugzilla.gnome.org/show_bug.cgi?id=774772 2017-02-07 19:42:00 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Encoded H264 is generally not AU aligned Claiming that it is, can cause h264parse to skip some parsing steps and the output stays unaligned. https://bugzilla.gnome.org/show_bug.cgi?id=774772 2017-01-13 23:10:52 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix bitrate printed in debug The download bitrate is already in bits per second, no need to multiply it by 8 again when printing it for debug. 2017-01-11 12:34:58 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Redo typefind after stripping tags When stripping the ID3 header, redo typefinding so we set audio caps instead of still setting id3 caps and plugging a useless id3demux 2017-01-07 12:12:05 +0900 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Preroll streams before exposing them To ensure that pads have caps when they are exposed, do the exposing when all pending streams have prerolled an output buffer, and only then EOS and remove any old pads. Improves the switching sequence by making caps available as soon as a pad appears. With fixes from Seungha Yang https://bugzilla.gnome.org/show_bug.cgi?id=758257 2017-02-03 15:35:15 +0100 Nicola Murino * configure.ac: opencv: allow compilation against 3.2.0 https://bugzilla.gnome.org/show_bug.cgi?id=778142 2017-02-02 16:47:52 +0100 Fabien Dessenne * ext/wayland/wlwindow.c: waylandsink: set video surface opaque Unless the video format has an alpha component (ARGB, ...), set the video_surface opaque. In the usual case where the black area_surface has the same size as the video_surface (eg: run gst-play-1.0 video.mp4), this makes the black surface totally occluded which makes weston compositor's life easier since it can ignore that surface. Also unconditionally set the black area_surface opaque. https://bugzilla.gnome.org/show_bug.cgi?id=778078 2017-02-02 15:25:09 +0200 Vivia Nikolaidou * gst/timecode/gstavwait.c: avwait: Fix potential deadlock when flushing / shutting down audio The mutex must be unlocked in the error case https://bugzilla.gnome.org/show_bug.cgi?id=778076 2017-02-01 17:11:37 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Show video frames synchronously in PAUSED Otherwise we will only show the preroll frame once PLAYING is reached, which is rather suboptimal for e.g. seeking in PAUSED. 2017-02-01 16:45:53 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Do nothing if set_caps() is called with basically the same caps again and error out here already otherwise. We currently don't support reconfiguration here and it can't happen really either unless the auto mode is selected. 2017-02-01 15:13:32 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Fix get_caps returning EMPTY If get_caps is called before negotiation, channels_found will be 0 and therefore won't intersect with the template caps. https://bugzilla.gnome.org/show_bug.cgi?id=778028 2017-02-01 13:44:37 +0200 Sebastian Dröge * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdewarp.h: dewarp: Store C++ types as pointers in C structs Otherwise the destructor will never be called, and we would have to call the constructors manually at some point... which we never did, so calling release() on it before it got otherwise initialized caused a crash. For example when running gst-inspect-1.0. 2017-02-01 16:05:23 +1100 Matthew Waters * ext/vulkan/vkwindow.c: vkwindow: fix build error on i386 Vulkan handles are either pointers (64-bit) or 64-bit integer handles (32-bit). Cast the type in failure cases. vkwindow.c:229:561: error: return makes integer from pointer without a cast [-Werror=int-conversion] vkwindow.c:231:194: error: return makes integer from pointer without a cast [-Werror=int-conversion] https://bugzilla.gnome.org/show_bug.cgi?id=777979 2017-02-01 14:44:32 +1100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Add stream-format to the H.264 caps. H.264 in MPEG-PS is always byte-stream 2017-02-01 14:37:29 +1100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Add extra length checks to TS scanning. Add some missing size checks to the timestamp scanning fast path. 2017-02-01 14:25:32 +1100 Jan Schmidt * gst/mpegdemux/Makefile.am: * gst/mpegdemux/gstmpegdemux.c: psdemux: Rewrite PSM parsing using GstByteReader Avoid possible buffer overflows and ignore invalid PSM packets better by using GstByteReader. https://bugzilla.gnome.org/show_bug.cgi?id=777957 2017-01-27 19:26:06 +0200 Sebastian Dröge * sys/decklink/meson.build: decklink: Add to the meson Windows build 2017-01-27 19:24:03 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix indentation 2017-01-27 19:23:48 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix compilation on Windows by properly using COM strings there 2017-01-27 19:15:28 +0200 Axel Menzel * sys/decklink/gstdecklink.cpp: decklink: Fix compilation with MSVC 2017-01-27 19:11:02 +0200 Sebastian Dröge * sys/decklink/gstdecklink.h: decklink: Include stdint.h for int32_t, etc as needed by the Decklink headers 2017-01-27 19:09:13 +0200 Sebastian Dröge * sys/decklink/win/DeckLinkAPI.h: decklink: Add "extern C" forward declaration for CreateDeckLinkIteratorInstance() 2017-01-27 19:03:33 +0200 Axel Menzel * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPIDispatch.cpp: * sys/decklink/win/DeckLinkAPI_i.c: decklink: Update Windows SDK to a newer version 2017-01-01 14:06:28 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle SEEK event only once send_event() of parent class (i.e., GstBinClass) iterates srcpads to send SEEK event. And performing it per srcpad is inefficient. So, let's drop duplicated SEEK event by checking seqnum https://bugzilla.gnome.org/show_bug.cgi?id=776612 2017-01-27 08:38:28 +0900 Seungha Yang * tests/check/elements/hlsdemux_m3u8.c: tests: hlsdemux: Fix live startup sequence and seek range To satisfy follwing restriction of HLS spec 6.3.3, select startup fragment sequence to 4th from end of playlist. Also, seek range should exclude last three fragment in playlist. "the client SHOULD NOT choose a segment which starts less than three target durations from the end of the Playlist file." https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-27 08:50:10 +0900 Seungha Yang * ext/hls/m3u8.c: hls: m3u8: Set sequence position for live hls live starts playback from the allowed latest fragment, but its "sequence position" is set to zero, and so stream time is also set to zero. This does not make sense, because hls live allows seeking to past position, and it's negative stream time from downstream element's point of view. Note that, allowed seekable range (and seeking query) is from the first fragment of playlist to the allowed latest fragment. https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-24 21:32:13 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: hls: Exclusion of last three fragment in case of live playback HLS spec 6.3.3 is saying that "the client SHOULD NOT choose a segment which starts less than three target durations from the end of the Playlist file." To ensure above statement, the third fragment from the end of playlist should be excluded from seekable range and also from available starting fragment. (i.e., the fourth fragment from end of playlist is the starting fragment). https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-24 20:21:19 +0900 Seungha Yang * ext/hls/gsthlsdemux.c: hlsdemux: Consider timestamp of the first fragment in playlist when live seeking During live playback, the first fragment in a updated playlist can be advanced from that of startup playlist. Meanwhile, since hlsdemux finds target seek position by just accumulating fragment's duration, the base should be adjusted to the updated first fragment's timestamp. https://bugzilla.gnome.org/show_bug.cgi?id=777682 2017-01-30 11:17:53 +0100 Nicola Murino * ext/opencv/gstmotioncells.cpp: motioncells: fix mingw build https://bugzilla.gnome.org/show_bug.cgi?id=777930 2017-01-27 18:11:15 +0200 Sebastian Dröge * sys/applemedia/plugin.m: * sys/applemedia/vtenc.c: applemedia: Fix some compiler warnings on iOS 2017-01-27 17:24:20 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Fix compilation on OSX 15:18:47 gstdecklinkaudiosrc.cpp:745:45: error: cannot initialize a parameter of type 'int64_t *' (aka 'long long *') with an rvalue of type 'gint64 *' (aka 'long *') 15:18:47 (BMDDeckLinkMaximumAudioChannels, &self->channels_found); 15:18:47 ^~~~~~~~~~~~~~~~~~~~~ 15:18:47 ./linux/DeckLinkAPI.h:970:87: note: passing argument to parameter 'value' here 15:18:47 virtual HRESULT GetInt (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ int64_t *value) = 0; 15:18:47 ^ 2017-01-25 13:06:28 +0200 Vivia Nikolaidou * gst/timecode/Makefile.am: * gst/timecode/gstavwait.c: * gst/timecode/gstavwait.h: * gst/timecode/plugin.c: avwait: Rename timecodewait to avwait, add modes Renamed timecodewait to avwait. Added running-time and video-first modes. Default mode is timecode (the previous behaviour). https://bugzilla.gnome.org/show_bug.cgi?id=777741 2017-01-18 17:53:00 +0200 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Option to use max channels supported by device Query the device for the maximum number of channels supported and have an option to use that. Default is still 2. https://bugzilla.gnome.org/show_bug.cgi?id=777458 2017-01-26 15:35:11 +0200 Sebastian Dröge * sys/applemedia/glcontexthelper.c: applemedia: Fail cleanly instead of crashing if obtaining a GL display failed https://bugzilla.gnome.org/show_bug.cgi?id=777742 2017-01-26 19:52:07 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: vkimagememory: use the correct enum for RGB16/BGR16 formats vkimagememory.c:64:14: warning: implicit conversion from enumeration type 'GstVideoGLTextureType' to different enumeration type 'VkFormat' (aka 'enum VkFormat') [-Wenum-conversion] return GST_VIDEO_GL_TEXTURE_TYPE_RGB16; https://bugzilla.gnome.org/show_bug.cgi?id=777760 2017-01-25 20:54:35 +0200 Sebastian Dröge * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: Fix compiler warning with clang gstmpeg2enc.cc:224:5: warning: variable 'n' is incremented both in the loop header and in the loop body [-Wfor-loop-analysis] n++; ^ gstmpeg2enc.cc:221:29: note: incremented here for (n = 0; fpss[n] != 0; n++) { ^ 2017-01-25 20:48:58 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix compiler warning with clang gstdecklink.cpp:821:11: warning: variable 'dtc' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized] if (m_input->videosrc) { ^~~~~~~~~~~~~~~~~ gstdecklink.cpp:837:41: note: uninitialized use occurs here stream_time, stream_duration, dtc, no_signal); ^~~ gstdecklink.cpp:821:7: note: remove the 'if' if its condition is always true if (m_input->videosrc) { ^~~~~~~~~~~~~~~~~~~~~~~ gstdecklink.cpp:810:29: note: initialize the variable 'dtc' to silence this warning IDeckLinkTimecode *dtc; ^ = NULL 2017-01-25 19:21:03 +0200 Sebastian Dröge * ext/qt/Makefile.am: qt: The code requires at least C++11 ... and clang requires this to be specified on the commandline while gcc nowadays defaults to C++11 or even newer. 2017-01-24 23:10:19 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Set caps/tags in the GstStream object before pushing the stream-start event Otherwise downstream will get a more or less empty GstStream although we already know a lot about it at this point. 2017-01-24 14:39:35 +0000 Tim-Philipp Müller * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264: add "qp-min" and "qp-max" properties 2017-01-20 07:45:43 +0100 Lars Wendler * configure.ac: iqa: Move AM_CONDITIONAL(HAVE_DSSIM) outside of the iqa check block or else configure fails with error: conditional "HAVE_DSSIM" was never defined. when iqa is not installed. https://bugzilla.gnome.org/show_bug.cgi?id=777652 2017-01-23 12:12:06 -0300 Thibault Saunier * gst-libs/gst/gl/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/player/meson.build: * meson.build: * meson_options.txt: meson: Build GIR files 2017-01-23 15:10:40 +0200 Sebastian Dröge * pkgconfig/gstreamer-bad-audio.pc.in: * pkgconfig/gstreamer-bad-base.pc.in: * pkgconfig/gstreamer-bad-video.pc.in: pkg-config: Directly link the library with -l instead of the .la file Which might not exist, like on most modern Linux distributions. 2017-01-20 11:11:50 -0800 Scott D Phillips * sys/msdk/gstmsdkdec.c: msdk: Propagate GstFlowReturn values In some places a GST_FLOW_FLUSHING result was return as a FALSE gboolean and then returned from a parent function as GST_FLOW_ERROR. This prevented seeking from working. https://bugzilla.gnome.org/show_bug.cgi?id=776360 2017-01-20 16:44:42 +0100 Stefan Sauer * configure.ac: * docs/plugins/scanobj-build.stamp: * ext/fdkaac/gstfdkaacenc.c: fdk-aac: fix version number As pointed out on irc, the version was menat to be 0.1.4. 2017-01-20 14:34:10 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't leak pad name and template for Opus It's set again (the same way) further below, overwriting the previously allocated memory without freeing. https://bugzilla.gnome.org/show_bug.cgi?id=777533 2017-01-20 07:51:09 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Set stream tags to NULL after unreffing Otherwise we might try to unref them a second time a little bit later. https://bugzilla.gnome.org/show_bug.cgi?id=777503 2017-01-05 19:10:52 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Detect media sequence number inconsistencies and fail Without failing, we would play back random parts of the stream which is arguably a worse user experience, and failing is also recommended by the spec here. And also handle live streams without any media sequence numbers at all properly, that is, make sure the sequence numbers are increasing instead of starting again at 0 every time. https://bugzilla.gnome.org/show_bug.cgi?id=775665 2017-01-17 22:27:46 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Do pending seek when SIDX is found Parsing SIDX box was allowed even if "indexRange" attribute does not appear for On-Demand profile. However, actual seeking using SIDX index did not happen since download loop keep working on. To use SIDX index in that case, demux should try it in the next download loop. https://bugzilla.gnome.org/show_bug.cgi?id=777394 2017-01-17 10:33:03 +0800 WeiChungChang * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Fix issue when manifest update sets slow start without passing necessary header & caps changes downstream https://bugzilla.gnome.org/show_bug.cgi?id=777206 2017-01-18 15:03:48 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: ensure caps are writable after intersection gst_caps_intersect () may return an increased reference of one of the input caps. Fixes critical in the simple-launch-lines test: Unexpected critical/warning: gst_caps_set_features: assertion 'IS_WRITABLE (caps)' failed 2017-01-18 11:05:21 +1100 Jan Schmidt * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: Handle vob display rect starting on an odd line DVDs always have subpictures that start on an even Y coordinate, but gstspu does more generic vobsubs these days, so handle ones that start on an odd vertical position. https://bugzilla.gnome.org/show_bug.cgi?id=777400 2016-12-27 17:13:58 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * win32/common/libgstplayer.def: player: Add support for selecting a specific video sink - Add overlay video renderer "video-sink" property, so that can be set - In create_video_sink, it returns video sink instead of always NULL - Add new renderer_new_with_sink() API to set video sink https://bugzilla.gnome.org/show_bug.cgi?id=776490 2017-01-17 13:07:57 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer-media-info.c: player: Add missing documentation for deprecated functions 2017-01-10 16:38:21 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * win32/common/libgstplayer.def: player: Add get video snapshot API Add get video snapshot API: gst_player_get_video_snapshot() https://bugzilla.gnome.org/show_bug.cgi?id=773709 2017-01-12 16:14:57 +0100 Edward Hervey * ext/dash/gstmpdparser.c: mpdparser: Fix compilation with GST_DISABLE_GST_DEBUG 2017-01-13 14:46:12 +0100 Edward Hervey * sys/androidmedia/gstamcvideodec.c: androidmedia: Use proper instance name 2017-01-13 12:39:21 +0000 Tim-Philipp Müller * meson.build: meson: bump version 2017-01-13 21:17:33 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amcvideodec: fix build error from change in libgstgl gstamcvideodec.c: In function 'gst_amc_video_dec_src_query': gstamcvideodec.c:2412:55: error: 'self' undeclared (first use in this function) if (gst_gl_handle_context_query ((GstElement *) self, query, 2017-01-13 12:49:37 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/Makefile.am: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/glcontexthelper.c: gl: update sys dependants for function removals 4315a4b54d9 forgot to change the androidmedia/videotoolbox/caopengllayer sources as required. 2017-01-11 10:37:34 -0300 Juan Pablo Ugarte * gst-libs/gst/gl/gstglslstage.c: glslstage: define GL constants if needed instead of using #ifdef https://bugzilla.gnome.org/show_bug.cgi?id=777144 2017-01-11 10:32:23 -0300 Juan Pablo Ugarte * tests/examples/gtk/glliveshader.c: gl/examples/gtk: fixed compilation on systems without GL_GEOMETRY_SHADER https://bugzilla.gnome.org/show_bug.cgi?id=777143 2017-01-13 11:08:10 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglutils.c: glutils: document functions 2017-01-13 11:06:39 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glutils: privatise matrix multiplication/videoaffinetransformation retrieval 2017-01-12 21:35:25 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglutils.h: * ext/gtk/gstgtkglsink.c: * ext/qt/gstqtsink.cc: * ext/qt/gstqtsrc.cc: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglutils_private.h: gl/utils: also take care of the local GL context in query functions Simplifies a deduplicates a lot of code in elements retrieving/setting the local OpenGL context. 2017-01-12 01:57:29 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: remove trivial helper function gst_gl_caps_replace_all_caps_features() is only used in two places and can be trivially reproduced. 2017-01-11 16:09:31 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/docs: add symbols from -unused.txt 2017-01-11 16:09:03 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: gl/docs: some type fixes of type names 2017-01-12 16:32:49 +0200 Sebastian Dröge * configure.ac: Back to development 2017-01-12 15:55:52 +0200 Sebastian Dröge * configure.ac: * ext/opencv/meson.build: opencv: Fix build with OpenCV < 3 We only need the opencv2/bgsegm.hpp header for OpenCV >= 3 and have compat code for older versions. 2017-01-12 15:38:18 +0200 Sebastian Dröge * ext/ttml/Makefile.am: ttml: Link with -lm for round() === release 1.11.1 === 2017-01-12 15:39:06 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: Release 1.11.1 2017-01-12 14:42:29 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2017-01-12 14:36:46 +0200 Sebastian Dröge * po/da.po: * po/de.po: * po/fr.po: * po/hr.po: * po/id.po: * po/ky.po: * po/nb.po: * po/pl.po: * po/ru.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2017-01-10 15:45:26 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/nalutils.c: codecparsers: remove problematic 'extern inline' 'extern inline' was added in 2fb76c89 for MSVC (it was just 'inline' before), but all of this doesn't really make sense, the functions are not going to be inlined anyway, and what 'extern inline' means exactly also appears to depend on the Cxx standard targetted. Let's just remove the 'extern inline' entirely. At least gcc6 still emits the exact same code as before anyway. Fixes compilation/linking with gcc 4.8 as used on L4T on the TK1. 2017-01-10 08:26:04 -0700 Matt Staples * gst/jpegformat/gstjpegparse.c: jpegparse: Chain up to parent class' sink event handler Call base class's sink_event handler after handling GST_EVENT_FLUSH_STOP event, so that base class doesn't get stuck in a 'flushing' state https://bugzilla.gnome.org/show_bug.cgi?id=777097 2017-01-10 16:27:28 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Use a simple queue instead of queue2 The reason we previously used queue2 was to calculate the download rate, but that wasn't entirely correct and we therefore calculate it before queue2. We therefore now just need a simple queue. 2016-11-11 08:44:59 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Remove unneeded variables We now have properly non-blocking download time calculation 2017-01-10 16:54:48 +0800 Haihua Hu * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: qmlglsrc: use glBlitFramebuffer to copy texture for GLES3.0 If support glBlitFrameBuffer, use it for texture copy instead of glCopyTexImage2D https://bugzilla.gnome.org/show_bug.cgi?id=777078 2017-01-10 20:07:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: use the same parameter names between vfuncs and functions of the same name Silences GI warnings about symbol's not being used from source code comment block 2017-01-10 20:06:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.h: glbasememory: type fix for GstGLBaseMemoryAllocatorAllocFunction 2017-01-10 20:05:42 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: add missing transfer annotations 2017-01-10 20:04:30 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglquery.c: gl: add skip annotations to non-GI possible struct constructors 2017-01-10 20:03:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.h: glbasememory: remove unused and #if 0'ed function definitions 2017-01-10 19:58:48 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: add necessary get_type() functions for allocation params structures All using the existing GstGLAllocationParams infrastructure 2017-01-10 19:55:43 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: gl/docs/sections.txt: remove non-existant symbols 2017-01-10 15:35:52 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: some annotation updates/typo fixes 2017-01-10 14:29:46 +1100 Matthew Waters * gst-libs/gst/gl/gl.h: gl: remove reference to non-existant header ../../../../gst-libs/gst/gl/gl.h:57:45: fatal error: gst/gl/gstglcontrolbindingproxy.h: No such file or directory #include ^ 2017-01-10 12:51:51 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglsinkbin.c: * ext/gl/gstglvideomixer.c: * ext/gl/meson.build: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglcontrolbindingproxy.c: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: * gst-libs/gst/gl/meson.build: gl: remove custom control binding proxy Use the existing GstProxyControlBinding instead. 2016-11-17 17:15:55 +1100 Matthew Waters * configure.ac: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: * pkgconfig/meson.build: gl/pkg-config: add the configured platform/api/winsys Allows users to query this from pkg-config instead of requiring them to compile mini programs checking defines in gstglconfig.h 2016-11-18 01:06:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.h: gl: remove unneeded gst_gl_buffer_alloc from header file There's no implementation anymore! 2016-11-17 18:00:39 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: gl/egl: remove use of texture orientation 2016-11-17 17:51:54 +1100 Matthew Waters * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: gl/pkg-config: don't advertise all our dependent libraries as deps If an application/library explicitly needs a library, it needs to link against it itself. 2017-01-09 17:53:38 +0200 Vivia Nikolaidou * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: timecodestamper: Post element message with current timecode timecodestamper will post an element message which contains the current timecode it just stamped. If a timecode was already found and not replaced, it will still post it in a message. https://bugzilla.gnome.org/show_bug.cgi?id=777048 2017-01-05 15:41:06 +0200 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Do not append a zero timecode if none is found on the source If the source doesn't give us timecode information, do not append a zero timecode to the frames. https://bugzilla.gnome.org/show_bug.cgi?id=776900 2017-01-10 01:00:12 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext/egl: don't overwrite set GError Doing so is an error and will cause a glib warning to be printed. https://bugzilla.gnome.org/show_bug.cgi?id=776722 2017-01-05 20:45:15 +0000 Tim-Philipp Müller * sys/decklink/meson.build: meson: decklink: fix plugin filename 2017-01-05 20:34:14 +0000 Tim-Philipp Müller * meson.build: * sys/decklink/meson.build: * sys/meson.build: meson: build decklink plugin 2017-01-05 12:34:39 -0300 Thibault Saunier * pkgconfig/meson.build: meson: Do not use gstwayland variable when not set 2017-01-05 12:31:14 -0300 Thibault Saunier * pkgconfig/meson.build: meson: Generate the wayland pc file when needed 2017-01-05 11:25:13 -0300 Thibault Saunier * pkgconfig/meson.build: meson: Do not try to use unset gstgl if gstgl is not built 2017-01-05 15:05:07 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcaudiodec.c: androidmedia: Add support for Opus in the decoder 2017-01-05 15:00:21 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Silently skip COLOR_FormatAndroidOpaque when converting to caps This is special and handled in the decoder when doing rendering to a surface. Printing a warning for this is just unnecessary noise 2017-01-04 16:51:10 +0100 Guillaume Desmottes * pkgconfig/Makefile.am: * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-base-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-insertbin-uninstalled.pc.in: * pkgconfig/gstreamer-mpegts-uninstalled.pc.in: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-wayland-uninstalled.pc.in: * pkgconfig/meson.build: meson: generate pkg-config -uninstalled pc files Generating those files is useful for users building the GStreamer stack using meson and having to link it to another project which is still using the autotools. While doing so, fix some -uninstalled pc files which were using a suspicious 'pcfiledir' which was never replaced or defined. https://bugzilla.gnome.org/show_bug.cgi?id=776810 2016-12-09 17:48:52 -0300 Thibault Saunier * meson.build: meson: Support building without Gst debug 2017-01-04 20:59:39 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Add support for VP9 2017-01-03 18:53:39 +0200 Sebastian Dröge * sys/androidmedia/gstjniutils.c: androidmedia: Actively request the Java VM from the application This is more consistent with how we already request the application class loader and other application resources elsewhere. 2017-01-03 17:31:03 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix indentation 2017-01-03 17:30:07 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Add support for 8/16 channels via property These are unpositioned channel layouts. 2017-01-03 09:02:36 +0530 Garima Gaur * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcvsmooth.cpp: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rsrc.c: * sys/applemedia/vtenc.c: * sys/vdpau/gstvdpvideopostprocess.c: Fix some caps leaks in pad template creation code gst_pad_template_new() does not take ownership of the caps passed to it, so we need to unref the caps. https://bugzilla.gnome.org/show_bug.cgi?id=776790 https://bugzilla.gnome.org/show_bug.cgi?id=776787 2016-12-08 10:22:23 +0100 Fabien Dessenne * ext/wayland/gstwaylandsink.c: waylandsink: fix display re-connection (redraw pending) Reset redraw_pending at display disconnection, so we can re-connect later from a clean state (avoid endless buffer drops). Add a log to inform of dropped buffers. https://bugzilla.gnome.org/show_bug.cgi?id=775791 2016-12-14 10:37:14 +0100 Nicola Murino * ext/opencv/Makefile.am: * ext/opencv/gstdewarp.cpp: * ext/opencv/gstdewarp.h: * ext/opencv/gstopencv.cpp: * ext/opencv/meson.build: opencv: add dewarp plugin new plugin that dewarp fisheye images https://bugzilla.gnome.org/show_bug.cgi?id=776047 2017-01-02 21:05:55 +0100 Fabrice Bellet * ext/x265/gstx265enc.c: x265: fix a minor string leak https://bugzilla.gnome.org/show_bug.cgi?id=776727 2016-12-31 20:57:54 +0100 Fabrice Bellet * gst/autoconvert/gstautoconvert.c: autoconvert: fix a reconfigure event leak https://bugzilla.gnome.org/show_bug.cgi?id=776726 2017-01-02 19:56:40 +0530 Arun Raghavan * config.h.meson: * sys/meson.build: * sys/uvch264/meson.build: uvch264src: Add meson build support 2017-01-02 19:55:34 +0530 Arun Raghavan * sys/uvch264/gstuvch264_src.c: uvch264src: Fix wrong argument order to force-key-unit event CID 1373421 2017-01-02 14:52:29 +0100 Edward Hervey * tests/check/elements/h264parse.c: * tests/check/elements/rtponvifparse.c: * tests/check/libs/player.c: check: Use gst_check_run_suite Ensures that xunit reports get generated when requested 2017-01-02 17:50:02 +0530 Arun Raghavan * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: Fix minor use after free reference Just a matter of reordering a g_free() /after/ cleaning out all the members. CID 1396746 2015-03-11 21:54:01 +0100 Nicola Murino * gst/videosignal/gstvideoanalyse.c: videoanalyse: update docs https://bugzilla.gnome.org/show_bug.cgi?id=746018 2016-12-29 18:56:43 +0000 Ursula Maplehurst * sys/androidmedia/Makefile.am: androidmedia: some files are missing in the release tarball https://bugzilla.gnome.org/show_bug.cgi?id=776591 2016-12-28 13:52:50 +0100 Mark Nauwelaerts * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: determine intra of frame at frame parse time ... rather than when determining when to end the frame. The opportunity to do so might not come when forced to drain, and it seems nicer anyway to do so at parse wrapup time. 2016-12-24 08:42:51 +0200 Sebastian Dröge * tests/check/elements/dash_isoff.c: dash: Define debug category used in the isoff code for the test too now 2016-12-24 14:31:12 +0900 Seungha Yang * ext/dash/gstisoff.c: dash: Include debug of gstisoff on dashdemux category Move debug category of gstisoff from default to dashdemux https://bugzilla.gnome.org/show_bug.cgi?id=776461 2016-12-23 13:27:42 +0200 Sebastian Dröge * gst/audiobuffersplit/gstaudiobuffersplit.c: audiobuffersplit: Don't try to output anything if samples_per_buffer == 0 This happens if we had no CAPS event yet but e.g. got an EOS event. We would then try to output a 0-sized buffer, but getting that from the adapter will give an assertion, return NULL and then crash. 2016-12-23 15:41:57 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Add first_offset of sidx box to base offset sidx has "first_offset" syntax which represents the distance in bytes from anchor point to media fragment. If present, we should adjust sidx_base_offset. https://bugzilla.gnome.org/show_bug.cgi?id=776431 2016-12-23 15:31:34 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Ensure sidx parsing when updating fragment info Fix seek fail with On-Demand profile mpd which has no indexRange attribute https://bugzilla.gnome.org/show_bug.cgi?id=776431 2016-12-22 11:48:05 -0500 Stepan Salenikovich * configure.ac: configure: improve QPA check for cross compilation Prefix the $QPA_INCLUDE_PATH with $PKG_CONFIG_SYSROOT_DIR just like when checking for opencv dir. https://bugzilla.gnome.org/show_bug.cgi?id=776399 2016-12-22 16:08:30 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: dvb: move adapter number set-up by way of environment to dvbsrc This logic did not belong to the channel configuration parser (only used by dvbbasebin) but to dvbsrc, which is the element directly using this value and honoring the "adapter" property. Allows previously non-working cases like this to work: GST_DVB_ADAPTER=1 gst-launch-1.0 dvbsrc delsys=11 modulation=7 frequency=689000000 ! fakesink 2016-12-22 13:42:59 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb: parsechannels: replace missleadign error message Possible failure cases also include not finding the requested channel. 2016-12-12 17:05:53 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add DTV_STREAM_ID to the >= v8 (minor) group Drop redundant comment while at it. 2016-12-21 23:24:48 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Drain remaining buffer in adapter Previous patch allows sidx box parsing from incoming buffers. Since the incoming buffer boundary might be over sidx box, there can be remaining buffer in isobmff parser adapter. https://bugzilla.gnome.org/show_bug.cgi?id=776352 2016-12-21 13:31:18 +0200 Sebastian Dröge * configure.ac: configure: Remove left-over file 2016-12-21 12:05:35 +0100 Edward Hervey * tests/check/libs/player.c: check: Use non-deprecated API 2016-12-21 11:38:11 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * win32/common/libgstplayer.def: player: Add deprecated compatibility functions for the audio/video/subtitle stream getters 2016-12-21 11:32:52 +0200 Sebastian Dröge * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer.c: * win32/common/libgstplayer.def: player: Move audio/video/subtitle stream list getters into the correct namespace 2016-12-20 18:20:02 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * win32/common/libgstplayer.def: player: Add get track number media info API https://bugzilla.gnome.org/show_bug.cgi?id=773570 2016-12-21 11:00:47 +0200 Sebastian Dröge * config.h.meson: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.signals: * ext/Makefile.am: * ext/apexsink/LGPL-3.0.txt: * ext/apexsink/Makefile.am: * ext/apexsink/gstapexplugin.c: * ext/apexsink/gstapexraop.c: * ext/apexsink/gstapexraop.h: * ext/apexsink/gstapexsink.c: * ext/apexsink/gstapexsink.h: * ext/libvisual/Makefile.am: * ext/libvisual/visual-gl.c: * ext/meson.build: * ext/nas/Makefile.am: * ext/nas/nassink.c: * ext/nas/nassink.h: * ext/sdl/Makefile.am: * ext/sdl/gstsdl.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.c: * ext/sdl/sdlvideosink.h: * ext/sndio/Makefile.am: * ext/sndio/gstsndio.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosink.h: * ext/sndio/sndiosrc.c: * ext/sndio/sndiosrc.h: * ext/timidity/gsttimidity.c: * ext/timidity/gsttimidity.h: * ext/wildmidi/Makefile.am: * ext/wildmidi/README: * ext/wildmidi/gstwildmidi.c: * ext/wildmidi/gstwildmidi.h: * ext/xvid/Makefile.am: * ext/xvid/gstxvid.c: * ext/xvid/gstxvid.h: * ext/xvid/gstxviddec.c: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.c: * ext/xvid/gstxvidenc.h: * gst/audiobuffer/Makefile.am: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiobuffer/meson.build: * gst/cdxaparse/Makefile.am: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstvcdparse.c: * gst/cdxaparse/gstvcdparse.h: * gst/cdxaparse/meson.build: * gst/dccp/Makefile.am: * gst/dccp/gstdccp.c: * gst/dccp/gstdccp.h: * gst/dccp/gstdccp_common.h: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsink.h: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpclientsrc.h: * gst/dccp/gstdccpplugin.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversink.h: * gst/dccp/gstdccpserversrc.c: * gst/dccp/gstdccpserversrc.h: * gst/dccp/meson.build: * gst/faceoverlay/Makefile.am: * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: * gst/faceoverlay/meson.build: * gst/games/Makefile.am: * gst/games/gstpuzzle.c: * gst/games/gstvideoimage.c: * gst/games/gstvideoimage.h: * gst/games/meson.build: * gst/hdvparse/Makefile.am: * gst/hdvparse/gsthdvparse.c: * gst/hdvparse/gsthdvparse.h: * gst/hdvparse/meson.build: * gst/meson.build: * gst/mixmatrix/Makefile.am: * gst/mixmatrix/meson.build: * gst/mixmatrix/mixmatrix.c: * gst/mve/Makefile.am: * gst/mve/TODO: * gst/mve/gstmve.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvedemux.h: * gst/mve/gstmvemux.c: * gst/mve/gstmvemux.h: * gst/mve/meson.build: * gst/mve/mve.h: * gst/mve/mveaudiodec.c: * gst/mve/mveaudioenc.c: * gst/mve/mvevideodec16.c: * gst/mve/mvevideodec8.c: * gst/mve/mvevideoenc16.c: * gst/mve/mvevideoenc8.c: * gst/nuvdemux/Makefile.am: * gst/nuvdemux/gstnuvdemux.c: * gst/nuvdemux/gstnuvdemux.h: * gst/nuvdemux/meson.build: * gst/overlay/Makefile.am: * gst/overlay/gstoverlay.c: * gst/overlay/gstoverlay.h: * gst/overlay/meson.build: * gst/patchdetect/Makefile.am: * gst/patchdetect/gstpatchdetect.c: * gst/patchdetect/gstpatchdetect.h: * gst/patchdetect/meson.build: * gst/rtjpeg/.gitignore: * gst/rtjpeg/Makefile.am: * gst/rtjpeg/README: * gst/rtjpeg/RTjpeg.c: * gst/rtjpeg/RTjpeg.h: * gst/rtjpeg/gstrtjpeg.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.c: * gst/rtjpeg/gstrtjpegenc.h: * gst/rtjpeg/meson.build: * gst/sdi/Makefile.am: * gst/sdi/gstsdi.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdidemux.h: * gst/sdi/gstsdimux.c: * gst/sdi/gstsdimux.h: * gst/sdi/meson.build: * gst/tta/Makefile.am: * gst/tta/crc32.h: * gst/tta/filters.h: * gst/tta/gsttta.c: * gst/tta/gstttadec.c: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.c: * gst/tta/gstttaparse.h: * gst/tta/meson.build: * gst/tta/ttadec.h: * gst/vbidec/Makefile.am: * gst/vbidec/gstvbidec.c: * gst/vbidec/gstvbidec.h: * gst/vbidec/meson.build: * gst/vbidec/vbidata.c: * gst/vbidec/vbidata.h: * gst/vbidec/vbiscreen.c: * gst/vbidec/vbiscreen.h: * meson.build: * po/POTFILES.in: * po/POTFILES.skip: * sys/Makefile.am: * sys/avc/Makefile.am: * sys/avc/gstavcplugin.cpp: * sys/avc/gstavcsrc.cpp: * sys/avc/gstavcsrc.h: * sys/dxr3/.gitignore: * sys/dxr3/Makefile.am: * sys/dxr3/ac3_padder.c: * sys/dxr3/ac3_padder.h: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3common.h: * sys/dxr3/dxr3init.c: * sys/dxr3/dxr3marshal.list: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.c: * sys/dxr3/dxr3videosink.h: * sys/linsys/Makefile.am: * sys/linsys/gstlinsys.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisink.h: * sys/linsys/gstlinsyssdisrc.c: * sys/linsys/gstlinsyssdisrc.h: * sys/linsys/include/asi.h: * sys/linsys/include/master.h: * sys/linsys/include/sdi.h: * sys/linsys/include/sdiaudio.h: * sys/linsys/include/sdivideo.h: * sys/meson.build: * sys/pvr2d/Makefile.am: * sys/pvr2d/gstpvr.c: * sys/pvr2d/gstpvr.h: * sys/pvr2d/gstpvrbufferpool.c: * sys/pvr2d/gstpvrbufferpool.h: * sys/pvr2d/gstpvrvideosink.c: * sys/pvr2d/gstpvrvideosink.h: * sys/pvr2d/pvr_includes/dri2_ws.h: * sys/pvr2d/pvr_includes/img_defs.h: * sys/pvr2d/pvr_includes/img_types.h: * sys/pvr2d/pvr_includes/pvr2d.h: * sys/pvr2d/pvr_includes/services.h: * sys/pvr2d/pvr_includes/servicesext.h: * sys/pvr2d/pvr_includes/wsegl.h: * sys/qcam/Makefile.am: * sys/qcam/dark.c: * sys/qcam/exposure.c: * sys/qcam/gstqcamsrc.c: * sys/qcam/gstqcamsrc.h: * sys/qcam/qcam-Linux.c: * sys/qcam/qcam-Linux.h: * sys/qcam/qcam-lib.c: * sys/qcam/qcam-os.c: * sys/qcam/qcam-os.h: * sys/qcam/qcam.h: * sys/qcam/qcamip.h: * sys/wininet/Makefile.am: * sys/wininet/gstwininetsrc.c: * sys/wininet/gstwininetsrc.h: * tests/check/Makefile.am: * tests/check/elements/timidity.c: * tests/icles/dccp/README: * tests/icles/dccp/call/DCCPClient.c: * tests/icles/dccp/call/DCCPServer.c: * tests/icles/dccp/call/README: * tests/icles/dccp/file/DCCPClientSaveFile.c: * tests/icles/dccp/file/DCCPServerSendFile.c: * tests/icles/dccp/mic/DCCPClientPlayMic.c: * tests/icles/dccp/mic/DCCPServerMic.c: * tests/icles/dccp/mp3/DCCPClientPlayMP3.c: * tests/icles/dccp/mp3/DCCPServerSendMP3.c: * tests/icles/dccp/mp3Speex/DCCPClientPlaySpeexMP3.c: * tests/icles/dccp/mp3Speex/DCCPServerSendSpeexMP3.c: * tests/icles/dccp/mp3Stream/DCCPClientPlayMP3Stream.c: * tests/icles/dccp/mp3Stream/DCCPServerSendMP3Stream.c: Remove various unported plugins If they were not ported after 4+ years it seems unlikely that anybody is ever going to need them again. They're still in the GIT history if needed. https://bugzilla.gnome.org/show_bug.cgi?id=774530 2016-12-21 13:41:16 +0530 Garima Gaur * gst/sdp/gstsdpdemux.c: * sys/dvb/dvbbasebin.c: gst: Fix memory leaks in usage of gst_element_get_request_pad() API The return value has to be unreffed at some point. https://bugzilla.gnome.org/show_bug.cgi?id=776334 2016-12-20 15:45:12 -0600 Daniel Garbanzo * tools/Makefile.am: tools: dist gst-project-maker script https://bugzilla.gnome.org/show_bug.cgi?id=776317 2016-12-20 11:16:11 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Always parsing sidx for On-Demand profile The indexRange attribute is optional and if it's not present, we should extract the sidx box from incoming buffers. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2016-12-17 15:56:07 +0900 Seungha Yang * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dash: Split gst_isoff_sidx_parser_add_buffer() function To parsing sidx box itself with isobmff parser, split gst_isoff_sidx_parser_add_buffer() into two parts. https://bugzilla.gnome.org/show_bug.cgi?id=776200 2016-12-19 11:40:28 +0200 Sebastian Dröge * ext/hls/gsthlsdemux-util.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Extract ID3 tags, strip them from the output and provide them as tags They often don't only contain the PCR information but also other metadata, like title. Give this information to the pipeline. Also strip the tags from the stream as we a) already parsed them now and b) decoders don't like these tags to happen in the middle of the stream (i.e. the start of each fragment) and tagdemux only can strip them off the beginning and end. 2016-12-18 19:18:23 +0000 Graham Leggett * gst/mpegtsdemux/mpegtsbase.c: tsdemux: Don't leak a taglist if a taglist has already been created https://bugzilla.gnome.org/show_bug.cgi?id=776244 2016-12-17 13:42:34 +0000 Tim-Philipp Müller * ext/qt/gstqtsink.cc: * ext/qt/gstqtsrc.cc: qt: improve element and property descriptions a bit 2016-12-16 22:45:06 +0000 Tim-Philipp Müller * win32/MANIFEST: win32: fix distcheck 2016-12-16 19:15:36 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * win32/common/config.h: win32: remove generation of pre-made config.h for msvc builds This is no longer needed with the Meson build. 2016-12-16 17:22:29 +0000 Tim-Philipp Müller * .gitignore: * Makefile.am: * configure.ac: * gst-plugins-bad.spec.in: Remove generated .spec file Likely extremely bitrotten, and we should not ship this anyway. 2016-12-17 01:00:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: gl/format: use the unsized format for RGB on GLES2 In GLES2 GL_RGB8 doesn't exist so we cannot use it, use GL_RGB instead. https://bugzilla.gnome.org/show_bug.cgi?id=776141 2016-12-16 13:25:58 +0200 Daniel Shahaf * gst/geometrictransform/gstmirror.h: mirror: Fix documentation for the mirror mode Using the wrong enum there causes it to be randomly mixed with the docs of the other enums. https://bugs.debian.org/848297 2016-12-16 00:22:41 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: remove unused priv variable https://ci.gstreamer.net/job/GStreamer-master/7989/console 2016-12-15 00:59:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/window: remove use of main_context_push/pop_thread_default() No-one's using/depending on it (it would have criticalled and not worked) and it's causing more problems than it's solving. Store the GMainContext in the public struct instead for subclasses to optionally use instead of relying on the push/pop state to be correct. https://bugzilla.gnome.org/show_bug.cgi?id=775970 2016-12-07 16:51:27 +0800 Haihua Hu * ext/gl/gstgleffects.c: gl/effects: use non-PBO GLMemory for internal textures middle textures in gleffects do not need to use GstGLMemoryPBO as they aren't transfering data to/from the GPU. This will cost too much DMA memory and cause performance issue. Change the allocator to use non-PBO GstGLMemory. https://bugzilla.gnome.org/show_bug.cgi?id=776072 2016-12-15 14:05:09 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: amcaudiodec: Set "is-adts" to 1 for ADTS AAC Otherwise it fails to decode. https://bugzilla.gnome.org/show_bug.cgi?id=740101 2016-12-14 15:53:41 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: glvideomixer: Reject multiview video glvideomixer does not support it currently and it needs special support for handling this correctly, and is rather non-trivial to implement for all formats. 2016-12-14 15:36:14 +0200 Sebastian Dröge * gst/compositor/compositor.c: compositor: Reject multiview video Compositor does not support it currently and it needs special support for handling this correctly, and is rather non-trivial to implement for all formats. 2016-12-14 15:35:42 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove unlock() if set_info() fails There is not mutex locked here that needs to be unlocked. 2016-12-14 13:10:18 +0530 Garima Gaur * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/vdpau/gstvdpdecoder.c: sys: Fix caps memory leak from pad template creation https://bugzilla.gnome.org/show_bug.cgi?id=776076 2016-12-14 13:10:46 +1100 Jan Schmidt * ext/gme/gstgme.c: gme: Forward other non-EOS events downstream Allow most events through as-is so at least we don't warn about missing stream-start. Drop segment and caps, as those are sent internally. 2016-12-13 22:39:01 +0200 Sebastian Dröge * ext/gl/gltestsrc.c: * ext/libde265/libde265-dec.c: * ext/opencv/MotionCells.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/gstglupload.c: * sys/msdk/msdk.c: * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/compositor.c: * tests/check/elements/dash_demux.c: * tests/check/elements/dash_mpd.c: * tests/check/elements/hls_demux.c: * tests/check/elements/mssdemux.c: * tests/check/elements/test_http_src.c: gst: Don't declare variables inside the for loop header This is a C99 feature. 2016-12-13 22:21:25 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: Don't declare variables inside the for loop header This is a C99 feature. 2016-12-13 20:42:44 +0200 Sebastian Dröge * ext/gme/gstgme.c: gme: Free decoder instance when going from PAUSED to READY We only ever cleaned it up before on errors. 2016-11-22 13:55:00 -0800 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkmjpegdec.c: * sys/msdk/gstmsdkmjpegdec.h: * sys/msdk/meson.build: msdk: add mjpeg decoder https://bugzilla.gnome.org/show_bug.cgi?id=774793 2016-10-05 15:32:43 -0700 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkmjpegenc.c: * sys/msdk/gstmsdkmjpegenc.h: * sys/msdk/meson.build: msdk: add mjpeg encoder https://bugzilla.gnome.org/show_bug.cgi?id=774793 2016-11-28 19:14:20 -0800 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkh265dec.c: * sys/msdk/gstmsdkh265dec.h: * sys/msdk/meson.build: msdk: Add H.265 decoder https://bugzilla.gnome.org/show_bug.cgi?id=775726 2016-11-07 12:32:38 -0800 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkdec.c: * sys/msdk/gstmsdkdec.h: * sys/msdk/gstmsdkh264dec.c: * sys/msdk/gstmsdkh264dec.h: * sys/msdk/meson.build: msdk: Add H.264 decoder The decoder only supports system memory output presently. https://bugzilla.gnome.org/show_bug.cgi?id=774587 2016-12-12 15:09:36 +0100 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Avoid using unset GError gst_uri_handler_set_uri() doesn't guarantee the GError will be set if it returns FALSE. 2016-12-12 10:43:43 +0900 Seungha Yang * ext/ttml/gstttmlrender.c: ttmlrender: Fix segfault on _render_text_region() Fix invalid memory access https://bugzilla.gnome.org/show_bug.cgi?id=775965 2016-12-12 14:42:39 +0900 Seungha Yang * ext/ttml/gstttmlparse.c: ttmlparse: Transform caps event For autoplugging, decodebin/parsebin refers to the caps event. https://bugzilla.gnome.org/show_bug.cgi?id=775967 2016-12-08 12:37:25 +0300 Sergey Borovkov * ext/qt/gstqtglutility.cc: qml: Fix egl being deinitialized on display cleanup Use the with_egl_display() variant in order to not destroy the EGLDisplay on destruction. https://bugzilla.gnome.org/show_bug.cgi?id=775793 2016-12-08 12:07:31 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix unconditional use of FEC 2/5 It is not defined for < v5 minor 7 2016-12-06 15:40:38 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add delivery system to missing modulation check message A tuning operation can spawn multiple checks. Being able to differentiate between them makes debugging easier. 2016-12-05 16:51:10 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: * sys/dvb/parsechannels.h: dvb/parsechannels: drop trailing whitespace 2016-12-08 11:22:38 +0530 Arun Raghavan * gst-libs/gst/player/gstplayer.c: player: Don't try to cache the GQuark for GST_PLAYER_ERROR This is potentially racy (in the unlikely scenario that we get two first-time calls to gst_player_error_quark() at the same time). This should not impact anything in terms of performance since it's only on the error path. The call itself could just be inlined by making GST_PLAYER_ERROR be defined to the g_quark_from_static_string() call, but this feels ugly from an API perspective. 2016-12-07 16:06:48 +0100 Stefan Sauer * configure.ac: * ext/fdkaac/gstfdkaacenc.c: fdkaac: fix the build for older fdkaac versions Support for 7.1 was added in 0.1.14. 2016-12-07 22:55:46 +1100 Matthew Waters * ext/qt/qtitem.cc: qml/item: also unref the display on destruction Leaking objects (and a thread!) is never a good idea. https://bugzilla.gnome.org/show_bug.cgi?id=775746 2016-12-07 22:58:29 +1100 Matthew Waters * tests/examples/qt/qmlsink/main.cpp: tests/examples/qmlsink: scope QApplication/Engine So they are destroyed before gst_deinit() is run and the leaks tracer doesn't show false-positives. https://bugzilla.gnome.org/show_bug.cgi?id=775746 2016-12-07 10:26:59 +0200 Sebastian Dröge * ext/chromaprint/gstchromaprint.c: chromaprint: Fix compilation with chromaprint 1.4 It takes const int16_t * as argument now, while before it was void *. To make this work with both versions without #ifdef, we omit the const. 2016-12-05 23:38:53 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop needless wrapper around DVB API's dvb_diseqc_master_cmd Its only purpose was to hold a wait time that was always 0 2016-12-05 23:18:38 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop supperfluous wait in diseqc_send_msg() It is always zero. 2016-12-06 07:58:25 +0200 Sebastian Dröge * gst/vmnc/vmncdec.c: vmncdec: Sanity-check rectangle sizes a bit more thorough The x/y coordinates could already be bigger than the configured width/height, and adding the rectangle width/height could cause an overflow. 2016-12-05 15:56:36 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix unconditional use of SYS_DVBC_ANNEX_C It is not defined for < v5 minor 6 2016-12-05 15:53:10 -0800 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix value for DVB-C annex B field in adapter structure 2016-12-05 18:17:30 +0000 Tim-Philipp Müller * gst/rawparse/gstrawvideoparse.c: rawvideoparse: fix typos in property description 2016-11-28 15:57:33 -0800 Scott D Phillips * ext/dtls/gstdtlsagent.c: dtls: Set openssl's threadid the 1.0.x way For pre-1.1.x openssl, a callback to set the thread id needs to be provided to openssl. In 0.9.x the thread id was an unsigned long. In 1.0.x it was expanded to be able to hold a void*. Here we change to use the 1.0.x API so that the thread id can always hold a GThread*, even on platforms like msvc x64 where unsigned long is only 32 bits. All of this is still #ifdef'd out of existence when building with openssl 1.1.x or later which changed the thread API again, and does not need a thread id callback. https://bugzilla.gnome.org/show_bug.cgi?id=775292 2016-12-04 14:42:47 -0500 Nicolas Dufresne * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: segmentation: Port to GstOpencvVideoFilter base class 2016-12-03 22:40:11 -0500 Nicolas Dufresne * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: grabcut: Port to GstOpencvVideoFilter base class 2016-12-03 22:02:23 -0500 Nicolas Dufresne * ext/opencv/gstretinex.cpp: * ext/opencv/gstretinex.h: retinex: Port to GstOpencvVideoFilter base class This allow reducing slightly the code. It also fixes a bug caused by in-place buffer being mapped and never unmapped. 2016-12-03 08:19:37 +0100 Edward Hervey * README: * common: Automatic update of common submodule From d015674 to 39ac2f5 2016-12-01 22:02:51 -0500 Nicolas Dufresne * ext/opencv/meson.build: opencv/meson: check presence of required opencv_contrib headers https://bugzilla.gnome.org/show_bug.cgi?id=772822 2016-12-01 21:55:04 -0500 Nicolas Dufresne * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstedgedetect.h: edgedetect: Avoid extra copy of the output image Simply produce the result into the output image provided by the base class. This avoid useless copy. This also removes unchecked buffer map and ensure that GstVideoMeta is respected (for stride mostly). https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:51:31 -0500 Nicolas Dufresne * ext/opencv/gstedgedetect.cpp: edgedetect: Remove redundant CAPS event handler There is already a cv_set_caps() implemented, so just do the entire work there. https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:45:53 -0500 Nicolas Dufresne * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvlaplace.h: cvlaplace: Avoid extra copy of the output image Simply produce the result into the output image provided by the base class. This avoid useless copy. This also removes unchecked buffer map and ensure that GstVideoMeta is respected (for stride mostly). https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:43:04 -0500 Nicolas Dufresne * ext/opencv/gstcvlaplace.cpp: cvlaplace: Remove redundant CAPS event handler There is already a cv_set_caps() implemented, so just do the entire work there. https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:36:13 -0500 Nicolas Dufresne * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstcvsobel.h: cvsobel: Avoid extra copy of the output image Simply produce the result into the output image provided by the base class. This avoid useless copy. This also removes unchecked buffer map and ensure that GstVideoMeta is respected (for stride mostly). https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:28:31 -0500 Nicolas Dufresne * ext/opencv/gstcvsobel.cpp: cvsobel: Remove redundant CAPS event handler There is already a cv_set_caps() implemented, so just do the entire work there. https://bugzilla.gnome.org/show_bug.cgi?id=775377 2016-12-01 21:13:23 -0500 Nicolas Dufresne * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstmotioncells.cpp: opencv: Remove uneeded buffer writability check When set to in_place, the BaseTransform class will guaranty that buffers passed to transform_ip() function are writable. https://bugzilla.gnome.org/show_bug.cgi?id=775378 2016-12-01 09:24:18 +0000 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gstglupload: relax EGL context check Check for GST_GL_PLATFORM_EGL enum instead of type GstGLContextEGL. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-30 09:22:17 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gstglcontext: is_shared should return FALSE if no group If a sub class of GstGLContext does not create a group then it currently crashes: 0 g_atomic_int_get (&share->refcount) 1 _context_share_group_is_shared (context->priv->sharegroup) 2 gst_gl_context_is_shared 3 _default_set_sync_gl https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-30 22:40:45 -0500 Nicolas Dufresne * ext/ttml/meson.build: meson/ttml: Add missing math library dependency This code call 'round' which may require linking against the math library on some compilers. 2016-11-30 19:53:30 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: post error message if start() fails It is expected to post an error message in the bus if the device cannot be started. 2016-10-20 12:37:48 +0200 Michael Tretter * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: configure display mode during set_caps Configure the display mode when setting the negotiated caps instead of during showing the first frame. A framebuffer is required to set the mode. Allocate a buffer object according to the negotiated caps and use it to set the mode. This buffer object cannot be freed until another page flip happened on the crtc (i.e., until the first frame is rendered). https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Manuel Jáquez Leal 2016-10-18 14:57:25 +0200 Michael Tretter * sys/kms/gstkmssink.c: kmssink: add parameter force-modesetting The force-modesetting parameter forces the kmssink to ignore already configured display modes, to configure the display mode itself and use the base plane for output. https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-11-08 15:27:51 +0100 Michael Tretter * sys/kms/gstkmssink.c: kmssink: allow only supported resolutions If the input buffers have a different size than the display, the frames would have to be scaled or positioned on the display. The kmssink cannot decide which behaviour would be appropriate for which use case. In order to avoid scaling or positioning of the input stream, allow only the supported connector resolutions in the sink caps. https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Manuel Jáquez Leal 2016-11-08 15:26:40 +0100 Michael Tretter * sys/kms/gstkmssink.c: kmssink: set mode based on framebuffer configuration Displays usually support multiple modes. Therefore, the kmssink should not only support the preferred mode, but any mode that is supported by the display. https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-10-14 16:03:08 +0200 Michael Tretter * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add mode setting and base plane rendering The kmssink assumed that the mode was already set by another application and used an overlay plane for displaying the frames. Use the preferred mode of the monitor and render to the base plane if the crtc does not have a valid mode. https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Manuel Jáquez Leal 2016-11-30 17:22:21 +0200 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Writing field-order into the src caps Writing top-field-first vs bottom-field-first into the src caps https://bugzilla.gnome.org/show_bug.cgi?id=775409 2016-11-30 09:35:27 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs.types: docs: add aggregator _get_type functions for signals + properties https://bugzilla.gnome.org/show_bug.cgi?id=775379 2016-11-30 19:26:51 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: glmemoryegl: remove spurious #if GST_GL_HAVE_DMABUF conditions 8c2118823b3d42840cc6f48cbdc0e1b342f90b80 had some incorrect preprocessor conditions that aren't actually needed. Remove them. https://bugzilla.gnome.org/show_bug.cgi?id=775248 2016-11-30 10:40:42 +0530 Garima Gaur * gst/mpegpsmux/mpegpsmux.c: * tests/examples/directfb/gstdfb.c: gst: Fix caps leak https://bugzilla.gnome.org/show_bug.cgi?id=775072 2016-11-23 18:30:40 +0100 Philippe Renon * configure.ac: opencv: check presence of required opencv_contrib headers https://bugzilla.gnome.org/show_bug.cgi?id=772822 2016-11-26 16:53:24 +0100 Philippe Renon * gst-libs/gst/opencv/gstopencvutils.cpp: opencv: add opencv image format documentation https://bugzilla.gnome.org/show_bug.cgi?id=774576 2016-11-26 13:34:26 +0100 Philippe Renon * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvutils.h: opencv: account for sparse/padded formats when converting caps to cv image type https://bugzilla.gnome.org/show_bug.cgi?id=774576 2016-11-29 21:09:14 -0500 Nicolas Dufresne * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: opencvvideofilter: Don't parse the caps twice The GstVideoFilter already provide caps parsed into GstVideoInfo. Avoid doing that twice by splitting the helper. https://bugzilla.gnome.org/show_bug.cgi?id=775288 2016-11-28 21:54:57 -0500 Nicolas Dufresne * gst-libs/gst/opencv/gstopencvvideofilter.cpp: opencvfilter: Properly port to GstVideoFilter This is a subblass of VideoFilter but yet does not use any of it's features. This also fixes issue in case the incoming images have custom strides as the VideoMeta is no longer ignored. https://bugzilla.gnome.org/show_bug.cgi?id=775288 2016-11-29 15:18:43 +0100 Philippe Normand * ext/smoothstreaming/meson.build: mssdemux: fix meson build Follow-up of 73721ad4e9e2d32e1c8b6a3b4aaa98401530e58a. Forgot to add the fragment parser in the meson build file. 2016-11-29 14:43:41 +0100 Philippe Normand * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssfragmentparser.c: * ext/smoothstreaming/gstmssfragmentparser.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: mssdemux: improved live playback support When a MSS server hosts a live stream the fragments listed in the manifest usually don't have accurate timestamps and duration, except for the first fragment, which additionally stores timing information for the few upcoming fragments. In this scenario it is useless to periodically fetch and update the manifest and the fragments list can be incrementally built by parsing the first/current fragment. https://bugzilla.gnome.org/show_bug.cgi?id=755036 2016-11-29 15:35:09 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix compiler warning gstdecklink.cpp: In member function ‘virtual HRESULT GStreamerDecklinkInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*)’: gstdecklink.cpp:766:34: error: ‘base_time’ may be used uninitialized in this function [-Werror=maybe-uninitialized] capture_time -= base_time; ^ 2016-11-29 11:08:14 +0100 Anton Eliasson * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264parse: improve documentation commentary https://bugzilla.gnome.org/show_bug.cgi?id=775306 2016-11-29 11:06:43 +0100 Anton Eliasson * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264parse: docs spellcheck Spell checks, correct capitalization and some rewording to better fit the terms used in the H.264 spec. https://bugzilla.gnome.org/show_bug.cgi?id=775306 2016-11-28 16:02:03 -0800 Scott D Phillips * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: schro: #include math.h before schroedinger headers The schroedinger headers unconditionally #define over C99's rint when compiling with msvc which messes up the later inclusion of math.h. Including math.h before schroedinger headers avoids getting syntax errors in math.h https://bugzilla.gnome.org/show_bug.cgi?id=775293 2016-11-29 01:41:28 +0530 Nirbheek Chauhan * ext/opencv/meson.build: * meson.build: meson: Rework opencv plugin checks a) Use get_pkgconfig_variable() to get the opencv prefix b) Place an upper limit on the opencv version c) Ensure that headers are available (b) and (c) just copy what the configure.ac checks do. 2016-11-28 20:05:02 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Fix off-by-one in PMT parsing 2016-11-28 19:52:24 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Don't assert if the given section length is longer than the PMT actually is Instead error out cleanly and just assert that we didn't read more than the available data. 2016-11-28 17:17:43 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Correctly set top-field-first/bottom-field-first First of all, all the HD and UHD modes should be top-field-first, as also returned by the Decklink mode iterator API. Then we should include the caps field "field-order" in the caps of the source (not the sink due to negotiation problems with optional fields). And finally we should set the TFF flag on interlaced buffers that are top-field-first. 2016-11-25 15:03:08 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Add property to drop frames that are marked as having no input signal https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-25 14:57:15 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Add property to skip the first N seconds of capture On some hardware the first few frames are bogus and not very useful. Their timestamps are off, they have no timecodes, or there are spurious black frames / no-signal frames. After a few frames this stabilizes though. https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-25 14:36:37 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinksrc: Set GAP flag on buffers that are captured without signal https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-24 19:19:36 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Keep track of a window of capture/stream time mappings and calculate relationship Based on this we calculate the actual capture time, which should get us rid of any capturing jitter by averaging it out. Also add a output-stream-time property which forces the elements to output the stream time directly instead of doing any conversion to the pipeline clock. Use with care. https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-22 19:30:27 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinksrc: Stop using the "hardware" timestamps and directly use the pipeline clock The hardware timestamps have no relation to when frames were produced, only when frames arrived somewhere in the hardware. Especially there is no guarantee that audio and video will have the same hardware timestamps although they belong together, and even more important: the rate with which the hardware timestamps increase is completely unrelated to the rate with which the frames are captured! As such we can as well use the pipeline clock directly and stop doing complicated calculations. Also as a side effect this allows now running without any pipeline clock, by directly making use of the stream times as reported by the driver. https://bugzilla.gnome.org/show_bug.cgi?id=774850 2016-11-28 14:25:49 +0200 Sebastian Dröge * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: rawparse: Whitespace cleanup 2016-11-28 11:26:50 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-dataurisrc.xml: * gst-plugins-bad.spec.in: * gst/dataurisrc/Makefile.am: * gst/dataurisrc/gstdataurisrc.c: * gst/dataurisrc/gstdataurisrc.h: * gst/dataurisrc/meson.build: * gst/meson.build: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dataurisrc.c: dataurisrc: remove plugin, moved to core https://bugzilla.gnome.org/show_bug.cgi?id=774527 2016-11-28 10:49:23 +0200 Sebastian Dröge * ext/hls/m3u8.c: m3u8: Mark uri_join() function as static We don't really want to export this, especially not without any namespacing. This can cause problems for static builds. 2016-11-28 10:27:56 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Post an error message on the bus if we activated a program without pads Otherwise decodebin and applications are going to wait forever for pads to appear, which is never going to happen. Happens on this stream, which probably just need support for it added: https://samples.mplayerhq.hu/3D/AVC_codec_in_m2ts_not_recognized/AVC_codec_not_recognized_right_video_sample.m2ts 2016-11-28 14:22:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: move g_main_context_push/pop_thread_default() to run() Calling g_main_context_push_thread and then g_main_context_invoke() (used by gst_gl_window_send_message_async()) in the same thread will cause the invoked function to run immediately instead of being delayed. This had implications for the creation of the OpenGL context not waiting until the main loop had completely started up and as a result would sometimes deadlock in short create/destroy scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=775171 2016-11-28 14:19:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix race between creation/shutdown 626bcccff96f624f59c5212b3e21e472240171fd removed some locks that allowed the main loop quit to occur before the context was fully created. 2776cef25d2a98668b73272aecfe77e684e6627e attempted to readd them but missed the scop of the quit() call. Also remove the use of g_thread_join() as that's not safe to use when it's possible to lose the last reference from the GL thread. https://bugzilla.gnome.org/show_bug.cgi?id=775171 2016-11-27 12:40:53 +0200 Sebastian Dröge * gst/rawparse/gstrawbaseparse.c: rawbaseparse: Fix output buffer size trimming For frame->buffer, baseparse is doing that automatically for us. For frame->output_buffer it doesn't and assumes that the subclass is already doing that. Consistency! 2016-11-27 12:20:11 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dash: Fix stripping of space at the beginning/end of durations The way how strchr() was called here, it could easily read after the end of the string. Use g_ascii_isspace() instead. Detected by asan in the unit test. 2016-11-27 11:56:18 +0200 Sebastian Dröge * ext/opencv/meson.build: opencv: Make the OpenCV plugin optional in the meson build 2016-11-27 11:44:14 +0200 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: rawparse: Properly align raw audio/video output buffers That is, aligned to the basic type for audio and to 32 bytes for video. Fixes crashes if the raw buffers are passed to SIMD processing functions. https://bugzilla.gnome.org/show_bug.cgi?id=774428 2016-11-15 16:57:20 +0000 Luis de Bethencourt * ext/meson.build: * ext/opencv/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/opencv/meson.build: opencv: Enable in meson build https://bugzilla.gnome.org/show_bug.cgi?id=774223 2016-11-26 11:20:51 +0000 Tim-Philipp Müller * .gitmodules: common: use https protocol for common submodule https://bugzilla.gnome.org/show_bug.cgi?id=775110 2016-11-26 12:28:57 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Post an error message if we got EOS before having any source pads Otherwise, sending an EOS event has no effect and the application waits forever for something to happen. 2016-11-26 12:16:39 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Fix indentation 2016-11-26 12:16:18 +0200 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Fix assertion when encountering an invalid NALU Error out properly instead. https://bugzilla.gnome.org/show_bug.cgi?id=775130 2016-11-26 12:15:50 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Fix assertion when encountering an invalid NALU Error out properly instead. https://bugzilla.gnome.org/show_bug.cgi?id=775130 2016-11-26 10:44:43 +0100 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Add more section size checks The smallest section ever needs to be at least 3 bytes (i.e. just the short header). Non-short headers need to be at least 11 bytes long (3 for the minimum header, 5 for the non-short header, and 4 for the CRC). https://bugzilla.gnome.org/show_bug.cgi?id=775048 2016-11-26 10:23:01 +0100 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Fix PAT parsing Use the estimated number of programs for parsing. Avoids over-reading. https://bugzilla.gnome.org/show_bug.cgi?id=775120 2016-11-26 09:26:36 +0100 Edward Hervey * ext/hls/gsthlsdemux.c: hlsdemux: Handle GST_SEEK_TYPE_NONE seek When one is only updating the "stop" position (i.e. non-flushing seek, with GST_SEEK_TYPE_NONE on the "start" (or stop in reverse) position), we only need to store those values instead of moving the current position. https://bugzilla.gnome.org/show_bug.cgi?id=775127 2016-11-25 23:47:15 +0200 Sebastian Dröge * ext/opencv/gstsegmentation.cpp: * ext/wayland/wldisplay.c: ext: Fix various compiler warnings with clang wldisplay.c:179:15: error: comparison of unsigned enum expression < 0 is always false [-Werror,-Wtautological-compare] if (shm_fmt < 0) ~~~~~~~ ^ ~ gstsegmentation.cpp:419:40: error: implicit conversion from 'int' to 'char' changes value from 255 to -1 [-Werror,-Wconstant-conversion] filter->cvFG->imageData[j] = 255; ~ ^~~ https://bugzilla.gnome.org/show_bug.cgi?id=775112 2016-11-25 23:44:25 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: Remove unused static function 2016-11-25 16:46:45 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxftypes.c: mxfdemux: Fix up another size check and prevent allocating too much memory 2016-11-25 15:59:44 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: * gst/mxf/mxftypes.c: * gst/mxf/mxful.c: mxfdemux: Handle zero-sized KLV items better and don't assert on them 2016-11-25 15:53:50 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix various logic errors in error handling of footer partition parsing 2016-11-25 15:53:36 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't try parsing empty metadata items 2016-11-25 01:06:45 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Add missing NULL check 2016-11-22 18:06:52 +0100 Florent Thiéry * ext/gl/gstgldownloadelement.c: gldownload: fix element description (was "OpenGL uploader") 2016-11-24 19:45:10 +0200 Sebastian Dröge * gst/mxf/Makefile.am: * gst/mxf/mxf.c: mxf: Remove mxfdms1.[ch] from the build for now It's completely unused currently but might be used in the future. 2016-11-24 23:36:22 +0200 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxftypes.c: * gst/mxf/mxful.c: mxfdemux: Add various missing bounds checks, NULL checks and integer overflow protection for error cases 2016-11-24 14:48:35 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Free timecodes when done with a frame 2016-11-24 14:41:59 +0200 Sebastian Dröge * gst/timecode/gsttimecodestamper.c: timecodestamper: Remove all existing timecode metas if requested to override existing 2016-11-24 11:12:23 +0100 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Don't free empty streams Also avoids a useless assertion 2016-11-24 11:11:35 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Don't add existing values to group If the last value is already identical, there is no need in adding it yet-another-time 2016-11-23 20:13:59 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmsallocator.c: kmssink: include drm.h after stdlib.h As drm.h is internal to libdrm, it expects to have already included stdlib.h. 2016-11-23 19:41:43 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmsallocator.c: kms: include stdlib.h drm.h does not include all what it needs to compile, in particular stdlib.h which defines size_t 2016-11-23 19:01:04 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Don't set variable just to overwrite it again later We set it to TRUE here, but later we set it to TRUE again anyway if the parsing actually succeeded at this point. Let's keep the second one. CID 1374360. 2016-11-23 18:45:42 +0200 Sebastian Dröge * ext/wayland/wldisplay.c: wldisplay: Don't compare a guint with < 0 -1 is the "invalid" value, compare to it directly. CID 1394490. 2016-11-18 21:00:03 +0200 Sebastian Dröge * configure.ac: * gst/audiobuffersplit/Makefile.am: * gst/audiobuffersplit/gstaudiobuffersplit.c: * gst/audiobuffersplit/gstaudiobuffersplit.h: * gst/audiobuffersplit/meson.build: * gst/meson.build: audiobuffersplit: New element that splits raw audio buffers into equal-sized buffers This is useful e.g. if audio buffers should be exactly the duration of a video frame, or if a audio buffers should never be too large because of latency constraints. The element is taking a fractional buffer duration, to allow working with e.g. 1001/30000 as output duration and it accumulates rounding errors in the buffer durations and compensates for them by making some buffers one sample larger than the others. https://bugzilla.gnome.org/show_bug.cgi?id=774689 2016-10-19 12:39:36 +0200 Michael Tretter * configure.ac: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmsutils.c: * sys/kms/gstkmsutils.h: * sys/kms/meson.build: kmssink: remove dependency on libkms libkms should not be used, because it imposes limitations on the DRM API, especially regarding bpp and stride. Instead the DRM IOCTL should be used directly. Switch from libkms to the IOCTL interface. Set bpp and height for framebuffer allocation to properly handle planar video formats. https://bugzilla.gnome.org/show_bug.cgi?id=773473 Signed-off-by: Víctor Jáquez 2016-11-23 10:31:29 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-mimic.xml: * ext/Makefile.am: * ext/meson.build: * ext/mimic/Makefile.am: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: * ext/mimic/gstmimic.c: * gst-plugins-bad.spec.in: * tests/check/Makefile.am: * tests/check/pipelines/.gitignore: * tests/check/pipelines/mimic.c: mimic: remove ancient codec This was used by MSN messenger in prehistoric times, it's safe to say no one needs or wants this any more these days. For decoding old recordings there's still a decoder in ffmpeg. https://bugzilla.gnome.org/show_bug.cgi?id=597616 2016-11-23 10:52:05 +0200 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Ensure codec_data has the required size when reading number of NAL arrays https://bugzilla.gnome.org/show_bug.cgi?id=774896 2016-11-23 10:51:17 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Ensure codec_data has the required size when reading number of SPS https://bugzilla.gnome.org/show_bug.cgi?id=774896 2016-11-23 17:04:34 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl/contextglx: error out on more invalid display/window combinations https://bugzilla.gnome.org/show_bug.cgi?id=774851 2016-11-23 15:57:05 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglupload.c: gl: add necessary context_egl.h #includes to the source files 2016-11-23 13:32:38 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglmemoryegl.h: gl/memoryegl: remove access to private header gstglcontext_egl.h It's been removed and thus compiling anything against GstGLMemoryEGL would error with: In file included from gstomxvideodec.c:41:0: usr/include/gstreamer-1.0/gst/gl/egl/gstglmemoryegl.h:32:41: fatal error: gst/gl/egl/gstglcontext_egl.h: No such file or directory #include ^ https://bugzilla.gnome.org/show_bug.cgi?id=774886 2016-11-22 12:58:44 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Reset values before parsing each section 2016-11-22 12:42:45 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Make sure in all cases that we have enough data left for reading a section start In some cases we ended up parsing sections without. 2016-11-21 17:19:46 +0100 Philippe Renon * ext/opencv/gstcvdilateerode.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.h: opencv: forward declare opencv types Forward declare opencv types to avoid exposing them in the API. https://bugzilla.gnome.org/show_bug.cgi?id=774223 2016-11-21 10:52:39 +0000 Tim-Philipp Müller * gst-libs/gst/interfaces/photography.h: interfaces: photography: clean up header indentation 2016-11-20 15:10:42 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Modify return of the function for loading external resources to void gst_mpd_client_fetch_on_load_external_resources() never ever return FALSE due to modified external xml loading functions. https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-19 23:04:04 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Handle invalid external xml link for SegmentList element Ignore invalid xml link for SegmentList likewise external Period without error. https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-19 22:38:20 +0900 Seungha Yang * ext/dash/gstmpdparser.c: mpdparser: Handle invalid external xml link for AdaptationSet element Ignore invalid xml link for AdaptationSet likewise external Period without error. https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-19 18:37:54 +0900 Seungha Yang * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: Handle invalid external xml link for Period element Section 5.3.3 in ISO/IEC 23009-1:2014 defines that invalid references (e.g., invalide URI or cannot be resolved) specified by "@xlink:href" attribute shall be removed. That means, we should play it without error, and just ignore the corresponding element. It's similar to "urn:mpeg:dash:resolve-to-zero:2013". https://bugzilla.gnome.org/show_bug.cgi?id=774463 2016-11-17 15:41:00 +0000 David Evans * gst-libs/gst/gl/Makefile.am: gl: add gstreamer-video to pkg-config path https://bugzilla.gnome.org/show_bug.cgi?id=774624 2016-11-20 12:40:07 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix lib and cflags order in Makefile.am pnm: add misssing continuation slash at end of line vp8parser: no need to link codecparsers twice dash_demux, mssdemux, hlsdemux: fix lib/flags ordering - local libs and flags must come first, then base before core before rest 2016-11-19 16:12:06 +0900 Seungha Yang * ext/dash/gstdashdemux.c: dashdemux: Fix leak in gst_dash_demux_stream_free Free parsed moof and sync samples with _stream_free(). https://bugzilla.gnome.org/show_bug.cgi?id=774702 2016-11-17 11:19:54 -0800 Reynaldo H. Verdejo Pinochet * configure.ac: * ext/vulkan/wayland/Makefile.am: * ext/wayland/Makefile.am: wayland: avoid prefix clash in combined pkg-config check Adittionally, remove leftover WAYLAND_DRM_ include flags var Fixes building of ext/wayland/* broken by dfd86de67a8c04f6d1 Related to: https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-17 20:21:17 +0200 Sebastian Dröge * gst/videoparsers/gstvc1parse.c: vc1parse: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:20:52 +0200 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:20:15 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:19:44 +0200 Sebastian Dröge * ext/ttml/gstttmlrender.c: ttmlrender: Mark pad as needing reconfiguration again if it failed And return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-17 20:16:49 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Mark pad as needing reconfiguration again if reconfiguration failed Also return FLUSHING instead of NOT_NEGOTIATED on flushing pads. https://bugzilla.gnome.org/show_bug.cgi?id=774623 2016-11-18 12:21:22 +0200 Sebastian Dröge * ext/Makefile.am: iqa: Add to DIST_SUBDIRS 2016-11-17 17:17:22 -0800 Scott D Phillips * meson.build: meson: add_global_arguments -> add_project_arguments https://bugzilla.gnome.org/show_bug.cgi?id=774656 2016-11-17 10:54:45 -0800 Scott D Phillips * gst-libs/gst/wayland/meson.build: meson: wayland: wl_scanner is required: false https://bugzilla.gnome.org/show_bug.cgi?id=774637 2016-11-17 15:11:20 -0300 Thibault Saunier * po/POTFILES.in: po: Remove remaining reference to videomeasure 2016-11-17 18:23:04 +0200 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Issue "no signal" warnings When a frame is found to not have an associated input source (cable unplugged, wrong mode selected), an element warning will be issued. When the next frame in the stream is found to have an input source selected (e.g. cable replugged), an element info will be issued. https://bugzilla.gnome.org/show_bug.cgi?id=774629 2016-11-16 18:01:19 -0300 Thibault Saunier * configure.ac: * gst/meson.build: * gst/videomeasure/Makefile.am: * gst/videomeasure/gstvideomeasure.c: * gst/videomeasure/gstvideomeasure.h: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_collector.h: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videomeasure/gstvideomeasure_ssim.h: * gst/videomeasure/meson.build: videomeasure: Remove old unported videomeasure plugin as it is now replaced by IQA 2016-11-16 16:30:50 -0300 Thibault Saunier * ext/iqa/iqa.c: iqa: Error out when trying to compare video stream with different sizes We do not handle it yet and we should let the user know. 2016-11-16 14:46:24 -0300 Thibault Saunier * ext/iqa/meson.build: * ext/meson.build: iqa: Add meson build support 2016-11-16 13:18:53 -0300 Mathieu Duponchelle * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/Makefile.am: * ext/iqa/Makefile.am: * ext/iqa/iqa.c: * ext/iqa/iqa.h: Adds a new Image Quality Assessment plugin. It only offers one metric for now, "dssim", available if https://github.com/pornel/dssim was installed on the system at the time the plugin was compiled. The spearman correlation for dssim against the TID2008 dataset is 0.81, against 0.70 for the old ssim implementation, and it runs 15 times faster. https://bugzilla.gnome.org/show_bug.cgi?id=751324 2016-11-17 14:35:26 +1100 Matthew Waters * tests/check/elements/glimagesink.c: gl/tests: fix glimagesink element test on OSX It was suffering a race starting up the thread that could cause the main loop to quit before the main loop had started. 2016-11-17 14:21:23 +1100 Matthew Waters * sys/applemedia/avfassetsrc.m: applemedia: error out if the uri property is not set Fixes: Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** +[NSString stringWithUTF8String:]: NULL cString in the state change test. 2016-11-17 15:15:18 +1100 Matthew Waters * gst-libs/gst/meson.build: * gst-libs/gst/wayland/meson.build: * meson.build: meson: wayland: move dep checks to the lib Moves them closer to where they are used. We don't want every check in the main meson.build file. 2016-11-17 14:32:10 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl/egl: add missing source file d42145e8c1ba3bc0445506b92bb7ac04ae98f4dd didn't add the necessary meson build changes. 2016-11-17 02:41:14 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/egl: remove EGLImage functions from egl context By adding the necessary GstEGLImage entry points to create a GstEGLImage from a GstGLMemory. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-17 01:45:38 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext: add vfunc to retrieve the OpenGL platform version i.e. the version of EGL, GLX, etc implemented. https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-17 01:38:32 +1100 Matthew Waters * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.c: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/egl: move get_error_string() into gstegl So others can use it without #include-ing a private header https://bugzilla.gnome.org/show_bug.cgi?id=774518 2014-11-27 15:50:04 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: display/egl: implement getting the EGLDisplay of a specific platform https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-16 13:05:11 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/egl: check the feature in the extensions list https://bugzilla.gnome.org/show_bug.cgi?id=774518 2016-11-16 20:41:39 +0200 Sebastian Dröge * gst/vmnc/vmncdec.c: vmncdec: Sanity-check width/height before using it We will allocate a screen area of width*height*bpp bytes, however this calculation can easily overflow if too high width or height are given inside the stream. Nonetheless we would just assume that enough memory was allocated, try to fill it and overwrite as much memory as wanted. Also allocate the screen area filled with zeroes to ensure that we start with full-black and not any random (or not so random) data. https://scarybeastsecurity.blogspot.gr/2016/11/0day-poc-risky-design-decisions-in.html Ideally we should just remove this plugin in favour of the one in gst-libav, which generally seems to be of better code quality. https://bugzilla.gnome.org/show_bug.cgi?id=774533 2016-11-16 18:50:53 +0200 Sebastian Dröge * configure.ac: ttml: Hide behind --enable-experimental The elements are autoplugged and currently assert on invalid streams. 2016-11-16 16:45:27 +0200 Sebastian Dröge * gst/smoothwave/.gitignore: smoothwave: Remove empty directory 2016-11-16 16:33:41 +0200 Sebastian Dröge * gst/meson.build: * gst/real/meson.build: real: Remove empty directory 2016-11-16 16:15:34 +0200 Sebastian Dröge * gst/meson.build: * gst/mpeg1sys/meson.build: mpeg1sys: Remove obsolete, empty directory that only contains a meson.build 2016-11-15 16:20:10 +0100 Imre Eörs * ext/curl/gstcurlbasesink.c: curl: transfer hangs in case connection was cut between client and server https://bugzilla.gnome.org/show_bug.cgi?id=774485 2016-11-16 17:30:54 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/tests: don't use the default framebuffer Create our own instead as the default framebuffer may require special fiddling (like having a visible window) to correctly display/be renderable. Fixes the remaining GL library tests on OS X 2016-11-16 13:39:32 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: implement empty swap_buffers Fixes some GL tests on OS X. 2016-11-16 16:41:59 +1100 Matthew Waters * ext/gl/BUGS: gl: remove empty BUGS file We use bugzilla for bug tracking 2016-11-15 17:46:17 -0300 Thibault Saunier * ext/meson.build: * ext/wayland/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/wayland/meson.build: * meson.build: meson: Build waylandsink https://bugzilla.gnome.org/show_bug.cgi?id=774493 2016-11-15 17:48:15 +0000 Luis de Bethencourt * configure.ac: configure: fix build if wayland-client is not available Simplify the PKG_CHECK_MODULES related to Wayland to avoid the confusion of NOT_FOUND cases when there are 3 nested checks. Group those 3 checks together since there are no conditions specific to each one. Thanks to https://ci.gstreamer.net/ for alerting of the problem. https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-15 11:59:45 +0000 Luis de Bethencourt * configure.ac: configure: fix build if libdrm is not available If the NOT_FOUND part of the check PKG_CHECK_MODULES is not written, it defaults to error. Addind the else clause of this check as HAVE_WAYLAND="no" https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-16 00:01:00 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: remove unneeded window code in NSWindow This is all taken care of by GstGLWindowCocoa/GstGLNSView now. 2016-11-15 22:56:25 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow/cocoa: remove our view from the parent when closing Otherwise, when the application reuses the same UIView, we were getting draw notifications on the previous view/layer's which weren't valid anymore and were referencing pointers that had been freed. https://bugzilla.gnome.org/show_bug.cgi?id=753003 2016-11-15 21:43:59 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: add a debug category 2016-11-15 14:36:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: introduce check for GLMemory allocators The last missing piece of EGLImage support has been pushed. 2016-11-14 17:02:54 -0800 Scott D Phillips * gst-libs/gst/codecparsers/gstjpegparser.c: * gst/frei0r/gstfrei0r.c: * gst/id3tag/id3tag.c: Fix some MSVC warnings about const-ness Some miscellaneous warnings about const-ness, either casting away const where we know it's safe or removing const where it's not correct. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-14 16:59:48 -0800 Scott D Phillips * gst-libs/gst/codecparsers/gstmpegvideometa.c: Cast away const from GstMetaInfo in *_get_meta_info() functions MSVC warns about the const in the implicit argument conversion in the calls to g_once_init_{enter,leave}. It's OK so explicitly cast it. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-10 23:07:50 +0900 Seungha Yang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix startup SEGMENT seeking and setting for live Because fragment.timestamp is relative value to period_start, startup SEGMENT seeking should be pointed to "fragment.timestamp + period_start" https://bugzilla.gnome.org/show_bug.cgi?id=774196 2016-11-14 12:23:37 +0100 Philippe Renon * sys/winscreencap/gstgdiscreencapsrc.c: gdiscreencapsrc: remove empty gst_gdiscreencapsrc_stop vfunc https://bugzilla.gnome.org/show_bug.cgi?id=774400 2016-11-10 18:42:29 +0100 Philippe Renon * configure.ac: * ext/opencv/Makefile.am: * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcvdilateerode.h: * ext/opencv/gstcvequalizehist.h: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: * ext/opencv/gstcvsobel.h: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.h: * ext/opencv/gsthanddetect.h: * ext/opencv/gstmotioncells.h: * ext/opencv/gstretinex.h: * ext/opencv/gstskindetect.h: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextoverlay.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/opencv/Makefile.am: * gst-libs/gst/opencv/gstopencvutils.cpp: * gst-libs/gst/opencv/gstopencvutils.h: * gst-libs/gst/opencv/gstopencvvideofilter.cpp: * gst-libs/gst/opencv/gstopencvvideofilter.h: opencv: move base opencv filter class and utilities to gst-libs https://bugzilla.gnome.org/show_bug.cgi?id=774223 2016-11-14 23:15:05 +0530 Arun Raghavan * sys/fbdev/meson.build: * sys/meson.build: fbdevsink: Add to meson build 2016-11-14 23:11:11 +0530 Arun Raghavan * sys/kms/meson.build: kmssink: Trivial naming fix in meson for consistency 2016-11-14 21:03:20 +0530 Arun Raghavan * sys/kms/meson.build: * sys/meson.build: kmssink: Enable in meson build 2016-11-14 17:00:21 +0200 Sebastian Dröge * tests/check/elements/dash_mpd.c: dash: Fix breakage in unit test caused by gst-indent 2016-11-14 23:31:37 +0900 Seungha Yang * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/Makefile.am: * tests/check/elements/dash_mpd.c: * tests/check/elements/dash_mpd_data/xlink_double_period.period: * tests/check/elements/dash_mpd_data/xlink_single_period.period: mpdparser: Support multiple Period elements in external xml External xml could have empty, one or multiple top-level "Period" elements. Because xml parser cannot parse the multiple top-level elements (i.e., no root element), we need to wrap a xml in order to make root element. See also ISO/IEC 23009-1:2014 5.3.2.2 https://bugzilla.gnome.org/show_bug.cgi?id=774357 2016-11-03 10:47:00 -0700 Scott D Phillips * sys/msdk/Makefile.am: * sys/msdk/gstmsdkenc.c: * sys/msdk/meson.build: * sys/msdk/msdk.c: * sys/msdk/msdk.h: * sys/msdk/msdk_d3d.c: * sys/msdk/msdk_libva.c: msdk: Initial windows build support https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-10-13 14:30:43 -0700 Scott D Phillips * sys/meson.build: * sys/msdk/meson.build: meson: add build files for msdk https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-09-27 14:21:34 -0700 Scott D Phillips * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkvp8enc.c: msdk: load plugins in h265 and vp8 init https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-09-27 14:17:49 -0700 Scott D Phillips * sys/msdk/gstmsdkenc.c: msdk: Width and Height need to be integer multiples of 32 https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-09-09 15:43:25 -0700 Scott D Phillips * configure.ac: * sys/Makefile.am: * sys/msdk/Makefile.am: msdk: add to build https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-04-01 19:25:25 +0200 Josep Torra * sys/msdk/README: * sys/msdk/gstmsdk.c: * sys/msdk/gstmsdkenc.c: * sys/msdk/gstmsdkenc.h: * sys/msdk/gstmsdkh264enc.c: * sys/msdk/gstmsdkh264enc.h: * sys/msdk/gstmsdkh265enc.c: * sys/msdk/gstmsdkh265enc.h: * sys/msdk/gstmsdkmpeg2enc.c: * sys/msdk/gstmsdkmpeg2enc.h: * sys/msdk/gstmsdkvp8enc.c: * sys/msdk/gstmsdkvp8enc.h: * sys/msdk/msdk.h: * sys/msdk/msdk_libva.c: msdk: Create plugin for Intel's Media SDK [scott.d.phillips@intel.com: gst-indent *.c *.h] [scott.d.phillips@intel.com: link with libva at build time] [scott.d.phillips@intel.com: remove unused includes] [scott.d.phillips@intel.com: Update README] https://bugzilla.gnome.org/show_bug.cgi?id=770990 2016-11-14 11:08:24 +0100 Philippe Normand * ext/dash/gstmpdparser.c: * tests/check/elements/dash_demux.c: mpdparser: wrap unmodified data in protection event PlayReady being the one of the few DRM formats encoding its data with base64 it was not consistent to have a special case for this. So the base64 decoding operation now needs to be done by the protection event consumer, if needed. https://bugzilla.gnome.org/show_bug.cgi?id=774112 2016-11-14 11:06:00 +0100 Philippe Normand * ext/smoothstreaming/gstmssdemux.c: mssdemux: wrap unmodified data in protection event PlayReady being the one of the few DRM formats encoding its data with base64 it was not consistent to have a special case for this. So the base64 decoding operation now needs to be done by the protection event consumer, if needed. https://bugzilla.gnome.org/show_bug.cgi?id=774112 2016-11-14 11:32:17 +0200 Sebastian Dröge * ext/dtls/gstdtlscertificate.c: dtlscertificate: Fix error checking in RSA_generate_key_ex() usage Was broken during the port for OpenSSL 1.1. https://bugzilla.gnome.org/show_bug.cgi?id=774328 2016-11-11 10:55:57 -0800 Scott D Phillips * sys/winks/kshelpers.c: winks: undef windows SDK macros before redefining them Redefining an already defined macro causes a warning from the msvc preprocessor https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-11 10:54:52 -0800 Scott D Phillips * sys/d3dvideosink/d3dhelpers.c: Remove 'return' from `void` functions https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-11 10:51:49 -0800 Scott D Phillips * gst/mpegtsdemux/gstmpegdefs.h: mpegtsdemux: fix operator precedence in SAFE_FOURCC_ARGS Type cast has higher precedence than bitwise shift, so the third argument will truncate to 8 bits and then shift right by 8 bits resulting in constant zero. https://bugzilla.gnome.org/show_bug.cgi?id=774293 2016-11-12 10:38:04 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Fix NULL pointer dereference when checking if there is a next fragment Thanks to Aleksandr for reporting and suggesting the fix. https://bugzilla.gnome.org/show_bug.cgi?id=774287 2016-10-26 22:36:17 -0700 Scott D Phillips * meson.build: meson: don't add_global_arguments when being built as a subproject https://bugzilla.gnome.org/show_bug.cgi?id=773568 2016-11-11 01:05:55 +0000 Tim-Philipp Müller * gst-libs/gst/gl/meson.build: gl: x11-xcb is not a required dependency Don't fail if it's not found.. 2016-10-19 14:54:44 +0200 Philipp Zabel * sys/kms/gstkmsallocator.c: kmssink: do not get kms bo pitch for planar formats The API is ill defined for planar formats in case of dumb BOs, do not use the reported stride in those cases. https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-10-18 09:19:09 +0200 Michael Tretter * sys/kms/gstkmssink.c: kmssink: remove custom gst_kms_sink_get_times The default get_times() function of the base sink is just fine. Remove the custom get_times() function, because the default function already reads the timestamps from the buffers. Signed-off-by: Michael Tretter https://bugzilla.gnome.org/show_bug.cgi?id=773473 2016-11-10 17:20:27 +1100 Matthew Waters * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: use the duration from the list of fragments if not present in the manifest Provides a more accurate duration for live streams that may be minutes or hours in front of the earliest fragment. https://bugzilla.gnome.org/show_bug.cgi?id=774178 2016-11-10 17:18:36 +1100 Matthew Waters * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: smoothstreaming: implement adaptivedemux's get_live_seek_range() Allows seeking through the available fragments that are still available on the server as specified by the DVRWindowLength attribute in the manifest. https://bugzilla.gnome.org/show_bug.cgi?id=774178 2016-11-09 21:20:21 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: reset the manifest failure count after a successful retrieval This changes the failure case to require a consecutive number of failures rather than being spread out over the entire stream. Fixes the case where fetching the manifest was intermittent. https://bugzilla.gnome.org/show_bug.cgi?id=774177 2016-11-09 21:18:06 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: call the subclass for duration queries for live sources Otherwise, the duration query was failing for live sources https://bugzilla.gnome.org/show_bug.cgi?id=774177 2016-11-09 21:15:29 +1100 Matthew Waters * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: restart the manifest update task after a seek For formats that need to update the manifest to know about new fragments as they're being written by the server would never receive an updated fragment list after a seek event https://bugzilla.gnome.org/show_bug.cgi?id=774177 2016-11-09 17:10:21 +0900 Dongil Park * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegts: fix typo in GstMpegtsDescriptor https://bugzilla.gnome.org/show_bug.cgi?id=774132 2016-11-10 20:34:53 +1100 Matthew Waters * ext/gl/gstglutils.c: * ext/gl/gstglutils.h: gl/build: add missing build files 3f7b54988186de17ec4e5b5566074cfaa392819a was incomplete :( 2016-11-10 19:14:24 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * ext/gl/meson.build: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: gl/utils: move gen_shader() to the plugin and remove del_shader() gst_gl_context_del_shader() can be replaced by a g_object_unref(). gst_gl_context_gen_shader() should be replaced by using GstGLSLStage. 2016-10-26 16:53:27 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: remove unused field in public struct 2016-10-26 16:30:43 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: remove is_running() function It isn't necessary in correctly written programs. 2016-11-08 17:50:51 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson/gl: XCB changes also need x11-xcb as a dependency https://ci.gstreamer.net/job/GStreamer-master-meson/380/console [...] gst-libs/gst/gl/x11/xcb_event_source.c:98: undefined reference to `xcb_get_file_descriptor' 2016-11-07 12:30:20 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Allow registering codecs, camera or sensors if any of the others failed https://bugzilla.gnome.org/show_bug.cgi?id=774048 2016-11-07 12:24:59 +0200 Sebastian Dröge * sys/androidmedia/gst-android-hardware-sensor.c: ahs: Don't assert on deinit if initialization failed before Initialization failure is handled correctly by just not registering the ahssrc element. https://bugzilla.gnome.org/show_bug.cgi?id=774048 2016-11-08 09:52:48 +0100 Philippe Normand * gst-libs/gst/gl/meson.build: gl/x11: fix meson build The x11_event_source.[ch] files were renamed in 4f6c226bd24ae3ef66bd8f4c17b001444c9b0bf1. 2016-11-08 15:04:29 +1100 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: examples/gl/qt: fix the examples for the use of newer API gstgl doesn't undo/overwrite what GL state the examples are changing anymore. As such, the examples need to reset the GL state themselves to be able to play nice with libgstgl 2016-11-08 13:35:33 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glfiltershader: expand the docs slightly Add an example OpenGL shader 2016-07-01 00:31:07 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: remove the navigation thread This functionality can now effectively be implemented with the display event thread. 2016-07-01 00:07:23 +1000 Matthew Waters * configure.ac: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/xcb_event_source.c: * gst-libs/gst/gl/x11/xcb_event_source.h: gl/x11: use xcb instead of libX11 - xcb is supposedly thread-safe! videotestsrc ! glimagesink now doesn't spuriously result in a 'call XInitThreads()' error however if anybody else is using X11, then XInitThreads() still needs to be called and multiple glimagesink's still need XInitThreads(). Everything still takes libX11 handles as they are compatible with the xcb variants. Unfortunately we cannot move fully over to xcb due to GLX being entirely based on Xlib. It's also impossible to transform a xcb_connection to a Display which means we require X11 handles. 2016-06-30 23:12:33 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add a list of glwindow's With the event thread on the display, for a particular winsys event we need to be able to retreive the window that the event matches. 2016-06-30 23:04:16 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add a dedicated event thread Will take the place of the navigation event thread for dealing with winsys events. 2016-11-08 12:44:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.h: gl: don't expose OpenGL prototypes We roll our own to avoid depending a certain OpenGL header version 2016-11-08 02:56:44 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: don't install the gstglcontext_cocoa.h header It's not needed to be exposed 2016-11-08 02:52:37 +1100 Matthew Waters * gst-libs/gst/gl/android/Makefile.am: gl/android: don't install the android window header It's not needed 2016-11-08 02:50:41 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: gl: add padding to all exposed winsys/platform-specific structs 2016-11-08 02:47:36 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: * gst-libs/gst/gl/wayland/Makefile.am: gl/wayland: install the gstgldisplay_wayland.h header As it is used by other OpenGL sinks (gtkglsink, qmlglsink) 2016-11-08 02:44:30 +1100 Matthew Waters * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/meson.build: gl/egl: don't install the gstglcontext_egl.h header It's not needed to be exposed and there are no users of the API. 2016-11-08 02:21:20 +1100 Matthew Waters * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: remove display_init/reset They are mirrors of GstGLBaseFilter's gl_start() and gl_stop() virtual methods so use them instead. 2016-11-07 14:47:22 +0800 Haihua Hu * ext/qt/gstqtsrc.cc: * ext/qt/gstqtsrc.h: * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: qmlglsrc: some enhancements for qmlglsrc 1. Need set use-default-fbo to qquickwindow during set property to support change render target on the fly. 2. Calculate qmlglsrc refresh frame rate in qtglwindow https://bugzilla.gnome.org/show_bug.cgi?id=774035 2016-11-04 11:56:13 +0530 Gaurav Gupta * sys/vdpau/gstvdpsink.c: vdpsink: fix Memory leak due to Xlib API usage https://bugzilla.gnome.org/show_bug.cgi?id=773932 2016-11-04 09:56:33 +0100 Philippe Normand * ext/dash/gstmpdparser.c: * tests/check/elements/dash_demux.c: * tests/check/elements/dash_mpd.c: mpdparser: MS PlayReady ContentProtection parsing The "pro" (PlayReady Object) element contents are now base64-decoded and properly stored in Protection events. https://bugzilla.gnome.org/show_bug.cgi?id=773936 2016-11-04 16:26:50 +0200 Sebastian Dröge * gst/yadif/gstyadif.c: * tests/check/elements/compositor.c: gst: Fix more mentions of interlaced-mode to say interlace-mode 2016-11-04 13:43:08 +0000 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: only use libdrm headers, don't link to the lib https://bugzilla.gnome.org/show_bug.cgi?id=773927 2016-11-04 09:26:48 +0000 Tim-Philipp Müller * configure.ac: * sys/kms/Makefile.am: kms: rename variable used Since this includes kms. 2016-11-04 00:52:41 +0000 Tim-Philipp Müller * configure.ac: * ext/wayland/Makefile.am: * ext/wayland/wlvideoformat.h: wayland: include drm_fourcc.h properly and fix build 2016-11-04 00:44:32 +0000 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: fix cflags/libs order 2016-11-04 09:51:36 +0530 Arun Raghavan * ext/vulkan/meson.build: vulkan: Add missing files to meson build 2016-09-29 16:30:33 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wllinuxdmabuf.c: * ext/wayland/wlshmallocator.c: waylandsink: Rework dmabuf support Simplify and fix some of the show_frame logic. https://bugzilla.gnome.org/show_bug.cgi?id=711155 2016-09-22 11:10:47 +0200 Fabien Dessenne * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wllinuxdmabuf.c: * ext/wayland/wllinuxdmabuf.h: * ext/wayland/wlshmallocator.c: * ext/wayland/wlvideoformat.c: * ext/wayland/wlvideoformat.h: waylandsink: support linux dmabuf protocol Support the wayland zwp_linux_dmabuf_unstable_v1 protocol. SHM formats and DMABuf formats are exposed differently in caps: the DMABuf formats are flagged with GST_CAPS_FEATURE_MEMORY_DMABUF. No buffer pool is proposed for DMABuf buffers, it is the upstream element responsibility to provide with such buffers. https://bugzilla.gnome.org/show_bug.cgi?id=711155 2016-09-29 14:34:18 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wlshmallocator.c: waylandsink: Allow any kind of FD for shm memory https://bugzilla.gnome.org/show_bug.cgi?id=711155 2016-11-03 17:34:54 +0000 Luis de Bethencourt * configure.ac: * ext/ttml/meson.build: ttml: bump needed libxml2 version ttml was recently added but it won't compile unless libxml2 version 2.9.2 or later is available. In that version the first parameter of xmlGetProp switched to being a const. In previous versions the compiler complains about passing a const value to a non const argument. 2016-11-03 08:31:36 +0100 Edward Hervey * tests/check/elements/.gitignore: check: Add new test to .gitignore 2016-11-03 18:19:58 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Fix inverted precondition A GError argument must either be null or point to a NULL GError. https://developer.gnome.org/glib/stable/glib-Error-Reporting.html 2016-09-01 20:04:08 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: Use the trash list to free resources after they've been used This allows further parallelism and removes a device wait from the end of the render code. 2016-09-01 19:52:40 +1000 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/vk.h: * ext/vulkan/vk_fwd.h: * ext/vulkan/vktrash.c: * ext/vulkan/vktrash.h: vulkan: add a trash object This allows pushing the destruction of vulkan resources after the signalling of an vulkan event. The event facilitates knowing when a specific point in the vulkan queue has been reached. Only after the event has been signaled can vulkan resources be freed and/or reused. 2016-09-01 19:51:11 +1000 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/vk.h: * ext/vulkan/vk_fwd.h: * ext/vulkan/vkfence.c: * ext/vulkan/vkfence.h: vulkan: add a simple refcountable fence wrapper 2016-11-03 16:14:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglwindow.c: gl/gi: some annotation updates for called functions With scope, closure, destroy annotations 2016-11-03 16:12:32 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl/gi: also include GstVideo Removes all the unknown type GstVideo* warnings while building the GIR file. 2016-10-27 16:19:04 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfeature_private.h: glfeature: move internal functions into a private header Don't expose them to the outside world 2016-10-05 12:19:12 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/caopengllayersink.m: * ext/gl/gstglbasemixer.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstglvideomixer.c: * ext/gtk/gstgtkglsink.c: * ext/qt/gstqtsink.cc: * ext/qt/gstqtsrc.cc: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/glcontexthelper.c: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare2.c: gl: GST_GL_TYPE -> GST_TYPE_GL Some deprecated symbols are kept for backwards compatibility 2016-11-03 12:03:24 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.h: gl/docs: massive update - add Since: markers where necessary. - document structs - add documentation headers for each module (short_description, see_also, etc) - reduce the number of warnings gtk-doc outputs - fix spelling mistakes 2016-11-02 21:21:33 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.c: gl/docs: document new API added in 1.10 GstGLRenderbuffer GstGLFramebuffer GstGLQuery GstEGLImage GstGLMemoryEGL 2016-11-01 16:13:21 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: gl/docs: update lists of included symbols in the sections and types files. Also remove some unneeded types from the documentation as they aren't exposed as public API 2016-11-01 17:30:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglsl.c: * tests/check/libs/gstglsl.c: glsl: fix #version 150 not working with profiles The spec allows the core/compatibility profiles to be used with #version 150. Also tighten up the tests to check for default profiles being chosen correctly. 2016-11-02 20:14:39 +0200 Sebastian Dröge * ext/meson.build: * ext/ttml/meson.build: ttml: Add meson.build 2016-11-02 20:14:23 +0200 Sebastian Dröge * ext/fdkaac/meson.build: * ext/meson.build: fdkaac: Add meson.build 2016-11-02 16:12:42 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Also stop scheduled playback when gst_element_lost_state() is called Unfortunately this does not go through the normal state change machinery, so we don't get notified about this in change_state(). However we need to stop scheduled playback, so that once PLAYING is reached again we can start scheduled playback with the correct time. Without this, flushing seeks in PLAYING will not work correctly: decklinkvideosink will wait before showing the new frames for the amount of time the pipeline was in PLAYING before. 2016-11-02 15:00:36 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Use gst_clock_adjust_with_calibration() and unadjust_with_calibration() Instead of hand-crafted versions of the same calculation. These calculations are still too complicated though. 2016-11-02 14:04:19 +0200 Sebastian Dröge * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlssrtpdec.c: dtls: Fix compiler warnings with openssl 1.1 or newer - DTLSv1_method() is deprecated, and since 1.0.2 replaced by DTLS_method(). - CRYPTO_set_locking_callback() and CRYPTO_set_id_callback() are no-ops (empty macros) since 1.1 and are not supposed to be used anymore. gstdtlsagent.c: In function ‘gst_dtls_agent_init’: gstdtlsagent.c:173:3: error: ‘DTLSv1_method’ is deprecated [-Werror=deprecated-declarations] priv->ssl_context = SSL_CTX_new (DTLSv1_method ()); ^~~~ In file included from /usr/include/openssl/ct.h:13:0, from /usr/include/openssl/ssl.h:61, from gstdtlsagent.c:40: /usr/include/openssl/ssl.h:1614:1: note: declared here DEPRECATEDIN_1_1_0(__owur const SSL_METHOD *DTLSv1_method(void)) /* DTLSv1.0 */ ^ At top level: gstdtlsagent.c:103:1: error: ‘ssl_thread_id_function’ defined but not used [-Werror=unused-function] ssl_thread_id_function (void) ^~~~~~~~~~~~~~~~~~~~~~ gstdtlsagent.c:73:1: error: ‘ssl_locking_function’ defined but not used [-Werror=unused-function] ssl_locking_function (gint mode, gint lock_num, const gchar * file, gint line) ^~~~~~~~~~~~~~~~~~~~ 2016-11-02 11:21:36 +0200 Sebastian Dröge * win32/common/libgstplayer.def: win32: Update for new GstPlayer API 2016-01-05 18:50:45 +0100 Florian Zwoch * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstdx9screencapsrc.h: dx9screencapsrc: add "cursor" option to draw the cursor Drawing is done via the GDI drawing functions. The cursor is converted to a monochrome version before drawing. This is because the GDI drawing functions seem to have undefined behavior with cursor images including an alpha channel. I could not find any other reliable way to draw these alpha channel cursors without producing unwanted artifacts. These type of cursors were introduced with Window Vista when run with it's Aero theme. Also adjust the cursor coordinates when capturing non-primary screens via the "monitor" option. https://bugzilla.gnome.org/show_bug.cgi?id=760172 2016-11-02 09:36:04 +0200 Sebastian Dröge * tests/check/elements/rawvideoparse.c: Revert "tests: rawvideoparse: add test for flow error handling" This reverts commit 280b4ac2ffc63908a74944f50589b2630be16232. https://bugzilla.gnome.org/show_bug.cgi?id=773666 2016-10-28 16:39:13 -0400 Olivier Crête * ext/dtls/gstdtlsagent.c: dtls: Downgrade locking debug 2016-06-29 09:58:38 +0100 Chris Bass * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-ttmlsubs.xml: * ext/Makefile.am: * ext/ttml/Makefile.am: * ext/ttml/gstttmlparse.c: * ext/ttml/gstttmlparse.h: * ext/ttml/gstttmlplugin.c: * ext/ttml/gstttmlrender.c: * ext/ttml/gstttmlrender.h: * ext/ttml/subtitle.c: * ext/ttml/subtitle.h: * ext/ttml/subtitlemeta.c: * ext/ttml/subtitlemeta.h: * ext/ttml/ttmlparse.c: * ext/ttml/ttmlparse.h: ttml: Add plugin that supports TTML subtitles Add a parser (ttmlparse) and renderer (ttmlrender) element that handle subtitles that use the EBU-TT-D profile of TTML1. https://bugzilla.gnome.org/show_bug.cgi?id=758232 2016-10-29 11:33:18 +0100 Tim-Philipp Müller * tests/check/elements/rawvideoparse.c: tests: rawvideoparse: add test for flow error handling Also needs fixes in baseparse: https://bugzilla.gnome.org/show_bug.cgi?id=773666 2016-11-01 18:10:23 +0000 Tim-Philipp Müller * meson.build: meson: update version 2016-10-26 16:28:10 +0800 Lyon Wang * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * win32/common/libgstplayer.def: player: Add configuration for enabling accurate seeks https://bugzilla.gnome.org/show_bug.cgi?id=773521 2016-10-21 14:01:11 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Ignore channel-mask when checking set_caps compatibility channel-mask doesn't matter in decklinkaudiosrc, and differences in it can cause caps negotiations to fail without a real reason. https://bugzilla.gnome.org/show_bug.cgi?id=773313 2016-10-04 16:59:09 +0100 Vincent Penquerc'h * tests/check/Makefile.am: * tests/check/elements/srtp.c: tests: add a test for srtp elements https://bugzilla.gnome.org/show_bug.cgi?id=772357 2016-10-03 09:52:07 +0100 Vincent Penquerc'h * ext/srtp/gstsrtpdec.c: srtpdec: add stats readonly property, similar to srtpenc https://bugzilla.gnome.org/show_bug.cgi?id=772357 2016-09-26 18:01:30 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Cache duration and return cached duration https://bugzilla.gnome.org/show_bug.cgi?id=771992 2016-01-08 21:41:56 +0000 Tim-Philipp Müller * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: bayer: fix stride inconsistencies for odd widths Consistently use GST_ROUND_UP_4(width) as stride for bayer buffers. Bayer data will usually come in widths that are multiples of 4 anyway, so hopefully this should not have any adverse impact on anyone in practice. Before, bayer2rgb required input buffers to are sized accordingly, but then didn't actually round up when calculating row offsets. rgb2bayer didn't use a rounded stride nor buffer size. https://bugzilla.gnome.org/show_bug.cgi?id=752014 === release 1.11.0 === 2016-11-01 18:53:15 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.10.0 === 2016-11-01 17:58:20 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.10.0 2016-11-01 17:51:03 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-11-01 17:42:37 +0200 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2016-10-31 19:26:31 +0600 Artem Martynovich * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Correctly cast mixer to uintptr https://bugzilla.gnome.org/show_bug.cgi?id=773720 2016-10-28 10:05:20 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: don't try to access non-existant iframe variant If the playlist does not contain any iframe variants then demux->master->iframe_variants is NULL. If the previous variant is an iframe variant then there is at least one iframe variant and demux->master->iframe_variants->data can be safely used. https://bugzilla.gnome.org/show_bug.cgi?id=773635 2016-10-23 12:02:00 +0300 sezero * ext/timidity/gsttimidity.c: timidity: add support for libtimidity-0.2.x mid_istream_open_mem() doesn't accept an autofree argument as of libtimidity >= 0.2.0 https://bugzilla.gnome.org/show_bug.cgi?id=772503 2016-10-26 14:51:01 +0200 Daiki Ueno * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlsconnection.c: dtls: port to OpenSSL 1.1.0 Changes are: - Use the wrapper functions to access opaque data types. To preserve backward compatibility, define fallback definitions - Remove the use of idiom "pqueue_size(ssl->d1->sent_messages)", since there is no replacement - Use RSA_generate_key_ex instead of the deprecated RSA_generate_key https://bugzilla.gnome.org/show_bug.cgi?id=773540 2016-10-29 11:31:28 +0100 Tim-Philipp Müller * gst/rawparse/gstrawbaseparse.c: rawparse: pass flow returns upstream rawvideoparse wouldn't error out on not-negotiated, but would just keep on going, because it didn't pass the flow return value back to the parent class and thus upstream, so the source wouldnt' stop streaming. 2016-10-28 07:17:56 +0530 Nirbheek Chauhan * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: build: Also need to define GST_EXPORTS for Autotools The change to use GST_EXPORT for symbols under Windows requires GST_EXPORTS for internal use, and that is also needed under Autotools. The same thing is done for gstreamer-1.0.dll in -core. 2016-10-28 06:23:02 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl_private.h: gstgl: Re-enable WINAPI on _MSC_VER The calling convention may be deprecated, but we still need it for OpenGL. The build issue was caused by an incorrect syntax being used for the WINAPI (__stdcall) prototype in function pointers which was accepted by GCC but is rejected by MSVC. 2016-10-27 23:09:38 +0530 Nirbheek Chauhan * win32/common/libgstgl.def: Just remove win32/common/libgstgl.def It was always wrong since the symbols being exported in gstgl-1.0.dll are platform-specific, and the check we do in dist checks it on all platforms (which usually means Linux) and the list is instead Linux-specific right now. Even if we fix that, it can still never be right because it depends on your configuration even on a specific platform. For instance, when we start building EGL support on Windows using ANGLE, the symbol list will change depending on whether that is enabled or not. We also don't need this anymore since we use GST_EXPORT for all functions exported on Windows now. 2016-10-27 09:25:20 +0530 Nirbheek Chauhan * ext/gl/gstglstereosplit.c: * ext/openh264/gstopenh264enc.cpp: * gst/videoparsers/gsth264parse.c: plugins: Use explicit type conversion from enums MSVC warns about this because it's a C++ compiler, and this actually results in useful things such as the incorrect 'gboolean' return value for functions that return GstFlowReturn, so let's do explicit conversions to reduce the noise and increase its efficacy. 2016-10-27 09:11:26 +0530 Nirbheek Chauhan * ext/dash/gstdashdemux.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/gaudieffects/gstgaussblur.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: Explicitly define float constants as float With MSVC, this gives the following warning: warning C4305: 'function': truncation from 'double' to 'gfloat' Apparently, MSVC does not figure out what type to use for constants based on the assignment. This warning is very spammy, so let's try to fix it. 2016-10-27 09:08:41 +0530 Nirbheek Chauhan * ext/dts/gstdtsdec.c: * ext/faad/gstfaad.c: * ext/gl/gstglviewconvert.c: * ext/schroedinger/gstschrodec.c: * gst-libs/gst/audio/gstaudioaggregator.c: Fix incorrect return type in several functions All these should return GstFlowReturn, not gboolean 2016-10-27 09:06:33 +0530 Nirbheek Chauhan * meson.build: meson: Don't warn about C4146 with MSVC The error is: unary minus operator applied to unsigned type, result still unsigned This is a commonly-done operation in gstreamer and it's done on purpose. It's just noise. 2016-10-27 08:17:58 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglsyncmeta.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.h: * gst-libs/gst/gl/gstglwindow.h: gstgl: Add GST_EXPORT to all symbols used on Windows This is a requirement for those symbols to be exported in gstgl-1.0.dll when building with the MSVC compiler 2016-10-27 07:29:36 +0530 Nirbheek Chauhan * gst-libs/gst/gl/meson.build: meson: Add support for building WGL on Windows Currently only tested with MSVC. 2016-10-27 09:10:03 +0530 Nirbheek Chauhan * ext/gl/gstgloverlay.c: ext/gl: Don't define boolean on Windows with MSVC The headers we include already define boolean on Windows with MSVC, and it leads to a typedef redefinition error with jpeglib.h which tries to redefine it in jmorecfg.h 2016-10-27 07:30:19 +0530 Nirbheek Chauhan * gst-libs/gst/gl/gstglapi.h: gstgl: Porting fixes for MSVC with Meson GL/gl.h needs windows.h on MSVC WINAPI should not be used with MSVC. It also causes a build error. 2016-10-23 22:13:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: collapse notes on channel_name encoding conflict 2016-10-23 22:00:30 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: rename ZAP parser for clarity This function only does ZAP parsing. Additionally, remove redundant comment while at it. 2016-10-23 21:37:46 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: dvb: fix gtk-doc syntax for wrongly formatted comments 2016-10-21 00:37:03 -0700 Scott D Phillips * ext/hls/meson.build: meson: hls: Only build when any crypto_dep is found https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-21 00:39:32 -0700 Scott D Phillips * sys/directsound/meson.build: meson: directsound: Add ole32 library dependency https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-17 09:35:41 -0700 Scott D Phillips * sys/winscreencap/meson.build: meson: winscreencap depends on gstvideo https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-21 00:35:09 -0700 Scott D Phillips * meson.build: meson: Remove gstreamer-check-1.0 dependency It will later be added under tests/check https://bugzilla.gnome.org/show_bug.cgi?id=773114 2016-10-21 13:10:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: don't glFinish() everytime a sync point is set At minimum, we only need to glFlush() if we are in a shared GL context environment. Move the glFinish() to when the actual wait is requested which may be never. Improves the throughput on older GL systems without GL3/GLES3 and/or fence sync objects. 2016-07-16 15:29:42 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: do not use invalid stream duration If it is is unknown, consider it infinite https://bugzilla.gnome.org/show_bug.cgi?id=768460 2016-07-16 15:15:21 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: properly inherit segmentlist from period Representation can inherit SegmentList from Period if none is available from the AdaptationSet https://bugzilla.gnome.org/show_bug.cgi?id=768460 2016-10-19 16:11:58 +1100 Matthew Waters * ext/gl/gstopengl.c: * ext/gl/meson.build: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/meson.build: * meson_options.txt: meson: gl: add support for building with dispmanx on the rpi 2016-10-18 22:29:19 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/eglimage: Fix passing the destroy function to gst_egl_image_new_wrapped The function pointer and the user data arguments were swapped in both uses. https://bugzilla.gnome.org/show_bug.cgi?id=769382 2016-10-18 13:01:04 +0530 Nirbheek Chauhan * gst/segmentclip/meson.build: meson: Add missing gstvideo dep to segmentclip In file included from ../subprojects/gst-plugins-base/gst-libs/gst/video/video.h:27:0, from ../subprojects/gst-plugins-bad/gst/segmentclip/gstvideosegmentclip.c:25: ../subprojects/gst-plugins-base/gst-libs/gst/video/video-format.h:27:39: fatal error: gst/video/video-enumtypes.h: No such file or directory #include ^ compilation terminated. https://ci.gstreamer.net/job/GStreamer-master-meson/269/console 2016-10-11 17:06:23 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: Implemented gst_video_overlay_set_window_handle() https://bugzilla.gnome.org/show_bug.cgi?id=772608 2016-10-18 14:11:26 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl: fix detection of glx without gl We need to check for libGL if we may use desktop OpenGL *or* GLX. 2016-10-18 14:10:32 +1100 Matthew Waters * gst-libs/gst/gl/meson.build: meson: gl: fix incorrect error string Use the winsys variable for an incorrect winsys provided 2016-10-16 12:40:22 +0200 Sergey Borovkov * ext/qt/qtwindow.cc: qt: Fix failing build on RPI https://bugzilla.gnome.org/show_bug.cgi?id=773026 2016-10-11 16:58:48 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: egl_show should resize the window only if there is no render rectangle set https://bugzilla.gnome.org/show_bug.cgi?id=772699 2016-10-11 16:55:17 +0530 Munez * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: Fix set_render_rectangle typo https://bugzilla.gnome.org/show_bug.cgi?id=772698 2016-03-18 14:09:37 +0000 Vincent Penquerc'h * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: fix buffer size mismatch in M2TS mode In M2TS mode, we need an extra 4 bytes in the buffer, so need to ensure the buffer can contain these. The allocation site does not know the mode, so this is done in all cases. 2016-10-15 22:19:02 +0530 Nirbheek Chauhan * meson.build: meson: Don't set c_std to gnu99 Use the default for each compiler on every platform instead. This improves our compatibility with compilers that don't have gnu99 as a c_std. 2016-10-14 14:41:42 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix 'delivery system'-related messages * Rephrase tune error to be delsys-neutral * Refer to the actual check in the 'missing sanity check' warnings * Use "Delivery system" instead of 'delsys'. The latter is OK as a shorthand in the code but not even a real word 2016-10-11 18:48:06 +0200 Joan Pau Beltran * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: bayer: fix _transform_caps method to preserve fields in given caps https://bugzilla.gnome.org/show_bug.cgi?id=758717 2016-09-29 12:49:39 -0400 Arun Raghavan * ext/wayland/gstwaylandsink.c: waylandsink: Properly configure internal pool There was a small omission in the code. It still worked, but the pool configuration may not have been optimimal. 2016-10-12 18:20:27 +0100 Tim-Philipp Müller * common: common: sync to latest revision Fixes accidental common change when commit patch. 2016-10-11 11:11:16 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Implement efficient program updates If the parent bin can handle it, only add/remove the new/gone stream instead of re-adding/re-moving everything https://bugzilla.gnome.org/show_bug.cgi?id=772742 2016-10-12 14:35:21 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: Ensure we always get an upstream stream-id This was a regression. We only have a upstream-id via STREAM_START if we were in push-mode. In pull-mode we need to create one. Note: It would be good to eventually have that method (copied from gst_pad_get_stream_id_internal()) public in the future 2016-10-11 16:47:37 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Fix issues with GST_DISABLE_GST_DEBUG Some variables were hidden or unused 2015-07-29 15:52:05 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Switch to using GstStream/GstStreamCollection For each MpegTSBaseStream, we have a GstStream object which subclasses can extend with information. For each program a GstStreamCollection is created with all GstStream from each stream. 2016-10-11 10:50:17 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Remove duplicated code Just have one function to check for private section streams 2016-10-10 17:00:39 +0200 Arnaud Vrac * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix buffer size print format https://bugzilla.gnome.org/show_bug.cgi?id=772706 2016-10-10 16:52:58 +0200 Arnaud Vrac * common: * ext/hls/gsthlsdemux.h: hlsdemux: fix hls demux stream type inheritance GstHLSDemuxStream inherits GstAdaptiveDemuxStream, not GstAdaptiveDemux. Fixes memory corruption issues. https://bugzilla.gnome.org/show_bug.cgi?id=772704 2016-10-09 06:42:30 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: parse guard interval as a fraction Fixes wrong default failover when parsing libdvbv5 formatted channel configuration files. 2016-10-09 03:23:19 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: add prototypes and reorganize for clarity 2016-10-08 07:18:15 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: Update my email address 2016-10-08 05:33:34 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/cam.h: * sys/dvb/camapplication.h: * sys/dvb/camapplicationinfo.h: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.h: * sys/dvb/camresourcemanager.h: * sys/dvb/camsession.h: * sys/dvb/camswclient.h: * sys/dvb/camtransport.h: * sys/dvb/camutils.h: dvb: drop trailing whitespace and c&p leftovers 2016-10-08 05:20:47 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: parse DVB-T hierarchy from v5 config file Avoids relying on the H/W default when the information can be extracted from the configuration file. 2016-10-08 04:55:20 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: parse DVB-T lp and hp code rates 2016-10-08 14:08:06 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegts: Also clear packetizer on TIME DISCONT When dealing with TIME-based input, the incoming stream could have potentially changed completely. In order to check whether it did or not, we need to re-check all sections (PAT, PMT...). If it didn't, we will keep using the existing streams/pad, and if it did we will act as if there was a program switch. Fixes HLS streaming with decodebin3/playbin3 2016-10-02 09:34:51 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Calculate values before queue2 In order to calculate the *actual* bitrate for downloading a fragment we need to take into account the time since we requested the fragment. Without this, the bitrate calculations (previously reported by queue2) would be biased since they wouldn't take into account the request latency (that is the time between the moment we request a specific URI and the moment we receive the first byte of that request). Such examples were it would be biased would be high-bandwith but high-latency networks. If you download 5MB in 500ms, but it takes 200ms to get the first byte, queue2 would report 80Mbit/s (5Mb in 500ms) , but taking the request into account it is only 57Mbit/s (5Mb in 700ms). While this would not cause too much issues if the above fragment represented a much longer duration (5s of content), it would cause issues with short ones (say 1s, or when doing keyframe-only requests which are even shorter) where the code would expect to be able to download up to 80Mbit/s ... whereas if we take the request time into account it's much lower (and we would therefore end up doing late requests). Also calculate the request latency for debugging purposes and further usage (it could allow us to figure out the maximum request rate for example). https://bugzilla.gnome.org/show_bug.cgi?id=733959 https://bugzilla.gnome.org/show_bug.cgi?id=772330 2016-10-06 15:54:00 +0900 Jimmy Ohn * ext/opencv/gstopencvutils.cpp: opencv: Fix memory leak by gst_caps_to_string gst_caps_to_string function returned allocated memory. So, It should be freed using g_free function. https://bugzilla.gnome.org/show_bug.cgi?id=772499 2016-10-05 18:32:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: don't use g_thread_join() to join the navigation thread Using g_thread_join() in _finalize() handlers may result in a deadlock joining the current thread when the last reference is held by a signal handler. e.g.: error 'Resource deadlock avoided' during 'pthread_join (pt->system_thread, NULL)' The backtrace looks like this: [...] g_thread_join () gst_gl_window_finalize () gst_gl_window_x11_finalize () g_object_unref () g_value_unset () g_signal_emit_valist () g_signal_emit () gst_gl_window_send_mouse_event () gst_gl_window_mouse_event_cb () g_main_dispatch () [..] g_main_loop_run () gst_gl_window_navigation_thread () g_thread_proxy () start_thread () clone () 2016-10-05 18:28:48 +1100 Matthew Waters * ext/gl/gstgluploadelement.c: gluploadelement: fix leak of upload library object When only linking the element, the upload object will be created from _transform_caps() but will never be unreffed as the only case is in _stop(). Add an unref if non-NULL to a new finalize handler for this case. 2016-10-05 12:11:19 +1100 Matthew Waters * ext/vulkan/vkdisplay.c: vkdisplay: hold a weakref on the list of windows It's possible that the window may have been destroyed when a winsys event comes in for it. Fixes an assertion in make -C tests/check generic/states.check 2016-10-05 11:37:04 +1100 Matthew Waters * ext/vulkan/vkdevice.c: vkdevice: only unref the gstcontext query if non-NULL Fixes an assertion in make -C tests/check generic/states.check 2016-09-29 11:45:57 +1000 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglupload.c: tests/gl: make sure all GL commands are executed on the GL thread e.g. the final glGetError() must also be completed on the GL thread 2016-09-28 18:04:21 +1000 Matthew Waters * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: gl/win32: remove egl implementation It hasn't been used in ages and is dead code. 2016-09-13 22:07:05 +0900 Wonchul Lee * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add conditions to identify ATSC EAC3 https://bugzilla.gnome.org/show_bug.cgi?id=770528 2016-09-26 15:23:52 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: make parsing errors delsys-neutral DVB is a group of delivery standards but we support several others. While at this, make message formating more congruent. 2016-09-30 11:35:41 -0300 Thibault Saunier * hooks/pre-commit.hook: * meson.build: meson: Setup pre-commit hooks when configuring 2016-09-30 11:41:34 +0100 Tim-Philipp Müller * meson.build: meson: update version 2016-09-30 13:42:06 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Remove Return documentation for function returning void === release 1.9.90 === 2016-09-30 13:02:55 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.9.90 2016-09-30 12:19:32 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-09-30 11:44:47 +0300 Sebastian Dröge * po/ky.po: * po/sv.po: po: Update translations 2016-09-29 21:42:24 +0530 Arun Raghavan * ext/wayland/gstwaylandsink.c: waylandsink: Actually use buffer pool config after setting it up CID: 1373420 2016-09-29 13:36:11 +0300 Sergey Mamonov * ext/lv2/gstlv2filter.c: fix for https://bugzilla.gnome.org/show_bug.cgi?id=771871 2016-09-29 21:45:50 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.c: a2dpsink: Drop some dead-code Left over from the last cleanup. CID: 1373418 2016-09-29 14:32:15 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: fdkaacenc: fix accessing freed memory The buffer data is not always copied in _Fill, and will be read in _DecodeFrame. We unmap at the end of the function, whether we get there via failure or early out, and keep a ref to the buffer to ensure we can use it to unmap the memory even after _finish_frame is called, as it unrefs the buffer. Note that there is an access beyond the allocated buffer, which is only apparent when playing from souphttpsrc (ie, not from filesrc). This appears to be a bug in the bit reading code in libfdkaac AFAICT. https://bugzilla.gnome.org/show_bug.cgi?id=772186 2016-09-29 14:31:37 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacdec.h: fdkaacdec: avoid memory corruption on decoding error The buffer size is expected to be in multiples of the sample size, not in bytes. https://bugzilla.gnome.org/show_bug.cgi?id=772186 2016-09-29 14:29:46 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: fdkaacenc: fix buffer leak https://bugzilla.gnome.org/show_bug.cgi?id=772186 2016-09-28 09:44:58 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: set framed=true on src caps This fixes muxing in MPEG TS. https://bugzilla.gnome.org/show_bug.cgi?id=772108 2016-05-05 15:53:57 +0900 Gwang Yoon Hwang * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: gl/dispmanx: Implements set_render_rectangle to adjust the position of window We cannot set the x, y coordinate of the video frame at the dispmanx at this point. We need to teach dispmanx backend to understand about set_render_rectangle API to draw a video with other UI. This patch keeps the current behavior which places video frame at the center of the display if there is no set_render_rectangle call to the dispmanx window. https://bugzilla.gnome.org/show_bug.cgi?id=766018 2016-09-28 15:20:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.h: * gst-libs/gst/gl/gstglquery.h: * gst-libs/gst/gl/gstglrenderbuffer.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglviewconvert.h: gl: add necessary padding bytes to all public structs 2016-09-27 16:17:00 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: set transmux on the fdkaac lib Not doing so will fail to decode in a simple fdkaacenc ! fdkaacdec pipeline, though would work if this goes through a file. https://bugzilla.gnome.org/show_bug.cgi?id=772067 2016-09-27 16:15:44 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacdec.c: fdkaacdec: do not error out of out of sync return The docs say we should continue feeding in data and decoding https://bugzilla.gnome.org/show_bug.cgi?id=772067 2016-09-27 09:08:51 +0100 Vincent Penquerc'h * ext/fdkaac/gstfdkaacenc.c: fdkaac: fix error with AOT_MP2_AAC_LC removed from libfdkaac API AOT_MP2_AAC_LC is a "pseudo AOT" which got removed after 0.1.4, and maps to AOT_AAC_LC. Remove mpegversion 2 from th caps to match. https://bugzilla.gnome.org/show_bug.cgi?id=772067 2016-09-26 16:30:02 +0100 Tim-Philipp Müller * sys/bluez/meson.build: meson: bluez: fix build 2016-09-26 16:38:04 +0300 Sebastian Dröge * sys/decklink/linux/DeckLinkAPI.h: * sys/decklink/linux/DeckLinkAPIConfiguration.h: * sys/decklink/linux/DeckLinkAPIDeckControl.h: * sys/decklink/linux/DeckLinkAPIDiscovery.h: * sys/decklink/linux/DeckLinkAPIModes.h: * sys/decklink/linux/DeckLinkAPITypes.h: * sys/decklink/linux/DeckLinkAPIVersion.h: * sys/decklink/osx/DeckLinkAPI.h: * sys/decklink/osx/DeckLinkAPIConfiguration.h: * sys/decklink/osx/DeckLinkAPIDeckControl.h: * sys/decklink/osx/DeckLinkAPIDiscovery.h: * sys/decklink/osx/DeckLinkAPIDispatch.cpp: * sys/decklink/osx/DeckLinkAPIModes.h: * sys/decklink/osx/DeckLinkAPIStreaming.h: * sys/decklink/osx/DeckLinkAPITypes.h: * sys/decklink/osx/DeckLinkAPIVersion.h: decklink: Update to SDK 10.8 OSX and Linux only, Windows needs someone on Windows to convert the .idl files to C source code. 2016-09-26 11:41:42 +0100 Olivier Crête * ext/fdkaac/gstfdkaacdec.c: fdkaac: fix mixup setting interleaved output https://bugzilla.gnome.org/show_bug.cgi?id=770455 2016-09-26 13:26:36 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Only report the initial duration if the query was successful 2016-09-26 11:15:25 +0900 Kyungyong Kim * gst/videoparsers/gsth265parse.c: h265parse: Fix parsing of multiple NALs in the hvcC box https://bugzilla.gnome.org/show_bug.cgi?id=771970 2016-09-25 17:38:15 +0100 Tim-Philipp Müller * sys/bluez/Makefile.am: bluez: dist new header file Fixes distcheck. 2016-09-24 22:39:38 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: a2dpsink: Don't try to set device caps on avdtpsink We can't actually configure the transport, so we should only be working with whatever we get. 2016-09-23 16:31:50 +0530 Arun Raghavan * sys/bluez/gstavdtpsink.c: avdtpsink: Chain event handling up to basesink 2016-09-23 16:04:43 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Clean up and make a2dpsink functional again Was crashing, and had a lot of cruft (like a capsfilter and a fakesink) that was no longer required. 2016-09-15 17:49:15 +0530 Arun Raghavan * sys/bluez/Makefile.am: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtpsrc.h: * sys/bluez/gstavrcputil.c: * sys/bluez/gstavrcputil.h: * sys/bluez/org.bluez.xml: avdtpsrc: Add support for AVRCP metadata Metadata from AVRCP is emitted as tags, and the duration from AVRCP is used in queries by avdtpsrc. 2016-09-24 10:49:10 -0400 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Properly offset and shift for all formats when converting And while at it, also clean up some code. 2016-09-24 10:05:16 -0400 Sebastian Dröge * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: Don't pass NULL strings to the colorspace / sampling parsing functions They assert on NULL. 2016-09-23 15:49:21 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Don't leak GValues in getcaps 2016-09-22 18:55:23 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Update our window size on configure event This is specific to when the waylandsink is not being embedded. In this patch we pass the render lock to the window so it can safely call gst_wl_window_set_render_rectangle() with the new size. https://bugzilla.gnome.org/show_bug.cgi?id=722343 2016-09-22 18:53:22 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Remove atomic operation We already take the render lock from the wlqueue thread in some other place which indicates that there is no use of this atomic instead of a proper locking mechanism. 2016-09-22 15:37:41 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Do not pre-configure proposed pool Upstream must configure the pool before using it. Pre-configuring the proposed pool could hide bugs in upstream elements. 2016-09-22 15:35:44 -0400 Nicolas Dufresne * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Properly draw black border in absence of viewporter When we don't have a viewporter (scaling support), we can't use the 1x1 scaleup image trick. Instead, we need to allocate a buffer with the same size as the area that need to have black background. 2016-09-22 10:55:03 +0200 Florian Zwoch * sys/winscreencap/gstdx9screencapsrc.c: dx9screencapsrc: throw error for invalid screen index Currently dx9screencapsrc prints a verbose warning in case the screen index is out of range for the current number of detected monitors. This value is then dropped. However there is no initial indication (beside the console print) if it worked or not. This may result in capturing an unwanted screen as it would capture the last set index that was not rejected. This patch sets the index regardless. Instead, the element throws an error when it tries to run or getting caps for an invalid index. https://bugzilla.gnome.org/show_bug.cgi?id=771817 2016-09-22 18:19:36 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: also free the GWeakRef when removing dead contexts Otherwise we leak GWeakRef's. Found with make -C tests/check libs/gstglcontext.valgrind 2016-09-21 15:51:52 -0700 Martin Kelly * gst-libs/gst/wayland/Makefile.am: wayland/Makefile.am: add missing libs libgstwayland is missing a dependency on $(GST_PLUGINS_BASE_LIBS), so add it. https://bugzilla.gnome.org/show_bug.cgi?id=771794 2016-09-21 15:07:50 -0400 Nicolas Dufresne * ext/wayland/wldisplay.c: waylandsink: Destroy viewporter when done https://bugzilla.gnome.org/show_bug.cgi?id=738079 2016-09-21 11:33:18 -0700 Martin Kelly * tests/check/Makefile.am: build: add missing $(GST_PLUGINS_BASE_LIBS) The linker flags for several plugins (dashdemux, mssdemux, hlsdemux) are missing $(GST_PLUGINS_BASE_LIBS), so add them so they can find -lgsttag and -lgstapp. https://bugzilla.gnome.org/show_bug.cgi?id=771780 2016-09-19 12:11:59 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Port to vmeta and GstVideoFrame This add support for non-standard strides to be used. Note that some extra work is needed for multi-plane format which may have a different GstMemory object per plane. This is not currently a problem since SHM interface is limited to 1 memory. 2016-09-19 12:08:20 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Don't propose multiple time the same buffer pool The buffer pool API does not allow multiple of owner. This otherwise lead to error when renegotiation take place. Aso consider the allocation query "need_pool" boolean. 2016-09-19 12:06:17 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Promote debug trace into error trace Otherwise those error may go unseen making debugging much harder. 2016-09-19 12:04:52 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylandsink: Factor-out the pool creation 2016-09-16 15:41:11 -0400 Nicolas Dufresne * ext/wayland/gstwaylandsink.c: waylansink: Implement _show_frame() This fixes the property show-preroll-frame expose by the VideoSink base class and removes redundant code. 2016-09-21 15:09:26 +0200 Joakim Johansson * tests/check/elements/rtponviftimestamp.c: rtponviftimestamp: Update unit tests after changing default value of D-bit The D bit shall always be set to true for the first buffer. https://bugzilla.gnome.org/show_bug.cgi?id=770221 2016-09-21 09:31:23 -0400 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Print the Decklink API error return values in debug output in all places 2016-09-20 18:28:29 +0100 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: fix distcheck some more 2016-09-13 11:18:27 +0200 Joakim Johansson * gst/onvif/gstrtponviftimestamp.c: rtponviftimestamp: Change default value of D-bit The default value of D-bit is changed to TRUE so discontinuity is set for initial request and seek request as well. Only set the e_bit flag for the CUSTOM_DOWNSTREAM event if a cached buffer exists. https://bugzilla.gnome.org/show_bug.cgi?id=770221 2016-09-19 10:18:22 +0100 Tim-Philipp Müller * configure.ac: configure: fix --disable-external conditional "USE_VULKAN" was never defined 2016-09-19 16:54:43 +1000 Matthew Waters * ext/gl/gstglcolorbalance.c: glcolorbalance: reconfigure on passthrough changes Fixes an assertion when moving from passthrough to non-passthrough Without an explicit reconfigure, glfiter won't have created the GL resources such as the FBO, GL bufferpool, etc and basetransform will allocate sysmem buffers instead. 2016-09-16 13:43:50 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Remove some leftovers from external GstPlayer 2016-09-17 14:12:44 +0100 Tim-Philipp Müller * ext/wayland/Makefile.am: wayland: fix distcheck when wayland-scanner is not installed 2016-09-15 14:10:02 -0400 Nicolas Dufresne * ext/wayland/wldisplay.c: * ext/wayland/wlwindow.c: waylandsink: Make wl_viewporter optional This makes the viewporter interface optional. The end result is obviously far from optimal, though it greatly helps testing on older compostitors or gnome-wayland. We can make it strictly needed later when this new interface get widely adopted. 2016-06-14 16:34:35 -0700 Scott D Phillips * configure.ac: * ext/wayland/Makefile.am: * ext/wayland/scaler.xml: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: wayland: Update from scaler to viewporter protocol Signed-off-by: Scott D Phillips https://bugzilla.gnome.org/show_bug.cgi?id=767671 2016-09-15 14:58:35 +0200 Sebastian Dröge * tests/check/libs/player.c: player: Fix unit test for minor API change 2016-09-15 13:15:22 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Remove boolean return from set_subtitle_uri() It can't fail synchronously and is inconsistent with set_uri(). 2016-09-14 18:07:55 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't change state to PLAYING immediately if a seek is pending We first have to finish the seek (in PAUSED) and move to PLAYING once the seek is actually finished (unless a new one is pending then). 2016-09-14 11:30:48 +0200 Sebastian Dröge * configure.ac: configure: Depend on gstreamer 1.9.2.1 2016-09-08 11:57:52 +0900 Hyunjun Ko * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: map with READWRITE for overlay blend Just as in basetextoverlay [1], the frame to blend with the subtitles overlay should be mapped with flags GST_MAP_READWRITE, because gst_video_overlay_composition_blend() does both operations. 1. https://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=1396f804 Signed-off-by: Víctor Manuel Jáquez Leal https://bugzilla.gnome.org/show_bug.cgi?id=771382 2016-09-13 20:08:19 +0200 Víctor Manuel Jáquez Leal * configure.ac: kmssink: update libdrm dependency to 2.4.55 The latest libdrm feature supported by kmssink is the universal plane, which was added in 2.4.55. Let's update the dependency to that version. https://bugzilla.gnome.org/show_bug.cgi?id=770146 2016-09-11 00:06:52 +0000 Graham Leggett * gst/mpegtsdemux/mpegtsbase.c: tsdemux: handle a NULL name in DVB short event descriptor Resolves the warning: GStreamer-WARNING **: Trying to set NULL string on field 'title' on taglist. https://bugzilla.gnome.org/show_bug.cgi?id=771198 2016-09-12 18:38:36 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Also never have the SINK flag set on adaptivedemux 2016-09-12 12:19:50 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: Revert "decklinkvideosink: Scale down scheduled frame times to milliseconds" This reverts commit 3b7e0d7de32f0728259d601daa13b9eeec3dd3ce. It was a bug in the driver and is supposed to be fixed with 10.8 and newer. 2016-09-10 16:41:28 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix typo in new API Fixes supressed -> suppressed typo in previous commit https://bugzilla.gnome.org/show_bug.cgi?id=770627 2016-09-05 10:31:40 +0900 Wonchul Lee * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: prevent to propagate source flag to itself https://bugzilla.gnome.org/show_bug.cgi?id=770627 2016-09-10 20:51:27 +1000 Jan Schmidt * autogen.sh: * common: Automatic update of common submodule From b18d820 to f980fd9 2016-09-10 09:54:09 +1000 Jan Schmidt * autogen.sh: * common: Automatic update of common submodule From 2c31690 to b18d820 2016-09-09 23:24:01 +1000 Matthew Waters * gst-libs/gst/gl/meson.build: meson/gl: use separate deps for gl and glx e.g. passing with_gl_api=gles2 would still build the glx code but not be linking against the libGL library which is where the glX* functions are located and would result in a linker error. Solved by checking for the libGL library if either opengl or glx may be needed and then disabling the corresponding deps as requested. 2016-09-09 16:55:23 +1000 Matthew Waters * ext/meson.build: * ext/vulkan/meson.build: * ext/vulkan/vkconfig.h.meson: meson: add build files for vulkan 2016-09-09 16:36:03 +1000 Matthew Waters * ext/gtk/meson.build: * ext/meson.build: meson: add build files for the gtk plugin 2016-09-09 11:08:53 +1000 Matthew Waters * ext/gl/meson.build: * ext/meson.build: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: * gst-libs/gst/meson.build: * meson_options.txt: * pkgconfig/meson.build: meson: add some starting build files for GL Currently only works on linux with egl/glx + wayland/x11 but the general principals have been layed out for adding the other GL platforms/winsys'. 2016-09-08 11:23:57 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Scale up to the screen dimension In most display sink, the logic is to use as much as possible of the given window. In this case, the window is the screen, hence it's logical to scale up. https://bugzilla.gnome.org/show_bug.cgi?id=767422 2016-09-08 11:21:09 -0400 Nicolas Dufresne * sys/kms/gstkmssink.c: kmssink: Fix selection of source region The source region was scaled for display before being passed to drmModeSetPlane, which resulted in a portion of the video being cropped. While when crop meta was present, the rectangle was not centered since we where using unscaled width/height. https://bugzilla.gnome.org/show_bug.cgi?id=767422 2016-09-08 08:40:59 +0100 Julien Isorce * gst-libs/gst/player/gstplayer.h: gstplayer: remove leftover update_interval api old: gst_player_set_position_update_interval new: gst_player_config_set_position_update_interval https://bugzilla.gnome.org/show_bug.cgi?id=769144 2016-09-01 19:46:31 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: add video/x-raw to the VulkanBuffer uploader Allows upstream elements that use our memory to passthrough without copying. 2016-09-01 19:43:59 +1000 Matthew Waters * ext/vulkan/vkutils.c: vkutils: set the last element of the layer array to NULL g_strv* functions require this to not read off the end of the array. 2016-09-07 20:11:55 +0100 Alistair Buxton * tests/examples/gl/clutter/Makefile.am: gl/examples: Really remove references to $(GST_PLUGINS_GL_*). These seem to have been missed in the previous commit to this file. https://bugzilla.gnome.org/show_bug.cgi?id=771023 2016-09-07 20:07:26 +0100 Alistair Buxton * gst-libs/gst/gl/Makefile.am: gl: Remove duplicate GL_CFLAGS in Makefile.am. https://bugzilla.gnome.org/show_bug.cgi?id=771021 2016-08-05 18:17:32 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmsallocator.c: kmssink: override stride if defined in driver Some kms drivers demands specific pitches over the ones calculated by GstVideoInfo. For example, intel driver demands strides round up 64. This patch queries the driver for the prefered pitch and overwrites it in the pool's GstVideoInfo structure. https://bugzilla.gnome.org/show_bug.cgi?id=768446 2016-09-06 16:05:53 -0300 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Use the event_full function for GstAggregatorPads Allowing us to tell GstPad why we are failing an event, which might be because we are 'flushing' even if the sinkpad is not in flush state at that point. 2016-09-06 13:13:39 +0800 Haihua Hu * ext/qt/gstqsgtexture.cc: qmlglsink: check qt_context_ first in GstQSGTexture::bind() When start qmlglsink app, it will set NULL buffer to GstQSGTexture in which case that qt_context_ will be a random value and cause gst_gl_context_activate() fail. https://bugzilla.gnome.org/show_bug.cgi?id=770925 2016-09-06 20:00:07 +1000 Matthew Waters * configure.ac: build/vulkan: fix winsys detection based on the previously set variables The X11/Wayland winsys checks weren't being used to enable the vulkan element. Use them. 2016-09-06 11:02:06 +0200 Philippe Normand * ext/srtp/gstsrtpenc.c: srtpenc: prevent deadlock in create_session Temporarily release the object lock which is needed to post error messages on the bus. https://bugzilla.gnome.org/show_bug.cgi?id=770933 2016-09-05 22:30:01 -0300 Thibault Saunier * meson.build: meson: Fix building with meson 0.34 when using subprojects When using subproject meson.source_root() returns the root directory of the toplevel project which break build. Upstream meson bug: https://github.com/mesonbuild/meson/issues/722 2016-09-05 12:22:17 -0300 Thibault Saunier * meson.build: meson: Bump version to 1.9.2 2016-09-05 14:44:24 +1000 Alessandro Decina * ext/gl/gstgluploadelement.c: glupload: create the GstGLUpload object in ::transform_caps Previously it was created in the init function and destroyed in ::stop, which lead to segfaults when reusing the element. Now the upload object is created in ::transform_caps if it is NULL, which is the earliest we need it. The other vfuncs already bail out if the upload object is NULL, which means that negotiation wasn't done. 2016-08-29 11:40:54 +0900 Wonchul Lee * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Support ATSC EAC3 EAC3 bit streams shall be identified with a stream_type value of 0x87 when transmitted as PES streams conforming to ATSC-published standards. It is specified in ATSC Standard A/52. https://bugzilla.gnome.org/show_bug.cgi?id=770528 2016-09-01 14:25:58 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix-up last commit that was not meant to be pushed yet 2016-09-01 14:18:33 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Fix indentation 2016-09-01 14:17:48 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Require a clock when going from PAUSED_TO_PLAYING and don't crash if there is none Also when going from PLAYING_TO_PAUSED, the clock might've been unset in the meantime, e.g. because the element was removed from its surrounding bin. 2016-09-01 12:28:22 +0300 Sebastian Dröge * configure.ac: Back to development === release 1.9.2 === 2016-09-01 12:27:59 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.9.2 2016-09-01 11:24:37 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-08-30 16:21:25 +0300 Sebastian Dröge * configure.ac: * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: applemedia: Conditionally compile qtkitvideosrc The API was deprecated in 10.9 and apparently does not exist in the SDK for macOS Sierra anymore. https://bugzilla.gnome.org/show_bug.cgi?id=770587 2016-08-31 04:26:43 +1000 Jan Schmidt * gst-libs/gst/gl/gstglframebuffer.h: gl: Remove extra duplicate typedef of GstGLFramebuffer It's triggering a warning building git master on OSX 2016-08-29 16:57:42 +1000 Matthew Waters * tests/check/libs/gstglupload.c: tests/glupload: support opengl3 properly instead of spewing GL errors 2016-08-29 16:52:44 +1000 Matthew Waters * pkgconfig/gstreamer-gl.pc.in: gl/pkgconfig: add the lib include dir to the list of includes 714d8aa in core removed this include dir from it's pkgconfig file. https://bugzilla.gnome.org/show_bug.cgi?id=770523 2016-08-29 15:43:10 +1000 Alessandro Decina * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglupload.c: glupload: fix tests and check for the new RECONFIGURE behaviour The tests were broken since 91fea30, which changed glupload to return GST_GL_UPLOAD_RECONFIGURE if the texture target in the input buffers doesn't match the texture-target configured in the output caps. This commit fixes that and adds more checks for the new behaviour. 2016-08-19 11:12:10 -0700 Thibault Saunier * ext/gme/gstgme.c: * ext/sndfile/gstsfsink.c: * ext/teletextdec/gstteletextdec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst/aiff/aiffparse.c: * gst/midi/midiparse.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mxf/mxfdemux.c: * gst/nuvdemux/gstnuvdemux.c: * gst/tta/gstttaparse.c: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: * sys/applemedia/avfassetsrc.m: Use the new API to post flow ERROR messages on the bus https://bugzilla.gnome.org/show_bug.cgi?id=770158 2016-08-26 20:12:21 +0300 Sebastian Dröge * tests/check/elements/dash_mpd.c: dash: Fix build of unit test 2016-08-25 20:50:11 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Add properties to select maximum allowed width/height and framerate https://bugzilla.gnome.org/show_bug.cgi?id=770408 2016-08-26 16:04:27 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Fix compiler warning on OS X While gint64 and int64_t are always the same, clang does not agree with that. /Applications/Xcode.app/Contents/Developer/usr/bin/make -C decklink CXX libgstdecklink_la-gstdecklinkaudiosink.lo gstdecklinkaudiosink.cpp:675:79: error: cannot initialize a parameter of type 'int64_t *' (aka 'long long *') with an rvalue of type 'gint64 *' (aka 'long *') ret = buf->output->attributes->GetInt (BMDDeckLinkMaximumAudioChannels, &max_channels); ^~~~~~~~~~~~~ ./linux/DeckLinkAPI.h:692:87: note: passing argument to parameter 'value' here virtual HRESULT GetInt (/* in */ BMDDeckLinkAttributeID cfgID, /* out */ int64_t *value) = 0; ^ 2016-08-26 22:51:48 +1000 Alessandro Decina * sys/applemedia/corevideomemory.c: applemedia: fix compiler warning 2016-08-26 15:48:36 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Scale down scheduled frame times to milliseconds Scale down to milliseconds, otherwise at least some hardware has problems scheduling the frames (or schedules them too slow) and we run out of available frames. https://bugzilla.gnome.org/show_bug.cgi?id=770282 2016-08-26 14:08:11 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Add support for 8 and 16 channels 2016-08-26 17:37:54 +1000 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.m: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/corevideomemory.c: * sys/applemedia/corevideomemory.h: * sys/applemedia/iosglmemory.c: * sys/applemedia/iosglmemory.h: * sys/applemedia/iosurfacememory.c: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: changes to make GL memory mappable on CPU on iOS This commit introduces IOSGLMemory which is a GLMemory that falls back to GstAppleCoreVideoMemory for CPU access. This is a temporary solution until IOSurface gets exposed as a public framework on iOS and so we can use IOSurfaceMemory on both MacOS and iOS. https://bugzilla.gnome.org/show_bug.cgi?id=769210 2016-08-22 17:18:27 +1000 Alessandro Decina * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gstglupload: make the GLMemoryUpload method output the correct texture-target Now when used with video/x-raw as input, the GLMemoryUpload method checks for ->tex_target in input GLMemory(es) and sets the output texture-target accordingly. Fixes video corruption with a pipeline like avfvideosrc ! video/x-raw ! glimagesink where on macos avfvideosrc pushes RECTANGLE textures but glupload was configuring texture-target=2D as output. 2016-08-24 09:41:08 -0300 Thibault Saunier * gst-libs/gst/mpegts/mpegts_enum.py: * gst/mpegtsdemux/meson.build: * meson.build: meson: Make mpegts lib build when using subprojects The headers passed as parametter are relative to the build dir basically "../subproject/gst-plugins-bad/gst-libs/gst/mpegts/XXX.h" but that does not match what is needed at build time when building as subproject, also we always add current dir as include_dir so we are safe including directly. And link mpegtsdemux against the 'math' library as it is needed. 2016-08-26 03:46:39 +1000 Jan Schmidt * docs/plugins/gst-plugins-bad-plugins-docs.sgml: docs: Expose the opengl plugin and element docs 2016-08-26 02:20:11 +1000 Jan Schmidt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Handle if update_caps() returns EMPTY Don't assume the returned caps from update_caps() is non-empty. 2016-08-26 02:07:27 +1000 Jan Schmidt * ext/gl/gstglvideomixer.c: gl: Update glvideomixer doc 2016-08-26 02:06:00 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglviewconvert.c: gl: Add/update docs for glviewconvert, glstereomix Add some example pipelines for glstereomix, and fix up the example pipelines for glviewconvert 2016-08-26 00:29:34 +1000 Jan Schmidt * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: glstereomix: Fix caps negotiation The videoaggregator negotiation sequence changed some time back and broke glstereomix. Instead of doing nego incorrectly in the find_best_format() vfunc, do it directly in the update_caps() method. 2016-08-25 15:26:49 +1000 Jan Schmidt * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Fix texture target fixation Don't set the chosen texture-target into the wrong structure. The input caps may not be writable, and in any case - the intention was to configure the othercaps. Also, remove an extra unref - the othercaps ref is consumed by gst_caps_make_writable already. 2016-08-25 19:35:13 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/hls/gsthlsdemux.c: * ext/smoothstreaming/gstmssdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Enable bitrate selection for trick mode streaming again And scale the bitrate with the absolute rate (if it's bigger than 1.0) to get to the real bitrate due to faster playback. This allowed in my tests to play a stream with 10x speed without buffering as the lowest bitrate is chosen, instead of staying/selecting the highest bitrate and then buffering all the time. It was previously disabled for not very well specified reasons, which seem to be not valid anymore nowadays. 2016-08-25 16:33:17 +0200 Josep Torra * tests/check/elements/.gitignore: gitignore: add missing dash_isoff file 2016-08-25 12:45:33 +0200 Josep Torra * tests/check/Makefile.am: build: fix gst-uninstalled build in osx Fixes clang: error: argument unused during compilation: '-pthread' when building the test programs. 2016-08-25 14:35:59 +0200 Josep Torra * configure.ac: * tests/check/Makefile.am: build: unconditionally check for video, audio and pbutils modules Check for modules in configure and use GST_*_LIBS vars to link with the libraries instead of hardcoding them. 2016-07-26 19:55:13 +0200 Xabier Rodriguez Calvar * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: implement GstVideoDirection interface It implements now this interface with its video-direction property. Values are changed to GstVideoOrientationMethod but they have the same value than the originals. https://bugzilla.gnome.org/show_bug.cgi?id=768687 2016-08-24 19:43:55 +0300 Sebastian Dröge * ext/fdkaac/gstfdkaacenc.c: fdkaacenc: Implement some automatic bitrate selection Based on sample rate and channel count, see http://wiki.hydrogenaud.io/index.php?title=Fraunhofer_FDK_AAC#Recommended_Sampling_Rate_and_Bitrate_Combinations 2016-08-24 14:15:09 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: On redirects, remember the redirect URI separately and don't consider this an URI property change The application does not know anything about the redirect, and changing its URI internally will cause confusion. Also don't reset the subtitle URI. 2016-08-24 14:10:41 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't report spurious STOPPED state changes when doing transient changes there 2016-08-24 13:01:46 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Ensure that rate is initialized to 1.0 2016-08-24 10:16:00 +0000 Fredrik Fornwall * sys/opensles/Makefile.am: opensles: Add opensles.h to noinst_HEADERS https://bugzilla.gnome.org/show_bug.cgi?id=770326 2016-08-23 14:37:17 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: De-duplicate rate setting code and always use the property 2016-08-23 14:33:11 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Protect setter/getter for the configuration with a mutex 2016-08-23 14:32:24 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Move subtitle URI setter next to the uri setter It's confusing to have them a couple of hundred lines apart. 2016-08-17 19:59:17 +0200 Matej Knopp * sys/applemedia/vtdec.c: vtdec: fix MPEG-2 video caps Add systemstream=false to caps, otherwise the decoder may be picked for MPEG-PS files. Also parsed=true, as video toolbox expects entire frame in VTDecompressionSessionDecodeFrame. https://bugzilla.gnome.org/show_bug.cgi?id=770049 2016-08-23 02:13:19 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c.rej: * gst-libs/gst/adaptivedemux/set_state_keep.patch: adaptivedemux: Fix the previous commit Remove extra files that were not meant to be added to the commit 2016-08-23 01:57:55 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c.rej: * gst-libs/gst/adaptivedemux/set_state_keep.patch: adaptivedemux: Fix broken updates loop on live streams Prevent the manifest update loop from looping endlessly after a seek event, by clearing the variable that tells the task function not to immediately exit. 2016-08-18 10:06:27 +0200 Michael Olbrich * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix stream exposure condition The new streams should not be exposed until all streams are done with the current fragment. The old code is incorrect and actually only checked the current stream. Fix this by properly checking all streams. Also, ignore the current stream. The code is only reached when the current stream finished downloading and since 07f49f15b1196cc9fa0d45af91149a35fce123b9 ("adaptivedemux: On EOS, handle it before waking download loop") download_finished is set after gst_adaptive_demux_stream_advance_fragment_unlocked() is called. Without this HLS playback with multiple streams is broken, because the new streams are never exposed. https://bugzilla.gnome.org/show_bug.cgi?id=770075 2016-08-21 16:21:07 +0100 Tim-Philipp Müller * ext/mpg123/meson.build: meson: remove unused mpg123 build file mpg123 was moved to ugly. 2016-08-12 21:21:45 +0530 Nirbheek Chauhan * .gitignore: * config.h.meson: * ext/assrender/meson.build: * ext/bz2/meson.build: * ext/chromaprint/meson.build: * ext/curl/meson.build: * ext/dash/meson.build: * ext/directfb/meson.build: * ext/dtls/meson.build: * ext/dts/meson.build: * ext/faac/meson.build: * ext/faad/meson.build: * ext/flite/meson.build: * ext/fluidsynth/meson.build: * ext/hls/meson.build: * ext/kate/meson.build: * ext/libde265/meson.build: * ext/libmms/meson.build: * ext/meson.build: * ext/mpg123/meson.build: * ext/openh264/meson.build: * ext/openjpeg/meson.build: * ext/opus/meson.build: * ext/resindvd/meson.build: * ext/rsvg/meson.build: * ext/rtmp/meson.build: * ext/sbc/meson.build: * ext/schroedinger/meson.build: * ext/smoothstreaming/meson.build: * ext/soundtouch/meson.build: * ext/spandsp/meson.build: * ext/srtp/meson.build: * ext/srtp/srtp_mkenum.py: * ext/voaacenc/meson.build: * ext/webp/meson.build: * ext/x265/meson.build: * ext/zbar/meson.build: * gst-libs/gst/adaptivedemux/meson.build: * gst-libs/gst/audio/meson.build: * gst-libs/gst/base/meson.build: * gst-libs/gst/basecamerabinsrc/meson.build: * gst-libs/gst/codecparsers/meson.build: * gst-libs/gst/gl/gstglconfig.h.meson: * gst-libs/gst/gl/meson.build: * gst-libs/gst/insertbin/meson.build: * gst-libs/gst/interfaces/build_mkenum.py: * gst-libs/gst/interfaces/meson.build: * gst-libs/gst/meson.build: * gst-libs/gst/mpegts/meson.build: * gst-libs/gst/mpegts/mpegts_enum.py: * gst-libs/gst/player/meson.build: * gst-libs/gst/uridownloader/meson.build: * gst-libs/gst/video/meson.build: * gst-libs/meson.build: * gst/accurip/meson.build: * gst/adpcmdec/meson.build: * gst/adpcmenc/meson.build: * gst/aiff/meson.build: * gst/asfmux/meson.build: * gst/audiobuffer/meson.build: * gst/audiofxbad/meson.build: * gst/audiomixer/meson.build: * gst/audiovisualizers/meson.build: * gst/autoconvert/meson.build: * gst/bayer/meson.build: * gst/camerabin2/meson.build: * gst/cdxaparse/meson.build: * gst/coloreffects/meson.build: * gst/compositor/meson.build: * gst/dataurisrc/meson.build: * gst/dccp/meson.build: * gst/debugutils/meson.build: * gst/dvbsuboverlay/meson.build: * gst/dvdspu/meson.build: * gst/faceoverlay/meson.build: * gst/festival/meson.build: * gst/fieldanalysis/meson.build: * gst/freeverb/meson.build: * gst/frei0r/meson.build: * gst/games/meson.build: * gst/gaudieffects/meson.build: * gst/gdp/meson.build: * gst/geometrictransform/meson.build: * gst/hdvparse/meson.build: * gst/id3tag/meson.build: * gst/inter/meson.build: * gst/interlace/meson.build: * gst/ivfparse/meson.build: * gst/ivtc/meson.build: * gst/jp2kdecimator/meson.build: * gst/jpegformat/meson.build: * gst/librfb/meson.build: * gst/meson.build: * gst/midi/meson.build: * gst/mixmatrix/meson.build: * gst/mpeg1sys/meson.build: * gst/mpegdemux/meson.build: * gst/mpegpsmux/meson.build: * gst/mpegtsdemux/meson.build: * gst/mpegtsmux/meson.build: * gst/mve/meson.build: * gst/mxf/meson.build: * gst/nuvdemux/meson.build: * gst/onvif/meson.build: * gst/overlay/meson.build: * gst/patchdetect/meson.build: * gst/pcapparse/meson.build: * gst/pnm/meson.build: * gst/rawparse/meson.build: * gst/real/meson.build: * gst/removesilence/meson.build: * gst/rtjpeg/meson.build: * gst/sdi/meson.build: * gst/sdp/meson.build: * gst/segmentclip/meson.build: * gst/siren/meson.build: * gst/smooth/meson.build: * gst/speed/meson.build: * gst/stereo/meson.build: * gst/subenc/meson.build: * gst/tta/meson.build: * gst/vbidec/meson.build: * gst/videofilters/meson.build: * gst/videoframe_audiolevel/meson.build: * gst/videomeasure/meson.build: * gst/videoparsers/meson.build: * gst/videosignal/meson.build: * gst/vmnc/meson.build: * gst/y4m/meson.build: * gst/yadif/meson.build: * meson.build: * meson_options.txt: * pkgconfig/meson.build: * sys/bluez/meson.build: * sys/d3dvideosink/meson.build: * sys/directsound/meson.build: * sys/dvb/meson.build: * sys/meson.build: * sys/wasapi/meson.build: * sys/winks/meson.build: * sys/winscreencap/meson.build: Add support for Meson as alternative/parallel build system https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller Matej Knopp Jussi Pakkanen (original port) Highlights of the features provided are: * Faster builds on Linux (~40-50% faster) * The ability to build with MSVC on Windows * Generate Visual Studio project files * Generate XCode project files * Much faster builds on Windows (on-par with Linux) * Seriously fast configure and building on embedded ... and many more. For more details see: http://blog.nirbheek.in/2016/05/gstreamer-and-meson-new-hope.html http://blog.nirbheek.in/2016/07/building-and-developing-gstreamer-using.html Building with Meson should work on both Linux and Windows, but may need a few more tweaks on other operating systems. 2016-08-18 17:46:19 +0530 Nirbheek Chauhan * ext/dts/gstdtsdec.c: * ext/resindvd/resindvdsrc.h: * gst/bayer/gstbayer2rgb.c: * gst/dccp/gstdccp_common.h: * gst/librfb/d3des.c: * sys/fbdev/gstfbdevsink.c: plugins: Use stdint.h instead of _stdint.h _stdint.h is generated by Autotools and we don't really need it. All supported platforms now ship with stdint.h. The only stickler was MSVC, and since Visual Studio 2015 it also ships stdint.h now. 2016-08-12 21:51:17 +0530 Nirbheek Chauhan * win32/common/libgstgl.def: win32: Update libgstgl.def 2016-03-02 00:53:44 +0530 Nirbheek Chauhan * gst-libs/gst/codecparsers/nalutils.c: codecparsers: Explicitly export functions marked inline On MSVC, inline functions are not available outside of a file unless explicitly exported 2016-08-19 12:24:58 +0100 Luis de Bethencourt * gst/rawparse/gstrawvideoparse.c: rawvideoparse: fix typo in comment Small typo in the comment explaining the code fixed by the previous commit. Fixing it. 2016-08-19 14:19:38 +0300 Sebastian Dröge * gst/rawparse/gstrawvideoparse.c: rawvideoparse: Revert last commit and actually remember the physically last plane Instead of just always taking the last one as before. 2016-08-19 11:57:33 +0100 Luis de Bethencourt * gst/rawparse/gstrawvideoparse.c: rawvideoparse: remove unused assignment Value in last_plane will be overwritten before used, remove unused asignment. Fixes commit 91cf5ac69f9c99fe41d60f42b4174915dd135e7b CID 1371462 2016-08-18 18:55:41 +0200 Philippe Renon * ext/daala/gstdaaladec.c: daala: fix typo related compilation error https://bugzilla.gnome.org/show_bug.cgi?id=770102 2016-08-19 11:02:46 +0100 Tim-Philipp Müller * configure.ac: * sys/Makefile.am: * sys/applemedia-nonpublic/Makefile.am: * sys/applemedia-nonpublic/bufferfactory.h: * sys/applemedia-nonpublic/bufferfactory.m: * sys/applemedia-nonpublic/celapi.c: * sys/applemedia-nonpublic/celapi.h: * sys/applemedia-nonpublic/celvideosrc.c: * sys/applemedia-nonpublic/celvideosrc.h: * sys/applemedia-nonpublic/cmapi.c: * sys/applemedia-nonpublic/cmapi.h: * sys/applemedia-nonpublic/coremediabuffer.c: * sys/applemedia-nonpublic/coremediabuffer.h: * sys/applemedia-nonpublic/coremediactx.c: * sys/applemedia-nonpublic/coremediactx.h: * sys/applemedia-nonpublic/corevideobuffer.c: * sys/applemedia-nonpublic/corevideobuffer.h: * sys/applemedia-nonpublic/cvapi.c: * sys/applemedia-nonpublic/cvapi.h: * sys/applemedia-nonpublic/dynapi-internal.h: * sys/applemedia-nonpublic/dynapi.c: * sys/applemedia-nonpublic/dynapi.h: * sys/applemedia-nonpublic/mioapi.c: * sys/applemedia-nonpublic/mioapi.h: * sys/applemedia-nonpublic/miovideodevice.c: * sys/applemedia-nonpublic/miovideodevice.h: * sys/applemedia-nonpublic/miovideosrc.c: * sys/applemedia-nonpublic/miovideosrc.h: * sys/applemedia-nonpublic/mtapi.c: * sys/applemedia-nonpublic/mtapi.h: * sys/applemedia-nonpublic/plugin.m: applemedia-nonpublic: remove bitrotten plugin that's no longer needed 2016-08-19 19:46:24 +1000 Florian Zwoch * sys/applemedia/avfvideosrc.m: avfvideosrc: account for retina displays when capturing screens Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=770030 2016-08-19 17:11:13 +1000 Matthew Waters * configure.ac: build: bump graphene requirement to 1.4 2016-08-19 15:35:49 +1000 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: rewrite the inverse transformation logic It now returns the correct values for both orthographic and perspective projections and takes into account the aspect ratio of the video, handles the Y-flipping in GL and by us and uses some more helpers from graphene. 2016-07-01 16:18:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: marshal gst_gl_window_resize through the window loop saves having every caller do it themselves. 2016-06-30 23:06:43 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: use multi-threaded safe event wayland API Multiple threads may be accessing the wayland fd at the same time which requires the use of special wayland API to deal with to ensure nobody will steal reads and cause a stall for anyone else. 2016-07-01 00:15:55 +1000 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: gl/examples/fxtest: fix up for wayland support - Pass the wayland display to gst - Redrawing on resize is no longer needed. 2016-08-17 16:21:34 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: warn on ignored key/value pairs Otherwise at runtine, users get the misleading parsing-OK message with no info on, for example, properties that failed to map because of a typo. 2016-08-16 15:35:39 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: handle problems parsing dvbv5 config keys 2016-08-18 15:28:33 +0300 Sebastian Dröge * ext/mplex/gstmplex.cc: mplex: Don't start task (yet/again) on pad release if we're in READY or NULL Fixes spurious segfault in unit test, where the task was started again during shutdown when all pads were removed... and was then still running while the element was finalized. 2016-08-18 13:21:54 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: In KEY_UNITS trick mode, download all I-frames and not only IDR 2016-08-08 17:54:46 +0200 Carlos Rafael Giani * tests/check/elements/.gitignore: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Fix and extend unit tests * Add caps change test to unit tests * Cleanup leftover buffers after each unit test * Add missing rawvideoparse entry in .gitignore https://bugzilla.gnome.org/show_bug.cgi?id=769637 2016-08-16 09:31:40 +0200 Carlos Rafael Giani * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * tests/check/elements/rawvideoparse.c: rawvideoparse: Compute plane offsets & strides if no custom ones are set This is useful to ensure that the offsets and strides are computed if only width, height, format etc. in the property config are set. https://bugzilla.gnome.org/show_bug.cgi?id=769797 2016-08-16 18:46:49 +0300 Sergei Saveliev * sys/applemedia/avfassetsrc.m: avfassetsrc: Don't escape the URI another time in another location too One location was forgotten in a913a0b9679dd58945ad105d240db45595fdaba6 https://bugzilla.gnome.org/show_bug.cgi?id=767492 2016-08-16 20:33:21 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstegl.h: gl/egl: fix inverted typedef 2b6841d had an inverted typedef defining ginptr and EGLAttrib. Fix that. 2016-08-16 10:37:28 +0300 Sebastian Dröge * ext/timidity/gstwildmidi.c: wildmidi: Fix compilation with wildmidi 0.4 Old versions used char* for the data, new versions use int8_t*. They're often not the same and differ in signedness. 2016-08-16 16:51:02 +1000 Matthew Waters * configure.ac: * gst-libs/gst/gl/egl/gstegl.h: gl/build: add configure check for possibly missing EGLAttrib Fixes the build on older android targets. 2016-07-13 17:15:44 +0800 Song Bing * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstglmemoryegl.c: gl/egl/dmabuf: Wrong attribute list type for EGL 1.5 For EGL 1.5 spec, the attribute list type should be EGLAttrib. https://bugzilla.gnome.org/show_bug.cgi?id=768602 2016-08-15 16:14:25 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstglcontext.c: glcontext: fix race joining thread on finalize https://bugzilla.gnome.org/show_bug.cgi?id=769939 2016-08-16 00:40:53 +1000 Jan Schmidt * ext/qt/gstqtglutility.cc: qt: Use wglShareLists() workaround unconditionally. Sometimes wglCreateContextAttribsARB() exists, but isn't functional (some Intel drivers), so it's easiest to do the workaround unconditionally. 2016-08-15 16:37:44 +1000 Jan Schmidt * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: winks: Fix RGB frame flipping and postprocessing Uncompressed RGB frames can be (usually are) bottom-up layout in DirectShow, and the code to flip them wasn't properly ported from 0.10. Fix it. Fix post-processing of RGB buffers. We need a writable buffer, but the requests pool is holding an extra ref. This could use more fixing to use a buffer pool 2016-08-12 22:17:25 +1000 Jan Schmidt * sys/winks/gstksvideosrc.c: winks: Give the ksvideosrc PRIMARY rank It's the primary video source on Windows, so give it a rank for autoplugging by camerabin and friends 2016-08-12 22:16:33 +1000 Jan Schmidt * sys/winks/ksvideohelpers.c: winks: Fix swapped RGBx/RGB caps mapping, and endianness. The RGBx and RGB format mappings were reversed. What Windows calls RGB are laid out as BGR in our parlance, so switch that too 2016-08-08 13:41:14 +1000 Jan Schmidt * ext/qt/gstqtglutility.cc: qt: Move debug statement to after the category init Don't output debug to an uninitialised debug category. 2016-08-11 12:19:59 +0200 Sebastian Dröge * tests/check/Makefile.am: dashdemux: Disable unit test for the time being It uses random data streams but dashdemux nowadays actually looks into the streams and doesn't like randomness very much. The tests should probably just become validate tests on real streams. https://bugzilla.gnome.org/show_bug.cgi?id=769553 2016-08-11 12:11:22 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: Revert "Revert "dashdemux: When doing SIDX seeking, return instead of overriding the timestamp with 0 from the MPD seeking method"" This reverts commit aea2c13fc1672a7260679d706d0a084a34ba7531. 2016-08-04 14:47:41 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: When doing chunked downloading on SIDX, clip requests on the SIDX entry boundaries https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-08-02 08:47:55 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Collect average moof and first sync sample sizes And always request those in the beginning so that ideally we get the moof and the first sync sample all together with the first HTTP request. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-08-02 08:35:26 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Download any sync-sample following the moof directly in key-units only mode We don't have to do yet another additional request but can just download the data directly. Also unify the key-unit only mode buffer pushing and extract it into its own function now that it became more complicated. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-29 12:50:58 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: If a fragment contains no sync samples, disable key-unit mode https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-29 12:32:50 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Remember if for a stream we could do key-units only mode This makes sure we don't even try going into that mode if we previously saw that the stream does not have the suitable metadata. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-29 11:54:21 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Also allow key-unit only mode if (some) sample flags are given by trex but we can still find sync frames https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-12 20:09:52 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Use chunked downloading for the moof in KEY_UNITS mode Allows us to reuse the HTTP connection and reduce latencies a lot. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-12 10:22:43 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add API for allowing subclasses to download URLs in chunks This allows to gradually download part of a fragment when the final size is not known and only a part of it should be downloaded. For example when only the moof should be parsed and/or a single keyframe should be downloaded. https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-06-01 14:02:11 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Mark every first buffer of moov, sidx, moof and mdat as DISCONT in keyframe-only mode We need to mark every first buffer of a key unit as discont, and also every first buffer of a moov and moof. This ensures that qtdemux takes note of our buffer offsets for each of those buffers instead of keeping track of them itself from the first buffer. We need offsets to be consistent between moof and mdat https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-07-28 10:53:49 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Only enable key-unit trick mode for video streams https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-31 15:12:49 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Only do keyframe-only playback if the corresponding seek flag is given https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-30 12:09:34 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Implement downloading of only sync samples https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-30 11:15:03 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Store parsed moof and extract offsets of sync samples in it https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-02 17:11:31 +0300 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/dash_isoff.c: * tests/check/elements/dash_isoff.h: dash: Add test for parsing a moof box https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-05-02 16:03:56 +0300 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/dash_isoff.c: dash: Add unit test for ISOBFF box header parsing https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-04-07 21:33:51 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dashdemux: Implement parsing of moof box https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-04-07 13:34:57 +0300 Sebastian Dröge * ext/dash/gstisoff.c: dashdemux: Move code around to keep all sidx related functions together https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-04-07 12:57:13 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dashdemux: Store box fourccs in the header at a central place https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-03-28 13:45:36 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Implement parsing of ISOBMFF boxes https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-03-16 13:48:09 +0200 Sebastian Dröge * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dash: Add helper for parsing box headers https://bugzilla.gnome.org/show_bug.cgi?id=741104 2016-08-10 22:50:12 +0000 xlazom00 * ext/x265/gstx265enc.c: x265enc: Enable aspect ratio x265 encoder need aspectRatioIdc == X265_EXTENDED_SAR if we want to use sarWidth/sarHeight https://bugzilla.gnome.org/show_bug.cgi?id=769716 2016-08-08 13:10:12 +0200 Josep Torra * ext/openjpeg/gstopenjpegenc.c: openjpegenc: use the corrent enumeration Fixes the following error when building in osx. error: implicit conversion from enumeration type 'GstJPEG2000Colorspace' to different enumeration type 'GstJPEG2000Sampling' 2016-08-08 11:28:44 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Fix call to realloc() to allocate the correct size of items 2016-08-07 20:53:30 +0100 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: fdkaac: actually build and dist 2016-08-06 23:31:23 +0000 xlazom00 * ext/hls/Makefile.am: * gst/timecode/Makefile.am: hls, timecode: fix linking https://bugzilla.gnome.org//show_bug.cgi?id=769587 2016-08-07 12:20:16 +0300 Sebastian Dröge * ext/fdkaac/Makefile.am: * ext/fdkaac/gstfdkaacdec.c: * ext/fdkaac/gstfdkaacdec.h: * ext/fdkaac/plugin.c: fdkaac: Add FDK AAC based decoder element Missing is support for error concealment, etc. 2016-08-07 11:39:07 +0300 Sebastian Dröge * ext/fdkaac/Makefile.am: * ext/fdkaac/gstfdkaacenc.c: * ext/fdkaac/gstfdkaacenc.h: * ext/fdkaac/plugin.c: fdkaac: Add FDK AAC based encoder element This currently only handles LC profile and exposes a bitrate property, but handles up to 7.1 channels. See TODO list for missing features. 2016-08-07 08:51:06 +0300 Sebastian Dröge * configure.ac: * ext/fdkaac/Makefile.am: * ext/fdkaac/plugin.c: fdkaac: Initial plugin skeleton 2016-08-01 11:45:30 +0200 Bernhard Miller * gst/aiff/aiffparse.c: aiffparse: keep end_offset when seeking After seeking in aiff files the information about the data end offset is discarded, leading to audio artifacts with metadata chunks at the end of a file. This patch retains the end offset information after a seek event. https://bugzilla.gnome.org//show_bug.cgi?id=769376 2016-08-06 16:15:33 +0100 Tim-Philipp Müller * gst/dvdspu/gstdvdspu.c: dvdspu: don't crash if video frame could not be mapped As might happen with e.g. vaapi and the test file from https://bugzilla.gnome.org/show_bug.cgi?id=736227 2016-08-05 09:16:58 +0200 Edward Hervey * ext/dash/gstdashdemux.c: Revert "dashdemux: When doing SIDX seeking, return instead of overriding the timestamp with 0 from the MPD seeking method" This reverts commit 947656cfd22b75f914d5abe0af82396787f67564. This makes all dash seeking tests fail. Needs more testing to fully understand what's going wrong. Revert ok'd by Sebastian 2016-05-31 19:21:17 +0300 Vivia Nikolaidou * gst/timecode/Makefile.am: * gst/timecode/gsttimecodewait.c: * gst/timecode/gsttimecodewait.h: * gst/timecode/plugin.c: timecodewait: New element to wait for a specific timecode timecodewait receives a timecode as an argument (either as string or as GstVideoTimeCode - one is gst-launch-friendly and the other is code-friendly), and it will drop all audio and video buffers until that timecode has been reached. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-20 18:17:52 +0300 Vivia Nikolaidou * configure.ac: * gst/timecode/Makefile.am: * gst/timecode/gsttimecodestamper.c: * gst/timecode/gsttimecodestamper.h: * gst/timecode/plugin.c: timecodestamper: New element to attach SMPTE timecode to buffers The timecodestamper element attaches a SMPTE timecode to each video buffer. This timecode corresponds to the current stream time. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-15 17:25:44 +0300 Vivia Nikolaidou * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Add support for GstVideoTimeCode The timecode will be fetched from the video buffer and outputted on the decklink video sink. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-05-15 16:04:14 +0300 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Add support for GstVideoTimeCode The timecode will be fetched from the decklink source and attached to the video buffer. https://bugzilla.gnome.org/show_bug.cgi?id=766419 2016-08-04 23:14:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: add missing rgb16 and bgr16 video formats in switch Fixes an assertion that code should not be reached https://bugzilla.gnome.org/show_bug.cgi?id=769462 2016-08-04 22:28:13 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hls: Avoid potential NULL pointer dereference. Fixes CID 1364753 2016-08-04 22:21:16 +1000 Jan Schmidt * ext/hls/m3u8.c: hls: Avoid coverity warning about access off the end of an array. Fixes CID 1364755 2016-08-04 14:42:34 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: When doing SIDX seeking, return instead of overriding the timestamp with 0 from the MPD seeking method We don't need to call the latter at all as we're definitely in this period and the segment is selected via the SIDX. This is especially important when doing SNAP seeks, as otherwise we would always start from the beginning of the period (usually 0) again. 2016-08-04 11:08:30 +0100 Luis de Bethencourt * ext/hls/m3u8.c: hls: m3u8: remove impossible condition After the check in line 1,111, media->uri can't be NULL. So the two checks for GST_HLS_MEDIA_TYPE_CLOSED_CAPTIONS are the same, removing the redundant one which goes to cc_unsupported. CID 1364752 2016-08-04 04:53:50 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Don't output pending data after error If the last_ret status is not OK, skip output of any pending PCR scan buffer, similarly to how the pending decryption buffer is handled above. 2016-08-04 04:29:38 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: On EOS, handle it before waking download loop Otherwise, if the download loop wakes too quickly, it might miss the last_ret value update from the processing thread and loop again. 2016-08-04 01:51:37 +1000 Jan Schmidt * ext/hls/gsthlsdemux-util.c: hlsdemux: Include config.h and add header in utils In gsthlsdemux-util.c, include config.h before any other headers, and add a copyright / license header. 2016-07-13 11:02:23 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix draining on wrong programs When draining a program, we might send a newsegment event on the pads that are going to be removed (and then the pending data). In order to do that, calculate_and_push_newsegment() needs to know what list of streams it should take into account (instead of blindly using the current one). All callers to calculate_and_push_newsegment() and push_pending_data() can now specify the program on which to act (or NULL for the default one). 2016-07-12 15:58:40 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix GAP synchronization without a valid PCR PID For streams that don't have a valid PCR PID, we just use the latest PTS from any given stream. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2016-05-31 13:09:43 +0200 Michael Olbrich * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: handle pcr_pid == 0x1fff Streams without PCR make senses in HLS, where the playlist timestamps can be used to seek or calculate the duration. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2015-05-10 20:10:49 +0200 Arnaud Vrac * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: do not abort playback when no PCR were found during initial scan Seeking will not be possible in those streams but at least the can be played. Note scanning is only done when tsdemux is configured in pull mode. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2015-05-09 15:52:22 +0200 Arnaud Vrac * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: only wait for PCR when PCR pid is set Streams without PCR make senses in HLS, where the playlist timestamps can be used to seek or calculate the duration. https://bugzilla.gnome.org/show_bug.cgi?id=608148 2016-08-03 04:18:18 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hls: Fix compiler warning for possibly uninit variable 2016-07-28 14:22:02 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: seek all streams 2016-05-25 11:23:59 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: simplify gst_hls_demux_seek() Don't initialize current_sequence. It is always overwritten in the walk loop. 2016-05-24 15:23:12 +0200 Michael Olbrich * ext/hls/gsthlsdemux.c: hlsdemux: don't download the last fragment when seeking beyond the end of the track It's not used anyways. 2016-07-12 23:05:55 +1000 Jan Schmidt * ext/hls/gsthlsdemux-util.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Add support for ID3 tag parsing Parse start PTS out of the ID3 tags in audio fragments. Informational only for now. 2016-02-24 16:57:16 +1100 Jan Schmidt * ext/hls/Makefile.am: * ext/hls/gsthlsdemux-util.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Do some reading and dumping of PCRs Read PCRs out of the MPEG-TS stream in a basic way and (for now) just log them 2016-03-05 03:08:55 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Only use the primary stream for bitrate selection. When playing alternate rendition auxilliary streams, ignore them in bitrate measurement (for now). 2016-07-15 16:24:17 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Only select video and audio streams by default Ignore subtitle streams for now, because the different fragment duration causes problems switching bitrates w/ decodebin2 group draining. 2016-02-25 01:58:25 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Publish all media for alternate renditions. Create an output stream for each media when alternate renditions are present. Update the manifests for all those streams, and make sure that typefinding is still done for files smaller than 2KB such as small WebVTT files. 2016-03-08 01:24:20 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Adjust downstream buffer offsets When fetching a byte-region from a server resource, adjust the downstream buffer offsets so that downstream doesn't know. This is because id3demux insists on the first offset being 0. Later we might strip ID3 headers entirely and this will be unneeded. 2016-03-09 03:07:22 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Choose the default variant and track it when updating Modify playlist updating to track information across updates better, although still hackish. When connection_speed == 0, choose the default variant not the first one in the (now sorted) variant list, as that will have the lowest bitrate. 2015-12-05 11:12:33 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: move variant list handling over to new master playlist code Adapt hlsdemux for the m3u8 playlist changes. 2015-11-27 19:26:02 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: m3u8: Rework m3u8 parsing and storage. Make M3U8 and GstM3U8MediaFile refcounted. The contents of it and GstM3U8MediaFile are pretty much immutable already, but if we make it refcounted we can just return a ref to the media file from _get_next_fragment() instead of copying over all fields one-by-one, and then copying them all into the adaptive stream structure fields again. Move state from client into m3u8 structure. This will be useful later when we'll have multiple media playlists being streamed at the same time, as will be the case with alternative renditions. This has the downside that we need to copy over some state when we switch between variant streams. The GstM3U8Client structure is gone, and main/current lists are not directly in hlsdemux. hlsdemux had as many CLIENT_LOCK/UNLOCK as the m3u8 code anyway... 2016-07-27 09:28:23 +0800 Haihua Hu * tests/examples/qt/qmlsink/.gitignore: * tests/examples/qt/qmlsink/main.cpp: * tests/examples/qt/qmlsink/main.qml: * tests/examples/qt/qmlsink/play.pro: * tests/examples/qt/qmlsink/qml.qrc: * tests/examples/qt/qmlsrc/.gitignore: * tests/examples/qt/qmlsrc/grabqml.pro: * tests/examples/qt/qmlsrc/main.cpp: * tests/examples/qt/qmlsrc/main.qml: * tests/examples/qt/qmlsrc/qml.qrc: qmlglsrc: Add qmlglsrc unit test example https://bugzilla.gnome.org/show_bug.cgi?id=768160 2016-07-27 08:16:47 +0800 Haihua Hu * ext/qt/Makefile.am: * ext/qt/gstplugin.cc: * ext/qt/gstqtglutility.cc: * ext/qt/gstqtglutility.h: * ext/qt/gstqtsrc.cc: * ext/qt/gstqtsrc.h: * ext/qt/qtitem.cc: * ext/qt/qtwindow.cc: * ext/qt/qtwindow.h: qt: implement qmlglsrc for qml view grab [Matthew Waters]: gst-indent sources https://bugzilla.gnome.org/show_bug.cgi?id=768160 2016-07-27 10:55:01 +0800 Haihua Hu * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: Fix glimagesink cannot show frame when connect to qmlglsrc When connect to qmlglsrc, x11 event loop will be replace by qt event loop which will cause the window cannot receive event from xserver, such as resize https://bugzilla.gnome.org/show_bug.cgi?id=768160 2016-08-02 17:21:20 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglupload.c: glupload: Use bufferpool to allocate new buffer in GLTextureUploadMeta To improve performace of upload with GLTextureUploadMeta, use bufferpool instead of allocating new buffer every time. https://bugzilla.gnome.org/show_bug.cgi?id=769293 2016-07-27 14:48:50 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: move unsetting queue_resize to _resize() instead of _draw() Makes infinitely more sense and implementation were expecting that behaviour anyway and would enter a resize, draw, resize, draw, ... cycle instead of only resizing once. 2016-08-03 09:14:07 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Never ever hold the manifest lock while changing the source element state Otherwise we will deadlock in various situations that take the manifest lock from the streaming thread or when shutting down or ... 2016-08-02 17:07:37 +0300 Sebastian Dröge * tests/check/elements/aiffparse.c: aiffparse: In PUSH mode we will never get the ID3 tags as they are at the end of the file This previously did not fail as before we didn't get any tags at all in PUSH mode, now we get the bitrates. 2016-08-02 13:48:43 +0200 Carlos Rafael Giani * gst/aiff/Makefile.am: * gst/aiff/aiffparse.c: aiffparse: Add tags for container format and bitrate The bitrate is added to help downstream elements (like uridecodebin) figure out a proper network buffer size https://bugzilla.gnome.org/show_bug.cgi?id=769389 2016-01-20 16:42:24 +0000 Alex Ashley * tests/check/elements/dash_mpd.c: tests: dashdemux: add test for gst_mpd_client_get_maximum_segment_duration Add a test of the gst_mpd_client_get_maximum_segment_duration() function to check that it first checks the MPD@maxSegmentDuration and then falls back to checking all of the segment durations. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-02-24 15:54:54 +0000 Alex Ashley * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: include segment duration when calculating seek range The gst_dash_demux_get_live_seek_range () function returns a stop value that is beyond the available range. The functions gst_mpd_client_check_time_position() and gst_mpd_client_get_next_segment_availability_end_time() in gstmpdparser.c include the segment duration when checking if a segment is available. The gst_dash_demux_get_live_seek_range() function in gstdashdemux.c ignores the segment duration. According to the DASH specification, if maxSegmentDuration is not present, then the maximum Segment duration is the maximum duration of any Segment documented in the MPD. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-02-24 15:52:41 +0000 Vincent Penquerc'h * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: retry once on 4xx/5xx in certain conditions This helps catch those 404 server errors in live streams when seeking to the very beginning, as the server will handle a request with some delay, which can cause it to drop the fragment before sending it. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-02-24 15:47:09 +0000 Alex Ashley * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: expose HTTP status To allow adaptivedemux to make retry decisions, it needs to know what sort of HTTP error has occurred. For example, the retry logic for a 410 error is different from a 504 error. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-03-07 17:04:33 +0000 Vincent Penquerc'h * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: allow seeking before start in live streams Some derived classes (at least dashdemux) expose a seeking range based on wall clock. This means that a subsequent seek to the start of this range will be before the allowed range. To solve this, seeks without the ACCURATE flag are allowed to seek before the start for live streams, in which case the segment is shifted to start at the start of the new seek range. If there is an end position, is is shifted too, to keep the duration constant. https://bugzilla.gnome.org/show_bug.cgi?id=753751 2016-08-01 14:12:35 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: Fix horizontal/vertical flip matrizes They were swapped. https://bugzilla.gnome.org/show_bug.cgi?id=769371 2016-07-29 16:32:22 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: videoparsers: h264: Add more scalable profiles to the profile list Adding Scalable Constrained High (G.10.1.2.1) and Scalable High Intra(G.10.1.3) profiles to the profile list https://bugzilla.gnome.org/show_bug.cgi?id=769303 2016-08-01 10:30:29 +0300 Sebastian Dröge * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-sensor.c: * sys/androidmedia/gstahssrc.c: androidmedia: Run gst-indent over everything once again 2016-08-01 10:28:26 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: If we find multiple codecs with the same name, just merge them On the ODroid C1+ the H265 and H264 have the same name but are listed as two different codecs. We have to handle them as the same one that supports both, as otherwise we will register the same GType name twice which fails and we then only have H265 support and not H264 support. 2016-08-01 10:15:04 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Use a GQueue for O(1) append instead of a GList 2016-07-29 12:31:38 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Also call reset() in READY->PAUSED This allows subclasses to have initialization code in a single place. 2016-07-29 10:49:26 +0300 Sebastian Dröge * gst/rawparse/gstrawaudioparse.c: rawaudioparse: Use G_GINT64_MODIFIER for portability https://bugzilla.gnome.org/show_bug.cgi?id=769295 2016-07-29 10:07:23 +0300 Sebastian Dröge * gst/rawparse/gstunalignedaudioparse.c: unalignedaudioparse: Fix element factory name of inner parser 2016-07-29 08:54:00 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Print generated raw/encoded caps in debug logs 2016-07-28 11:27:29 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Skip audio streams if TRICKMODE_NO_AUDIO is given in the seek event We just don't expose pads for audio streams, or even download them. 2016-07-28 11:16:24 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Reset number of subtitle streams counter on reset() too Otherwise we will continue increasing forever the number of subtitle streams when reusing the element for another DASH manifest. 2016-07-26 17:01:55 +0100 Vincent Penquerc'h * tests/check/pipelines/simple-launch-lines.c: tests: fix simple-launch-lines when jpeg lib isn't present JPEG detection in configure.ac defines HAVE_JPEG to 0 if the jpeg lib isn't found, rather then not defining it. https://bugzilla.gnome.org/show_bug.cgi?id=769197 2016-07-25 17:55:24 +0200 Carlos Rafael Giani * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-rawparse.xml: docs: Update rawparser documentation Signed-off-by: Carlos Rafael Giani https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-25 17:54:09 +0200 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: rawparse: Remove old parser code and wrap new parsers in old elements https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-25 13:45:40 +0200 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstrawaudioparse.c: * gst/rawparse/gstrawaudioparse.h: * gst/rawparse/gstrawbaseparse.c: * gst/rawparse/gstrawbaseparse.h: * gst/rawparse/gstrawvideoparse.c: * gst/rawparse/gstrawvideoparse.h: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedvideoparse.c: * gst/rawparse/gstunalignedvideoparse.h: * gst/rawparse/plugin.c: * gst/rawparse/unalignedvideo.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rawaudioparse.c: * tests/check/elements/rawvideoparse.c: rawparse: Add new raw audio and video parser elements The new rawaudioparse and rawvideoparse elements are based on GstBaseParse and completely replace audioparse and videoparse https://bugzilla.gnome.org/show_bug.cgi?id=767011 2016-07-26 16:01:19 +1000 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: remove unused to_quit variable It was always 0 and never set to anything meaningful. 2016-07-26 15:57:54 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: add compatibility definition for GL_DEPTH_STENCIL_ATTACHMENT GLES2 doesn't have it defined... 2016-07-15 13:39:54 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglpixelformat.c: * gst-libs/gst/gl/gstglutils.h: glfilter: rewrite subclasses for filter_texture() occuring on GL thread There's no need for the jump to an extra thread in most cases, especially when relying solely on a shader to render. We can use the provided render_to_target() functions to simplify filter writing. 2016-07-12 15:34:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.h: glutils: remove unused GstGLDisplayProjection 2016-07-12 15:29:29 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glcontext: remove not thread-safe get/set_error() Use GError's instead if necessary. 2016-07-12 12:59:57 +1000 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: * tests/check/libs/gstglcontext.c: glframebuffer: rewrite for a more consistent API Facilities are given to create fbo's and attach GL memory (renderbuffers or textures). It also keeps track of the renderable size for use with effective use with glViewport(). 2016-07-12 00:30:22 +1000 Matthew Waters * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfiltershader.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: use GLMemory for accessing textures everywhere This simplifies and consolidates a lot of duplicated code creating and modifying textures. 2016-07-11 22:44:16 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglcolorbalance.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfiltershader.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: rename draw_texture to draw_fullscreen_quad And remove unused arguments. 2016-07-11 22:31:04 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglrenderbuffer.c: * gst-libs/gst/gl/gstglrenderbuffer.h: gl: add memory type for renderbuffer's Soon to be used for framebuffers for e.g. depth buffers or throwaway color buffers. 2016-07-11 22:28:42 +1000 Matthew Waters * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: glformat: define our own set of formats from the GL defines also add some depth/stencil formats 2016-07-11 22:24:43 +1000 Matthew Waters * ext/gl/gstgleffects.c: gleffects: fix xray to use the correct function Instead of duplicating the sin effect 2016-07-11 21:29:10 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: assert for a valid allocator instead of segfaulting 2016-04-29 14:42:34 +0200 Michael Olbrich * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: add support for LPCM with stream_type = 0x83 https://bugzilla.gnome.org/show_bug.cgi?id=765807 2016-07-25 13:06:46 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: player: Add some 'const' to config getters 2016-07-25 13:06:36 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: G-I annotation fixes 2016-07-25 10:30:26 +0200 Guillaume Desmottes * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * tests/check/libs/player.c: * win32/common/libgstplayer.def: player: move 'position-update-interval' setting to the config struct https://bugzilla.gnome.org/show_bug.cgi?id=769144 2016-07-19 14:36:25 +0200 Guillaume Desmottes * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * tests/check/libs/player.c: * win32/common/libgstplayer.def: player: add API to change http user agent Introducing a new 'config' API similar to GstBufferPoolConfig. https://bugzilla.gnome.org/show_bug.cgi?id=765314 2016-07-25 10:54:32 +0100 Tim-Philipp Müller * common: Update common submodule For 'make update-exports' changes 2016-07-22 17:00:14 +0300 Sebastian Dröge * tests/examples/qt/qml/main.cpp: qml: Don't forget to unref the actual sink element after setting it on glsinkbin 2016-07-22 16:57:45 +0300 Sebastian Dröge * tests/examples/qt/qml/main.cpp: qml: Use glsinkbin instead of glupload directly 2016-07-18 18:36:42 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264: fix up for API changes in v1.6.0 Update for API changes in v1.6.0. https://bugzilla.gnome.org/show_bug.cgi?id=768771 2016-07-18 17:43:23 +0100 Tim-Philipp Müller * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl: wayland: improve debug message when connecting to display And another copy'n'paste-o. https://bugzilla.gnome.org/show_bug.cgi?id=768929 2016-07-19 02:11:54 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Fix clearing of decryption state Don't clear decryption state immediately after initialising it in the start_fragment. Don't clear the state of all streams when we want to only clear the current stream. https://bugzilla.gnome.org//show_bug.cgi?id=768757 2016-07-15 10:31:35 +0200 Guillaume Desmottes * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/audiomixer.c: * tests/check/elements/autovideoconvert.c: * tests/check/elements/camerabin.c: tests: fix bus leak gst_bus_remove_signal_watch() has to be called to release the ref taken by gst_bus_add_signal_watch(). https://bugzilla.gnome.org/show_bug.cgi?id=768843 2016-07-15 11:48:25 +0200 Guillaume Desmottes * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabinpreview: fix bus leak We were never removing the watch introduced in gst_camerabin_create_preview_pipeline() so its extra ref on the bus was never released. https://bugzilla.gnome.org/show_bug.cgi?id=768838 2016-07-13 23:02:10 +1000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: make decryption key handling per-stream Add demuxer instance-wide decryption key cache. The current and last key url are per-stream, so make a shared cache. Move the decryption handling into the stream object, and use the shared cache for the keys. 2016-07-13 23:02:10 +1000 Jan Schmidt * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: add hlsdemux-specific AdaptiveDemuxStream subclass Prepare hlsdemux for more than one single stream. Currently hlsdemux assumes there'll only ever be one stream and most of the stream-specific state is actually in the hlsdemux structure. Add a stream subclass instead and move some stream-specific members there instead. 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add more safeguards around state changes. Make state changes of internal elements more reliable by locking their state, and ensuring that they aren't blocked pushing data downstream before trying to set their state. Add a boolean to avoid starting tasks when the main thread is busy trying to shut the element down. 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Add debug code to change bitrate. Add some disabled-by-default debugging code that forces bitrate changes by modulating the measured bitrate every few fragments 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: More locking/switching fixes Try harder to make switching pads work better by making sure concurrent downloads are finished before exposing a new set of pads. Release the manifest lock when signalling no-more-pads, as that can call back into adaptivedemux again 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't switch streams and expose pads while downloading. If other stream fragments are still downloading but new streams have been scheduled, don't expose them yet - wait until the last one finishes. Otherwise, we can cancel a partially downloaded auxilliary stream and cause a gap. 2016-07-13 23:02:10 +1000 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Drop the manifest lock during outbound actions Drop the manifest lock when performing actions that might call back into adaptivedemux and trigger deadlocks, such as adding/removing pads or sending in-band events (EOS). Unlock the manifest lock when changing the child bin state to NULL, as it might call back to acquire the manifest lock when shutting down pads. Drop the manifest lock while pushing events. 2016-07-12 14:51:47 -0700 Martin Kelly * sys/androidmedia/Makefile.am: * sys/androidmedia/gst-android-hardware-sensor.c: * sys/androidmedia/gst-android-hardware-sensor.h: * sys/androidmedia/gstahssrc.c: * sys/androidmedia/gstahssrc.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstsensors.h: * sys/androidmedia/org/freedesktop/gstreamer/androidmedia/GstAhsCallback.java: new plugin: Android hardware sensor source ahssrc is a new plugin that enables Gstreamer to read from the android.hardware.Sensor Android sensors. These sensors are treated as buffers and can be passed through and manipulated by the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=768110 2016-07-14 19:38:26 +0200 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: make it build with older lilv Implementing the removal of presets is unfortunately not feasibla with versions < 0.22. Fixes #768595 2016-07-13 23:00:51 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: webrtcdsp: Add delay-agnostic property In this mode, we let WebRTC Audio Processing figure-out the delay. This is useful when the latency reported by the stack cannot be trusted. Note that in this mode, the leaking of echo during packet lost is much worst. It is recommanded to use PLC (e.g. spanplc, or opus built-in plc). In this mode, we don't do any synchronization. Instead, we simply process all the available reverse stream data as it comes. 2016-07-12 00:02:53 +0300 Sebastian Dröge * gst/videoparsers/gstjpeg2000parse.c: jpeg2000parse: Use correct enum type GST_JPEG2000_SAMPLING_RGB instead of GST_JPEG2000_COLORSPACE_RGB https://bugzilla.gnome.org/show_bug.cgi?id=768696 2016-07-11 21:13:58 +0200 Stefan Sauer * common: Automatic update of common submodule From f363b32 to f49c55e 2016-07-11 11:58:12 -0400 Nicolas Dufresne * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmssink.c: kmssink: Fix offsets handling The calculation of the offset table was done base on a plane size estimation. This does not always work. Instead, use memory offset the same we as it's implement in GstVideoMeta map functions. 2016-07-11 19:21:11 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: * gst/siren/gstsirendec.c: Fix various gboolean vs GstFlowReturn problems Caught by building with MSVC which gave warnings for these 2016-07-08 19:03:06 +1000 Matthew Waters * configure.ac: gl/build: fix configure when --enable-cocoa is passed on OS X https://bugzilla.gnome.org/show_bug.cgi?id=768553 2016-07-10 20:43:17 +0200 Stefan Sauer * ext/lv2/README: lv2: planning update 2016-07-10 20:42:42 +0200 Stefan Sauer * configure.ac: * ext/lv2/gstlv2utils.c: lv2: keep working with older versions Provide a fallback impl. for the only new function we were using from 0.22. Fixes #768595 2016-07-08 14:42:18 +0100 Tim-Philipp Müller * gst/camerabin2/gstcamerabin2.c: camerabin: update docs section 2016-07-07 13:22:02 -0400 Nicolas Dufresne * configure.ac: configure.ac: Cleanup unused variable We only check for a header, no need for overriding LDFLAGS. 2016-07-07 17:24:32 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.h: gaudi: fix documentation warning in GstGaussianBlur Fixing the following warning when generating documentation: xml/element-gaussianblur.xml:72: element refsect2: validity error : ID GstGaussianBlur already defined ^ Warning: multiple "IDs" for constraint linkend: GstGaussianBlur. DOC Fixing cross-references 2016-07-07 17:16:47 +0100 Luis de Bethencourt * gst/gaudieffects/gstchromium.h: gaudi: fix documentation warning in GstChromium Fixing the following warning when generating documentation: xml/element-chromium.xml:74: element refsect2: validity error : ID GstChromium already defined ^ Warning: multiple "IDs" for constraint linkend: GstChromium. DOC Fixing cross-references 2016-07-07 12:31:20 -0400 Nicolas Dufresne * configure.ac: webrtcdsp: Relax C++11 check The library does not require any STL C++11 specific headers. This fixes our OSX build as we target a SDK version that does not support C++11 STL. 2016-07-07 12:31:03 -0400 Nicolas Dufresne * configure.ac: webrtcdsp: Add Android GNUSTL support 2016-07-07 12:20:45 -0400 Nicolas Dufresne * configure.ac: webrtcdsp: Set USE_WEBRTCDSP when disabled 2016-07-07 17:20:58 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Also consider more seek flags as "snap" seeks In the case of KEY_UNIT and TRICKMODE_KEY_UNITS seeks, we want to "snap" to the closest fragment. Without this, we end up pushing out a segment which does not match the first fragment timestamp being pushed out, resulting in one or more buffers being eventually dropped because they are out of segment. 2016-07-06 14:29:04 +0300 Sebastian Dröge * configure.ac: webrtcdsp: Also allow webrtc-audio-processing 0.3 It seems to work and is the version available in Debian. 2016-07-06 12:12:41 +0100 Luis de Bethencourt * ext/musepack/gstmusepackdec.c: musepackdeck: unsigned can't be less than zero Less-than-zero comparison of an unsigned value, guint64, is never true CID 1363334 2016-07-06 13:51:06 +0300 Sebastian Dröge * configure.ac: Back to development === release 1.9.1 === 2016-07-06 13:07:21 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.9.1 2016-07-06 11:52:11 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-07-06 10:19:24 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-07-05 09:21:58 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Workaround GCC/MingW 4.7 limitations It refuses to initialize a classes using brackets notation. This is to allow building using our mingw version. 2016-07-04 14:57:11 -0400 Nicolas Dufresne * configure.ac: configure.ac: Add missing double quotes That affectation was ignored. This worked on recent GCC as C++11 is enabled by default now. 2016-07-02 10:24:51 +0200 Stefan Sauer * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: add support for saving presets Plugns supporting the state interface can now save their presets under '.lv2'. 2016-06-15 22:22:58 +0200 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: support for loading presets Detect if plugins can do presets. Lazily read a list of presets and add support for loading. 2016-07-04 16:54:53 +0200 Wim Taymans * configure.ac: * ext/musepack/gstmusepackdec.c: * ext/musepack/gstmusepackreader.c: musepackdec: port to 1.0 2016-07-04 12:19:36 +0200 Marcin Lewandowski * sys/shm/gstshmsrc.c: shmsrc: Do not call gst_poll_remove_fd upon stop if reading was never started https://bugzilla.gnome.org/show_bug.cgi?id=768365 2016-07-01 14:50:27 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: improve parsing-success message * Fix typo * Give information on what was actually parsed 2016-07-01 14:37:37 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: don't use default conf filename for messages The file name can be user-defined. 2016-07-01 19:22:32 +0100 Tim-Philipp Müller * configure.ac: * ext/qt/Makefile.am: qt: fix build some more when QPA is not available Compiler would complain about include directory that didn't exist because QPA_INCLUDE_PATH gets subst-ed regardless (and if it didn't we'd have just an empty -I argument). https://bugzilla.gnome.org/show_bug.cgi?id=767553 2016-07-01 14:05:49 +0100 Luis de Bethencourt * gst/videoparsers/gstjpeg2000parse.c: gstjpeg2000parse: no need for else after a goto else clause is redundant when the end of the if statement is a jump. If we haven't gone to the beach, we are in the false branch. 2016-06-30 07:47:50 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: gstjpeg2000parse: improved parsing of jpc magic and j2c box https://bugzilla.gnome.org/show_bug.cgi?id=767512 2016-05-25 16:01:24 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Add custom flow return for allowing subclasses to specify when a fragment is finished If it is finished before upstream going EOS. https://bugzilla.gnome.org/show_bug.cgi?id=767365 2016-05-27 16:08:09 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Implement SIDX tracking based on buffer offset This simplifies the code but also removes a bug with tracking of the remaining size for the initial subfragment: we were not considering the size between the index and the start of the first moof here. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-31 13:39:59 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Properly keep track of current offset GstAdapter does not guarantee to pass through all the offsets, we have to keep track of it ourselves. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-31 13:39:59 +0300 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Properly keep track of current offset GstAdapter does not guarantee to pass through all the offsets, we have to keep track of it ourselves. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-31 13:01:00 +0300 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Clear pending data when needed When switching fragments we don't want to keep any data around from the last one, and also forget about all data when doing flushing seeks or selecting new bitrates. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-03-28 13:45:36 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Get rid of internal stream adapter and let subclasses handle this directly This allows subclasses to have more control and especially ensure that they push data downstream with the correct offsets. https://bugzilla.gnome.org/show_bug.cgi?id=764684 2016-07-01 12:20:14 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: codecparsers: jpeg2000: don't allow 0 value for array access with i-1 2016-07-01 12:15:28 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: codecparsers: jpeg2000: fix possible out-of-bounds array access sizeof(array) != G_N_ELEMENTS(array). CID 1362900 2016-06-30 23:38:26 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Set frame timestamps before sending to the encoder 2016-06-30 23:35:33 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Fix initial time-per-frame calculation 2016-06-30 23:33:38 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264enc: Remove meaningless drop bitrate handling This doesn't even have a property. 2016-06-30 23:29:13 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264enc: Expose maximum bitrate setting 2016-06-30 23:19:26 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Actually hook up the rate-control property 2016-06-30 23:06:29 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Use a constant SPS/PPS ID no matter if openh264 older or newer than 1.4 is used 2016-06-30 23:02:49 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Make slice settings more explicit and don't set any number if not a fixed number of slices is selected 2016-06-29 15:56:47 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.h: webrtcdsp: Rewrite echo data synchronization The previous code would run out of sync if there was packet lost or clock skews. When that happened, the echo cancellation feature would completely stop working. As this is crucial for audio calls, this patch re-implement synchronization completely. Instead of letting it drift until next discont, we now synchronize against the record data at every iteration. This way we simply never let the stream drift for longer then 10ms period. We also shorter the delay by using the latency up the probe (basically excluding the sink latency. This is a decent delay to avoid starving in the probe queue. https://bugzilla.gnome.org/show_bug.cgi?id=768009 2016-06-29 15:55:19 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: We now fail if there is no echo probe When echo cancel is enabled, we now fail the pipeline if there is not echo probe. For this reason there is no need to check if probe pointer is set anymore. 2016-06-30 21:50:12 +1000 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: fix transformation matrix usage Calling glUniformMatrix before the shader is bound is invalid and would result in errors like: GL_INVALID_OPERATION in glUniformMatrix(program not linked) Move glUniformMatrix() to after the gst_gl_shader_use() call. 2016-06-28 16:07:43 -0400 Javier Martinez Canillas * sys/kms/gstkmssink.c: kmssink: fallback to universal planes if no overlay plane is found Without setting the DRM_CLIENT_CAP_UNIVERSAL_PLANES capability bit, only overlay planes are made available for compatibility with legacy clients. But if a CRTC doesn't have an overlay plane associated, then kmssink is not able to find a plane for the CRTC and the pipeline will fail, i.e: ERROR kmssink gstkmssink.c:482:gst_kms_sink_start: Could not find a plane for crtc If no overlay planes were found for a given CRTC, fallback to universal planes so DRM will also return primary planes that can be used instead. https://bugzilla.gnome.org/show_bug.cgi?id=768183 Signed-off-by: Javier Martinez Canillas 2016-06-28 20:51:56 -0400 Javier Martinez Canillas * docs/plugins/gst-plugins-bad-plugins.args: * sys/kms/gstkmssink.c: kmssink: add a plane-id property Without setting the DRM_CLIENT_CAP_UNIVERSAL_PLANES capability bit, only overlay planes are made available for compatibility with legacy clients. But if a CRTC doesn't have an overlay plane associated, then kmssink is not able to find a plane for the CRTC and the pipeline will fail, i.e: ERROR kmssink gstkmssink.c:482:gst_kms_sink_start: Could not find a plane for crtc This patch adds a plane-id property to the kmssink element so a specific plane can be used in case that a CRTC has only a primary plane associated. https://bugzilla.gnome.org/show_bug.cgi?id=768183 2016-06-30 10:33:30 +0200 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Remove broken byte-stream to avc conversion and just output byte-stream as generated by the encoder The byte-stream to avc conversion did not consider NAL sizes bigger than 2^16, multiple layers, multiple NALs per layer, and various other things. This caused corrupted streams in higher bitrates and other circumstances. Let's just forward byte-stream as generated by the encoder and let h264parse handle conversion to avc if needed. That way we only have to keep around one version of the conversion and don't have to fix it in multiple places. 2016-06-29 18:36:56 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Drop filler data When skipping data, check if they are filler bytes. If so, drop the data instead of skipping. We don't want to output filler bytes, but they shouldn't cause a discontinuity. https://bugzilla.gnome.org/show_bug.cgi?id=768125 2016-06-30 08:31:20 +0200 Sebastian Dröge * sys/dvb/dvbbasebin.c: dvbbasebin: Use a non-timer GstPoll set_flushing() causes inconsistent states on timer polls and also signals a g_critical() nowadays because of that. 2016-06-30 14:04:36 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: fix raw data uploader with addition of GstVideoGLTextureType Fixes regression from 989200820d43c78fb179d7984827800d83787390 https://bugzilla.gnome.org/show_bug.cgi?id=768217 2016-06-29 23:55:18 -0400 Olivier Crête * gst-libs/gst/gl/gstglcolorconvert.c: glvideoconvert: RG/LA is available in OpenGL ES 3, so let that through 2016-06-29 18:35:17 +1000 Matthew Waters * sys/applemedia/videotexturecache.m: vtdec: use L/LA textures on GLES2 as well 2016-06-24 13:41:11 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: Revert "Revert "gl/eagl: try getting a gles3 context"" This reverts commit eb142736318463e6e553c21707ba0d716f85a46f. vtdec now successfully outputs textures that can be converted by glcolorconvert in GLES3 contexts. 2016-06-25 00:05:37 +1000 Matthew Waters * sys/applemedia/videotexturecache.m: vtdec: add support for zerocopy decoding with GLES 3.x It seems that Red/RG textures aren't supported anymore for zerocopy decoding with GLES 3.x. Instead use Luminance/Luminance Alpha textures which are. 2016-06-28 13:51:22 +1000 Matthew Waters * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * sys/androidmedia/gstamcvideodec.c: * sys/applemedia/iosurfacememory.c: * sys/applemedia/iosurfacememory.h: * sys/applemedia/videotexturecache.m: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glmemory: add the texture type to allocate to parameters Rather than assuming something. e.g. zerocopy on iOS with GLES3 requires the use of Luminance/Luminance Alpha formats and does not work with Red/RG textures. 2016-06-28 13:09:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't assume Red/RG textures will be used Take the used texture type from the memory instead. Fixes conversion from multi-planar YUV formats with two components per plane (NV12, NV21, YUY2, UYVY, GRAY16_*, etc) with Luminance Alpha input textures. This is also needed for zerocopy decoding on iOS with GLES 3.x. 2016-06-28 13:02:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: correct precondition for get_gl_version The intention was to assert if both maj and min were NULL (as there would be no point calling the function). Instead if either maj or min were NULL, the assert would occur. Fix that. 2016-06-28 19:26:29 +0300 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Replace some more gst_caps_to_string() with GST_PTR_FORMAT https://bugzilla.gnome.org/show_bug.cgi?id=768146 2016-06-28 11:50:59 -0400 Jonathan Roy * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: leak on caps string https://bugzilla.gnome.org/show_bug.cgi?id=768146 2016-06-28 11:08:22 +0100 Luis de Bethencourt * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: jpeg2000parse: fix typo in sampling check Fixing small typo that changes the value of the return. 2016-06-27 21:36:50 -0400 Olivier Crête * tests/check/Makefile.am: tests: Ignore kmssink for state change test It can only be put to READY if the DRM stuff is available. 2016-06-27 18:15:08 +0800 Haihua Hu * configure.ac: * ext/qt/qtitem.cc: qmlglsink: Fix build error when don't have QPA installed. Check header file existance and wrap the header file include in the necessary #ifdef to avoid build error. https://bugzilla.gnome.org/show_bug.cgi?id=767553 2016-06-24 18:14:06 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: dvbbasebin: make sure we have an error in case of parsing failure Drop a redundant comment and rellocate another one while at it. 2016-06-22 16:14:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: implement channels.conf format autodetection Simple autodetection avoids having to call the parsers one after the other. 2016-06-21 16:08:57 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: rename v5/zap parsers for congruency Add function prototypes while at it. 2016-04-12 21:04:25 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: fix modulation names Some names were incorrect. Authoritative source for the dvbv5 format taken from v4l-utils' lib/libdvbv5/dvb-v5.c Aditionally, add the missing setter mapping for the modulation param. This change makes ATSC work. https://bugzilla.gnome.org/show_bug.cgi?id=764957 2016-02-24 21:44:40 -0300 Thiago Santos * sys/dvb/parsechannels.c: dvbbasebin: also accept DVBv5 channels.conf format Confirmed working with ISDB-T & ATSC conf files. https://bugzilla.gnome.org/show_bug.cgi?id=764957 2016-06-21 11:48:36 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix ISDB-T property descriptions Drop some stale trailing whitespace while at it. 2016-06-21 11:32:07 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix misplaced space on doc block 2016-05-10 03:32:59 +1000 Jan Schmidt * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: When input alignment=AU, always drain each packet. If the input alignment claims AU alignment, each received buffer should contain a complete video frame, so never hold over parts of buffers for later processing. Also reduces latency, as packets are parsed/converted and output immediately instead of 1 buffer later. Fixes a problem where an (arguably disallowed) padding byte on the end of a buffer is detected as an extra byte in the following start code, and messes up the timestamping that should apply to that start code. 2016-06-24 13:05:24 +0100 Tim-Philipp Müller * win32/common/libgstcodecparsers.def: win32: update codecparsers .def file for new symbols 2016-06-24 09:41:18 +0100 Tim-Philipp Müller * ext/openjpeg/Makefile.am: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: openjpeg: fix more broken includes 2016-06-24 09:39:00 +0100 Tim-Philipp Müller * gst/videoparsers/gstjpeg2000parse.h: videoparsers: fix broken include 2016-06-21 12:41:46 -0400 Aaron Boxer * ext/openjpeg/Makefile.am: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstjpeg2000sampling.c: * gst-libs/gst/codecparsers/gstjpeg2000sampling.h: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: * gst/videoparsers/gstjpeg2000sampling.h: jpeg2000parse: use enums for colorspace and sampling, rather than strings Also, move gstjpeg2000sampling to codecparsers project https://bugzilla.gnome.org/show_bug.cgi?id=767908 2016-06-24 01:57:13 +0530 Nirbheek Chauhan * configure.ac: configure: Need to add -DGST_STATIC_COMPILATION when building only statically https://bugzilla.gnome.org/show_bug.cgi?id=767463 2016-06-23 15:57:58 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Only register debug category if dmabuf support is enabled It's not used otherwise currently and causes compiler warnings. 2016-06-22 22:28:03 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Offset timestamp with duration The saved timestamp is used to compute the delay of the probe data. As it's used at the following incoming buffer, it needs to be offset with the duration of the buffer to represent the end position. Also, properly initialize the saved timestamp and protect against TIME_NONE. 2016-06-22 21:54:13 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Synchronize with delays Until now, we were synchronizing both DSP and Probe adapter by waiting and clipping the probe adapter data. This increases the CPU usage, can cause copies if the audio is not 10ms aligned and the worst is that it prevents the processing from compensating for inaccurate latency. This is also a step forward toward supporting playback filters. 2016-06-22 21:45:08 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtdsp: Remove restriction on channels number Unlike 0.1, in 0.2 the reverse stream can have different number of channels. Remove the check that restrict it. 2016-06-22 21:44:35 -0400 Nicolas Dufresne * ext/webrtcdsp/gstwebrtcdsp.cpp: webrtcdsp: Style fix 2016-06-16 14:18:18 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: minimize renegotiation to make hw decoding more reliable The hardware decoder can become (temporarily) unavailable across VTDecompressionSessionCreate/Destroy calls. During negotiation if the currently configured caps are still accepted by downstream we keep using them so we don't have to destroy and recreate the decoding session. This indirectly fixes https://bugzilla.gnome.org/show_bug.cgi?id=767429, by making vtdec stick to GLMemory. 2016-06-16 15:13:02 +1000 Matthew Waters * ext/qt/qtitem.cc: * ext/qt/qtplugin.pro: qmlglsink: add win32 support The current state of c++ ABI's on Window's and Gst's/Qt's conflicting mingw builds means that we cannot use mingw for building the qt plugin. Instead, a qmake .pro file is provided that is expected to be used with the msvc binaries provided by Qt like so: (with the PATH environment variable containing the path to the qt biniaries and PKG_CONFIG_PATH containing the path to GStreamer modules) cd /path/to/sources/gst-plugins-bad/ext/qt qmake -tp vc Then open the resulting VS project and build the library. Then cp debug/libgstqtsink.dll /path/to/prefix/lib/gstreamer-1.0/libgstqtsink.cll https://bugzilla.gnome.org/show_bug.cgi?id=761260 2016-06-21 11:40:22 -0400 Nicolas Dufresne * .gitignore: Add missing file to gitignore 2016-06-20 18:52:00 -0400 Nicolas Dufresne * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-androidcamera.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiofxbad.xml: * docs/plugins/inspect/plugin-bluez.xml: * docs/plugins/inspect/plugin-bs2b.xml: * docs/plugins/inspect/plugin-compositor.xml: * docs/plugins/inspect/plugin-dashdemux.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtls.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-fluidsynthmidi.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gstgtk.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-ivtc.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-kms.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-midi.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-netsim.xml: * docs/plugins/inspect/plugin-openexr.xml: * docs/plugins/inspect/plugin-opengl.xml: * docs/plugins/inspect/plugin-openjpeg.xml: * docs/plugins/inspect/plugin-opusparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qt.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtponvif.xml: * docs/plugins/inspect/plugin-smoothstreaming.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-srtp.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-teletext.xml: * docs/plugins/inspect/plugin-uvch264.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoframe_audiolevel.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-webp.xml: * docs/plugins/inspect/plugin-webrtcdsp.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x265.xml: * docs/plugins/inspect/plugin-yadif.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst/pnm/gstpnmenc.c: doc: Automatic update This is an automatic update with manual merges of running "make update" in the doc/plugins directory. This should help later maintenance of the plugins doc. A lot of plugin are not referenced yet in the doc. Will come later. 2016-06-20 16:30:19 -0400 Nicolas Dufresne * docs/plugins/Makefile.am: doc: Add .cpp files to doc parser Also, complete the list of directory that need to be visited. 2016-06-06 15:10:05 -0400 Nicolas Dufresne * configure.ac: * ext/Makefile.am: * ext/webrtcdsp/Makefile.am: * ext/webrtcdsp/gstwebrtcdsp.cpp: * ext/webrtcdsp/gstwebrtcdsp.h: * ext/webrtcdsp/gstwebrtcechoprobe.cpp: * ext/webrtcdsp/gstwebrtcechoprobe.h: webrtcdsp: Add WebRTC Audio Processing support This DSP library can be used to enhance voice signal for real time communication call. In implements multiple filters like noise reduction, high pass filter, echo cancellation, automatic gain control, etc. The webrtcdsp element can be used along, or with the help of the webrtcechoprobe if echo cancellation is enabled. The echo probe should be placed as close as possible to the audio sink, while the DSP is generally place close to the audio capture. For local testing, one can use an echo loop pipeline like the following: autoaudiosrc ! webrtcdsp ! webrtcechoprobe ! autoaudiosink This pipeline should produce a single echo rather then repeated echo. Those elements works if they are placed in the same top level pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=767800 2016-06-21 11:46:44 -0400 Nicolas Dufresne * common: Automatic update of common submodule From ac2f647 to f363b32 2016-03-22 16:51:53 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/win32/gstglcontext_wgl.c: glcontext/wgl: try wglCreateContextAttribsARB even not gl3 core profile https://bugzilla.gnome.org/show_bug.cgi?id=764018 2016-06-21 18:28:46 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix get_current_gl_api() on win32 Another case of incorrect calling conventions. Using this function on win32 would corrupt the stack pointer and end in massive hilarity. 2016-06-15 12:47:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glsl: fixup external-oes shaders by mangling the required extension Newer devices require using a different GLSL extension for accessing external-oes textures in a shader using the texture() functions. While the GL_OES_EGL_image_external_essl3 should supposedly be supported on a any GLES3 android device, the extension was defined after a lot of the older drivers were built so they will not know about it. Thus there are two possible interpretations of which of texture[2D]() should be supported for external-oes textures. Strict adherence to the GL_OES_EGL_image_external extension spec which uses texture2D() or following GLES3's pattern, also allowing texture() as a function for accessing external-oes textures This adds another mangling pass to convert #extension GL_OES_EGL_image_external : ... into #extension GL_OES_EGL_image_external_essl3 : ... on GLES3 and when the GL_OES_EGL_image_external_essl3 extension is supported. Only uses texture() when the GLES3 and the GL_OES_EGL_image_external_essl3 extension is supported for external-oes textures. Uses GLES2 + texture2D() + GL_OES_EGL_image_external in all other external-oes cases. https://bugzilla.gnome.org/show_bug.cgi?id=766993 2016-05-24 16:26:24 +0530 Nirbheek Chauhan * sys/winks/ksdeviceprovider.c: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: winks: Port to MSVC and pretend to be Windows XP strcasecmp is not defined on MSVC, so just use the glib wrapper. Also pretend to be Windows XP explicitly since the API we use was deprecated and removed (ifdef-ed) from the SDK after this version of Windows. This will be especially relevant once we stop supporting Windows XP soon: https://bugzilla.gnome.org/show_bug.cgi?id=756866 2016-03-02 02:17:54 +0530 Nirbheek Chauhan * win32/common/libgstadaptivedemux.def: * win32/common/libgstbadaudio.def: * win32/common/libgstbadbase.def: * win32/common/libgstbadvideo.def: * win32/common/libgstbasecamerabinsrc.def: * win32/common/libgstinsertbin.def: * win32/common/libgstmpegts.def: * win32/common/libgsturidownloader.def: win32: Add missing def files for libraries 2016-03-02 00:55:15 +0530 Nirbheek Chauhan * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: build: Factor out endian-order RGB formats MSVC seems to ignore preprocessor conditionals inside static pad templates 2016-06-13 22:29:39 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: openjpegdec: use sampling field to determine RGB channel https://bugzilla.gnome.org/show_bug.cgi?id=767402 2016-06-02 13:53:38 +0200 Guillaume Desmottes * tests/check/elements/templatematch.c: templatematch: fix buffer leak in test Need to call gst_check_drop_buffers() to unref the buffers exchanged during the test. https://bugzilla.gnome.org/show_bug.cgi?id=767159 2016-05-19 13:31:56 +0300 Guillaume Desmottes * tests/check/elements/glimagesink.c: glimagesink: fix query leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 13:29:15 +0300 Guillaume Desmottes * tests/check/elements/glimagesink.c: glimagesink: properly setup/teardown tests tcase_add_checked_fixture() is suppose to call the setup and teardown functions so the tests don't have to do it manually. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 13:09:41 +0300 Guillaume Desmottes * tests/check/libs/gstglupload.c: glupload: fix shader leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 12:51:17 +0300 Guillaume Desmottes * tests/check/elements/uvch264demux.c: uvch264demux: fix buffer leaks in test The mock chain functions aren't unreffing the buffers so the caller should do it. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 12:36:42 +0300 Guillaume Desmottes * tests/check/elements/camerabin.c: camerabin: fix element leak in test https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:57 +0300 Guillaume Desmottes * tests/check/elements/autoconvert.c: fix buffer leaks in tests gst_check_drop_buffers() release the buffers exchanged during the test. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:20 +0300 Guillaume Desmottes * tests/check/elements/audiomixer.c: * tests/check/elements/compositor.c: fix event leaks in tests The events are supposed to be unreffed when finishing the test, not reffed. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:19:01 +0300 Guillaume Desmottes * tests/check/elements/audiointerleave.c: audiointerleave: fix message leaks by flushing the bus https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-19 11:16:37 +0300 Guillaume Desmottes * gst-libs/gst/audio/gstaudioaggregator.c: audioaggregator: fix buffer leak If the pad was still owning a buffer when being destroyed it was leaked. Fix a leak with the test_flush_start_flush_stop test. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-05-18 16:58:44 +0300 Guillaume Desmottes * tests/check/elements/autoconvert.c: autoconvert: fix factories leak in test The factories returned by gst_registry_find_feature() have to be unreffed. https://bugzilla.gnome.org/show_bug.cgi?id=766663 2016-06-17 14:58:44 +0200 Michael Olbrich * gst-libs/gst/codecparsers/gsth264parser.c: h264parse: fix default time_offset_length The default value for time_offset_length should be 24, see section E2.2 of the H264 spec. https://bugzilla.gnome.org/show_bug.cgi?id=767792 2016-06-17 14:31:42 +0200 Joan Pau Beltran * ext/dc1394/gstdc1394src.c: dc1394src: check for disabled transmission in _stop_cam For symetry with _start_cam, check that the transmission is effectively disabled in _stop_cam. https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-06-17 15:32:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: do not rely on temp var for fail detection Use errno instead as local var might be overwritten before the check. 2016-06-14 15:29:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: rework set_pids() - Reflow to avoid unneeded nesting - Free aux pids array earlier - Adjust debug output to deliver more meaningful information 2016-06-14 14:24:35 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop pointless debug msg 2016-06-09 16:05:39 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: drop all otherwizes 2016-06-12 13:53:18 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: jpeg2000parse: support j2c format https://bugzilla.gnome.org/show_bug.cgi?id=767512 2016-06-16 01:54:16 +1000 Matthew Waters * tests/check/Makefile.am: tests/glcontext: link against gstvideo for gst_video_info_* fixes make distcheck complaining about it. 2016-04-14 18:14:32 +0300 Sergey Borovkov * configure.ac: * ext/qt/qtitem.cc: * gst-libs/gst/gl/egl/gstegl.h: qml: Enable qmlglsink for eglfs https://bugzilla.gnome.org/show_bug.cgi?id=763044 2016-06-16 00:44:48 +1000 Matthew Waters * ext/qt/qtitem.cc: qmlglsink: propagate GL context creation failure upwards Otherwise an application cannot know if the qmlglsink will be displaying frames incorrectly/at all. 2016-06-16 00:44:16 +1000 Matthew Waters * ext/qt/qtitem.cc: qmlglsink: also allow wayland-egl as a platform name 2016-06-12 15:35:28 +0800 Haihua Hu * configure.ac: * ext/qt/Makefile.am: * ext/qt/qtitem.cc: qmlglsink: Add Wayland support Don't use gstgldisplay to get wayland display. Should use QPA on wayland to get wayland display for QT. https://bugzilla.gnome.org/show_bug.cgi?id=767553 2016-06-16 00:46:57 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: tests/glcontext: update test for gen,del_texture removal 2016-06-14 22:12:18 +0200 Stefan Sauer * ext/ladspa/gstladspa.c: ladspa: simplify registry cache structure creation Create and fill structure in one go. 2016-06-14 13:48:09 +0800 Haihua Hu * ext/gl/effects/gstgleffectssources.c: gleffects: fix little rectangle that appears at the center of squeeze and tunnel effects These two shader will calculate the vector length and use it as denominator. But length could be zero which will cause undefine behaviour. Add protection for this condition https://bugzilla.gnome.org/show_bug.cgi?id=767635 2016-06-15 18:10:59 +1000 Matthew Waters * gst-libs/gst/gl/gstglsl.c: glsl: add some debugging 2016-06-15 16:08:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: remove unused functions for texture creation/deletion Everyone uses GstGLMemory now and any future code should as well. 2016-06-15 15:47:47 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.h: glfilter: remove unused class fields in/out_tex_id The functionality is not used by any subclass nor are the values set anywhere. 2016-06-15 15:08:39 +1000 Matthew Waters * ext/gl/gstgldeinterlace.c: gldeinterlace: remove dead code accessing filter->in_tex_id It's not set by anyone or anything and gldeinterlace is the only user of it now. 2016-06-15 14:40:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload/meta: remove unneeded texture deletion The textures are managed by the GstGLMemory inside the output buffer. Freeing them prematurely may result in a use-after-free. 2016-05-30 14:10:23 +0200 Aleix Conchillo Flaqué * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: srtpenc: remove get-rollover-counter signal and add stats property We remove get-rollover-counter signal in favor of the "stats" property. The "stats" property is a GstStructure with caps application/x-srtp-encoder-stats that contains an array of structures with caps application/x-srtp-stream. Each stream structure contains "ssrc" and "roc" fields. https://bugzilla.gnome.org/show_bug.cgi?id=733265 2016-05-25 12:55:36 +0200 Mats Lindestam * gst/videoparsers/gsth264parse.c: h264parse: support for handling of config-interval = -1 Added support for handling of config-interval = -1. config-inteval = -1 represents resending SPS and PPS for each I-/IDR-frame. https://bugzilla.gnome.org/show_bug.cgi?id=766803 2016-05-25 12:45:17 +0200 Mats Lindestam * gst/videoparsers/gsth264parse.c: h264parse: refactored handling of SPS/PPS when pushing frames https://bugzilla.gnome.org/show_bug.cgi?id=766803 2016-05-25 11:54:55 +0200 Mats Lindestam * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: change "config-interval" property type from uint to int So we can use -1 as special value like in rtph264pay. https://bugzilla.gnome.org/show_bug.cgi?id=766803 2016-06-13 09:20:22 +0300 Sebastian Dröge * sys/applemedia/avfassetsrc.m: avfassetsrc: Don't escape the URI before passing it to NSURL The URI must already be escaped by the caller, we don't support passing around invalid (unescaped) URIs via the GstURIHandler interface. Also it will escape too much of the URI in this case, e.g. ipod-library://item/item.m4a?id=3143338395173862951 becomes ipod-library://item/item.m4a%3Fid%3D3143338395173862951 https://bugzilla.gnome.org/show_bug.cgi?id=767492 2016-06-13 09:20:02 +0300 Sebastian Dröge * sys/applemedia/iosassetsrc.m: iosassetsrc: Print the correct URI if it was rejected We were printing the previously set URI instead of the new one. 2016-06-09 01:20:36 +0200 Sebastian Rasmussen * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: Lock and don't send final boundary upon error Previously GstCurlSmtpSink could cause the pipeline thread to end up waiting for a stopped thread to perform work. The scenario was that the sink could be rendering a buffer and waiting for the curl transfer thread to have sent the data. As soon as the transfer thread has copied all data to curl's data buffer in gst_curl_base_sink_transfer_read_cb() then the render call would stop waiting and return GST_FLOW_OK. While this takes place the transfer thread may suffer from an error e.g. due gst_poll_wait() timing out. This causes the transfer thread to record the error, claim (it is not really true since there was an error) that the data has been sent and that a response has been received by trying to signal the pipeline thread (but this has already stopped waiting). Finally the transfer thread stops itself. A short while later the pipeline thread may attempt to push an EOS event into GstCurlSmtpSink. Since there is no check in gst_curl_smtp_sink_event() to check if the sink has suffered from any error it may attempt to add a final boundary and ask the, now deceased, transfer thread to transfer the new data. Next the sink element would have waited for the transfer to complete (using a different mechanism than normal transfers through GstCurlBaseSink). In this case there was an error check to avoid waiting if an error had already been seen. Finally GstCurlSmtpSink would chain up to GstCurlBaseSink which would then block waiting for a response (normally this would be prevented by the transfer thread suffering the error claiming that it had been received, but GstCurlSmtpSink clobbered this flag after the fact). Now GstCurlSmtpSink avoids this by locking over the entire event handing (preventing simultaneous changes to flags by the two threads) and also by avoiding to initiate transfer of final boundary if an error has already been seen. Also add GST_FIXME() for remaining similar issue where the pipeline thread may block indefinitely waiting for transfer thread to transfer data but the transfer thread errors out and fails to notify the pipeline thread that the transfer failed. https://bugzilla.gnome.org/show_bug.cgi?id=767501 2016-06-08 11:32:28 -0400 Aaron Boxer * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: * gst/videoparsers/gstjpeg2000sampling.h: jpeg2000parse: Require either colorspace or sampling field in sink caps And always set the sampling field on the src caps, if necessary guessing a correct value for it from the colorspace field. Also, did some cleanup: removed sampling enum - redundant. https://bugzilla.gnome.org/show_bug.cgi?id=766236 2016-06-10 11:32:46 +0300 Heinrich Fink * ext/opencv/gstfacedetect.cpp: facedetect: Fix compiler warning with clang 3.8 Use namespace only after it was actually defined by a header. gstfacedetect.cpp:79:17: error: using directive refers to implicitly-defined namespace 'std' [-Werror] using namespace std; ^ 2016-06-06 16:35:15 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: unify exit paths on _start() 2016-06-06 15:31:31 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: use proper acronym for PID (Packet Identifier) Drop formatting tab from message while at it. 2016-06-06 12:25:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: set common PES filter params once and reuse Avoid setting the same harcoded values over and over again. 2016-06-09 22:01:45 +0100 Tim-Philipp Müller * ext/dc1394/gstdc1394src.c: dc1394src: minor clean-up We always call _parse_caps() with non-NULL out vars. 2016-06-09 22:01:13 +0100 Tim-Philipp Müller * ext/dc1394/gstdc1394src.c: dc1394src: fix some more c99-isms 2016-06-09 21:47:05 +0100 Tim-Philipp Müller * docs/plugins/Makefile.am: docs: fix for renamed dc1394 source file https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-06-07 15:50:50 +0200 Joan Pau Beltran * ext/dc1394/Makefile.am: * ext/dc1394/gstdc1394src.c: * ext/dc1394/gstdc1394src.h: dc1394src: prefix and file names according to Gstreamer conventions Replace the type and function prefix to follow the conventions: - Use `GST_TYPE_DC1394_SRC` instead of `GST_TYPE_DC1394`. - Use `GstDC1394Src` and `GstDC1394SrcClass` instead of `GstDc1394` and `GstDc1394Class`. - Use `gst_dc1394_src` instead of `gst_dc1394`. https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-05-10 18:30:35 +0200 Joan Pau Beltran * configure.ac: * ext/dc1394/Makefile.am: * ext/dc1394/gstdc1394.c: * ext/dc1394/gstdc1394.h: dc1394src: port to 1.X The dc1394src is a PushSrc element for IIDC cameras based on libdc1394. The implementation from the 0.x series is deffective: caps negotiation does not work, and some video formats provided by the camera are not supported. Refactor the code to port it to 1.X and enhance the support for the full set of video options of IIDC cameras: - The IIDC specification includes a set of camera video modes (video format, frame size, and frame rates). They do not map perfectly to Gstreamer formats, but those that do not match are very rare (if used at all by any camera). In addition, although the specification includes a raw format, some cameras use mono video formats to capture in Bayer format. Map corresponding video modes to Gstreamer formats in capabilities, allowing both gray raw and Bayer video formats for mono video modes. - The specification includes scalable video modes (Format7), where the frame size and rate can be set to arbitrary values (within the limits of the camera and the bus transport). Allow the use of such mode, using the frame size and rate from the negotiatied caps, and set the camera frame rate adjusting the packet size as in: The scalable modes also allow for a custom ROI offset. Support for it can be easily added later using properties. - Camera operation using libdc1394 is as follows: 1. Enumerate cameras on the system and open the camera identified the enumeration index or by a GUID (64bit hex code). 2. Query the video formats supported by the camera. 3. Configure the camera for the desired video format. 4. Setup the capture resources for the configured video format and start the camera transmission. 5. Capture frames from the camera and release them when not used. 6. Stop the camera transmission and clear the capture resources. 7. Close the camera freeing its resources. Do steps 2 and 3 when getting and setting the caps respectively. Ideally 4 and 6 would be done when going from PAUSED to PLAYING and viceversa, but since caps might not be set yet, the video mode is not properly configured leaving the camera in a broken state. Hence, setup capture and start transmission in the set caps method, and consequently clear the capture and stop the transmission when going from PAUSED to READY (instead of PLAYING to PAUSED). Symmetrycally, open the camera when going from READY to PAUSED, allowing to probe the camera caps in the negotiation stage. Implement that using the `start` and `stop` methods of `GstBaseSrc`, instead of the `change-state` method of `GstElement`. Stop the camera before setting new caps and restarting it again to handle caps reconfiguration while in PLAYING (it has no effect if the camera is not started). - Create buffers copying the bytes of the captured frames. Alternatively, the buffers could just wrap the bytes of the frames, releasing the frame in the buffer's destroy notify function, if all buffers were destroyed before going from PLAYING to PAUSED. - No timestamp nor offset is set when creating buffers. Timestamping is delegated to the parent class BaseSrc, setting `gst_base_src_set_live` TRUE, `gst_base_src_set_format` with GST_FORMAT_TIME and `gst_base_src_set_do_timestamp`. Captured frames have a timestamp field with the system time at the completion of the transmission of the frame, but it is not sure that this comes from a monotonic clock, and it seems to be left NULL in Windows. - Use GUID and unit properties to select the camera to operate on. The camera number used in version 0.X does not uniquely identify the device (it depends on the set of cameras currently detected). Since the GUID is 64bit identifier (same as MAC address), handle it with a string property with its hexadecimal representation. For practicality, operate on the first camera available if the GUID is null (default) and match any camera unit number if unit is -1. Alternatively, the GUID could be handed with an unsigned 64 bit integer type property, using `0xffffffffffffffff` as default value to select the first camera available (it is not a valid GUID value). - Keep name `GstDc1394` and prefix `gst_dc1394` as in version 0.X, although `GstDC1394Src` and `gst_dc1394_src` are more descriptive. - Adjust build files to reenable the compilation of the plugin. Remove dc1394 from the list of unported plugins in configure.ac. Add the missing flags and libraries to Makefile. Use `$()` for variable substitution, as many plugins do, although other plugins use `@@` instead. https://bugzilla.gnome.org/show_bug.cgi?id=763026 2016-06-08 18:02:32 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Move SEEK handling to a separate function Just for code readability. Doesn't change behaviour 2016-06-07 21:10:04 -0400 Nicolas Dufresne * ext/webp/gstwebpdec.c: webpdec: Wait for segment event before checking it The heuristic to choose between packetise or not was changed to use the segment format. The problem is that this change is reading the segment during the caps event handling. The segment event will only be sent after. That prevented the decoder to go in packetize mode, and avoid useless parsing. https://bugzilla.gnome.org/show_bug.cgi?id=736252 2016-06-07 21:04:21 -0400 Nicolas Dufresne * gst/vmnc/vmncdec.c: vmncdec: Wait for segment event before checking it The heuristic to choose between packetise or not was changed to use the segment format. The problem is that this change is reading the segment during the caps event handling. The segment event will only be sent after. That prevented the decoder to go in packetize mode, and avoid useless parsing. https://bugzilla.gnome.org/show_bug.cgi?id=736252 2016-06-07 14:15:41 +0100 Tim-Philipp Müller * ext/openjpeg/gstopenjpegenc.c: openjpeg: fix builddir != srcdir build, and distcheck 2016-06-01 19:02:33 -0400 Aaron Boxer * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-videoparsersbad.xml: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstjpeg2000parse.c: * gst/videoparsers/gstjpeg2000parse.h: * gst/videoparsers/gstjpeg2000sampling.h: * gst/videoparsers/plugin.c: jpeg2000parse: Add JPEG2000 parser element https://bugzilla.gnome.org/show_bug.cgi?id=766236 2016-06-01 19:01:44 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstjpeg2000sampling.h: openjpeg: set sampling in the caps https://bugzilla.gnome.org/show_bug.cgi?id=766236 2016-05-02 17:38:50 +0200 Jan Alexander Steffens (heftig) * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Set PTS on aligned buffers This was broken in 09c05df (make "alignment" property more useful for packetisation). https://bugzilla.gnome.org/show_bug.cgi?id=765926 2016-06-07 17:22:01 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: always drain in ::negotiate Move calling gst_vtdec_push_frames_if_needed from ::set_format to ::negotiate so that we always drain even when renegotiation is triggered by downstream. 2016-06-07 16:00:01 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: try to preserve downstream caps order vtdec specifies sysmem; GLMemory as template caps. When negotiating, we used to call gst_pad_peer_query_caps (..., filter) with our template caps as filter. The query does gst_caps_intersect (filter, peercaps) internally which gives precedence to the order of the filter caps. While we want to output sysmem by default, when negotiating with glimagesink which returns GLMemory; sysmem; we do want to do GL, so we now query using a NULL filter and intersect the result with our template caps giving precedence to downstream's caps. tl;dr: make sure we end up negotiating GLMemory with glimagesink 2016-06-06 14:08:43 -0400 Xavier Claessens * sys/androidmedia/gstahcsrc.c: ahcsrc: Avoid a div by 0 warning https://bugzilla.gnome.org/show_bug.cgi?id=767302 2016-06-06 12:38:45 -0400 Xavier Claessens * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Do not call gst_object_unref on GstCaps https://bugzilla.gnome.org/show_bug.cgi?id=767298 2016-05-19 11:16:50 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Set DISCONT on startup, resume and after seeks Initial buffers after STREAM_START and seeks should always have the DISCONT flag set. https://bugzilla.gnome.org/show_bug.cgi?id=766650 2015-09-23 02:51:57 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Change the pad naming scheme to include a generation ID A simple fix for the problem of creating new pads with duplicate names when switching program, easier than the alternative of trying to work out which pads might persist and manage that. See https://bugzilla.gnome.org/show_bug.cgi?id=758454 2016-06-06 11:13:00 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: pause() should not inhibit signals but work exactly like play() https://bugzilla.gnome.org/show_bug.cgi?id=766607#c23 2016-06-03 15:58:52 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: improve description of PIDs property 2016-06-03 07:11:33 +0200 Edward Hervey * sys/applemedia/Makefile.am: applemedia: Only use the OpenGL framework on OSX It's not available on ios (uses OpenGLES already) https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-17 17:14:49 +0300 Guillaume Desmottes * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/video/gstvideoaggregator.c: gst-libs: gl, video: use MAY_BE_LEAKED flag https://bugzilla.gnome.org/show_bug.cgi?id=767162 2016-05-18 12:48:48 +0300 Guillaume Desmottes * sys/bluez/gsta2dpsink.c: a2dpsink: unref avdtpsink if state transition failed If for some reason the avdtpsink element can't go READY then the gsta2dpsink can't either and so should release the ressources it allocates when trying to do so. Fix a leak with the generic/states test. https://bugzilla.gnome.org/show_bug.cgi?id=767161 2016-05-28 21:34:52 +0200 Havard Graff * sys/applemedia/Makefile.am: applemedia: CGLTexImageIOSurface2D needs the OpenGL framework on OSX https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-28 21:39:00 +0200 Havard Graff * sys/applemedia/avsamplevideosink.m: avsamplevideosink: check we are compiling for 10.1 up to 10.4 This API was deprecated in 10.4, so don't use it for 10.5 and onwards. https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-06-01 13:43:32 +0200 Heinrich Fink * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: applemedia: vtenc: Register a hardware-only vtenc_h264_hw element on OSX Similar to vtdec_hw, this commit adds a vtenc_h264_hw element that fails caps negotiation unless a hardware encoder could actually be acquired. This is useful in situations where a fallback to a software encoder other than the vtenc_h264 software encoder is desired (e.g. to x264enc). https://bugzilla.gnome.org/show_bug.cgi?id=767104 2016-06-02 16:30:02 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: make vtdec_hw fallback to software on renegotiation When renegotiating mid stream - for example with variable bitrate streams - and therefore destroying and recreating VTSessions, the hw decoder might become temporarily unavailable. To deal with this and avoid erroring out on bitrate changes, vtdec_hw now falls back to using the software decoder if the hw one was available at some point but isn't anymore. At renegotiation/bitrate change time, it will still retry to open the hardware one. 2016-06-02 13:10:51 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: fix switching from GLMemory to Sysmem When renegotiating from GLMemory to Sysmem do teardown the texture_cache. Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=766190 2016-06-02 11:36:57 +1000 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: optimize renegotiation ::negotiate can be called several times before the CAPS event is sent downstream so use the currently configured output state caps instead of the pad current caps when deciding whether to recreate the VTSession or not. This leads to creating/destroying less VTSessions which makes renegotiation more reliable especially when using hw decoding. 2016-06-01 13:52:10 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: remove comment on self-explanatory code 2016-06-01 13:18:21 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: avoid out-bound write on PID filter array There's no need for an end-of-list marker in the filter PIDs array if full, as the absolute maximum number of elements (MAX_FILTERS) is known. CID #1362441 2016-05-31 20:41:14 +0100 Tim-Philipp Müller * sys/androidmedia/gstahcsrc.c: androidmedia: fix error debug message when camera doesn't exist Makes no sense to include the system error here since errno will likely not be set and then it says 'system error: success' which is confusing. https://bugzilla.gnome.org/show_bug.cgi?id=767087 2016-05-31 18:58:43 +0900 Justin Kim * sys/androidmedia/gstahcsrc.c: ahcsrc: release resources in 'finalize' function In general, 'dispose' function is used for dropping all references and 'finalize' is called for releasing instances. https://bugzilla.gnome.org/show_bug.cgi?id=763309 2016-05-25 15:01:31 +0200 Guillaume Desmottes * gst-libs/gst/player/gstplayer.c: * tests/check/libs/player.c: player: inhibit signals after gst_player_stop() has been called Also wait for the state change to STOP to have been announced before destroying the player so it won't appear as leaked by leak detector tools. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-25 12:48:13 +0200 Guillaume Desmottes * tests/check/libs/player.c: player: handle uri-loaded in test Had to adapt the existing tests because of this new callback. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-25 16:57:49 -0700 Scott D Phillips * gst/videoparsers/gsth265parse.c: h265parse: Don't assume contiguous id's in make_codec_data vps/sps/pps id's are not required to be used contiguously. https://bugzilla.gnome.org/show_bug.cgi?id=766891 2016-05-28 01:22:32 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add sample ATSC launch line 2016-05-28 21:36:04 +0200 Havard Graff * gst-libs/gst/gl/gstglquery.c: gl: glquery: cast to silence compiler warning https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-28 21:35:37 +0200 Havard Graff * ext/gl/gstgltestsrc.h: gltestsrc: gltestsrc.h already defines GstGLTestSrc And redefinition is not allowed. https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-27 23:24:54 +0200 Havard Graff * gst-libs/gst/player/gstplayer.c: player: use correct _NONE enum https://bugzilla.gnome.org/show_bug.cgi?id=766973 2016-05-28 10:44:04 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: maintain minimal ABI compat Because we can. https://bugzilla.gnome.org/show_bug.cgi?id=723352 2014-05-22 16:12:01 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Remove unused fps_num/fps_den fields Instead the newly added function should be used to calculate the framerate properly. https://bugzilla.gnome.org/show_bug.cgi?id=723352 2016-05-25 10:59:00 +0100 Tim-Philipp Müller * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: update fps calculation for h264 codec parser API changes Use new gst_h264_video_calculate_framerate() API instead of fps_n/fps_d fields in SPS struct which are to be removed. Apparently H264 content in MSS is always non-interlaced/progressive, so we can just pass 0 for field_pic_flag and don't need to parse any slice headers first if there's no external signalling. But even if that's not the case the new code is not worse than the existing code. https://msdn.microsoft.com/en-us/library/cc189080%28VS.95%29.aspx https://bugzilla.gnome.org/show_bug.cgi?id=723352 2016-05-26 10:28:14 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: use single marker at end of filtering PID list Avoids at least ~100 unneeded assignment operations at runtime 2016-05-23 16:31:05 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: simplify reporting of set polarity 2016-05-23 14:41:40 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix bandwidth-hz property description Bandwidth Hz is no longer a DVBT-only property 2016-05-23 14:02:10 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix usage of PES & DVR acronyms everywhere Additionally, improve message on gst_poll_new() failure 2016-05-26 20:16:07 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: always unref the context on a collision Otherwise we will leak GstGLContext's when adding the same context more than once. Fixes a regression caused by 5f9d10f6036068502ad23e1ec86a73e341801ae1 in the gstglcontext unit test that failed with: Assertion 'tmp == NULL' failed 2016-05-25 13:38:47 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: Revert "aggregator: Start the task when linked" This reverts commit 302580c3815136d29479c3a8cae611d6e2ff3709. 2016-05-20 14:34:37 -0400 Nicolas Dufresne * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: Don't cache buffer pool Pools cannot be used by the two elements at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=766611 2016-04-13 16:30:28 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Start the task when linked Until now we would start the task when the pad is activated. Part of the activiation concist of testing if the pipeline is live or not. Unfortunatly, this is often too soon, as it's likely that the pad get activated before it is fully linked in dynamic pipeline. Instead, start the task when the first serialized event arrive. This is a safe moment as we know that the upstream chain is complete and just like the pad activation, the pads are locked, hence cannot change. https://bugzilla.gnome.org/show_bug.cgi?id=757548 2016-05-25 09:09:01 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: win32: Add debug category in gstglcontext_wgl.c https://bugzilla.gnome.org/show_bug.cgi?id=766867 2016-05-16 20:02:28 +0800 Haihua Hu * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glimagesink: support video rotation using transform matrix Add "rotate-method" to glimagesink and apply transform matrix to vertex coordinate to control rotation. https://bugzilla.gnome.org/show_bug.cgi?id=765795 2016-05-24 23:39:27 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: glvideomixer: fix race retrieving the GL context from the display _get_gl_context() can be called concurrently from either propose_allocation() or decide_allocation(). If it so happens that this happens at the same time, the check for whether we already had a GL context was outside the lock. Inside the lock and loop, the first thing that happens is that we unref the current GL context (if valid) as if there was a conflict adding it to the display. If the timing was unlucky, subsequent use of the GL context would be referencing an already unreffed GL context object resulting in a critical: g_object_ref: assertion 'object->ref_count > 0' failed https://bugzilla.gnome.org/show_bug.cgi?id=766703 2016-05-24 23:38:22 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: add some debugging about retrieving GL contexts 2016-05-25 10:01:38 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Re-add accidentially removed GST_DEFINE_MINI_OBJECT_TYPE() 2016-05-23 15:24:53 +0300 Guillaume Desmottes * gst-libs/gst/player/gstplayer.c: player: fix suburi getter debug message The property is a string, not a boolean. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-25 09:53:15 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Don't set subtitle URI directly but dispatch to the player thread Otherwise we do state changes and everything in the application thread, which might block and more important can cause reentrant signals. https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-23 20:11:17 +0300 Sebastian Dröge * gst-libs/gst/gl/egl/gsteglimage.c: eglimage: Ensure that the debug category is always initalized Before the initializer was only run if dmabuf support was used. https://bugzilla.gnome.org/show_bug.cgi?id=766794 2016-05-24 23:30:09 +1000 Arjen Veenhuizen * ext/gl/gstgltransformation.c: gltransformation: make the pivot-z property READWRITE Instead of just being READABLE. https://bugzilla.gnome.org/show_bug.cgi?id=766818 2016-05-23 10:40:58 +0300 Guillaume Desmottes * ext/gl/gstgltestsrc.c: gltestsrc: fix src_impl leak https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-24 00:55:11 +0100 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/player/Makefile.am: g-i: pass compiler env to g-ir-scanner It's what introspection.mak does as well. Should fix spurious build failures on gnome-continuous. 2016-05-24 07:17:22 +1000 Jan Schmidt * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: pnmdec: Fix ASCII parsing Parse gray16 properly in ascii mode, and fix some bugs around reading data in chunks when ascii values cross chunk boundaries 2016-05-19 01:28:04 +1000 Jan Schmidt * tests/check/Makefile.am: * tests/check/elements/pnm.c: pnm: Add a basic unit test Test that we can run an encode / decode cycle in various formats without errors 2016-05-19 01:04:36 +1000 Jan Schmidt * gst/pnm/gstpnmenc.c: pnmenc: Make output caps match the srcpad template Don't output 'image/pnm', which isn't even in the template caps. Instead, output a mime-type consistent with what we are encoding. 2016-05-18 17:19:40 +1000 Jan Schmidt * gst/pnm/gstpnmenc.c: pnmenc: Tidy up code, support BE/LE GRAY16 properly Remove code that dealt with odd strides separately - there's not really any overhead to just using 1 codepath for both matched and unmatched stride output. Add separate codepaths for BE vs LE GRAY16 input so they're handled properly 2016-05-16 21:22:57 +1000 Jan Schmidt * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: pnmdec: Actually output LE or BE GRAY16 as negotiated Add codepaths to output GRAY16 in little or big endian as negotiated. Move all output format negotiation into a central function and clean it up 2015-10-22 17:06:01 +0200 Dimitrios Katsaros * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmutils.c: pnmdec: Implementation of GRAY16 handling https://bugzilla.gnome.org/show_bug.cgi?id=757022 2015-10-19 17:15:30 +0200 Dimitrios Katsaros * gst/pnm/gstpnmenc.c: pnmenc: Implementation of GRAY16 handling https://bugzilla.gnome.org/show_bug.cgi?id=757022 2016-05-20 19:25:57 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmsbufferpool.c: kmsbufferpool: error only if no allocator Do not expect an allocator from the configuration, but expect to have already one set. 2016-05-15 11:52:55 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: frame copy log in performance category Log the message when the frame is going to be copy (worse case) under the performance log category. https://bugzilla.gnome.org/show_bug.cgi?id=766466 2016-05-15 11:51:22 +0200 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: kmssink: use trace level for buffer render log Instead of using debug level for logging each buffer rendered, use trace level. https://bugzilla.gnome.org/show_bug.cgi?id=766466 2016-05-23 17:00:22 +0530 Arun Raghavan * gst-libs/gst/player/gstplayer-media-info.c: player: Fix documentation for gst_player_video_info_get_framerate() Document out parameters and fix function name. 2016-05-18 16:00:47 +0300 Guillaume Desmottes * tests/check/libs/player.c: player: use gst_check_init() in test Calling GST_DEBUG() in test rely on the default category to be defined, which is done in gst_check_init(). https://bugzilla.gnome.org/show_bug.cgi?id=766607 2016-05-20 17:28:52 -0400 Aaron Boxer * ext/openjpeg/gstopenjpegenc.c: openjpegenc: enable MCT for RGB video https://bugzilla.gnome.org/show_bug.cgi?id=766732 2016-05-20 14:08:03 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: group DVB-T2 substream-id check with its corresponding set_prop() 2016-05-20 13:57:45 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add DVB-S2 sub-stream ID check Disable if invalid (> 255) instead of blindy setting this property regardless of its actual value. 2016-05-20 13:47:06 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: clarify consequence of passing a wrong ID to the substream filter 2016-05-19 17:05:33 +0300 Guillaume Desmottes * ext/gl/gltestsrc.c: gltestsrc: fix shaders ref counting The gltestsrc element uses two shaders: color_shader and snow_shader. Those are alternatively assigned to the SrcShader->shader pointer and their reference was transferred to it. Only the SrcShader->shader was unreffed (in _src_shader_deinit()) so only one shader was properly freed, the other one was leaked. Fixed this by giving an extra ref to SrcShader->shader and unreffing the 2 shaders in _src_smpte_free(). https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-19 16:55:31 +0300 Guillaume Desmottes * ext/gl/gstglmosaic.c: glmosaic: fix shader leak gst_gl_mosaic_init_shader() is called twice with test_glmosaic so the first shader was leaked. https://bugzilla.gnome.org/show_bug.cgi?id=766661 2016-05-16 17:11:53 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Unparent internal window before destroying it For some reason DestroyWindow() deadlock if it's called from parent window's KeyPress event. https://bugzilla.gnome.org/show_bug.cgi?id=766533 2016-05-16 15:26:53 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Don't steal parent focus when creating internal window This fix regression introduced by 0acc18c60f6f962cc6553f6047fdb64891bab544. https://bugzilla.gnome.org/show_bug.cgi?id=766520 2016-05-14 11:56:59 +0200 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't wait if input buffer is after output If the input buffer is after the end of the output buffer, then waiting for more data won't help. We will never get an input buffer for this point. This fixes compositing of streams from rtspsrc. https://bugzilla.gnome.org/show_bug.cgi?id=766422 2016-05-19 09:25:57 -0700 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: fix potential NULL deref This bug was found via cppcheck static analysis. If android.hardware.Camera.getParameters returns NULL, then object will be NULL, and we won't allocate params. This means that the GST_DEBUG statement referencing params->object will be invalid. Fix this by exiting early if android.hardware.Camera.getParameters returns NULL. https://bugzilla.gnome.org/show_bug.cgi?id=766638 2016-05-19 11:33:52 -0700 Martin Kelly * sys/androidmedia/gstahcsrc.c: ahc: fix typo in doc blurb https://bugzilla.gnome.org/show_bug.cgi?id=766679 2016-05-18 16:55:38 +0300 Guillaume Desmottes * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix pending tags leak https://bugzilla.gnome.org/show_bug.cgi?id=766662 2016-05-18 12:30:05 +0300 Guillaume Desmottes * sys/kms/gstkmssink.c: kmssink: chain up finalize method https://bugzilla.gnome.org/show_bug.cgi?id=766597 2016-05-18 12:33:51 -0700 Martin Kelly * tests/examples/opencv/gstfacedetect_test.c: * tests/examples/opencv/gsthanddetect_test.c: examples: opencv: typo fix https://bugzilla.gnome.org/show_bug.cgi?id=766639 2016-05-18 21:29:15 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: support CVPorts CVPorts are ports that take a buffer. For now we just fill the buffers with the control value. 2016-05-18 21:26:50 -0700 Stefan Sauer * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: lv2: use _OBJECT log variants and lower log level when processing 2016-05-17 14:33:04 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: move ISDB-T bandwidth check to _is_valid_bandwidth() Allows test to be used for delivery system auto-detection. Additionally, add 0 (auto) as valid value. 2016-05-17 14:19:30 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add '0' as a valid value for bandwidth Underlying API considers this the BANDWIDTH_HZ equivalent to the old BANDWIDTH_AUTO for BANDWIDTH. 2016-05-17 13:53:54 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: factor out and reuse DVB-T/T2 bandwidth checks Use new utility function as an additional check for delivery system auto-detection. 2016-05-17 12:06:45 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: recognize additional bandwidths at zap parsing Previously ignored 1.712, 5 and 10 MHz values are also valid 2016-05-16 12:27:50 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: canonicalise function names Had to be done at some point: gst_videoaggregator_* -> gst_video_aggregator_* Also fix up some function names with typos. 2016-05-15 23:31:33 -0700 Stefan Sauer * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: lv2: cleanup the predicates Use the defines from the headers and get rid of our own namespace defines. Replace the 'role' prop with 'designation'. 2016-05-15 23:27:22 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: tweak enum logging Log more details when we find a bad scalepoint and downgrade the logging of the good enum valzes. 2016-05-15 22:05:43 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2utils.c: lv2: generate enums from scalepoints Plugins can provide a set of named values for a control port. Ideally only those values are set for the property. Check if all scalepoints are integers and if so generate an enum type. 2016-05-15 19:45:26 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: reduce log spam for property bounds Only complain about bad bounds, if the plugin actually set those. Otherwise silently adjust our defaults. 2016-05-15 17:58:51 -0700 Stefan Sauer * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: lv2: remove lv2_symbol_pred We're not actually using it. 2016-05-15 17:54:06 -0700 Stefan Sauer * ext/lv2/gstlv2source.c: lv2: remove leftover FIME 2016-05-15 00:41:12 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: special case detection when DVB-T and T2 seem valid There is no way to tell one over the other when parameters seem valid for DVB-T and DVB-T2 and the adapter supports both. Reason to go with the former here is that, from experience, most DVB-T2 channels out there seem to use parameters that are not valid for DVB-T, like QAM_256 https://bugzilla.gnome.org/show_bug.cgi?id=765731 2016-05-14 23:32:49 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add transmission mode check for DTMB 2016-05-13 01:54:56 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: use proper fe_spectral_inversion enum identifiers 2016-05-13 01:25:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: explicitly disable stream filter for invalid ids 2016-05-13 00:50:45 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: do not assume DVB-T from zap file alone DVB-T/T2 have the same number of fields so we were wrongly assuming DVB-T for DVB-T2 broadcasts. Not setting the delivery system here allows for dvbsrc to make an informed guess based on the channel parameters. 2016-05-13 00:12:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: consider transmission mode for delsys autodetection 2016-05-13 00:04:08 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: factor out transmission mode check against delsys 2016-05-12 16:43:09 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: improve delivery system autodetection 2016-05-12 14:12:09 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add modulation checks for DVB-T and T2 2016-05-15 14:46:40 -0700 Stefan Sauer * ext/ladspa/gstladspa.c: ladspa: use _OBJECT log variants for plugin_init Also trim leading whitespae. 2016-05-15 14:45:15 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2source.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: add registry caching Use the plugin_cache extra data to avoid introspecting over and over again. 2016-05-14 12:35:15 -0700 Stefan Sauer * ext/lv2/README: * ext/lv2/gstlv2utils.c: lv2: implemnt the map-extension This is the most used one and at the same time easy to implement sing QGQuark. 2016-05-14 12:34:10 -0700 Stefan Sauer * ext/lv2/gstlv2.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lvs: add require_feature checks Plugins can report what host features they need. Since we start to implement host feature check which plugins we can no suuport. 2016-05-15 14:34:33 +0200 Edward Hervey * gst/compositor/compositor.c: compositor: Check if we get a valid display ratio As is done everywhere else, and avoids setting bogus values And remove useless * checks (we always provide valid values and it's an internal function). CID #1320700 2016-05-15 14:16:55 +0200 Edward Hervey * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Remove dead assignments * read is only used within the while loop * todo and bsize only need to be assigned once 2016-05-15 15:11:10 +0300 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Add uri-loaded signal that is fired whenever a new URI is actually loaded This allows knowing the "boundary" from which on all following signals are for the new URI. https://bugzilla.gnome.org/show_bug.cgi?id=766062 2016-05-14 17:05:45 +0100 Matthew Waters * ext/opencv/gstfacedetect.cpp: opencv/facedetect: fix the build with opencv 3.1.0 - add using namespace std; for std::vector - use the cpp header imgproc.hpp file for the cv::ellipse function instead of the C header - Mat no longer takes IplImage in it's constructors, use the cvarrtomat() function instead. Fixes a couple of build errors: gstfacedetect.cpp:140:30: error: ‘vector’ does not name a type structure_and_message (const vector < Rect > &rectangles, const gchar * name, ^~~~~~ gstfacedetect.cpp:140:37: error: expected ‘,’ or ‘...’ before ‘<’ token structure_and_message (const vector < Rect > &rectangles, const gchar * name, ^ gstfacedetect.cpp: In function ‘void structure_and_message(int)’: gstfacedetect.cpp:143:13: error: ‘rectangles’ was not declared in this scope Rect sr = rectangles[0]; [...] gstfacedetect.cpp: In function ‘void gst_face_detect_run_detector(GstFaceDetect*, cv::CascadeClassifier*, gint, gint, cv::Rect, std::vector >&)’: gstfacedetect.cpp:562:31: error: no matching function for call to ‘cv::Mat::Mat(IplImage*&, cv::Rect&)’ Mat roi (filter->cvGray, r); [...] gstfacedetect.cpp: In function ‘GstFlowReturn gst_face_detect_transform_ip(GstOpencvVideoFilter*, GstBuffer*, IplImage*)’: gstfacedetect.cpp:594:44: error: no matching function for call to ‘cv::Mat::Mat(cv::Mat, bool)’ Mat mtxOrg (cv::cvarrToMat (img), false); [...] gstfacedetect.cpp:734:79: error: ‘ellipse’ was not declared in this scope ellipse (mtxOrg, center, axes, 0, 0, 360, Scalar (cr, cg, cb), 3, 8, 0); 2016-05-15 11:20:21 +0100 Tim-Philipp Müller * Makefile.am: build: add removed example dir to CRUFT_DIRS 2016-05-15 13:33:53 +0300 Sebastian Dröge * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: docs: Update for git master 2016-03-04 22:10:47 +0100 Carlos Rafael Giani * gst/rawparse/Makefile.am: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstunalignedaudioparse.c: * gst/rawparse/gstunalignedaudioparse.h: * gst/rawparse/plugin.c: * gst/rawparse/unalignedaudio.h: rawparse: Add unaligned raw audio parsing to audioparse and add new element This helps in cases where raw audio data is being delivered, but the buffers do not come in sample aligned sizes. The new unalignedaudioparse bin can be autoplugged and configures an internal audioparse element to align the data. audioparse itself gets support for audio/x-unaligned-raw input caps; the output caps then contain the same information, except that the name is changed to audio/x-raw (since audioparse aligns the data). This ensures that souphttpsrc ! audioparse still works. https://bugzilla.gnome.org/show_bug.cgi?id=689460 2016-05-15 13:14:41 +0300 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: demote no platform display debug to info Avoids confusing everyone with a warning that's not always fatal. https://bugzilla.gnome.org/show_bug.cgi?id=746933 2016-05-15 12:31:38 +0300 Matthew Waters * .gitignore: .gitignore: remove non-existent directory Partially reverts cdf91c455d4057a9d234766510bd2e8a44e1ed05 2016-05-15 19:05:48 +1000 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Handle system header when scanning for timestamps. When scanning for SCR / PTS / DTS, handle the case where the pack header is followed by the optional system header, so we can correctly collect timestamps in such cases. https://bugzilla.gnome.org/show_bug.cgi?id=623860 2016-05-15 19:04:20 +1000 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Fix backward timestamp scan on small files. When the file size is smaller than the configured 4MB scan limit for timestamps, don't underflow the guard variable when checking if it's time to stop. Limit the backward SCR scan to the same 4MB as the PTS scan. Add some comments. 2016-05-13 13:27:37 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegdemux: don't do bogus adjustments on seek if we have no first_pts Fixes bogus segment and gap events with start=GST_CLOCK_TIME_NONE if we failed to find a first_pts. https://bugzilla.gnome.org/show_bug.cgi?id=623860 2016-05-14 16:59:14 +0300 Alex-P. Natsios * configure.ac: configure: check for shm_open() in OpenBSD In OpenBSD there is no "actual" librt that programs can link with, instead the system/base libc provides the functions one would customarily find there. https://bugzilla.gnome.org/show_bug.cgi?id=766441 2016-05-14 16:32:06 +0300 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: use the affine transformation meta if available downstream We can avoid a render pass if downstream supports the affine transformation meta and increase the performance of some pipelines involving gltransformation. Implemented by checking for the affine transformation in the allocation query from downstream and combining our matrix with that of upstream's (or creating our own). 2016-05-14 16:27:26 +0300 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglviewconvert.c: gl: take the affine transformation in NDC Provide a function to get the affine matrix in the meta in terms of NDC coordinates and use as a standard opengl matrix. Also advertise support for the affine transformation meta in the allocation query. 2016-05-14 15:50:57 +0300 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: glbasemixer: actually attempt to propose an allocation upstream We were always failing the allocation query as a flag was never being set to signal a successful negotiation. Fix by setting the required flag on a successful caps event from upstream. 2016-05-12 10:52:06 -0700 Stefan Sauer * ext/lv2/Makefile.am: * ext/lv2/README: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2source.c: lv2: add a source plugin Update the readme with a working example and list what feature are supported. 2016-05-11 23:12:07 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: add support for host features Implement a log handler as the first one. 2016-05-13 15:24:35 +0300 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: check the error of the presentation for out of date allows us to resize the swapchain correctly. 2016-05-12 19:44:26 +0100 Damian Ziobro * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: remove unused variables: upstream_live and queried_latency https://bugzilla.gnome.org/show_bug.cgi?id=766343 2016-05-11 15:45:47 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: improve debug output from _open_frontend() * Clarify message on delsys info gathering * Combine redundant INFO/DEBUG pair 2016-05-11 15:26:24 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix invalid dereference of delsys data Use GPOINTER_TO_INT to read GINT_TO_POINTER stored data. 2016-05-11 23:48:21 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: amcaudiodec: Set layout=interleaved in raw audio caps Otherwise the GAP event fallback negotiation will fail to produce complete srcpad caps, and thus fail. https://bugzilla.gnome.org/show_bug.cgi?id=766289 2016-05-11 16:42:35 +0200 Edward Hervey * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Fix previous commit The frames queue might return nothing (be empty) if we're flushing. Move the assertion to after the flushing check 2016-05-10 22:04:48 -0700 Stefan Sauer * ext/lv2/gstlv2.c: lv2: skip plugins that need host features We haven't implemented this yet and those plugin would fail when we instantiate them. 2016-05-10 21:11:41 -0700 Stefan Sauer * ext/lv2/gstlv2utils.c: lv2: add classification from metadata This helps apps to structure the element collection. 2016-04-08 07:53:44 +0200 Stefan Sauer * ext/lv2/Makefile.am: * ext/lv2/gstlv2filter.c: * ext/lv2/gstlv2utils.c: * ext/lv2/gstlv2utils.h: lv2: extract helper code into lv2utils This is a preparaton for adding lv2-sources and -sinks. 2016-05-10 12:24:03 -0700 Stefan Sauer * ext/ladspa/gstladspasource.c: * ext/ladspa/gstladspautils.c: ladspa: code cleanup Whitespace cleanup and unify codeing style. 2016-05-10 12:22:04 -0700 Stefan Sauer * ext/ladspa/gstladspautils.c: ladspa: simplify the code Remove a local var and just use the parameter value. 2016-05-10 18:14:36 +0200 Philippe Normand * sys/applemedia/corevideobuffer.c: applemedia: fix core_video_meta init registration 2016-05-10 16:46:43 +0530 Nirbheek Chauhan * .gitignore: .gitignore: Ignore tests/examples/gl/gtk generated files And another test binary. 2016-05-10 16:24:08 +0530 Nirbheek Chauhan * configure.ac: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: openjpeg: Port to 2.1 and require a pkg-config file for 2.0 and 2.1 The port was trivial, and according to the NEWS file nothing else has changed, but it is possible that other API was changed without proper notification. OpenJPEG upstream has shipped a pkg-config file for the past 4 years, and all distros should be shipping it by now. https://bugzilla.gnome.org/show_bug.cgi?id=766213 2016-05-10 09:40:38 +0100 Tim-Philipp Müller * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: fix use-after-free in error code path 2016-05-10 09:38:28 +0100 Tim-Philipp Müller * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: remove unnecessary checks for non-NULL frame We can't get a NULL frame here. CID 1359923 2016-05-09 15:23:32 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: abort at open frontend failure 2016-05-09 12:50:47 +0300 Sebastian Dröge * sys/applemedia/Makefile.am: applemedia: Ship all headers in tarballs Some were missing from noinst_HEADERS. https://bugzilla.gnome.org/show_bug.cgi?id=766163 2016-05-04 16:32:19 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: smarten-up delsys autodetection logic When there's no explicit delivery system information for a channel in the channel configuration file and the user hasn't selected one via setting the delsys property, we *guessed* it by selecting the last supported delsys reported by the driver. This change provides the basis for smarter delsys auto detection and implements a rule for DVB-T2. Rules for other delivery systems can be added in _guess_delsys() in a similar way. Additionally: Store list of adapter-supported delivery systems instead of querying the driver each time this information is needed. Related to: https://bugzilla.gnome.org/show_bug.cgi?id=765731 2016-05-03 15:00:55 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: remove remaining polling logic from _tune_fe() No need to do any polling here. 2016-05-06 10:51:39 +0200 Carlos Garcia Campos * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Take the ownership of the src element The URI downloader is creating the source element with gst_element_factory_make() that returns a floating reference that nobody is consuming. This is causing problems in WebKit, where the smart pointers used to take references of the source elment get confused and end up consuming the floating reference and then releasing the element, which usually crashes because the URI downloader still tries to use its src element. See https://bugs.webkit.org/show_bug.cgi?id=144040. This commit adds two helper functions to ensure and destroy the source element, to make the code simpler and less error prone. The ensure method takes care of checking if we can reuse the existing one or we need to create a new one, taking always its ownership. The destroy method simply avoids duplicated code to set the source to NULL state and then unref it. https://bugzilla.gnome.org/show_bug.cgi?id=766053 2016-04-29 12:31:01 +0100 Alex Ashley * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix threading issues in gst_adaptive_demux_wait_until function The gst_adaptive_demux_wait_until() function can be woken up either by its end_time being reached, or from other threads that want to interrupt the waiting thread. If the thread is interrupted, it needs to cancel its async clock callback by unscheduling the clock callback. However, the callback task might already have been activated, but is waiting for the mutex to become available. In this case, the call to unschedule does not stop the callback from executing. The solution to this second issue is to use a reference counted object that is decremented by both the gst_adaptive_demux_wait_until() function and the call to gst_clock_id_wait_async (). In this way, the GstAdaptiveDemuxTimer object is only deleted when both the gst_adaptive_demux_wait_until() function and the async callback are finished with the object. https://bugzilla.gnome.org/show_bug.cgi?id=765728 2016-03-03 15:50:49 +0900 Justin Kim * sys/androidmedia/Makefile.am: * sys/androidmedia/gst-android-graphics-surfacetexture.c: * sys/androidmedia/gst-android-graphics-surfacetexture.h: * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-camera.h: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahcsrc.h: * sys/androidmedia/gstamc.c: androidmeida: replace with new surfacetexture for ahcsrc GstAmcSurfaceTexture is more clear and simple than GstAGSurfaceTexture. https://bugzilla.gnome.org/show_bug.cgi?id=763099 2016-05-05 23:53:05 +1000 Matthew Waters * ext/vulkan/Makefile.am: vulkan/build: add the build directory to the list of includes Fixes out of tree builds from tarballs. https://bugzilla.gnome.org/show_bug.cgi?id=764758 2016-05-05 23:18:11 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: fix up display synchronization Use the semaphores in the correct place, before and after the submission for acquiring and presenting the swapchain buffer. Waiting on the fence that only signals the command buffer completion rather than the completion of the presentation is racy with the destruction of the vulkan buffers associated with that image. Wait on the device to be idle instead after presenting. 2016-05-05 18:00:25 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: use gst_video_sink_center_rect for positioning the video Don't try to reimplement it badly. 2016-05-05 10:44:22 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegdemux: fix description 2016-05-05 10:41:53 +0100 Tim-Philipp Müller * gst/videofilters/gstvideodiff.c: videodiff: fix supported formats in template caps 2016-05-05 10:40:37 +0100 Tim-Philipp Müller * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstvideodiff.h: videodiff: fill in FIXME metadata and docs with description https://bugzilla.gnome.org/show_bug.cgi?id=765989 2016-05-04 12:17:59 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglstereosplit.c: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gsteglimage.c: * gst-libs/gst/gl/egl/gsteglimage.h: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gsteglimagememory.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: gl/egl: replace gsteglimagememory with an EGLImage wrapper That can be passed to GstGLMemoryEGL. This also ports the dmabuf uploader to GstEGLImage and GstGLMemoryEGL. 2016-01-21 22:18:17 +0900 Gwang Yoon Hwang * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.c: * gst-libs/gst/gl/egl/gstglmemoryegl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglupload.c: gl: implement GstGLMemoryEGL Because current GstEGLImageMemory does not inherit GstGLMemory, GLUpload allocates additional GLMemory and upload the decoded contents from the decoder which uses EGLImage (e.g. gst-omx in RPi). This work adds GstGLMemoryEGL to avoid this overhead. Decoders allocate GstGLMemoryEGL and decode its contents to the EGLImage of GstGLMemoryEGL. And GLUpload uses this memory without allocation of additional textures and blit operations. [Matthew Waters]: gst-indent the sources and fix a critical retreiving the egl display from the memory. https://bugzilla.gnome.org/show_bug.cgi?id=760916 2016-05-04 01:16:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: glmemory: add wrapped data pointers to setup_buffer Allows creating wrapped memories with GstGLAllocationParams. The wrapped pointers will be set in the parameters before being passed to the memory allocation function. 2016-05-04 00:19:44 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: glbasememory: take a pointer as the wrapped gpu handle Allows passing arbitrary data to wrap the the specific memory implementation which is required for some memory implementations. 2016-05-04 11:30:11 +1000 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: output sysmem by default 2016-05-02 11:30:43 +0300 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Convert Windows strings to UTF8 before comparing against UTF8 strings The device name and descriptions returned are in the locale encoding, not UTF8. Our device name property is in UTF8 though, so we need to convert. https://bugzilla.gnome.org/show_bug.cgi?id=756948 2016-05-03 11:11:24 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Set blend functions in ::negotiated_caps() instead of ::fixate_caps() The latter should not change any state but just fixate the caps, while the former is always called when srcpads caps are decided. https://bugzilla.gnome.org/show_bug.cgi?id=765324 2016-04-20 15:11:44 +0300 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: decklink: Fix swapped name and nick in GEnumValues https://bugzilla.gnome.org/show_bug.cgi?id=742878 2016-04-14 18:26:33 +0300 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add initial 10bit support for YUV modes https://bugzilla.gnome.org/show_bug.cgi?id=742878 2016-05-03 15:52:38 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: decklink: Fix indentation 2016-05-03 19:58:00 +1000 Matthew Waters * configure.ac: * gst-libs/gst/gl/gstglapi.h: gl: fix gles3 header usage for older platforms Some platforms provide an old version of GLES2/gl2.h and GLES2/gl2ext.h that will fail when including GLES3/gl3.h due to missing typedef's. Seen on the RPi. 2016-04-29 23:32:03 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: avoid possible race on _output_frontend_stats() Make sure we send out our info message before we give up ownership of the structure. 2016-04-29 14:53:06 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: var rename in _output_frontend_params() Now it matches the rest of its status peers. Underscore was a leftover from previous times. 2016-04-29 14:45:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: always output known frontend status params The only mandatory frontend information for our use case is its status. Make sure we output what we know instead of choking at the first error getting SNR, BER or any of the other informational parameters. 2016-04-29 12:06:52 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: refactor signal locking loop Get rid of preliminar frontend status check. 2016-04-29 11:18:53 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop unneeded polling step on _tune_fe() Additional waiting was not needed. Specially considering it came after a successful READ_STATUS ioctl and was followed by an EINTR-resilent retry. 2016-04-29 17:19:19 -0300 Thiago Santos * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: effectively check if there is a language 'language' is an array and not a pointer. CID 1358835 2016-04-29 13:54:01 +0300 Sebastian Dröge * gst-libs/gst/player/Makefile.am: player: Add required paths via pkg-config for gstreamer-base-1.0 and gstreamer-video-1.0 for gobject-introspection The GstBase-1.0.gir and GstVideo-1.0.gir files are required by GstPlayer. Uninstalled builds fail if these files cannot be found. https://bugzilla.gnome.org/show_bug.cgi?id=765804 2016-04-08 16:47:15 +0800 Haihua Hu * ext/gl/Makefile.am: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstopengl.c: gl: enable gldeinterlace on OpenGL ES 1.Porting the exist deinterlace shader and OpenGL callback to be compatible with OpenGL ES. 2.Add a our blur vertical shader to gldeinterlace. 3.Add a property named “method” to let user choose which deinterlace function to use. Default to choose blur vertical method for better performance. [Matthew Waters]: fix name of greedyh in method property (was greedhy) and port to git master. https://bugzilla.gnome.org/show_bug.cgi?id=764873 2016-04-28 15:19:17 +0530 Barun Kumar Singh * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * win32/common/libgstplayer.def: player: Add audio-video-offset property and setter/getter API https://bugzilla.gnome.org/show_bug.cgi?id=765315 2016-04-19 19:43:03 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Port more things to GLES/GL 3 compatibility And move the shader mangling code into a single place instead of having a copy in glcolorconvert and glviewconvert. https://bugzilla.gnome.org/show_bug.cgi?id=765266 2016-04-19 19:27:33 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: GLES3 deprecates texture2D() and it does not work at all in newer versions than 3.3 Use the newer texture() function instead. This fixes glimagesink and other things on various Android devices. https://bugzilla.gnome.org/show_bug.cgi?id=765266 2016-04-19 10:27:43 -0300 Thiago Santos * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: write language descriptor when language is available Adds a new function to mpegts lib to create a iso639 language descriptor from a language and use it in mpegtsmux to add a language descriptor to audio streams that have a language set. https://bugzilla.gnome.org/show_bug.cgi?id=763647 2016-04-26 16:48:58 +0800 Song Bing * sys/pvr2d/gstpvrbufferpool.c: pvrbufferpool: fix gst_meta_register() parameters https://bugzilla.gnome.org/show_bug.cgi?id=765581 2016-04-22 10:15:39 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Check all pads for data when live When live, we still need to inspect all pads queue in order to determin if we have received the first buffer or not. https://bugzilla.gnome.org/show_bug.cgi?id=765431 2016-04-15 16:51:17 -0400 Nicolas Dufresne * gst-libs/gst/base/gstaggregator.c: aggregator: Fix locking when using the clock This fixes a race where we check if there is a clock, then it get removed and we endup calling gst_clock_new_single_shot_id() with a NULL pointer instead of a valid clock and also calling gst_object_unref() with a NULL pointer later. https://bugzilla.gnome.org/show_bug.cgi?id=757548 2016-04-25 16:50:55 +0300 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: H265 level idc 0 is not valid Don't put level=0 into the caps, it confuses other elements. https://bugzilla.gnome.org/show_bug.cgi?id=765538 2016-04-25 16:50:18 +0300 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: H264 level idc 0 is not valid Don't put level=0 into the caps, it confuses other elements. https://bugzilla.gnome.org/show_bug.cgi?id=765538 2016-04-22 14:51:31 +0200 Jerome Laheurte * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: fix DirectShow caps negotiation and set capture pin caps Some cameras (IDS) have broken DirectShow drivers which incorrectly fill some fields in the VIDEOINFOHEADER structure; comparison between suggested and supported media types in CBaseRenderer should ignore deprecated and/or not essential fields; additionaly explicitely setting the mediatype for the capture pin before trying to connect it works around another IDS driver bug, and should have been already done anyway. https://bugzilla.gnome.org/show_bug.cgi?id=765428 2016-04-22 14:48:41 +0200 Jerome Laheurte * sys/dshowsrcwrapper/gstdshow.cpp: dshowsrcwrapper: add support for RGB32, RGB555, RGB565 and RGB8 color spaces Some cameras (IDS) only support those. https://bugzilla.gnome.org//show_bug.cgi?id=765427 2016-04-22 14:44:57 +0200 Jerome Laheurte * sys/dshowsrcwrapper/CMakeLists.txt: dshowsrcwrapper: fix include path and link error Add include path so that the cmake-generated project is able to find gstconfig.h Add /SAFESEH:NO to MSVC linker options so it can link with gstreamer libraries on Windows. https://bugzilla.gnome.org//show_bug.cgi?id=765426 2016-04-22 15:02:01 -0300 Thiago Santos * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: tests: adaptivedemux: only check for data length after seek When the test involves doing a seek, only check for data size after the seek. The final segment range after seek might be different/smaller than the threshold for doing the seek and doing the check before seeking would fail. 2016-02-16 14:26:55 +0000 Florin Apostol * tests/check/elements/test_http_src.c: * tests/check/elements/test_http_src.h: adaptivedemux: tests: use macro to define names of request and response structs Following the Don't Repeat Yourself principle, define macros for the structures that contain the request and response headers, so that the name is not repeated in multiple places in multiple files. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:26:42 +0000 Florin Apostol * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/hls_demux.c: adaptivedemux: tests: improved checks for expected data Check the size of received data for each buffer received by AppSink https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 11:37:44 +0000 Florin Apostol * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: * tests/check/elements/dash_demux.c: dashdemux: tests: added content protection test Test content protection Configure 3 content protection sources: - a uuid scheme/value pair - a non uuid scheme/value pair (dash recognises only uuid schemes) - a complex uuid scheme, with trailing spaces and capital letters in scheme uri Only the uuid scheme should be recognised. We expect to receive 2 content protection events https://bugzilla.gnome.org/show_bug.cgi?id=758064 2016-04-22 17:04:57 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: strip lead/trailing whitespace from descriptortype attributes The spec says it is xs:anyURI and leading and trailing whitespace are to be ignored https://bugzilla.gnome.org/show_bug.cgi?id=758064 2016-02-16 14:26:05 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: added test for media download error for in stream fragment Tested download error for a fragment that is not the last media fragment in the stream. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:25:45 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: added test for download errors during header download Test header download error. Let the adaptive demux download a few bytes, then instruct the GstTestHTTPSrc element to generate an error while the fragment header is still being downloaded. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:25:32 +0000 Florin Apostol * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: * tests/check/elements/dash_demux.c: dashdemux: tests: refactor testFragmentDownloadError Renamed testFragmentDownloadError to testMediaDownloadErrorLastFragment. Added gst_adaptive_demux_test_unexpected_eos function. Remove unneeded testFragmentDownloadErrorCheckSizeOfDataReceived. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:25:04 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: tested latency query Updated query test to also check if dash responds correctly to a latency query. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:24:49 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: moved testQuery after testFragmentDownloadError Moved testQuery after testFragmentDownloadError so that testDownloadError and testFragmentDownloadError are grouped together. The commit just moved the testQueryCheckDataReceived and GST_START_TEST (testQuery) functions but git gets confused in matching the lines and reports a lot of changes in the patch. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:24:26 +0000 Florin Apostol * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: * tests/check/elements/dash_demux.c: adaptivedemux: tests: create a GstDashDemuxTestCase class Create a GstDashDemuxTestCase class that extends from GstAdaptiveDemuxTestCase. This new class will contain all the DASH specific fields. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-02-16 14:24:09 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: added support to pass various parameters to http src callbacks Added support to pass various parameters to http src callbacks using GstStructure. https://bugzilla.gnome.org/show_bug.cgi?id=762144 2016-03-01 14:54:01 -0800 Scott D Phillips * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchecksumsink.h: checksumsink: add "hash" property and allow more checksum types Now any GChecksumType can be used by GstChecksumSink, adding support for MD5, SHA-256 and SHA-512 in addition to SHA-1. https://bugzilla.gnome.org/show_bug.cgi?id=763006 2016-04-22 08:20:14 +0200 Edward Hervey * tests/check/Makefile.am: check: Fix LDADD/CFLAGS for player unit test It now requires libgstvideo 2016-02-16 14:44:39 +0000 Florin Apostol * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: adaptivedemux: tests: use a GstTestClock as the system clock To allow the adaptivedemux live stream tests to run in non-realtime, use a GstTestClock as the system clock. This allows the unit tests to complete more quickly than if they had to complete in real time. https://bugzilla.gnome.org/show_bug.cgi?id=762147 2016-02-16 14:44:27 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: use realtime_clock for waiting for a condition There are several places in adaptivedemux where it waits for time to pass, for example to wait until it should next download a fragment. The problem with this approach is that it means that unit tests are forced to execute in realtime. This commit replaces the use of g_cond_wait_until() with single shot GstClockID that signals the condition variable. Under normal usage, this behaves exactly as before. A unit test can replace the system clock with a GstTestClock, allowing the test to control the timing in adaptivedemux. https://bugzilla.gnome.org/show_bug.cgi?id=762147 2016-02-16 14:44:10 +0000 Florin Apostol * ext/dash/gstdashdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: use GstSystemClock to all real-time calculations A realtime clock is used in many places, such as deciding which fragment to select at start up and deciding how long to sleep before a fragment becomes available. For example dashdemux needs sample the client's estimate of UTC when selecting where to start in a live DASH stream. The problem with dashdemux calculating the client's idea of UTC is that it makes it difficult to create unit tests, because the passage of time is a factor in the test. This commit changes dashdemux and adaptivedemux to use the GstSystemClock, so that a unit test can replace the system clock when it needs to be able to control the clock. This commit makes no change to the behaviour under normal usage, as GstSystemClock is based upon the system time. https://bugzilla.gnome.org/show_bug.cgi?id=762147 2016-04-21 14:58:45 +0300 Sebastian Dröge * win32/common/libgstplayer.def: win32: Add new API to .def file 2016-04-19 10:59:46 +0530 Barun Kumar Singh * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/Makefile.am: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-player.pc.in: player: Add support for multiview settings https://bugzilla.gnome.org/show_bug.cgi?id=765302 2016-04-21 10:06:40 +0900 Hyunjun Ko * sys/applemedia/vtenc.c: applemedia: vtenc: fix build break on iOS Fix 'conflicting types' error https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-20 15:34:55 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add test for invalid DVB-T2 bandwidth 2016-04-20 14:47:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: warn on wrong DVB-T2 stream ID value Stream ID, used for DVB-T2/S2 and ISDB-S can not exceed 255 for the former. Change makes this explicit. 2016-04-20 21:07:28 +0900 Hyunjun Ko * sys/applemedia/vtenc.c: applemedia: vtenc: Fix a warning by weak-link symbol Fix this warning address of function 'VTCompressionSessionPrepareToEncodeFrames' will always evaluate to 'true' [-Wpointer-bool-conversion] https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-20 16:19:55 +0900 Hyunjun Ko * ext/gl/caopengllayersink.m: gl: caopengllayersink: fix a minor warning Fix "unused variable" warning https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-20 16:00:36 +0900 Hyunjun Ko * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/cocoa: Fix incompatible type warning https://bugzilla.gnome.org/show_bug.cgi?id=765292 2016-04-19 14:57:22 +0530 Nirbheek Chauhan * sys/d3dvideosink/d3dhelpers.h: d3dvideosink: Don't include deprecated and unavailable d3dx9tex.h It's not needed, not on native Windows nor with mingw, and we don't use anything from it anyway https://bugzilla.gnome.org/show_bug.cgi?id=765250 2016-04-14 12:46:58 +0200 Philipp Zabel * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add sync support for secondary pipes The vblank event request must specify the crtc for which to request the event. This fixes kmssink synchronisation for crtcs other than the first. https://bugzilla.gnome.org/show_bug.cgi?id=765064 2016-04-19 09:30:39 +0300 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Fix indentation 2016-04-19 10:51:14 +0800 Haihua Hu * ext/gl/gstglimagesink.c: glimagesink: need to clean window_id when state change form READY to NULL When application change pipeline state NULL->READY and then READY->NULL, glimagesink will not clear glsink->window_id. After that, when application change state NULL->READY, the new_window_id is equal to window_id, glimagesink will not set window handle. It will use the internal window but not the window create by application. https://bugzilla.gnome.org/show_bug.cgi?id=765241 2016-04-18 13:46:55 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: plug caps leak It was losing ref of the original 'ret' caps that would be returned or returning it with 2 references to it. 2016-03-28 15:44:27 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: videoaggregator: properly handle interlace-mode restrictions videoaggregator can't handle interlace-mode changes so it must always restrict itself to the first interlacing mode it receives. Tests included https://bugzilla.gnome.org/show_bug.cgi?id=754495 2016-01-22 16:49:57 +0000 Raffaele Rossi * ext/dtls/README: dtsl: add some documentation https://bugzilla.gnome.org/show_bug.cgi?id=760994 2016-04-17 15:45:41 +0100 Heinrich Fink * ext/gl/caopengllayersink.m: gl/caopengllayersink: Actually unset caps_change flag after resize Otherwise, the sink would execute "on_resize" for each frame. https://bugzilla.gnome.org/show_bug.cgi?id=765194 2016-04-17 15:43:20 +0100 Heinrich Fink * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: Apply layer.contentsScale to viewport dims Fixes blurry content on HiDPI screens https://bugzilla.gnome.org/show_bug.cgi?id=765194 2016-04-16 22:33:48 +1000 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Remove an unnecessary check for NULL before g_free 2016-04-15 13:22:51 -0700 Reynaldo H. Verdejo Pinochet * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst/compositor/compositor.c: Drop usage of 'overlayed' to mean 'overlaid' 2016-04-15 13:10:41 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: show invalid delsys/mod combination if found 2016-04-15 11:29:48 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add modulation check for ATSC 2016-04-11 23:45:22 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: do not autodetect delsys twice The process is dealt with the first time the adapter is opened, there is no need to do this again. 2016-04-14 22:32:05 -0700 Aleix Conchillo Flaqué * ext/srtp/gstsrtpdec.c: srtpdec: also check for "roc" in caps Currently, gst_srtp_dec_sink_setcaps is happy if the "roc" field is not provided in the caps. If it is not provided the stream will be properly inserted in the hash table with a default "roc". Then, when the first buffer arrives validate_buffer will find an existing stream in the hash table and will not signal request-key, not allowing the user to provide a "roc". This patch expects "roc" in gst_srtp_dec_sink_setcaps, if not found a request-key will be signaled and the user will be able to provide all the srtp fields, including "roc". https://bugzilla.gnome.org/show_bug.cgi?id=765079 2014-07-28 12:14:02 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Parse more slice header fields https://bugzilla.gnome.org/show_bug.cgi?id=733872 2014-07-28 11:17:05 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Add vbv_delay field to PictureHeader https://bugzilla.gnome.org/show_bug.cgi?id=733872 2014-07-28 11:14:22 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Add more fields to the GstMpegVideoSequenceHdr Added the fields load_non_intra_quantiser_matrix and load_chroma_intra_quantiser_matrix to the sequence header structure. https://bugzilla.gnome.org/show_bug.cgi?id=733872 2016-04-14 10:02:32 +0100 Julien Isorce * README: * common: Automatic update of common submodule From 6f2d209 to ac2f647 2016-04-13 18:12:25 +0100 Damian Ziobro * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: free pad_data->language before g_strdup in order to avoid memory leak https://bugzilla.gnome.org/show_bug.cgi?id=765005 2016-04-13 13:10:12 +0300 Sebastian Dröge * sys/applemedia/corevideobuffer.c: applemedia: GstCoreVideoMeta in the plugin using only public API has no ctx member 2016-04-13 13:09:05 +0300 Sebastian Dröge * sys/applemedia/coremediabuffer.c: applemedia: GstCoreMediaMeta in the plugin using only public API has no ctx member 2016-04-13 10:25:32 +0300 Sebastian Dröge * ext/directfb/dfbvideosink.c: * sys/pvr2d/gstpvrbufferpool.c: meta: Initialize all remaining metas in their init function https://bugzilla.gnome.org/show_bug.cgi?id=764902 2016-04-13 10:17:24 +0300 Sebastian Dröge * gst-libs/gst/codecparsers/gstmpegvideometa.c: * sys/applemedia-nonpublic/coremediabuffer.c: * sys/applemedia-nonpublic/corevideobuffer.c: * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: meta: Initialize all GstMeta fields During allocation they are not initialized to all zeroes. https://bugzilla.gnome.org/show_bug.cgi?id=764902 2016-04-11 22:08:03 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: avoid redundant delsys querying There is no need to query the frontend for the list of supported delivery systems if we are selecting one from the list of autodetected ones. 2016-04-10 18:58:33 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb/parsechannels: add information to file not found error Adds useful failure info (like filename) comming from g_file_get_contents() as done for every other error in this block. 2016-04-13 00:43:18 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/cocoa/eagl: don't leak GThread's when dispatching messages gst_gl_context_get_thread() returns a refed pointer, we need to unref it. 2016-04-12 11:14:22 +0100 Luis de Bethencourt * ext/gl/gstgltestsrc.c: gltestsrc: don't dereference null pointer funcs can be NULL, it is one of the two conditions of the OR statement above, so confirm it isn't before dereferencing with funcs->free. CID 1358388 2016-04-12 04:16:55 +1000 Jan Schmidt * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Fix when applying new PMT with same program number When the sub-class is delaying deactivation of the old program, but it has the same program number as the new program, don't overwrite the old program in the hash table and then steal the new program back out of it. Instead, add the new program to the hash table after handling removal of the old one. 2016-04-06 04:15:40 +0000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: keep the parent buffer around when converting EGLImage to 2D textures e.g. receiving and releasing a buffer from OMX too early will potentially cause textures to be overwritten while/before they are displayed. 2016-04-11 16:43:45 +0000 Matthew Waters * ext/gl/gstglbasemixer.c: glbasemixer: chain up to the parent implementation 2016-04-11 18:06:25 +1000 Matthew Waters * ext/vulkan/vkdevice.c: vulkan: prettify the various versions in the debug output output human readable numbers. 2016-04-11 20:23:45 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: openh264dec: minor clean-ups Remove unused property getters, setters; outdated comment. 2016-04-11 20:11:53 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264dec.h: * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: openh264: remove unnecessary instance private structures Element instance structures are not public API, so no need for the extra indirection to hide the data. 2016-04-11 20:04:00 +0100 Tim-Philipp Müller * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: openh264: fix indentation 2016-02-12 14:21:27 +0100 Philipp Zabel * sys/kms/gstkmsutils.c: kmssink: enable UYVY, YUY2, and YVYU (interleaved YUV 4:2:2) formats https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-12 14:17:32 +0100 Philipp Zabel * sys/kms/gstkmsutils.c: kmssink: enable NV16 (chroma-interleaved YUV 4:2:2) format https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-12 14:17:13 +0100 Philipp Zabel * sys/kms/gstkmsutils.c: kmssink: enable Y42B (planar YUV 4:2:2) format https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-03-04 16:53:58 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: keep last rendered buffer in memory https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-20 23:13:54 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: wait for page flip or vblank This patch requests for drmModePageFlip() for the used CRTC, if the kernel module suppports async page flip. If it does not, the element requests for a vblank event. A GstPoll waits for the event to happen. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-02-10 20:43:47 +0100 Víctor Manuel Jáquez Leal * configure.ac: * sys/kms/Makefile.am: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: kmssink: add dmabuf support This patch will enable the import of dmabufs into a KMS buffer using the PRIME kernel interface. If the driver does not support prime import, the method is skipped. It has been tested with a Freescale I.MX6 board. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-01-31 13:12:34 +0100 Víctor Manuel Jáquez Leal * sys/kms/gstkmssink.c: * sys/kms/gstkmsutils.c: * sys/kms/gstkmsutils.h: kmssink: calculate display ratio Get the aspect ratio given the information provided by libdrm, and with it calculate the display ratio. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-01-20 12:00:51 +0100 Víctor Manuel Jáquez Leal * configure.ac: * sys/Makefile.am: * sys/kms/Makefile.am: * sys/kms/gstkmsallocator.c: * sys/kms/gstkmsallocator.h: * sys/kms/gstkmsbufferpool.c: * sys/kms/gstkmsbufferpool.h: * sys/kms/gstkmssink.c: * sys/kms/gstkmssink.h: * sys/kms/gstkmsutils.c: * sys/kms/gstkmsutils.h: kmssink: add plugin and sink element This is simple video sink that use libdrm/libkms API to render frames. The element uses planes to render through drmModeSetPlane(). It has been tested in an Exynos4412 board and in a Freescale I.MX6 board. https://bugzilla.gnome.org/show_bug.cgi?id=761059 2016-04-10 17:46:15 +1000 Matthew Waters * configure.ac: * ext/vulkan/Makefile.am: * ext/vulkan/vkapi.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkwindow.c: * ext/vulkan/wayland/Makefile.am: * ext/vulkan/wayland/vkdisplay_wayland.c: * ext/vulkan/wayland/vkdisplay_wayland.h: * ext/vulkan/wayland/vkwindow_wayland.c: * ext/vulkan/wayland/vkwindow_wayland.h: * ext/vulkan/wayland/wayland_event_source.c: * ext/vulkan/wayland/wayland_event_source.h: vulkan: add a wayland winsys implementation 2016-04-10 17:43:39 +1000 Matthew Waters * ext/vulkan/xcb/vkwindow_xcb.c: * ext/vulkan/xcb/vkwindow_xcb.h: vulkan/xcb: getProcAddress winsys functions There's no guarantee that they will always be exposed by the vulkan loader. 2016-04-09 17:52:28 +1000 Matthew Waters * ext/vulkan/vkupload.c: vkupload: copy necessary buffer metadata timestamps, flags, etc 2016-04-11 08:34:00 +1000 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: cocoa, eagl: use libdispatch to schedule GL calls Use libdispatch instead of GMainLoop to dispatch GL calls. libdispatch is more optimized and cuts a lot of poll()/pthread_* overhead. 2016-04-11 08:02:45 +1000 Alessandro Decina * gst-libs/gst/gl/gstglwindow.c: glwindow: reduce the number of GMutexes and GConds in send_message() Don't create many short lived locks/conds in gst_gl_window_send_message. This is a micro optimization to save a bunch of pthread_* calls which are expensive on OSX/iOS and possibly other platforms. 2016-04-10 22:18:38 +0100 Tim-Philipp Müller * win32/common/libgstgl.def: win32: update .def file for new gl api 2016-04-08 18:34:45 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: add necessary wait stages to the submission info 2016-04-08 18:32:41 +1000 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: add srgb formats to our list of formats intel returns them for their surface formats. 2016-04-08 18:09:53 +1000 Matthew Waters * ext/vulkan/vkimagememory.c: vulkan: silence a validation warning filling out the image barrier 2016-04-08 18:09:06 +1000 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: vulkan: use the correct validation layer name The threading validation layer has changed names. 2016-04-08 14:07:55 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Initialize capture_time to NONE so it can be used if no video frame is provided but audio is CID 1358390 2016-04-08 17:56:50 +1000 Matthew Waters * ext/vulkan/vkutils.c: * ext/vulkan/vkutils_private.h: vulkan: only warn on not found layers don't error out completely https://bugzilla.gnome.org/show_bug.cgi?id=764545 2016-04-08 17:41:07 +1000 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: vulkan: don't g_error when failing to find validation layers Aborting the application is never a good thing to do for recoverable errors. Just warn and error out instead. https://bugzilla.gnome.org/show_bug.cgi?id=764545 2016-04-08 14:51:44 +1000 Matthew Waters * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: nvenc: add some rate control modes/properties Supported modes are constant quantizer, cbr, vbr and vbr with a minimum quantizer. 2016-04-07 23:24:47 +1000 Matthew Waters * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: * sys/nvenc/gstnvh264enc.c: nvenc: move codec config initialization from the implementation to the base class Supports a better separation of configuration parameters 2016-04-07 22:46:08 +1000 Matthew Waters * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: * sys/nvenc/gstnvenc.c: * sys/nvenc/gstnvh264enc.c: nvenc: add preset selection Some presets are not always supported on all devices and will cause an error if used. Specifically, the LOSSLESS presets are known to not work everywhere. 2014-07-16 02:44:42 +0200 Marcin Kolny * ext/chromaprint/gstchromaprint.c: chromaprint: emit notify::fingerprint signal when fingerprint is ready In addition to adding the fingerprint to the tags. https://bugzilla.gnome.org/show_bug.cgi?id=733233 2016-04-04 20:55:51 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: repect the result of find_best_format in the default update_caps We weren't using the result of find_best_format at all. Also, move the find_best_format usage to the default update_caps() to make sure that it is also overridable. https://bugzilla.gnome.org/show_bug.cgi?id=764363 2016-04-05 21:40:58 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Fix fallback to GstVideoBufferPool The replacement pool need to be added to the query, otherwise the baseclass won't see it. We also need to properly remove the rejected pools. https://bugzilla.gnome.org/show_bug.cgi?id=763441 2016-04-05 21:07:32 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: rfbsrc: Implement decide_allocation virtual This way we can use the base class for buffer allocation, hence use fill() instead of create() virtual. This also adds a strict check on the select pool buffer size as we don't support strides and padding. This is based on initial patch proposed by Sebastien Dröge, from which I also fixed a buffer pool leak. https://bugzilla.gnome.org/show_bug.cgi?id=763441 2016-04-05 15:31:49 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Fix caps negotiation As we currently only use the server reported "natural" format, caps negotiation should simply be limited to telling the base class which format to use. Fix the negotiation by moving the associated code into negotiate() virtual function. Also, use gst_base_src_set_caps() rather then setting it on the pad directly. Also protect against this method being called multiple time (we can't renegotiate for now). This change also moves some network code that was being run during the application state change call, to be run on the streaming thread. https://bugzilla.gnome.org/show_bug.cgi?id=739598 2016-03-26 13:36:34 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Implement unlock() method This prevent stalls when we try to stop the source while waiting for the server to send more updates. 2016-03-24 18:27:54 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Check for connection being closed Although it's not very well documented, g_input_stream_read_all() will set the number of bytes read to 0 if the connection is closed rather then returning an error. 2016-03-24 18:26:46 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Check for read/write error Check for read/write error. This prevent undefined behaviour that rely on unitialized buffer. 2016-03-24 18:14:17 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: Add a internal method to disconnect This also removes the disconnected boolean hack. 2016-03-24 18:14:37 -0400 Nicolas Dufresne * gst/librfb/gstrfbsrc.c: rfbsrc: Don't ignore errors This prevents recursion on error. This used to happen as we don't change the state when something fails. We end up running and failing in the same state forever. 2016-03-24 16:46:49 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: Serialize write operations Currently we send key events from seperate threads. IOStream does not allow concurrent write operations, so protect this operation using a mutex. 2016-03-17 15:24:52 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Add 3.7/3.8 security type negotiation 2016-03-16 18:48:49 -0400 Nicolas Dufresne * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: Port to GSocketClient Using GSocketClient we can simplify a lot the read/write operation. This also provide an GSocketConnection (a GIOStream) which can then be used with the GTlsClientConnection for secure connections. Note that we use _write_all() to ensure all bytes have been read. This is to follow the fact the none of the _send() calls check the return value. 2016-03-16 16:49:29 -0400 Nicolas Dufresne * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.h: * gst/librfb/rfb.h: * gst/librfb/rfbdecoder.c: rfbsrc: Remove useless library wrapping We use a sinlge .c file, simplify everything by removing that static library. 2016-03-16 16:49:09 -0400 Nicolas Dufresne * gst/librfb/Makefile.am: * gst/librfb/rfb.c: * gst/librfb/rfb.h: * gst/librfb/rfbbuffer.c: * gst/librfb/rfbbuffer.h: * gst/librfb/rfbcontext.h: * gst/librfb/rfbdecoder.h: * gst/librfb/rfbutil.h: rfbsrc: Cleanup dead code Remove all the unused stuff, the include header, definition and C code that don't contribute anything to this element. 2016-03-14 15:08:13 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Properly fallback to 3.3 If the major version is not 3, then the minor version provided should be ignored, as it is meaningless for our fallback. 2016-03-14 15:05:45 -0400 Nicolas Dufresne * gst/librfb/rfbdecoder.c: rfbsrc: Cleanly handle security negotiation failure When the security cannot be negotiated, the server returns security type of 0 (failure). In that case, the next step is to read the error reason string. 2016-04-01 14:36:15 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mpdparser: clamp segment durations to each other and period end 5.3.2.1 in the spec. https://bugzilla.gnome.org/show_bug.cgi?id=751792 2015-09-10 13:22:58 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: unit testing reproducing segment duration overflow unit test reproducing https://bugzilla.gnome.org/show_bug.cgi?id=751792 With minor changes by Vincent Penquerc'h. 2016-04-05 14:49:51 +0300 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't accept packets without timestamps after a discont We have no idea which timestamps they are supposed to have so the only thing we can do at this point is to drop them. Packets without timestamps happen if audio was captured but no corresponding video, which shouldn't happen under normal circumstances. https://bugzilla.gnome.org/show_bug.cgi?id=747633 2016-04-04 22:21:30 +0300 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't crash when receiving video frames but no audio And mark these events as disconts to reset time tracking in the audio source. https://bugzilla.gnome.org/show_bug.cgi?id=747633 2015-08-08 15:17:54 +0100 Tim-Philipp Müller * sys/decklink/gstdecklink.cpp: decklinkvideosrc: don't crash if we get NULL video frames in the callback For some reason we seem to sometimes get NULL video_frames in the ::VideoInputFrameArrived() callback, observed on Intensity Pro cards. https://bugzilla.gnome.org/show_bug.cgi?id=747633 2016-03-23 03:16:11 +0000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: add support for the affine transformation meta 2016-03-23 03:14:40 +0000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: support the affine transformation meta for any texture target 2016-04-05 16:22:49 +1000 Matthew Waters * ext/gl/gstglmixer.c: glmixer: set the current texture to 0 before mapping If we fail mapping, we don't want to use undefined video data in the subclass. 2015-09-08 14:37:57 +0200 Patricia Muscalu * ext/curl/gstcurlbasesink.c: curlsink: catch an unknown error In this case the socket callback has not been called by libcurl and the curlsink has not been notified about any connection problems by libcurl. This indicates that it's a bug in libcurl so catch it as an unknown error. https://bugzilla.gnome.org/show_bug.cgi?id=754432 2016-04-04 13:43:30 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: proxy the start-time-* properties from aggregator 2016-04-04 11:28:35 +0200 Santiago Carot-Nemesio * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: dtls: Use unique names for internal elements to ease debugging https://bugzilla.gnome.org/show_bug.cgi?id=748651 2016-04-03 17:56:06 +0200 Aurélien Zanelli * gst-libs/gst/base/gstaggregator.c: aggregator: remove duplicated test of flow_return in pad_chain_internal https://bugzilla.gnome.org/show_bug.cgi?id=764549 2016-04-03 18:06:20 +0900 Kouhei Sutou * sys/directsound/Makefile.am: directsoundsrc: add missing -lole32 CLSIDFromString() requires ole32.dll. See https://msdn.microsoft.com/en-us/library/windows/desktop/ms680589%28v=vs.85%29.aspx CLSIDFromString() is introduced at f9464ce3549c2b3948a582464631ba4f8dd0d5e7 . https://bugzilla.gnome.org/show_bug.cgi?id=764523 2016-03-31 11:21:35 +0200 Christoffer Stengren * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdpdepay.h: gdpdepay: Query for buffer allocator before using default https://bugzilla.gnome.org/show_bug.cgi?id=764361 2016-03-22 19:27:39 +0200 Vivia Nikolaidou * gst/interlace/gstinterlace.c: interlace: Allow interlaced sink caps, do passthrough Allow interlace to receive already interlaced content, if compatible with its configuration. In that case, it will just do passthrough. https://bugzilla.gnome.org/show_bug.cgi?id=764036 2016-04-01 21:24:34 +0200 Stefan Sauer * ext/lv2/README: README: update to 1.0 and lilv 2016-04-01 18:33:13 +0200 Stefan Sauer * ext/lv2/gstlv2filter.c: lv2filter: remove the variable for the registry klass tag Just pass the string when registering. 2016-04-01 18:31:36 +0200 Stefan Sauer * ext/lv2/gstlv2filter.c: lv2filter: remove copy and paste of doc blob This doc block is already in gstlv2.c. 2016-04-01 12:59:19 +0200 Vanessa Chipirras Navalon * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: opencv: segmentation: Ported to OpenCV version 3.1 Add namespace bgsegm, replacement functions and Template class for new OpenCV versions because these functions have been removed. cvarrToMat() is added because it is compatible with all versions of OpenCV and the use of class Mat constructor is eliminated, it is also deprecated in 3.X versions. Use the namespace cv because some functions are called many times. This patch keeps compatibility with 2.4 https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-04-01 14:12:08 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/gstvp9parser.h: codecparser: vp9: move persistent fields from GstVp9FrameHdr to GstVp9Parser The subsampling_x, subsampling_y, bit_depth, color_space and color_range fileds are moved from GstVp9FrameHdr to the global GstVp9Parser structure. These fields are only present in keyframe or intra-only frame, no need to duplicate them for inter-frames. This is an ABI change. https://bugzilla.gnome.org/show_bug.cgi?id=764370 2016-04-01 12:08:53 +0200 Vanessa Chipirras Navalon * ext/opencv/gsttextoverlay.h: opencv: textoverlay: Ported to OpenCV version 3.1 imgproc_c.h is added because CvFont struct needs it in any 3.x version. We use this structure in GstOpencvTextOverlay. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-04-01 11:56:20 +0300 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: constrained-baseline is a subset of baseline We get into this code path if the profile is already constrained-baseline and downstream does not support constrained-baseline. So we should try baseline and the other compatible profiles. https://bugzilla.gnome.org/show_bug.cgi?id=764448 2016-03-22 07:19:03 +0000 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimage: perform eglCreateImage in the gl thread while calling eglCreateImage without a GL context current in the executing thread works on the RPi, some other implementations will return errors. Marshall the eglCreateImage to the GL thread to appease these implementations. 2016-04-01 14:58:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: support outputting to multiple draw buffers on GLES3 A similar change that was done to glcolorconvert adding the necessary shader mangling. 2016-03-31 19:50:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: implement multiple render targets for GLES3 There are numerous slight differences required between Desktop GL and GLES3 for multiple render targets. 1. gl_FragData doesn't exist at all and one is required to use 'layout (location = ?) out ...' instead. 2. gl_FragColor doesn't exist, same as 1 3. texture2D() has been deprecated Fortunately most of these have been taken care of with GL3 and the shader mangling already exists so just expand the conditions they are used in. The gl_FragData issue requires a new mangle pass though. We also use this new pass on desktop GL for consistency. 2016-03-31 18:23:22 -0300 Thiago Santos * tests/check/elements/mssdemux.c: tests: mssdemux: do not use gst_object_unref for pure GObject* Deallocate GObject* with g_object_unref instead of gst_object_unref. Even if it works now, it is confusing and in the future it might not work if any GstObject specifics are added. https://bugzilla.gnome.org/show_bug.cgi?id=762142 2016-02-16 13:55:54 +0000 Florin Apostol * tests/check/elements/dash_demux.c: dashdemux: tests: use g_object_unref for test data The GstDashDemuxTestCase object is allocated using g_object_newv but in many places was being deallocated using gst_object_unref. This was caused by commit ae3ed25025e34ea9b09df59d22d7ebd7294560bc. https://bugzilla.gnome.org/show_bug.cgi?id=762142 2016-03-31 16:08:12 +0100 Luis de Bethencourt * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: motioncells: fully construct MotionCells Some members of MotionCells were not being initialized in the constructor. Protect from potential garbage memory usage by fully initializing it. Moving m_frameSize out of the class because it is only used in performDetectionMotionCells(). CID 1197704 2016-04-01 00:23:25 +1100 Matthew Waters * ext/gl/Makefile.am: gl/build: add missing '\' at the end of the line in MakeFile.am Otherwise the following elements aren't included in the correct variable. Fixes error in 'make distcheck' failing to find gstgltestsrc.h 2016-03-31 23:07:17 +1100 Matthew Waters * tests/check/Makefile.am: gl/tests/pipelines: add custom _CFLAGS and LDADD As is done everywhere else. From what I can gather from make -C tests/check V=1 $(GST_PLUGINS_BAD_CFLAGS) is required in order to find in-tree headers as well as srcdir != builddir configurations. 2016-03-31 22:20:01 +1100 Matthew Waters * tests/check/Makefile.am: gl/tests: only build the simple-launch-lines test if we have GL 2016-03-31 20:00:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't use the predefined variable name sample Using 'sample' as a variable name is an error in GLES3 2016-03-22 23:10:24 +1100 Matthew Waters * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: gl/examples: fix switchvideooverlay for wayland and call XInitThreads() for X11 2016-03-21 15:25:21 +1100 Matthew Waters * configure.ac: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/.gitignore: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/gtkvideooverlay.vcproj: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: gl/examples: remove duplicated videooverlay example filtervideooverlay proved the exact same example (only with a extra glfiltercube). 2016-03-21 15:23:41 +1100 Matthew Waters * tests/examples/gl/gtk/3dvideo/main.cpp: gl/examples/3d: additions for wayland support 2016-03-17 23:51:44 +1100 Matthew Waters * tests/check/Makefile.am: * tests/check/pipelines/simple-launch-lines.c: gl/tests: add missing test to the build system Also update it for the current api 2016-03-17 23:50:00 +1100 Matthew Waters * ext/gl/effects/gstgleffectssources.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: gldifferencematte: port to gl3/gles2 2016-02-26 20:55:47 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstopengl.c: gltestsrc: port to gles2/gl3 This makes gltestsrc work everywhere \o/ - workaround RPi returning invalid values for positive coords in the checker shader - reduce the number of iterations in the mandelbrot shader for gles2 https://bugzilla.gnome.org/show_bug.cgi?id=751540 2016-02-26 16:57:47 +1100 Matthew Waters * ext/gl/gltestsrc.c: gltestsrc: port smpte pattern to shaders Loosely based on patch by Lubosz Sarnecki https://bugzilla.gnome.org/show_bug.cgi?id=751540 2016-02-26 12:02:15 +1100 Matthew Waters * ext/gl/gltestsrc.c: gltestsrc: implement the circular method https://bugzilla.gnome.org/show_bug.cgi?id=759801 2016-02-25 21:18:31 +1100 Matthew Waters * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: add a generic src framework Any unsupported pattern (circular) results in an error 2016-02-29 20:15:24 +1100 Matthew Waters * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: glsterosplit: remove internal glupload/glcolorconvert They are provided separately as elements and no other element contains the internal references to glupload/glcolorconvert. 2016-03-31 19:43:04 +1100 Matthew Waters * configure.ac: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcontext.c: gl: add support for building against GLES3 headers with a fallback to GLES2 headers if available. 2016-03-31 19:38:12 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add checking the read implementation format/type on gles2 platforms By default, reading GL_RED or GL_RG us unsupported by glReadPixels unless exposed through GL_COLOR_READ_IMPLEMENTATION_FORMAT/TYPE. This allows downloading multiple-planar video frames where possible. 2016-03-31 19:35:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: glbasememory: rollback map state when subclass map fails Otherwise our state doesn't reflect reality. 2016-03-31 19:31:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: unmap pbo memory on pbo read error Otherwise we are returning failure with a dangling map! Also only unset the NEED_DOWNLOAD flag in download_transfer() if the read actually succeeds. 2016-03-31 19:25:32 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader: add glBindFragDataLocation There are some cases where it's needed for binding in/out variables in shaders. e.g. glsl 150 (gl 3.2) doesn't support the 'layout (location = ?)' specifiers in the shader source so we have to bind them ourselves. 2016-03-31 12:20:30 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Handle find_stream_for_pad() without g_assert_not_reached() if no pad is found Happens e.g. if a RECONFIGURE event is sent from downstream while we're switching pads at this very moment. The old pad is gone and the stream has a new pad. https://bugzilla.gnome.org/show_bug.cgi?id=764404 2016-03-31 01:21:42 +1100 Matthew Waters * sys/nvenc/gstnvbaseenc.c: nvenc: add support for building against version 6 of the SDK While mostly API compatible, the ABI has changed so binaries will not work across header versions (and ultimately nvidia driver releases). https://bugzilla.gnome.org/show_bug.cgi?id=763324 2016-03-30 22:34:59 +0100 Vanessa Chipirras Navalon * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-opencv.xml: * ext/opencv/Makefile.am: * ext/opencv/gstopencv.cpp: * ext/opencv/gstpyramidsegment.cpp: * ext/opencv/gstpyramidsegment.h: opencv: pyramidsegment: delete element cvPyrSegmentation() has been deprecated in OpenCV 3.0, and there isn't any function to replace it. Deleting this element so we can support OpenCV 3.1 without build issues. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-26 16:52:37 +0100 Vanessa Chipirras Navalon * ext/opencv/gstcvsmooth.cpp: opencv: gstcvsmooth: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and the use the class constructor Mat is eliminated because is deprecated in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 10:05:13 +0100 Vanessa Chipirras Navalon * ext/opencv/gstgrabcut.cpp: opencv: grabcut: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and using the class Mat constructor is eliminated, because is deprecated in 3.X versions. The use the using namespace cv because is called some functions many times. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 15:37:39 +0100 Vanessa Chipirras Navalon * ext/opencv/gstfaceblur.cpp: opencv: faceblur: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and the use of the class constructor Mat is eliminated because is deprecated in 3.X versions. Included 'using namespace std' because it is needed for the Vector class in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 15:51:37 +0100 Vanessa Chipirras Navalon * ext/opencv/gsthanddetect.cpp: opencv: handdetect: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and the use of the class constructor Mat is eliminated because is deprecated in 3.X versions. Included 'using namespace std' because it is needed for the vector class in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-27 16:51:13 +0100 Vanessa Chipirras Navalon * ext/opencv/gstretinex.cpp: opencv: retinex: Ported to OpenCV version 3.1 cvarrToMat() is added because it is compatible with all versions of Opencv and using the class constructor Mat is eliminated because is deprecated in 3.X versions. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-28 16:19:46 +0100 Vanessa Chipirras Navalon * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: opencv: disparity: Ported to OpenCV version 3.1 'METHOD_VAR', 'METHOD_GC' is removed because there aren't equivalent functions in new OpenCV versions. 'img_right_as_cvMat_rgb', 'img_left_as_cvMat_rgb' and 'depth_map_as_cvMat2' variables is removed because these aren't used. cvarrToMat() is added because it is compatible with all versions of Opencv and using the class Mat constructor is eliminated, because is deprecated in 3.X versions. The use 'using namespace cv' because is called some functions many times. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-02-01 13:58:49 +0100 Vanessa Chipirras Navalon * ext/opencv/gstskindetect.cpp: opencv: skindetect: Ported to OpenCV version 3.1 cvCVPixToPlane() has been deprecated in OpenCV 3.0, and there is function to replace it cvSplit(). The include compat.hpp is deleted because in 3.X versions doen't exist and it isn't necessary for 2.4.X versions in this element. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-01-28 17:40:51 +0100 Vanessa Chipirras Navalon * configure.ac: * ext/opencv/gstopencvutils.cpp: opencv: Ported to OpenCV version 3.1 OpenCV configure.ac was changed to work with new versions of OpenCV 3.X. A new include is added gstopencvutils.cpp because it contains the previous. This keeps compatibility with 2.4. https://bugzilla.gnome.org/show_bug.cgi?id=760473 2016-03-30 10:34:07 +0300 Sebastian Dröge * sys/androidmedia/gstahcsrc.c: ahcsrc: There's no point in read-only CONSTRUCT properties And creating one is causing assertions. Also get rid of the other CONSTRUCT property as it's a) unneeded for default initialization and b) you're not supposed to use constructor properties when creating element instances and the GStreamer API doesn't provide direct ways for doing so. https://bugzilla.gnome.org/show_bug.cgi?id=764339 2016-03-07 14:57:35 +0100 Edward Hervey * ext/teletextdec/gstteletextdec.c: teletexdec: Simplify negotiation code No need to use a while() loop if we're going only going to use the first structure of the caps ... CID #1341748 2016-03-28 13:52:07 +0300 Sebastian Dröge * tests/check/libs/aggregator.c: aggregator: Fix leak in unit test GST_PAD_PROBE_HANDLED means that we should've unreffed the probe data, it was handled by us in one way or another. 2016-03-28 08:46:10 +0530 Nirbheek Chauhan * .gitignore: .gitignore: Ignore some more test temporary files 2016-03-28 08:45:45 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: tests/compositor: Add test for aggregator pad numbering Tests that the behaviour in 7a5cb5a473 is being conformed to. 2016-03-27 19:06:50 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Fix strcmp test for sink template 2016-03-27 18:41:30 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Don't try to be too smart while allocating pad names Previously, while allocating the pad number for a new pad, aggregator was maintaining an interesting relationship between the pad count and the pad number. If you requested a sink pad called "sink_6", padcount (which is badly named and actually means number-of-pads-minus-one) would be set to 6. Which means that if you then requested a sink pad called "sink_0", it would be assigned the name "sink_6" again, which fails the non-uniqueness test inside gstelement.c. This can be fixed by instead setting padcount to be 7 in that case, but this breaks manual management of pad names by the application since it then becomes impossible to request a pad called "sink_2". Instead, we fix this by always directly using the requested name as the sink pad name. Uniqueness of the pad name is tested separately inside gstreamer core. If no name is requested, we use the next available pad number. Note that this is important since the sinkpad numbering in aggregator is not meaningless. Videoaggregator uses it to decide the Z-order of video frames. 2016-02-23 15:11:36 +0100 Thibault Saunier * configure.ac: * ext/lv2/Makefile.am: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/lv2/gstlv2filter.c: lv2: Port filters to GStreamer 1.0 and use lilv instead of slv2 Properly separate files as we will not have only one single base class for all elements as we used to with 0.10, but the same way it is done with ladspa, we subclass GstAudioFilter, GstBaseSource etc... https://bugzilla.gnome.org/show_bug.cgi?id=678207 2016-03-27 14:29:58 +0530 Nirbheek Chauhan * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: * ext/gtk/gtkgstbasewidget.c: gtk: Fix logging in base widget and fix desc of GL sink Set a default category for gtkgstbasewidget lest the logging go to the 'default' category where it can't be found easily 2016-03-27 03:11:45 +0200 Yann Jouanin * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: rtmpsrc plugin : add timeout option https://bugzilla.gnome.org/show_bug.cgi?id=764251 2016-03-18 13:35:37 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Instead of releasing request pads on stop(), clear them only Request pads are requested by applications and as such should only be released by them again. Instead of releasing them when stopping the muxer, just clear their state so that they can be used again when starting the muxer again. https://bugzilla.gnome.org/show_bug.cgi?id=763862 2016-03-05 09:47:27 +0200 Sebastian Dröge * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-media-info-private.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer.c: * win32/common/libgstplayer.def: player: Add is_live flag to the GstPlayerMediaInfo https://bugzilla.gnome.org/show_bug.cgi?id=763126 2016-02-29 11:39:54 +0200 Sebastian Dröge * gst/sdp/Makefile.am: * gst/sdp/gstsdpelem.c: * gst/sdp/gstsdpsrc.c: * gst/sdp/gstsdpsrc.h: sdp: Add new sdpsrc element This can read from an SDP file or get the SDP data via property. Works around the problem that sdpdemux inside decodebin fails because the GST_STATE_CHANGE_NO_PREROLL is not observed by the pipeline. See https://bugzilla.gnome.org/show_bug.cgi?id=702495 https://bugzilla.gnome.org/show_bug.cgi?id=762860 2016-03-25 17:49:14 +1100 Matthew Waters * ext/gtk/gtkgstglwidget.c: gtk/gl: don't assert when gdk doesn't provide a GL context Allows the application to check whether gtkglsink is supported by setting the element to READY. https://bugzilla.gnome.org/show_bug.cgi?id=764148 2016-03-07 19:41:19 -0300 Thiago Santos * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: plug EIT string leak 2016-03-07 19:06:19 -0300 Thiago Santos * sys/dvb/dvbbasebin.c: dvbbasebin: unref pat table after usage Remember to unref the GPtrArray of the PAT table after use 2016-03-04 20:05:38 -0300 Thiago Santos * sys/dvb/dvbbasebin.c: dvbbasebin: plug some leaks Plug various leaks in dvbbasebin. 2016-03-03 11:31:01 -0300 Thiago Santos * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: simplify variable reset Just set it directly to 0, instead of checking and reseting 2016-03-01 18:21:12 -0300 Thiago Santos * sys/dvb/gstdvbsrc.c: dvbsrc: print time in same format Makes it easier to compare 2016-03-15 16:22:59 -0700 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gstahcsrc.c: ahc: use g_slice_new instead of g_slice_new0 In many cases, we use g_slice_new0 and then immediately overwrite the allocated memory. This is inefficient. Since we're going to immediately overwrite it, we might as well use plain g_slice_new. https://bugzilla.gnome.org/show_bug.cgi?id=763998 2016-03-10 08:50:28 +0900 Vineeth TM * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: post message to application for unhandled keyboard/mouse events https://bugzilla.gnome.org/show_bug.cgi?id=763403 2016-03-10 08:49:01 +0900 Vineeth TM * ext/directfb/dfbvideosink.c: dfbvideosink: post message to application for unhandled keyboard/mouse events https://bugzilla.gnome.org/show_bug.cgi?id=763403 2016-03-10 08:44:57 +0900 Vineeth TM * ext/gtk/gstgtkbasesink.c: gtkbasesink: post message to application for unhandled keyboard/mouse events https://bugzilla.gnome.org/show_bug.cgi?id=763403 2016-03-03 20:10:16 +0900 Justin Kim * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahcsrc.h: ahcsrc: remove probe_properties It's a residue of 0.10. https://bugzilla.gnome.org/show_bug.cgi?id=763100 2016-03-04 15:50:26 +0900 Vineeth TM * ext/apexsink/gstapexsink.c: * ext/assrender/gstassrender.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/curl/gstcurlbasesink.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaalaenc.c: * ext/dash/gstdashdemux.c: * ext/directfb/dfbvideosink.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpdemux.c: * ext/dtls/gstdtlssrtpenc.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflitetestsrc.c: * ext/fluidsynth/gstfluiddec.c: * ext/gl/caopengllayersink.m: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstgldownloadelement.c: * ext/gl/gstglfilterbin.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsrcbin.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgluploadelement.c: * ext/gl/gstglvideoflip.c: * ext/gme/gstgme.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlssink.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetiger.c: * ext/libde265/libde265-dec.c: * ext/libmms/gstmms.c: * ext/libvisual/visual-gl.c: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstpyramidsegment.cpp: * ext/opencv/gstretinex.cpp: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttextoverlay.cpp: * ext/openexr/gstopenexrdec.cpp: * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: * ext/openni2/gstopenni2src.cpp: * ext/opus/gstopusparse.c: * ext/qt/gstqtsink.cc: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsninputselector.c: * ext/resindvd/rsnparsetter.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/sdl/sdlaudiosink.c: * ext/smoothstreaming/gstmssdemux.c: * ext/sndfile/gstsfdec.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosrc.c: * ext/soundtouch/gstpitch.cc: * ext/spandsp/gstdtmfdetect.c: * ext/spandsp/gstspanplc.c: * ext/spandsp/gsttonegeneratesrc.c: * ext/spc/gstspc.c: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: * ext/teletextdec/gstteletextdec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/vulkan/vksink.c: * ext/wayland/gstwaylandsink.c: * ext/webp/gstwebpdec.c: * ext/webp/gstwebpenc.c: * ext/x265/gstx265enc.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/insertbin/gstinsertbin.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiofxbad/gstaudiochannelmix.c: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautovideoconvert.c: * gst/bayer/gstrgb2bayer.c: * gst/camerabin2/gstdigitalzoom.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstvcdparse.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/compositor/compositor.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gsterrorignore.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/faceoverlay/gstfaceoverlay.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/hdvparse/gsthdvparse.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstivtc.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/librfb/gstrfbsrc.c: * gst/midi/midiparse.c: * gst/mixmatrix/mixmatrix.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/gstmvemux.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/netsim/gstnetsim.c: * gst/nuvdemux/gstnuvdemux.c: * gst/onvif/gstrtponvifparse.c: * gst/onvif/gstrtponviftimestamp.c: * gst/overlay/gstoverlay.c: * gst/patchdetect/gstpatchdetect.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/gstrawparse.c: * gst/removesilence/gstremovesilence.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdimux.c: * gst/sdp/gstsdpdemux.c: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/smooth/gstsmooth.c: * gst/speed/gstspeed.c: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: * gst/vbidec/gstvbidec.c: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstvc1parse.c: * gst/vmnc/vmncdec.c: * gst/y4m/gsty4mdec.c: * gst/yadif/gstyadif.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/androidmedia/gstahcsrc.c: * sys/applemedia-nonpublic/celvideosrc.c: * sys/applemedia-nonpublic/miovideosrc.c: * sys/applemedia/atdec.c: * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.m: * sys/applemedia/avsamplevideosink.m: * sys/applemedia/iosassetsrc.m: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtdec.c: * sys/avc/gstavcsrc.cpp: * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsrc.c: * sys/d3dvideosink/d3dvideosink.c: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/directsound/gstdirectsoundsrc.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/fbdev/gstfbdevsink.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisrc.c: * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvh264enc.c: * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: * sys/pvr2d/gstpvrvideosink.c: * sys/qcam/gstqcamsrc.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/tinyalsa/tinyalsasink.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: * sys/vcd/vcdsrc.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wininet/gstwininetsrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: * tests/check/elements/autoconvert.c: * tests/check/elements/camerabin.c: * tests/check/elements/test_http_src.c: * tests/check/libs/aggregator.c: * tools/element-templates/sinkpad: * tools/element-templates/sinkpad-audio: * tools/element-templates/sinkpad-simple: * tools/element-templates/sinkpad-template: * tools/element-templates/srcpad: * tools/element-templates/srcpad-audio: * tools/element-templates/srcpad-simple: * tools/element-templates/srcpad-template: bad: use new gst_element_class_add_static_pad_template() https://bugzilla.gnome.org/show_bug.cgi?id=763081 2016-03-07 17:23:23 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: eliminate AHC*_CALL macros Currently, we use AHC*_CALL macros to call many of the Camera functions. However, we already have helper classes to call the Camera functions, so eliminate the macros. As a nice side-benefit, we also get improved error handling and reporting when something goes wrong calling these functions, because a GError gets populated, and we log a GST_ERROR when something fails. This was harder to do using macros, as all error handling was hidden from the caller. https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 11:29:06 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: use gst unref functions https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 14:08:13 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: use gst new object functions https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-03-17 13:44:13 +0000 Vincent Penquerc'h * gst/interlace/gstinterlace.c: interlace: fix negotiation with fixed framerate downstream https://bugzilla.gnome.org/show_bug.cgi?id=762924 2016-03-24 14:08:46 +0200 Sebastian Dröge * tests/examples/gl/gtk/fxtest/fxtest.c: gl/gtk: Fix compiler warning in example fxtest.c: In function ‘main’: fxtest.c:190:3: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] GtkWidget *window; ^~~~~~~~~ 2016-03-24 13:33:12 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.8.0 === 2016-03-24 12:33:19 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.8.0 2016-03-24 12:05:23 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-03-23 13:43:46 +0100 Thibault Saunier * ext/vulkan/vkinstance.c: vulkan: Minor string fix 2016-03-23 22:13:47 +1100 Matthew Waters * ext/vulkan/vkinstance.c: vulkan: VK_API_VERSION has been removed In a stable release too, naughty. Use VK_API_VERSION_1_0 instead https://bugzilla.gnome.org/show_bug.cgi?id=764066 2016-03-22 07:20:59 +0000 Matthew Waters * gst-libs/gst/gl/glprototypes/sync.h: gl/proto: sync operations are available on GLES 3.0 Without the GST_GL_API_GLES2 bit set, we will not even attempt to look for the function pointers in the core library and will fallback to glFlush/glFinish. 2016-03-22 07:16:34 +0000 Matthew Waters * configure.ac: gl/build: add GST_GL_HAVE_DMABUF to gstglconfig.h it's exposed in public API so hiding it in an AC_DEFINE for config.h only works when building libgstgl itself. Attempting to use libgstgl (especially on egl platforms) will throw a compilation error. 2016-03-21 15:22:15 +0900 Jimmy Ohn * gst/mxf/mxfdemux.c: mxfdemux: Fix query memory leak Peer query isn't being freed in case of GST_QUERY_SEEKING. https://bugzilla.gnome.org/show_bug.cgi?id=763974 2016-03-18 19:45:09 +0200 Sebastian Dröge * ext/vulkan/Makefile.am: vulkan: Ship missing headers with tarballs https://bugzilla.gnome.org/show_bug.cgi?id=763877 2016-03-17 19:24:32 +0000 Aleksander Wabik * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264parse, h265parse: fix handling of downstream force-key-unit events The parser handles the downstream force-key-unit event incorrectly, it tries to parse it as an upstream force-key-unit event, does not check the return value, and then uses uninitialized memory in "all_headers" boolean variable. https://bugzilla.gnome.org/show_bug.cgi?id=763793 2016-03-17 22:43:12 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: unset GL_UNPACK_ROW_LENGTH in opengl3 If the user uploads their own texture without setting the unpack length, then then the result will have the appearance of stride mismanagement due to an incorrect row length. 2016-03-17 16:34:42 +1100 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwtextureshare/main.cpp: gl/examples/qt: restrict the GL API to opengl where needed Until the examples are ported to opengl3/gles2, they will not work with any other GL api. 2016-03-17 16:31:52 +1100 Matthew Waters * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: gl/examples/gtk: call XInitThreads Fixes some sporadic X11 threading assertions. 2016-03-17 03:06:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: glutils: remove custom code for setting caps features Just use gst_caps_set_features() instead. 2016-03-17 01:52:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: only allow the same src/sink caps when we are in passthrough mode If we are given caps with extra features (like the overlay composition features), we can only deal with that when we are in passthrough mode. Previously we were bailing entirely and not allowing passthrough filter elements with things like textoverlay. Fixes the following pipeline (assuming glfilter supports passthrough): gl ! textoverlay ! glfilter ! ... ! glimagesinkelement https://bugzilla.gnome.org/show_bug.cgi?id=763756 2016-03-16 22:48:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: deal with the ANY caps feature correctly When transforming, xplode it out into the necessary caps features both with and without the passthough features. Fixes negotiation in the following class of pipelines: gl ! textoverlay ! glupload ! glimagesinkelement https://bugzilla.gnome.org/show_bug.cgi?id=763756 2016-03-16 22:19:25 +1100 Matthew Waters * ext/wayland/wldisplay.c: wayland: fix null pointer dereference on error gnome-shell doesn't the support wl_scaler interface which makes creating a wayland display fail creation. Found in the generic state changes test 2016-03-16 22:16:34 +1100 Matthew Waters * ext/gl/gstglstereomix.c: * ext/gl/gstglstereosplit.c: glstereo{mix,split}: allow running on GLES 2/3 It's mostly supported for GLES 2.x, fully supported on GLES 3.x 2016-03-16 12:03:53 +0200 Sebastian Dröge * sys/opensles/openslesringbuffer.c: openslesringbuffer: Warn if the position reported by OpenSL is higher than what we queued up so far This would hint at wrong position reporting, and apparently sometimes happens after a seek. 2016-03-16 11:34:46 +0200 Sebastian Dröge * gst/mxf/mxfjpeg2000.c: mxfmux: Fix typo in JPEG2000 colorspace sRGC -> sRGB === release 1.7.91 === 2016-03-15 12:13:17 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.7.91 2016-03-15 11:56:59 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-03-12 15:44:54 +0000 Tim-Philipp Müller * gst/mpegtsdemux/tsdemux.c: tsdemux: add video/x-h265 to template caps 2016-03-12 03:00:14 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: mpegts: Don't leave freed programs in the hash table When the sub-class claims a program for later freeing, make sure it's not left in the hash table, or it can cause crashes on shutdown. Make sure tsdemux frees any program it has kept around at shutdown if it wasn't freed already. https://bugzilla.gnome.org/show_bug.cgi?id=763503 2016-03-11 17:34:03 +0200 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: videoparsers: h265: Fix segfault while transforming hevc to nal aligned bytestream Create temporary ParseFrame and copy the nal size buffer region for each nal unit like we did for h264. https://bugzilla.gnome.org/show_bug.cgi?id=763494 2016-03-11 10:08:28 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: amc: Correctly handle NULL input buffers https://bugzilla.gnome.org/show_bug.cgi?id=763401 2016-03-11 10:00:39 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstjniutils.c: amcvideodec: getOutputBuffers() returns a NULL array when a surface was configured So don't error out if it does. https://bugzilla.gnome.org/show_bug.cgi?id=763401 2016-03-11 01:40:39 +1100 Matthew Waters * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: gleffects; give each effect a unique long name and description Gives applications that scrape the factory details more detailed and unique details on the exact element. https://bugzilla.gnome.org/show_bug.cgi?id=760566 2016-03-10 17:46:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglslstage.c: glshader: some compatibility changes for GL 1.4 GL 1.4 (with GL_ARB_shader_objects) doesn't have glIsProgram or glIsShader equivalents. As they are simply assertions, skip them when there isn't a valid function pointer. 2016-03-10 00:29:41 +1100 Matthew Waters * ext/gl/gstglfilterapp.c: glfilterapp: update for the use of shaders Fixes black output when placed in pipelines (using the default drawing). https://bugzilla.gnome.org/show_bug.cgi?id=763365 2016-03-10 00:27:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: retrieve the shader attributes from the GL thread Otherwise we will receive bogus values https://bugzilla.gnome.org/show_bug.cgi?id=763365 2016-03-10 00:24:48 +1100 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: gl/examples/cube*: choose opengl by default The examples don't work with any other GL API. Also fix the yuv example to not translate the cube out of the clipping area. 2016-03-10 00:23:14 +1100 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: gl/examples/fxtest: add needed glupload to the pipeline Fixes a negotiation failure in the example 2016-03-07 13:04:08 +0100 Edward Hervey * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparser: Handle non-hierarchical profiles again This is a regression from since mpegvideoparser was switched to use the codecparsing library. The problem is that the high bit of the profile_and_level is used to specify non-hierarchical profiles and levels. Unfortunately we were discarding that information. Expose that escape bit, and use it in the element https://bugzilla.gnome.org/show_bug.cgi?id=763220 2016-03-09 11:58:43 +0900 Vineeth TM * ext/gl/gstglimagesink.c: glimagesink: Fix window memory leak https://bugzilla.gnome.org/show_bug.cgi?id=763356 2016-03-08 11:41:49 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't reset/recalculate segments with accurate seeks When dealing with accurate seeks, we must send out a segment which is exactly what is requested. https://bugzilla.gnome.org/show_bug.cgi?id=763262 2016-03-08 02:06:46 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: signal continuation in reset We want to iterate over all the pads, not just the first one. Fix by returning TRUE in the GstAggregatorPadForeachFunc. Removes a GST_IS_GL_CONTEXT() assertion on shutdown with >2 inputs using gst-launch. 2016-03-08 00:35:22 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * tests/check/libs/gstglcontext.c: gldisplay: make readding the same context a no-op With e38af2304427db908a16bbae0e60aa68be1ba5b5 returning the correct contexts, gst_gl_display_add_context() was susceptible to causing infinte loops when adding the same GstGLContext more than once. Fix and add a test for gst_gl_display_add_context(). Fixes glvideomixer gst-validate tests. 2016-03-07 08:52:54 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: Revert "libgstgl: cocoa, eagl: don't marshal GL calls to the context thread" This reverts commit 797d6415dfd6e111efb2cab544958a67cbf22b17. We're frozen for 1.8.0 release and this change might have bigger impact. 2016-03-07 16:03:25 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: cocoa, eagl: don't marshal GL calls to the context thread Execute GL calls without marshalling them to the context thread. In the cocoa and eagl backends calling gst_gl_context_activate is cheap and therefore calling it on the current thread and serializing GL calls with a per-context lock is more efficient (faster and has less overhead) than marshalling everything to the context thread. This optimization cuts a large overhead in g_poll (continuously waking up the context thread) and in g_mutex_*/g_cond_* (waiting for results from the context thread). 2016-03-05 17:16:24 +0100 Mark Nauwelaerts * gst-libs/gst/gl/gstgldisplay.c: gldisplay: really retrieve glcontext for a specific thread When requesting a glcontext (regardless of thread), the result was correct. However, when requesting current glcontext on a specific thread, it could come up with a glcontext active on another thread. https://bugzilla.gnome.org/show_bug.cgi?id=763168 2016-03-06 19:35:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: misc docs fixes/additions 2016-03-06 19:32:21 +1100 Matthew Waters * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: gl*memory: document new functionality and objects 2016-03-06 19:23:06 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs.types: docs: add new GL api to .types file for type/signal introspection 2016-03-06 19:22:31 +1100 Matthew Waters * docs/libs/Makefile.am: docs: ignore some private GL headers 2016-03-06 19:18:54 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: docs/gl: add gl functions/structs from -unused into the docs 2016-03-05 19:48:45 +0100 Mark Nauwelaerts * gst-libs/gst/gl/gstglfilter.c: glfilter: handle some more unfixed fields when fixating caps 2016-03-05 11:38:46 +0200 Sebastian Dröge * tests/examples/gtk/Makefile.am: gtk: examples: #define GST_USE_UNSTABLE_API and link with X11_LIBS X11_LIBS is needed for XInitThreads() and without the #define we get warnings about the GL API being still unstable. 2016-03-02 19:32:13 +0900 Justin Kim * sys/androidmedia/gst-androidcamera.c: androidmedia: Remove unused file ahcsrc is registered by gstamc.c https://bugzilla.gnome.org/show_bug.cgi?id=763098 2016-02-17 09:36:15 -0800 Martin Kelly * sys/androidmedia/gstamc.c: amc: properly deinit when ahcsrc register fails In the androidmedia plugin_init, we initialize various resources on the Android device. If anything fails during this series of initializations, we need to deinitialize any initializations that already occurred. However, we don't do so if we fail to register the ahcsrc element. Fix this. https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 11:00:50 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: correct error message The error message is specific to only one of the failure cases and is misleading in the others. Correct it to be more generic and cover all the failure cases. https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-16 11:45:01 -0800 Martin Kelly * sys/androidmedia/gst-android-hardware-camera.c: ahc: remove unneeded #include https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-02-18 16:00:18 -0800 Martin Kelly * sys/androidmedia/gstahcsrc.c: ahc: typo fix https://bugzilla.gnome.org/show_bug.cgi?id=763065 2016-03-03 22:15:07 -0500 Joe Gorse * ext/hls/Makefile.am: hls: Add OPENSSL_CFLAGS to CFLAGS https://bugzilla.gnome.org/show_bug.cgi?id=763079 2016-03-03 19:45:43 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbasememory.c: glbasememory: Don't change maxsize at run-time Maxsize is initialized once and should never change. Allocating data should have no impact on the selected max size for this memory. This causing memory map failure as the maxsize would become smaller then size. This happened when using direct rendering in avviddec on GL that does not support PBO transfer. https://bugzilla.gnome.org/show_bug.cgi?id=763045 2016-03-01 18:22:37 +0300 Sergey Borovkov * ext/qt/qtitem.cc: qml: Fix leak of the OpenGL contexts [Matthew Waters]: add NULL checks before unreffing https://bugzilla.gnome.org/show_bug.cgi?id=762999 2016-02-29 14:24:46 -0800 Reynaldo H. Verdejo Pinochet * ext/vulkan/vksink.c: vksink: fix spelling on failed _ensure_data() error message 2016-03-02 21:46:44 +0200 Vivia Nikolaidou * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: Provide format as a string instead of a char to gst_structure_new The format was provided as 'I420' instead of "I420", causing a crash. 2015-01-20 16:20:10 +0100 Aurélien Zanelli * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: handle early PTS conversion when a group has been found In some cases, the PTS might be smaller than the first observed PCR value which causes element to apply wraparound leading to bogus timestamp. To solve this, we only apply it if the PTS-PCR difference is greater that 1 second to be sure that it's a real wraparound. Moreover, using unsigned 32 bits values to handle wrapover could end up with bogus value, so it use pts value to handle it. Also, convert pcr time to gst time before comparing it to pts. Since refpcr is expressed in PCR time base while pts is expressed in GStreamer time. https://bugzilla.gnome.org/show_bug.cgi?id=743259 2016-03-02 10:41:17 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix REMOVE_SNAP_FLAGS() macro !(flag1 | flag2 | flag3) is always evaluation to 0. ~ was meant here instead of !. CID 1352032. === release 1.7.90 === 2016-03-01 18:23:36 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.7.90 2016-03-01 17:10:28 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2016-03-01 16:53:50 +0200 Sebastian Dröge * po/bg.po: * po/fr.po: * po/nl.po: po: Update translations 2016-02-29 12:35:58 +0200 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: videoparsers: h264: Disable passthorugh mode enabling Enabling passthorugh mode is causing multiple issue: For nal aligned multiresoluton streams, passthrough mode make h264parse unable to advertise the new resoultions. Also causing issues while parsing MVC streams which have two separate layers (base-view and non-base-view). This fix is only a temporary workaround. For MVC, proper fixes needed in many places: (handle prefix nal unit, handle non-base-view slice nal extension, fix the picture_start detection for multi-layer-mvc streams etc) https://bugzilla.gnome.org/show_bug.cgi?id=758656 2016-02-29 11:53:19 +0200 Sebastian Dröge * gst/sdp/gstsdpdemux.c: sdpdemux: Set caps to application/x-rtp instead of application/x-unknown as returned by the SDP helpers The SDP helpers can't know if this is going to be RTP, SRTP, or .... https://bugzilla.gnome.org/show_bug.cgi?id=762860 2016-02-29 11:51:28 +0200 Sebastian Dröge * gst/sdp/gstsdpdemux.c: sdpdemux: Add pads with the correct names in case an rtpbin is used They're supposed to be stream_%u and not recv_rtp_src_%u_%u_%u. https://bugzilla.gnome.org/show_bug.cgi?id=762860 2016-02-29 10:38:32 +0900 Vineeth TM * ext/vulkan/vkswapper.c: * ext/vulkan/vkutils.c: vkswapper/vkutils: Fix gerror memory leak https://bugzilla.gnome.org/show_bug.cgi?id=762842 2016-02-29 10:37:11 +0900 Vineeth TM * ext/vulkan/vkdevice.c: vkdevice: Fix duplicate assignment of queue variable https://bugzilla.gnome.org/show_bug.cgi?id=762842 2016-02-29 10:33:45 +0900 Vineeth TM * ext/vulkan/vksink.c: vksink: Fix GError memory leak https://bugzilla.gnome.org/show_bug.cgi?id=762842 2016-02-28 14:06:14 +0000 Tim-Philipp Müller * win32/common/libgstgl.def: win32: update exports for new libgstgl function 2016-02-28 10:12:01 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: When outputting on a surface, accept all color formats We don't have to understand them, we handle them as a GL texture. https://bugzilla.gnome.org/show_bug.cgi?id=762792 2016-02-26 18:17:37 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * tests/check/elements/dash_demux.c: adaptivedemux: handle snap seeking without setting any position When the start_type is GST_SEEK_TYPE_NONE for a forward seek (or stop_type for a reverse) is not set on a snap seeking operation, the element should use the current position and then snap as requested. Also fixes uninitialized variable complaint by clang about 'ts' variable. 2016-02-26 17:31:44 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: sync index and the selected chunk when seeking Otherwise the chunk selected isn't matched to the index and the timing will be different, causing it to actually start from a different position 2016-02-26 12:41:13 +0200 Sebastian Dröge * common: Automatic update of common submodule From a253974 to 6f2d209 2016-02-17 20:13:21 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimagememory: add compatibility definitions for EGL dmabuf e.g. the RPi doesn't have them defined 2016-02-26 00:35:30 +0000 Tim-Philipp Müller * Makefile.am: * ext/opus/Makefile.am: * ext/opus/gstopus.c: opus: rename plugin to opusparse for the time being Until we fix it up and get rid of the opus dependency and move it elsewhere too. 2016-02-19 00:38:33 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-opus.xml: * ext/opus/Makefile.am: * ext/opus/gstopus.c: * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/opus.c: opus: remove Opus encoder/decoder, moved to -base https://bugzilla.gnome.org/show_bug.cgi?id=756282 2016-02-26 08:34:11 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add a method to add a context to another share group Intended for use with wrapped contexts that are created shared with gst's gl contexts in order to manage the internal sharegroup state correctly. e.g. with caopengllayer (which is used in glimagesink and caopengllayersink on OS X), we create a CGL context from the gst context and the sharing state was not being correctly set on either GL context and gst_gl_context_is_shared() was always returning FALSE. With 11fb4fff80b63b9d67a731d4bb238b6c0a29d774 only flushing with multiple shared contexts, the required flush was not occuring causing screen corruption or stuttering. Note: this didn't affect GST_GL_API=opengl pipelines https://bugzilla.gnome.org/show_bug.cgi?id=762620 2016-02-17 15:20:47 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-opus.xml: * ext/opus/Makefile.am: * ext/opus/gstopus.c: * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopusdepay.h: * ext/opus/gstrtpopuspay.c: * ext/opus/gstrtpopuspay.h: opus: remove Opus RTP elements, they have moved to -good https://bugzilla.gnome.org/show_bug.cgi?id=756282 2016-01-18 08:50:34 +0000 Alex Ashley * tests/check/elements/hls_demux.c: hlsdemux: tests: pass test name into test setup function All hlsdemux tests create a GstStructure called "state" that can be used by test cases to store information during a test. The name of this structure is arbitrary. When the code was written, the intention was to use the name of the test, to aid debugging. However, during development this was lost, so that the state GstStructure is always given the name "setup_test_variables". This commit changes this so that the name of the test is used. https://bugzilla.gnome.org/show_bug.cgi?id=762684 2016-02-23 12:42:19 -0300 Thiago Santos * tests/check/elements/compositor.c: tests: compositor: drop special case for valgrind timeout The default one is 6 minutes, the test was using 5 minutes so just resort to using the default. For the non-valgrind test also use the default 20 secs instead of reducing it to 6s. No real reason to set a custom value here. 2016-02-23 12:17:59 -0300 Thiago Santos * tests/check/elements/compositor.c: tests: compositor: add tests for caps queries Verifies that proper caps are returned based on what downstream restricts. 2016-02-18 10:57:51 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: * tests/check/elements/compositor.c: videoaggregator: fix caps queries to allow proper renegotiation When caps are already negotiated it should be possible to select formats other than the one that was negotiated. If downstream allows alpha video caps and it has already negotiated to a non-alpha format, caps queries should still return the alpha caps as a possible format as caps renegotiation can happen. Includes tests (for compositor) to check that caps queries done after a caps has been negotiated returns complete results https://bugzilla.gnome.org/show_bug.cgi?id=757610 2016-02-24 17:07:17 +0200 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Negotiate the decoder in set_format() already Don't wait until later, we want to know here if the codec can be opened or not for the requested format. This was removed (accidentially?) by 119e09eac315f79ac2cf45b4441ad1d932130614 Without this decodebin has no way to switch to a different decoder if this one does not work. https://bugzilla.gnome.org/show_bug.cgi?id=762613 2016-02-25 11:34:40 +0200 Joe Gorse * sys/applemedia/avfvideosrc.m: avfvideosrc: Frame durations as CTime to the API, not double Newer iOS seems to automatically convert, older iOS/OSX just crashes. https://bugzilla.gnome.org/show_bug.cgi?id=762575 2016-02-24 23:48:19 +1100 Matthew Waters * sys/nvenc/gstnvbaseenc.c: nvenc: release the frames and list when searching for an output buffer Fixes a massive leak in: videotestsrc ! nvh264enc ! fakesink 2016-02-23 23:10:20 +1100 Matthew Waters * ext/qt/gstqtsink.cc: * ext/qt/qtitem.cc: qt: use a static_cast instead of dynamic one The dynamic_cast is a little but of overkill as the app will still crash if it fails in the later g_assert. Allows compilation with -fno-rtti https://bugzilla.gnome.org/show_bug.cgi?id=762526 2016-02-24 10:45:17 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglmosaic.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: glmixer: iterator didn't advance in continue statement Leading to a deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-02-23 18:17:42 +0200 Sebastian Dröge * gst/dataurisrc/gstdataurisrc.c: dataurisrc: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps() Remove calls to gst_pad_has_current_caps() which then go on to call gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just use gst_pad_get_current_caps() and check for NULL. https://bugzilla.gnome.org/show_bug.cgi?id=759539 2016-02-23 18:13:37 +0200 Dave Craig * ext/opencv/gstdisparity.cpp: disparity: Don't assume that get_current_caps() returns non-NULL caps after has_current_caps() Remove calls to gst_pad_has_current_caps() which then go on to call gst_pad_get_current_caps() as the caps can go to NULL in between. Instead just use gst_pad_get_current_caps() and check for NULL. https://bugzilla.gnome.org/show_bug.cgi?id=759539 2016-02-23 10:49:40 +0000 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: correctly handle an HTTP-XSDATE that is exactly the size of the date string The code in the gst_dash_demux_parse_http_xsdate() was trying to handle the case where the string is not null terminated by resizing the buffer and appending a zero byte. This does not work if the buffer is exactly the length of the string because the gst_buffer_resize() function does not re-allocate the buffer, it just changes its size. If a buffer is passed to gst_dash_demux_parse_http_xsdate() that is exactly the length of the string, the function fails with an assert failure in gst_buffer_resize(). https://bugzilla.gnome.org/show_bug.cgi?id=762148 2016-02-23 11:59:52 +0200 Sebastian Dröge * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: Add audiointerleave 2016-02-22 10:21:47 +0100 Peter Seiderer * sys/fbdev/gstfbdevsink.c: fbdevsink: fix bytes per pixel calculation Simple pipeline $ gst-launch-1.0 videotestsrc ! fbdevsink crashes with SIGSEGV in case the frambuffer xres is smaller than the virtual xres resolution, e.g.: $ fbset mode "800x480-0" # D: 0.000 MHz, H: 0.000 kHz, V: 0.000 Hz geometry 800 480 1920 1200 16 timings 0 0 0 0 0 0 0 accel true rgba 5/11,6/5,5/0,0/0 endmode Debug: $ gdb gst-launch-1.0 (gdb) run videotestsrc ! fbdevsink (gdb) where #0 0xb6bd2d24 in __memcpy_neon () at ../sysdeps/arm/armv7/multiarch/memcpy_impl.S:591 #1 0xb69b04e8 in gst_fbdevsink_show_frame (videosink=0x10a3378, buf=0xb5c08838) at gstfbdevsink.c:269 #2 0xb69e88c4 in gst_base_sink_do_preroll (sink=sink@entry=0x10a3378, obj=0xb5c08838, obj@entry=0xa0) at gstbasesink.c:2281 #3 0xb69e92bc in gst_base_sink_do_sync (basesink=basesink@entry=0x10a3378, obj=0xa0, obj@entry=0xb5c08838, late=0x0, late@entry=0xb6548ba0, step_end=0x140, step_end@entry=0xb6548ba4) at gstbasesink.c:2500 #4 0xb69ea67c in gst_base_sink_chain_unlocked ( basesink=basesink@entry=0x10a3378, obj=0x0, obj@entry=0xb5c08838, is_list=is_list@entry=0, pad=) at gstbasesink.c:3486 #5 0xb69ec1c0 in gst_base_sink_chain_main (basesink=0x10a3378, pad=, obj=0xb5c08838, is_list=0) at gstbasesink.c:3647 #6 0xb6eb5b10 in gst_pad_chain_data_unchecked (pad=0x10a6170, type=, data=0xb5c08838) at gstpad.c:4086 #7 0xb6eb7a34 in gst_pad_push_data (pad=pad@entry=0x10a6020, type=type@entry=4112, data=0xb5c08838) at gstpad.c:4338 #8 0xb6ebf344 in gst_pad_push (pad=pad@entry=0x10a6020, buffer=) at gstpad.c:4454 #9 0xb69f22f0 in gst_base_src_loop (pad=0x10a6020) at gstbasesrc.c:2845 #10 0xb6eeddfc in gst_task_func (task=0x10a8828) at gsttask.c:331 #11 0xb6d485a0 in g_thread_pool_thread_proxy (data=) at gthreadpoQuit (gdb) frame 1 #1 0xb69b04e8 in gst_fbdevsink_show_frame (videosink=0x10a3378, buf=0xb5c08838) at gstfbdevsink.c:269 269 gstfbdevsink.c: No such file or directory. (gdb) p fbdevsink $1 = (GstFBDEVSink *) 0x10a3378 (gdb) p *fbdevsink $2 = {videosink = {element = {element = {object = {object = { g_type_instance = {g_class = 0x10a2d60}, ref_count = 3, qdata = 0x0}, lock = {p = 0x0, i = {0, 0}}, name = 0x10a2f30 "fbdevsink0", parent = 0x10a70a0, flags = 32, control_bindings = 0x0, control_rate = 100000000, last_sync = 18446744073709551615, _gst_reserved = 0x0}, state_lock = {p = 0x109f9a8, i = {0, 0}}, state_cond = {p = 0x0, i = { 3, 0}}, state_cookie = 2, target_state = GST_STATE_PAUSED, current_state = GST_STATE_READY, next_state = GST_STATE_PAUSED, pending_state = GST_STATE_PAUSED, last_return = GST_STATE_CHANGE_ASYNC, bus = 0x108bcb8, clock = 0x0, base_time = 0, start_time = 0, numpads = 1, pads = 0x109cc20, numsrcpads = 0, srcpads = 0x0, numsinkpads = 1, sinkpads = 0x109cc30, pads_cookie = 1, _gst_reserved = {0x0, 0x0, 0x0, 0x0}}, sinkpad = 0x10a6170, pad_mode = GST_PAD_MODE_PUSH, offset = 0, can_activate_pull = 0, can_activate_push = 1, preroll_lock = {p = 0x1, i = {1, 0}}, preroll_cond = {p = 0x0, i = {0, 0}}, eos = 0, need_preroll = 1, have_preroll = 0, playing_async = 1, have_newsegment = 1, segment = {flags = GST_SEGMENT_FLAG_NONE, rate = 1, applied_rate = 1, format = GST_FORMAT_TIME, base = 0, offset = 0, start = 0, stop = 18446744073709551615, time = 0, position = 33333333, duration = 18446744073709551615, _gst_reserved = {0x0, 0x0, 0x0, 0x0}}, clock_id = 0x0, sync = 1, flushing = 0, running = 0, max_lateness = 20000000, priv = 0x10a3188, _gst_reserved = { 0x0 }}, width = 0, height = 0, priv = 0x10a3180, _gst_reserved = {0x0, 0x0, 0x0, 0x0}}, fixinfo = { id = '\000' , smem_start = 1078984704, smem_len = 4608000, type = 0, type_aux = 0, visual = 2, xpanstep = 1, ypanstep = 1, ywrapstep = 0, line_length = 3840, mmio_start = 0, mmio_len = 0, accel = 0, capabilities = 0, reserved = {0, 0}}, varinfo = { xres = 800, yres = 480, xres_virtual = 1920, yres_virtual = 1200, xoffset = 0, yoffset = 0, bits_per_pixel = 16, grayscale = 0, red = { offset = 11, length = 5, msb_right = 0}, green = {offset = 5, length = 6, msb_right = 0}, blue = {offset = 0, length = 5, msb_right = 0}, transp = {offset = 0, length = 0, msb_right = 0}, nonstd = 0, activate = 0, height = 4294967295, width = 4294967295, accel_flags = 1, pixclock = 0, left_margin = 0, right_margin = 0, upper_margin = 0, lower_margin = 0, hsync_len = 0, vsync_len = 0, sync = 0, vmode = 0, rotate = 0, colorspace = 0, reserved = {0, 0, 0, 0}}, fd = 5, framebuffer = 0xb654a000 , device = 0x10a38d8 "/dev/fb0", width = 320, height = 240, cx = 240, cy = 120, linelen = 1280, lines = 240, bytespp = 4, fps_n = 30, fps_d = 1} (gdb) p map $3 = {memory = 0xb5d24008, flags = GST_MAP_READ, data = 0xb5d24058 '\377' , "\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\340\377\377\a\377\a\377\a\377\a\377\a\377\a\377\a\377\a\377\a"..., size = 153600, maxsize = 153603, user_data = {0x0, 0xb69e3ba4 , 0x10a3378, 0x0}, _gst_reserved = {0x1, 0x10a3378, 0xb6f50dd8 <_gst_debug_min>, 0xb5c08838}} (gdb) p i $4 = 121 Fix this by changing the fbdevsink->bytespp calculation using the frame buffer xres_virtual size instead of xres. https://bugzilla.gnome.org/show_bug.cgi?id=762482 2016-02-22 12:53:00 +0200 Sebastian Dröge * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * win32/common/libgstplayer.def: player: Expose more GstVideoOverlay API in the GstPlayerVideoOverlayVideoRenderer Expose the expose() and set_render_rectangle() methods. These are useful for proper functioning of the video overlay in various situations and toolkits. 2016-02-22 21:03:14 +1100 Matthew Waters * ext/gl/gstglstereosplit.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: fix the build 2d287812 was incomplete 2016-02-22 20:49:52 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: error out if the configured GL API is unsupported by our element https://bugzilla.gnome.org/show_bug.cgi?id=759801 2016-01-24 17:40:37 +0300 Sergey Borovkov * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qmlglsink: Schedule onSceneGrpahInitialized to execute on render thread onSceneGraphInitialized() is called from non render thread currently when scene graph is already initialized. https://bugzilla.gnome.org/show_bug.cgi?id=761003 2016-01-07 18:26:26 +0000 Tim-Philipp Müller * gst/aiff/aiffparse.c: aiffparse: fix negotiation errors with multi-channel files Set fallback channel layout on files with more than two channels. Not clear where to retrieve the real layout from or what the default layout is for AIFF files, the spec only seems to specify some layout for up to 6 channels and the file in question doesn't have a CHAN chunk. https://bugzilla.gnome.org/show_bug.cgi?id=676425 2016-02-21 10:34:56 +0000 Tim-Philipp Müller * gst/cdxaparse/cdxaparse.vcproj: * gst/mixmatrix/mixmatrix.vcproj: * gst/overlay/overlay.vcproj: * gst/rtjpeg/rtjpeg.vcproj: * gst/smooth/smooth.vcproj: * gst/speed/speed.vcproj: * gst/stereo/stereo.vcproj: * win32/MANIFEST: * win32/gst.sln: * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libgstdshow.dsp: * win32/vs6/libgstdshowdecwrapper.dsp: * win32/vs6/libgstflv.dsp: * win32/vs6/libgstmpegvideoparse.dsp: * win32/vs6/libgstneon.dsp: * win32/vs8/gst-plugins-bad.sln: * win32/vs8/libgstdirectsound.vcproj: * win32/vs9/gst-plugins-bad.sln: * win32/vs9/libgstdshowsrcwrapper.vcproj: win32: remove outdated build cruft This hasn't been touched for generations, doesn't work, and is just causing confusion. We also don't want to maintain these files manually. 2016-02-20 12:55:08 +0000 Tim-Philipp Müller * ext/daala/gstdaaladec.c: daala: don't use exported but undeclared core debug category symbols It's not right and won't work on Windows with MSVC. 2016-02-19 14:27:59 -0800 Scott D Phillips * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265: Fix initialization of slice_deblocking_filter_disabled_flag H.265 7.4.7.1 says: > When slice_deblocking_filter_disabled_flag is not present, it is > inferred to be equal to pps_deblocking_filter_disabled_flag. https://bugzilla.gnome.org/show_bug.cgi?id=762351 2016-02-19 16:40:54 -0300 Thiago Santos * gst-libs/gst/codecparsers/gstmpeg4parser.c: mpeg4parser: prevent assertion when scanning for sync code Only search if there is indeed enough data to be searched otherwise an assertion is raised 2016-02-19 17:48:55 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsparse.c: tsparse: Fix per-program-pad pushing This fixes a couple of issues regarding the output of (request) per-program pads output: We would never push out PAT sections (ok, that was one reallly stupid mistake. I guess nobody ever uses this feature ...). In the case where the PMT section of a program was bigger than one packet, we would only end up pushing the last packet of that PMT. Which obviously results in the resulting stream never containing the proper (complete) PMT. The problem was that the program is only started (in the base class) after the PMT section is completely parsed. When dealing with single-program pads, tsparse only wants to push the PMT corresponding to the requested program (and not the other ones). tsparse did that check by looking at the streams of the program... ... but that program doesn't exist for the first packets of the initial PMT. The fix is to use the base class program information (if it parsed the PAT it already has some information, like the PMT PID for a given program) if the program hasn't started yet. 2016-02-19 17:45:26 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: tsparse: Use GstFlowCombiner In addition to the fact that it's a sane thing to do for multi-source pad elements, it also avoids the situation where just using a request pad (and not the main static pad) would result in the processing stopping. 2016-02-19 12:38:31 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.7.2 === 2016-02-19 11:50:25 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.7.2 2016-02-19 10:32:28 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2016-02-18 14:32:23 +0000 Julien Isorce * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-base-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-insertbin-uninstalled.pc.in: * pkgconfig/gstreamer-mpegts-uninstalled.pc.in: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-wayland-uninstalled.pc.in: uninstalled.pc: add support for non libtool build systems Currently the .la path is provided which requires to use libtool as mentioned in the GStreamer manual section-helloworld-compilerun.html. It is fine as long as the application is built using libtool. So currently it is not possible to compile a GStreamer application within gst-uninstalled with CMake or other build system different than autotools. This patch allows to do the following in gst-uninstalled env: gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0 \ gstreamer-gl-1.0) Previously it required to prepend libtool --mode=link https://bugzilla.gnome.org/show_bug.cgi?id=720778 2016-02-18 16:21:38 +0000 Julien Isorce * gst-libs/gst/gl/gstgldebug.c: gldebug: make sure debug is initialized when calling gst_gl_insert_debug_marker Usually gl debug is initialized in gst_gl_context_create_thread. But this function is not used when using the GstGLContextGPUProcess from ChromiumGStreamerBackend. Received signal 11 SEGV_MAPERR 000000000000 gst_debug_category_get_threshold gst_gl_insert_debug_marker gst_gl_base_filter_gl_start 2016-02-18 10:33:20 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/utils/gles_versions.h: * gst-libs/gst/gl/utils/opengl_versions.h: gl: Fix compiler warning about unused const variable with gcc 6 CC libgstgl_x11_la-gstglcontext_glx.lo In file included from gstglcontext_glx.c:39:0: ../utils/opengl_versions.h:52:43: error: ‘gles2_versions’ defined but not used [-Werror=unused-const-variable] static const struct { int major, minor; } gles2_versions[] = { ^~~~~~~~~~~~~~ 2016-02-18 10:29:21 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: gl: Move private headers from SOURCES to noinst_HEADERS 2016-02-18 00:24:04 +0200 Sebastian Dröge * ext/modplug/gstmodplug.cc: modplug: Fix compiler warning about C++11 compatibility gstmodplug.cc:94:17: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix] #define FORMATS "{ "GST_AUDIO_NE (S32)", "GST_AUDIO_NE (S16)", U8 }" ^ gstmodplug.cc:94:39: error: invalid suffix on literal; C++11 requires a space between literal and string macro [-Werror=literal-suffix] #define FORMATS "{ "GST_AUDIO_NE (S32)", "GST_AUDIO_NE (S16)", U8 }" ^ 2016-02-16 15:10:34 +0100 David Fernandez * ext/curl/gstcurlbasesink.c: curlbasesink: don't send empty buffers Fixes problem in curlhttpsink when qtmux uses faststart. https://bugzilla.gnome.org/show_bug.cgi?id=762013 2016-02-17 11:16:53 +0100 Thibault Saunier * ext/ladspa/gstladspafilter.c: ladspa: Fix some debugs 2016-01-26 09:34:00 +0900 Vineeth TM * sys/uvch264/gstuvch264_src.c: uvch264_src: Fix caps memory leak v4l_caps and new_caps are being allocated new memory before freeing the old allocation. https://bugzilla.gnome.org/show_bug.cgi?id=761108 2015-12-24 15:36:54 +0900 Vineeth TM * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Refactor code to check for subclass seek handling If subclass is not able to handle seek event, then there is no need to stop streaming and send flush events. We should simply return FALSE https://bugzilla.gnome.org/show_bug.cgi?id=758516 2015-12-24 15:10:16 +0900 Vineeth TM * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Add condition to check for non working negative rate tsdemux is not able to handle negative playback rates. But in mpegtsbase, the same check is not being done. added a check to not handle negative rate while seeking unless the same is handled upstream. https://bugzilla.gnome.org/show_bug.cgi?id=758516 2016-02-17 13:00:46 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: insert the debug marker from the GL thread https://bugzilla.gnome.org/show_bug.cgi?id=761538 2016-02-17 11:42:23 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: remove unsed reconfigure variable 2016-01-13 13:17:56 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: don't push a reconfigure event from the GL thread Doing so may cause deadlocks when other elements attempt destroy or created GL resources. https://bugzilla.gnome.org/show_bug.cgi?id=760559 2016-01-21 10:40:36 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglvideomixer.c: glvideomixer: don't leak pad's vertex buffer on release_pad https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-02-17 01:08:18 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glmixer: Remove usage of GstGLMixerFrameData Subclasses can just iterate over the list of pads themselves https://bugzilla.gnome.org/show_bug.cgi?id=760873 2016-01-13 14:41:22 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: don't hold the object lock while calling into GL Doing so can deadlock between the GL thread and the object lock e.g. when performing reconfigure events in glimagesink on a resize event. https://bugzilla.gnome.org/show_bug.cgi?id=760559 2016-02-16 22:34:43 +0000 Tim-Philipp Müller * common: Update common: make check-exports not fail for libgstgl.def Should fix distcheck on some build bots. 2016-01-26 09:37:04 +0900 Vineeth TM * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: acmenc/acmmp3dec: remove unnecessary break after return https://bugzilla.gnome.org/show_bug.cgi?id=761109 2015-07-21 18:02:38 -0300 Thiago Santos * configure.ac: configure: improve check for wayland-scanner binary The plugin doesn't need the wayland-scanner package to be built or run, it only needs the wayland-scanner program during compile time. When cross-compiling, build systems might not have the wayland-scanner package for the target system as it is a developer's tool, while it should still be possible to use wayland-scanner from the host system. This patch fixes it by not requiring the wayland-scanner package but just the binary itself. Note that the check is done outside of the PKG_CHECK_MODULES as it doesn't work inside of it. https://bugzilla.gnome.org/show_bug.cgi?id=752688 2016-01-21 11:53:33 +0100 Philippe Normand * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: restore bitrate averaging support This was accidentally removed in commit ccff3be3. https://bugzilla.gnome.org/show_bug.cgi?id=733959 2016-01-20 15:33:28 +0100 Philippe Normand * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: remove queue2 overrun notification Due to performance impact concerns this is removed. An alternative approach would be to rely on buffering messages monitoring. https://bugzilla.gnome.org/show_bug.cgi?id=733959 2016-02-16 16:18:21 +1100 Matthew Waters * ext/vulkan/vkdevice.c: vkdevice: add the necessary but arbitrary queue priority Silences an error in the validation layers. 2016-02-16 16:12:07 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: add the necessary call to check if the physical device supports the surface Silences an error in the validation layers. 2016-02-16 15:53:56 +1100 Matthew Waters * ext/vulkan/vkapi.h: * ext/vulkan/vkinstance.c: vulkan: update to SDK 1.0.3.1 2016-02-16 15:36:41 +1100 Matthew Waters * configure.ac: vulkan/build: search for the correct library SDK 1.0.1 used libvulkan-1.so, 1.0.2 uses libvulkan.so 2016-02-16 11:51:28 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: iterate over the device queue's using the new iteration API 2016-02-16 11:49:24 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkdevice.h: vkdevice: add callback iteration over the device queue's 2016-02-16 11:22:37 +1100 Matthew Waters * ext/vulkan/vkqueue.c: * ext/vulkan/vkqueue.h: vkqueue: add context helpers 2016-02-11 01:31:14 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkdevice.h: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vkinstance.c: * ext/vulkan/vkinstance.h: * ext/vulkan/vksink.c: * ext/vulkan/vkupload.c: * ext/vulkan/vkutils.c: * ext/vulkan/vkutils.h: vkutils: move object-specific context queries to their respective files vkutils now just contains some utility functions to further simplify retrieving multiple objects. 2016-02-11 00:50:53 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkdevice.h: vkdevice: remove unneeded error parameter from get_queue() 2016-02-10 18:06:46 +1100 Matthew Waters * ext/vulkan/vkupload.c: * ext/vulkan/vkupload.h: vkupload: implement an uploader abstraction 2016-02-10 19:50:27 +1100 Matthew Waters * ext/vulkan/vkdisplay.c: vkdisplay: unref the instance fixes memory leak 2016-02-10 19:34:55 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkswapper.c: vulkan: chain up in finalize They were missing in some cases 2016-02-10 18:58:32 +1100 Matthew Waters * ext/vulkan/vksink.c: vksink: only unref if the pointers are non-NULL 2016-02-10 18:05:47 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: vkimagememory: free the managing struct on _free fixes a memory leak 2016-02-09 18:26:40 +1100 Matthew Waters * ext/vulkan/vkdevice.c: vkdevice: perform a waitIdle before destroying the device 2016-02-09 17:46:53 +1100 Matthew Waters * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbuffermemory.h: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkimagememory.h: Revert "vulkan: remove views from the memory objects." This reverts commit 1ea817298ee4d5ef9b00f888f8ebe16a888b1150. 2016-02-09 17:31:26 +1100 Matthew Waters * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbuffermemory.h: * ext/vulkan/vkbufferpool.c: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkimagememory.h: vulkanmemory: remove bind variants 2016-02-09 16:21:00 +1100 Matthew Waters * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbuffermemory.h: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkimagememory.h: vulkan: remove views from the memory objects. They are not used and it's not possible to create the view before binding the VkDeviceMemory object to them. 2016-02-09 11:34:57 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: alpha flags are now supported by LunarG's driver 2016-02-09 00:07:38 +1100 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/vk.h: * ext/vulkan/vk_fwd.h: * ext/vulkan/vkbufferpool.c: * ext/vulkan/vkbufferpool.h: * ext/vulkan/vkupload.c: vulkan: add a vulkanbuffer bufferpool 2016-02-08 22:49:15 +1100 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/gstvulkan.c: * ext/vulkan/vksink.c: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: * ext/vulkan/vkupload.c: * ext/vulkan/vkupload.h: vulkan: add upload element 2016-02-08 18:28:29 +1100 Matthew Waters * ext/vulkan/vkutils.c: vkutils: fix assert inversion 2016-02-08 18:27:16 +1100 Matthew Waters * ext/vulkan/vkbuffermemory.h: * ext/vulkan/vkimagememory.h: vulkan: add caps feature names for the buffer and image memories 2016-02-08 14:44:20 +1100 Matthew Waters * ext/vulkan/vksink.c: * ext/vulkan/vkutils.c: * ext/vulkan/vkutils.h: vulkan: add device to handle_context_query 2016-02-08 14:32:10 +1100 Matthew Waters * ext/vulkan/vksink.c: * ext/vulkan/vkutils.c: vulkan: move instance_open into the utility ensure_element_data So callers don't have to perform it themselves. 2016-02-08 14:25:49 +1100 Matthew Waters * ext/vulkan/vkinstance.c: * ext/vulkan/vkinstance.h: * ext/vulkan/vksink.c: vkinstance: add signal for overriding device creation 2016-02-08 12:22:11 +1100 Matthew Waters * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbuffermemory.h: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkimagememory.h: * ext/vulkan/vkmacros.h: * ext/vulkan/vkmemory.c: * ext/vulkan/vkmemory.h: * ext/vulkan/vkswapper.c: vulkan: separate allocation and binding of memory 2016-02-08 12:14:44 +1100 Matthew Waters * ext/vulkan/vkbuffermemory.c: vkbuffermemory: follow the rest of the struct macros 2016-02-05 19:31:49 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: use buffer memory to upload video frames to the GPU 2016-02-05 19:18:40 +1100 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/vk.h: * ext/vulkan/vk_fwd.h: * ext/vulkan/vkbuffermemory.c: * ext/vulkan/vkbuffermemory.h: * ext/vulkan/vkinstance.c: vulkan: add a buffer memory allocator Wraps the VkBuffer in a GstMemory subclass. 2016-02-05 19:11:51 +1100 Matthew Waters * ext/vulkan/vkmemory.h: vkmemory: align struct members in the header 2016-02-05 19:10:43 +1100 Matthew Waters * ext/vulkan/vkmacros.h: vkmacros: use specific _INIT macros to initialize structures 2016-02-05 19:09:41 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: * ext/vulkan/vkimagememory.h: vkimagememory: add get_{width,height) functions 2016-01-27 15:20:49 +1100 Matthew Waters * configure.ac: * ext/vulkan/vkapi.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkinstance.h: * ext/vulkan/vkswapper.c: * ext/vulkan/xcb/vkwindow_xcb.c: vulkan: update to release 1.0.1.1 2016-01-22 14:34:06 +1100 Matthew Waters * ext/vulkan/xcb/vkwindow_xcb.c: vulkan/xcb: flush after mapping the window Otherwise the map may not reach the server and not appear. 2016-01-04 16:51:26 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: fix semaphore usage 2015-12-31 16:34:24 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: vulkan: add some debugging about the supported extensions 2015-12-31 15:58:37 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: get the function pointers from the correct object GetPhysicalDevice* functions are instance functions rather than device functions. 2015-12-31 15:38:37 +1100 Matthew Waters * ext/vulkan/vkinstance.c: * ext/vulkan/vkinstance.h: vkinstance: add the necessary winsys extension 2015-12-31 15:34:45 +1100 Matthew Waters * ext/vulkan/vk_fwd.h: * ext/vulkan/vkdisplay.h: vkdisplay: forward declare GstVulkanDisplayType 2015-12-31 15:32:15 +1100 Matthew Waters * ext/vulkan/vkapi.h: vkapi: remove unneeded headers vkapi is for accessing the vulkan headers with the correct defines applied so doesn't need any interal headers. 2015-12-30 15:15:40 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: vkimagememory: fix the memory barrier access masks silences the following warnings from the validation layer AccessMask xxx must have required access bit xxx and may have optional bits 0 when layout is VK_IMAGE_LAYOUT_TRANSFER_{SRC,DST}_OPTIMAL 2015-12-30 15:14:23 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: only wait on the semaphore once It's invalid usage and we may deadlock 2015-12-31 01:27:54 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: vkimagememory: initialize flags and don't crash on errors 2015-12-30 14:06:01 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkerror.c: * ext/vulkan/vkerror.h: * ext/vulkan/vkinstance.c: * ext/vulkan/vkswapper.c: vulkan: update error db for 0.10.2 2015-12-29 16:05:17 +1100 Matthew Waters * ext/vulkan/vk.h: * ext/vulkan/vkapi.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdevice.h: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkmacros.h: * ext/vulkan/vkmemory.c: * ext/vulkan/vkmemory.h: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: * ext/vulkan/vkutils.c: * ext/vulkan/vkwindow.c: * ext/vulkan/vkwindow.h: * ext/vulkan/xcb/vkdisplay_xcb.c: * ext/vulkan/xcb/vkdisplay_xcb.h: * ext/vulkan/xcb/vkwindow_xcb.c: * ext/vulkan/xcb/vkwindow_xcb.h: vulkan: update to SDK 0.10.2 2015-12-07 17:33:43 +1100 Matthew Waters * ext/vulkan/Makefile.am: * ext/vulkan/vk.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vkinstance.c: * ext/vulkan/vkinstance.h: * ext/vulkan/vksink.c: * ext/vulkan/vkutils.c: * ext/vulkan/vkutils.h: * ext/vulkan/vkutils_private.h: vulkan: implement GstContext helpers Based off libgstgl's implementation 2015-12-07 17:21:12 +1100 Matthew Waters * ext/vulkan/vk_fwd.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdevice.h: * ext/vulkan/vksink.c: vkdevice: remove gst_vulkan_device_close() When sharing the device between multiple elements/application, we need to use th erefcount to know when to close the device. 2015-12-07 17:00:37 +1100 Matthew Waters * ext/vulkan/vk_fwd.h: * ext/vulkan/vkinstance.c: * ext/vulkan/vkinstance.h: * ext/vulkan/vksink.c: vkinstance: remove gst_vulkan_instance_close Sharing the instance across multiple elements/application will require using the refcount instead to know when to close and destroy the instance. 2015-12-07 16:46:28 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: remove outdated comment 2015-12-07 16:39:53 +1100 Matthew Waters * ext/vulkan/vkswapper.c: vkswapper: always match lock/unlock of the render lock If a draw event comes from the winsys before we've rendered a buffer we were deadlocking. 2015-12-02 17:54:30 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: * ext/vulkan/vkmemory.c: vkmemory: debug output the memory properties requested 2015-12-02 17:14:49 +1100 Matthew Waters * ext/vulkan/vkimagememory.c: vkimagememory: don't leak GstMapInfo in failure cases on _map() 2015-12-02 17:10:39 +1100 Matthew Waters * ext/vulkan/vkdevice.c: * ext/vulkan/vkinstance.c: * ext/vulkan/vkswapper.c: vulkan: de-C99 struct declarations 2015-12-01 18:37:34 +1100 Matthew Waters * ext/vulkan/vk_fwd.h: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: * ext/vulkan/vkwindow.c: * ext/vulkan/vkwindow.h: * ext/vulkan/xcb/xcb_event_source.c: vkwindow/swapper: implement redraw handling only xcb has been implemented 2015-12-01 16:28:28 +1100 Matthew Waters * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vksink.h: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: * ext/vulkan/vkwindow.c: * ext/vulkan/vkwindow.h: * ext/vulkan/xcb/vkdisplay_xcb.c: * ext/vulkan/xcb/vkwindow_xcb.c: * ext/vulkan/xcb/xcb_event_source.c: vulkan: implement quitting and resizing the window As before, only xcb has been implemented. 2015-10-24 17:29:05 +1100 Matthew Waters * configure.ac: * ext/Makefile.am: * ext/vulkan/.gitignore: * ext/vulkan/Makefile.am: * ext/vulkan/gstvulkan.c: * ext/vulkan/vk.h: * ext/vulkan/vk_fwd.h: * ext/vulkan/vkdevice.c: * ext/vulkan/vkdevice.h: * ext/vulkan/vkdisplay.c: * ext/vulkan/vkdisplay.h: * ext/vulkan/vkerror.c: * ext/vulkan/vkerror.h: * ext/vulkan/vkimagememory.c: * ext/vulkan/vkimagememory.h: * ext/vulkan/vkinstance.c: * ext/vulkan/vkinstance.h: * ext/vulkan/vkmemory.c: * ext/vulkan/vkmemory.h: * ext/vulkan/vkqueue.c: * ext/vulkan/vkqueue.h: * ext/vulkan/vksink.c: * ext/vulkan/vksink.h: * ext/vulkan/vkswapper.c: * ext/vulkan/vkswapper.h: * ext/vulkan/vkutils.c: * ext/vulkan/vkutils.h: * ext/vulkan/vkwindow.c: * ext/vulkan/vkwindow.h: * ext/vulkan/xcb/Makefile.am: * ext/vulkan/xcb/vkdisplay_xcb.c: * ext/vulkan/xcb/vkdisplay_xcb.h: * ext/vulkan/xcb/vkwindow_xcb.c: * ext/vulkan/xcb/vkwindow_xcb.h: * ext/vulkan/xcb/xcb_event_source.c: * ext/vulkan/xcb/xcb_event_source.h: new vulkan based video sink Currently xcb is the only winsys that is implemented and there's no redraws et al 2016-02-16 12:38:21 +0000 Tim-Philipp Müller * tests/files/Makefile.am: * tests/files/cbr_stream.mp3: * tests/files/stream.mp2: * tests/files/vbr_stream.mp3: tests: remove test files no longer needed 2016-02-16 10:44:33 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-mpg123.xml: * ext/Makefile.am: * ext/mpg123/Makefile.am: * ext/mpg123/gstmpg123audiodec.c: * ext/mpg123/gstmpg123audiodec.h: * gst-plugins-bad.spec.in: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/mpg123audiodec.c: mpg123: move plugin from -bad to -ugly https://bugzilla.gnome.org/show_bug.cgi?id=719849 2016-02-16 19:59:13 +1100 Matthew Waters * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkbasesink.h: gtk(gl)sink: remove the signal handlers on finalize It's possible that the sink element will be freed before the widget is destroyed. When the widget was eventually destroyed, it was attempting to access member variables of the freed sink struct which resulted in undefined behaviour. Fix by disconnecting our signal on finalize. https://bugzilla.gnome.org/show_bug.cgi?id=762098 2016-02-16 08:48:23 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: Remove leftover g_prints One was commented out, but we also don't use // comments :) 2016-02-16 14:41:37 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: gldebug: use the correct spelling for behavior The headers use the american spelling of behavior not the UK/AUS version with the extra U. 2016-02-16 13:58:42 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldebug.c: glcontext: don't enable GL debug for messages that won't be logged This is an optimization to avoid pointless string processing. 2016-02-16 13:01:20 +1100 Alessandro Decina * ext/gl/gstglvideoflip.c: glvideoflip: don't ignore method changes when caps aren't set (yet) 2016-02-16 00:33:50 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: * gst/rtp/gstrtph265depay.c: * gst/rtp/gstrtph265depay.h: * gst/rtp/gstrtph265pay.c: * gst/rtp/gstrtph265pay.h: rtp: move RTP H.265 payloader/depayloader to -good https://bugzilla.gnome.org/show_bug.cgi?id=761606 2015-10-07 23:49:58 +0200 Stian Selnes * configure.ac: * gst/netsim/Makefile.am: * gst/netsim/gstnetsim.c: * gst/netsim/gstnetsim.h: * tests/check/Makefile.am: * tests/check/elements/netsim.c: netsim: Add netsim element Resurrected from the Farstream repository and given an overhaul to fix races, deadlocks etc. https://bugzilla.gnome.org/show_bug.cgi?id=756252 2015-11-20 19:38:03 +0000 Florin Apostol * ext/dash/gstdashdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: dashdemux: gst_dash_demux_get_live_seek_range returns positive values https://bugzilla.gnome.org/show_bug.cgi?id=752374 2016-02-10 10:31:19 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglsyncmeta.c: gl: syncmeta: define GL_TIMEOUT_IGNORED in more portable way 2016-02-10 16:37:22 +1100 Alessandro Decina * gst-libs/gst/gl/gstglshader.c: gstglshader: cache uniform locations Avoid redundant calls to glGetUniformLocation. The results can be cached once the shader has been linked. 2016-02-10 15:40:02 +1100 Alessandro Decina * sys/applemedia/videotexturecache.m: applemedia: videotesturecache: let CVOpenGLESTextureCache flush every 1s Leave kCVOpenGLESTextureCacheMaximumTextureAgeKey to the default (1s). We used to set it to 0 and flush manually, but apparently (looking at the GLES profiler) 0 means "disable the cache entirely". 2016-02-10 13:08:43 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcontext.c: gstglcontext: micro optimization to gst_gl_context_thread_add Invoke the callback right away when called on the context thread. Removes overhead when nesting libgstgl calls (for example when working with the sync meta). 2016-01-06 21:39:00 +0000 Julien MOUTTE * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsink.h: rtpmsink: Implement setcaps that uses streamheader This allow adding rtmpsink after the flv streaming have started. Otherwise, FLV streamheader is never sent to the server, which cannot figure-out what is this stream about. It should also help in certain renegotiation figures. The sink will no longer work without an streamheader in caps, though there is no known implementation of flvdemux that does not support this. https://bugzilla.gnome.org/show_bug.cgi?id=760242 2016-02-09 21:35:19 +0000 Luis de Bethencourt * ext/smoothstreaming/gstmssmanifest.c: mssdemux: remove unnecessary check stream->current_fragment has the value of g_list_previous (iter) which has just been checked. No need to check it again. Just to be safe, use a g_assert() to check fragment before dereferencing. CID #1352041 2016-02-09 17:24:50 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: plug mpd client leak On parsing error, free the mpd client object https://bugzilla.gnome.org/show_bug.cgi?id=760120 2016-01-04 12:12:45 +0000 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: fix memory leak in gst_dash_demux_update_manifest_data new_client local variable was not freed in case of errors. Also, the buffer is not unmapped. https://bugzilla.gnome.org/show_bug.cgi?id=760120 2015-11-10 22:01:38 +0000 Florin Apostol * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/elements/dash_mpd.c: mpdparser: renamed gst_mpd_client_get_next_segment_availability_end_time to gst_mpd_client_get_next_segment_availability_start_time The function actually returns the segment availability start time (as defined by the standard). That is at the end of the segment, but it is called availability start time. Availability end time is something else (the time when the segment is no longer available on the server). The function name was misleading. https://bugzilla.gnome.org/show_bug.cgi?id=757655 2015-11-10 22:00:58 +0000 Florin Apostol * ext/dash/gstmpdparser.c: mpdparser: corrected getting segment availability https://bugzilla.gnome.org/show_bug.cgi?id=757655 2015-11-19 15:30:34 +0000 Florin Apostol * tests/check/elements/dash_mpd.c: mpdparser: tests: added unit test for getting segment availability when segment timeline is used https://bugzilla.gnome.org/show_bug.cgi?id=757655 2016-01-07 12:50:06 +0000 Florin Apostol * tests/check/elements/adaptive_demux_engine.c: adaptive_demux: tests: improved validation of pads When removing a pad, the on_demuxPadRemoved function must find a stream for that pad. https://bugzilla.gnome.org/show_bug.cgi?id=760328 2016-01-07 12:48:12 +0000 Florin Apostol * tests/check/elements/adaptive_demux_engine.c: adaptive_demux: tests: fix pad used for AppSink event on_demuxNewPad registered the on_appsink_event callback on a wrong pad. https://bugzilla.gnome.org/show_bug.cgi?id=760328 2016-01-08 16:25:12 +0000 Florin Apostol * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: adaptivedemux: tests: remove unused demux_sent_eos callback The demux_sent_eos callback is unused in tests. It was also registered on a wrong pad, so it actually triggered when demux received eos from a fragment download. https://bugzilla.gnome.org/show_bug.cgi?id=760328 2016-01-08 18:17:21 +0000 Florin Apostol * tests/check/elements/dash_demux.c: adaptivedemux: tests: remove unneeded youtube xmlns from manifests https://bugzilla.gnome.org/show_bug.cgi?id=760328 2016-02-09 14:07:54 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: implement GstElement::set_context 2016-02-09 14:04:09 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: update copyright 2016-02-09 13:42:48 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: implement GstElement::set_context Needed to properly handle gst.gl.app_context(s). 2016-02-09 13:39:18 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: add myself to the copyright holders 2016-02-09 13:56:32 +1100 Matthew Waters * win32/common/libgstgl.def: gl: update win32 .def file 2016-02-09 13:08:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: add compatibility definition for GL_TIMEOUT_IGNORED 2016-02-09 12:14:04 +1100 Matthew Waters * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: * sys/androidmedia/gstamcvideodec.c: glsyncmeta: separate out gpu/cpu waits. CPU waits are more expensive and are only required if the CPU is ever going to access the data. GPU waits perform inter-context synchronisation and are cheaper as they don't require CPU intervention. 2016-02-08 23:17:34 +0000 Luis de Bethencourt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: remove overwritten value ret is overwitten before used with the return of the subclass seek. CID #1352044 2016-02-08 15:00:35 +0000 Luis de Bethencourt * ext/resindvd/resindvdbin.c: resindvd: remove commented out include Commit 211828979b8c10abf3c74d964bc698dbda4d497d removed rsnaudiomunge, no need for this commented out include for a file that doesn't exist anymore. 2016-02-08 14:26:46 +0000 Luis de Bethencourt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: Revert "resindvd: get rid of _stdint.h include" This reverts commit 0eff6e1991cb24cb65f07c481742782acaa8ec62. Breaks the build when linking with dvdnav.h 2016-02-08 13:43:22 +0000 Luis de Bethencourt * ext/x265/gstx265enc.h: x265enc: get rid of _stdint.h include It was never needed since it doesn't use any standard integer fixed width types. Only the Glib types. 2016-02-08 13:32:46 +0000 Luis de Bethencourt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: get rid of _stdint.h include 2016-02-08 12:44:53 +0100 Piotr Drąg * po/POTFILES.skip: po: update POTFILES https://bugzilla.gnome.org/show_bug.cgi?id=761704 2016-02-08 12:23:12 +1100 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: gleffects: identity: add the shader to the hash table So that we don't recreate it every frame and leak memory. https://bugzilla.gnome.org/show_bug.cgi?id=761578 2016-02-05 20:02:22 -0300 Thiago Santos * tests/check/Makefile.am: tests: extend the AM_TESTS_ENVIRONMENT from check.mak To get the CK_DEFAULT_TIMEOUT defined for all tests https://bugzilla.gnome.org/show_bug.cgi?id=761472 2016-02-05 18:06:32 -0300 Thiago Santos * README: * common: Automatic update of common submodule From e97c9bb to b64f03f 2016-02-05 15:34:51 +0000 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: * gst/rtp/gstrtph265depay.h: gstrtph265depay: keep consistency with rtph264depay Use gst_rtp_drop_meta() and the same function prototype for gst_rtp_copy_meta() to keep consistency with the RTP elements in gst-plugins-good 2016-02-05 21:33:38 +0530 Arun Raghavan * sys/tinyalsa/tinyalsasink.c: tinyalsasink: Use glib CLAMP() instead of our own macro 2016-02-05 13:56:34 +0000 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: fix termination of access unit Only consider the access unit complete when the next-occurring VCL NAL unit has the first bit after its NAL unit header equal to 1. 2016-02-02 13:50:25 +0000 David Waring * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Update position in stream->segment for new stream segment message. https://bugzilla.gnome.org/show_bug.cgi?id=761458 2016-02-05 15:43:22 +0530 Arun Raghavan * sys/tinyalsa/tinyalsasink.c: tinyalsasink: Limit period size and count to what the h/w permits 2016-02-05 10:43:49 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglsl_private.h: * gst-libs/gst/gl/wayland/wayland_event_source.h: * win32/common/libgstgl.def: gl: add .def file for msvc builds Also internalize some API from being exported. 2016-02-02 17:02:41 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/mssdemux.c: tests: mssdemux: add unit tests Adds unit tests similar to the ones that we have for DASH and HLS. Tests: * manifest parsing finishes successfully * some queries (duration, seekable, latency) * seeking with various values and flags 2016-02-02 16:54:10 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: implement snap seeking Implement snap seek flags handling in stream_seek to allow the parent class to handle it for us https://bugzilla.gnome.org/show_bug.cgi?id=759158 2016-02-02 16:51:22 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: use correct seek position on reverse seeks Otherwise it was always using the 'start' value, leading to wrong behavior 2016-02-02 11:30:31 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: only update download position if the seek requests to Some seeks are only updating the stop position, there is no need to change the current downloading position. 2016-02-02 09:52:17 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: do not assert on fragment reloads for non-live It can be used as a resource to verify if the server has updated something in the Manifest when downloads are failing 2016-01-27 10:48:53 -0300 Thiago Santos * tests/check/elements/dash_demux.c: tests: dashdemux: add tests for snap flags seeking Similar to HLS but DASH has the extra issue that it can have multiple streams so snapping can be tricky as streams usually won't be aligned. For now, those tests handle the case of only having a single stream. https://bugzilla.gnome.org/show_bug.cgi?id=759158 2016-02-01 10:49:23 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: implement snap seek handling Handle snap seeking at the stream_seek method and let superclass do the rest to support snap seeking https://bugzilla.gnome.org/show_bug.cgi?id=759158 2016-01-27 13:31:10 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: handle snap seeks Adaptive demuxers need to start downloading from specific positions (fragments) for every stream, this means that all streams can snap-seek to a different position when requested. Snap seeking in this case will be done in 2 steps: 1) do the snap seeking on the pad that received the seek event and get the final position 2) use this position to do a regular seek on the other streams to make sure they all start from the same position More arguments were added to the stream_seek function, allowing better control of how seeking is done. Knowing the flags and the playback direction allows subclasses to handle snap-seeking. And also adds a new return parameter to inform of the final selected seeking position that is used to align the other streams. https://bugzilla.gnome.org/show_bug.cgi?id=759158 2016-01-26 23:43:24 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: add utility function to get stream from pad Simplifies the code a bit and avoid repeating this common operation 2016-02-04 12:50:43 +0000 Luis de Bethencourt * gst/videoparsers/gsth264parse.c: h264parse: remove unused mview_mode value Since commit b77f8e172a3f0be6be5cb4a72e654253404e694f the new value assigned to mview_mode hasn't been used. That commit changed the following "if" check to an "else if", which means the original value of mview_mode is used. 2016-02-04 12:17:31 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglquery.c: glquery: remove unnecessary pointer check All uses of query->context in gstglquery.c assume it exists. We can assume this as well before unrefing it. Furthermore, gst_object_unref() will just silently return if it ever were to not exist. 2016-02-04 18:15:56 +1100 Matthew Waters * gst/videoparsers/gsth265parse.c: h265parse: avoid sending unnecessary downstream caps queries/events h265 versions of the following commits: f352691a04896d0de3381fe8ee85ada948bd6337 try the current caps before querying downstream 72bc7d7f736a10117fedb8e1d4013a4946cfefbc increase caps equality check for no codec_data https://bugzilla.gnome.org/show_bug.cgi?id=761014 2016-02-04 16:36:28 +1100 Matthew Waters * gst/videoparsers/gsth264parse.c: h264parse: increase caps equality check for no codec_data When converting from avc to byte-stream, there will not be any codec_data in the src caps. Remove it before the equality check to avoid sending caps events downstream on every SPS/PPS change. https://bugzilla.gnome.org/show_bug.cgi?id=761014 2016-02-04 15:34:04 +1100 Matthew Waters * gst/videoparsers/gsth264parse.c: h264parse: try the current caps before querying downstream If we have a stream that contains an unchanging SPS/PPS for every video frame, we don't need to to constantly query downstream for it's supported caps if the current caps are compatible with the negotiated caps. https://bugzilla.gnome.org/show_bug.cgi?id=761014 2016-02-04 17:31:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: enable qos by default Improves the responsiveness of the pipeline when resources are close/above the limitations of the hardware. Any subclass that wishes not to enable qos can do so themselves. https://bugzilla.gnome.org/show_bug.cgi?id=761519 2016-02-04 15:11:15 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amcvideodec: pass the correct time value to wait_for_sync When we are not waiting, we need to pass -1 to signal that we just want to check that the frame was/n't rendered. Avoids waiting for frames that will never be rendered. https://bugzilla.gnome.org/show_bug.cgi?id=761014 2016-02-04 15:07:44 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amcvideodec: advance the ready counter ourselves when render=FALSE When not rendering the video frame, e.g. when freeing an unreleased sync frame, we will not receive a frame listener callback. Reduces the amount of 'on_frame_available miss detected' messages when dropping frames. https://bugzilla.gnome.org/show_bug.cgi?id=761014 2016-02-04 14:25:12 +1100 Jan Schmidt * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Fix discont tracking Don't reset the marker that's tracking disconts until either the discont disappears or we resync. 2016-02-03 21:22:28 +0000 Tim-Philipp Müller * sys/Makefile.am: * sys/cdrom/Makefile.am: * sys/cdrom/gstcdplayer.c: * sys/cdrom/gstcdplayer.h: * sys/cdrom/gstcdplayer_ioctl.c: * sys/cdrom/gstcdplayer_ioctl.h: * sys/cdrom/gstcdplayer_ioctl_bsd.h: * sys/cdrom/gstcdplayer_ioctl_irix.h: * sys/cdrom/gstcdplayer_ioctl_solaris.h: Remove ancient and dead cdrom control plugin This was never even ported to 0.10, and I don't think it's particularly useful, since it's just a control interface really. Let's remove it. 2016-02-03 21:16:18 +0000 Tim-Philipp Müller * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/coloreffects/gstcoloreffects.h: * gst/debugutils/fpsdisplaysink.c: docs: remove some leftover 'Since 0.10.x' markers 2016-02-03 21:13:58 +0000 Tim-Philipp Müller * gst/debugutils/.gitignore: * gst/debugutils/Makefile.am: * gst/debugutils/debugutils-marshal.list: * gst/debugutils/fpsdisplaysink.c: debugutils: use generic marshaller 2016-02-03 16:28:42 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opus: fix FEC FEC may only be used when PLC is enabled on the audio decoder, as it relies on empty buffers to generate audio from the next buffer. Hooking to the gap events doesn't work as the audio decoder does not like more buffers output than it sends. The length of data to generate using FEC from the next packet is determined by rounding the gap duration to nearest. This ensures that duration imprecision does not cause quantization to 2.5 milliseconds less than available. Doing so causes the Opus API to fail decoding. Such duration imprecision is common in live cases. The buffer to consider when determining the length of audio to be decoded is the previous buffer when using FEC, and the new buffer otherwise. In the FEC case, this means we determine the amount of audio from the previous buffer, whether it was missing or not (and get the data either from this buffer, or the current one if the previous one was missing). 2016-02-03 10:59:23 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: reconfigure the src when changing to/from passthrough Otherwise it's very possible that any GL resources have not been created yet. 2016-02-03 10:52:08 +1100 Matthew Waters * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: correctly update the output caps on method changes When changing methods we may need different output caps. 2016-02-02 11:20:17 -0800 Reynaldo H. Verdejo Pinochet * sys/tinyalsa/tinyalsasink.c: tinyalsasink: fix tinalsa typo 2016-02-02 11:06:52 -0800 Reynaldo H. Verdejo Pinochet * sys/tinyalsa/tinyalsasink.c: tinyalsasink: fix sample launch line 2016-02-02 14:46:30 +0000 David Waring * gst-libs/gst/player/Makefile.am: libs: player: use configured GST_PKG_CONFIG_PATH when invoking the introspection scanner https://bugzilla.gnome.org/show_bug.cgi?id=761460 2016-02-02 15:20:48 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix wrong buffer being checked for missing data This caused a decoding error if the resulting (wrong) buffer size was passed to the Opus decoding API. https://bugzilla.gnome.org/show_bug.cgi?id=758158 2016-02-02 16:26:09 +0530 Arun Raghavan * sys/tinyalsa/tinyalsasink.c: tinyalsasink: Use int type if we support a single rate/channel count Avoids using an int range if the field we're setting is not actually a range. 2016-02-02 18:36:34 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: Revert "gl/eagl: try getting a gles3 context" This reverts commit 96b9666d596be115fd4b446ef846508b7fd05c24. This reverts commit d11385d167d8843604ea23a05e2dea40b8bbac35. This breaks the texture sharing with the applemedia elements as CVOpenGLESTextureCache seems to have an arbitrary restriction on GLES2 only. 2016-02-02 16:21:14 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't skip subset structures We may need them to transform into a different set of formats. Fixes YUV->YUV with two glcolorconverts, e.g: format=I420 ! glcolorconvert ! glcolorconvert ! format=NV12 2016-02-02 16:19:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: always call gl_start when not called already Fixes elements transitioning out of passthrough mode using GL resources that hadn'e been allocated yet. 2016-02-02 15:14:25 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix RGB,rectangle->planar YUV conversion Converting to GRAY is no fun. Another case of normalized vs unnormalized texture coordinates. 2016-02-02 13:51:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix YUY2/UYVY,rectangle->RGB conversion 1.0 / width does not offset by one pixel in rectangular textures (which use unnormalized coordinates). Provide the actual pixel offset as a uniform to the shader. 2016-01-27 16:42:09 +0530 Arun Raghavan * configure.ac: * sys/Makefile.am: * sys/tinyalsa/Makefile.am: * sys/tinyalsa/tinyalsa.c: * sys/tinyalsa/tinyalsasink.c: * sys/tinyalsa/tinyalsasink.h: tinyalsa: Add a new sink plugin using tinyalsa This uses the tinyalsa library to playback to an ALSA device. Future work can include using the mmap interface. https://bugzilla.gnome.org/show_bug.cgi?id=761230 2016-02-02 12:50:26 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: perform better negotiation 1. Correctly describe what we can caps we can transform to/from. i.e. no YUV->YUV or GRAY->YUV or YUV->GRAY (except for passthrough). 2. Prefer similar formats and ignore incompatible formats on fixation. 2016-01-26 23:15:10 -0300 Thiago Santos * tests/check/elements/dash_demux.c: tests: dashdemux: add test for updating stop position Test that a seek that only updates the stop position works as expected 2016-02-01 09:48:33 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: only update current reading position when needed If the seek doesn't set the start/stop position, no need to reposition the download index. 2016-01-29 20:34:42 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: respect seeking parameter Instead of using the segment values, use the parameter requested in the seeking argument 2016-02-01 14:25:42 -0300 Thiago Santos * tests/check/elements/dash_mpd.c: tests: dash: fix dash tests after index fix 8e788f284508612982e8e38336eed676c2eec35a broke one of the dash mpd tests. This updates and fixes it. 2016-02-01 12:23:32 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: gstglwindow: initialize navigation_loop to NULL Useful when gst_gl_window.c::gst_gl_window_new is not used. This is the case when using a custom GstGLWindow. (ex: GstGLWindowGPUProcess from Chromium) 2016-02-01 09:26:37 +0000 Tim-Philipp Müller * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl: eagl: fix build gstglcontext_eagl.m:238:45: error: too few arguments to function call, expected at least 4, have 3 2016-02-01 15:13:03 +1100 Alessandro Decina * ext/gl/gstgldownloadelement.c: gldownload: allow video/x-raw as input ...and just passthrough. This is useful for pipelines where downstream must be non-GL but upstream can optionally be GL. 2016-02-01 12:57:32 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: try getting a gles3 context Fallback to a gles2 context if that fails 2016-01-21 16:10:48 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglvideomixer.c: glvideomixer: fix checker vbo leak https://bugzilla.gnome.org/show_bug.cgi?id=760925 2016-01-24 15:47:12 +0100 Holger Kaelberer * tests/examples/qt/qml/main.qml: tests: fix warning in qml example https://bugzilla.gnome.org/show_bug.cgi?id=756082 2016-01-24 15:42:32 +0100 Holger Kaelberer * configure.ac: qt: Fix build for android https://bugzilla.gnome.org/show_bug.cgi?id=756082 2016-02-01 01:01:10 +0000 Tim-Philipp Müller * ext/snapshot/Makefile.am: * ext/snapshot/gstsnapshot.c: * ext/snapshot/gstsnapshot.h: Remove dead snapshot plugin Was never ported and doesn't look like we want it or need it in this form, can do the same with the libgstvideo sample conversion utility API now, but better and in a more flexible way. 2016-02-01 00:49:48 +0000 Tim-Philipp Müller * configure.ac: * ext/rsvg/gstrsvgdec.h: * ext/rsvg/gstrsvgoverlay.h: rsvg: bump requirement to 2.36.2 Which allows us to simplify the configure check and some special-casing in the code, and is plenty old in any case. 2016-02-01 00:29:37 +0000 Tim-Philipp Müller * ext/Makefile.am: * ext/libfame/Makefile.am: * ext/libfame/README: * ext/libfame/gstlibfame.c: * ext/libfame/gstlibfame.h: * m4/Makefile.am: * m4/libfame.m4: Remove dead libfame plugin Was never even ported to 0.10, and the lib has been unmaintained for ever and doesn't even seem to be packaged any more. 2016-01-31 19:09:57 +0000 Tim-Philipp Müller * ext/Makefile.am: * ext/audiofile/Makefile.am: * ext/audiofile/README: * ext/audiofile/gstaf.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.c: * ext/audiofile/gstafsrc.h: * po/POTFILES.skip: Remove dead audiofile plugin This was never even ported to 0.10. 2016-01-31 19:04:20 +0000 Tim-Philipp Müller * .gitignore: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.interfaces: * ext/Makefile.am: * ext/gsettings/Makefile.am: * ext/gsettings/gstgsettings.h: * ext/gsettings/gstgsettingsaudiosink.c: * ext/gsettings/gstgsettingsaudiosink.h: * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsaudiosrc.h: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosink.h: * ext/gsettings/gstgsettingsvideosrc.c: * ext/gsettings/gstgsettingsvideosrc.h: * ext/gsettings/gstswitchsink.c: * ext/gsettings/gstswitchsink.h: * ext/gsettings/gstswitchsrc.c: * ext/gsettings/gstswitchsrc.h: * ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml.in: * ext/gsettings/plugin.c: * m4/gsettings.m4: * po/POTFILES.in: * tests/check/Makefile.am: Remove gsettings plugin which was never ported Don't think we need this any longer or want to support it, and clearly no one has been missing it all these years either, so let's just get rid of it. 2016-01-31 16:02:33 +0000 Tim-Philipp Müller * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssdemux.h: smoothstreaming: remove unused dependency on uridownloader 2016-01-31 14:42:21 +0000 Tim-Philipp Müller * configure.ac: * ext/faad/Makefile.am: * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: simplify configure check and require faad >= 2.7 Just check whether LATM is defined which is only available in 2.7 and later. Allows us to simplify the configure check a little and we can get rid of some hackish workarounds for problems with earlier version headers. 2016-01-30 17:31:41 +0000 Tim-Philipp Müller * sys/dvb/gstdvbsrc.c: dvbsrc: drop unnecessary use of _stdint.h 2016-01-29 23:39:26 +0100 Sebastian Dröge * gst/mxf/mxftypes.c: mxftypes: Generate UUIDs according to RFC4122 version 4 (aka random) Instead of fully random UUIDs, these should follow a scheme. 2016-01-29 21:09:44 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Properly write video line map data as an array of 32 bit integers 2016-01-29 20:58:27 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: DMSchemes in the Preface is a required field Even if it has 0 entries. 2016-01-29 18:41:52 +0100 Sebastian Dröge * gst/mxf/mxful.c: mxful: Fix Content Storage UL 2016-01-29 18:28:03 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Best effort values must be written and if unset must contain the distinguished value It's invalid to not write them at all. 2016-01-29 17:36:11 +0100 Sebastian Dröge * gst/mxf/mxful.c: mxful: Add missing OperationalPattern UL, which fixes an off-by-one with the others 2016-01-29 17:07:08 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Our body partition is always complete and closed We have no metadata in it. 2016-01-29 17:02:01 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Use IndexSID of 2 instead of 1 Some tools complain if essence and index have the same SID. 2016-01-29 16:38:23 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Rewrite body partition pack on EOS and mark it as complete/closed 2016-01-29 23:28:59 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amcvideodec: guard against not finding a valid frame in loop Fixes sporadic crashes on finishing decoding a video. https://bugzilla.gnome.org/show_bug.cgi?id=761014 2016-01-29 15:24:36 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: * sys/androidmedia/org/freedesktop/gstreamer/androidmedia/GstAmcOnFrameAvailableListener.java: amcvideodec: set our data pointer in java to NULL on close The frame available callback can be called after deconfiguring the amc codec. Guard against this by setting the back pointer to NULL on close() and ignoring any NULL data pointer. https://bugzilla.gnome.org/show_bug.cgi?id=761014 2016-01-29 15:07:59 +1100 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/avfvideosrc.m: * sys/applemedia/glcontexthelper.c: * sys/applemedia/glcontexthelper.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: refactor GL context code Rework the GL context code. Now both avfvideosrc and vtdec can create an internal GL context for pushing textures. Both elements will still try to use/switch to a local context where available (including after RECONFIGURE events). 2016-01-29 10:35:15 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/glprototypes/base.h: glprototypes: fix parameter type of glGenBuffers The number of buffers should be GLsizei instead of GLuint. https://bugzilla.gnome.org/show_bug.cgi?id=761272 2015-12-08 14:09:58 +0800 Haihua Hu * ext/gl/effects/gstgleffectssources.c: gleffects: fix gleffects fisheye shader compile error On some embedded systems, sqrt() is not supported in the shader, use the actual value of sqrt(2) instead. Signed-off-by: Haihua Hu Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=761271 2016-01-29 14:03:26 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: par may not exist in the caps Fixes a critical in the gst-validate tests: gst_structure_fixate_field_nearest_fraction: assertion 'gst_structure_has_field (structure, field_name) 2016-01-29 12:45:57 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: glcontext: back out unintended lost_context changes 2016-01-28 16:39:07 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/utils/opengl_versions.h: egl: implement selecting opengl3 contexts 2016-01-28 14:31:33 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/egl: pass the error value to get_error_string() 2016-01-28 18:20:44 +0100 Aurélien Zanelli * gst/rawparse/gstvideoparse.c: videoparse: initialize update_size to FALSE when updating info Otherwise, behavior will be undefined when no strides/offsets are set and it will likely go wrong. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-28 11:56:36 -0500 Nicolas Dufresne * gst/rawparse/gstvideoparse.c: videoparse: Fix framesize calculation When the framesize is not specified, we try and calculate a size from the strides and offset information. This was done with the sum of offsets + the size of the last frame. That is just wrong method. We also need to account for video meta that may be flipping two planes. An example is if you convert I420 to YV12 by flipping the two last offsets. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-28 19:36:47 +0100 Sebastian Dröge * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdpdepay.h: gdpdepay: Add ts-offset property to adjust buffer timestamps 2016-01-29 04:50:42 +1100 Jan Schmidt * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-audio.pc.in: * pkgconfig/gstreamer-bad-base-uninstalled.pc.in: * pkgconfig/gstreamer-bad-base.pc.in: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video.pc.in: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: pkg-config: Don't generate and install pkg-config with relative paths Don't put relative paths in pkg-config files, including uninstalled ones. For those, use @abs_topbuilddir@ and @abs_topsrcdir@ as we do elsewhere. Remove libraries= directives, which doesn't seem to be a pkg-config variable that actually exists, but has been in all our pkg-config files for as long as they've existed. 2016-01-28 16:49:53 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmpeg: Write the correct essence container UL for all codecs 2016-01-28 16:41:31 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmpeg: Write version number into the picture essence coding UL 2016-01-28 16:32:34 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Write a timecode track into the source package too 2016-01-11 15:47:24 +0100 Aurélien Zanelli * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: videoparse: use decide_allocation to check if downstream supports videometa If yes, we add them to each output buffers and we avoid frame copy. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-11 15:46:16 +0100 Aurélien Zanelli * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: rawparse: add 'decide_allocation' vfunc to let subclass parse an allocation query And so send an allocation query. This could be used to check whether downstream element supports some metas or not. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-08 17:17:01 +0100 Aurélien Zanelli * gst/rawparse/gstrawparse.c: rawparse: use size of buffer we got from adapter Otherwise position in stream could be wrong if subclass 'pre_push_frame' method changes the buffer size. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-07 14:27:27 +0100 Aurélien Zanelli * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: videoparse: add properties to set framesize, strides and planes offsets To make parser work with image having non-standard strides, plane offsets or with padding between images. For now, since element doesn't check for videometa, we can't directly push buffers when these properties are set so it convert the frame in the pre_push_buffer method to remove any custom padding. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-08 15:21:28 +0100 Aurélien Zanelli * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: rawparse: rename 'set_buffer_flags' vfunc to 'pre_push_buffer' to allow subclass to change other fields of the buffer. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-07 14:18:08 +0100 Aurélien Zanelli * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: videoparse: cache video info in instance To avoid initializing and filling video info each time we need it. https://bugzilla.gnome.org/show_bug.cgi?id=760270 2016-01-28 15:38:45 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: * gst/mxf/mxful.c: * gst/mxf/mxful.h: mxfmux: Write This Generation UID into the Identification metadata It's required according to the standard and we forgot to actually write it to the file although we stored it in the data structures. 2016-01-28 15:29:01 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Add workaround for ffmpeg only writing one Video Line Map value https://ffmpeg.org/pipermail/ffmpeg-devel/2016-January/188202.html 2015-10-14 21:13:57 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglstereomix.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: don't do caps processing that is not overridable Allows the subclass to completely override the chosen src caps. This is needed as videoaggregator generally has no idea exactly what operation is being performed. - Adds a fixate_caps vfunc for fixation - Merges gst_video_aggregator_update_converters() into gst_videoaggregator_update_src_caps() as we need some of its info for proper caps handling. - Pass the downstream caps to the update_caps vfunc https://bugzilla.gnome.org/show_bug.cgi?id=756207 2016-01-27 20:23:21 +1100 Matthew Waters * ext/gl/gstglcolorbalance.c: glcolorbalance: return HARDWARE from get_balance_type 2016-01-27 20:04:00 +1100 Matthew Waters * ext/gl/gstglsinkbin.c: * ext/gl/gstglsinkbin.h: glsinkbin: add glcolorbalance element This makes playbin not plug videobalance as glcolorbalance already exists and implements the GstColorBalance interface. 2016-01-27 19:56:36 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglcontrolbindingproxy.c: * gst-libs/gst/gl/gstglcontrolbindingproxy.h: gl: move control binding proxy implementation from glvideomixer Other elements may need to use it's functionality 2016-01-27 18:17:06 +1100 Matthew Waters * ext/gl/gstglcolorbalance.c: glcolorbalance: create the shader if it doesn't exist in the render callback Changing the properties may result in glcolorbalance moving from passthrough to non-passthrough and we weren't creating the shader in that case. 2016-01-25 16:29:46 +1100 Matthew Waters * ext/qt/gstqtsink.cc: qt: specify that we currently only take 2D textures Fixes black screen video playback on android without a caps filter. 2016-01-25 19:11:38 +1100 Matthew Waters * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: glvideoflip: incorporate the aspect ratio into the scale_x calculations 1. Otherwise rotating the video will clip and show black bars due to gltransformation's implementation. 2. The other option of make gltransformation aspect-agnostic produces incorrect output with perspective transformations. 2016-01-27 14:36:36 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: actually set the configured framerate Actually set the configured framerate. Before we only used to set the first matching framerate range. On iOS where the camera reports ranges [2, 60], we used to configure the camera to output anything between 2 and 60fps. 2016-01-25 22:30:29 +0000 Luis de Bethencourt * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvlaplace.h: opencv: add mask property to cvlaplace Add a "mask" property that sets whether the edges by cvLaplace should be used as a mask on the original input or not. The same way the original image is copied to the edges in edgedetect. 2016-01-25 21:42:52 +0000 Luis de Bethencourt * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstcvsobel.h: opencv: add mask property to cvsobel Add a "mask" property that sets whether the detected derivative edges should be used as a mask on the original input or not. The same way the original image is added to the edges in edgedetect. 2016-01-25 15:19:37 +0000 Luis de Bethencourt * ext/opencv/gstskindetect.cpp: opencv: update deprecated function in skindetect cvCvtPixToPlane() has been deprecated in OpenCV 3.0, and cvSplit() is the suggested replacement. Since cvSplit() is available in OpenCV 2.4, it is safe and cautious to update the function usage before it becomes an issue. 2016-01-25 11:43:59 +0000 Luis de Bethencourt * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvlaplace.h: opencv: fix cvlaplace cvlaplace was also affected by the silent change in OpenCV API, same as cvsobel. It hasn't been working for a while. It would return a plain black image. This commit updates the usage of cvLaplace by using cvCvtColor to create the grayscale intermediate image to process. This also means there is no need anymore to use GstBaseTransform's transform_caps, since the pads are RGB. 2016-01-25 13:33:09 +0900 Vineeth TM * gst/videoparsers/gsth265parse.c: h265parse: Fix buffer leak when sps is not present When sps data is NULL, the buffer allocated and mapped is not being freed. In this scenario there is no need to allocate the buffer as we are supposed to return NULL. https://bugzilla.gnome.org/show_bug.cgi?id=761070 2016-01-25 12:05:12 +0900 Vineeth TM * gst/videoparsers/gsth265parse.c: h265parse: Fix buffer memory leak. While setting caps, codec_data buffer is mapped, but not being unmapped leading to memory leaks. https://bugzilla.gnome.org/show_bug.cgi?id=761070 2016-01-23 17:10:51 +0000 Luis de Bethencourt * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstcvsobel.h: opencv: fix cvsobel cvsobel han't been working for a while due to a silent change in OpenCV API. It would return a plain black image. This commit updates the usage of cvSobel by using cvCvtColor to create the grayscale image to process. This also means there is no need to use GstBaseTransform's transform_caps anymore, since the pads can be RGB. 2016-01-23 05:30:05 +0200 Sebastian Dröge * pkgconfig/Makefile.am: pkg-config: Properly version and install base/audio/video .pc files https://bugzilla.gnome.org/show_bug.cgi?id=760733#c17 2016-01-22 16:43:03 +0000 Alex Ashley * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix leak of stream->internal_pad The function gst_adaptive_demux_stream_update_source() function creates a new GstPad called internal_pad. This pad is not freed when releasing the stream. The solution is to set GST_PAD_FLAG_NEED_PARENT so that the chain functions do not get called when the pad has no parent and then remove the parent in the gst_adaptive_demux_stream_free() function. This causes the refcount of the pad to be set to zero. https://bugzilla.gnome.org/show_bug.cgi?id=760982 2016-01-21 22:00:44 +0800 John Chang * ext/dash/gstmpdparser.c: mpdparser: Use RepresentationIndex instead of Initialization to get the URL of the RepresentationIndex https://bugzilla.gnome.org/show_bug.cgi?id=760936 2016-01-22 17:25:28 +0200 Sebastian Dröge * sys/androidmedia/gst-android-hardware-camera.c: ahc: Fail gracefully if our callback class can't be found Instead of just ignoring that error and then calling JNI functions with NULL, which will kill the virtual machine. The error handling here needs some further improvements though, errors in more places are just ignored. 2016-01-22 17:22:47 +0200 Sebastian Dröge * sys/androidmedia/gst-android-hardware-camera.c: ahc: Initialize GError pointer with NULL Otherwise there will be assertions. 2016-01-22 17:18:58 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Only free GstAmcBuffer if it's not NULL And also free it on GL errors. 2016-01-13 22:05:49 +0100 Julien Moutte * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: implement RGB capture support Combine mode and format to generate caps and support the flags from VideoChanged callback to support RGB capture. https://bugzilla.gnome.org/show_bug.cgi?id=760594 2016-01-22 16:22:07 +0200 Sebastian Dröge * sys/androidmedia/gstamc.h: amc: Add an assertion for NULL GErrors Should never happen! But an assertion is better than a NULL pointer dereference. 2016-01-22 16:14:46 +0200 Sebastian Dröge * sys/androidmedia/gst-android-graphics-imageformat.c: * sys/androidmedia/gst-android-hardware-camera.c: ahc: Fix indentation 2016-01-22 16:13:45 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: amc: MediaCodec::getOutputBuffer() can return NULL without exception Happens when doing zerocopy rendering, or when passing a wrong index to it. Handle this properly for zerocopy rendering, fail properly for the other cases. https://bugzilla.gnome.org/show_bug.cgi?id=760961 2016-01-16 18:59:43 +0200 Sebastian Dröge * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/base/Makefile.am: * gst-libs/gst/video/Makefile.am: * pkgconfig/Makefile.am: base/audio/video: Install headers and pkg-config files They are still considered unstable API but it would be good to give them some wider testing already to make sure the API is useful. https://bugzilla.gnome.org/show_bug.cgi?id=760733 2016-01-16 18:56:26 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/audio/gstaudioaggregator.c: * gst-libs/gst/audio/gstaudioaggregator.h: * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.h: * pkgconfig/gstreamer-bad-audio-uninstalled.pc.in: * pkgconfig/gstreamer-bad-audio.pc.in: audio: Move audioaggregator base class to a library It's useful enough already to be used in other elements for audio aggregation, let's give people the opportunity to use it and give it some API testing. https://bugzilla.gnome.org/show_bug.cgi?id=760733 2016-01-21 23:13:36 +0100 Holger Kaelberer * gst-libs/gst/gl/android/gstglwindow_android_egl.c: glwindow: Fix android build https://bugzilla.gnome.org/show_bug.cgi?id=760972 2016-01-22 13:51:49 +1100 Alessandro Decina * sys/applemedia/videotexturecache.m: applemedia: texture cache: copy the input metas Copy the input metas so avfvideosrc and vtenc can fast path to using CVPixelBuffer(s) even when using GLMemory. 2016-01-21 13:50:44 -0500 Nicolas Dufresne Merge branch 'android-hardware-camera' This branch adds support for Android Hardware Camera API through a new element called ahcsrc. This is the "old" Android Camera API, then only API available on Android 4.X. https://bugzilla.gnome.org/show_buf.cgi?id=737786 2016-01-08 16:16:09 -0500 Nicolas Dufresne * sys/androidmedia/gstahcsrc.c: ahcsrc: Fix latency reporting Currently it was wrongly reporting min/max as being the shortest and longest possible frame duration. This is not how latency works in GStreamer. Fix by reporting min latency as being the longest possible duration of one frame. As we don't know how many buffers the stack can accumulate, we simply assume that max latency is the same (the usual default behaviour). 2015-12-07 14:31:40 +0100 George Kiagiadakis * sys/androidmedia/gstahcsrc.c: ahcsrc: fix deadlock when flushing _data_queue_item_free() calls gst_buffer_unref(), which calls gst_ahc_src_buffer_free_func(), which calls g_mutex_lock() on self->mutex and there you go... deadlock! 2015-12-24 12:51:13 +0900 Justin Kim * sys/androidmedia/Makefile.am: * sys/androidmedia/gst-android-graphics-imageformat.c: * sys/androidmedia/gst-android-graphics-imageformat.h: * sys/androidmedia/gst-android-graphics-surfacetexture.c: * sys/androidmedia/gst-android-graphics-surfacetexture.h: * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-camera.h: * sys/androidmedia/gst-android-media-mediacodec.c: * sys/androidmedia/gst-android-media-mediacodec.h: * sys/androidmedia/gst-android-media-mediacodecinfo.c: * sys/androidmedia/gst-android-media-mediacodecinfo.h: * sys/androidmedia/gst-android-media-mediacodeclist.c: * sys/androidmedia/gst-android-media-mediacodeclist.h: * sys/androidmedia/gst-android-media-mediaformat.c: * sys/androidmedia/gst-android-media-mediaformat.h: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahcsrc.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/org/freedesktop/gstreamer/androidmedia/GstAhcCallback.java: ahcsrc: porting from 0.10 to 1.0 2015-12-24 12:14:24 +0900 Justin Kim * gst-libs/gst/dvm/Makefile.am: * gst-libs/gst/dvm/gstdvm.c: * gst-libs/gst/dvm/gstdvm.h: * pkgconfig/gstreamer-dvm-uninstalled.pc.in: * pkgconfig/gstreamer-dvm.pc.in: * sys/androidcamera/Makefile.am: * sys/androidcamera/com/gstreamer/GstAhcCallback.java: * sys/androidcamera/gstahccallback.h: * sys/androidmedia/gst-android-graphics-imageformat.c: * sys/androidmedia/gst-android-graphics-imageformat.h: * sys/androidmedia/gst-android-graphics-surfacetexture.c: * sys/androidmedia/gst-android-graphics-surfacetexture.h: * sys/androidmedia/gst-android-hardware-camera.c: * sys/androidmedia/gst-android-hardware-camera.h: * sys/androidmedia/gst-androidcamera.c: * sys/androidmedia/gstahcsrc.c: * sys/androidmedia/gstahcsrc.h: move androidcamera into androidmedia This commit is a part of portng android hardware camera from 0.10 implementation. To preserve history and get diff clearly, the interesting files are moved to deployment directory and the remaining files are removed. 2013-01-07 18:27:40 -0500 Youness Alaoui * sys/androidcamera/gst-android-graphics-surfacetexture.c: * sys/androidcamera/gst-android-graphics-surfacetexture.h: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-android-hardware-camera.h: * sys/androidcamera/gstahcsrc.c: androidcamera: Separate release and free APIs 2013-01-07 18:20:47 -0500 Youness Alaoui * sys/androidmedia/gst-android-media-mediacodecinfo.c: androidmedia: Fix get_level and get_profile exception checking by not using return 2013-01-07 18:19:28 -0500 Youness Alaoui * sys/androidmedia/gst-android-media-mediacodec.c: * sys/androidmedia/gst-android-media-mediacodec.h: * sys/androidmedia/gst-android-media-mediacodecinfo.c: androidmedia: Add extern gint declarations 2013-01-07 18:18:18 -0500 Youness Alaoui * gst-libs/gst/dvm/gstdvm.h: gstdvm: Fix GST_DVM_GET_STATIC_FIELD 2012-11-29 20:10:19 -0500 Youness Alaoui * sys/androidcamera/gst-android-hardware-camera.c: androidcamera: Small refactor in case open doesn't throw an exception but returns null 2012-12-13 17:57:58 +0000 Sebastian Dröge * sys/androidcamera/gst-android-hardware-camera.c: androidcamera: Fix some compiler warnings 2012-12-13 17:56:01 +0000 Sebastian Dröge * gst-libs/gst/dvm/Makefile.am: * gst-libs/gst/dvm/gstdvm.c: * gst-libs/gst/dvm/gstdvm.h: * sys/androidcamera/Makefile.am: * sys/androidcamera/gst-android-graphics-imageformat.c: * sys/androidcamera/gst-android-graphics-surfacetexture.c: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-androidcamera.c: * sys/androidcamera/gstahcsrc.c: * sys/androidmedia/gst-android-media-mediacodec.c: * sys/androidmedia/gst-android-media-mediacodecinfo.c: * sys/androidmedia/gst-android-media-mediacodeclist.c: * sys/androidmedia/gst-android-media-mediaformat.c: dvm: Rename gst-dvm.[ch] to gstdvm.[ch] for consistency with other GStreamer code 2012-12-13 17:40:22 +0000 Sebastian Dröge * gst-libs/gst/dvm/gst-dvm.c: * gst-libs/gst/dvm/gst-dvm.h: dvm: Add new function to check if we started a VM or only used an existing one 2012-12-13 17:40:04 +0000 Sebastian Dröge * sys/androidmedia/gst-android-media-mediacodec.c: * sys/androidmedia/gst-android-media-mediacodec.h: androidmedia: Make everything compile with the new wrappers 2012-12-13 12:13:27 +0000 Sebastian Dröge * sys/androidmedia/gst-android-media-mediacodec.c: * sys/androidmedia/gst-android-media-mediacodec.h: * sys/androidmedia/gst-android-media-mediacodecinfo.c: * sys/androidmedia/gst-android-media-mediacodecinfo.h: * sys/androidmedia/gst-android-media-mediacodeclist.c: * sys/androidmedia/gst-android-media-mediacodeclist.h: * sys/androidmedia/gst-android-media-mediaformat.c: * sys/androidmedia/gst-android-media-mediaformat.h: androidmedia: Add remaining bits of the Java wrappers using libgstdvm 2012-12-13 12:13:12 +0000 Sebastian Dröge * gst-libs/gst/dvm/gst-dvm.h: dvm: Add some more helper macros 2012-12-12 18:10:13 +0000 Sebastian Dröge * sys/androidmedia/gst-android-media-mediacodec.c: * sys/androidmedia/gst-android-media-mediaformat.c: androidmedia: Remove g_return_if_fails() This is not public API so it has no advantage to have them here. 2012-11-28 20:53:51 -0500 Youness Alaoui * sys/androidmedia/gst-android-media-mediacodec.c: * sys/androidmedia/gst-android-media-mediacodec.h: * sys/androidmedia/gst-android-media-mediaformat.c: * sys/androidmedia/gst-android-media-mediaformat.h: androidmedia: Use gst-dvm and refactor java wrappers (WIP) Moved the java wrapper API into its own files and made use of the gst-dvm macros. Also renamed the API to have the proper naming convention and coding style in order to match the one in androidcamera. This is a work in progress! "android/media/MediaCodecList" is still missing and the actual elements have not been ported to use the new function names. 2012-11-28 15:26:49 -0500 Youness Alaoui * sys/androidcamera/gst-android-graphics-imageformat.h: * sys/androidcamera/gst-android-graphics-surfacetexture.h: * sys/androidcamera/gst-android-hardware-camera.h: androidcamera: Add G_BEGIN/END_DECLS to the .h 2012-11-27 19:25:06 -0500 Youness Alaoui * gst-libs/gst/dvm/Makefile.am: * gst-libs/gst/dvm/gst-dvm.c: * gst-libs/gst/dvm/gst-dvm.h: * pkgconfig/gstreamer-dvm-uninstalled.pc.in: * pkgconfig/gstreamer-dvm.pc.in: * sys/androidcamera/Makefile.am: * sys/androidcamera/gst-android-graphics-imageformat.c: * sys/androidcamera/gst-android-graphics-surfacetexture.c: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-androidcamera.c: * sys/androidcamera/gstahcsrc.c: gst-dvm: Create a gst-dvm library using part of androidcamera 2012-11-27 17:24:35 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Adding a device-name property 2012-11-20 19:56:22 -0500 Youness Alaoui * docs/plugins/inspect/plugin-androidcamera.xml: * sys/androidcamera/gstahcsrc.c: * sys/androidcamera/gstahcsrc.h: androidcamera: Add element documentation 2012-11-19 18:25:12 -0500 Youness Alaoui * sys/androidcamera/Makefile.am: androidcamera: Prettify the gstahccallback.c generation line in the makefile 2012-11-15 12:33:26 -0500 Youness Alaoui * sys/androidcamera/gst-android-hardware-camera.c: androicamera: Make sure the TMP env var exists and check for DEX var too 2012-11-14 11:38:51 -0500 Youness Alaoui * sys/androidcamera/gst-android-hardware-camera.c: androidcamera: Do not use gst_list_free_full since it requires glib 2.28 2012-11-12 18:59:57 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: * sys/androidcamera/gstahcsrc.h: androidcamera: Add smooth-zoom property for smooth zooming feature 2012-11-12 18:19:20 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Add focal-length, view-angle and video-stabilization properties 2012-11-12 18:18:11 -0500 Youness Alaoui * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-android-hardware-camera.h: androidcamera: Add video stabilization API 2012-11-12 16:38:40 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Add property probe for the photography properties 2012-11-09 18:21:21 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Small refactor 2012-11-09 16:57:30 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Fix small memleak 2012-11-09 16:55:57 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Store GParamSpec for properties and use that for the PropertyProbe comparison 2012-11-09 12:23:37 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Handle zoom comparison better, and avoid float precision issue 2012-11-09 12:22:12 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Fix EV compensation support 2012-11-07 19:16:05 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Implement new GstPhotography enums 2012-11-07 15:38:19 -0500 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Do not advertise zoom capabilities if camera doesn't support zoom 2012-11-07 15:37:43 -0500 Youness Alaoui * sys/androidcamera/gst-android-hardware-camera.c: androidcamera: Be NULL-safe when a JNI list is returned 2012-11-02 18:07:24 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Use strcmp on the GParamSpec property name Use strcmp instead of using the property_id because it's overriden 2012-11-02 18:00:55 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidmedia: Implement property probe for zoom and ev_compensation 2012-11-02 17:00:45 -0400 Youness Alaoui * sys/androidcamera/com/gstreamer/GstAhcCallback.java: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-android-hardware-camera.h: * sys/androidcamera/gstahcsrc.c: androidcamera: Add autofocus support 2012-11-02 16:59:42 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Override properties 2012-11-01 15:24:12 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: anroidcamera: Add support for the GstPhotography interface 2012-11-01 11:58:33 -0400 Youness Alaoui * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-android-hardware-camera.h: androidcamera: Add more wrappers for the Camera.Parameters class 2012-10-31 14:21:47 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Send proper error when unable to open camera 2012-10-30 12:13:12 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Adding device-orientation and device-facing properties 2012-10-30 11:35:36 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: * sys/androidcamera/gstahcsrc.h: androidcamera: Add device property and property probe it 2012-10-30 10:12:06 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Fix memleak and lose of buffer if the data queue is flushing 2012-10-30 09:49:39 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Calling set_preview_callback with NULL frees all the buffers in the queue. We must not do it at the stop otherwise we lose all our buffers. It's best to do it during the close, so we free up the resources. 2012-10-30 09:49:03 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Drop frames if we don't have a clock and var rename 2012-10-30 09:45:55 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androicamera: if buffer size increases, then readd new buffers to the queue and drop old ones The on_preview callback gets called with NULL if the buffer in the queue is too small, so we need to handle the case where the array is NULL. Also there is a bug in the android source which makes it drop one of the buffers so if we had 5 buffers, and we renegotiate to a higher resolution, then we'd only get 4 calls to on_preview_frame with NULL, with one being dropped. This means we can't reallocate the buffers in the if (data == NULL) case because we might end up with 0 buffers in the end. 2012-10-30 09:44:31 -0400 Youness Alaoui * sys/androidcamera/gst-android-hardware-camera.c: androidcamera: If callback is NULL then set it to NULL in jni 2016-01-21 13:46:52 -0500 Nicolas Dufresne * sys/androidcamera/gstahcsrc.c: androidcamera: Fix debug output 2012-10-26 12:57:50 +0200 Sebastian Dröge * sys/androidcamera/gstahcsrc.c: androidcamera: Chose the smallest range that contains the target framerate 2012-10-26 12:43:09 +0200 Sebastian Dröge * sys/androidcamera/gstahcsrc.c: androidcamera: Improve negotiation And make sure we set an FPS range from the supported ones now instead of a potentially unsupported range. 2012-10-26 12:19:55 +0200 Sebastian Dröge * sys/androidcamera/gstahcsrc.c: androidcamera: Implement LATENCY query 2012-10-26 11:57:47 +0200 Sebastian Dröge * sys/androidcamera/gstahcsrc.c: androidcamera: Make sure we always have a valid camera source instance in the buffer free function 2012-10-26 11:46:23 +0200 Sebastian Dröge * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gstahcsrc.c: androidcamera: Make sure to not call any callbacks after stopping the camera Fixes segfaults when rotating the device for example. 2012-10-24 15:25:54 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidcamera: Fix timestamping issue 2012-10-24 13:59:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: * sys/androidcamera/gstahcsrc.h: androidcamera: Add caps negotiation support 2012-10-24 10:55:52 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: Add support for getcaps that probes the camera for capabilities 2012-10-23 13:54:46 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidmedia: Drop the first buffer to have proper timestamping 2012-10-23 11:14:00 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidmedia: Flush the queue when the source is stopped 2012-10-23 11:13:37 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidmedia: Allocate/free texture when camera is open/closed 2012-10-23 11:13:12 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidmedia: add a gst_ahc_src_close function 2012-10-23 11:12:19 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: androidmedia: Fix small indentation issues 2012-10-23 10:12:52 -0400 Youness Alaoui * sys/androidcamera/Makefile.am: androidmedia: Disable plugin if android-sdk isn't found and dynamically search for platform version 2012-10-23 09:01:50 -0400 Youness Alaoui * sys/androidcamera/Makefile.am: * sys/androidcamera/com/gstreamer/GstAhcCallback.java: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gstahccallback.h: androidcamera: Add support for using DexLoader with Embeded GstAhcCallback.jar 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gst-android-graphics-imageformat.c: * sys/androidcamera/gst-android-graphics-surfacetexture.c: * sys/androidcamera/gst-android-hardware-camera.c: androidcamera: Fix compilation issues 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/Makefile.am: * sys/androidcamera/gst-androidcamera.c: Remove previous cruft and create androidcamera plugin 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: Free the buffers and readd the arrays when the queue is cleared 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gst-android-graphics-imageformat.c: * sys/androidcamera/gst-android-graphics-surfacetexture.c: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-dvm.h: Add a GST_DVM_CALL macro to ease function calling with exception check 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: * sys/androidcamera/gstahcsrc.h: Calculate timestamp at reception of the buffer, not when pushing it out 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: Make the number of callback buffers configurable, and delete their local ref 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: * sys/androidcamera/gstahcsrc.h: Use GstDataQueue instead of GAsyncQueue for storing buffers 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: Use the buffer's free_func to map byteArray data without making a copy 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: Remove open failure test code and debug log 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gstahcsrc.c: Use YV12 as the default format 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gst-android-graphics-imageformat.c: * sys/androidcamera/gst-android-graphics-imageformat.h: * sys/androidcamera/gst-android-graphics-surfacetexture.c: * sys/androidcamera/gst-android-graphics-surfacetexture.h: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-android-hardware-camera.h: * sys/androidcamera/gst-androidmedia.c: Add a deinit function and remove jclass references in case of error 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/gst-android-graphics-surfacetexture.c: SurfaceTexture constructure needs texture_id 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/Makefile.am: * sys/androidcamera/gst-androidmedia.c: * sys/androidcamera/gstahcsrc.c: * sys/androidcamera/gstahcsrc.h: Add ahcsrc Camera source element prototype 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/Makefile.am: * sys/androidcamera/gst-android-graphics-imageformat.c: * sys/androidcamera/gst-android-graphics-imageformat.h: * sys/androidcamera/gst-android-graphics-surfacetexture.c: * sys/androidcamera/gst-android-graphics-surfacetexture.h: * sys/androidcamera/gst-android-hardware-camera.c: * sys/androidcamera/gst-android-hardware-camera.h: Add android.hardware.Camera (and deps) JNI wrappers 2012-10-17 19:42:59 -0400 Youness Alaoui * sys/androidcamera/Makefile.am: * sys/androidcamera/gst-dvm.c: * sys/androidcamera/gst-dvm.h: Adding Dalvik Virtual Machine routines and macros 2012-10-17 17:56:33 -0400 Youness Alaoui * sys/androidcamera/Makefile.am: * sys/androidcamera/gst-androidmedia.c: androidmedia: Add androidmedia plugin 2016-01-15 14:31:54 +0100 Sebastian Dröge * ext/spandsp/Makefile.am: * ext/spandsp/gstspandsp.c: * ext/spandsp/gsttonegeneratesrc.c: * ext/spandsp/gsttonegeneratesrc.h: spandsp: Add tone generator 2015-07-14 13:40:46 +0900 Hyunjun Ko * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: set non-0 payload length in PES header if video ES packet is small enough https://bugzilla.gnome.org/show_bug.cgi?id=748507 2015-07-14 13:42:54 +0900 Hyunjun Ko * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: reset pes_bytes_written when starting to write new PES packet In case of an unbounded packet (video usually), pes_bytes_written was no reset. https://bugzilla.gnome.org/show_bug.cgi?id=748507 2016-01-19 17:08:50 +0000 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: add support for H.265/HEVC video https://bugzilla.gnome.org/show_bug.cgi?id=744367 2016-01-19 13:20:23 +0000 Tim-Philipp Müller * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectscurves.c: * ext/gl/effects/gstgleffectscurves.h: gl: fix compiler warnings with gcc-6 In file included from effects/gstgleffectrgbtocurve.c:25:0: effects/gstgleffectscurves.h:174:32: error: 'xray_curve' defined but not used static const GstGLEffectsCurve xray_curve = { ... 2016-01-19 08:39:58 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/player/Makefile.am: libs: g-i: fix init section to avoid compiler warnings ..GstPlayer-1.0.c: In function ‘main’: ..GstPlayer-1.0.c:587:3: warning: implicit declaration of function ‘gst_init’ https://bugzilla.gnome.org/show_bug.cgi?id=760090 2016-01-19 19:18:43 +1100 Alessandro Decina * sys/applemedia/vtenc.c: applemedia: vtenc: fix build on iOS 2016-01-19 15:50:22 +1100 Alessandro Decina * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.m: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: always fill GstBuffers with GstMemory Always fill buffers with our custom memory. The custom memory will avoid mapping CV/CM buffers unless necessary. 2015-04-19 00:30:48 +0300 Ilya Konstantinov * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: applemedia: implement copying of meta Before this, buffers would lose their Core Video / Core Media meta over intervideo* boundary. https://bugzilla.gnome.org/show_bug.cgi?id=747216 2015-04-02 20:04:18 +0300 Ilya Konstantinov * sys/applemedia/Makefile.am: * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/corevideomemory.c: * sys/applemedia/corevideomemory.h: * sys/applemedia/plugin.m: applemedia: implement GstAppleCoreVideoMemory Implement a new memory type wrapping CVPixelBuffer. There are two immediate advantages: a) Make the GstMemory itself retain the CVPixelBuffer. Previously, the containing GstBuffer was solely responsible for the lifetime of the backing CVPixelBuffer. With this change, we remove the GST_MEMORY_FLAG_NO_SHARE so that GstMemory objects be referenced by multiple GstBuffers (doing away with the need to copy.) b) Delay locking CVPixelBuffer into CPU memory until it's actually mapped -- possibly never. The CVPixelBuffer object is shared among references, shares and (in planar formats) planes, so a wrapper GstAppleCoreVideoPixelBuffer structure was introduced to manage locking. https://bugzilla.gnome.org/show_bug.cgi?id=747216 2016-01-19 12:56:40 +1100 Alessandro Decina * sys/applemedia/iosurfacememory.c: applemedia: iosurfacememory: alloc with g_new0 ...since the base class doesn't use g_slice anymore 2016-01-08 11:04:13 +0000 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: added check that availabilityStartTime is present for live streams https://bugzilla.gnome.org/show_bug.cgi?id=757602 2015-11-04 18:15:24 +0000 Florin Apostol * ext/dash/gstmpdparser.c: adaptivedemux: improved error message if availabilityStartTime is missing for a live stream For a live mpd, if availabilityStartTime is missing, adaptive demux asserts with: Unexpected critical/warning: gst_date_time_to_g_date_time: assertion 'datetime != NULL' failed. This patch improves the error message to: Unexpected critical/warning: gst_mpd_client_seek_to_time: assertion 'client->mpd_node->availabilityStartTime != NULL' failed https://bugzilla.gnome.org/show_bug.cgi?id=757602 2016-01-14 18:27:50 +0000 Florin Apostol * tests/check/elements/test_http_src.c: tests: adaptive-stremaing: fix memory leak in test_http_src https://bugzilla.gnome.org/show_bug.cgi?id=760600 2016-01-15 10:49:12 -0500 Matt Crane * sys/shm/gstshmsink.c: shmsink: fix possible deadlock in _render()/ _allocator_free() Drop object lock before unrefing memory, otherwise the object lock might be taken again from the allocator and then things deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=760551 2016-01-16 17:14:54 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglfilter.c: glfilter: First make caps writable in fixate_caps(), then truncate them Truncating requires writable caps. 2016-01-16 17:12:29 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Caps passed to fixate_caps() are not owned by us and guaranteed to be fixed So don't try to fixate them, which takes ownership and steals them from basetransform. https://bugzilla.gnome.org/show_bug.cgi?id=760696 2016-01-16 16:55:42 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglbufferpool.c: Revert "glpool: fix caps refcount issue" This reverts commit 3bdcdedfa00b87f1db505218789178318a16c743. gst_caps_replace() takes a new reference already, if there is a problem then it is elsewhere. And there are a few problems, see https://bugzilla.gnome.org/show_bug.cgi?id=760696 2016-01-15 16:10:02 +0000 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: fix unneeded sub-buffer creation We create a sub-buffer just to copy over its metas and then throw it away immediately, just use the original input buffer directly. 2016-01-15 15:56:59 +0000 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: rtph265pay: add "send VPS/SPS/PPS with every key frame" mode It's not enough to have timeout or event based VPS/SPS/PPS information sent in RTP packets. There are some scenarios when key frames may appear more frequently than once a second, in which case the minimum timeout for "config-interval" of 1 second for sending VPS/SPS/PPS isn't enough. It might also be desirable in general to make sure the VPS/SPS/PPS is available with every keyframe (packet loss aside), so receivers can actually pick up decoding immediately from the first keyframe if VPS/SPS/PPS is not signaled out of band. This commit adds the possibility to send VPS/SPS/PPS with every key frame. This mode can be enabled by setting "config-interval" property to -1. In this case the payloader will add VPS, SPS and PPS before every key (IDR) frame. https://bugzilla.gnome.org/show_bug.cgi?id=757892 2016-01-15 15:19:41 +0000 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: * gst/rtp/gstrtph265pay.h: rtph265pay: change config-interval property type from uint to int This way we can use -1 as special value, which is nicer than MAXUINT. https://bugzilla.gnome.org/show_bug.cgi?id=757892 2016-01-13 09:51:20 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/hls/gsthlsdemux.c: * ext/smoothstreaming/gstmssdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: adaptivedemux: replace ghostpad with a standard pad Handling the ghostpad and its internal pad was causing more issues than helping because of their coupled activation/deactivation actions. As we have to install custom chain,event and query functions it is better to use a floating sink pad internally in the demuxer and just use those pad functions to push through a standard pad in the demuxer https://bugzilla.gnome.org/show_bug.cgi?id=757951 2015-11-11 17:24:33 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: do not flush the input pad gst_adaptive_demux_stream_clear_eos_and_flush_state() function will do all the necessary cleaning. https://bugzilla.gnome.org/show_bug.cgi?id=757951 2016-01-15 11:44:52 +0000 Luis de Bethencourt * gst/segmentclip/gstvideosegmentclip.c: videosegmentclip: fail to set_caps if problem in caps structure gst_video_segment_clip_set_caps () should return FALSE if there was a problem reading the framerate values from the caps structure. 2016-01-15 17:00:55 +1100 Matthew Waters * gst-libs/gst/gl/gstglquery.c: glquery: provide compat definition for GL_QUERY_RESULT e.g. android doesn't have it While we're here move a state specific assertion after the supported check. Removes an assertion on GLES 2016-01-15 16:07:27 +1100 Matthew Waters * configure.ac: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: gl: add compatibility definition of GLint64 e.g. anrdoid doesn't have it 2016-01-08 22:19:06 +0300 Sergey Borovkov * ext/qt/qtitem.cc: qml: Mark material dirty when texture buffer is updated Qt might not redraw the scene otherwise. https://bugzilla.gnome.org/show_bug.cgi?id=758286 2016-01-15 14:00:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: glpool: fix caps refcount issue The caps are from an allocation query which are transfer none but were being treated as transfer full. 2016-01-11 13:30:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglmemory.c: glmemory: log the time for glTexSubImage/glReadPixels 2016-01-08 18:36:54 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/query.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglquery.c: * gst-libs/gst/gl/gstglquery.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglquery.c: gl: add a gstglquery object for arbitrary GL queries Currently only GL_TIME_ELAPSED and GL_TIMESTAMP are supported 2016-01-11 17:22:26 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: gldebug: implement a delayed debug system The messages are stored by gst_gl_async_debug_store_log_msg() and output later by a corresponding store(), output() or an unset()/free(). Some wrapper macros are provided to avoid callers explicitly using __FILE__, GST_FUNCTION and __LINE__ 2016-01-11 17:26:08 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: gldebug: use gst_info_vasprintf in insert_debug_marker() Allows expansion of GST_PTR_FORMAT and GST_SEGMENT_FORMAT arguments. 2016-01-15 11:22:40 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglvideoflip.c: * ext/gl/gstglvideoflip.h: * ext/gl/gstopengl.c: gl: add a videoflip element Behaves exactly the same as the non-GL videoflip element 2016-01-15 00:04:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: recreate the fbo on caps changes The width/height may change which requires recreating the depth buffer. 2016-01-15 00:02:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: glbasefilter: add a class function on set_caps (from GL) This is simply a convenience to avoid duplicating the thread marshalling on set_caps. 2016-01-15 00:00:29 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: always build a valid mvp matrix The default case is to build an identity matrix. 2016-01-14 19:03:04 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: support negative scales A scale of -1.0 means to flip the video. 2016-01-14 18:42:05 +1100 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: implement passthrough handling 2016-01-14 17:45:03 +1100 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: implement navigation events Reverses the transformation applied through the properties and forwards the event. The process for finding the coordinates on the video are as follows: 1. Convert the given pointer_x and pointer_y to model space at the near and far planes 2. Get the equation of the video plane 3. Find where the ray in 1 intersects the plane 4. Profit! 2016-01-14 16:59:12 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: remove reduntant glimagesink from debug logging 2016-01-14 16:57:40 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11/navigation: add button press to the selected event mask Otherwise we won't get the button press events and GstNavigation fails. 2016-01-14 16:00:00 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: try harder to passthrough This makes a pipeline like: ... ! video/x-raw(memory:GLMemory),format=UYVY ! glcolorconvert ! video/x-raw(memory:GLMemory),format={UYVY, NV12} ! ... passthrough instead of converting UYVY => NV12. The conversion would happen before this change since the element (and basetransform) transform the src caps to format={NV12, UYVY} (since NV12 comes first in the glcolorconvert:src template) and then the default caps fixate func would fixate to NV12. Blah. Also there's no need to intersect against the template caps in ::transform_caps since basetransform does that right after calling the vfunc. 2016-01-12 18:31:29 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglcolorbalance.c: * ext/gl/gstglcolorbalance.h: * ext/gl/gstopengl.c: gl: implement a colorbalance element It performs the exact same operation as videobalance but with opengl shaders and was tested with glvideomixer by comparing frames from videobalance and glcolorbalance. 2016-01-12 18:21:50 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: implement glBlendFunc and glBlendEquation Allows more blending options than just A over B e.g. frame comparisons are now possible. glvideomixer name=m sink_0::zorder=0 sink_1::zorder=1 sink_1::blend-equation-rgb={subtract,reverse-subtract} sink_1::blend-function-src-rgb=src-color sink_1::blend-function-dst-rgb=dst-color ! glimagesinkelement videotestsrc pattern=checkers-4 ! m.sink_0 videotestsrc pattern=checkers-8 ! m.sink_1 2016-01-08 18:38:46 +1100 Matthew Waters * gst-libs/gst/gl/gstgldebug.c: gldebug: add a specific category for the debug spam from the driver 2016-01-12 14:54:23 +0000 Tim Sheridan * ext/sbc/gstsbcdec.c: sbc: sbcdec: Fix frame length calculation SBC frame length calculation wasn't being rounded up to the nearest byte (as specified in the A2DP 1.0 specification, section 12.9). This could cause 'stereo' and 'joint stereo' mode SBC streams to have incorrectly calculated frame lengths. https://bugzilla.gnome.org/show_bug.cgi?id=742446 2016-01-12 23:34:31 +1100 Matthew Waters * sys/nvenc/gstnvbaseenc.c: nvenc: update for recent GL api changes Specifically the GstGLMemoryPBO addition (which was the unadorned GstGLMemory). 2016-01-12 14:36:02 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: optionally get the GL context from gst_element_set_context Allow setting the GL context with gst_element_set_context. When available, the local context obtained via the context query still has the precedence. 2016-01-12 14:02:46 +1100 Alessandro Decina * sys/applemedia/iosurfacememory.c: applemedia: iosurfacememory: remove NO_SHARE flag The full memory can be safely shared. Sharing a sub region can't be done and will fail in the base allocator, triggering a copy. 2016-01-11 13:33:46 -0300 Thiago Santos * gst/frei0r/gstfrei0rmixer.c: frei0rmixer: replace accept-caps with caps query It wants to check if upstream can produce a certain format, accept-caps might only check if the next element can produce it. 2016-01-07 20:56:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglmemorypbo.c: glbasememory: Free the actual memory object when requested Otherwise we are leaking ~400B on each GstMemory allocation. Freeing in the base class matches the GObject semantics. 2016-01-07 20:54:41 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: don't double read pixels The optimistic download_transfer was not setting the required flag to not perform glReadPixels on subsequent map (READ). resulting in glReadPixels happening twice. 2016-01-07 18:47:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: glmemory: expose gst_gl_memory_texsubimage Removes extremely similar code from glmemorypbo. 2016-01-07 18:05:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglfeature.c: glfeature add a specific debug category Saves having to trawl through the 'default' category when function retrieval goes wrong. 2016-01-05 14:35:11 -0500 Bob Holcomb * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: fix reserve bits so they are 1's The MPEG standard (ISO-13880-1) says the reserve bits need to be set to one (2.1.64). This is causing transport streams to fail validation on some systems. https://bugzilla.gnome.org/show_bug.cgi?id=760127 2016-01-08 17:11:09 +0000 Luis de Bethencourt * ext/opencv/gstpyramidsegment.h: opencv: remove check for OpenCV version After commit 64080e632, configure checks for all the header files that should be available in OpenCV 2.3 and later. If any of these files isn't there the OpenCV elements won't be part of the build. No need to recheck for opencv2/legacy/legacy.hpp again in gstpyramidsegment.h. Minimum supported OpenCV version must have this header and configure already checks for it. Removing check. 2016-01-08 15:01:47 +0000 Luis de Bethencourt * ext/opencv/gstcvsmooth.cpp: opencv: always do cvsmooth in place After the update to new OpenCV API the transform function using an out buffer is not necessary. We can always do the transformation in place. 2016-01-08 12:39:29 +0000 Luis de Bethencourt * ext/opencv/gstpyramidsegment.cpp: * ext/opencv/gstpyramidsegment.h: opencv: do pyramidsegment's transformation in place Run the transform function of pyramidsegment in place, reusing the image data as both source and destination in cvPyrSegmentation. This avoids copying the image back and forth and the extra memory. 2016-01-07 15:21:40 -0300 Thiago Santos * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/hls_demux.c: tests: hlsdemux: add test for updating segment stop Add a test for seeking that only updates stop position and verifies that start is unmodified 2016-01-07 15:21:22 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix seeking that just updates stop position Fixed adaptivedemux seeking without flushing that just wants to update stop position. This required protecting the segment variables with a new mutex so that the seeking thread and the download threads could safely manipulate the segment and events related to it. This contention is only locked/unlocked when starting a new download, when the first fragment of a segment is received and when seeking so, hopefully, it won't damage performance. 2016-01-06 16:51:08 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix segment update on seeks Fixes typo on reverse rate check and also only update the position when the start/stop was actually changed. 2016-01-07 18:10:49 +0200 Sebastian Dröge * gst/mxf/mxftypes.c: mxftypes: Don't store pointers in stack allocated guints This works usually in this place, unless the compiler optimizes things in interesting ways in which case it causes stack corruption and crashes later. The compiler in question here is clang with -O1, which seems to pack the stack a bit more and causes writing to the guint as pointer to overwrite map.memory, which then later crashes during unmapping of the memory. 2016-01-07 18:02:33 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Initialize boolean to FALSE to fix valgrind warning Seems to be a false warning though. 2016-01-07 14:08:39 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: only flush with a shared context The wait code will flush for us for single context pipelines. 2016-01-07 14:02:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * tests/check/libs/gstglcontext.c: glcontext: implement checking whether a context has been shared Some operations are unnecessary when running with only a single GL context. e.g. glFlush when setting a fence object as the flush happens on wait. API: gst_gl_context_is_shared 2016-01-06 14:54:30 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: hlsdemux: put boolean values into gboolean variables And remove superfluous assignments. 2016-01-06 16:54:49 +0200 Sebastian Dröge * gst-libs/gst/player/gstplayer.c: player: Only set the pipeline to PLAYING in play() if buffering>=100% Otherwise the application can break the buffering logic by setting the pipeline to PLAYING before we buffered enough. 2016-01-05 17:41:23 -0300 Thiago Santos * tests/check/elements/dash_demux.c: tests: dashdemux: add tests for post-seek segment boundaries check Checks if the post seek segment is what is expected. Also makes it easy to add more tests with different seeking flags using the same functions. 2016-01-05 10:41:27 -0300 Thiago Santos * tests/check/elements/hls_demux.c: tests: hlsdemux: add tests for seek with reverse rate and snap flags Add tests to ensure snap flags work as expected for reverse rates 2016-01-05 10:39:11 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: stop reverse playback when we reach the limit Avoids downloading and pushing a full segment just to get 1 nanosecond of data. This happens frequently when seeking is done with flags that adjust to boundaries or when the start is aligned with segment starts. The later is common when segment durations is a multiple of a second. 2016-01-05 09:16:45 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: fix reverse playback seek with snap flags Properly handle snap flags during reverse seeking. In this case the before/after are also reversed, so handle those as such. For example: with a sequence of 1s fragments: |-- 0 --|-- 1 --|-- 2 --|-- 3 --| If you seek to 1.5s it is inside fragment 1. With reverse and snap-before: should play from the end of fragment 1 snap-after: should play from the end of fragment 0 2016-01-05 09:01:10 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: correctly track segment.position in reverse playback For reverse, set position to segment.stop when starting and also don't set the position to fragment end timestamp when it finishes, just leave it at the fragment start. 2016-01-05 08:59:26 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: simplify snap flags checking Replace: if (boolean) var = true; with: var = (boolean); 2015-12-28 02:18:06 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: respect keyunit flag for position Set the segment start position when keyunit flag is active 2015-12-24 18:49:39 -0300 Thiago Santos * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/hls_demux.c: tests: hls_demux: add tests for seeking segment Tests that check that the segment sent after a seek is correct. Allows testing that multiple seeking flags work as expected 2015-12-24 09:27:33 -0300 Thiago Santos * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: tests: adaptive_demux: add function to be able to check demuxer events Allows writing tests that verify that events are correct. Useful to monitor and check segments after seeks, for example. 2015-12-23 15:25:29 -0300 Thiago Santos * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: * tests/check/elements/dash_demux.c: * tests/check/elements/hls_demux.c: tests: adaptive: update to allow more flexible seeking tests Allows defining a seek event to be able to change seeking parameters and create more seeking test scenarios 2015-12-23 15:23:27 -0300 Thiago Santos * tests/check/Makefile.am: tests: hlsdemux: fix makefile variable typo 2016-01-06 16:50:00 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: enable renegotiation We can actually renegotiate now, so remove old check which disabled it. 2016-01-06 16:25:38 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: implement usage of a buffer pool Saves unnecessary glGenTextures and glDeleteTextures which may have a non-trivial cost. 2016-01-06 15:50:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: glbasememory: fix copying GstGLAllocationParams Fixes a GST_IS_GL_CONTEXT critical 2016-01-06 15:44:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: remove unused code https://bugzilla.gnome.org/show_bug.cgi?id=759679 2016-01-06 13:20:17 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: small negotiation fix Fix negotiation when GLMemory is requested but a context is not available 2016-01-06 11:40:38 +1100 Alessandro Decina * sys/applemedia/vtenc.c: applemedia: vtenc: accept UYVY on Mac When doing GLMemory avfvideosrc negotiates UYVY. This change allows avfvideosrc ! tee name=t ! ... ! glimagesink t. ! ... ! gldownload ! vtenc_h264 ! ... to do GLMemory and 0-copy with the encoder (with the CV meta). 2016-01-06 11:29:15 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: change texture format from BGRA to NV12 on iOS Change texture format from BGRA to NV12. This allows a pipeline like avfvideosrc ! tee name=t ! ... ! glimagesink t. ! ... ! gldownload ! vtenc_h264 ! ... to negotiate GLMemory. This makes the glimagesink branch much faster (obviously) and triggers the 0-copy path between avfvideosrc and vtenc (using the CV meta). Combined this results in a huge perf improvement on iOS (25-30% of CPU time in a pipeline like the one above). Note that this doesn't introduce a new shader conversion in the sink, since BGRA textures had to be copied/converted from format=BGRA,texture-target=RECTANGLE to format=RGBA,texture-target=2D anyway. 2016-01-04 20:26:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glupload: always add texture-target field to GL caps 1. Various elements/base classes only perform a subset check on accept-caps 2. Some GL elements have texture-target in their pad template 3. When checking subsets, only the caps to check are allowed to contain extra fields. If the 'template' caps have extra fields, the subset fails. Thus without texture-target on the caps, various accept-caps implementations were failing. Also, add some convenience functions for setting and retrieving texture targets to/from GValue. https://bugzilla.gnome.org/show_bug.cgi?id=759860 2015-12-29 18:16:04 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: passthrough composition caps features Don't unconditionally add it to any and all caps transformations. https://bugzilla.gnome.org/show_bug.cgi?id=759860 2016-01-04 09:52:47 +0200 Sebastian Dröge * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * tests/check/libs/player.c: * win32/common/libgstplayer.def: player: Remove gst_player_new() and make gst_player_new_full() the normal constructor In very few cases the simple version was actually needed and having the parameters hidden by a _full() version caused application that actually needed it to not use it. 2016-01-04 01:03:08 +1100 Jan Schmidt * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: Fix stereoscopic handling w/ texture-target The addition of texture-target negotiation broke stereoscopic handling when not in passthrough mode, so fix that. 2015-10-07 18:53:43 +0900 Hyunjun Ko * gst/sdp/gstsdpdemux.c: sdpdemux: replace duplicated codes to call new base sdp apis https://bugzilla.gnome.org/show_bug.cgi?id=745880 2015-12-30 18:00:47 -0800 Reynaldo H. Verdejo Pinochet * ext/rtmp/README: rtmp: refer to both elements in the README 2015-12-29 14:35:14 -0800 Reynaldo H. Verdejo Pinochet * ext/rtmp/gstrtmpsrc.c: rtmpsrc: check for failed RTMP context alloc Avoids an unlikely crash. Arguably, if allocation fails we have no chance of recovering but nonetheless, RTMP_Alloc can fail and librtmp's RTMP_init() (called next) assumes a non-NULL pointer is passed without checking. Additionally, unify exit path on error. 2015-12-29 14:16:58 -0800 Reynaldo H. Verdejo Pinochet * ext/rtmp/gstrtmpsink.c: rtmpsink: check for failed RTMP context alloc Avoids an unlikely crash. Arguably, if allocation fails we have no chance of recovering but nonetheless, RTMP_Alloc can fail and librtmp's RTMP_init() (called next) assumes a non-NULL pointer is passed without checking. Additionally, unify exit path on error. 2015-12-29 11:58:31 -0800 Reynaldo H. Verdejo Pinochet * ext/rtmp/gstrtmp.c: rtmp: correct librtmp log-level mappings Additionally, move to a switch in _set_debug_level() to make easier to follow and compare with the mappings in _log_callback() 2015-12-30 13:16:40 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstvp9parser.c: codecparsers: vp9: minor clean-up Remove setting of parser variable to NULL after free, that makes no sense (and coverity is no doubt going to complain about it). 2015-12-30 13:12:13 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/gstvp9parser.h: codecparsers: vp9: fix macro namespacing and rename GstVp9InterpFilter 2015-12-30 13:08:30 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/gstvp9parser.h: codecparsers: vp9: fix doc typos and sprinkle some Since markers 2015-12-30 11:03:04 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/vp9utils.AUTHORS: * gst-libs/gst/codecparsers/vp9utils.LICENSE: * gst-libs/gst/codecparsers/vp9utils.PATENTS: * gst-libs/gst/codecparsers/vp9utils.c: * gst-libs/gst/codecparsers/vp9utils.h: codecparsers: vp9: move license blurb into header and remove aux files This is just a bunch of lookup tables.. 2015-12-30 11:54:25 +0200 Sebastian Dröge * win32/common/libgstcodecparsers.def: win32: Update libgstcodecparsers.def with the new symbols 2015-12-30 11:54:14 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/dboolhuff.h: codecparsers: Add another G_GNUC_INTERNAL 2015-12-30 11:40:59 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/dboolhuff.h: * gst-libs/gst/codecparsers/nalutils.h: * gst-libs/gst/codecparsers/parserutils.h: * gst-libs/gst/codecparsers/vp8utils.h: * gst-libs/gst/codecparsers/vp9utils.h: codecparsers: Spread some G_GNUC_INTERNAL in various places 2015-12-30 11:38:14 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/vp9utils.c: vp9parser: Fix indentation to make gst-indent happier 2015-12-30 11:36:45 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/vp9utils.c: * gst-libs/gst/codecparsers/vp9utils.h: vp9parser: Rename symbols to prevent symbol conflicts Also make clamp() a static function for the same reason and use CLAMP (as defined by GLib) in the GStreamer code. 2015-12-30 11:19:33 +0200 Sreerenj Balachandran * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstvp9parser.c: * gst-libs/gst/codecparsers/gstvp9parser.h: * gst-libs/gst/codecparsers/vp9utils.AUTHORS: * gst-libs/gst/codecparsers/vp9utils.LICENSE: * gst-libs/gst/codecparsers/vp9utils.PATENTS: * gst-libs/gst/codecparsers/vp9utils.c: * gst-libs/gst/codecparsers/vp9utils.h: codecparsers: Add VP9 codec parser https://bugzilla.gnome.org/show_bug.cgi?id=757597 2015-12-30 12:12:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: fix wrapping data on GL 2.1 GL 2.1 only supports pbo upload. The wrapped data pointer was only being set on the pbo memory and on the glmemory so when a download was requested (in GL 2.1), glmemory was allocating a new data pointer and thus not returning the wrapped data. 2015-12-30 12:11:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: only create a pbo memory if the context actually supports it e.g. GL <= 2.0 does not support pbo usage and GL 2.1 only supports pbo upload. 2015-12-30 12:09:29 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemorypbo.c: glmemory: small code reformat makes the alloc_params selections fit on a single line. 2015-12-30 12:06:17 +1100 Matthew Waters * tests/check/libs/gstglmemory.c: tests/glmemory: output data pointer values on failure Allows quicker inspection of what failed. 2015-12-29 17:04:57 +1100 Matthew Waters * ext/gl/gstgleffects.c: gleffects: fix shader compilation with legacy opengl All the gleffects shaders can be run against a gles2 or a legacy opengl glsl compiler but weren't being advertised as such. Fixes gleffects under desktop opengl < 3.2. 2015-12-29 18:01:30 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglbasememory.c: glbasememory: Remove bogus NULL check CID 1346534 2015-12-29 10:57:36 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: output at highest fps/resolution by default Fixate to the highest possible resolution and fps. Otherwise by default we end up fixating at 2fps and the lowest supported resolution, which is hardly what someone who bought an overpriced smartphone wants. 2015-12-28 15:53:59 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/sync.h: gl: Add \0 terminators for the Apple sync extension Otherwise GL initialization might check for extensions forever and never finishes. 2015-12-28 14:41:59 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Add some debug output when the GL thread is actually running 2015-12-22 11:23:19 +0000 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: removed unnecessary space trimming in gst_dash_demux_parse_http_head sscanf has removed all spaces when it has constructed zone string. There is no need to search for leading spaces. https://bugzilla.gnome.org/show_bug.cgi?id=759743 2015-12-21 14:50:15 +0000 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: accept 2 or 4 digit year when using HTTP HEAD for calculating clock compensation Convert year from 2 digits to 4 digits in gst_dash_demux_parse_http_head https://bugzilla.gnome.org/show_bug.cgi?id=759743 Also updated references to Rfc822 to Rfc5322 2015-12-27 11:37:09 +0100 Florent Thiéry * ext/gl/gstglfiltershader.c: glshader: fix usage doc The property location has been changed in favor of vertex/fragment string properties; the doc had not been updated and was still referring to the previous property; also, now the #version header has become mandatory https://bugzilla.gnome.org/show_bug.cgi?id=759902 2015-12-26 22:34:29 +0100 Florent Thiéry * ext/gl/gstglimagesink.c: glimagesink: Post unhandled navigation events on the bus Based off xvimagesink implementation https://bugzilla.gnome.org/show_bug.cgi?id=759869 2015-12-27 22:32:22 -0800 Reynaldo H. Verdejo Pinochet * ext/opencv/gstmotioncells.cpp: motioncells: fix splitting of RGB color string No need to attempt splitting the RGB string in 255 tokens if we only expect 3. Left max_tokens at 4 to preserve the current logic (which allows for extra stuff at the end) and added a warning on parsing failure instead of silently discarding the value. 2015-12-27 21:23:37 -0800 Reynaldo H. Verdejo Pinochet * ext/opencv/gstmotioncells.cpp: motioncells: fix typo in header 2015-12-27 21:19:19 -0800 Reynaldo H. Verdejo Pinochet * ext/opencv/gstmotioncells.cpp: motioncells: fix misleading warning message calculate_motion != FALSE means the motion computation logic is disabled, not a mapping error. 2015-12-27 21:11:18 -0800 Reynaldo H. Verdejo Pinochet * ext/opencv/gstmotioncells.cpp: motioncells: rework property descriptions 2015-12-27 01:11:42 -0800 Reynaldo H. Verdejo Pinochet * ext/opencv/gstmotioncells.cpp: motioncells: use NULL instead of g_strdup(NULL) 2015-12-28 09:04:12 +0900 Vineeth TM * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: Fix build error When GST_GL_HAVE_PLATFORM_EGL is not defined, then info variable will not be used and this results in build error https://bugzilla.gnome.org/show_bug.cgi?id=759913 2015-12-24 15:28:26 +0100 Sebastian Dröge * configure.ac: Back to development === release 1.7.1 === 2015-12-24 14:28:42 +0100 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hls.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.7.1 2015-12-24 14:00:54 +0100 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-12-24 12:23:00 +0100 Sebastian Dröge * po/cs.po: * po/da.po: * po/de.po: * po/hu.po: * po/ky.po: * po/nb.po: * po/nl.po: * po/pl.po: * po/ru.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2015-12-23 23:13:21 +0000 Tim-Philipp Müller * tests/check/elements/curlftpsink.c: * tests/check/elements/curlhttpsink.c: * tests/check/elements/curlsmtpsink.c: * tests/check/elements/pcapparse.c: * tests/check/elements/rtponviftimestamp.c: tests: fix indentation 2015-12-23 23:10:50 +0000 Tim-Philipp Müller * tests/check/elements/pcapparse.c: tests: pcapparse: add check for 0-sized packets https://bugzilla.gnome.org/show_bug.cgi?id=756573 2015-12-23 20:24:46 +0000 Tim-Philipp Müller * gst/pcapparse/gstpcapparse.c: pcapparse: don't crash on 0-sized packets https://bugzilla.gnome.org/show_bug.cgi?id=756573 2015-12-23 13:06:45 +0100 Sebastian Dröge * common: Update common 2015-12-23 13:04:23 +0100 Sebastian Dröge * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-player-uninstalled.pc.in: * pkgconfig/gstreamer-player.pc.in: player: Add pkg-config files 2015-12-23 12:16:54 +0100 Sebastian Dröge * autogen.sh: autogen.sh: Enable player tests by default This will be automatically be updated together with the next common update again. 2015-12-23 09:55:26 +0100 Sebastian Dröge * configure.ac: * tests/check/Makefile.am: * tests/check/libs/player.c: player: Add unit test that is disabled by default The unit test is downloading a few small media files from the Internet, which are then used during the test. "make clean" removes the files again. 2015-12-22 14:44:28 +0100 Sebastian Dröge * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: player: Integrate into the documentation build system 2015-12-22 14:24:00 +0100 Sebastian Dröge * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/player/Makefile.am: * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.c: * gst-libs/gst/player/gstplayer-g-main-context-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-media-info-private.h: * gst-libs/gst/player/gstplayer-media-info.c: * gst-libs/gst/player/gstplayer-media-info.h: * gst-libs/gst/player/gstplayer-signal-dispatcher-private.h: * gst-libs/gst/player/gstplayer-signal-dispatcher.c: * gst-libs/gst/player/gstplayer-signal-dispatcher.h: * gst-libs/gst/player/gstplayer-types.h: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.c: * gst-libs/gst/player/gstplayer-video-overlay-video-renderer.h: * gst-libs/gst/player/gstplayer-video-renderer-private.h: * gst-libs/gst/player/gstplayer-video-renderer.c: * gst-libs/gst/player/gstplayer-video-renderer.h: * gst-libs/gst/player/gstplayer-visualization.c: * gst-libs/gst/player/gstplayer-visualization.h: * gst-libs/gst/player/gstplayer.c: * gst-libs/gst/player/gstplayer.h: * gst-libs/gst/player/player.h: * win32/common/libgstplayer.def: player: Import GstPlayer playback convenience API Based on https://github.com/sdroege/gst-player commit 9ce6ae0dbb8eeeefaf794cfae80e279a03cc598d 2015-12-23 09:50:13 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: Comment out unused functions to fix compilation with clang It's not clear if these are intentionally unused or the code should be changed, but this fixes compilation for the time being at least. See https://bugzilla.gnome.org/show_bug.cgi?id=759679 2015-11-10 16:25:53 +0000 Alex Ashley * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: tests: check URL joining if media URL contains a '/' character If the query parameter (for example http://example.net/1054559_1500k.mp4/master.m3u8?acl=/*1054559_1500k.mp4), check that m3u8.c correctly converts the relative URLs of the media playlists in to absolute URLs. It must not use the last '/' it finds in the URL, as according to RFC3986 the '/' character is allowed in the query part of the URL. https://bugzilla.gnome.org/show_bug.cgi?id=758384 2015-11-10 16:23:59 +0000 Alex Ashley * ext/hls/m3u8.c: * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: unquote all the quoted-string attributes The URI attribute from the EXT-X-KEY tag and the URI attribute from the EXT-X-I-FRAMES-ONLY tag are both quoted-string attibutes that have their quotation marks removed during parsing. The CODECS attribute of the EXT-X-STREAM-INF is also a quoted-string attribute, but this attribute was not being un-quoted. This commit changes the parser to always unquote all quoted-string attributes and adjusts the unit tests to this new bevahiour for the CODECS attribute. An additional test is added to check that parsing of all of the fields in the EXT-X-STREAM tag is correct, including those that contain comma characters. https://bugzilla.gnome.org/show_bug.cgi?id=758384 2015-11-10 16:41:02 +0000 Alex Ashley * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/hls_demux.c: hlsdemux: tests: add unit tests for hlsdemux Using the new GstAdaptiveDemux test framework, add tests that exercise hlsdemux. The following tests are added: simpleTest A simple playlist that contains some media URLs testMediaPlaylist A master playlist with a variant playlist that contains media URLs testMediaPlaylistNotFound A master playlist that points to a missing variant playlist testFragmentNotFound A master playlist with a variant playlist that contains media URLs There is a missing media file referenced from the variant playlist. testFragmentDownloadError A master playlist with a variant playlist that contains media URLs During the download of one media file, the test simulates the network connection being dropped. testSeek A simple test of trying to perform a seek on an HLS stream. 2015-11-10 13:13:35 +0000 Alex Ashley * tests/check/Makefile.am: * tests/check/elements/adaptive_demux_common.c: * tests/check/elements/adaptive_demux_common.h: * tests/check/elements/adaptive_demux_engine.c: * tests/check/elements/adaptive_demux_engine.h: * tests/check/elements/dash_demux.c: * tests/check/elements/fake_http_src.c: * tests/check/elements/fake_http_src.h: * tests/check/elements/test_http_src.c: * tests/check/elements/test_http_src.h: dashdemux: tests: Refactor into adaptive_engine components To allow code from dash_demux.c to be used by other elements that are based upon GstAdaptiveDemux, the code has been refactored into four new files: adaptive_demux_engine.[ch] adaptive_demux_common.[ch] The code in adaptive_demux_engine.c provides a generic test engine for elements based upon GstAdaptiveDemux. The code in adaptive_demux_common.c provides a set of utility functions that are common between the tests for hlsdemux and dashdemux. As part of the refactoring, variables in structures were renamed from using camelCase to underscore_case to match other GStreamer source code. The fake_http_src was renamed test_http_src and changed to use callbacks to provide input data and error conditions. Rather than using an array of input data that tries to encode all the possible use cases for the GstTestHTTPSrc element, use a struct of callbacks. Users of this element are obliged to implement at least the src_start callback, which provides a way to link from a URI to the settings for that URI. 2015-12-22 11:10:31 +0200 Matthew Marsh * sys/nvenc/gstnvbaseenc.c: nvenc: fix high CPU use on initialization of multiple encoders at the same time We need a static lock to protect various NVENC methods in _set_format(). Without this the CPU use increases dramatically on initialisation of the element when there are multiple elements being initialised at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=759742 2015-12-22 10:15:39 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: make sure every bad update_playlist return sets an error Otherwise it segfaults when reporting the error in the bus 2015-12-21 13:57:04 +0100 Sebastian Dröge * ext/teletextdec/gstteletextdec.c: teletextdec: Use NULL instead of g_strdup('\0') Which is equivalent to g_strdup(NULL). https://bugzilla.gnome.org/show_bug.cgi?id=759728 2015-12-21 12:33:25 +0100 Sebastian Dröge * common: * configure.ac: configure: Use -Bsymbolic-functions if available While this is more useful for libraries, some of our plugins with multiple files and some internal API can also benefit from this. 2015-12-21 12:19:11 +0100 Sebastian Dröge * tests/check/libs/gstglcolorconvert.c: glcolorconvert: Fix name of testsuite 2015-12-21 12:13:15 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Signal context creation from inside the context loop and use g_thread_join() instead of a custom condition variable Also protect against spurious condition variable wakeups during context creation. 2015-12-21 11:27:09 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: Hide navigation specific internal API and add API to asynchronously send navigation events Exposing the navigation thread's main context, GSourceFuncs and structs called key_event and mouse_event is exposing a bit too much of the internals. Let's just go with two functions to asynchronously send navigation events on the window with the same API as the synchronous ones. 2015-12-21 10:46:52 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: Use g_thread_join() instead of a custom condition variable for waiting for the navigation thread to finish Also hide some internal functions and fields while we're at it and fix a race condition with the startup condition variable. 2015-11-30 09:36:09 +0800 Haihua Hu * gst-libs/gst/gl/gstglwindow.c: glwindow: Fix memory leak of navigation thread When stopping the navigation thread, call g_thread_join() to release the resources hold by it. https://bugzilla.gnome.org/show_bug.cgi?id=758820 2015-12-19 21:25:49 +0000 Tim-Philipp Müller * ext/assrender/gstassrender.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: assrender, dvbsuboverlay: fix example pipelines in docs 2015-12-19 21:10:56 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: hlsdemux: reflow update_playlist a bit Reduce indentation by erroring out directly on failure. 2015-12-19 20:59:12 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: hlsdemux: fix potential error leak Clear error as soon as we determine that the download failed, otherwise there are code paths where we might return without clearing it ever, which would leak the GError then. Also, we can pass a NULL GError pointer to _fetch_uri(), so just do that instead of passing one that we're going to just free again right away anyway. 2015-12-19 12:05:59 +0000 Luis de Bethencourt * ext/opencv/gstpyramidsegment.cpp: opencv: remove unneeded sink_event function in pyramidsegment 2015-12-19 12:04:01 +0000 Luis de Bethencourt * ext/opencv/gsttextoverlay.cpp: opencv: remove unneeded sink_event function in textoverlay 2015-12-18 18:51:49 -0300 Thiago Santos * ext/opencv/gsttemplatematch.cpp: templatematch: remove useless function 2015-12-18 11:56:17 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: always set timestamp on reverse playback Downstream needs to be able to restore the timestamps after a discont to do reverse playback https://bugzilla.gnome.org/show_bug.cgi?id=759592 2015-12-18 15:36:40 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglcolorconvert.c: glconvert: Fix compilation of GRAY16_LE/BE shader 2015-11-13 17:24:30 +0100 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Add dmabuf upload method. This upload method detect and optimize uploads of DMABuf memory. This is done by creating and caching EGLImages wrapper around DMABuf. The EGLImages are then binded to a texture which get converter using standard shader. Example pipeline: GST_GL_PLATFORM=egl \ gst-launch-1.0 v4l2src device=/dev/video1 io-mode=4 ! \ video/x-raw,format=NV12 ! glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-12-18 15:52:46 -0500 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimagememory: Also import BGR16, ABGR, xBGR, AYUV, GRAY16_LE/BE and Y444 https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-12-18 11:08:29 -0500 Nicolas Dufresne * gst-libs/gst/gl/egl/gsteglimagememory.c: eglimagememory: Add RGB/BGR DMABuf importation support https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-11-13 17:40:08 +0100 Lubosz Sarnecki * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gsteglimagememory.h: eglimagememory: Methods to create GstGLMemory from dmabufs Maps GstVideoFormats to suitable DRM fourccs which work with glcolorconvert, using gst_gl_memory_alloc(). We require mostly only 4 formats to be supported by the driver. We require DRM equivalent to RGB16, RGBA, R8 and RG88. This way it's compatible with DesktopGL, since GL_TEXTURE_2D is used and limit driver requirements. With this we can virtually support all formats the glcolorconvert supports. https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-10-02 13:31:39 +0200 Lubosz Sarnecki * configure.ac: * gst-libs/gst/gl/Makefile.am: build: Add dmabuf build condition. configure.ac: Build dmabuf when EGL and drm_fourcc.h is available. gl: Link gst-allocators. https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-11-13 17:09:13 +0100 Lubosz Sarnecki * ext/gl/gstglimagesink.c: glimagesink: Show error when video frame is not mapped. Adds more meaningful error than "Failed to convert multiview video buffer", which is always used when prepare_next_buffer() fails in gst_glimage_sink_prepare(). https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-11-13 17:05:11 +0100 Lubosz Sarnecki * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gstglcontext_egl: Expose gst_gl_context_egl_get_error_string. https://bugzilla.gnome.org/show_bug.cgi?id=743345 2015-12-18 16:56:04 +0000 Luis de Bethencourt * ext/opencv/gsttextoverlay.cpp: * ext/opencv/gsttextoverlay.h: opencv: update opencvtextoverlay to GstOpencvVideoFilter Update opencvtextoverlay to inherit from GstOpencvVideoFilter instead of from GstElement. This means less code and more uniformity with other OpenCV elements. The chain/transform function is now a third of the size than before. 2015-12-18 16:18:52 +0000 Luis de Bethencourt * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttemplatematch.h: opencv: update templatematch to GstOpencvVideoFilter Update pyramidsegment to inherit from GstOpencvVideoFilter instead of from GstElement. This means less code and more uniformity with other OpenCV elements. 2015-12-18 15:48:16 +0000 Luis de Bethencourt * ext/opencv/gstpyramidsegment.cpp: * ext/opencv/gstpyramidsegment.h: opencv: update pyramidsegment to GstOpencvVideoFilter Update pyramidsegment to inherit from GstOpencvVideoFilter instead of from GstElement. This means less code and more uniformity with other OpenCV elements. 2015-12-17 17:26:29 +0200 Vivia Nikolaidou * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Made "auto" mode work according to caps When the mode of decklinkvideosink is set to "auto", the sink claims to support the full set of caps that it can support for all modes. Then, every time new caps are set, the sink will automatically find the correct mode for these caps and set it. Caveat: We have no way to know whether a specific mode will actually work for your hardware. Therefore, if you try sending 4K video to a 1080 screen, it will silently fail, we have no way to know that in advance. Manually setting that mode at least gave the user a way to double-check what they are doing. https://bugzilla.gnome.org/show_bug.cgi?id=759600 2015-12-18 12:28:23 +0000 Luis de Bethencourt * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: opencv: update motioncells to GstOpencvVideoFilter Update motioncells to inherit from GstOpencvVideoFilter instead of from GstElement. This means less code and more uniformity with other OpenCV elements. 2015-12-18 12:26:16 +0100 Thomas Roos * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: add device property as it is done in directsoundsink This allows selection of the device by GUID instead of the name. The name is user-given and multiple devices can have the same name. https://bugzilla.gnome.org/show_bug.cgi?id=759484 2015-12-18 12:36:26 +0100 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Convert header from (some) DOS line endings to UNIX A mix between different line endings in the same file is not a good idea, and the .c files are both with UNIX line endings so let's use that. 2015-12-18 10:30:25 +0000 Julien Isorce * sys/applemedia/Makefile.am: applemedia: set -mmacosx-version-min to 10.8 Otherwise qtkitvideosrc fails to build on OSX 10.10.4 because QTKit has been deprecated since OS X 10.9. Also set -mmacosx-version-min=10.8 in front to allow the user or cerbero to override the version. https://bugzilla.gnome.org/show_bug.cgi?id=745564 2015-12-18 13:17:34 +1100 Alessandro Decina * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * sys/applemedia/videotexturecache.m: glmemory: add gst_gl_memory_allocator_get_default Add gst_gl_memory_allocator_get_default to get the default allocator based on the opengl version. Allows us to stop hardcoding the PBO allocator which isn't supported on gles2. Fixes GL upload on iOS9 among other things. 2015-12-18 11:49:25 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: don't deadlock on resize Performing any GL function marshalling off the GL thread with glimagesink's render lock is prone to deadlocks between the GL thread and the non-GL thread. What can happen is this: 1. non-GL thread attempts to function marshal to the GL thread. 2. while 1 is happening, the winsys gives an event (say resize) 3. This calls back into glimagesink which taks the render lock. 4. As the GL function marshalling is attempting to run on the GL and already has glimagesink's render lock locked. This deadlocks as the threads are waiting for each other. 2015-12-17 18:16:44 +0000 Luis de Bethencourt * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstedgedetect.h: opencv: update edgedetect to GstOpencvVideoFilter Update edgedetect to inherit from GstOpencvVideoFilter instead of from GstElement. This means less code and more uniformity with other OpenCV elements. 2015-12-17 15:56:57 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Don't crash when decoding returns NULL data for any component https://bugzilla.gnome.org/show_bug.cgi?id=758943 2015-12-15 14:14:36 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: don't unconditionally add the alignment bytes to the size e.g when wrapping a data pointer we don't want to map/unmap off the end of pointer with the alignment bytes. Instead track that information separately as maxsize is used for mapping by GstMemory and thus represents a size without any alignment padding bytes. 2015-12-17 10:51:31 +0100 Luis de Bethencourt * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: opencv: add blur and bilateral support in cvsmooth Adding the support for the two other OpenCV linear filters to smooth images. The new API does support spatial sigma in the bilateral filter, hence bringing that property back. Adding reference to new documentation. 2015-12-17 08:51:48 +0900 Vineeth TM * gst/pnm/gstpnmenc.c: pnmenc: Fix wrong logic leading to memory mishandling While encoding the frame in ASCII mode, per component four bytes are needed and after every 20 bytes, a \n will be added. So the calculation should be size = size * (4 + 1 / 20). This should exclude the header being written. Since header is also being included in the calculations, memory mishandlings are happening. https://bugzilla.gnome.org/show_bug.cgi?id=759520 2015-12-17 15:50:40 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: glbuffer: add a name to the allocator 2015-12-17 15:23:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * sys/applemedia/iosurfacememory.c: * sys/applemedia/videotexturecache.m: * tests/check/libs/gstglcolorconvert.c: gl*memory*: reverse the parameter order of user_data and destroy notify The convention is to have the destroy notify last after any user data 2015-12-17 15:07:33 +1100 Alessandro Decina * sys/applemedia/videotexturecache.m: applemedia: fix build on iOS Fix build after 779dc3132c8f6dd560cb07cc2e2c3c72aeaa7845 2015-12-17 14:49:13 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: do fixate 2015-12-16 18:41:06 +1100 Matthew Waters * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * sys/applemedia/videotexturecache.m: * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: glmemorypbo: remove our own alloc()/wrapped()/etc functions replaced by equivalent functionality within gst_gl_base_memory_alloc() 2015-12-16 18:39:32 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: document gst_gl_memory_init 2015-12-16 18:38:19 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglmemorypbo.c: glbuffer: remove unneeded gst_gl_buffer_alloc() Replaced by gst_gl_base_memory_alloc() 2015-12-16 18:37:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: glbasememory: document some functions 2015-12-16 18:36:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add a default copy implementation Subclasses still need to override this to copy into the correct memory type. 2015-12-16 18:32:40 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: glbufferpool: use gst_gl_base_memory_alloc as a generic GL allocation framework Requires the usage of GstGLVideoAllocationParams however any user can set their own parameters along with an allocator which will be used to allocate the correct memory type. 2015-12-16 18:30:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: glmemorypbo: implement GstGLBaseMemory:alloc Uses the GstGLVideoAllocationParams parameters 2015-12-16 18:23:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: glbuffer: implements GstGLBaseMemory::alloc Create GstGLBufferAllocationParams which is subclass of GstGLAllocationParams 2015-12-16 18:20:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * sys/androidmedia/gstamcvideodec.c: glmemory: implement GstGLBaseMemory::alloc - Create GstGLVideoAllocationParams which is a GstGLAllocationParams subclass. - Make it possible to allocate glmemory objects directly if no frills are needed. 2015-12-16 18:13:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: glbasememory: add a generic interface for allocating GL memories This is made possible by a subclassable GstGLAllocationParams that holds the allocation parameters Every allocation would now go through gst_gl_base_memory_alloc with the allocation parameters now being specified in a single struct to allow extension by different allocators. 2015-12-17 12:30:05 +1100 Matthew Waters * common: revert common submodule change 8ae003326157438c12c45589e050c5f446723f61 contained a erroneous common change 2015-12-17 11:06:34 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: Revert "glbuffer: Don't pass allocation params" This reverts commit 052f41e5c293ec17c038467ed1e7b92b04d494b0. This is incorrect and will affect any other glbuffer user that needs/wants to perform data alignment. 2015-12-16 19:21:24 +0000 Luis de Bethencourt * ext/opencv/gstcvsmooth.cpp: opencv: add medianBlur support in cvsmooth With the deprecation of cvSmooth we have to handle the other smoothing functions manually. 2015-12-16 18:37:37 +0000 Luis de Bethencourt * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: opencv: switch deprecated cvSmooth for GaussianBlur The OpenCV cvSmooth function is deprecated [0] and the documentation recommends to use GaussianBlur (). This makes the spatial property go unused. Marking it as deprecated, making it non-functional and will remove in the next cycle. [0] http://docs.opencv.org/2.4/modules/imgproc/doc/filtering.html 2015-12-16 11:56:08 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbuffer.c: glbuffer: Don't pass allocation params The imported memory has already been allocated, passing allocation parameters with alignment confuses the memory which endup with a size different from maxsize and lead to overrun when the memory is being copied. 2015-12-16 13:59:18 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: improve validation of UTCtiming element gst_mpdparser_parse_utctiming_node does not validate the parsed values completely. The following scenarios are incorrectly accepted: - elements with no schemeIdUri property should be rejected - elements with unrecognized UTCTiming scheme should be rejected - elements with empty values should be rejected The last one triggers a division by 0 in gst_dash_demux_poll_clock_drift: clock_drift->selected_url = clock_drift->selected_url % g_strv_length (urls); because it urls is a valid pointer to an empty array. https://bugzilla.gnome.org/show_bug.cgi?id=759547 2015-12-16 10:41:47 +0000 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: clock_cond is not used and should be removed There are no threads waiting on clock_cond. It is just initialised and signalled. It should be removed. https://bugzilla.gnome.org/show_bug.cgi?id=759537 2015-12-16 10:23:23 +0000 Florin Apostol * ext/dash/gstdashdemux.c: adaptivedemux: fixed clock compensation in get_fragment_waiting_time Clock compensation is calculated in usec but is added to a GstClockTime value. https://bugzilla.gnome.org/show_bug.cgi?id=759534 2015-12-16 10:21:59 +0100 Sebastian Dröge * sys/applemedia/Makefile.am: applemedia: Link to IOSurface.framework for the IOSurface API 2015-12-15 17:10:00 +0000 Dave Craig * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstvc1parse.c: videoparsers: Check for NULL return value of gst_pad_get_current_caps() https://bugzilla.gnome.org/show_bug.cgi?id=759503 2015-12-16 14:32:20 +0900 Vineeth TM * gst/ivtc/gstivtc.c: ivtc: Fix value memory leak gvalue variable should be unset instead of reset. https://bugzilla.gnome.org/show_bug.cgi?id=759525 2015-12-16 14:29:20 +0900 Vineeth TM * gst/ivtc/gstcombdetect.c: combdetect: Fix value memory leak gvalue variable should be unset instead of reset. https://bugzilla.gnome.org/show_bug.cgi?id=759523 2015-12-16 13:08:22 +0900 Vineeth TM * gst/pnm/gstpnmdec.c: pnmdec: Fix scanner memory leak For corrupted files, scanner memory is being leaked. https://bugzilla.gnome.org/show_bug.cgi?id=759522 2015-12-16 13:06:45 +0900 Vineeth TM * gst/pnm/gstpnmdec.c: pnmdec: Fix buffer memory leak In case of corrupted file, s->buf allocated is not being freed https://bugzilla.gnome.org/show_bug.cgi?id=759522 2015-12-16 09:05:42 +0900 Vineeth TM * gst/pnm/gstpnmenc.c: pnmenc: Fix string memory leak header being allocated is not freed resulting in leak https://bugzilla.gnome.org/show_bug.cgi?id=759520 2015-12-16 08:52:12 +0900 Vineeth TM * gst/gdp/gstgdppay.c: gdppay: Fix buffer memory leak outbuffer being allocated is not being pushed to queue for EOS event and hence should be freed. https://bugzilla.gnome.org/show_bug.cgi?id=759519 2015-12-16 09:39:03 +0100 Sebastian Dröge * sys/applemedia/Makefile.am: applemedia: Link to IOKit.framework for IOSurface related functions 2015-12-16 09:33:12 +0100 Sebastian Dröge * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-spandsp.xml: docs: update to git 2015-12-16 08:25:19 +0900 Vineeth TM * gst/yadif/vf_yadif.c: yadif: Fix illegal memory access When applying the spatial prediction, there is an illegal access of -1 index of array. Hence adding a condition to avoid this. https://bugzilla.gnome.org/show_bug.cgi?id=759518 2015-12-16 08:22:00 +0900 Vineeth TM * gst/yadif/gstyadif.c: yadif: Fix gvalue memory leak gvalue variable should be unset instead of reset. https://bugzilla.gnome.org/show_bug.cgi?id=759518 2015-12-16 17:02:27 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix texture-target on iOS 2015-12-16 15:20:30 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: remove obsolete FIXME 2015-12-16 14:38:44 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: rework GLMemory negotiation Only do GLMemory when a GstGLContext is available AND GLMemory is actually negotiated with downstream. 2015-12-16 13:47:00 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: update after IOSurface changes Prefer GLMemory over sysmem. Also now when pushing GLMemory we push the original formats (UYVY in OSX, BGRA in iOS) and leave it to downstream to convert. 2015-12-14 16:10:01 +1100 Alessandro Decina * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: applemedia: vtdec: remove the internal GstGLColorConvert It was added back in the day to make texture sharing work by default with glimagesink inside playbin. These days glimagesink accepts (and converts) YUV internally so it's no longer needed. 2015-12-14 14:23:20 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: decouple outputting textures from outputting RGBA We're going to be able to output NV12 textures soon. 2015-12-11 13:20:05 +1100 Alessandro Decina * common: * sys/applemedia/Makefile.am: * sys/applemedia/iosurfacememory.c: * sys/applemedia/iosurfacememory.h: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: applemedia: vtdec: switch to IOSurface on Mac Switch to using IOSurface instead of CVOpenGLTextureCache on OSX. The latter can't be used anymore to do YUV => RGB with opengl3 on El Capitan as GL_YCBCR_422_APPLE has been removed from the opengl3 driver. Also switch to NV12 from UYVY, which was the only YUV format supported by CVOpenGLTextureCache. 2015-12-10 16:22:08 +1100 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/avfvideosrc.m: * sys/applemedia/videotexturecache.h: * sys/applemedia/videotexturecache.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: rename GstCoreVideoTextureCache to GstVideoTextureCache First of a few commits to stop using CVOpenGLTextureCache on OSX and use IOSurfaces directly instead. CVOpenGLTextureCache hasn't been updated for OpenGL 3 which is why texture sharing is currently disabled on OSX. 2015-11-17 19:31:53 +1100 Alessandro Decina * sys/applemedia/vtdec.c: Revert "vtdec: disable the texture cache on OSX" This reverts commit f02425c4afcd85260a1b387aeddf863774257917. 2015-12-15 14:17:16 +1100 Alessandro Decina * gst-libs/gst/gl/gstglupload.c: glupload: fix allocator name after GLMemory API changes 2015-12-15 19:28:05 -0500 Nicolas Dufresne * ext/qt/Makefile.am: qtsink: Add configured GL cflags to the build We don't directly link to GL in the element, though we use GL headers. For this reason we need to include the proper GL headers path. This prevent this element from using a different GL header then libgstgl. 2015-12-15 19:25:16 -0500 Nicolas Dufresne * configure.ac: * gst-libs/gst/gl/gstglapi.h: gl: Allow using non-system mesa with both GL and GLES GCC automatically disable redundance warnings for system headers. As soon as we start using a non-system installed mesa, we would start having issues. The test for both wasn't setting any flags, so it would work but then fail at runtime. This is being fixed by disabling in the code (where needed only) that GCC warning. The test is also fixed to avoid the false positive we had. 2015-12-15 15:59:30 +0000 Luis de Bethencourt * ext/opencv/gstpyramidsegment.cpp: opencv: pyramidsegment: fix example launch line Use videotestsrc and autovideosink in the example gst-launch-1.0 line and not a useless fakesrc-fakesink example. 2015-12-15 15:56:19 +0000 Luis de Bethencourt * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsobel.cpp: opencv: add headers with example launch lines Add description headers for all the OpenCV plugins missing them, so we can have gst-launch-1.0 example launch lines for all of them. 2015-12-14 16:48:45 -0500 Nicolas Dufresne * configure.ac: opengl: Use pkg-config if available libMesa ships .pc files now for gl/egl/glesv2. This patch makes use of it while keeping support for system without. https://bugzilla.gnome.org/show_bug.cgi?id=751068 2015-12-15 11:59:00 +0000 Luis de Bethencourt * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstperspective.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: geometrictransform: add headers with example launch lines Add description headers for all geometrictransform elements so we can have gst-launch-1.0 example launch lines for all of them. 2015-12-14 11:09:46 +0900 Vineeth TM * README: * ext/assrender/gstassrender.c: * ext/chromaprint/gstchromaprint.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaalaenc.c: * ext/directfb/dfbvideosink.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/gl/gstglbumper.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/ladspa/gstladspa.c: * ext/libvisual/visual-gl.c: * ext/mpg123/gstmpg123audiodec.c: * ext/mplex/gstmplex.cc: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/opus/gstopusparse.c: * ext/resindvd/resin-play: * ext/resindvd/resin-play2: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosrc.c: * ext/teletextdec/gstteletextdec.c: * ext/wayland/gstwaylandsink.c: * ext/zbar/gstzbar.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/audiofxbad/gstaudiochannelmix.c: * gst/audiomixer/gstaudiomixer.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautovideoconvert.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstviewfinderbin.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/dataurisrc/gstdataurisrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gstwatchdog.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/gdp/README: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstivtc.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/nuvdemux/gstnuvdemux.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/README: * gst/removesilence/gstremovesilence.c: * gst/sdp/gstsdpdemux.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstzebrastripe.c: * gst/videoparsers/gstdiracparse.c: * gst/videosignal/gstsimplevideomark.c: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstvideoanalyse.c: * gst/y4m/gsty4mdec.c: * gst/yadif/gstyadif.c: * sys/applemedia/atdec.c: * sys/applemedia/avfassetsrc.m: * sys/applemedia/iosassetsrc.m: * sys/applemedia/vtdec.c: * sys/directsound/gstdirectsoundsrc.c: * sys/dvb/README: * sys/dvb/gstdvbsrc.c: * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: * tools/gst-element-maker: plugins-bad: Fix example pipelines rename gst-launch --> gst-launch-1.0 replace old elements with new elements(ffmpegcolorspace -> videoconvert, ffenc_** -> avenc_**) fix caps in examples https://bugzilla.gnome.org/show_bug.cgi?id=759432 2015-12-14 15:01:09 -0500 Nicolas Dufresne * .gitignore: ignore: videoframe-audiolevel test 2015-12-14 14:44:31 -0500 Xavier Claessens * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/insertbin/gstinsertbin.h: bad: Add g_autoptr() support to all types https://bugzilla.gnome.org/show_bug.cgi?id=754464 2015-12-14 12:31:52 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: check pointer before dereferencing priv->primary_out could be NULL, check before dereferencing it in GST_BUFFER_FLAG_SET () CID 1308945 2015-12-14 13:43:10 +0200 Vivia Nikolaidou * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: videoframe-audiolevel: Fix possible division by zero In update_rms_from_buffer(), division by "frames" wasn't checking whether "frames" is zero. CID 1341519. https://bugzilla.gnome.org/show_bug.cgi?id=759443 2015-12-14 09:38:41 +0100 Sebastian Dröge * tests/examples/gl/clutter/cluttershare.c: clutter: Fix compilation error in GL examples Include gst/gl.h instead of specific headers to prevent such problems also in the future. In file included from ../../../../gst-libs/gst/gl/gl.h:47:0, from ../../../../gst-libs/gst/gl/gstglbasememory.h:137, from ../../../../gst-libs/gst/gl/gstglmemory.h:29, from cluttershare.c:39: ../../../../gst-libs/gst/gl/gstglmemorypbo.h:51:20: error: field ‘mem’ has incomplete type GstGLMemory mem; ^ ../../../../gst-libs/gst/gl/gstglmemorypbo.h:124:24: error: field ‘parent’ has incomplete type GstGLMemoryAllocator parent; ^ ../../../../gst-libs/gst/gl/gstglmemorypbo.h:134:29: error: field ‘parent_class’ has incomplete type GstGLMemoryAllocatorClass parent_class; ^ 2015-12-14 19:18:14 +1100 Matthew Waters * sys/applemedia/corevideotexturecache.m: applemedia: update for GLMemory API changes 2015-12-14 19:15:14 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: amcvideodec: update for GLMemory API changes 2015-12-14 18:41:30 +1100 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglupload.c: tests: update for glmemory api changes 2015-12-14 18:20:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: glbuffer: bind/unbind on map/unmap for GL mappings Bind the handle to the GL target on map/unmap to save the caller from handling this themselves. 2015-12-14 18:19:37 +1100 Matthew Waters * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: glbuffer: remove buffer specific transfer flags Instead rely on GstGLBaseMemory's transfer handling 2015-12-14 18:18:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemorypbo.c: glmemorypbo: map/unmap pbo memory correctly for state tracking Otherwise some downloads will fail to occur from the PBO. 2015-12-14 18:15:42 +1100 Matthew Waters * tests/check/libs/gstglmemory.c: tests/glmemory: include the generic gl header Including gstglmemory.h directly results in the compiler complaining about incomplete types. 2015-12-14 17:05:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglformat.c: glformat: add compatibility definitions for OES/rectangle textures 2015-12-14 13:49:18 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasebuffer.h: * gst-libs/gst/gl/gstgldisplay.c: glbasebuffer: remove unsed memory subclass The functionality has been split into GstGLBaseMemory and GstGLBuffer. 2015-12-14 13:43:59 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs.types: * ext/gl/gstgldownloadelement.c: * ext/gl/gstgloverlay.c: * ext/qt/gstqsgtexture.cc: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglformat.c: * gst-libs/gst/gl/gstglformat.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmemorypbo.c: * gst-libs/gst/gl/gstglmemorypbo.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglviewconvert.c: * tests/check/libs/gstglmemory.c: glmemory: base classify and add the pbo memory on top The base class is useful for having multiple backing memory types other than the default. e.g. IOSurface, EGLImage, dmabuf? The PBO transfer logic is now inside GstGLMemoryPBO which uses GstGLBuffer to manage the PBO memory. This also moves the format utility functions into their own file. 2015-12-14 13:08:10 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: gl: add a GL buffer based GstMemory Heavily based on GstGLBaseBuffer that is a subclass of GstGLBaseMemory. Provides GPU and CPU accessible GL buffer objects by GL handle or by sysmem data pointer. 2015-12-14 12:59:02 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasememory.c: * gst-libs/gst/gl/gstglbasememory.h: gl: add a base memory object It handles the following - GstAllocationParams -> gst_memory_init transformation - Makes sure that map/unmap/create/destroy happen on the GL thread with a GL context current. - Holds a possible sysmem accessible data pointer with alignment. - Holds the need upload/download transfer state 2015-12-14 12:26:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: add convenience function for the start of a video frame Get's the start of the video frame based on a GstVideoInfo and GstVideoAlignment. 2015-12-11 16:07:36 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstgluploadmeta.h: * tests/check/libs/gstglupload.c: gluploadmeta; remove convenience helper API It was not really useful as if one knows about libgstgl, one can just use GLMemory objects directly. 2015-12-11 15:39:57 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * ext/gl/gstglstereomix.h: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: gldownload: remove helper api from the library It was never used by anyone and is not needed anymore with the element and GstGLMemory's transparent support for downloading textures. 2015-12-12 20:07:32 +0000 Luis de Bethencourt * ext/opencv/gstcvdilate.cpp: * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcvdilateerode.h: * ext/opencv/gstcvequalizehist.cpp: * ext/opencv/gstcvequalizehist.h: * ext/opencv/gstcverode.cpp: * ext/opencv/gstcvlaplace.cpp: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.cpp: * ext/opencv/gstcvsmooth.h: * ext/opencv/gstcvsobel.cpp: * ext/opencv/gstcvsobel.h: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsthanddetect.h: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: * ext/opencv/gstopencvvideofilter.cpp: * ext/opencv/gstpyramidsegment.cpp: * ext/opencv/gstpyramidsegment.h: * ext/opencv/gstretinex.cpp: * ext/opencv/gstretinex.h: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstskindetect.cpp: * ext/opencv/gstskindetect.h: * ext/opencv/gsttemplatematch.cpp: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextoverlay.cpp: * ext/opencv/gsttextoverlay.h: opencv: clean includes The opencv element includes were full of duplicates and uneeded headers. For example a few elements that stopped using gstcvopencvutils still included that header file. 2015-12-12 19:31:55 +0000 Luis de Bethencourt * ext/opencv/gstopencvutils.cpp: * ext/opencv/gstopencvutils.h: opencv: remove unused functions in gstopencvutils Since commit 45ca8876b2f5267f7edb842b6d56d7a6c271ccb3 nobody is using gst_opencv_get_ipl_depth_and_channels() or gst_opencv_parse_iplimage_params_from_structure(). Remove this dead code. 2015-12-12 19:13:42 +0000 Luis de Bethencourt * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: motioncells: Remove unused includes 2015-12-12 10:06:55 +1100 Matthew Waters * common: revert common submodule change 2015-12-12 09:33:38 +1100 Matthew Waters * common: * ext/gl/gstgltransformation.c: gltransformation: clear to transparent Otherwise composition will result in a black frame outside the transformed video. 2015-12-11 11:39:08 +0100 Thomas Roos * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Check return values of DirectSound functions in read loop Otherwise we might end up in an infinite loop because of errors. Also take the element's mutex in unprepare(). https://bugzilla.gnome.org/show_bug.cgi?id=738292 2015-12-10 12:47:17 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Only pre-set position for exactly the same essence track The edit rate is only supposed to be the same in a source package, but there might be multiple source packages with the same essence container. As such just comparing the body/index SID is not sufficient. 2015-12-10 12:25:54 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Only pre-set the track position if it's for the same body/index SID 2015-12-10 14:41:44 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: libgstgl: gstglcontext_cocoa: kCGLPFAStereo has been deprecated in 10.11 Also since the version scheme has changed (to include the micro number) since 10.10, use the MAC_OS_X_VERSION_* macro to avoid confusion. 2015-12-10 12:41:00 +1100 Alessandro Decina * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: relax check for multiple texture targets Only complain about multiple texture targets when _different_ texture targets are configured. 2015-12-10 12:33:52 +1100 Alessandro Decina * gst-libs/gst/gl/gstglmemory.c: glmemory: take subsampling into account for rectangle textures Rectangle textures don't use normalized coordinates so subsampling needs to be factored in explicitly. Fixes YUV => RGB conversion for rectangle textures. 2015-12-09 16:55:00 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Only access the index table if it has enough elements 2015-12-09 16:28:53 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Use keyframe information from index table segments if available We don't implement keyframe detection for all codecs and this will allow us to implement better seeking. 2015-12-09 16:31:19 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Collect all index table segments after finding the random index pack That way we always have the index table information available, especially the keyframe-ness of all buffers. 2015-12-08 18:15:55 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxftypes.h: mxfdemux: Fix handling of IndexTableSegments This was completely broken before and could only work on a very constrained set of files. After these changes it should work except for situations where PTS != DTS, which is not handled at all in mxfdemux currently. https://bugzilla.gnome.org/show_bug.cgi?id=759118 2015-12-08 14:06:21 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: avoid pushing events with manifest lock It can be an easy source of deadlocks. Reproducible with very fast connections (local server). 2015-12-08 20:24:45 +0200 Sebastian Dröge * gst/mxf/mxftypes.c: mxftypes: Fix parsing of index table segments 2015-12-08 18:23:02 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Handle aggregation with NULL buffers without crashing 2015-12-08 16:45:33 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Add FIXME about enforcing that all tracks in a source package have the same edit rate The standard requires this and also the index table segments are not going to work otherwise. 2015-12-07 20:27:23 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: Write index table segments But only for the first essence track, and once for every keyframe every 2 seconds. 2015-12-07 20:26:17 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfmetadata: Fix static local tag for index sid 2015-12-07 19:34:25 +0200 Sebastian Dröge * gst/mxf/mxftypes.c: * gst/mxf/mxftypes.h: mxftypes: Add function to serialize an index table segment to a buffer 2015-12-07 18:59:36 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxftypes.c: * gst/mxf/mxftypes.h: mxfmux: Index table segments must not use the primer pack According to S377-1-2009c 9.2 the local tags must not be resolved from the primer pack, which as a result means that there can't be any other tags than statically assigned ones. 2015-12-07 14:10:30 +1000 Duncan Palmer * ext/hls/gsthlsdemux.c: hlsdemux: add support for seeking to fragment boundaries Setting the seek flags to GST_SEEK_FLAG_SNAP_* will change the seek target time to a segment boundary. Based on original work by Ben Willers . https://bugzilla.gnome.org/show_bug.cgi?id=759108 2015-12-08 09:53:11 +0200 Sebastian Dröge * tests/check/elements/dash_mpd.c: dash: Fix unit test after moving of framerates to RepresentationBaseType 2015-12-08 09:33:39 +0900 suhwang.kim * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Suggestion for setting the framerate information. Dashdemux has set the width and height information from MPD manifest. Some embedded devices which are not insufficient H/W resources need more information such as framerate to assign H/W resources. So I suggested that dashdemux also needs to set the framerate information from MDP manifest. https://bugzilla.gnome.org/show_bug.cgi?id=758515 2015-12-08 09:23:22 +0900 suhwang.kim * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: maxFrameRate & minFrameRate should be in RepresentationBase. According to the spec, they can be in AdaptationSet, Representation and SubRepresentation. So They should be in RepresentationBase. https://bugzilla.gnome.org/show_bug.cgi?id=758515 2015-12-08 16:35:45 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/sync.h: glproto: include function definitions for GL_APPLE_sync Provides a performance improvement on iOS where we were falling back to glFinish on settting sync points. 2015-12-07 20:34:10 +0200 Sebastian Dröge * ext/openjpeg/gstopenjpegenc.c: openjpegenc: All frames in JPEG2000 are keyframes, mark them as such 2015-12-07 09:08:15 -0500 Nicolas Dufresne * autogen.sh: * common: Automatic update of common submodule From b319909 to 86e4663 2015-12-07 13:48:12 +0100 Edward Hervey * gst/mxf/mxfmux.c: mxfmux: Remove more dead code Coverity CID #1328818 2015-12-07 13:36:29 +0100 Edward Hervey * ext/teletextdec/gstteletextdec.c: teletextdec: Fix leak and NULL pointer usage Coverity CID #1341744 2015-12-07 11:56:09 +0100 Edward Hervey * ext/teletextdec/gstteletextdec.c: teletextdec: Remove dead code ++i in a for() loop results in the loop never being executed more than once Coverity CID #1341748 Coverity CID #1341743 2015-03-12 11:29:00 +0000 Frédéric Wang * configure.ac: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: acm: Port ACM MP3 decoder and encoders to GStreamer 1.x https://bugzilla.gnome.org/show_bug.cgi?id=744047 2015-09-24 17:40:02 +0200 Daniel Kamil Kozar * configure.ac: * ext/teletextdec/Makefile.am: * ext/teletextdec/gstteletextdec.c: * ext/teletextdec/gstteletextdec.h: * ext/teletextdec/teletext.c: port teletextdec to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=733819 2015-12-02 18:28:15 -0500 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h26xparse: Resend PPS/SPS after seek This is to support byte-stream decoder that does not remember the PPS/SPS after a flush. This is not needed by all decoders, but is harmless for those that do remember. https://bugzilla.gnome.org/show_bug.cgi?id=758405 2015-12-01 18:09:25 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Only offer custom allocator with caps features To use GLMemory and EGLImage allocators, one need to know the libgstgl API. This is only expected if the associated caps features have been negotiated. Generic element that otherwise receive those allocators may fail, resulting in broken pieline. We don't want to force all generic element to check if the allocator is a custom allocator or a normal allocator (which implement the _alloc method). https://bugzilla.gnome.org/show_bug.cgi?id=758877 2015-12-04 18:05:58 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Don't copy input buffers, just append them to the header 2015-12-03 11:46:10 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Resync live playlists to the 3rd newest fragment if we fall off the playlist As HLS does not provide any way of knowing the server's clock, and we do buffering of "live" streams, at some point we will fall behind the server in many cases and would have to advance to a fragment that is not in the playlist anymore. Previously we would've just resynced to the next oldest fragment that is still there, but this causes problems as from this point onwards we would always fall off the playlist again all the time. Instead we now resync and move to the 3rd newest fragment like we would do when starting playback of a live stream. https://bugzilla.gnome.org/show_bug.cgi?id=758987 2015-12-03 18:21:50 +0000 Tim-Philipp Müller * ext/hls/m3u8.c: hls: m3u8: remove superfluous gst_m3u8_copy() implementation No need to implement _copy() when we just copy a list that we're freeing three lines later anyway. Instead just steal the new main list. 2015-12-03 10:08:05 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Log PTS of buffers that are pushed downstream 2015-10-20 09:49:16 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Expose DVB Subpicture as subpictures For some reason we were considering them as private data. 2015-10-20 17:22:23 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Push GAP events *after* deactivating old programs The order in which program switch must happen is: 1) drain all data on old pads (but don't push EOS) 2) add new pads (but don't push any data on them) 3) Push EOS and remove old pads 4) Start pushing data on new pads There was one caveat in this implementation, which is that when we activate a sparse pad (step 2) we would push a GAP event. The problem is that, while being an event, it is actually *data*. We therefore need to make sure pushing those GAP event is done at the step we start pushing data. https://bugzilla.gnome.org/show_bug.cgi?id=750402 2015-09-15 18:20:38 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Make sure old streams are drained before switching Before we add any streams, make sure we drain all streams. This ensures there's consistency that only "new" data will be pushed on buffers once the new pads are added https://bugzilla.gnome.org/show_bug.cgi?id=750402 2015-09-10 14:55:05 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: mpegtsdemux: Allow deactivation of programs to be delayed When changing programs, the order of events needs to be the following: * add pads from new program * send EOS on old pads * remove old pads * emit 'no-more-pads' Previously tsdemux was not doing that, and was first deactivating and removing old pads before adding new ones. We fix this by allowing subclasses of mpegtsbase to be able to handle themselves the deactivation of programs. In this case tsdemux will properly deactivate it once it has activated the new program. https://bugzilla.gnome.org/show_bug.cgi?id=750402 2015-12-02 11:01:53 +0100 Maroš Ondrášek * ext/hls/gsthlsdemux.c: hlsdemux: update current variant if connection speed is set If connection speed is set, playlist according to connection speed is selected as current playlist. Problem is that the current variant of main playlist still points to previously set variant. If previously set variant doesn't correspond to current playlist, then it causes unnecessary change of playlist to the same playlist after first fragment is downloaded, because of not updated current variant. To fix this, we need to make sure that current variant of main playlist corresponds to the current playlist https://bugzilla.gnome.org/show_bug.cgi?id=758946 2015-12-02 14:35:22 +0200 Sebastian Dröge * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: videoframe-audiolevel: Fix compilation of static plugin and some compiler warnings Use G_GSIZE_FORMAT for gsize instead of %ld and make sure that the plugin name is a valid C identifier, i.e. contains no spaces or dashes. 2015-12-02 22:42:39 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: improve the YUY2/UYVY->RGBA conversion shader Don't offset the y-axis. We only need to offset on the x-axis. Removes a sawtooth pattern on horizontal and vertical edges. https://bugzilla.gnome.org/show_bug.cgi?id=755486 2015-12-02 22:40:06 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: improve RGBA->YUY2/UYVY conversion shader We should only average the chroma samples not the luma sample. https://bugzilla.gnome.org/show_bug.cgi?id=758904 2015-11-11 03:55:27 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: Tell the base class the fragment duration adaptivedemux uses the fragment duration as a delay in some cases, so make sure to set it. 2015-11-11 03:54:51 +1100 Jan Schmidt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Send the bitrate of the stream as a tag If we know or can measure the nominal bitrate of a stream, send that info as a tag downstream 2015-11-08 01:34:30 +1100 Jan Schmidt * ext/hls/gsthlsdemux.c: hlsdemux: When switching bitrate variants, don't jump back Don't jump backward to 3 files from the end of the playlist when switching variants - it just means we downloaded fragments fast and caught up to the end of the playlist. Disable that by treating a variant switch as a playlist update, not a restart due to a seek or so. 2015-04-21 21:09:19 +0300 Vivia Nikolaidou * configure.ac: * gst/videoframe_audiolevel/Makefile.am: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.c: * gst/videoframe_audiolevel/gstvideoframe-audiolevel.h: * tests/check/Makefile.am: * tests/check/elements/videoframe-audiolevel.c: alevel: New audio/video level element The videoframe-audiolevel element acts like a synchronized audio/video "level" element. For each video frame, it posts a level-style message containing the RMS value of the corresponding audio frames. This element needs both video and audio to pass through it. Furthermore, it needs a queue after its video source. https://bugzilla.gnome.org/show_bug.cgi?id=748259 2015-12-01 23:20:45 -0800 Reynaldo H. Verdejo Pinochet * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: Drop usage of deprecated g-ir-scanner --strip-prefix flag 2015-11-10 16:19:34 +0000 Alex Ashley * ext/hls/m3u8.c: * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: correct the calculation of seek range of non-live streams The seek range calculation for on-demand streams was incorrectly excluding the last three segments of the stream. This three segment rule should only be applied to live streams [1]. [1] https://tools.ietf.org/html/draft-pantos-http-live-streaming-17#section-6.3.3 https://bugzilla.gnome.org/show_bug.cgi?id=758386 2015-12-01 17:52:03 +0000 Paolo Pettinato * gst/pcapparse/gstpcapparse.c: pcapparse: Forward FLUSH_STOP events downstream too https://bugzilla.gnome.org/show_bug.cgi?id=758913 2015-11-29 01:02:15 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: hlsdemux: fix crash when decryption key can't be downloaded Happened with http://sslhls.m6tv.cdn.sfr.net/hls-live/livepkgr/_definst_/m6_hls_aes/m6_hls_aes_856.m3u8 if glib-networking was not installed (since key has https uri). 2015-11-30 11:05:38 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: m3u8: remove pointless client_has_main() function We always have a main list. 2015-11-28 00:12:04 +0000 Tim-Philipp Müller * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: m3u8: remove unused _get_current_fragment_duration() function 2015-11-27 19:21:22 +0000 Tim-Philipp Müller * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: m3u8: remove unused m3u8 client update_failed_count field 2015-11-15 17:31:05 +0000 Tim-Philipp Müller * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: m3u8: remove helper var that's only used during parsing from structure Just keep that local to the parsing function. 2015-11-01 13:21:45 +0000 Tim-Philipp Müller * Makefile.am: * docs/plugins/inspect/plugin-hls.xml: * ext/hls/Makefile.am: * ext/hls/gstfragmented.h: * ext/hls/gsthls.h: * ext/hls/gsthlsdemux.h: * ext/hls/gsthlsplugin.c: * ext/hls/gstm3u8playlist.c: * ext/hls/m3u8.c: * gst-plugins-bad.spec.in: * tests/check/elements/hlsdemux_m3u8.c: hls: rename plugin from fragmented to hls 2015-12-01 19:44:36 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Always give timestamps if we're discont and don't mark stream discont if a playlist change was not successful If the stream is discont, we must provide a timestamp in any case. Elements like tsdemux are not going to output anything if we give a NONE timestamp after a discont. Also marking a stream as discont if a playlist change was not successful would lead to the above situation, but in that case we are not required at all to mark the stream discont as we're still at the old playlist. 2015-12-01 17:06:33 +0000 Tim-Philipp Müller * gst/mpegtsmux/tsmux/tsmuxstream.c: tsmux: fix wrong log message level ERROR level is debugging left-over. 2015-11-09 16:08:30 +0900 Hyunjun Ko * tests/check/libs/aggregator.c: tests:aggregator: fix tc failure and correct check value Failure by this commit 2dfa548f3645844082c3db65d96d87255701b3ad, which is to append hooks instead of prepend. Because of this change, aggretated_cb is not called and leads to failure. And correct to check flush stop value instead of flush start value https://bugzilla.gnome.org/show_bug.cgi?id=757801 2015-11-30 19:53:28 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Don't try to recreate swapchain while the window is minimized It will fail and cause the sink to crash. Instead wait until the window is visible again before checking if the swapchain really has to be recreated. https://bugzilla.gnome.org/show_bug.cgi?id=741608 2015-11-27 18:46:56 +0000 Luis de Bethencourt * ext/opus/gstopusparse.c: opusparse: remove unneeded statement commit da5c41930c4083979b1745f4d8848d97fe03d8eb removed the two uses of the new value of data: channels = opus_packet_get_nb_channels (data); bandwidth = opus_packet_get_bandwidth (data); Since then, data isn't being used between incrementing it by packet_offset and going out of scope. Removing this uneeded statement. 2015-11-27 12:44:57 +0000 Tim-Philipp Müller * tests/check/elements/id3mux.c: tests: id3mux: add unit test for GST_TAG_PRIVATE_DATA writing https://bugzilla.gnome.org/show_bug.cgi?id=758728 2015-11-27 11:33:07 +0530 Ravi Kiran K N * gst/id3tag/id3tag.c: id3mux: write private data tag Handle "PRIV" tag in id3mux. Write owner identifier and private data and add to the id3v2 frame. https://bugzilla.gnome.org/show_bug.cgi?id=758728 2015-11-26 10:15:36 +0100 Mathias Hasselmann * sys/androidmedia/gstamcvideodec.c: androidmedia: Don't add metadata to locked buffer The video decoders tried calling gst_buffer_add_*meta() on non-writable buffer resulting in warnings of this kind: gstamcvideodec.c:921 (_gl_sync_render_unlocked): WARNING: amcvideodec Failed to create the transformation meta for the gl_sync 0xabc03848 buffer 0xabb01b40 (0) https://bugzilla.gnome.org/show_bug.cgi?id=758694 2015-11-09 18:07:30 +0000 Florin Apostol * tests/check/elements/dash_demux.c: adaptivedemux: tests: disabled testFragmentDownloadError test Until we will have support to control the generating thread from fakeHTTPsrc element, the test testFragmentDownloadError is disabled. https://bugzilla.gnome.org/show_bug.cgi?id=757776 2015-11-09 14:14:34 +0000 Florin Apostol * tests/check/elements/dash_demux.c: adaptivedemux: tests: corrected access to fakeHTTPsrc element The src element for adaptivedemux is now a bin. Updated the tests to correctly reach into the bin and get the fakeHTTPsrc element https://bugzilla.gnome.org/show_bug.cgi?id=757776 2015-11-09 14:13:04 +0000 Florin Apostol * tests/check/elements/fake_http_src.c: adaptivedemux: tests: made fakeHTTPsrc element MT safe https://bugzilla.gnome.org/show_bug.cgi?id=757776 2015-11-23 11:32:13 +0900 Vineeth T M * gst/dvdspu/gstspu-pgs.c: spu-pgs: Fix array memory leak https://bugzilla.gnome.org/show_bug.cgi?id=758517 2015-11-24 00:20:36 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudioaggregator.c: audiomixer: register function name for debugging just once Not every time aggregate is called... 2015-11-24 12:42:45 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/elements/dash_mpd.c: mpdparser: remove gst_mpd_client_check_time_position https://bugzilla.gnome.org/show_bug.cgi?id=758593 2015-11-24 11:50:51 +0100 Maroš Ondrášek * ext/smoothstreaming/gstmssmanifest.c: mssdemux: add depth field to audio caps if available depth field can be retrieved from "BitsPerSample" or from "WaveFormatEx" structure, if provided in Manifest https://bugzilla.gnome.org/show_bug.cgi?id=758586 2015-11-20 16:35:43 +0000 Florin Apostol * tests/check/elements/dash_mpd.c: mpdparser: tests: added test for fraction of seconds in availabilityStartTime https://bugzilla.gnome.org/show_bug.cgi?id=758410 2015-11-20 16:36:00 +0000 Florin Apostol * ext/dash/gstmpdparser.c: mpdparser: added support for parsing fraction of seconds in dateTime fields https://bugzilla.gnome.org/show_bug.cgi?id=758410 2015-11-22 13:11:48 +0100 George Kiagiadakis * tests/examples/waylandsink/Makefile.am: tests: put the waylandsink example window.ui file in EXTRA_DIST 2015-11-22 13:08:35 +0100 George Kiagiadakis * tests/examples/waylandsink/Makefile.am: tests: fix linking waylandsink example with the gstwayland library First, use top_builddir, otherwise it fails in out-of-source builds. Second, link to the libtool archive directly to let make understand the dependency. 2015-11-20 20:59:16 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: always set presentationTimeOffset Set it for all types of segment lists (templates / lists / base) and not only for templates. https://bugzilla.gnome.org/show_bug.cgi?id=751529 2015-11-20 17:50:30 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Error out if we get a timeout during live mixing We can't handle that but need complete streams without gaps. 2015-11-20 17:46:53 +0200 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmpeg: Use the correct sound essence compression UL for MP3 There's one for MPEG 1 Layer 1 and one for Layer 2 and 3. We previously had the second for Layer 1 and 2 and nothing for Layer 3, which was wrong. 2015-11-20 17:34:22 +0200 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmpeg: Set the essence container UL byte 13 to 0x10 for h264 0x04 signifies a MPEG elementary stream but according to RP2008, 0x10 should be used for a h264 byte-stream. This also fixes compatibility of our files with ffmpeg. 2015-11-20 11:18:43 +1100 Roman Nowicki * ext/qt/qtitem.cc: qml: reuse existing GstQSGTexture Fixes a memory leak leaking the texture objects. https://bugzilla.gnome.org/show_bug.cgi?id=758286 2015-11-20 11:08:37 +1100 Matthew Waters * ext/qt/gstqsgtexture.cc: qml: activate the wrapped context when binding Mitigates the following critical gst_gl_context_thread_add: assertion 'context->priv->active_thread == g_thread_self ()' failed 2015-11-19 11:55:19 +0100 Roman Nowicki * ext/qt/qtitem.cc: qml: proper initialization if scene is already initialized The scene graph can be initialized when the we receive window handle change notification and so we will not receive a scenegraph initialization notification. Initialize ourself in this case. https://bugzilla.gnome.org/show_bug.cgi?id=758337 2015-07-29 22:31:30 +0900 Jimmy Ohn * ext/dash/gstdashdemux.c: dashdemux: Add binary search for stream_sidx_seek Add binary search to optimize in stream_sidx_seek. https://bugzilla.gnome.org/show_bug.cgi?id=749653 2015-11-19 15:59:56 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/elements/dash_mpd.c: mpdparser: remove unused functions gst_mpdparser_get_chunk_by_index and gst_mpdparser_find_segment_by_index https://bugzilla.gnome.org/show_bug.cgi?id=758233 2015-11-19 17:24:53 +0000 Luis de Bethencourt * ext/mpeg2enc/gstmpeg2enc.cc: * ext/opencv/gstedgedetect.cpp: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gsttemplatematch.cpp: * gst/dataurisrc/gstdataurisrc.c: * gst/mve/gstmvemux.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * tests/check/elements/dataurisrc.c: docs: update gst-launch-0.10 lines Update references to gst-launch-0.10 to gst-launch-1.0 2015-11-19 10:32:03 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: amcvideodec: move release_output_buffer into the sync meta Some devices only ever keep one buffer available in the GL queue resulting in multiple calls to release_output_buffer only causing one frame to be rendered. If there is a queue after amcvideodec (even playsink's small one), then multiple buffers are pushed but only a small fraction of them are actually rendered on time. The rest will either render some number of frames ahead of where they are meant to be or timeout waiting for a frame that's already been rendered. Solved by moving the release_output_buffer into the sync_meta the is pushed downstream. When downstream renders, the custom sync implementation attempts to release the current buffer (if not already released) and render. Once the frame has been rendered to the screen, the next frame is released and is hopefully available by the time the next frame is to be rendered. This fixes a perceived frame jitter in the output. 2015-11-17 15:23:17 -0800 Reynaldo H. Verdejo Pinochet * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/dash/gstmpdparser.c: * ext/gl/gstglbumper.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * ext/hls/gsthlsdemux.c: * ext/kate/gstkateenc.c: * ext/kate/gstkatespu.c: * ext/kate/gstkateutil.c: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/opus/gstopusenc.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * ext/spc/tag.c: * ext/timidity/gsttimidity.c: * ext/wayland/gstwaylandsink.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst/audiovisualizers/gstwavescope.c: * gst/dvbsuboverlay/dvb-sub.c: * gst/librfb/rfbdecoder.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/tsmux/tsmux.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/applemedia/avfassetsrc.m: * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtputil.c: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/camswclient.c: * sys/dvb/dvbbasebin.c: * sys/dvb/parsechannels.c: * sys/pvr2d/gstpvrvideosink.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/vdpau/gstvdpvideomemory.c: * tests/examples/gtk/glliveshader.c: * tests/icles/metadata_editor.c: Remove unnecessary NULL checks before g_free() g_free() is NULL-safe 2015-11-11 16:11:14 +0100 Sebastian Dröge * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: Also allow '/' in RepresentationID Used by http://www.bok.net/dash/tears_of_steel/cleartext/stream.mpd https://bugzilla.gnome.org/show_bug.cgi?id=757903 2015-10-26 16:24:40 +0100 George Kiagiadakis * .gitignore: * configure.ac: * tests/examples/Makefile.am: * tests/examples/waylandsink/Makefile.am: * tests/examples/waylandsink/main.c: * tests/examples/waylandsink/window.ui: tests/examples: add a waylandsink example https://bugzilla.gnome.org/show_bug.cgi?id=748322 2015-11-18 12:56:06 +0100 George Kiagiadakis * ext/wayland/wlwindow.c: waylandsink: call gst_video_sink_center_rect with a destination rectangle that starts from (0,0) The intention of this code is to find the center rectangle relative to (0,0), since subsurface coordinates are relative to the parent surface. The old code used to work but was wrong and broken by http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/gst-libs/gst/video/gstvideosink.c?id=ff57f6913456ec1991e55517cf1f239e80eeddef 2015-11-16 17:25:34 +0000 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: fixed illegal memory access in gst_mpd_client_get_last_fragment_timestamp_end https://bugzilla.gnome.org/show_bug.cgi?id=758188 2015-11-16 17:25:21 +0000 Florin Apostol * tests/check/elements/dash_mpd.c: mpdparser: tests: added test for gst_mpd_client_get_last_fragment_timestamp_end The timestamp for last fragment is incorrectly retrieved if segment templates are used. https://bugzilla.gnome.org/show_bug.cgi?id=758188 2015-11-17 16:21:44 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Don't require a non-zero buffer size when doing decoding to a surface At least on some devices/Android versions the buffer size will always be zero in these cases. https://bugzilla.gnome.org/show_bug.cgi?id=758228 2015-11-17 17:17:50 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Remove unused variable gstglimagesink.c: In function 'gst_glimage_sink_on_draw': gstglimagesink.c:1959:18: error: unused variable 'sync_meta' [-Werror=unused-variable] GstGLSyncMeta *sync_meta = NULL; ^ 2015-11-17 17:09:51 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: String literals are const gstglviewconvert.c: In function '_mangle_extensions': gstglviewconvert.c:1511:13: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] ext_str = "#extension GL_OES_EGL_image_external : require\n"; ^ 2015-11-17 17:08:14 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: Actually return the newly created meta from gst_buffer_add_gl_sync_meta() gstglsyncmeta.c -fPIC -DPIC -o .libs/libgstgl_1.0_la-gstglsyncmeta.o gstglsyncmeta.c: In function 'gst_buffer_add_gl_sync_meta': gstglsyncmeta.c:131:1: error: control reaches end of non-void function [-Werror=return-type] } ^ 2015-11-17 16:21:10 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Fix indentation 2015-11-17 16:08:17 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix negotiation more Year 12: I still don't understand how negotiation works. Apparently gst_pad_query_caps doesn't do what I thought it did. To get the actual caps that can flow through vtdec:src we must call gst_pad_peer_query_caps with the template caps as filter. Fixes negotiation with stuff that doesn't understand GLMemory (hello videoscale). 2015-11-17 16:14:11 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: minor texture cache fixes Small fix on how the texture cache is cleaned up / setup in case of renegotiation 2015-11-17 16:13:00 +1100 Alessandro Decina * sys/applemedia/corevideotexturecache.m: applemedia: corevideotexturecache: stop configuring cache->convert over and over 2015-11-16 15:46:41 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * sys/androidmedia/gstamcvideodec.c: glimagesink: wait on the correct sync meta when rendering 2015-11-03 13:19:41 +1100 Matthew Waters * sys/androidmedia/Makefile.am: * sys/androidmedia/gstamc2dtexturerenderer.c: * sys/androidmedia/gstamc2dtexturerenderer.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: amcviddec: output external-oes textures This provides a performance and power usage improvement by removing the texture copy from an OES texture to 2D texture. The flow is as follows 1. Generate the output buffer with the required sync meta with the incrementing push counter and OES GL memory 1.1 release_output_buffer (buf, render=true) and push downstream 2. Downstream waits for on the sync meta (timed wait) or drops the frame (no wait) 2.1 Timed wait for the frame number to reach the number of frame callbacks fired 2.2 Unconditionally update the image when the wait completes (success or fail). Sets the affine transformation matrix meta on the buffer. 3. Downstream renders as usual. At *some* point through this the on_frame_callback may or may not fire. If it does fire, we can finish waiting early and render. Otherwise we have to wait for a timeout to occur which may cause more buffers to be pused into the internal GL queue which siginificantly decreases the chances of the on_frame_callback to fire again. This is because the frame callback only occurs when the internal GL queue changes state from empty to non-empty. Because there is no way to reliably correlate between the number of buffers pushed and the number of frame callbacks received, there are a number of workarounds in place. 1. We self-increment the ready counter when it falls behind the push counter 2. Time based waits as the frame callback may not be fired for a certain frame. 3. It is assumed that the device can render at speed or performs some QoS of the interal GL queue (which may not match the GStreamer QoS). It holds that we call SurfaceTexture::updateTexImage for each buffer pushed downstream however there's no guarentee that updateTexImage will result in the exact next frame (it could skip or duplicate) so synchronization is not guaranteed to be accurate although it seems to be close enough to be unable to discern visually. This has not changed from before this patch. The current requirement for synchronization is that updateTexImage is called at the point in time when the buffers is to be rendered. https://bugzilla.gnome.org/show_bug.cgi?id=757285 2015-11-02 17:57:29 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: glsyncmeta: add vfuncs for all operations there could be other ways/requirements for synchronising two GPU command streams (whether GL or platform specific). e.g. glfencesync/eglwaitnative/cond/etc 2015-11-10 15:37:05 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: add support for rendering external-oes textures https://bugzilla.gnome.org/show_bug.cgi?id=757285 2015-11-10 14:54:02 +1100 Matthew Waters * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: add support rectangle/external-oes textures https://bugzilla.gnome.org/show_bug.cgi?id=757285 2015-11-17 15:18:28 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix setting internal SKIP / DROP flags 2015-11-17 09:08:52 +0900 Vineeth TM * ext/gl/gstglimagesink.c: glimagesink: Fix structure memory leak https://bugzilla.gnome.org/show_bug.cgi?id=758205 2015-11-16 21:52:07 -0500 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Add support for bufferlists 2015-11-17 11:21:27 +1100 Alessandro Decina * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: vtdec: improve negotiation Rework negotiation implementing GstVideoDecoder::negotiate. Make it possible to switch texture sharing on and off at runtime. Useful to (eventually) turn texture sharing on in pipelines where glimagesink is linked only after decoding has already started (for example OWR). 2015-11-17 11:19:57 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: improve handing of decode errors/frame drops Improve decode error handling by avoiding calling into GstVideoDecoder from the VT decode callback. This removes contention on the GST_VIDEO_DECODER_STREAM_LOCK which used to make the decode callback slow enough for VT to start dropping lots of frames once the first frame was dropped. 2015-11-17 11:22:15 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix uninitialized variable warning 2015-11-14 20:21:17 +0000 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: * tests/check/elements/dash_demux.c: adaptivedemux: remove now-defunct "num-lookback-fragments" property This no longer does anything, and it was marked as CONSTRUCT_ONLY which means someone would really have to go out of their way to be able to set this, which would only be done in very custom scenarios, if ever, and those will likely target a specific version of GStreamer then, so probably not much point keeping it deprecated for a while before removing it. 2015-11-13 17:14:14 -0500 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Always give a valid reply to internal caps queries Caps queries can always have a valid reply, either the filter or ANY. If the caps are ANY, then accept-caps always returns TRUE. 2015-11-12 16:35:12 +0100 Nicolas Huet * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: fix section_data leak If packet->payload_unit_start_indicator is true and pointer 0, there is no discontinuity check. Therefore there could be a previous section not complete that need to be cleared. https://bugzilla.gnome.org/show_bug.cgi?id=758010 2015-11-13 10:41:58 +0900 Vineeth TM * gst-libs/gst/gl/gstglsl.c: glsl: fix possible string overrun in gst_glsl_version_profile_from_string given a NULL-terminated string, s. s[i] = '\0'; i++; does not guarentee that s[i] is NULL terminated and thus string operations could read off the end of the array. https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 16:50:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: glshader: don't read invalid list pointers (use after free) gst_gl_shader_detach_unlocked already removes the list entry so attempting to use the element to iterate to the next stage could read invalid data. Based on patch by Vineeth TM https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 10:44:26 +0900 Vineeth TM * tests/check/libs/gstglsl.c: tests:glsl: version_profile_s string leak https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 10:56:10 +0900 Vineeth TM * gst-libs/gst/gl/gstglsl.c: glsl: free str while returning error https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-13 11:04:34 +0900 Vineeth TM * tests/check/libs/gstglupload.c: tests:glupload: fix caps memory leak https://bugzilla.gnome.org/show_bug.cgi?id=758039 2015-11-12 12:21:54 +0000 Luis de Bethencourt * ext/opus/gstopusenc.c: opusenc: avoid potential overflow expression The result of the two expressions will be promoted to guint64 anyway, perform all the arithmetic in 64 bits to avoid potential overflows. CID 1338690, CID 1338691 2015-11-12 12:00:07 +0000 Luis de Bethencourt * gst/mpegtsdemux/tsdemux.c: tsdemux: remove memory leak The values of channel_mapping are copied by gst_codec_utils_opus_create_caps () but it doesn't free or take ownership of the g_new0 allocated memory. This needs to be freed before going out of scope. CID 1338692 2015-11-12 11:42:36 +0000 Luis de Bethencourt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: remove unnecessary buffer check buf surely isn't NULL inside the block conditional to a buffer size bigger than (G_MAXUINT16 - 3). Plus gst_buffer_unref() checks if the buffer is NULL and does nothing if it is. CID 1338693 2015-11-12 11:23:31 +0000 Luis de Bethencourt * ext/opus/gstopusparse.c: opusparse: initialize sample rate to a default sample_rate might be used uninitialized if !sink_caps is TRUE. Initialize it to the default used in gst_codec_utils_opus_parse_caps () when there is no rate defined in the caps. CID 1338695 2015-11-12 16:36:03 +0900 Vineeth TM * gst-libs/gst/gl/gstglslstage.c: glslstage: Fix vertex_sources memory leak vertex_sources is being allocated but not freed resulting in leak https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-12 16:26:00 +0900 Vineeth TM * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: remove unnecessary free version_str is already being freed. So no need to call again https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-12 16:18:35 +0900 Vineeth TM * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix string leak String got using gst_glsl_version_profile_to_string, is allocated memory and should be freed https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-12 16:02:45 +0900 Vineeth TM * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix frag_prog and frag_body memory leak https://bugzilla.gnome.org/show_bug.cgi?id=757974 2015-11-11 16:51:23 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fixed handling errors emitted by uri handler https://bugzilla.gnome.org/show_bug.cgi?id=757947 2015-11-10 16:32:37 +0100 Nicolas Huet * gst/mpegtsdemux/tsdemux.c: tsdemux: fix pending buffers leak when flushing https://bugzilla.gnome.org/show_bug.cgi?id=757895 2015-06-10 14:18:00 +0200 Etienne Peron * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix pad leak when the pad is never exposed If tsdemux never receives data for a stream, the corresponding pad will never be added and stream->active will remain FALSE. When the stream is removed, the pad will not be unreffed and will be leaked. https://bugzilla.gnome.org/show_bug.cgi?id=757873 2015-11-09 17:45:29 +0200 Sreerenj Balachandran * gst/ivfparse/gstivfparse.c: ivfparse: Fix the wrong width & height parsing of vp9 bitstream The current implementation for detecting the resolution changes on key frames is based on vp8 bitstream alignment. Avoid this width and height parsing for vp9 bitstream, which requires proper frame header parsing inorder to detect the resolution change (Fixme). https://bugzilla.gnome.org/show_bug.cgi?id=757825 2015-11-11 11:40:52 +0100 Heinrich Fink * sys/applemedia/vtenc.c: vtenc: Set profile_level to NULL after release Otherwise, gst_vtenc_negotiate_profile_and_level will double-release as it checks for profile_level != NULL. This caused crashes when the vtenc instance is stopped and then restarted. https://bugzilla.gnome.org/show_bug.cgi?id=757935 2015-11-11 23:39:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: mangle gl_FragColor for GL3 Some drivers don't provide the compatibility definition and we need to provide our own 'out vec4' variable to put the results of the fragment shader into. https://bugzilla.gnome.org/show_bug.cgi?id=757938 2015-11-11 16:06:25 +0900 Vineeth TM * tests/check/libs/gstglcolorconvert.c: tests:glcolorconvert: Fix caps memory leak Output caps being got from video info is not getting freed https://bugzilla.gnome.org/show_bug.cgi?id=757929 2015-11-10 17:58:58 +1100 Matthew Waters * gst/mpegtsdemux/tsdemux.c: tsdemux: provide our own definition of log2() The log2 function/macro doesn't exist when targetting android API < 18 (or MSVC < 2013) whereas our current baseline is API 9. 2015-11-10 13:52:30 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglstereomix.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: glviewconvert: remove set_format We need the caps to be able to 1. check the caps features 2. get the requested texture-target on input/output 2015-11-11 10:31:07 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: fix a memory leak if the view conversion fails 2015-11-11 13:37:59 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: balance the creation/destruction of the overlay compositor Fixes some leaks/possible segfault on when failing to create the compositor. 2015-11-11 12:23:30 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglutils.c: glshader: properly unref the stages on failure When failing in the varargs functions, all the stage objects not handled need to be unreffed to prevent a leak. 2015-11-11 11:29:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.c: glslstage: properly return an error when we could not create the shader stage While it was erroring out correctly later, there were GLib warnings about setting a GError over the top of another GError. 2015-11-11 01:05:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglshaderstrings.c: glshaderstrings: fixup the external-oes fragment shader The wrong sampler type was used s/sampler2DExternalOES/samplerExternalOES/ 2015-11-10 23:41:24 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: try to keep the same texture-target if possible Fixes issues attempting to passthrough external-oes textures 2015-11-10 22:41:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix rendering rectangular textures with GL3 Rectangular textures are unavailable in unextended GLES2 #version 100 shaders. Fixes texture-target=rectangle ! glcolorconvert ! texture-target=2D There's a couple of differences between GL3 and GLES2/GL - varying -> in or out depending on the stage (vertex/fragment) - attribute -> in - filtered texture access is a single function, texture() 2015-11-10 20:20:29 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: properly use the other texture-target on fixation 2015-11-10 20:15:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.c: glslstage: add debug as to why _set_strings() failed 2015-11-10 20:13:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglsl.c: glsl: fix check for glsl version against GL context inversion Any GLSL version that was less than the provided GL version would fail 2015-11-10 10:02:38 +0900 Vineeth TM * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix pad memory leak. The static pads got from queue and uri_handler are not being freed resulting in memory leaks. https://bugzilla.gnome.org/show_bug.cgi?id=757859 2015-11-10 13:13:50 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_enums.h: * gst-libs/gst/gl/gstglmemory.h: gl: forward declare some enums Specifically the GstGLTextureTarget enum 2015-11-10 13:11:37 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglshaderstrings.c: * gst-libs/gst/gl/gstglshaderstrings.h: * gst-libs/gst/gl/gstglslstage.c: glslstage: expose the default shader strings as public Add some other simple strings for external-oes textures or transforming the texture coordinates with a transformation matrix 2015-11-06 03:05:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: wait on the sync meta for input buffers 2015-11-05 00:13:01 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: wait on the provided sync meta provided to glimagesink 2015-11-08 22:14:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: use the correct oes target string in the template caps 2015-11-10 12:32:39 +1100 Matthew Waters * ext/gtk/gstgtkglsink.c: gtk: add the overlaycomposition feature to the template caps There is a possibility that the _get_caps impl will be called with the feature in the filter caps which when interecting with the template, will return EMPTY and therefore fail negotiation. https://bugzilla.gnome.org/show_bug.cgi?id=757854 2015-11-10 14:21:33 +1100 Alessandro Decina * sys/applemedia/corevideotexturecache.m: applemedia: fix vtdec texture sharing on ios 9.1 Use gst_gl_sized_gl_format_from_gl_format_type to get the format passed to CVOpenGLESTextureCacheCreateTextureFromImage. Before this change extracting the second texture from the pixel buffer was failing on ios 9.1. 2015-11-06 17:24:52 -0300 Thiago Santos * tests/check/elements/templatematch.c: templatematch: add a framerate to test caps The pad template requires a framerate, so use it to prevent caps negotiation failures. Fixes the unit test 2015-11-06 20:38:56 +0000 Tim-Philipp Müller * tests/check/elements/.gitignore: tests: update .gitignore for new test binaries 2015-11-06 19:26:21 +0000 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: don't send flush events on seeks It's for the upstream element driving the pipeline to handle seeks and send flush events or not, filters should not interfere here, otherwise downstream pads could be flushing before upstream pads are flushing, which can result in GST_FLOW_ERROR being sent instead of GST_FLOW_FLUSHING when trying to forward sticky events at just the wrong moment. 2015-11-06 16:16:32 +0100 Edward Hervey * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Don't send flush events It is up to the element handling the seek to send flush events downstream, otherwise we end up with a situation where upstream would get unexpected GST_FLOW_FLUSHING 2015-11-06 19:23:09 +0000 Tim-Philipp Müller * ext/assrender/gstassrender.c: * ext/curl/gstcurlftpsink.c: * ext/dtls/gstdtlsdec.c: * ext/smoothstreaming/gstmssmanifest.c: * gst/geometrictransform/gstmirror.c: * gst/onvif/gstrtponviftimestamp.c: Fix code indentation 2015-10-22 13:40:36 +0200 Branko Subasic * gst/onvif/gstrtponviftimestamp.c: * tests/check/elements/rtponviftimestamp.c: rtponviftimestamp: use stream time for timestamp The Onvif Streaming Specification specifies that the NTP timestamps in the Onvif extension header indicaes the absolute UTC time associated with the access unit. But by using running time we can not achieve that, since a frame's running time depends on the played interval, whether a non-flushing is done, etc. Instead we have to use the stream time. https://bugzilla.gnome.org/show_bug.cgi?id=757688 2015-11-06 09:44:57 +0100 Linus Svensson * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: * tests/check/elements/rtponviftimestamp.c: rtponviftimestamp: Update ntp-offset and d/e-bits with a GstEvent It is now possible to update the currently used ntp-offset with a custom serialized downstream event. The element will read the ntp-offset property when doing the state transition from READY to PAUSED and use that offset until it receives a "GstNtpOffset" event, which also has a "ntp-offset" attribute in that it's structure. In case the property is not set and no event has been received, the element will guess the npt-offset with help of the clock. If no clock can be retrieved, the element will error out and stop the data flow. The same event is also used for updating the D/E-bits in the RTP extension header. The discont flag in a buffer can be set whenver a live/network source looses a frame, but that is not the type of discontinuity that the onvif extension header should reflect. The header is mainly used for playback of a track concept, in which gaps can be present, and it's those kind of gaps that should be highlighted with the D- and E-bits. https://bugzilla.gnome.org/show_bug.cgi?id=757688 2015-11-06 09:44:16 +0100 Linus Svensson * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: * tests/check/elements/rtponviftimestamp.c: rtponviftimestamp: Do not rearange order of data If a buffer or a buffer list is cached, no events serialized with the data stream should get through. The cached buffers and events should be purged when we stop flushing. https://bugzilla.gnome.org/show_bug.cgi?id=757688 2015-10-13 14:21:47 +0200 Branko Subasic * tests/check/Makefile.am: * tests/check/elements/rtponvifparse.c: * tests/check/elements/rtponviftimestamp.c: rtponvif: split unit tests in several files Split the unit tests for rtponviftimestamp and rtponvifparse elements in separate files. Setup and cleanup the element and pads in fixures. Make the tests work with CK_FORK=no as well, by cleaning up the 'buffers' list when needed. Make unit tests work when run in valgrind by unreffing all buffers, and by not allocating any payload in RTP buffers. Since we're not doing anything with the payload part, but we're memcmp-aring the complete buffer memory, valgrind complained about non-initialized memory being used. https://bugzilla.gnome.org/show_bug.cgi?id=757688 2015-09-04 09:59:06 +0200 Philippe Normand * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: improved bitrate estimations Bitrate estimation is now handled through a queue2 element added after the source element used to download fragments. Original hlsdemux patch by Duncan Palmer https://bugzilla.gnome.org/show_bug.cgi?id=733959 2015-11-06 12:59:51 +0000 Tim-Philipp Müller * sys/dshowsrcwrapper/gstdshow.cpp: dshow: fix GList leak _remove_link() would not free the actual list nodes. 2015-11-06 12:31:09 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglshader.c: * gst/mpegtsdemux/mpegtsparse.c: glshader, tsdemux: simplify code Jus use _delete_link() instead of _remove_link() + _free1() 2015-11-06 12:30:12 +0000 Tim-Philipp Müller * ext/gl/gstglmixerbin.c: glmixerbin: fix minor leak Don't leak removed list node. 2015-11-06 10:22:42 +0100 Thibault Saunier * ext/faac/gstfaac.c: faac: Initialize debug category soon enough Avoiding assertions 2015-11-05 10:12:41 +0000 Julian Bouzas * configure.ac: configure.ac: Added --with-hls-crypto=auto|nettle|libgcrypt|openssl option to build the source using the desired cryptographic library for HLS https://bugzilla.gnome.org/show_bug.cgi?id=755319 2015-11-06 00:48:42 +0000 Tim-Philipp Müller * ext/hls/m3u8.c: hls: m3u8: don't leak GList nodes when matching up variant lists after master list update 2015-11-05 12:36:48 +0000 Luis de Bethencourt * gst-libs/gst/base/gstaggregator.c: aggregator: use GST_STIME_FORMAT for GstClockTimeDiff No need to manually handle negative value of deadline, GST_STIME_FORMAT does exactly this. 2015-11-05 12:17:00 +0000 Luis de Bethencourt * ext/resindvd/resindvdsrc.c: resindvd: use GST_STIME_FORMAT for GstClockTimeDiff No need to use G_GINT64_FORMAT for potentially negative values of GstClockTimeDiff. Since 1.6 these can be handled with GST_STIME_FORMAT. Plus it creates more readable values in the logs. https://bugzilla.gnome.org/show_bug.cgi?id=757480 2015-11-05 12:11:19 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Update sink pad templates We always require the channel-mapping-field. If it's 0 we require nothing else, otherwise we need channels, stream-count and coupled count to be available. 2015-11-03 19:09:33 -0800 Stefan Sauer * gst-libs/gst/base/gstaggregator.c: aggregator: don't compare templ instance pointers One can pass the PadTemplate from the element_class or the one from the factory. While they have the same content, the addresses are different. 2015-11-04 00:12:52 +0200 Sebastian Dröge * tests/check/elements/opus.c: opus: Remove invalid unit test Opus headers should never be in-band, so don't test for correct handling of that. 2015-11-04 00:12:22 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Create an empty taglist if there is none There always have to be 2 buffers in the streamheaders, even if the comment buffer is basically empty. 2015-11-03 14:41:57 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Set to running in a single place Only set to running when the thread is actually started. 2015-11-03 14:37:26 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Document more locking 2015-11-03 19:53:00 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't create an incomplete OpusHead but set all the other caps fields instead OpusHead is optional, the other fields are not. https://bugzilla.gnome.org/show_bug.cgi?id=757152 2015-11-03 19:51:03 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: tsmux: Simplify Opus caps parsing by using codecutils helpers https://bugzilla.gnome.org/show_bug.cgi?id=757152 2015-11-03 14:50:53 +0200 Sebastian Dröge * ext/opus/Makefile.am: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopuspay.c: opus: Add proper support for multichannel audio https://bugzilla.gnome.org/show_bug.cgi?id=757152 2015-11-03 11:41:07 +0200 Sebastian Dröge * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: opusparse: Fix up pre-skip in OpusHead if upstream using GstAudioClippingMeta Makes transmuxing from e.g. MPEG-TS to Ogg sample accurate. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 18:02:55 +0200 Sebastian Dröge * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux_opus.c: tsdemux/mux: Add support for GstAudioClippingMeta for Opus https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 17:33:53 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Handle GstAudioClippingMeta instead of the pre-skip field in the OpusHead oggdemux is outputting the meta now, and only outputs if it should really apply to the current buffer. Previously we would skip N samples also if we started the decoder in the middle of the stream. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 16:52:28 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Add GstAudioClippingMeta to buffers that need to be clipped https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-11-02 10:30:52 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Disable granule position calculations by the base class It is doing the wrong thing because of the Opus pre-skip: while the timestamps are shifted by the pre-skip, the granule positions are not shifted. oggmux is doing the right thing here already. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-10-31 15:02:50 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Add some FIXME comments about calculating padding with LPC https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-10-30 20:57:37 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: Encode exactly the amount of samples we got as input and put correct timestamps on it The first frame has lookahead less samples, the last frame might have some padding or we might have to encode another frame of silence to get all our input into the encoded data. This is because of a) the lookahead at the beginning of the encoding, which shifts all data by that amount of samples and b) the padding needed to fill the very last frame completely. Ideally we would use LPC to calculate something better than silence for the padding to make the encoding as smooth as possible. With this we get exactly the same amount of samples again in an opusenc ! opusdec pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-10-30 20:47:20 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: * ext/opus/gstopusparse.c: opusenc: Put lookahead/pre-skip into the OpusHead header https://bugzilla.gnome.org/show_bug.cgi?id=757153 2015-10-25 17:27:39 +0200 Sebastian Dröge * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux_opus.c: * gst/mpegtsmux/mpegtsmux_opus.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: tsmux: Add support for Opus https://bugzilla.gnome.org/show_bug.cgi?id=757049 2015-10-24 14:27:43 +0300 Sebastian Dröge * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add support for Opus Code partially based on https://git.videolan.org/?p=ffmpeg.git;a=commit;h=74141f693ded2fbf75af56fff309d2db35183635 and based on the spec draft at https://wiki.xiph.org/OpusTS Makes it possible to demux http://www.obe.tv/Downloads/opus.ts https://bugzilla.gnome.org/show_bug.cgi?id=757049 2015-10-25 19:31:51 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: tsmux: Don't leak buffer in error cases https://bugzilla.gnome.org/show_bug.cgi?id=757049 2015-10-25 19:29:53 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: tsmux: Call prepare function for each collected buffer Not when clipping buffers, as that doesn't happen for every buffer. https://bugzilla.gnome.org/show_bug.cgi?id=757049 2015-10-25 18:09:24 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegtsdescriptor: Add API for creating extended descriptors and fix writing them https://bugzilla.gnome.org/show_bug.cgi?id=757049 2015-11-02 21:16:15 -0800 Stefan Sauer * ext/opencv/gsthanddetect.cpp: opencv: cast paramspec flags to fix the build for c++ All the other elements in this plugin do this already. 2015-11-03 15:05:20 +0000 Luis de Bethencourt * sys/dvb/gstdvbsrc.c: dvbsrc: use GST_STIME_ARGS for GstClockTimeDiff No need to use G_GINT64_FORMAT for potentially negative values of GstClockTimeDiff. Since 1.6 these can be handled with GST_STIME_ARGS. Plus it creates more readable values in the logs. https://bugzilla.gnome.org/show_bug.cgi?id=757480 2015-11-03 15:00:01 +0000 Luis de Bethencourt * sys/androidmedia/gstamcvideodec.c: amcvideodec: use GST_STIME_ARGS for GstClockTimeDiff No need to manually handle negative value of deadline, GST_STIME_ARGS does exactly this. 2015-11-03 10:42:40 +0000 Hyunil Park * ext/wayland/gstwaylandsink.c: waylandsink: Add exception code for setting wl_surface Waylandsink needs exception code in gst_wayland_sink_set_window_handle(). After making sink->window, User can call gst_wayland_sink_set_window_handle(). It is the user's fault, but Waylandsink needs to handle the exception, if not then sink->window is changed and rendering fails. https://bugzilla.gnome.org/show_bug.cgi?id=747482 2015-04-09 13:17:01 +0900 Hyunil Park * ext/wayland/gstwaylandsink.c: waylandsink: Add exception code for setting wl_display Waylandsink needs exception code in gst_wayland_sink_set_context(). After calling gst_wayland_sink_set_context(), below code is set. GST_ELEMENT_CLASS (parent_class)->set_context (element, context); but, If user can call onemore. It is user's fault. but waylandsink need to exception. https://bugzilla.gnome.org/show_bug.cgi?id=747482 2015-11-02 20:10:35 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Hold object lock while manipulating the segment Make sure the object lock is held when aggregator->segment is modified. 2015-11-02 19:40:28 -0500 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Improve log messages Make the level of log messages saner and improve some. 2015-11-02 19:05:01 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Remove dead code This code will never be called as max>=min in all cases. If the upstream latency query returned min>max, the function already returned and all values that are added to those have max>= min. 2015-11-02 17:02:47 +0000 Luis de Bethencourt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: use GST_STIME_ARGS for GstClockTimeDiff No need to manually handle negative values of best->dts in GST_DEBUG_OBJECT. Use GST_STIME_ARGS for this. 2015-11-02 16:58:57 +0000 Luis de Bethencourt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use GST_STIME_ARGS for GstClockTimeDiff No need to manually handle negative values of diff, GST_STIME_ARGS does exactly this. 2015-11-02 11:17:29 +0000 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: remove unreachable code The stream->cur_seg_template is set to the lowest available segment template (representation or adaptation or period, in this order). Because the template elements are inherited, the lowest template will have all the elements the parents had, so there is no need to check the parent for an element that is not found in the child (eg initialisation or index). https://bugzilla.gnome.org/show_bug.cgi?id=752714 2015-11-02 10:48:11 +0000 Vincent Penquerc'h * tests/check/elements/dash_mpd.c: tests: add a test for MPD file duration parsing https://bugzilla.gnome.org/show_bug.cgi?id=752336 2015-11-02 10:25:38 +0000 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mpdparser: add some checks to duration parsing https://bugzilla.gnome.org/show_bug.cgi?id=752336 2015-09-29 09:32:02 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: added duration format validation https://bugzilla.gnome.org/show_bug.cgi?id=752336 2015-11-02 11:21:14 +0000 Luis de Bethencourt * ext/dash/gstmpdparser.c: dashdemux: fix memory leak Free new_mpd, allocated with g_slice_new(), before going out of scope in goto error. CID 1338050 2015-11-02 20:14:11 +1100 Alessandro Decina * sys/applemedia/vtenc.c: Revert "vtenc: free input buffer ASAP" This reverts commit 6101fc57b8afac4f4e4aa742892f0d9c99d38a8c. GstVideoEncoder assumes that the input buffer is available until _finish_frame. https://bugzilla.gnome.org/show_bug.cgi?id=756951 2015-11-01 23:34:32 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Assume 48kHz if no sample rate is given in the header 2015-10-30 20:59:41 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Place 48kHz first in the caps For all the other sample rates the encoder will have to resample internally. 2015-11-02 12:10:44 +1100 Alessandro Decina * gst-libs/gst/gl/gstglutils.c: gstglutils: fix shader compilation on Mountain Lion Make gst_gl_context_gen_shader/_compile_shader assume GST_GLSL_PROFILE_ES | GST_GLSL_PROFILE_COMPATIBILITY as the profile. Without this, the shader compiler doesn't inject the #version tag resulting in a compilation error on Mountain Lion. This is a workaround for old code using gst_gl_context_gen_shader. New code should use the gst_glsl_stage_* API directly which allows the caller to explicitly specify version/profile. 2015-10-31 18:47:39 +0100 Philippe Renon * sys/winks/gstksvideosrc.c: ksvideosrc: don't try to align current timestamp on previous timestamp this causes frames to be dropped. Based on a patch by Sebastian Dröge https://bugzilla.gnome.org/show_bug.cgi?id=748337 2015-10-31 23:28:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: explicitly initialize a possibly uninitialized variable The ret variable may be uninitialized and so its contents were undefined and the results were erratic (failing with glvideomixer, succeeding in other cases) P.S. No idea why gcc/clang et al never picked up on this like they normally do (probably due to some optimisation pass figuring out it's only set once...) 2015-10-29 11:38:35 +0000 Vincent Penquerc'h * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/elements/dash_mpd.c: mpdparser: make durations unsigned where appropriate The standard does not seem to make any particular explicit not implicit reference to the signedness of durations, and the code does not rely on such, nor on the negativity of the -1 value that's used as a placeholder when a duration property is not present in the XML. https://bugzilla.gnome.org/show_bug.cgi?id=750847 2015-10-30 15:55:19 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: inherit bitstreamSwitching from Period to AdaptationSet https://bugzilla.gnome.org/show_bug.cgi?id=752340 2015-08-20 18:14:36 +0100 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: marked PROP_BANDWIDTH_USAGE property as deprecated https://bugzilla.gnome.org/show_bug.cgi?id=753890 2015-10-30 15:02:35 +0000 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: unit testing reproducing inherited segment duration overflow unit test reproducing https://bugzilla.gnome.org/show_bug.cgi?id=751832 2015-10-30 14:31:21 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: inherited segment URLs are ignored if they are defined again in a lower SegmentList According to the standard: "SegmentBase, SegmentTemplate and SegmentList shall inherit attributes and elements from the same element on a higher level. If the same attribute or element is present on both levels, the one on the lower level shall take precedence over the one on the higher level." gst_mpdparser_parse_segment_list_node will now discard any inherited segment URLs if the parsed element defines some too. https://bugzilla.gnome.org/show_bug.cgi?id=751832 2015-10-20 17:21:00 +0100 Florin Apostol * tests/check/elements/dash_demux.c: * tests/check/elements/fake_http_src.c: * tests/check/elements/fake_http_src.h: adaptivedemux: tests: added test for fragment download error https://bugzilla.gnome.org/show_bug.cgi?id=757361 2015-10-20 15:46:36 +0100 Florin Apostol * tests/check/elements/dash_demux.c: adaptivedemux: tests: made adaptive demux test thread safe https://bugzilla.gnome.org/show_bug.cgi?id=757361 2015-10-16 16:20:34 +0100 Florin Apostol * tests/check/elements/dash_demux.c: adaptivedemux: tests: added query test Testing if adaptive demux responds to queries. https://bugzilla.gnome.org/show_bug.cgi?id=757361 2015-10-28 11:21:14 +0000 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: tests: added test for multiple BaseURL entries https://bugzilla.gnome.org/show_bug.cgi?id=757245 2015-09-16 10:40:33 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: tests: added unit test for 6d1eda9391d3143b5fc633edfd94b89dbba209ab Commit 6d1eda9391d3143b5fc633edfd94b89dbba209ab fixed the period start time scaling. This patch updates the unit tests to cover that scenario. https://bugzilla.gnome.org/show_bug.cgi?id=755105 2015-10-16 17:10:11 +0100 Florin Apostol * tests/check/elements/dash_demux.c: adaptivedemux: tests: added download error test Tests adaptive demux behaviour when the uri is wrong and download does not happen. 2015-10-30 12:49:20 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: stop task on multiple download errors On multiple download errors, we stop the download task and change the src element state to NULL. https://bugzilla.gnome.org/show_bug.cgi?id=756240 2015-10-30 12:24:22 +0000 Vincent Penquerc'h * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix a missing lock in write to stream->last_ret https://bugzilla.gnome.org/show_bug.cgi?id=757359 2015-10-07 23:20:51 +0100 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: return error if src element cannot start https://bugzilla.gnome.org/show_bug.cgi?id=756209 2015-10-08 11:45:25 +0100 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fixed waiting for fragment updates https://bugzilla.gnome.org/show_bug.cgi?id=756237 2015-10-08 12:35:44 +0100 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix header redownload in case of errors https://bugzilla.gnome.org/show_bug.cgi?id=756239 2015-10-30 00:04:12 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: release manifest lock before sending flush stop event https://bugzilla.gnome.org/show_bug.cgi?id=757337 2015-10-29 23:41:46 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: reset download_finished before starting the src element https://bugzilla.gnome.org/show_bug.cgi?id=757336 2015-10-29 23:23:05 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: release manifest lock before changing element state https://bugzilla.gnome.org/show_bug.cgi?id=757335 2015-10-30 16:38:17 +1100 Matthew Waters * sys/applemedia/corevideotexturecache.m: vtdec: fix compilation error Undefined symbols for architecture x86_64: "__gl_target_to_gst", referenced from: __do_get_gl_buffer in libgstapplemedia_la-corevideotexturecache.o 2015-10-30 15:00:23 +1100 Matthew Waters * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/tests: update for glmemory api changes 2015-10-30 14:43:23 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: glcolorconvert: remove unused ret variable 2015-10-30 14:40:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.h: glslstage: remove typedefs from the header They are already defined in the forward decleration header and defining them more than once will give an error with OSX's clang about typedef redefinition being a C11 feature. 2015-10-30 14:38:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: follow the correct texture target names 2015-10-30 01:42:42 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: explicitly configure the texture target on the gl buffer pool If we don't, then the pool could end up allocating 2D textures when the caps explictly state they should be rectangle textures. 2015-10-30 01:27:36 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glbufferpool: add bufferpool options for the various texture targets This was chosen over relying solely on the caps as glupload needs to propose an allocation and set the texture target based on the output caps. Setting the caps in the config is currently pointless as they are overwritten in a lot of element's decide_allocation functions. This provides a mechanism for the buffer pool to be configured for a certain texture target when none has been configured. 2015-10-29 13:04:31 +1100 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * sys/applemedia/corevideotexturecache.h: * sys/applemedia/corevideotexturecache.m: * sys/applemedia/vtdec.c: glcolorconvert: add support for converting texture targets Solved with a simple shader templating mechanism and string replacements of the necessary sampler types/texture accesses and texture coordinate mangling for rectangular and external-oes textures. 2015-10-29 00:44:26 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglstereomix.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstglviewconvert.c: * sys/applemedia/corevideotexturecache.m: * tests/check/libs/gstglmemory.c: glmemory: add support for rectangle textures Add the various tokens/strings for the differnet texture types (2D, rect, oes) Changes the GLmemory api to include the GstGLTextureTarget in all relevant functions. Update the relevant caps/templates for 2D only textures. 2015-10-30 01:45:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: order the caps template so that RGBA is first glcolorconvert ! glcolorconvert would sometimes negotiated RGB (the first list entry) otherwise. 2015-10-30 01:16:02 +1100 Matthew Waters * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.h: glbufferpool: move typedef's into the forward decleration file Otherwise, for example, clang will warn about typedef redefinitions being a C11 feature. 2015-10-16 18:36:20 +0100 Florin Apostol * tests/check/elements/fake_http_src.c: tests: fixed fake soup http src plugin The soup http src changed the way it interprets the seek segment stop value. Previously it was inclusive, now it is not (see commit 21c6da6764c0cd015e9f3c5eecba36e297187deb, bug https://bugzilla.gnome.org/show_bug.cgi?id=748316) Updated fake soup http src to also consider segment stop not inclusive. https://bugzilla.gnome.org/show_bug.cgi?id=756322 2015-10-09 14:10:52 +0100 Florin Apostol * tests/check/Makefile.am: * tests/check/elements/dash_demux.c: adaptivedemux: tests: added unit test for adaptivedemux Created a unit test for dashdemux. It relies on a fake SOUP HTTP src plugin that will feed data to dashdemux. The test controls the data to be generated and checks the correct data was received for each expected stream. https://bugzilla.gnome.org/show_bug.cgi?id=756322 2015-10-09 21:23:20 +0100 Alex Ashley * tests/check/elements/fake_http_src.c: * tests/check/elements/fake_http_src.h: tests: added fake http src plugin Added a fake http src plugin capable of generating data buffers for a request of a http url. Can be used in tests to simulate http accesses. https://bugzilla.gnome.org/show_bug.cgi?id=756322 2015-07-07 15:38:08 +0100 Alex Ashley * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/elements/dash_mpd.c: dashdemux: provide a default suggestedPresentationDelay If MPD@suggestedPresentationDelay is not present in the manifest, dashdemux selects the fragment closest to the most recently generated fragment. This causes a playback issue because this choice does not allow the DASH client to build up any buffer of downloaded fragments without pausing playback. This is because by definition new fragments appear on the server in real-time (e.g. if segment duration is 4 seconds, a new fragment will appear on the server every 4 seconds). If the starting playback position was n*segmentDuration seconds behind "now", the DASH client could download up to 'n' fragments faster than realtime before it reached the point where it needed to wait for fragments to appear on the server. The MPD@suggestedPresentationDelay attribute allows a content publisher to provide a suggested starting position that is behind the current "live" position. If the MPD@suggestedPresentationDelay attribute is not present, provide a suitable default value as a property of the dashdemux element. To allow the default presentation delay to be specified either using fragments or seconds, the property is a string that contains a number and a unit (e.g. "10 seconds", "4 fragments", "2500ms"). 2015-10-29 15:02:38 +0200 Sreerenj Balachandran * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: ivfparse: Add vp9 support Differentiate the vp8/vp9 bitstream based on fourcc. https://bugzilla.gnome.org/show_bug.cgi?id=757251 2015-09-09 14:09:43 +0100 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: improve detection of stream language Improved the detection of stream's language if the AdaptationSet contains more than 1 ContentComponent https://bugzilla.gnome.org/show_bug.cgi?id=752367 2015-10-29 12:04:31 +0000 Vincent Penquerc'h * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dash_mpd: restrict segment template format strings to %0[0-9]*d as per spec https://bugzilla.gnome.org/show_bug.cgi?id=751735 2015-09-09 12:36:10 +0100 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: segment template parsing: added support for %d Added support for %d in template identifier. Added testcases for %d, %3d, %0-4d identifier formats. 2015-10-29 11:54:34 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: corrected parsing of segment templates Corrected the parsing of a segment template string. Added unit tests to test the segment template parsing. All reported problems are now correctly handled. https://bugzilla.gnome.org/show_bug.cgi?id=751735 2015-10-29 11:17:48 +0000 Florin Apostol * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: dahsdemux: task is signaled to stop without stop condition being set The gst_adaptive_demux_stream_free function is trying to stop the stream's download task. For this, it signals the task. But it fails to also set the stream->download_finished = TRUE, so the task will go back to sleep and only exit when the download is finished. https://bugzilla.gnome.org/show_bug.cgi?id=755121 2015-10-28 17:02:51 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: fixed crash when segment timeline list is greater than segment url list When building the media segment list using a SegmentList node, the gst_mpd_client_setup_representation function will iterate through the list of S nodes and will expect to find a matching SegmentUrl node. If one does not exist, the code made an illegal memory access. https://bugzilla.gnome.org/show_bug.cgi?id=752496 2015-09-11 10:59:15 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: unit test for missing profiles 2015-09-11 10:57:26 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mpdparser: do not dereference profiles is absent These are used to apply restrictions on what the MPD file may use, so no profile means no restrictions. Besides, nothing actually uses the profiles (yet) anyway. https://bugzilla.gnome.org/show_bug.cgi?id=750869 2015-09-16 16:46:29 +0100 Florin Apostol * ext/hls/gsthlsdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: fixed multithread support https://bugzilla.gnome.org/show_bug.cgi?id=755169 2015-10-28 16:31:39 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: parser rejects negative values for mediaPresentationDuration https://bugzilla.gnome.org/show_bug.cgi?id=752326 2015-10-28 16:24:01 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: corrected parsing of negative values into unsigned data https://bugzilla.gnome.org/show_bug.cgi?id=752429 2015-09-17 20:18:52 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecparsers/gsth264parser.c: codecparser: h264: initialize parsing structures Initialize to 0 these parse structures before filling them: GstH264SEIMessage, GstH264NalUnit, GstH264PPS, GstH264SPS and GstH264SliceHdr. When calling the functions which fill those structures, they may fail, leaving unitialized those structures. This situation may lead to future problems, such as a segmentation fault when freeing, for example. This patch initializes to zero these structures, before filling them. https://bugzilla.gnome.org/show_bug.cgi?id=755161 2015-09-18 10:09:26 +0200 Víctor Manuel Jáquez Leal * gst-libs/gst/codecparsers/gsth265parser.c: codecparser: h265: initialize parsing structures Initialize to 0 these parse structures before filling them: GstH265SEIMessage, GstH265NalUnit, GstH265VPS, GstH265PPS, GstH265SPS and GstH265SliceHdr. When calling the functions which fill those structures, they may fail, leaving unitialized those structures. This situation may lead to future problems, such as a segmentation fault when freeing, for example. This patch initializes to zero these structures, before filling them. https://bugzilla.gnome.org/show_bug.cgi?id=755161 2015-10-26 19:58:04 -0400 Olivier Crête * gst/audiomixer/gstaudiomixer.c: liveadder: Make latency property be a uint in millisecs This restores roughly the same behaviour as the old liveadder element. Except that the latency now also includes the output-buffer-duration. https://bugzilla.gnome.org/show_bug.cgi?id=757050 2015-09-08 14:00:54 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mpdparser: forbid negative values for duration https://bugzilla.gnome.org/show_bug.cgi?id=752492 2015-10-28 15:39:07 +0000 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: parser rejects XMLs with negative period duration https://bugzilla.gnome.org/show_bug.cgi?id=752329 2015-10-28 15:34:29 +0000 Vincent Penquerc'h * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: check segment lists have either duration or timeline And add error checking along the way. Add duration where appropriate so unit tests still pass. https://bugzilla.gnome.org/show_bug.cgi?id=751650 2015-09-29 16:17:03 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: validate representation set identifier It must have no whitespace, and must comply with RFC 1738 when used to build a URL. https://bugzilla.gnome.org/show_bug.cgi?id=750852 2015-10-28 14:41:54 +0000 Julien Isorce * gst-libs/gst/gl/gstglslstage.c: glslstage: initialize output params to 0 before calling gl functions The client side API of the Chromium's GPU Process has asserts in debug mode that check that output params are initialized to 0. 2015-10-27 16:32:48 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Remove some dead code that could never be called Coverity CIDs #1328818, #1328819, #1328820. 2015-10-27 00:36:41 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstopengl.c: opengl: build/provide glstereomix/split on gles only systems 2015-10-26 16:51:06 +0100 George Kiagiadakis * gst/geometrictransform/geometricmath.c: * gst/geometrictransform/geometricmath.h: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmarble.h: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: geometrictransform: rename gemetric math functions to have their symbols namespaced Otherwise those symbols can conflict with external libraries when linking everything statically for mobile targets. Use the gst_gm_ prefix, short for gst geometric math. https://bugzilla.gnome.org/show_bug.cgi?id=756882 2015-10-26 15:30:08 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: don't advertise the local wl_display context This wl_display proxy is temporary only until waylandsink goes NULL, at which point the connection to the display is disposed. Unfortunately, if this is advertised as a GstContext, playbin will cache it and re-feed it to the sink when it goes PLAYING again, but the wl_display pointer will at that point be invalid and cause a crash. Another solution to the problem would be to also cache the GstWlDisplay object inside the GstContext, which would automatically ref-count the display connection, but I see no reason in doing that at the moment, as there are no known users of this GstContext outside waylandsink. It's probably better to avoid chasing hidden refcounts. https://bugzilla.gnome.org/show_bug.cgi?id=756567 2015-10-26 18:26:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: allow outputting multiple textures for gles3 contexts the USING_GLES2 includes all GLES3 contexts as well which does support drawing to multiple buffers. Instead make or decision solely based on whether glDrawBuffers is available or not. 2015-10-26 17:36:21 +1100 Matthew Waters * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: expose the element on gles2 platforms We can do everything with gles3 however gles2 restricts us not allowing separated or frame-by-frame multiview modes due to multiple draw buffers. 2015-10-25 01:19:33 +0100 Tim-Philipp Müller * tests/check/elements/hlsdemux_m3u8.c: tests: hlsdemux_m3u: add test for master playlist with missing variant list uri https://bugzilla.gnome.org/show_bug.cgi?id=756861 2015-10-20 09:13:04 +0100 André Draszik * ext/hls/m3u8.c: hlsdemux: don't crash or leak memory on broken master playlist If a (master) playlist contains a variant list entry without a URI then during parsing of the next variant list entry we are a) leaking the entry we're currently parsing (new_list), and b) free'ing the pointer to the previous list entry (list) without updating the pointer. Hence when then adding the URI for the latest parsed entry, incorrect information is stored, as the information is used from 'list' which is not valid memory anymore, also leading to crashes. Fix this by correctly storing the new variant list entry pointer as needed. https://bugzilla.gnome.org/show_bug.cgi?id=756861 2015-09-04 11:29:08 +0100 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: hlsdemux: change dispose function to finalize 2015-08-30 21:35:02 +0100 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: hlsdemux: remove helper function only used once 2015-08-30 17:41:23 +0100 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: hlsdemux: remove deprecated 'fragments-cache' property It's been non-functional for two cycles now, let's get rid of it. 2015-09-02 16:40:17 +0100 Tim-Philipp Müller * ext/hls/m3u8.c: hlsdemux: m3u8: move file lookup by sequence directly into code Nicer to read, two lines of code less, and also the callback function should've been a GCompareFunc that returns a gint and not a boolean (it did work correctly, was just confusing). 2015-09-01 12:48:38 +0100 Tim-Philipp Müller * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: m3u8: clean-up: remove unused argument in function call 2015-08-30 17:22:19 +0100 Tim-Philipp Müller * ext/hls/m3u8.h: hlsdemux: m3u8: clean-up: reindent header for better readability And remove duplicate define. 2015-10-23 18:58:41 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Remove empty set/get_property() We can add them again if we ever add properties. 2015-10-23 18:38:33 +0300 Sebastian Dröge * gst/mxf/Makefile.am: * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: Port to GstAggregator 2015-10-22 19:20:24 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Set GC essence element UL version to 0x01 ffmpeg otherwise rejects it and the spec is not 100% clear about that. 2015-10-20 17:09:22 +0200 Santiago Carot-Nemesio * ext/srtp/gstsrtp.c: srtp: Fix critical warning trying to retrieve SSRC from a non fb message https://bugzilla.gnome.org/show_bug.cgi?id=756876 2015-10-22 19:24:34 +0300 Sebastian Dröge * gst/mxf/Makefile.am: mxf: Reorder CFLAGS and LIBS 2015-10-23 15:42:24 +0300 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Add create_new_pad() vfunc to allow subclasses to override the default behaviour Not all aggregator subclasses will have a single pad template called sink_%u and might do something special depending on what the application requests. https://bugzilla.gnome.org/show_bug.cgi?id=757018 2015-10-21 19:00:41 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Set KAG size to 1 We're not aligning our output in any way, and 0 is invalid. 2015-10-21 18:58:06 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Don't let the header partition's prev_partition point forward to the footer 2015-10-21 18:32:09 +0300 Sebastian Dröge * gst/mxf/mxftypes.c: mxftypes: Fix generation of operational pattern UL 2015-10-21 18:31:43 +0300 Sebastian Dröge * tests/examples/mxf/mxfdemux-structure.c: mxfdemux-structure: Sync fakesink state with the bin to make the application work at all 2015-10-21 18:20:16 +0300 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmpeg: h264 is always byte-stream inside MXF 2015-10-21 18:06:11 +0300 Sebastian Dröge * tests/check/elements/mxfmux.c: * tests/check/pipelines/mxf.c: mxf: Add unit tests for H264/PCM 2015-10-21 17:47:00 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Don't leak SEEK events when dropping them 2015-10-21 17:21:09 +0300 Sebastian Dröge * gst/mxf/mxfvc3.c: mxfvc3: The wrapping is the 15th byte of the essence container UL, not the 16th In other mappings it is the 16th though. 2015-10-21 17:11:03 +0300 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: If seeking to the remaining parts of the file fails on EOS, consider the stream done Without this we would run this while loop forever, always seeking again for the same stream. 2015-10-21 15:07:23 +0300 Sebastian Dröge * tests/check/elements/mxfmux.c: * tests/check/pipelines/mxf.c: mxf: Properly enable unit tests again 2015-10-21 01:22:11 +0300 Sebastian Dröge * gst/mxf/mxf.c: mxf: Re-enable mxfmux element 2015-10-21 01:21:37 +0300 Sebastian Dröge * gst/mxf/mxfjpeg2000.c: mxfjpeg2000: Fix caps There is no fields field anymore. 2015-10-21 01:17:04 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Don't fail SEGMENT events 2015-10-21 01:02:46 +0300 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Push stream-start and caps event before segment event And don't push the caps event during instance initialization already. 2015-10-21 00:45:19 +0300 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: mxfaes-bwf: Format is unsigned if it's 1 byte per channel ... not 1 byte per block. 2015-10-21 16:51:10 +0100 Luis de Bethencourt * ext/opencv/gsthanddetect.cpp: opencv: handdetect: no need to get a writable buffer No need to get a writable buffer inside cv_trans_func of opencv video filter. GstBaseTransform takes care of this. 2015-10-21 14:35:11 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From b99800a to b319909 2015-10-20 17:29:42 +0300 Sebastian Dröge * configure.ac: Use new GST_ENABLE_EXTRA_CHECKS #define https://bugzilla.gnome.org/show_bug.cgi?id=756870 2015-10-21 14:26:01 +0300 Sebastian Dröge * README: * common: Automatic update of common submodule From 9aed1d7 to b99800a 2015-10-21 05:34:18 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glshaderelement: free the vertex and fragment strings on finalize Fixes a memory leak when using the vertex/fragment properties. 2015-10-21 05:33:13 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: androidmedia: fix build errors printf %lld instead of G_GINT64_FORMAT. Double ret variable declaration. 2015-10-21 05:00:11 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glshaderelement: remove unneeded reference to 2015-10-21 04:44:50 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: gl: fix usage of string.h and stdio.h functions without including the headers e.g: gstglcontext_egl.c:613:7: error: implicit declaration of function 'strcmp' [-Werror=implicit-function-declaration] if (strcmp (G_MODULE_SUFFIX, "so") == 0) 2015-10-16 07:03:06 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: create a context in NULL_READY So that it's possible for decoders et al. to request the OpenGL context in their READY_PAUSED transition with decodebin/playbin. 2015-10-16 00:34:22 +1100 Matthew Waters * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: amcviddec: use gstcontext to retreive the OpenGL context 2015-04-20 13:46:58 +0200 Matthieu Bouron * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcvideodec.c: androidmedia: Only allow GL output if the decoder has unknown color formats If GST_AMC_IGNORE_UNKNOWN_COLOR_FORMATS is set to yes, non-GL output is still allowed. https://bugzilla.gnome.org/show_bug.cgi?id=731204 2014-06-05 10:33:56 +0200 Matthieu Bouron * sys/androidmedia/Makefile.am: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamc2dtexturerenderer.c: * sys/androidmedia/gstamc2dtexturerenderer.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcsurface.c: * sys/androidmedia/gstamcsurface.h: * sys/androidmedia/gstamcsurfacetexture.c: * sys/androidmedia/gstamcsurfacetexture.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: * sys/androidmedia/org/freedesktop/gstreamer/androidmedia/GstAmcOnFrameAvailableListener.java: androidmedia: Add support for GL output in amcvideodec https://bugzilla.gnome.org/show_bug.cgi?id=731204 2015-04-30 12:33:58 +0200 Matthieu Bouron * sys/androidmedia/gstamcvideodec.c: androidmedia: Do not flush codec if it is not started 2015-04-13 13:10:10 +0200 Matthieu Bouron * sys/androidmedia/gstjniutils.c: androidmedia: Allow object to be NULL in gst_amc_jni_*unref functions 2015-03-13 16:13:08 +0100 Edward Hervey * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Fix debug statement (%d for a gsize argument) 2015-04-02 16:28:14 +0200 Matthieu Bouron * sys/androidmedia/gstamcvideodec.c: androidmedia: Improve color format debug messages 2015-03-31 16:24:40 +0200 Matthieu Bouron * sys/androidmedia/gstamc.c: androidmedia: Improve debug messages 2015-03-31 17:48:59 +0200 Matthieu Bouron * sys/androidmedia/gstamc.c: androidmedia: Do not warn we do not support COLOR_FormatSurface 2015-10-21 03:59:33 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglshadervariables.h: gl: remove unneeded shader variable parsing code 2015-10-21 03:23:30 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: glshaderelement: implement setting arbitrary uniforms Currently float and int are supported by default. vec2, vec3, vec4 and mat4 are supported if graphene is used. Of course if one wants to set custom uniforms they can also be set using the create-shader signal. 2015-10-20 12:24:11 +0100 Luis de Bethencourt * ext/opencv/gsthanddetect.cpp: opencv: handdetect: free best_r with delete best_r is a cv::Rect, so it should be freed with delete and not with g_free() 2015-10-20 12:08:59 +0100 Luis de Bethencourt * ext/opencv/gstmotioncells.cpp: opencv: motioncells: remove unnecessary check We know that the gchar arrays contain at least one string. Furthermore, g_strfreev() checks if the array is NULL and simply returns if it is. Hence, there is no need to check if the array is empty before using g_strfreev(). CID 1327412-1327415 2015-07-08 17:17:12 +0200 Edward Hervey * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls/m3u8: Update current position in all cases In order to ensure the sequence_position will always be consistently updated, store the current file duration. This way, when we advance, we can always increment the position based on what was previously outputted. https://bugzilla.gnome.org/show_bug.cgi?id=752132 2015-10-14 18:35:00 +0200 plamot * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: Fix 64bit compatibility issue SetWindowLong works only for 32 bit systems, thus windows events (move/resize) where not interpreted on 64 bit systems https://bugzilla.gnome.org/show_bug.cgi?id=756617 2015-10-19 15:15:30 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglimagesink.c: * ext/gtk/gtkgstglwidget.c: * ext/qt/qtitem.cc: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: gl: be consistent in gobject boilerpate GST_GL_IS_* vs GST_IS_GL_* git grep -l 'GST_GL_IS_' | xargs sed -i 's/GST_GL_IS_/GST_IS_GL_/g' 2015-10-19 15:02:10 +1100 Matthew Waters * .gitignore: add glliveshader program to .gitignore 2015-10-17 12:48:11 -0700 Reynaldo H. Verdejo Pinochet * gst/pnm/gstpnmdec.c: pnmdec: drop frame in case of _handle() failure Allows baseclass to handle it from there Related to: https://bugzilla.gnome.org/show_bug.cgi?id=756563 2015-10-17 01:51:24 -0700 Reynaldo H. Verdejo Pinochet * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: pnmdec: propagate input state after parsing Store and copy input state fields when setting the output state of the decoder. Avoids problems like the framerate set by an upstream element being ignored Related to: https://bugzilla.gnome.org/show_bug.cgi?id=756563 2015-10-16 20:45:42 -0700 Reynaldo H. Verdejo Pinochet * gst/pnm/gstpnmdec.c: pnmdec: completely reset parsing state at flush Makes sure the mngr struct reflects a clean state for the next frame, avoiding failures like: https://bugzilla.gnome.org/show_bug.cgi?id=756563 2015-10-17 15:26:46 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: * tests/examples/gtk/glliveshader.c: glshaderelement: implement on-demand create-shader signalling One may not have an GstGLContext available or current in the thread where one would need to update the shader. Support this by signalling create-shader whenever the one-shot 'update-shader' is set to TRUE. 2015-10-17 02:42:47 +1100 Matthew Waters * ext/gl/caopengllayersink.m: gl/calayer: don't leak a gl shader object We will always overwrite the ca_sink->redisplay_shader without freeing the object. 2015-10-17 02:40:50 +1100 Matthew Waters * ext/gtk/gstgtkbasesink.c: gtk: separate out the widget/window destroy callbacks Fixes assertion due to the sink_finalize() being run before the widget destroy callback. https://bugzilla.gnome.org/show_bug.cgi?id=755969 2015-10-17 01:08:29 +1100 Matthew Waters * tests/examples/gtk/Makefile.am: * tests/examples/gtk/glliveshader.c: gl/examples: add a live shader demo using the new GstGLSLStage Implemented with videotestsrc ! glshader ! glupload ! gtkglsink Errors on an invalid shader compilation are ignored however any error provided by the glsl compiler is printed to stdout. 2015-10-16 00:23:56 +0200 Miguel París Díaz * ext/srtp/gstsrtpdec.c: srtpdec: skip padding when mapping RTP packets https://bugzilla.gnome.org/show_bug.cgi?id=756653 2015-10-14 19:32:07 +0300 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Properly forward the return value of gst_video_decoder_negotiate() https://bugzilla.gnome.org/show_bug.cgi?id=756578 2015-10-14 19:24:22 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideodec.c: amcvideodec: Implement support for COLOR_QCOM_FormatYVU420SemiPlanar32mMultiView for decoding https://bugzilla.gnome.org/show_bug.cgi?id=756578 2015-10-16 02:57:19 +1100 Matthew Waters * gst-libs/gst/gl/gstglslstage.c: glslstage: add brackets around pointer dereference referencing an array While technically, i is always 0 and *vertex_sources[i++] is equivalant to (*vertex_sources)[i++]. Be future-proof in the case of code moves/changes/etc. CID 1327406 2015-10-15 23:47:11 +1100 Matthew Waters * ext/gl/caopengllayersink.m: gl/caopengllayersink: port to new GstGLShader API fixes build error: "undefined symbols for architecture: gst_gl_shader_compile_with_default_vf_and_check" 2015-10-15 22:42:26 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: gl/tests: port glcontext test to opengl Now uses vao's and vbo's when possible like the rest of the gstgl library. 2015-09-04 16:16:51 +1000 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: glshader: port element to GstGLSLStage - Provide a shader property to set the full shader pipeline - Provide vertex and fragment properties for just providing simple shader sources. 2015-09-04 16:02:32 +1000 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglimagesink.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglutils.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: glshader: port to using GstGLSLStage objects for string management A GstGLShader is now simply a collection of stages that are compiled and linked together into a program. The uniform/attribute interface has remained the same. 2015-09-04 14:36:47 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglslstage.c: * gst-libs/gst/gl/gstglslstage.h: glsl: add a shader stage object GstGLSLStage Represents a stage (vertex, geometry, fragment, etc) in the shader pipeline. 2015-09-04 00:09:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglshadervariables.h: gl/shader/variables: include generic gl.h header Otherwise we may miss some forward declarations Fixes build error: undefined reference to GstGLSLStage 2015-08-20 15:11:06 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglsl.c: * gst-libs/gst/gl/gstglsl.h: * gst-libs/gst/gl/gstglsl_private.h: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglsl.c: gl: add some GLSL utility functions Specifically parsing/setting GLSL versions and the shader related function table. 2015-10-14 22:51:29 +0200 Paul Arzelier * ext/dtls/gstdtlscertificate.c: dtls: Fix name conflict with openssl on win32 https://bugzilla.gnome.org/show_bug.cgi?id=756592 2015-09-04 18:40:18 -0300 Thiago Santos * ext/hls/m3u8.c: hls: if media sequence is not specified, use 0 Allows playlists that are missing the mediasequence information to be correctly parsed. If the playlist was updated without reseting the mediasequence it would constantly increase over subsequent updates, leading to issues during playback. 2015-08-30 14:56:57 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: fix fallback buffer allocation Copy-paste mistake; the wl_buffer was attached on the wrong buffer... 2015-08-30 14:55:11 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: rename GstWlDisplay::formats array to shm_formats These formats are specific to the wl_shm interface. We are going to add dmabuf formats later as well. 2015-08-29 22:29:17 +0200 George Kiagiadakis * ext/wayland/Makefile.am: * ext/wayland/wlshmallocator.c: * ext/wayland/wlshmallocator.h: waylandsink: replace the custom GstWlShmMemory with GstFdMemory 2015-10-14 19:53:34 +0300 Sebastian Dröge * po/POTFILES.in: po: Update POTFILES.in for OpenCV C++ file rename 2015-10-14 17:41:05 +0200 Edward Hervey * ext/hls/m3u8.c: hls: Allow debugging of the playlist Helps debugging issues 2015-10-14 17:38:39 +0200 Edward Hervey * ext/hls/gsthlsdemux.c: hlsdemux: Avoid negative sequence numbers For live streams, we want to make sure there's a certain distance between the sequence to play and the last (earliest) fragment. The problem is that it assumes there are at least 3 fragments in the playlist, which might not always be the case (like in the case of a server restarting and gradually adding fragments). In order to avoid ending up with negative sequence numbers (which will just loop forever), limit the new target sequence number to the highest of: * either the first sequence number of the playlist (fallback) * or 3 fragments from the last one (standard behaviour) 2015-10-14 15:30:05 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gstopencvutils.cpp: * ext/opencv/gstopencvvideofilter.cpp: * ext/opencv/gsttemplatematch.cpp: opencv: switch remaining to C++ Switch remaining C files to C++ for consistency with other OpeCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-14 10:31:23 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Set default last_byte_pos to -1 The value is optional in the range, and if it is absent it means we should download until the end of stream. Not until position 0. https://bugzilla.gnome.org/show_bug.cgi?id=748316 2015-10-14 10:34:58 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: HTTP ranges are inclusive, GStreamer segment.stop is exclusive Translate the values accordingly. https://bugzilla.gnome.org/show_bug.cgi?id=748316 2015-10-14 14:34:32 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gstmotioncells.cpp: * ext/opencv/gstmotioncells.h: * ext/opencv/motioncells_wrapper.cpp: * ext/opencv/motioncells_wrapper.h: opencv: motioncells: Switch to C++ Switch gstmotioncells to C++ for consistency with other OpenCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-14 22:35:26 +1100 Matthew Waters * Makefile.am: build: add liveadder directory to the cruft list So that we can remove it and avoid duplicate GstLiveAdder GType registrations. 2015-10-13 12:40:04 +0200 Guillaume Desmottes * gst-libs/gst/gl/gstgldebug.c: gl: fix leak in gst_gl_insert_debug_marker() The string allocated by g_vasprintf() was leaked. Reproduced using the validate.file.compositor.simple.play_15s.synchronized validate scenario. https://bugzilla.gnome.org/show_bug.cgi?id=756492 2015-10-12 11:07:32 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update to git https://bugzilla.gnome.org/show_bug.cgi?id=756424 2015-10-12 09:36:29 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: liveadder: latency property is an uint64 in audiomixer 2015-10-11 23:44:25 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gsttextoverlay.cpp: textoverlay: Switch to C++ Switch gsttextoverlay to C++ for consistency with other OpenCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-11 21:54:30 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gstpyramidsegment.cpp: opencv: pyramidsegment: Switch to C++ Switch gstpyramidsegment to C++ for consistency with other OpenCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-05 00:55:36 +0100 Olivier Crête * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-liveadder.xml: * gst/audiomixer/gstaudiomixer.c: * gst/liveadder/Makefile.am: * gst/liveadder/liveadder.c: * gst/liveadder/liveadder.h: liveadder: Remove plugin, replace by compat subclass of audiomixer New subclass with a similar behaviour as the old liveadder, but a slightly different API as the latency is in nanoseconds, not milliseconds. Also, the new liveadder has a effective latency that is latency + output-buffer-duration. In practice, just setting a non-zero latency with the new audiomixer gives you the right behavior in 99% of the cases. 2015-10-11 10:00:43 +0100 Julien Isorce * configure.ac: * ext/dash/Makefile.am: dashdemux: fix undefined reference to gst_ntp_clock_new Found with gst-inspect-1.0 -b in gst-uninstalled env. https://bugzilla.gnome.org/show_bug.cgi?id=756383 2015-10-10 17:52:23 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gstcvsobel.cpp: cvsobel: Switch to C++ Switch gstcvlsobel to C++ for consistency with other OpenCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-10 17:00:55 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gstcvlaplace.cpp: cvlaplace: Switch to C++ Switch gstcvlaplace to C++ for consistency with other OpenCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-10 16:57:36 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gstcvequalizehist.cpp: cvequalizehist: Switch to C++ Switch gstcvequalizehist to C++ for consistency with other OpenCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-10 14:10:32 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gstcvdilateerode.cpp: * ext/opencv/gstcverode.cpp: cverode: Switch to C++ Switch gstcverode to C++ for consistency with other OpenCV elements, and support of the new 2.4.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-08 14:46:10 -0700 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvb: simplify ZAP file format parser Simplify state handing, drop unneeded local vars, etc. 2015-10-07 14:22:46 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: fixed has_next_period gst_mpd_client_has_next_period now calls gst_mpd_client_setup_media_presentation to refresh the period information. https://bugzilla.gnome.org/show_bug.cgi?id=756186 2015-10-07 08:48:15 +0900 Vineeth TM * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Fix build error Build error due to wrong argument type in debug message aagg->priv->offset and next_offset are of type int64, but uint64 formatter is being used in logs. Changing all those to int64 https://bugzilla.gnome.org/show_bug.cgi?id=756065 2015-10-06 21:23:11 +0530 Nirbheek Chauhan * ext/gl/gstglvideomixer.c: glvideomixer: Proxy the ignore-eos videoaggregator property as well Identical to how the z-order property is proxied 2015-10-05 11:21:07 +0900 Vineeth TM * gst/id3tag/id3tag.c: id3tag: fix sample memory leak When getting sample from taglist, the memory is not being freed resulting in memory leak. https://bugzilla.gnome.org/show_bug.cgi?id=756070 2015-10-01 11:18:52 +0200 Havard Graff * ext/rtmp/gstrtmpsrc.c: rtmpsrc: plug memory-leaks https://bugzilla.gnome.org/show_bug.cgi?id=756001 2015-10-02 22:57:27 +0300 Sebastian Dröge * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Port to new GLib mutex/cond API 2015-10-02 22:24:19 +0300 Sebastian Dröge * configure.ac: * ext/hls/m3u8.c: * ext/libde265/libde265-dec.c: * gst-libs/gst/glib-compat-private.h: * gst/videomeasure/gstvideomeasure_ssim.c: Update GLib dependency to 2.40.0 2015-10-02 19:02:26 +0100 Vanessa Chipirrás Navalón * ext/opencv/Makefile.am: * ext/opencv/gstcvdilate.cpp: cvdilate: Change gstcvdilate to C++ Change the gstcvdilate.c file extension to cpp and add it into Makefile for consistency with other elements of opencv and because Opencv not support C language in new API 2.4.11. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-02 18:50:45 +0100 Vanessa Chipirrás Navalón * ext/opencv/Makefile.am: * ext/opencv/gstskindetect.cpp: skindetect: Change gstskindetect to C++ Change the file extension to cpp and add it into Makefile for consistency with other elements of opencv and because Opencv not support C language in new API 2.4.11. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-08-31 17:43:26 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstopencvutils.h: opencvutils: add extern C, for the opencv elements work. Adding G_BEGIN_DECLS and G_END_DECLS to gstopencvutils.h to allow C-style linking. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-02 18:40:43 +0100 Luis de Bethencourt * ext/opencv/gstretinex.cpp: retinex: use OpenCV namespace As part of the switch to C++, use the new OpenCV functions. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-02 18:10:32 +0100 Vanessa Chipirrás Navalón * ext/opencv/Makefile.am: * ext/opencv/gstcvsmooth.cpp: cvsmooth: port to C++ Change the file extension to cpp and add it into Makefile for consistency with other elements of opencv and because Opencv not support C language in new API 2.4.11. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-02 17:48:47 +0100 Vanessa Chipirrás Navalón * ext/opencv/Makefile.am: * ext/opencv/gstretinex.cpp: retinex: Change retinex to C++ Change the gstretinex.c file to cpp and add it into Makefile. It is necessary to migrate the retinex element to C++, because new Opencv API leaves obsolete functions like cvSmooth. This element uses this function. You can see in this link: http://docs.opencv.org/modules/imgproc/doc/filtering.html? highlight=cvsmooth#void cvSmooth(const CvArr* src, CvArr* dst, int smoothtype, int size1, int size2, double sigma1, double sigma2) https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-10-02 17:18:33 +0100 Vanessa Chipirrás Navalón * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsthanddetect.h: handdetect: remove another unused variable Memory is reserved for this variable and then released without making any use of it. https://bugzilla.gnome.org/show_bug.cgi?id=752528 2015-10-02 17:02:42 +0100 Luis de Bethencourt * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsthanddetect.h: handdetect: CvPoint values changed from uint to int The x and y values of CvPoint changed from unsigned to signed integers in OpenCV 2.4.11. https://bugzilla.gnome.org/show_bug.cgi?id=752528 2015-10-02 16:22:36 +0100 Luis de Bethencourt * ext/opencv/gsthanddetect.cpp: * ext/opencv/gsthanddetect.h: handdetect: need to migrate to C++ The cascade classifier changes its structure on new version of OpenCV 2.4.11. It is need to migrate to C++ to utilize the new load method of OpenCV which allows to load the old and new classifiers. https://bugzilla.gnome.org/show_bug.cgi?id=752528 2015-10-02 16:01:29 +0100 Luis de Bethencourt * ext/opencv/Makefile.am: * ext/opencv/gsthanddetect.cpp: handdetect: Change gsthanddetect to C++ Change the gsthanddetect.c file to cpp and add it into Makefile. It is necessary to migrate the handdetect plugin to C++, in order to load new and old classifiers, to make handdetect work with newer versions of Opencv. https://bugzilla.gnome.org/show_bug.cgi?id=752528 2015-10-02 17:05:11 +0200 Polochon_street * ext/dtls/gstdtlsdec.c: dtls: fix printf format on win32 2015-08-20 16:03:29 +0900 Vineeth TM * gst/inter/gstintertest.c: * tests/examples/camerabin2/gst-camerabin2-test.c: * tests/examples/codecparsers/parse-jpeg.c: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/opencv/gstfacedetect_test.c: * tests/examples/playout.c: * tools/gst-app-maker: gstreamer: bad: Fix memory leaks when context parse fails When g_option_context_parse fails, context and error variables are not getting free'd which results in memory leaks. Free'ing the same. And replacing g_error_free with g_clear_error, which checks if the error being passed is not NULL and sets the variable to NULL on free'ing. https://bugzilla.gnome.org/show_bug.cgi?id=753854 2015-06-25 19:17:36 +0200 Arnaud Vrac * ext/assrender/gstassrender.c: assrender: optimize blending Skip empty source pixels when blending an image. There can be hundreds of images to blend at each frame, so this brings a nice performance boost. https://bugzilla.gnome.org/show_bug.cgi?id=753821 2015-08-19 17:18:31 +0200 Arnaud Vrac * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Use the window size from downstream This allows rendering the overlay at a resolution matching the video resolution. https://bugzilla.gnome.org/show_bug.cgi?id=753824 2014-09-04 18:16:00 +0200 Arnaud Vrac * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Improve negotiation This is mostly a copy/paste of the negotiation function in basetextoverlay, which was improved recently to handle many more cases. This will allow us to negotiate a window size with downstream. https://bugzilla.gnome.org/show_bug.cgi?id=753824 2015-08-19 13:44:35 +0200 Arnaud Vrac * configure.ac: * ext/assrender/gstassrender.c: assrender: render the subtitles with the proper aspect This bumps the libass version requirement to 0.10.2. https://bugzilla.gnome.org/show_bug.cgi?id=753824 2015-09-07 16:20:42 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: test: added unit test for presentation time offset https://bugzilla.gnome.org/show_bug.cgi?id=752409 2015-09-30 10:27:06 -0700 Aleix Conchillo Flaqué * configure.ac: dtls: require openssl >= 1.0.1 https://bugzilla.gnome.org/show_bug.cgi?id=755892 2015-10-02 14:46:59 +0200 Paul Arzelier * ext/dtls/gstdtlsenc.c: dtls: fix printf format on win32 https://bugzilla.gnome.org/show_bug.cgi?id=755981 2015-09-30 11:00:39 +0800 John Chang * ext/dash/gstisoff.c: dashdemux: Correctly assign earliest pts instead of overriding it with first offset https://bugzilla.gnome.org/show_bug.cgi?id=755824 2015-09-15 03:14:37 +1000 Matthew Waters * configure.ac: * ext/qt/gstplugin.cc: * ext/qt/gstqsgtexture.h: * ext/qt/gstqtsink.cc: * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qt: add support for building on osx/ios Including: - Necessary configure checks - Necessary compile time platform checks - Necessary runtime qt iOS/OSX platform detection https://bugzilla.gnome.org/show_bug.cgi?id=755100 2015-09-28 11:29:29 +0100 John Slade * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Fix indentation with gst-indent https://bugzilla.gnome.org/show_bug.cgi?id=755732 2015-10-02 11:31:50 +0300 Sebastian Dröge * gst/audiovisualizers/Makefile.am: audiovisualizers: Fix nodist_HEADERS 2015-10-02 14:56:41 +1000 Jan Schmidt * tests/check/Makefile.am: * tests/check/elements/baseaudiovisualizer.c: Remove baseaudiovisualizer test. The base class has moved into gst-plugins-base 2015-09-30 19:05:35 +0200 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Convert GST_ERROR_OBJECT() for seek events to GST_DEBUG_OBJECT() 2015-09-30 19:03:05 +0200 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: For the start time selection, only set the segment position segment.time and segment.start can stay the same, and were always the same before anyway because of a mistake. https://bugzilla.gnome.org/show_bug.cgi?id=755623 2015-09-30 19:01:21 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Select the initial offset based on the start segment position instead of always using 0. Otherwise we might output a lot of silence in the beginning instead of outputting from the relevant position. https://bugzilla.gnome.org/show_bug.cgi?id=755623 2015-10-01 15:35:37 +0100 Luis de Bethencourt * docs/plugins/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/audiovisualizers/gstaudiovisualizer.c: * gst/audiovisualizers/gstaudiovisualizer.h: * gst/audiovisualizers/gstspacescope.h: * gst/audiovisualizers/gstspectrascope.h: * gst/audiovisualizers/gstsynaescope.h: * gst/audiovisualizers/gstwavescope.h: audiovisualizers: merge audiovisualizer base classes These plugins now use the audiovisualizer base class in pbutils https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-10-02 01:01:42 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldebug.c: * gst-libs/gst/gl/gstgldebug.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: move debugging related functions to their own file 2015-10-01 23:20:19 +1000 Matthew Waters * ext/gl/gstglcolorscale.c: glcolorscale: use glbasefilter vfuncs Uses less code \o/ Fixes legacy opengl rendering \o/ 2015-09-16 12:50:46 +0200 Philippe Normand * ext/smoothstreaming/gstmssdemux.c: mssdemux: activate streams before configuring bitrate Doing the contrary has no effect and the consequence is that playback will start with the lowest bitrate even if we can already handle higher bitrate. https://bugzilla.gnome.org/show_bug.cgi?id=755108 2015-06-08 15:33:22 +0200 Philippe Normand * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: PlayReady WRM parsing support If the manifest has a ProtectionHeader node then parse it and emit protection events according to the specified protection SystemID. https://bugzilla.gnome.org/show_bug.cgi?id=753613 2015-09-03 15:11:00 +0200 Philippe Normand * ext/smoothstreaming/gstmssmanifest.c: mssdemux: always use timescale for gst timestamp calculation Not doing this can lead the demuxer to attempt downloading fragments for an invalid start time. The server would then send a HTTP Precondition failed error, the demuxer would try some more times to download the invalid fragment and eventually error out. https://bugzilla.gnome.org/show_bug.cgi?id=754523 2015-09-30 08:36:15 +0200 Antoine Jacoutot * gst-libs/gst/gl/Makefile.am: gl: Pass GL_CFLAGS to g-ir-scanner This unbreaks building when some headers are under a non-standard path. e.g. /usr/X11R6/include as on OpenBSD. https://bugzilla.gnome.org/show_bug.cgi?id=755850 2015-09-30 00:44:16 -0700 Aleix Conchillo Flaqué * sys/applemedia/Makefile.am: applemedia: dist missing header files https://bugzilla.gnome.org/show_bug.cgi?id=755852 2015-09-30 13:13:19 +0900 Vineeth TM * tests/check/elements/audiointerleave.c: audiointerleave: typecast bit-mask to guint64 to fix segmentation fault While creating caps in audiointerleave tests, bitmask is being set as 0x9 This is resulting in segmentation fault. Fix the same by typecasting to guint64 https://bugzilla.gnome.org/show_bug.cgi?id=755840 2015-09-30 15:17:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fixup strstr lengths so we don't overrun 2015-09-30 13:31:50 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglupload.c: glupload: remove useless release_buffer It's a leftover from when we weren't outputting GstBuffer's and returning raw texture id's. 2015-09-30 01:53:53 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: glutils: use gst_element_set_context for setting display/other_context 1. So we get tracking inside GstElement properly when e.g. adding to a bin 2. Removes redundant code. Now only one place where GstContext->GstGLDisplay/GstGLContext transformation occurs 3. Fixes a memory leak in the process 4. Make the retrieval of debug categories thread safe 2015-09-29 22:57:52 +1000 Matthew Waters * ext/gtk/gtkgstglwidget.c: gtk: add some GL debug statements to show up in GL traces 2015-08-30 17:11:31 +0100 Tim-Philipp Müller * ext/hls/gstm3u8playlist.c: * ext/hls/gstm3u8playlist.h: hls: m3u8playlist: more clean-ups Remove unused functions; move GstM3U8 struct into .c file, and indent the header so it's nice to read. 2015-08-30 17:01:13 +0100 Tim-Philipp Müller * ext/hls/gstm3u8playlist.c: hls: m3u8playlist: fix silly queue iteration code 2015-08-30 16:40:02 +0100 Tim-Philipp Müller * ext/hls/gstm3u8playlist.c: hls: m3u8playlist: more minor playlist_render() clean-ups Move the TAG defines directly into the code, not sure what their purposes is, these are printf format strings so having them directly as literals in the code where they're used makes the code easier to follow. 2015-08-30 16:34:26 +0100 Tim-Philipp Müller * ext/hls/gstm3u8playlist.c: hls: m3u8playlist: move entry rendering into render_playlist() Makes the code easier to follow and avoids unnecessary temporary strings, since we can just append to the playlist GString directly. 2015-08-30 16:24:41 +0100 Tim-Philipp Müller * ext/hls/gstm3u8playlist.c: * ext/hls/gstm3u8playlist.h: hls: m3u8playlist: simplify gst_m3u8_playlist_render() Remove playlist_str GString variable from GstM3U8Playlist struct, since it's only used temporarily in playlist_render(). Might just as well keep it local then. 2015-08-30 15:55:51 +0100 Tim-Philipp Müller * ext/hls/Makefile.am: * ext/hls/gstfragmented.h: * ext/hls/gsthlssink.c: * ext/hls/gstm3u8playlist.h: hls: remove unused macro and direct gio usage 2015-09-30 00:36:14 +0100 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix downstream key unit events handling with hlssink The buffer timestamps in the collect function will already be running time, don't try to convert them again to running time, this would yield CLOCK_TIME_NONE now that the segment is shifted to account for negative dts. This fixes x264enc ! mpegtsmux ! hlssink, which was broken because mpegtsmux would send a downstream key unit event with running time NONE and then hlssink would immediately send another one upstream and it would just be a flood of force keyframe events in both directions after the first one. This would then break hlssink because it uses multifilesink in next-file=key-unit-event mode, and starting a new file after every few kB does not work well for HLS. 2015-08-20 17:35:04 +0100 Luis de Bethencourt * ext/opencv/gstcverode.c: opencv: erode: remove non-ip transform func Transform is set to be done in place in gstcvdilateerode.c, so the in-place transform function is always used and the other is redundant. Removing it. https://bugzilla.gnome.org/show_bug.cgi?id=753885 2015-08-20 17:23:40 +0100 Luis de Bethencourt * ext/opencv/gstcvdilate.c: opencv: dilate: remove non-ip transform func Transform is set to be done in place in gstcvdilateerode.c, so the in-place transform function is always used and the other is redundant. Removing it. https://bugzilla.gnome.org/show_bug.cgi?id=753885 2015-09-29 20:00:02 +0100 Luis de Bethencourt * ext/opencv/gstcvdilateerode.c: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsobel.c: * ext/opencv/gstretinex.c: * ext/opencv/gstretinex.h: * ext/opencv/gstskindetect.c: opencv: use gst_opencv_video_filter_set_in_place() Using the gst_base_transform function directly won't work. Need to use gst_opencv_video_filter_set_in_place(). 2015-09-29 17:00:22 +0100 Luis de Bethencourt * ext/opencv/gsthanddetect.c: handdetect: check for haar cascade files path When running GStreamer from uninstalled sources, the location of the haar cascade files will be local. Check if running in uninstalled and set the file paths accordingly. 2015-09-26 17:02:09 +0800 John Chang * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: remove unused variable https://bugzilla.gnome.org/show_bug.cgi?id=755656 2015-09-29 13:31:18 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix compilation with older glib version Remove weird use of private gtype defines and fix compilation with older glib versions such as 2.36. https://bugzilla.gnome.org/show_bug.cgi?id=755754 2015-09-29 13:52:47 +0100 Luis de Bethencourt * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvlaplace.h: opencv: cvlaplace: add scale and shift properties Add scale and shift properties so these can be used to tweak the values used in cvConvertScale() instead of using only defaults. 2015-08-28 16:24:24 +0100 Luis de Bethencourt * ext/qt/gstqtsink.cc: qtsink: explicitely fallthrough switch statement In case ret is False, fallthrough to default case. CID #1320705 2015-08-28 16:13:16 +0100 Luis de Bethencourt * gst/videoparsers/gstvc1parse.c: vc1parse: add break to switch case Even though all cases inside VC1_STREAM_FORMAT_ASF are goto or g_assert_not_reached(), add a break at the end to appease Coverity. CID #1320706 2015-09-28 20:56:56 +0200 Arnaud Vrac * ext/assrender/gstassrender.c: assrender: fix leak of tag samples in the tag list Move handling of a GstSample in a separate function, and unref the sample after calling it. libass copies the font data so we don't need to keep it around. https://bugzilla.gnome.org/show_bug.cgi?id=755759 2015-09-28 20:30:17 +0200 Arnaud Vrac * ext/assrender/gstassrender.c: assrender: fix gap event leak and invalid return value We don't want the gap event to be forwarded https://bugzilla.gnome.org/show_bug.cgi?id=755759 2015-09-29 16:17:22 +1000 Matthew Waters * sys/nvenc/gstnvbaseenc.c: nvenc: call the parent class on GstElement::set_context 2015-09-17 16:59:16 +1000 Matthew Waters * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: use the default GL context debug category 2015-07-30 16:42:38 +1000 Matthew Waters * configure.ac: * sys/Makefile.am: * sys/nvenc/Makefile.am: * sys/nvenc/README: * sys/nvenc/TODO: * sys/nvenc/gstnvbaseenc.c: * sys/nvenc/gstnvbaseenc.h: * sys/nvenc/gstnvenc.c: * sys/nvenc/gstnvenc.h: * sys/nvenc/gstnvh264enc.c: * sys/nvenc/gstnvh264enc.h: Add Nvidia based hardware encoder element Currently only h264 is supported https://bugzilla.gnome.org/show_bug.cgi?id=753405 2015-09-29 00:25:00 +1000 Matthew Waters * ext/gtk/gstgtkbasesink.c: gtk: fix assertion when the element has no peer When proxying keyboard/navigation/mouse events, only unref a successfully retreived peer pad. https://bugzilla.gnome.org/show_bug.cgi?id=755738 2015-09-28 15:30:30 +0200 Stefan Sauer * configure.ac: * gst/midi/Makefile.am: * gst/midi/alsamidisrc.c: * gst/midi/alsamidisrc.h: * gst/midi/midi.c: Revert "midi: add an ALSA MIDI sequencer source" This reverts commit cd7f4e524718a2f75467852235e4e13d64d2ac82. 2015-09-28 22:31:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: set the context on the element on a context query Otherwise it's possible to lose the context information if the context is only propagated through queries. 2015-09-28 22:20:29 +1000 Matthew Waters * ext/gl/caopengllayersink.m: * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: chain up to the parent class for GstElement::set_context https://bugzilla.gnome.org/show_bug.cgi?id=705579 2015-08-07 15:28:54 +0200 Antonio Ospite * configure.ac: * gst/midi/Makefile.am: * gst/midi/alsamidisrc.c: * gst/midi/alsamidisrc.h: * gst/midi/midi.c: midi: add an ALSA MIDI sequencer source The alsamidisrc element allows to get input event from ALSA MIDI sequencer devices, and possibly convert them to sound using some downstream element like fluiddec. https://bugzilla.gnome.org/show_bug.cgi?id=738687 2015-08-28 16:35:39 +0100 Luis de Bethencourt * ext/qt/qtitem.cc: qml: remove overwritten value Value in tex is overwritten before being used. Removing it. CID 1320715 https://bugzilla.gnome.org/show_bug.cgi?id=754253 2015-09-02 23:45:07 +1000 Matthew Waters * configure.ac: * ext/qt/Makefile.am: * ext/qt/gstqsgtexture.h: * ext/qt/gstqtgl.h: * ext/qt/qtitem.cc: * ext/qt/qtitem.h: qt: add support for building/running on android Including: - Necessary configure checks - Necessary compile time platform checks - Necessary runtime qt android platform detection - Escaping GLsync definition with Qt's GLES2 implementation https://bugzilla.gnome.org/show_bug.cgi?id=754466 2015-09-02 23:40:31 +1000 Matthew Waters * ext/qt/Makefile.am: qt: don't use CPPFLAGS for tools that cannot use them For example moc will bail out when given arguments it does not know about. The moc specific MOC_CPPFLAGS can still be used to pass flags to moc. https://bugzilla.gnome.org/show_bug.cgi?id=754466 2015-09-02 23:39:54 +1000 Matthew Waters * ext/qt/Makefile.am: qt: rename library to include gst prefix libqtsink -> libgstqtsink https://bugzilla.gnome.org/show_bug.cgi?id=754466 2015-08-31 19:21:54 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: gl: sprinkle some debug markers to ease debugging 2015-08-31 19:18:23 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl/utils: add a function to insert a debug marker These markers are visible in tools that record the GL function calls such as apitrace, et al. Makes it easier to match up GL draw commands with specific elements. 2015-08-31 19:17:21 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/debug.h: gl: add some debugging prototypes 2015-09-26 19:19:50 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: remove unused draw_unlocked function The functionality is provided by draw anyway and is leftover from X11's specific threading requirements that no longer apply. 2015-09-27 13:07:19 +1000 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Send gap updates to the segment stop during stills Ignore the normal gap threshold for laggy streams and immediately catch all streams up to the end of the segment when processing gap updates for a segment during a still frame sequence. https://bugzilla.gnome.org/show_bug.cgi?id=755680 2015-09-27 00:24:24 +1000 Jan Schmidt * gst/dvdspu/Makefile.am: * gst/dvdspu/gstdvdspu-render.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/dvdspu/gstspu-common.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-pgs.h: * gst/dvdspu/gstspu-vobsub-render.c: * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: Revert "dvdspu: render to AYUV overlay" This reverts commit 5016a73190595505dc38b54f8f9a08c4f180f3a6. 2015-09-27 00:24:23 +1000 Jan Schmidt * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstspu-common.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-vobsub-render.c: Revert "dvdspu: render to ARGB overlay instead of AYUV" This reverts commit dd3e9deb2aa695a391b58f24d86a3c00bbc1258a. 2015-09-27 00:24:17 +1000 Jan Schmidt * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: Revert "dvdspu: handle frame size event from upstream" This reverts commit 46aaaa6c309b8a8f6e218142fd5944f5d24f095c. 2015-09-27 00:24:17 +1000 Jan Schmidt * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: Revert "dvdspu: cache overlay composition" This reverts commit aabb8a1a68372f750c63b9b6586e18e829745774. 2015-09-27 00:24:15 +1000 Jan Schmidt * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: Revert "dvdspu: improve negotiation of overlay composition" This reverts commit 1899e2a099932a7a734e7784c20b624517237e18. 2015-09-18 19:07:47 +0200 Arnaud Vrac * gst/dvdspu/gstspu-pgs.c: dvdspu: fix pgs palette colors U and V were inverted https://bugzilla.gnome.org/show_bug.cgi?id=755239 2014-08-27 16:47:22 +0200 Arnaud Vrac * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: dvdspu: improve negotiation of overlay composition Support negotiating GstVideoOverlayComposition downstream while not providing it upstream. https://bugzilla.gnome.org/show_bug.cgi?id=663750 2013-09-02 17:48:50 +0200 Arnaud Vrac * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: dvdspu: cache overlay composition This avoids rendering the overlay buffer for each video frame. https://bugzilla.gnome.org/show_bug.cgi?id=663750 2013-08-30 22:08:01 +0200 Arnaud Vrac * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: dvdspu: handle frame size event from upstream An IDX file or codec_data normally contains the original frame size of the video. Allow upstream to provide this information by sending a custom event, which will allow scaling the overlay correctly. https://bugzilla.gnome.org/show_bug.cgi?id=663750 2013-12-05 21:59:18 +0100 Arnaud Vrac * gst/dvdspu/gstdvdspu.c: dvdspu: allow suffix in dvd event name to allow multiple sticky dvd events https://bugzilla.gnome.org/show_bug.cgi?id=663750 2015-04-07 14:38:08 +0200 Arnaud Vrac * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstspu-common.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: render to ARGB overlay instead of AYUV https://bugzilla.gnome.org/show_bug.cgi?id=663750 2013-01-23 17:59:01 +0100 Arnaud Vrac * gst/dvdspu/Makefile.am: * gst/dvdspu/gstdvdspu-render.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/dvdspu/gstspu-common.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-pgs.h: * gst/dvdspu/gstspu-vobsub-render.c: * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: dvdspu: render to AYUV overlay Instead of only supporting writing SPU data directly to YUV frames, render the SPU data to an intermediate AYUV overlay buffer. The overlay data is then attached to the video frame if downstream supports overlay composition, otherwise the AYUV overlay is blended to the video frame. For the PGS format, the overlay buffer size is set to the size of the Composition Window, and its position in the overlay composition is set to the window position. The objects to render are now cropped when the cropping flag is set. For the Vobsub format, the overlay buffer size is set to the size of the Display Area. Once rendered, the overlay composition rectangle is now moved and scaled to fit the video output size, to avoid clipping. https://bugzilla.gnome.org/show_bug.cgi?id=663750 2013-09-02 17:07:49 +0200 Arnaud Vrac * gst/dvdspu/gstdvdspu.c: dvdspu: pass dvdspu argument to set_caps functions https://bugzilla.gnome.org/show_bug.cgi?id=663750 2015-09-18 19:15:45 +0200 Arnaud Vrac * gst/dvdspu/gstspu-pgs.c: dvdspu: skip unneeded reading of RLE data The RLE data was being read for dumping the SPU image even when the DUMP_FULL_IMAGE macro was not set. https://bugzilla.gnome.org/show_bug.cgi?id=663750 2015-08-29 19:16:38 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: check: Add test for videoaggregator sinkpads being sorted by zorder https://bugzilla.gnome.org/show_bug.cgi?id=754285 2015-09-26 10:21:41 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudioaggregator.c: audiomixer: fix deadlock when G_DISABLE_ASSERT is not defined This makes the audiomixer unit test time out in master. Broke with 587e7c4 2015-09-26 10:49:31 +0200 Sebastian Dröge * tests/check/elements/dash_mpd.c: dash: Fix unit test after internal API change 2015-08-25 17:39:30 +0900 Jimmy Ohn * ext/sndfile/gstsfdec.c: sfdec: Fix typo in goto variable name https://bugzilla.gnome.org/show_bug.cgi?id=754057 2015-08-18 14:16:11 +0100 Chris Bass * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: create src pads for subtitle streams. Create src pads for Representations that contain timed-text subtitles, both when the subtitles are encapsulated in ISO BMFF (i.e., the Representation has mimeType "application/mp4") and when they are unencapsulated (i.e., the Representation has mimeType "application/ttml+xml"). https://bugzilla.gnome.org/show_bug.cgi?id=747774 2015-09-26 00:17:55 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Stop using deprecated gst_segment_to_position() 2015-08-31 16:12:40 +0300 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Don't forward QOS events to sinkpads that had no buffer yet Otherwise they will receive a QOS event that has earliest_time=0 (because we can't have negative timestamps), and consider their buffer as too late https://bugzilla.gnome.org/show_bug.cgi?id=754356 2015-09-22 16:17:38 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/elements/dash_mpd.c: dashdemux: Implement lazy-loading of external periods https://bugzilla.gnome.org/show_bug.cgi?id=752230 2015-09-21 21:05:03 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Load OnLoad external resources immediately instead of on demand https://bugzilla.gnome.org/show_bug.cgi?id=752230 2015-09-08 13:36:23 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Add support for loading external SegmentLists https://bugzilla.gnome.org/show_bug.cgi?id=752230 2015-09-08 13:04:11 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Add support for loading external AdaptationSets https://bugzilla.gnome.org/show_bug.cgi?id=752230 2015-08-21 16:40:10 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Implement loading of external Period nodes The same has to be done for AdaptationSet and SegmentList nodes still. Also this does not correctly implement the semantics: by default Period (and other nodes) should only be loaded when needed, not in the very beginning. We need to implement lazy loading for them, which means adjusting gst_mpd_client_setup_media_presentation(). https://bugzilla.gnome.org/show_bug.cgi?id=752230 2015-08-21 12:06:07 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/Makefile.am: mpdparser: Store an URI downloader in the parser for downloading additional MPD resources if needed https://bugzilla.gnome.org/show_bug.cgi?id=752230 2015-07-10 18:56:29 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: Parse xlink attributes from Period, AdaptationSet and SegmentList We still have to do something useful with them, like actually loading the content behind the URL. https://bugzilla.gnome.org/show_bug.cgi?id=752230 2015-09-16 23:38:24 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Properly handle relative and non-HTTP URIs for the headers/indices gst_uri_join_strings() will return the second parameter if it is an absolute URI. No need to do a (wrong) check if the URI is absolute or not beforehand. https://bugzilla.gnome.org/show_bug.cgi?id=755134 2015-09-16 23:12:54 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: If no Initialization is present in the SegmentBase, assume it is before the indexRange https://bugzilla.gnome.org/show_bug.cgi?id=755132 2015-09-25 23:51:20 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.6.0 === 2015-09-25 23:33:37 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.6.0 2015-09-25 23:01:35 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-09-25 10:32:00 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: use GL_ELEMENT_ARRAY_BUFFER for vbo indices Fixes this error with chromium gpu process: GL_INVALID_OPERATION, glBindBuffer: buffer bound to more than 1 target https://bugzilla.gnome.org/show_bug.cgi?id=755618 2015-09-17 14:17:09 +0100 Julien Isorce * gst-libs/gst/gl/gstglmemory.c: glmemory: fix texture leak in _gl_mem_copy https://bugzilla.gnome.org/show_bug.cgi?id=755456 2015-09-24 18:51:39 +0200 Sebastian Dröge * ext/gtk/gstgtkbasesink.c: gtk: Only run from the main thread in stop() if we created the window We're not doing anything at all from the main thread in other cases. 2015-09-24 15:52:40 +0200 Thibault Saunier * ext/gtk/gtkgstbasewidget.c: gtk: When setting format check if pending format changed In case the format changed fast and the pending format is different than the currently set but the currently set is equal to the pending one we could end up having mismatch between the finally set format and the data stream format. https://bugzilla.gnome.org/show_bug.cgi?id=755542 2015-09-24 15:51:28 +0200 Thibault Saunier * ext/gtk/gstgtkbasesink.c: gtk: Do not forget to release OBJECT_LOCK on error path https://bugzilla.gnome.org/show_bug.cgi?id=755542 2015-09-24 11:37:04 +0200 Thibault Saunier * ext/gtk/Makefile.am: * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkutils.c: * ext/gtk/gstgtkutils.h: * ext/gtk/gtkgstglwidget.c: gtk: Factor out a function to run a function on main thread https://bugzilla.gnome.org/show_bug.cgi?id=755251 2015-09-24 10:51:31 +0200 Thibault Saunier * ext/gtk/gstgtkbasesink.c: gtk: Marshall state changes in the main thread Gtk is not MT safe thus we need to make sure that everything is done in the main thread when working with it. https://bugzilla.gnome.org/show_bug.cgi?id=755251 2015-09-23 15:56:26 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Add a clock epoch that is used as offset whenever restarting the clock Otherwise we're going to return times starting at 0 again after shutting down an element for a specific input/output and then using it again later. https://bugzilla.gnome.org/show_bug.cgi?id=755426 2015-09-22 19:35:00 +0200 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Disable inputs/outputs in PAUSED->READY to allow going to PAUSED again from there https://bugzilla.gnome.org/show_bug.cgi?id=755426 2015-09-23 11:42:51 +0200 Thibault Saunier * ext/gtk/gstgtkbasesink.c: gtksink: Do not show window until we reach the PAUSED state https://bugzilla.gnome.org/show_bug.cgi?id=755459 2015-09-22 14:43:44 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Only check stream->segments for a repeated last segment if we have a static list of segments Otherwise we'll crash, trying to derefence NULL. And if we have no static list of segments, we can't have repeated segments anyway. Regression introduced by cfe2871a5e3c5b1db20470927642b776e055a87a https://bugzilla.gnome.org/show_bug.cgi?id=755411 2015-09-21 19:02:08 +0530 Arun Raghavan * ext/x265/gstx265enc.c: x265enc: Drop incorrect stream-format="avc" in template caps 2015-09-21 10:47:15 +0200 Thibault Saunier * ext/gtk/gstgtkbasesink.c: gtksink: Do not re destroy the GtkWindow if destroyed by the user Otherwise we will get an ASSERT. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=755249 2015-09-21 08:04:40 +0000 Matthew Waters * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: fix rendering with recent resize state tracking 557ca6fda5f831be4aba5819bf7b30b296e575cd didn't change to the necessary gst_gl_window_resize() call for the dispmanx backend. 2015-09-19 11:46:37 +0200 Thibault Saunier * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkbasesink.h: * ext/gtk/gstgtkglsink.c: gtkglsink: Hide and clean the GtkWindow we might create When stopping the sink we should always hide the window. https://bugzilla.gnome.org/show_bug.cgi?id=755249 === release 1.5.91 === 2015-09-18 19:51:49 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.5.91 2015-09-18 19:31:06 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-09-18 18:00:05 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Only skip the remaining part of a GAP buffer We might've queued up a GAP buffer that is only partially inside the current output buffer (i.e. we received it too late!). In that case we should only skip the part of the GAP buffer that is inside the current output buffer, not also the remaining part. Otherwise we forward this pad too far into the future and break synchronization. 2015-09-18 21:14:46 +1000 Matthew Waters * sys/applemedia/vtdec.c: vtdec: disable the texture cache on OSX This a workaround until the incompatibility with CVOpenGLTextureCache and opengl3 contexts is fixed. https://bugzilla.gnome.org/show_bug.cgi?id=754786 2015-09-17 19:42:34 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Keep at least two buffers in the queue in live mode When in live mode, the queue needs to hold the currently processed buffer and one more at least. https://bugzilla.gnome.org/show_bug.cgi?id=754851 2015-09-18 11:55:37 +0200 Sebastian Dröge * po/zh_CN.po: po: Update translations 2015-09-18 15:28:27 +1000 Matthew Waters * sys/applemedia/vtdec.c: vtdec: gst-indent file 2015-09-17 19:56:47 +0100 Tim-Philipp Müller * gst/dvdspu/gstspu-pgs.c: dvdspu: pgs: fix printf format/argument mismatch in debug statements Fixes compiler warnings when extra debugging is enabled at compile time. 2015-09-17 17:54:36 +0100 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: remove unprefix STATISTICS_MESSAGE_NAME after all It was only added during 1.5.x so we might just as well remove it immediately. https://bugzilla.gnome.org/show_bug.cgi?id=754686 2015-09-07 16:57:05 +0200 Philippe Normand * ext/hls/gsthlsdemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: prefix the statistics message name macro Keep old define around for now. https://bugzilla.gnome.org/show_bug.cgi?id=754686 2015-09-18 00:10:10 +1000 Jan Schmidt * gst/pcapparse/gstpcapparse.c: pcapparse: Hook up the recently added change_state vfunc. The state change function was implemented, but not installed, making the compiler complain about the unused function. 2015-09-18 00:20:13 +1000 Jan Schmidt * ext/dtls/gstdtlsconnection.c: * ext/dts/gstdtsdec.c: * ext/gl/gstglstereomix.c: * gst/audiomixer/gstaudioaggregator.c: Don't throw compiler warnings with G_DISABLE_ASSERT Disable code that warns about unused variables when G_DISABLE_ASSERT is defined, as it is in tarballs and pre-releases. 2015-09-17 22:17:24 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: fix non-existent selector warning 557ca6fda5f831be4aba5819bf7b30b296e575cd introduced the queueResize call without implementing the selector 2015-09-17 21:31:39 +1000 Jan Schmidt * gst-libs/gst/gl/gstglwindow.c: glwindow: Fix g_return_val_if_fail in a void function 2015-09-17 15:06:31 +1000 Matthew Waters * sys/applemedia/vtdec.c: applemedia/vtdec: fix negotiation errors when resizing glimagesink GstVideoDecoder has its own logic for detecting when to reconfigure which ultimately calls decide_allocation and results in a new texture cache that has not been configured from our reconfigure check. https://bugzilla.gnome.org/show_bug.cgi?id=755156 2015-09-17 17:22:47 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: request a resize on caps/3d mode changes Fixes incorrect aspect ratio on OSX when changing caps or the 3d output mode. https://bugzilla.gnome.org/show_bug.cgi?id=755111 2015-09-17 17:06:37 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: glwindow: add API to request a resize event on the next draw - glimagesink needs to be able to resize the viewport on aspect ratio changes resulting from either caps changes or 3d output mode changes. - Performing a glViewport outside the GstGLWindow::resize callback will not have the winsys' stack of viewports required to correctly place the output frame. Provide a function to request a resize on the next draw event from the winsys. Also track size changes inside the base GstGLWindow class rather than in each subclass. https://bugzilla.gnome.org/show_bug.cgi?id=755111 2015-09-17 16:55:11 +1000 Matthew Waters * ext/gl/gstgluploadelement.c: gl/uploadelement: fail earlier if we could not upload the buffer 2015-09-17 16:05:21 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: store the correct dimension from the resize events small typo s/width/height/ 2015-09-17 13:47:23 +0900 Vineeth T M * sys/bluez/gstavdtputil.c: avdtputil: fix GError memory leak during failures https://bugzilla.gnome.org/show_bug.cgi?id=755142 2015-09-17 13:35:02 +0900 Vineeth T M * ext/gl/gstglbasemixer.c: * ext/gl/gstglstereosplit.c: * ext/gl/gstgltestsrc.c: * ext/gtk/gtkgstglwidget.c: * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglfilter.c: gl: Fix GError leaks during failures https://bugzilla.gnome.org/show_bug.cgi?id=755140 2015-09-16 00:19:35 +0100 Tim-Philipp Müller * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosink.h: intervideosink: render preroll frames as well Derive from GstVideoSink so that preroll frames will automatically get rendered too, unless the show-preroll-frame property is set to FALSE. Fixes intervideosrc only picking up frames if intervideosink is in PLAYING state. https://bugzilla.gnome.org/show_bug.cgi?id=755049 2015-09-17 00:01:58 +1000 Jan Schmidt * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Check if downstream supports GstVideoOverlayComposition. Fix the negotiation of GstVideoOverlayComposition by checking intersection with the peer caps, rather than just accept-caps, which might only check the pad template. https://bugzilla.gnome.org/show_bug.cgi?id=755113 2015-09-09 14:49:17 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mpdparser: support for negative repeat count in segments Implements negative repeat segment fields, defined in 5.3.9.6.1. 2015-09-08 15:14:13 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: properly read signed r values for S elements The spec defines these as signed in 5.3.9.6.1. Since we don't support this behavior, warn and default to 0 (non repeating), which is the spec's default when the value is not present. https://bugzilla.gnome.org/show_bug.cgi?id=752480 2015-09-09 11:05:35 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mdpparser: catch failures to parse https://bugzilla.gnome.org/show_bug.cgi?id=752480 2015-09-16 17:28:05 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: avoid updating the viewport in the draw loop Fixes flashes/incorrect aspect ratio when resizing glimagesink on OSX. 2015-09-15 21:50:19 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix playback of live streams dashdemux seeks each live stream to its current fragment in the beginning, but the base class does not know about this. Update the demuxer segment with this seek so we generate the correct SEGMENT event and can actually play the stream. This needs some refactoring at some point. https://bugzilla.gnome.org/show_bug.cgi?id=755047 2015-09-15 15:39:11 -0300 Thiago Santos * ext/opus/gstopusdec.c: opusdec: remove check for number of channels opus decoder can convert from different number of channels, no need to check, just let it negotiate and create a new decoder if needed. https://bugzilla.gnome.org/show_bug.cgi?id=755059 2015-09-15 10:00:43 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Only overwrite last return if it was OK Prevents overwriting other conditions that would be more important, such as EOS. https://bugzilla.gnome.org/show_bug.cgi?id=755042 2015-09-15 09:58:20 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: fix return when trying to advance in subfragmented stream Even if it doesn't actually advance the subfragment in the default way for streams that have subfragments, it can help the base class to return EOS when there is no more fragments instead of signaling it that it should continue downloading. https://bugzilla.gnome.org/show_bug.cgi?id=755042 2015-09-15 11:34:12 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: gl: bufferpool take into account video stride alignment requirements when allocating memory. Fixes crashes with avdec_h265 in the AVX2 code path which requires 32-byte stride alignment, but the GstAllocationParams only specified a 16-byte alignment. https://bugzilla.gnome.org/show_bug.cgi?id=754120 2015-09-15 13:40:58 +0200 Thibault Saunier * ext/soundtouch/gstpitch.cc: pitch: Set seqnum on newly created segment event https://bugzilla.gnome.org/show_bug.cgi?id=755012 2015-09-11 21:37:08 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Fix mixup of running times and segment positions We have to queue buffers based on their running time, not based on the segment position. Also return running time from GstAggregator::get_next_time() instead of a segment position, as required by the API. Also only update the segment position after we pushed a buffer, otherwise we're going to push down a segment event with the next position already. https://bugzilla.gnome.org/show_bug.cgi?id=753196 2015-09-11 16:56:40 +0200 Sebastian Dröge * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Use stream time in the position query instead of segment position https://bugzilla.gnome.org/show_bug.cgi?id=753196 2015-09-11 12:22:51 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix mixup of running times and segment positions We have to queue buffers based on their running time, not based on the segment position. Also return running time from GstAggregator::get_next_time() instead of a segment position, as required by the API. Also only update the segment position after we pushed a buffer, otherwise we're going to push down a segment event with the next position already. https://bugzilla.gnome.org/show_bug.cgi?id=753196 2015-09-11 12:21:50 +0200 Sebastian Dröge * gst-libs/gst/base/gstaggregator.h: aggregator: Document that get_next_time() should return running time https://bugzilla.gnome.org/show_bug.cgi?id=753196 2015-09-03 14:20:00 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: Don't consider period start times in periods with segment lists either https://bugzilla.gnome.org/show_bug.cgi?id=754222 2015-09-03 10:26:03 +0300 Sebastian Dröge * tests/check/elements/dash_mpd.c: mpdparser: Fix unit test that assumed that fragment timestamps should include the period start timestamp https://bugzilla.gnome.org/show_bug.cgi?id=754222 2015-09-02 18:33:51 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Export the period start time to the base class https://bugzilla.gnome.org/show_bug.cgi?id=754222 2015-09-02 18:29:43 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Properly implement timestamping of multi-period streams Each period will start again with pts 0 + period presentation offset, which is also going to be the presentation time inside the container stream if any. However all periods together should form a continuous timeline, with regard to stream time and running time. For making this possible we keep track of the "user requested segment", i.e. the seek events, inside the demuxer without adjusting anything and taking this demuxer segment only as orientation for modified segments per stream. This per stream segments will have their segment.start at pts that would be produced for this stream in this period, and the segment.base/time adjusted so that this pts maps to the running and stream time this period should have in the context of all other periods. https://bugzilla.gnome.org/show_bug.cgi?id=754222 2015-09-01 13:13:58 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: Revert "dashdemux: Subtract the period start time from the presentation offset" This reverts commit 626a8f0a74f8ea748b811b74ba9e7ae2baea2cca. This allows us to get the plain presentation offset and the period start time separately. We have to adjust the timestamp by the presentation offset, but the period start time should only adjust the stream time and running time. https://bugzilla.gnome.org/show_bug.cgi?id=752409 2015-09-01 13:12:45 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: Revert "dashdemux: Include the period start in the fragment timestamps in all cases" This reverts commit e671ad25a989cb21c62c7a5867c2090890ce49ba. The timestamps should restart at 0 again for each period, but we have to adjust the segment to map those timestamps to the actual stream time and running time of that period. Otherwise we would have timestamps that conflict with the ones from the tfdt inside the MP4 container, which are restarting at 0 for each period. https://bugzilla.gnome.org/show_bug.cgi?id=752409 2015-09-14 19:03:10 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Consider the repeat count when checking if a segment is the last one Otherwise we play only the first repetition of the last segment and then EOS. https://bugzilla.gnome.org/show_bug.cgi?id=752480 2015-09-14 13:56:10 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: also check for subfragments on has_next_fragment In dash isombff profile the fragment is split into subframents where bitrate switching is possible. Also take that into consideration when checking if a stream has next fragments. 2015-09-11 11:22:35 +0200 Miguel París Díaz * ext/opus/gstopusenc.c: opusenc: improve deprecated properties docs https://bugzilla.gnome.org/show_bug.cgi?id=754819 2015-09-11 11:11:09 +0200 Miguel París Díaz * ext/opus/gstopusenc.c: opusenc: do not throw g_warning when getting deprecated properties https://bugzilla.gnome.org/show_bug.cgi?id=754819 2015-09-09 19:51:18 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: fix caps query to properly handle alpha formats Only accept alpha if downstream has alpha as well. It could theoretically accept alpha unconditionally if blending is properly implemented for handle it but at the moment this is a missing feature. Improves the caps query by also comparing with the template caps to filter by what the subclass supports. https://bugzilla.gnome.org/show_bug.cgi?id=754465 2015-09-12 00:51:52 +1000 Jan Schmidt * sys/applemedia/corevideotexturecache.m: vtdec: Use R/RG textures for NV12 when the context provides them Fixes playback to GL memory on iOS, where the colours are messed up by passing Luminance/LuminanceAlpha textures where color convert expects R/RG textures. https://bugzilla.gnome.org/show_bug.cgi?id=754504 2015-09-08 17:17:36 +1000 Jan Schmidt * sys/applemedia/vtdec.c: vtdec: Prefer GL output caps. Prefer GL caps by putting them first in the pad template and intersecting using GST_CAPS_INTERSECT_FIRST. 2015-09-10 19:02:12 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265: Fix the selection of Active Ref Pic Set If short_term_ref_pic_set_sps_flag is FALSE, the ShortTermRefPicSet structure is supposed to derive from slice header. Which means, CurrRpsIdx is equal to num_short_term_ref_pic_sets. But the number of refpicsets communicated via sps header is only num_short_term_ref_pic_sets - 1. And we are using slice_header structure to reference the last entry, which is ShortTermRefPicSet[num_short_term_ref_pic_sets]. https://bugzilla.gnome.org/show_bug.cgi?id=754834 2015-09-10 16:28:31 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265 : Fix default scaling list values Fix the default_scaling_list values based on Table 7-6 https://bugzilla.gnome.org/show_bug.cgi?id=754834 2015-09-10 14:11:58 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: less-than-zero comparison of an unsigned value is never true Use the correct type, GstClockTimeDiff, instead. CID 1323742 2015-09-10 00:07:18 +1000 Matthew Waters * configure.ac: * ext/gtk/gtkgstglwidget.c: * ext/qt/qtitem.cc: gtk, qt: more specifically define the compile time requirements Otherwise we could include headers/configurations that will never been installed. https://bugzilla.gnome.org/show_bug.cgi?id=754732 2015-09-02 23:42:34 +1000 Matthew Waters * configure.ac: build/qt: indent configure file don't mix tabs and spaces https://bugzilla.gnome.org/show_bug.cgi?id=754466 2015-09-10 00:00:11 +1000 Matthew Waters * ext/qt/gstqsgtexture.cc: qt: use our function table instead of directly calling gl functions Otherwise when building with --as-needed we would need to link to a GL or GLES library. https://bugzilla.gnome.org/show_bug.cgi?id=754732 2015-09-09 23:53:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.h: gl/api: use public rather than private define HAVE_IOS is only defined for the build of this module so attempting to use gstgl in iOS would result in incorrect GL includes. Use GST_GL_HAVE_PLATFORM_EAGL instead for choosing the iOS GL header. 2015-09-03 16:36:57 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Handle pipelines where the running time does not start around 0 properly We were converting all times to our internal running times, that is the time the sink itself spent in PLAYING already. But forgot to do that for the running time calculated from the buffer timestamps. As such, all buffers were scheduled much later if the pipeline's running time did not start at 0. This happens for example if a base time is explicitly set on the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=754528 2015-09-07 13:36:19 +0300 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Consider pipeline latency, render delay and ts offset when scheduling frames Without this, we will schedule all frames too late in live pipelines. https://bugzilla.gnome.org/show_bug.cgi?id=754666 2015-09-09 13:58:05 +0900 Kouhei Sutou * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: fix build error for 64bit Windows build by MinGW Casting to UINT from HMIXER generates the following warning with 64bit Windows target MinGW: gstdirectsoundsrc.c: In function 'gst_directsound_src_mixer_find': gstdirectsoundsrc.c:733:30: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] mmres = mixerGetDevCaps ((UINT) dsoundsrc->mixer, ^ cc1: all warnings being treated as errors We can use portable GPOINTER_TO_UINT() macro for this propose. https://bugzilla.gnome.org/show_bug.cgi?id=754756 2015-09-09 09:33:01 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: Also unbind renderbuffer after setting up framebuffer https://bugzilla.gnome.org/show_bug.cgi?id=754757 2015-09-09 09:27:17 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: Don't make context uncurrent just to make it current again in the next line Also binding the framebuffer again is unnecessary then as it was just bound a few lines before while the context was current. https://bugzilla.gnome.org/show_bug.cgi?id=754757 2015-09-07 12:09:41 +0100 Vincent Penquerc'h * ext/dash/gstmpdparser.c: mpdparser: fix period start time scaling This GstStreamPeriod start value is expressed in nanoseconds, and the glib time addition function expects microseconds. There seems to have been a confusion with GstPeriodNode's start field, which is expressed in milliseconds. Additionally, add a warning if the timestamp modification did not succeed, and NULL was returned. 2015-09-05 23:38:44 +1000 Jan Schmidt * ext/faac/gstfaac.c: faac: Add bitrate info to the tags output. Makes it possible for muxers to know the target bitrate as soon as encoding starts, which flvmux now uses. 2015-09-05 01:50:41 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: Ensure all arguments to CLAMP are signed int If any of the arguments to CLAMP are unsigned integers, the comparison causes an automatic conversion of the signed int to unsigned, which causes -1 to become UINT_MAX and get clamped to the high value of the CLAMP instead of 0. See 716 at http://c0x.coding-guidelines.com/6.3.1.8.html Also add a test for this. https://bugzilla.gnome.org/show_bug.cgi?id=754576 2015-09-04 15:43:40 +0200 Thibault Saunier * ext/gtk/gtkgstbasewidget.c: gtk: Do not consider GtkEvents as handled Applications might still want to use them after the sink transformed them into GstNavigation events 2015-09-02 19:16:56 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: lift restriction of changing pixel-aspect-ratio The videoaggregator can convert PAR, there is no reason for restricting it. https://bugzilla.gnome.org/show_bug.cgi?id=754291 2015-08-07 17:27:48 +0530 Nirbheek Chauhan * configure.ac: * ext/qt/qtitem.cc: qmlsink: Ensure that at least one windowing system is available Otherwise, we'll just crash at runtime because the gl context is NULL https://bugzilla.gnome.org/show_bug.cgi?id=754108 2015-08-28 20:33:40 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: pcapparse: Reset state on flush and state changes https://bugzilla.gnome.org/show_bug.cgi?id=753152 2015-08-31 18:06:31 +0100 Tim-Philipp Müller * ext/gtk/gtkgstglwidget.c: * ext/qt/gstqtsink.cc: * ext/qt/qtitem.cc: * gst-libs/gst/gl/gstglcontext.c: gtk, qt, gl: fix typo in debug and error messages 2015-08-28 23:05:20 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Also ignore start-time on seek from gst_element_send_event() https://bugzilla.gnome.org/show_bug.cgi?id=753806 2015-08-29 16:51:08 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: variables in clamp_rectangle() should be signed x/y/w/h are signed integers. As can be seen in GstCompositorPad. The prototype for clamp_rectangle was wrong. This commit reverts the change and fixes the prototype. This reverts commit bca444ea4a84c39e9989681f892f6e4cb2033cf9. 2015-08-28 19:55:59 +0100 Tim-Philipp Müller * ext/hls/m3u8.c: * ext/hls/m3u8.h: * gst/mpegdemux/gstmpegdemux.c: * sys/pvr2d/pvr_includes/dri2_ws.h: * sys/pvr2d/pvr_includes/img_defs.h: * sys/pvr2d/pvr_includes/img_types.h: * sys/pvr2d/pvr_includes/pvr2d.h: * sys/pvr2d/pvr_includes/servicesext.h: * sys/pvr2d/pvr_includes/wsegl.h: * sys/uvch264/gstuvch264_mjpgdemux.c: Fix file permissions of some files 2015-08-28 15:21:11 +0100 Luis de Bethencourt * gst/compositor/compositor.c: compositor: remove check for below zero for unsigned value CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative number since it is an unsigned integer. Removing that check and only checking if it is bigger than max by using MIN(). CID 1320707 2015-08-28 13:42:29 +0200 Vanessa Chipirrás Navalón * ext/opencv/Makefile.am: * ext/opencv/gstedgedetect.cpp: edgedetect: Rename gstedgedetect.c to gstedgedetect.cpp for consistency. Change the file extension to cpp and add it into Makefile for consistency with other elements of opencv. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-08-27 21:51:52 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstedgedetect.c: edgedetect: remove unused and useless functions. The cvSmooth cvNot functions and do not have the correct input parameters. Furthermore, cvSmooth function is not necessary for edge detection, because the Canny function makes the step of smoothing the image. And cvNot function is useless because there aren't changes if this function is eliminated. https://bugzilla.gnome.org/show_bug.cgi?id=754148 2015-08-26 18:40:35 +0100 Luis de Bethencourt * ext/opencv/gsttextoverlay.c: * ext/opencv/gsttextoverlay.h: textoverlay: remove unused variable Memory is reserved for this variable but never used. Removing it. 2015-08-26 18:21:15 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfaceblur.h: faceblur: remove unused variable. Memory is reserved for this variable and then released without making any use of it. https://bugzilla.gnome.org/show_bug.cgi?id=753994 2015-08-26 17:56:50 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstfaceblur.cpp: * ext/opencv/gstfaceblur.h: faceblur: need to migrate to C++. The cascade classifier changes its structure on new version of OpenCV 2.4.11. It is need to migrate to C++ to utilize the new load method of OpenCV which allows to load the old and new classifiers. https://bugzilla.gnome.org/show_bug.cgi?id=753994 2015-08-26 12:47:58 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstfaceblur.cpp: faceblur: Check CvHaarClassifierCascade is release before being modified. For PROP_PROFILE case that exist inside gst_face_blur_set_property function loads the new XML file in the CvHaarClassifierCascade property without first checking that it is released because maybe there is an XML file previously loaded. https://bugzilla.gnome.org/show_bug.cgi?id=753994 2015-08-26 12:27:15 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstfaceblur.cpp: faceblur: Code refactoring of gst_face_blur_load_profile. Changes inside the gst_face_blur_load_profile function, the number of input parameters and in lines where it is used due to it cannot be used generically. https://bugzilla.gnome.org/show_bug.cgi?id=753994 2015-08-26 11:57:24 +0200 Vanessa Chipirrás Navalón * ext/opencv/Makefile.am: * ext/opencv/gstfaceblur.cpp: faceblur: Change gstfaceblur to C++. Change the gstfaceblur.c file to cpp and add it into Makefile. It is necessary to migrate the faceblur plugin to C++, in order to load new and old classifiers, to make faceblur work with newer versions of Opencv. https://bugzilla.gnome.org/show_bug.cgi?id=753994 2015-08-27 11:10:05 +0300 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Fix caps memory leak by making static caps actually static See https://bugzilla.gnome.org/show_bug.cgi?id=754157 2015-08-21 16:13:43 +0100 Tim-Philipp Müller * ext/dash/gstdashdemux.c: dashdemux: don't meddle with the class struct from an instance Fix some very dubious code. The class methods should always be set, and the instance-specific check should then be done inside the method. For data_received that's there already, for finish_fragment we need to add it. https://bugzilla.gnome.org/show_bug.cgi?id=753937 2015-08-26 10:52:46 -0400 Nicolas Dufresne * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: h264parse/h265parse: Fix negotiation crash As it's recursive, gst_pad_get_allowed_caps() may also return empty for anything incompatible downstream. EMPTY is not valid caps value for gst_caps_fixate(). This lead to assertion and then crash. Ideally, the negotiate function should be re-factored to have a return value, and we could make the negotiation fails earlier. https://bugzilla.gnome.org/show_bug.cgi?id=754122 2015-08-26 15:40:16 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: Actually use the output resolution for clamping The obscured check in compositor was using the dimensions of the pad to clamp the h/w of the pad instead of the output resolution, and was doing an incorrect calculation to do so. Fix that by simplifying the whole calculation by using corner coordinates. Also add a test for this bug which fell through the cracks, and just skip all the obscured tests if the pad's alpha is 0.0. https://bugzilla.gnome.org/show_bug.cgi?id=754107 2015-08-24 07:46:27 +0300 XuGuangxin * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparsers: h265: Fix tile row and column parsing Section 6.5.1: Coding tree block raster and tile scanning conversion process Follow the equations 6-3 and 6-4 This will provide correct offset_max in slice_header for parsing num_entry_point_offsets. https://bugzilla.gnome.org/show_bug.cgi?id=754024 Signed-off-by: Sreerenj Balachandran 2015-08-07 12:53:23 +0300 Athanasios Oikonomou * ext/hls/m3u8.c: hlsdemux: select correct position for live streams that don't remove fragments Some live streams (eg youtube) don't remove fragments in order to allow seeking back in time (live + vod). When gst_m3u8_client_has_next_fragment is called, we are getting wrong fragment because current_file points in first file of the fragments list resulting in watching the stream from the beginning again. This patch sets current_file to nth fragment for live streams, then on gst_m3u8_client_has_next_fragment will keep up with the live stream. https://bugzilla.gnome.org/show_bug.cgi?id=753344 2015-08-24 19:47:01 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: glupload: Use base class metadata copy function This allow properly copying selected meta, like the composition overlay. Note that output buffer need to be readable, but GlUpload keeps a ref. For now, simply drop GlUpload ref after perform, leaving that ref has no purpose. The method shall be removed in the future. https://bugzilla.gnome.org/show_bug.cgi?id=754047 2015-08-24 19:28:10 -0400 Nicolas Dufresne * ext/gl/gstglcolorconvertelement.c: glcolorconvert: Use base transform metadata copy Use base class default method instead of only copying flags and timestamp. This way, selected meta's like compostion overlay will be passed downstream as expected. https://bugzilla.gnome.org/show_bug.cgi?id=754047 2015-08-25 10:09:14 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Unref context after setting a window handle gst_gl_window_get_context() returns a new reference. Hopefully fixes https://bugzilla.gnome.org/show_bug.cgi?id=753758 2015-08-24 21:28:46 +0300 Sebastian Dröge * win32/common/libgstcodecparsers.def: win32: Add new h265 parser symbols 2015-08-24 08:06:15 +0300 lyb * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparsers: h265: Add APIs for up-right-diagonal/raster scan conversion As per 7-42 and 7-43 the ScalingFactor's scanIdx is 0, which is "up-right-diagonal" scan. Add APIs for converting up-right-diagonal to raster and vise versa. https://bugzilla.gnome.org/show_bug.cgi?id=754024 2015-08-24 04:18:52 +0300 XuGuangxin * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265: Fix the range of delta_chroma_log2_weight_denom Being more strict on specification, According to 7.4.7.3, delta_chroma_log2_weight_denom should be in the range of [(0 - luma_log2_weight_denom), (7 - luma_log2_weight_denom)] https://bugzilla.gnome.org/show_bug.cgi?id=754024 2015-08-23 23:38:21 +0100 Tim-Philipp Müller * gst/mpegtsdemux/tsdemux.c: tsdemux: fix latency handling again The tsdemux latency should always be added to the minimum latency (which is always a valid clock time value). The "cleanup" in commit a1f709c2 made it so that it would not be added if upstream reported 0 as minimum latency (as e.g. udpsrc would). This broke playback of live mpeg-ts streaming in some cases, leading to playback stutter due to a too-small configured latency for the pipeline. https://bugzilla.gnome.org/show_bug.cgi?id=751508 2015-08-21 13:42:18 -0700 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: update display size before sending event This is minor issue, as the reconfigure event is asynchronous. Basically, update width/height before sending the event. 2015-08-20 17:27:34 -0700 Nicolas Dufresne * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: Let base transform relay the meta api for us During allocation query, when this element is not passthrough, it must relay the overlay compostion meta and it's parameters. Fortunatly, base transform can do this for us. https://bugzilla.gnome.org/show_bug.cgi?id=753850 2015-08-21 20:29:24 +0200 Koop Mast * configure.ac: curl: Give netinet/ip.h it own configure check On FreeBSD netinet/ip.h needs the sys/types.h and netinet/in.h header before it can be tested. https://bugzilla.gnome.org/show_bug.cgi?id=753944 2015-08-19 17:42:49 +0100 Luis de Bethencourt * ext/dts/gstdtsdec.c: dtsdec: remove unused value length is set to a different value before being read. Remove initial value. Silences compiler warning. 2015-08-21 05:26:25 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstfacedetect.h: facedetect: remove unnecessary variable. Memory is reserved for this variable and then released without making any use of it. https://bugzilla.gnome.org/show_bug.cgi?id=748377 2015-08-21 14:07:32 +0900 Justin Kim * gst-libs/gst/gl/gstglcontext.c: glcontext: add specific error message when missing GL_SHADING_LANGUAGE_VERSION GL_SHADING_LANGUAGE_VERSION was introduced since ES 2.0, but in some android emulator doesn't support this feature. To prevent confusion for developer, the error message need to be more clear. https://bugzilla.gnome.org/show_bug.cgi?id=753905 2015-08-21 16:44:43 +0900 hoonhee.lee * tests/check/elements/audiomixer.c: tests: audiomixer: remove duplicated word in comment https://bugzilla.gnome.org/show_bug.cgi?id=753915 2015-08-21 16:31:41 +0900 hoonhee.lee * ext/gl/caopengllayersink.m: caopengllayersink: Don't chain up to parent's query handling twice for DRAIN query https://bugzilla.gnome.org/show_bug.cgi?id=753913 2015-08-20 15:00:02 +0100 Alex Ashley * tests/check/elements/hlsdemux_m3u8.c: check: hlsdemux: make duration unit test robust to floating point rounding The test_playlist_with_doubles_duration() test fails on some platforms due to rounding errors that occur when m3u8.c converts from the floating point value in the HLS manifest to a GstClockTime. Using assert_equals_float() fixes this because this function handles the rounding error issues by accepting almost equal. https://bugzilla.gnome.org/show_bug.cgi?id=753881 2015-08-17 18:35:58 +0200 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: only call gl_{stop,start} if the context changed Removes the redundant GL object creation/deletion on every decide_allocation call which is being called for every caps change. Thus reduces the required GL state changes on reconfigure events which are being sent by glimagesink/xvimagesink 2015-08-20 14:09:37 +0200 Carlos Rafael Giani * configure.ac: opencv: Fix OpenCV data path check to work with cross compilation https://bugzilla.gnome.org/show_bug.cgi?id=753651 2015-08-20 14:11:56 +0300 Ben Browitt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Always set the pad's buffer_vinfo when storing a buffer Otherwise it might be unset, and then the buffer is used and gst_video_frame_map() will crash because of invalid video-info. https://bugzilla.gnome.org/show_bug.cgi?id=753805 2015-08-19 21:33:09 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: Handle encoding specified in the element when dumping nodes Previous patch did not handle the case where an encoding (e.g. UTF-8) is specified in the element. Added an extra test for with and without encoding. https://bugzilla.gnome.org/show_bug.cgi?id=753813 2013-01-31 14:03:40 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: assrender: check video frame mapping succeeded before blending If the mapping fails just skip overlay rendering and push the video frame downstream. https://bugzilla.gnome.org/show_bug.cgi?id=753822 2015-08-19 15:31:16 +0200 Arnaud Vrac * configure.ac: * gst-libs/gst/video/Makefile.am: * sys/uvch264/Makefile.am: * tests/examples/uvch264/Makefile.am: configure.ac: fix build when the uvch264 plugin is not selected Instead of checking for the gstreamer-video-1.0 package is installed, just assume it is since we already check for the -base dependency. With this replace the GST_VIDEO_* variables in makefiles and directly link with libgstvideo. https://bugzilla.gnome.org/show_bug.cgi?id=753820 2015-08-19 11:29:43 +0100 Alex Ashley * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: replace xmlNodeDump with xmlNodeDumpOutput When running on an STB, the function gst_mpdparser_get_xml_node_as_string causes a segmentation fault. This code works correctly on a Linux desktop. Looking at the libxml documentation, the xmlNodeDump is deprecated. Replacing the use of xmlNodeDump with xmlNodeDumpOutput fixes the segfault on the STB and removes the use of the deprecated function. 2015-08-19 12:37:40 +0100 Luis de Bethencourt * configure.ac: configure: check for Qt version Usage of QSGSimpleTextureNode::setOwnsTexture() was added in commit 6b8cf8419d8ea80081de8150a6b1c3cf763c4d69, this function was added in Qt 5.4.0. Check for this version or later. https://bugzilla.gnome.org/show_bug.cgi?id=753812 2015-07-16 22:57:36 +0200 Arnaud Vrac * ext/hls/gsthlsdemux.c: hlsdemux: abort playlist update when cancelled Otherwise the download thread will get stuck, since the downloader is disabled. 2015-08-19 13:52:21 +0300 Sebastian Dröge * ext/gtk/gtkgstglwidget.c: gtk/gl: Use our GL function table instead of directly calling GL functions Otherwise we would have to link the plugin to the GL libraries directly. === release 1.5.90 === 2015-08-19 13:46:53 +0300 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.5.90 2015-08-19 12:52:18 +0300 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-08-19 11:36:13 +0300 Sebastian Dröge * po/ky.po: * po/nb.po: * po/sv.po: po: Update translations 2015-08-18 13:56:59 +0200 Guillaume Marquebielle * gst/liveadder/liveadder.c: liveadder: fix assertion when copying buffer region In gst_live_adder_chain() function, calls to gst_buffer_copy_region() can lead to assertion as 'offset + size <= bufsize' is not respected. Indeed 'offset' and 'size' parameters are calculated through calling gst_live_adder_length_from_duration(), and thus gst_util_uint64_scale_int_round(). Depending on the nearest integers, rounded values 'offset' and 'size' can then trigger the assertion. This case mainly occurs when 'skip' value is > 0 in chain function process. https://bugzilla.gnome.org/show_bug.cgi?id=753759 2015-08-17 18:06:30 +0200 Vanessa Chipirrás Navalón * ext/opencv/gsthanddetect.c: * ext/opencv/gsthanddetect.h: handdetect: remove unnecessary variable. Memory is reserved for this variable and then released without making any use of it. https://bugzilla.gnome.org/show_bug.cgi?id=752528 2015-08-17 18:02:28 +0200 Vanessa Chipirrás Navalón * ext/opencv/gsthanddetect.c: handdetect: check CvHaarClassifierCascade is release before being modified. Make sure a previous cascade, if it exists, is released before loading a new XML file onto it. https://bugzilla.gnome.org/show_bug.cgi?id=752528 2015-08-17 17:47:42 +0200 Vanessa Chipirrás Navalón * ext/opencv/gsthanddetect.c: handdetect: code refactoring of gst_handdetect_load_profile. Change gst_handdetect_load_profile() so it can be used generically. https://bugzilla.gnome.org/show_bug.cgi?id=752528 2015-08-18 11:54:33 +0300 Sebastian Dröge * ext/daala/gstdaalaenc.c: daalaenc: Fix build And also only generate the supported caps once, not on every CAPS/ACCEPT_CAPS query. It's not that cheap. 2015-08-17 23:44:42 +0100 Luis de Bethencourt * tests/examples/opencv/gstfacedetect_test.c: examples: facedetect: add silent option By default the example floods the screen with the detected face values. Add an option to avoid this for frail terminals. 2015-08-17 14:38:52 -0300 Thiago Santos * ext/x265/gstx265enc.c: x265enc: add accept-caps handling Ovewrite default handling to avoid doing a caps query. Check the received caps against the possible formats supported by the x265 library. 2015-08-17 14:32:56 -0300 Thiago Santos * ext/daala/gstdaalaenc.c: daalaenc: add accept-caps handling Ovewrite default handling to avoid doing a caps query. Check the received caps against the possible formats supported by the daala library. 2015-08-16 07:06:44 -0300 Thiago Santos * ext/openjpeg/gstopenjpegenc.c: * ext/schroedinger/gstschroenc.c: * ext/webp/gstwebpenc.c: * gst/pnm/gstpnmenc.c: videoencoders: use template subset check for accept-caps It is faster than doing a query that propagates downstream and should be enough Elements: openjpegenc, schroenc, webpenc, pnmenc 2015-08-17 17:38:15 +0100 Luis de Bethencourt * configure.ac: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.cpp: opencv: support alternative path convention Some distributions store OpenCV files in /usr/share/opencv and some others (and default when building from source) install them in /usr/share/OpenCV. Support both to find cascade files. https://bugzilla.gnome.org/show_bug.cgi?id=753651 2015-08-16 21:18:50 +0200 Rico Tzschichholz * ext/dash/Makefile.am: dashdemux: link against gio for g_resolver and g_inet_address_from_string Add missing gio-2.0 CFLAGS/LIBS to fix linker failure 2015-08-16 07:18:34 -0300 Thiago Santos * ext/faac/gstfaac.c: * ext/gsm/gstgsmenc.c: * ext/opus/gstopusenc.c: * ext/sbc/gstsbcenc.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * gst/adpcmenc/adpcmenc.c: * gst/siren/gstsirenenc.c: audioencoders: use template subset check for accept-caps It is faster than doing a query that propagates downstream and should be enough Elements: faac, gsmenc, opusenc, sbcenc, voamrwbenc, adpcmenc, sirenenc 2015-08-17 07:55:03 -0300 Thiago Santos * ext/voaacenc/gstvoaacenc.c: voaacenc: Remove custom getcaps and just use the template We know from the beginning the caps that are acceptable, no need for custom getcaps or manually generating caps. 2015-08-17 07:54:36 -0300 Thiago Santos * ext/voaacenc/gstvoaacenc.c: voaacenc: add version to gst-launch string on documentation gst-launch will call the 0.10 version, we want 1.0 2015-08-17 07:15:00 -0300 Thiago Santos * ext/faac/gstfaac.c: faac: make template pad caps more accurate and remove custom getcaps Allows reusing baseclass caps query handling and simplifying negotiation code. 2015-08-17 11:50:28 +0100 Tim-Philipp Müller * ext/mpg123/gstmpg123audiodec.c: mpg123: still reset pending audio info on hard flush Follow-up to previous commit. https://bugzilla.gnome.org/show_bug.cgi?id=752431 2015-07-15 10:44:02 -0600 Jason Litzinger * ext/mpg123/gstmpg123audiodec.c: mpg123: fix handling of sample rate change during playback If the sample rate of the media changes, the resulting flush will clear the has_next_audioinfo flag, and the caps won't be sent downstream. https://bugzilla.gnome.org/show_bug.cgi?id=752431 2015-03-17 17:55:26 -0400 Olivier Crête * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstvc1parse.c: videoparsers: Use gst_base_parse_merge_tags() Instead of squashing all upstream tags https://bugzilla.gnome.org/show_bug.cgi?id=679768 2015-08-16 18:13:12 +0200 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Recalculate offset and size in raw upload As we only expose the mapped portion of the frame into the GL memory object (and not the original padding) we need to re-calculate the size and offset. 2015-08-16 08:49:35 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: fix off by one seeking issue When seeking to the last second of a mpd it would reject the seek because the comparison was < instead of <= This fails the important use case of seeking to the end of a file to play it back in reverse from the end 2015-08-16 12:55:57 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: Fix illogical comparision A variable can't be two values at once. We want to stop if it's not the actual ts *AND* not the other ts CID #1316475 2015-08-16 12:52:09 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Free UTCTiming struct if there are no values associated with it CID 1316479 2015-08-15 23:36:01 +0200 Edward Hervey * tests/check/Makefile.am: check: Link against GModule for tests using g_module_* 2015-08-15 19:04:27 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Demote debugging level 2015-08-15 19:01:00 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Actually wait for playlist update when requested There are several cases where a HLS server could temporarily have wrong fragments, or reconfigure the playlist. In those cases, when we get fragment download failures, we *really* want to wait a bit (for the next playlist update) before retrying to get fragments. Previously this method was first checking to see if there was next fragments (according to the previous manifest update) before waiting for the next update. The problem was that if that if there is a temporary failure on the server, that's uncorrelated to whether the manifest contains next fragments or not. 2015-08-14 12:25:19 +0200 Edward Hervey * tests/check/elements/glimagesink.c: * tests/check/generic/states.c: checks: Ensure thread-safe libX11/GL when running tests 2015-08-15 12:58:40 -0300 Thiago Santos * ext/dts/gstdtsdec.c: * ext/faad/gstfaad.c: * ext/gsm/gstgsmdec.c: * ext/mpg123/gstmpg123audiodec.c: * ext/opus/gstopusdec.c: * ext/sbc/gstsbcdec.c: * gst/adpcmdec/adpcmdec.c: * gst/siren/gstsirendec.c: audiodecoders: use default pad accept-caps handling Avoids useless check of downstream caps when handling an accept-caps query Elements: dtsdec, faad, gsmdec, mpg123audiodec, opusdec, sbcdec, adpcmdec, sirendec 2015-08-15 12:55:49 -0300 Thiago Santos * ext/daala/gstdaaladec.c: * ext/libde265/libde265-dec.c: * ext/openexr/gstopenexrdec.cpp: * ext/openjpeg/gstopenjpegdec.c: * ext/rsvg/gstrsvgdec.c: * ext/schroedinger/gstschrodec.c: * ext/webp/gstwebpdec.c: * gst/pnm/gstpnmdec.c: * gst/vmnc/vmncdec.c: videodecoders: use default pad accept-caps handling Avoids useless check of downstream caps when handling an accept-caps query Elements: daaladec, libde265dec, openjpegdec, rsvgdec, schrodec, webpdec, pnmdec, vmncdec, openexrdec 2015-08-15 16:22:20 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: make sure we call handle_nal for each NAL Call handle_nal for each NAL in the STAP-A RTP packet. This makes sure we correctly extract the SPS and PPS. https://bugzilla.gnome.org/show_bug.cgi?id=730999 2015-08-15 15:02:33 +0200 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Also disable the blend when done 2015-08-15 14:31:15 +0200 Nicolas Dufresne * ext/gl/gstglimagesink.c: * ext/gtk/gstgtkglsink.c: * gst-libs/gst/gl/gstglupload.c: glsink: Enable sync meta on pools we offer As the upload is asynchronous, we need to enable the sync meta to gain correct rendering. The buffer pool receiver don't know about that. 2015-08-15 15:12:27 +0200 Nicolas Dufresne * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gtkgstglwidget.c: gtkglsink: Add overlay composition support Rendering composition overlay in GL with additional high resolution overlay being added. 2015-08-15 15:08:11 +0200 Nicolas Dufresne * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: gtkglsink: Fix unsafe handling of buffer life time We need to keep the active buffer (the one we have retreive a texture id from) otherwise it's racy and upstream may upload new content before we have rendered or during later redisplay. 2015-08-14 18:07:15 +0200 Nicolas Dufresne * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: * ext/gtk/gtkgstglwidget.c: gtkglsink: Remove reset path The reset path is bogus and there is no reason to get rid of these things during resize. 2015-08-14 17:36:48 +0200 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Move overlay rendering after video rendering This is mostly cosmetic, but heoretically it reduces the amount of required object in the context at one point. It also avoids potential conflicts. 2015-08-15 14:45:34 +0100 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: rtph265pay: Copy metadata in the payloader, but only the relevant ones The payloader didn't copy anything so far, the depayloader copied every possible meta. Let's make it consistent and just copy all metas without tags or with only the video tag. https://bugzilla.gnome.org/show_bug.cgi?id=751774 2015-08-15 11:41:40 +0100 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: rtph265pay: Use GST_WARNING_OBJECT() instead of GST_WARNING() https://bugzilla.gnome.org/show_bug.cgi?id=753228 2015-08-15 11:30:36 +0100 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: rtph265pay: fix potential crash when shutting down A race condition in the state change function may cause buffers to be unreffed while they are still used by the streaming thread in gst_rtp_h265_pay_send_vps_sps_pps() resulting in a crash. Chain up to the parent class first in the state change function to make sure streaming has stopped and only then free those buffers. https://bugzilla.gnome.org/show_bug.cgi?id=741381 2015-08-15 10:03:07 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/opengl.h: opengl: Change GLclampd to double GLclampd does not exist on GLES, only desktop GL. 2015-08-14 10:32:14 -0700 Martin Kelly * gst-libs/gst/gl/glprototypes/opengl.h: opengl: add missing ClearDepth prototype The ClearDepth call is missing. https://bugzilla.gnome.org/show_bug.cgi?id=753639 2015-08-06 14:33:54 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.c: * gst/videoparsers/gsth264parse.c: h264parse: Clear SPS info after processing. The SPS struct might be filled out by a call to gst_h264_parser_parse_subset_sps, which fills out dynamically allocated data and requires a call to gst_h264_sps_clear() to free it. Also make sure to clear out any allocated SPS data when returning an error. https://bugzilla.gnome.org/show_bug.cgi?id=753306 2015-08-12 00:20:26 +0200 Vanessa Chipirrás Navalón * ext/opencv/gstfacedetect.cpp: facedetect: Refactor the code Some lines of code are repeated several times, therefore this lines are simplified with a inline function, that this is proper style of C++. 2015-08-14 11:43:57 -0300 Thiago Santos * gst/videoparsers/gstpngparse.c: pngparse: enable accept-intersect and accept-template flags on sinkpad Do a quick check with the pad template caps as it is enough. Users should have figured the appropriate full caps on a previous caps query https://bugzilla.gnome.org/show_bug.cgi?id=753623 2015-08-14 11:43:18 -0300 Thiago Santos * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstvc1parse.c: videoparsers: enable accept-template flag Do a quick check with the pad template caps as it is enough. Users should have figured the appropriate full caps on a previous caps query https://bugzilla.gnome.org/show_bug.cgi?id=753623 2015-08-14 15:08:08 +0100 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: rtph265pay: fix buffer leak when using SPS/PPS Fixes a buffer leak that would occur if the pipeline was shutdown while a SPS/PPS header was being created. https://bugzilla.gnome.org/show_bug.cgi?id=741271 2015-08-14 11:49:51 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: * gst/rtp/gstrtph265depay.h: rtph265depay: copy metadata in the depayloader, but only the relevant ones The payloader didn't copy anything so far, the depayloader copied every possible meta. Let's make it consistent and just copy all metas without tags or with only the video tag. https://bugzilla.gnome.org/show_bug.cgi?id=751774 2015-08-14 09:44:24 +0100 Alex Ashley * ext/dash/gstdashdemux.c: * gst-libs/gst/uridownloader/gstfragment.c: * gst-libs/gst/uridownloader/gstfragment.h: * gst-libs/gst/uridownloader/gsturidownloader.c: dashdemux: add support for HTTP HEAD method of time sync The urn:mpeg:dash:utc:http-head:2014 method of time synchronisation uses an HTTP HEAD request to a specified URL and then parses the Date: HTTP response header. This commit adds support to dashdemux for this method of time synchronisation by making a HEAD request and then parsing the Date: response. This commit adds support to gstfragment to return the HTTP headers and to uridownloader to support HEAD requests. To avoid creating a new API, the RANGE get function is re-used (abused?) with start=-1 and end=-1 to indicate a HEAD request. https://bugzilla.gnome.org/show_bug.cgi?id=752413 2015-08-13 18:21:29 +0100 Alex Ashley * ext/dash/gstdashdemux.c: dashdemux: post-review fixup of UTCTiming element This commit addresses the following items from the code review: use a portable way to define NTP_TO_UNIX_EPOCH, fix memory leak on error, and add documentation to UTCTiming parse functions Using LL is not portable, so the G_GUINT64_CONSTANT needs to be instead. If an error occurs during DNS resolution, the GError was not being released, causing a memory leak. https://bugzilla.gnome.org/show_bug.cgi?id=752413 2015-07-15 11:56:13 +0100 Alex Ashley * ext/dash/Makefile.am: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * tests/check/elements/dash_mpd.c: dashdemux: add support for UTCTiming elements for clock drift compensation Unless the DASH client can compensate for the difference between its clock and the clock used by the server, the client might request fragments that either not yet on the server or fragments that have already been expired from the server. This is an issue because these requests can propagate all the way back to the origin ISO/IEC 23009-1:2014/Amd 1 [PDAM1] defines a new UTCTiming element to allow a DASH client to track the clock used by the server generating the DASH stream. Multiple UTCTiming elements might be present, to indicate support for multiple methods of UTC time gathering. Each element can contain a white space separated list of URLs that can be contacted to discover the UTC time from the server's perspective. This commit provides parsing of UTCTiming elements, unit tests of this parsing and a function to poll a time server. This function supports the following methods: urn:mpeg:dash:utc:ntp:2014 urn:mpeg:dash:utc:http-xsdate:2014 urn:mpeg:dash:utc:http-iso:2014 urn:mpeg:dash:utc:http-ntp:2014 The manifest update task is used to poll the clock time server, to save having to create a new thread. When choosing the starting fragment number and when waiting for a fragment to become available, the difference between the server's idea of UTC and the client's idea of UTC is taken into account. For example, if the server's time is behind the client's idea of UTC, we wait for longer before requesting a fragment [PDAM1]: http://www.iso.org/iso/home/store/catalogue_tc/catalogue_detail.htm?csnumber=66068 dashdemux: support NTP time servers in UTCTiming elements Use the gst_ntp_clock to support the use of an NTP server. https://bugzilla.gnome.org/show_bug.cgi?id=752413 2015-08-14 11:13:51 +0200 Edward Hervey * tests/check/generic/states.c: check: Rename states unit test Makes it easier to differentiate from other modules states unit test 2015-08-13 10:31:20 +0900 Vineeth TM * gst/dvdspu/gstspu-pgs.c: spu-pgs: fix buffer and event leak When playing mts files with embedded subtitles, the buffer is mapped, but not unmapped at the end resulting in a memory leak. Also unref event in handle_dvd_event as it takes ownership of the event. https://bugzilla.gnome.org/show_bug.cgi?id=753539 2015-08-13 10:25:52 +0900 Vineeth TM * gst/dvdspu/gstdvdspu.c: dvdspu: Fix event leaks When playing mts files with embedded subtitles, there are few event leaks. Events are supposed to be transfer full. So if not forwarding the event, they need to be freed. https://bugzilla.gnome.org/show_bug.cgi?id=753539 2015-08-13 12:38:41 +0200 Sebastian Dröge * ext/srtp/gstsrtpdec.c: Revert "srtpdec: Add support for buffer list" This reverts commit ff11a1a8a0c685d2edd0e06c0071cbb94f2cb663. It can't be assumed that all buffers in a buffer list have the same SSRC or are RTP or RTCP only. It has to be checked for every single buffer, and one basically has to do the processing that is done by the default chain_list implementation. 2015-08-12 17:54:52 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: checking if depay has sps/pps nals before insertion Related to: https://bugzilla.gnome.org/show_bug.cgi?id=753430 https://bugzilla.gnome.org/show_bug.cgi?id=753228 2015-08-12 17:22:42 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: only update the srcpad caps if something else than the codec_data changed h264parse and gstrtph264depay do the same, let's keep the behaviour consistent. As we now include the codec_data inside the stream, this causes less caps renegotiation. https://bugzilla.gnome.org/show_bug.cgi?id=753228 2015-08-12 16:43:48 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: PPS replaces old PPS if it has the same id https://bugzilla.gnome.org/show_bug.cgi?id=753228 2015-08-12 16:11:00 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: Insert SPS/PPS NALs into the stream rtph264depay does the same and this fixes decoding of some streams with 32 SPS (or 256 PPS). It is allowed to have SPS ID 0 to 31 (or PPS ID 0 to 255), but the field in the codec_data for the number of SPS or PPS is only 5 (or 8) bit. As such, 32 SPS (or 256 PPS) are interpreted as 0 everywhere. This looks like a mistake in the part of the spect about the codec_data. 2015-08-12 15:49:50 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: implement process_rtp_packet() vfunc For more optimised RTP packet handling: means we don't need to map the input buffer again but can just re-use the mapping the base class has already done. Based on: https://bugzilla.gnome.org/show_bug.cgi?id=750235 https://bugzilla.gnome.org/show_bug.cgi?id=753228 2015-08-12 15:14:50 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: Use GST_BUFFER_PTS() instead of GST_BUFFER_TIMESTAMP() Switching to GST_BUFFER_TIMESTAMP() to be consistent with other rtp code. 2015-08-12 14:59:53 +0100 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtph265depay: prevent trying to get 0 bytes from adapter This causes an assertion and would lead to getting a NULL instead of a buffer. Without proper checking this would easily lead to a segfault. Related to rpth264depay: https://bugzilla.gnome.org/show_bug.cgi?id=737199 2015-08-12 07:58:09 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265: Fix the range of delta_chroma_log2_weight_denom ChromaLog2WeightDenom = luma_log2_weight_denom + delta_chroma_log2_weight_denom The value of ChromaLog2WeightDenom should be in the range of 0 to 7 and the value luma_log2_weight_denom should be also in the range of 0 to 7. Which means , delta_chroma_log2_weight_denom can have values in the range between -7 and 7. https://bugzilla.gnome.org/show_bug.cgi?id=753552 2015-08-12 05:11:27 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparsers: h265: Fix the parsing of ref_pic_lists_modification https://bugzilla.gnome.org/show_bug.cgi?id=753552 2015-08-12 00:20:10 +0200 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: take into account non 1/1 par for navigation The current code was ignoring the par/dar aspect when transforming from window coordinates to stream coordinates resulting in incorrect coordinates being sent upstream in the navigation events. 2015-08-12 00:18:20 +0200 Matthew Waters * ext/gtk/gtkgstbasewidget.c: gtk: fix motion event name s/motion/mouse/ Fixes hover interaction with DVD menus 2015-08-12 00:14:14 +0200 Matthew Waters * ext/gtk/gtkgstbasewidget.c: gtk: correct navigation events for window scaling i.e. take into account the possiblity of scaling in the sink or through GDK_SCALE. Fixes DVD Menus with a scaled gtkwidget 2015-08-11 15:02:25 -0400 Nicolas Dufresne * gst/frei0r/gstfrei0r.c: frei0r: Fix setting string parameters String parameters are expected to be passed as (f0r_param_string *), which actually map to char**. In the filters this is evaluated as (*(char**)param) which currently lead to crash when passing char*. Remove the special case for string, all types, including char* as passed as a reference. https://phabricator.freedesktop.org/T83 2015-08-11 13:34:59 +0200 Matthew Waters * ext/gtk/gstgtkbasesink.c: * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: gtk: implement GstNavigation interface Now we can push key/mouse input into the pipeline for DVD use cases. 2015-06-30 13:51:33 +0200 Sebastian Dröge * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopuspay.c: opus: Copy metadata in the (de)payloader, but only the relevant ones The payloader didn't copy anything so far, the depayloader copied every possible meta. Let's make it consistent and just copy all metas without tags or with only the audio tag. https://bugzilla.gnome.org/show_bug.cgi?id=751774 2015-08-11 04:14:19 +0300 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: videoparsers: h265: Fix the frame start detection code Check slice headers in between GST_H265_NAL_SLICE_TRAIL_N and GST_H265_NAL_SLICE_RASL_R for frame start detection. https://bugzilla.gnome.org/show_bug.cgi?id=753497 2015-08-11 03:47:42 +0300 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: videoparsers: h265: Avoid skipping of EOS and EOB nals EndOfSequence and EndOfBitstream nal units have size of 2 bytes. Don't consider them as broken nals. https://bugzilla.gnome.org/show_bug.cgi?id=753497 2015-08-10 23:02:12 +0200 Vanessa Chipi * ext/opencv/gstfacedetect.cpp: facedetect: wrong form to write the delete operator The delete operator is written this way: delete (cascade). This way is misspelled, it is an operator, not a function. Delete the parentheses. 2015-08-10 19:13:11 +0200 vanechipi * ext/opencv/gstfacedetect.cpp: facedetect: simplify repeated code. Store the value of r.height / 2 instead of repeating the operation line three times. 2015-08-10 19:02:10 +0200 vanechipi * ext/opencv/gstfacedetect.cpp: facedetect: Redundancy exists in code. Checking the vector is not empty and checking the vector size is greater than zero are the same thing, this is a redundancy in the code. Only checking the vector is not empty is sufficient, therefore removing the other check. 2015-08-10 14:48:58 -0400 Nicolas Dufresne * gst-libs/gst/gl/Makefile.am: gl: Add opengl_version.h to the list of sources Adding this private header to the list of sources. We don't want to make this header public, but we need it in the list of sources otherwise it won't be included in the tarball. This fixes make distcheck. This regression was introduced by commit 1a6fe3db 2015-08-10 19:06:16 +0100 Luis de Bethencourt * tests/examples/opencv/gstfacedetect_test.c: examples: facedetect: only create variables when needed The variables to store face values are only needed if they will be used to control the volume. Which isn't the default to avoid potentially being very loud accidentally. Only create variables when needed. 2015-08-10 16:51:17 +0100 Luis de Bethencourt * tests/examples/opencv/gstfacedetect_test.c: examples: facedetect: make volume control optional 2015-08-10 16:38:32 +0200 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * gst-libs/gst/gl/gstglfilter.c: gl: use gles2 shaders everywhere This effectively limits a glfilter subclass to be > GL(ES) 2.0. rather than a possible GL 1.4. 2015-08-10 15:44:54 +0200 Matthew Waters * gst-libs/gst/gl/utils/opengl_versions.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext/wgl: implement gl3 core profile context selection 2015-02-28 01:07:44 +0100 Lubosz Sarnecki * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: implement pivot point for rotation and scale https://bugzilla.gnome.org/show_bug.cgi?id=744763 Add a pivot vector for setting the origin of rotations and scales. With the pivot point the rotation and scale operations can have different origins. This adds the ability to rotate around different points. Currently the default (0, 0) pivot point is possible, a rotation around the center, and zooming into and out of the center. With an pivot point this is optional. I defined the following image coordinates for the pivot point: (-1,1) ------------------------- (1,1) | | | | | | | (0,0) | | | | | | | (-1,-1) ------------------------- (1,-1) Example: Rotate the video at the bottom left corner gst-launch-1.0 videotestsrc \ ! gltransformation \ scale-x=0.5 \ scale-y=0.5 \ rotation-z=25.0 \ pivot-x=-1.0 \ pivot-y=-1.0 \ ! glimagesink The pivot-z option defines the pivot point in 3D space. This only affects rotation, since we have no Z data to scale. With this option a video can be rotated around a point in 3D space. Example: Rotate around point behind the video: gst-launch-1.0 videotestsrc \ ! gltransformation \ rotation-x=10.0 \ pivot-z=-4.0 \ ! glimagesink 2015-08-08 14:45:42 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Add shader to convert BGRA/ARGB -> RGBA Depending on the bytes order we will get BGRA (little) and ARGB (big) from the composition overlay buffer while our GL code expects RGBA. Add a fragment shader that do this conversion. https://bugzilla.gnome.org/show_bug.cgi?id=752842 2015-08-08 17:28:03 +0200 Matthew Waters * ext/qt/gstqsgtexture.cc: * ext/qt/gstqsgtexture.h: * ext/qt/qtitem.cc: qml: implement the required multiple GL context synchonisation From GStreamer's GL context into the QML context 2015-08-08 17:22:05 +0200 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: gl/syncmeta: implement synchronisation without glFenceSync Uses glFinish as that's the best we have for lesser OpenGL versions. 2015-08-08 15:45:59 +0100 Tim-Philipp Müller * gst/asfmux/gstasfmux.c: asfmux: output TIME segment if we output a stream and won't seek back later Check if downstream is seekable via a SEEKING query and output a BYTE segment if we want to seek back to fix up the headers later, but if we're streaming send a TIME segment instead (which goes down better with e.g. asfmux ! rtpasfpay). https://bugzilla.gnome.org/show_bug.cgi?id=719553 2015-08-08 15:30:43 +0200 Matthew Waters * tests/check/libs/gstglcontext.c: tests/glcontext: fix INVALID_ENUM GL error in test 2015-08-08 15:21:03 +0200 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: context/glx: only use glXCreateContextAttribs for OpenGL 3 contexts mesa for example when creating a GL 3.1 compatibility context overrides our context profile selection to create a core context. 2015-08-08 13:19:41 +0100 Luis de Bethencourt * tests/examples/opencv/gstfacedetect_test.c: examples: facedetect: only set to playing when it's not already 2015-08-08 12:52:36 +0100 Luis de Bethencourt * tests/examples/opencv/gstfacedetect_test.c: * tests/examples/opencv/gsthanddetect_test.c: examples: opencv: remove unnecessary setting of a property "/dev/video0" is the default device of v4l2src, setting it to this is redundant. 2015-08-07 15:43:53 +0100 Luis de Bethencourt * ext/opencv/gstfacedetect.cpp: facedetect: fix profile loading check Since the profile gchar depends on DEFAULT_FACE_PROFILE, it should never be NULL. Furthermore CascadeClassifier accepts any input, even an empty one, but if the profile fails to load it returns an empty cascade. Check for this instead, and inform the user if there was an Error. 2015-08-06 11:30:04 -0300 Thiago Santos * ext/hls/m3u8.c: hlsdemux: don't warn about duration if it is not known And also print the values in case of warning 2015-08-07 13:16:56 +0100 Luis de Bethencourt * .gitignore: gitignore: add new example file Commit 02b9daafdf64ab205ed725f5496dfa5ce860eacc added a new example file tests/examples/opencv/gstfacedetect_test, adding it to .gitignore 2015-08-07 13:08:17 +0100 Luis de Bethencourt * configure.ac: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstfacedetect.h: * ext/opencv/gsthanddetect.c: * ext/opencv/gsthanddetect.h: configure: update OpenCV requirements to 2.3.0 With facedetect ported to C++ the minimum version of OpenCV supported is 2.3.0 https://bugzilla.gnome.org/show_bug.cgi?id=748377 2015-08-07 05:58:22 +0300 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: h265parse: expose compatible profiles to downstream Some video bitstreams report a too restrictive set of profiles. If a video decoder was to strictly follow the indicated profile, it wouldn't support that stream, whereas it could in theory and in practice. So we should relax the profile restriction for allowing the decoder to get connected with parser. https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-08-06 18:12:07 -0400 Nicolas Dufresne * gst/bayer/gstrgb2bayer.c: rgb2bayer: Use mapped frame stride 2015-08-06 18:11:53 -0400 Nicolas Dufresne * gst/bayer/gstrgb2bayer.c: rgb2bayer: Protect against failing map 2015-08-06 18:04:58 -0400 Nicolas Dufresne * gst/bayer/gstbayer2rgb.c: bayer2rgb: Read stride from the video info 2015-08-06 18:04:41 -0400 Nicolas Dufresne * gst/bayer/gstbayer2rgb.c: bayer2rgb: Protect against failing map 2015-08-06 19:23:49 +0300 Ilya Averyanov * tools/element-templates/videoencoder: element-template: Fix wrong pad in videoencoder https://bugzilla.gnome.org/show_bug.cgi?id=753326 2015-08-03 16:57:31 +0100 Florin Apostol * ext/dash/gstdashdemux.c: dashdemux: Fix leak in gst_dash_demux_stream_update_fragment_info() The gst_dash_demux_stream_update_fragment_info function could call gst_dash_demux_stream_update_headers_info function twice. The gst_dash_demux_stream_update_headers_info function will set header_uri and index_uri to some newly allocated strings. The values set by the first call of gst_dash_demux_stream_update_headers_info will leak when the function is called for a second time. The solution is to call gst_adaptive_demux_stream_fragment_clear before the second call of gst_dash_demux_stream_update_headers_info https://bugzilla.gnome.org/show_bug.cgi?id=753188 2015-08-05 14:52:12 -0400 Nicolas Dufresne * gst/pcapparse/gstpcapparse.c: pcapparse: Segment should start at base ts Instead we would use cur_ts which matches the last TS store in the buffer list. https://bugzilla.gnome.org/show_bug.cgi?id=753037 2015-08-05 12:56:57 +0200 Anders Jonsson * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: Fix string typo https://bugzilla.gnome.org/show_bug.cgi?id=753241 2015-08-05 11:56:32 +0100 Luis de Bethencourt * ext/opencv/gstfacedetect.cpp: opencv: facedetect: free IplImage with cvReleaseImage Using delete() with IplImage will fail to free some of the structure's contents. cvReleaseImage() is the proper way of freeing the memory. 2015-08-05 11:39:01 +0100 Luis de Bethencourt * ext/opencv/gstfacedetect.cpp: opencv: facedetect: check pointer before using it Check if profile is NULL before dereferencing it with new. Also, new will never return NULL; if allocation fails, a std::bad_alloc exception will be thrown instead. Remove check for a NULL return. CID #1315258 2015-08-05 11:14:49 +0100 Luis de Bethencourt * ext/x265/gstx265enc.c: x265enc: remove dead code level_ok is only used in a check that will never be true, removing it. CID #1315255 2015-08-05 11:11:11 +0100 Luis de Bethencourt * ext/x265/gstx265enc.c: x265enc: fix memory leak Free vps_nal before returning. CID #1315257 2015-08-04 23:15:36 +0200 Carlos Garnacho * ext/rsvg/gstrsvgdec.c: rsvg: Don't leak a GstVideoCodecState There's already the output_state variable with it, no need to call gst_video_decoder_get_output_state() and get a new ref. https://bugzilla.gnome.org/show_bug.cgi?id=753262 2015-08-04 21:32:53 +0900 Jimmy Ohn * gst/rawparse/gstrawparse.c: rawparse: fix duplicated format in handle_seek_pull GstFormat variable are duplicated in handle_seek_pull function. So we need to move this variable in condition statement. https://bugzilla.gnome.org/show_bug.cgi?id=753243 2015-08-04 14:30:17 +0100 Tim-Philipp Müller * ext/opencv/gstfacedetect.cpp: opencv: facedetect: fix crashes in finalize Fixes gst-inspect-1.0 -a crashing. 2015-08-03 19:42:56 +0300 Sebastian Dröge * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstdx9screencapsrc.h: * sys/winscreencap/gstgdiscreencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.h: winscreencap: Properly timestamp buffers with the current clock running time instead of doing magic Also implement framerate handling correctly by borrowing the code from ximagesrc. GstBaseSrc::get_times() can't be used for that, we have to implement proper waiting ourselves. 2015-08-04 00:20:27 +1000 Jan Schmidt * ext/opencv/gstfacedetect.cpp: opencv: Fix 32-bit build / format strings. Use G_GSIZE_FORMAT for format strings where relevant 2015-08-03 19:48:16 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: swap control binding proxy The ref_object and object parameters were the wrong way around. For the typical use case where an application is setting a GstControlBinding on the returned ghost pad: 1. our control binding would be removed when the new one was set 2. sync_values calls were not being forwarded from the internal pad to the ghost pad. If an application attempts to perform other control binding operations (get_* family of functions) on the internal pad, they will also be forwarded to the ghost pad where a possible GstControlBinding will provide the necessary values. 2015-08-01 15:52:28 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: mpdparser: plug leak in segmenttemplate parsing Only copy the values from the parent if the current node doesn't have that value, they were being copied from the parent and then overwriten by the child node, leaking the parent's copy 2015-08-01 15:51:50 -0300 Thiago Santos * tests/check/elements/dash_mpd.c: tests: dash_mpd: add check for segmenttemplate inheritance Checks if the values are properly inherited and overwriten 2015-08-01 15:09:19 -0300 Thiago Santos * tests/check/elements/dash_mpd.c: tests: dash_mpd: add one more baseURL test This other type of baseURL test was replaced by a more complex one, better have both to keep both options working Also adds another 2 variations of how baseURL can be generated https://bugzilla.gnome.org/show_bug.cgi?id=752776 2015-07-23 10:54:36 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: tests: added duration format test https://bugzilla.gnome.org/show_bug.cgi?id=752776 2015-07-22 11:42:23 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: tests: update unit test for baseURL Update the unit test for baseURL to test that it is properly resolved taking into account parent baseURL elements. https://bugzilla.gnome.org/show_bug.cgi?id=752776 2015-08-01 11:51:22 -0300 Thiago Santos * ext/opencv/gsttemplatematch.c: templatematch: revert rename of property The property doesn't need to have its name changed because of C++, just the instance variables. 2015-07-31 17:31:15 +0100 Vanessa Chipirrás * tests/examples/opencv/Makefile.am: * tests/examples/opencv/gstfacedetect_test.c: facedetect: Add unit test I created four utilities of the detected features: 1- If you hide your mouth, the volume of video is low. 2- If you hide the nose, the volume of the video is up. 3- If you hide the full face, the video stops. You can see proof of this here: https://www.youtube.com/watch?v=pxzejNKV_WQ https://bugzilla.gnome.org/show_bug.cgi?id=748377 2015-07-31 16:40:07 +0100 Luis de Bethencourt * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttemplatematch.h: templatematch: rename conflicting variable With the switch of gstopencv.c to C++, all OpenCV elements are built with g++. The template variable clashes with C++'s feature of the same name. Rename template to templ to avoid any clash. 2015-07-31 13:45:43 +0100 Vanessa Chipirrás * ext/opencv/Makefile.am: * ext/opencv/gstfacedetect.cpp: * ext/opencv/gstfacedetect.h: * ext/opencv/gstopencv.cpp: facedetect: need to migrate to C++ The cascade classifier changes its structure on new version of OpenCV. The need to migrate to C++ to utilize the new load method of OpenCV which allows to load the new classifiers. https://bugzilla.gnome.org/show_bug.cgi?id=748377 2015-07-31 10:47:27 +0900 Vineeth TM * ext/dts/gstdtsdec.c: dtsdec: fix taglist leak taglist merge doesnt take ownership. So should free the tags after use https://bugzilla.gnome.org/show_bug.cgi?id=753086 2015-07-30 23:31:21 +0200 Heinrich Fink * sys/applemedia/avsamplevideosink.m: applemedia/avsample: Fix racy cleanup of CA layer The block that is dispatched async to the main thread assumed the wrapping GstAvSampleVideoSink to be alive. However, at the time of the block execution the GstObject instance that is deferenced to access the CA layer might already be freed, which caused occasional crashes. Instead, we now only pass the CoreAnimation layer that needs to be released to the block. We use __block to make sure the block is not increasing the refcount of the CA layer again on its own. https://bugzilla.gnome.org/show_bug.cgi?id=753081 2015-07-02 19:34:43 -0400 Olivier Crête * tests/check/libs/aggregator.c: tests: Add test for seeking live pipelines https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-07-02 19:19:33 -0400 Olivier Crête * tests/check/libs/aggregator.c: tests: Make source live to re-enable aggregator timeout tests The live mode is only enabled if one of the sources if live. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-07-02 18:37:28 -0400 Olivier Crête * tests/check/elements/audiointerleave.c: tests: Add audiointerleave test to show that queuing works This tests fails without the queuing patch because incoming buffers are not delivered before they are needed. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-07-02 18:33:43 -0400 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: audiointerleave: Avoid caps processing if not yet negotiated https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-16 17:06:46 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: On timeout, resync pads with not enough data https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 19:50:08 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst/audiomixer/gstaudioaggregator.c: aggregator: Queue "latency" buffers at each sink pad. In the case where you have a source giving the GstAggregator smaller buffers than it uses, when it reaches a timeout, it will consume the first buffer, then try to read another buffer for the pad. If the previous element is not fast enough, it may get the next buffer even though it may be queued just before. To prevent that race, the easiest solution is to move the queue inside the GstAggregatorPad itself. It also means that there is no need for strange code cause by increasing the min latency without increasing the max latency proportionally. This also means queuing the synchronized events and possibly acting on them on the src task. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 21:32:04 -0500 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove broken _clip vfunc It never does anything. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-07-30 08:58:48 +0900 Vineeth TM * gst/videoparsers/gsth265parse.c: h265parse: Avoid checking for Non Mandatory VPS NAL VPS is not mandatory, and need not check for its presence before setting the caps. Because of the check, in streams which don't have VPS, sticky event mishandling happens. https://bugzilla.gnome.org/show_bug.cgi?id=752807 2015-07-30 15:33:46 +0900 Vineeth TM * gst/sdp/gstsdpdemux.c: sdpdemux: assertion error due to wrong condition check In media to caps function, reserved_keys array is being used for variable i, leading to GLib-CRITICAL **: g_ascii_strcasecmp: assertion 's1 != NULL' failed changed it to variable j https://bugzilla.gnome.org/show_bug.cgi?id=753009 2015-07-30 11:12:21 +0100 Luis de Bethencourt * ext/gl/gstglfilterbin.c: gstglfilterbin: remove unused variable res is set multiple times but never used or returned. Removing it. 2015-07-29 20:07:09 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Default to "zero" start time selection mode as documented 2015-07-29 20:06:11 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Ignore the "first" mode if the segment not a time segment 2015-07-29 19:10:57 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Remove debug output from gst_gl_upload_transform_caps() We can't know if the GstGLUpload type is initialized at this point already, and thus our debug category might not be initialized yet... and cause an assertion here. As we don't print debug output for any of the other transform functions, let's defer this problem for now. 2015-07-29 17:48:58 +0100 Luis de Bethencourt * ext/gl/gstglstereomix.c: glstereomix: remove redundant initialization v is initialized in the for loop init, no need to do it twice. Removing first initialization. 2015-07-29 17:29:28 +0100 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: rtp: remove dead assignment Value set to ret will be overwritten at least once at the end of the while loop, removing assignment. 2015-07-29 17:29:29 +0100 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: use GQueue instead of GList prepend/reverse 2015-07-29 17:17:16 +0100 Luis de Bethencourt * gst/sdp/gstsdpdemux.c: sdpdemux: remove redundant assignment Value of p is already set below just before being used. Removing this first assignment that will be ignored. 2015-07-29 16:51:48 +0100 Luis de Bethencourt * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: remove redundant check No need to check if done is True since break will already terminate the for loop. 2015-07-29 13:09:05 +0100 Sebastian Dröge * gst/sdp/gstsdpdemux.c: sdpdemux: Don't assert in GstAdapter if no data was received before EOS 2015-07-28 22:30:09 +0300 Sebastian Dröge * tests/check/elements/compositor.c: compositor: Add unit tests for the new aggregator start-time-selection property https://bugzilla.gnome.org/show_bug.cgi?id=749966 2015-06-15 18:30:20 +0200 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Add property to select how to decide on a start time Before aggregator based elements always started at running time 0, now it's possible to select the first input buffer running time or explicitly set a start-time value. https://bugzilla.gnome.org/show_bug.cgi?id=749966 2015-07-29 11:25:24 +0100 Sebastian Dröge * gst/sdp/gstsdpdemux.c: sdpdemux: Strip keys from the fmtp that we use internally in our caps Skip keys from the fmtp, which we already use ourselves for the caps. Some software is adding random things like clock-rate into the fmtp, and we would otherwise here set a string-typed clock-rate in the caps... and thus fail to create valid RTP caps https://bugzilla.gnome.org/show_bug.cgi?id=753009 2015-07-29 22:59:56 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: h264parse: Add more NAL types for debugging output. Register more NAL unit types so that they are dumped by name in the debug output instead of being labelled 'Invalid' 2015-07-29 22:57:44 +1000 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Don't clear the PID on reset. The PID on a pad shouldn't change on a state change, only if the pad is freed and a new one created. Clearing the PID prevented mpegtsmux from being reused, because all packets would end up muxed in PID 0 https://bugzilla.gnome.org/show_bug.cgi?id=752999 2015-07-29 22:56:28 +1000 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Accumulate streamheaders in reverse Accumulate streamheader packets in reverse into the GList for efficiency, and reverse the list once when processing. Improves muxing speed when there are a lot of streamheaders. 2015-07-29 10:12:43 +0100 Sebastian Dröge * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Always set i-frame-interval setting Most encoders fail to initialize if we don't set it at all. 2015-07-29 12:56:54 +0900 Vineeth TM * gst/videoparsers/gsth263parse.c: h263parse: fix caps memory leak https://bugzilla.gnome.org/show_bug.cgi?id=752991 2015-07-28 21:15:43 +0300 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Query the peer latency again on the next opportunity after a pad was added or removed Adding a pad will add a new upstream that might have a bigger minimum latency, so we might have to wait longer. Or it might be the first live upstream, in which case we will have to start deadline based aggregation. Removing a pad will remove a new upstream that might have had the biggest latency, so we can now stop waiting a bit earlier. Or it might be the last live upstream, in which case we can stop deadline based aggregation. 2015-07-28 11:20:40 -0400 Nicolas Dufresne * tests/check/libs/gstglcolorconvert.c: glcolorconvert-test: Test notify function for setup_wrapped gst_gl_memory_setup_wrapped() now takes a destroy notify function. This destroy notify is called to track the memory life time, hence will notify each time a memory get destroyed. This test check that the callback count is correct. 2015-07-28 11:06:43 -0400 Nicolas Dufresne * tests/check/libs/gstglcolorconvert.c: glcolorconvert-test: Fix build 2015-07-28 08:59:24 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Add fixme about using bufferpool for raw http://bugzilla.gnome.org/show_bug.cgi?id=752937 2015-07-27 16:58:22 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: glupload: Keep input frame mapped as long as needed When performing a raw upload, we need to keep the raw data mapped as long as needed. https://bugzilla.gnome.org/show_bug.cgi?id=752937 2015-07-27 15:58:10 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: Revert "glupload: memcpy on raw data upload" This reverts commit 82c0189b2842e8729e82a4e73491dffc977bc7c2. https://bugzilla.gnome.org/show_bug.cgi?id=752937 2015-07-15 16:21:00 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: gst_mpdparser_get_xml_prop_duration sets default value in case of parsing errors The gst_mpdparser_get_xml_prop_duration function will set the property_value to the default_value in case the parsing fails. https://bugzilla.gnome.org/show_bug.cgi?id=752426 2015-07-27 18:39:13 +0530 Nirbheek Chauhan * ext/opus/gstopuscommon.c: opuscommon: Use GString instead of snprintf for concating Safer, easier to understand, and more portable. Also, skip all this if the log level is too low. 2015-07-27 21:54:27 +1000 Matthew Waters * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: glcontext/wgl: fix defenition of gst_gl_context_wgl_new gstglcontext_wgl.c: In function 'gst_gl_context_wgl_new': gstglcontext_wgl.c:83:40: error: 'display' undeclared (first use in this function) 2015-07-27 20:03:05 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: gl/cocoa: fix definition of gst_gl_context_new gstglcontext_cocoa.m:75:1: error: conflicting types for 'gst_gl_context_cocoa_new' 2015-07-27 20:00:47 +1000 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/win32: fix definition of gst_gl_window_win32_new 2015-07-27 18:21:19 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: wayland: fail window open if the display is the correct type Errors out cleanly if a wayland compositor is not running 2015-07-24 17:00:27 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: pass display to implementation's _new() So they have to opportunity to fail if they cannot handle the display connection. https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-24 16:11:38 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: glcontext: pass display to implentation's _new() This allows the context to fail creation based on incompatible display type's. e.g. glx context with an wayland display handle. https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-06 00:52:06 +0100 Julien Isorce * configure.ac: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglapi.h: gl: support cgl, egl and glx within a same build On osx, with the same build, gst-launch-1.0 videotestsrc ! glimagesink works with: GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=gles2 GST_GL_PLATFORM=egl GST_GL_WINDOW=x11 GST_GL_API=opengl GST_GL_PLATFORM=glx GST_GL_WINDOW=x11 GST_GL_API=opengl GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa GST_GL_API=opengl3 https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-27 16:36:40 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Check that caps contain desired caps features Use 'contains' checks instead of equality checks on caps features to allow for uploading when caps also contain GstVideoOverlayComposition meta. https://bugzilla.gnome.org/show_bug.cgi?id=752912 2015-07-25 09:03:27 -0400 Nicolas Dufresne * sys/bluez/Makefile.am: bluez: Add built sources to CLEANFILES 2015-07-20 10:50:44 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dahdemux: avoid overflows in computation of segment start time and duration Used gst_util_uint64_scale to avoid overflows when segment start time or duration is computed. https://bugzilla.gnome.org/show_bug.cgi?id=752620 2015-07-13 15:37:26 -0300 Thiago Santos * ext/hls/m3u8.c: hlsdemux: demote error to warning It is not fatal and can be quite normal when the network is too slow 2015-07-24 09:42:53 +0200 Miguel París Díaz * ext/srtp/gstsrtpenc.c: srtpenc: do not check input buffers With this we avoid an unnecessary and considerable overhead. https://bugzilla.gnome.org/show_bug.cgi?id=752774 2015-07-06 00:45:45 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gl: move GL_NUM_EXTENSIONS definition after gl.h https://bugzilla.gnome.org/show_bug.cgi?id=752743 2015-07-23 23:59:22 +0100 Julien Isorce * ext/gl/caopengllayersink.m: caopengllayersink: remove unused label context_creation_error Build error introduced by commit 5457e55f255518d679b59a170951e299ecd8c5f6 https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-24 02:46:21 +1000 Jan Schmidt * gst/videoparsers/gsth264parse.c: h264parse: Don't discard first AU delimiter Don't throw away AU delimiter(s) that precede the SPS/PPS. Should fix MPEG-TS playback on iOS/Quicktime when muxing streams that already have AU delimiters. See https://bugzilla.gnome.org/show_bug.cgi?id=736213 for getting h264parse to insert AU delimiters when they don't already exist. 2015-07-23 11:18:47 +0100 Tim-Philipp Müller * ext/gl/gstglimagesink.c: glimagesink: fix allocation meta structure leak gst_query_add_allocation_meta() does not take ownership of the structure, for some reason. CID 1312135 2015-07-23 10:57:26 +0100 Luis de Bethencourt * gst-libs/gst/gl/gstglupload.c: glupload: fix memory leak GstCapsFeatures need to be freed with gst_caps_features_free() after use. CID #1312136, CID #1312136 2015-07-02 20:10:50 -0400 Olivier Crête * ext/gl/gstglvideomixer.c: glvideomixer: Add GstControlBinding proxy This is used to proxy GstControlBinding to the pad on the parent object. This avoid having to sync the values in the proxy pad, this is too early if you have a queue between the pad and the actual aggregation operation. https://bugzilla.gnome.org/show_bug.cgi?id=734060 2015-07-22 19:27:19 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Register function name Otherwise, it sometimes segfaults with debugging enabled 2015-07-22 19:26:42 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Use 1.0 style buffer allocation 2015-07-22 16:58:12 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: glupload: Forward composition meta even without params When the sink does not know the window size (e.g not created yet) it will not add any param to the the composition meta. This is no reason not to forward this meta API. Fixes issue where it could not attach until we resize the window. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 15:56:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Keep memory pointer alive Keep the composition memory pointer alive while it's being wrapped inside a GstGLMemory object. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 14:17:42 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: Pass buffer stride The overlay pixel buffer stride was not given back to the GL image. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-05-19 16:08:08 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudioaggregator.c: * tests/check/Makefile.am: * tests/check/elements/audiomixer.c: audioaggregator: Sync pad values before aggregating We need to sync the pad values before taking the aggregator and pad locks otherwise the element will just deadlock if there's any property changes scheduled using GstController since that involves taking the aggregator and pad locks. Also add a test for this. https://bugzilla.gnome.org/show_bug.cgi?id=749574 2015-07-22 14:05:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcompositionoverlay.c: * gst-libs/gst/gl/gstglcompositionoverlay.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: gloverlaycompositor: Hide GstCompsitionOverlay object This object is only used inside the compositor and does not need to be expose in libgstgl API. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 13:33:12 -0400 Nicolas Dufresne * gst-libs/gst/gl/Makefile.am: libgstgl: Makefile style fix 2015-07-21 23:48:25 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcompositionoverlay.c: * gst-libs/gst/gl/gstglcompositionoverlay.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: composition-overlay: Positions are relative to texture The coordinate are relative to the texture dimension and not the window dimension now. There is no need to pass the window dimension or to update the overlay if the dimension changes. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-21 21:27:45 -0400 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: gloverlaycompositor: Create own shader object Make gloverlaycompositor independent of the shader used in the sink. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-21 18:47:56 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Properly handle compsositor life time Should be created in READY_TO_PAUSED, not PAUSED_TO_PLAYING. Should be cleared in PAUSED_TO_READY. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-22 16:10:35 +0100 Luis de Bethencourt * gst/liveadder/liveadder.c: liveadder: remove unneeded variable ret is declared just to initialize to TRUE and overwrite with the value of vret. We can return the value of vret directly. vret is TRUE unless the forward_event_func sets it to FALSE. 2015-07-22 15:13:48 +0200 Edward Hervey * ext/qt/Makefile.am: qt: Don't dist files that might not exist We only require moc building at build time. 2015-07-22 15:50:26 +0900 Young Han Lee * configure.ac: configure: require libxml2 >= 2.8 for DASH plugin The DASH plugin uses xmlBufferDetach now in the code that handles ContentProtection elements. https://bugzilla.gnome.org/show_bug.cgi?id=752703 2015-07-22 08:05:04 +0200 Edward Hervey * ext/qt/Makefile.am: qt: Tidy up makefile a bit more Separate generated files, from disted files 2015-07-21 20:52:23 -0400 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Read output buffer duration with lock held 2015-07-21 11:23:21 +0100 Julien Isorce * ext/gtk/gtkgstglwidget.c: gstglwidget: use gst_gl_display_create_context Also handle the failure case. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-21 11:28:08 +0100 Julien Isorce * ext/gl/caopengllayersink.m: caopengllayersink: use gst_gl_display_create_context https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-21 11:21:27 +0100 Julien Isorce * ext/gl/gstglstereosplit.c: glstereosplit: use gst_gl_display_create_context Also unlock the lock on error. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-21 14:10:57 +0100 Luis de Bethencourt * gst/liveadder/liveadder.c: liveadder: return false if event couldn't be pushed Make the gst pad's event function return false if the event couldn't be pushed to the pad. 2015-07-21 13:11:17 +0100 Luis de Bethencourt * gst-libs/gst/gl/gstgloverlaycompositor.c: gloverlaycompositor: for loop initial declarations are only allowed in C99 mode Fixes compiler warnings 2015-06-19 11:57:06 +0100 Julien Isorce * ext/gl/gstglbasemixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: use gst_gl_display_create_context in more elements. glbasefilter, glbasemixer and gltestsrc. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-07-21 17:34:27 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl/build: fix typo in _HEADERS resulting in installing the wrong file /usr/include/gstreamer-1.0/gst/gl/gl.h:51:43: fatal error: gst/gl/gstgloverlaycompositor.h: No such file or directory 2015-07-21 15:39:35 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: add RGB to NV12/NV21 conversion 2015-07-01 14:01:45 +0200 Lubosz Sarnecki * ext/gl/gstglimagesink.c: glimagesink: Send reconfigure event when window size changes https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-07-20 14:24:22 -0400 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * ext/gl/gstgluploadelement.c: glimagesinkbin: Add allocation query for GstVideoOverlayComposition Adds an GST_VIDEO_OVERLAY_COMPOSITION_META_API_TYPE query to glupload and glimagesink. Detects the query from the downstream elements, so it is executed only when downstream supports the overlay API. This makes pipelines with textoverlay ! glupload ! gldownload ! xvimagesink possible. Uses allocation meta struct for passing the window size upstream. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-04-20 13:17:09 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Apply GstVideoOverlayCompositionMeta buffer to converted buffer Since glcolorconvert creates a new GstBuffer, without the GstVideoOverlayCompositionMeta data, it needs to be copied to not be dropped. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 13:34:58 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglupload.c: glupload: Detect overlay meta buffers correctly https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 05:43:50 +0200 Lubosz Sarnecki * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglupload.c: glimagesinkbin: Add GstVideoOverlayCompositionMeta caps features https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 06:04:37 +0200 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Upload and draw overlays with GstGLOverlayCompositor Receives the GstOverlayComposition buffer in the glimagesink and draws them. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-30 17:59:12 +0200 Lubosz Sarnecki * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstgloverlaycompositor.c: * gst-libs/gst/gl/gstgloverlaycompositor.h: gloverlaycompositor: Add GstGLOverlayCompositor class Manages the GstGLCompositionOverlay objects, caches already uploaded overlays and draws them. https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 14:15:01 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglcompositionoverlay.c: glcompositionoverlay: Add compatibility for GL contexts without glGenVertexArrays https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-13 15:35:47 +0200 Lubosz Sarnecki * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcompositionoverlay.c: * gst-libs/gst/gl/gstglcompositionoverlay.h: glcompositionoverlay: Add class for managing GstVideoOverlayCompositionOverlay buffers Add a class to store and manage the OpenGL texture, vertex buffer and GstVideoOverlayRectangle. Transforms overlay coordinate space to vertex buffer space with aspect ratios in mind. = Example Pipelines = Simple pipeline gst-launch-1.0 videotestsrc ! \ textoverlay text="Hello World" font-desc="sans bold 30" ! \ glimagesink Display 3 static overlays at different positions gst-launch-1.0 videotestsrc ! \ textoverlay text="text1" valignment="top" font-desc="sans bold 30" ! \ textoverlay text="text2" halignment="right" font-desc="sans bold 30" ! \ textoverlay text="text3" halignment="left" font-desc="sans bold 30" ! \ glimagesink Display subtitle file over testsrc gst-launch-1.0 videotestsrc ! \ textoverlay name=foo filesrc location=foo.srt ! subparse ! queue ! foo. foo. ! \ glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-06-18 11:33:29 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglupload.c: glupload: Move debug init to top of the file https://bugzilla.gnome.org/show_bug.cgi?id=745107 2015-04-20 15:04:56 +0200 Carlos Rafael Giani * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: Fix PLC frame size calculations Previously, PLC frames always had a length of 120ms, which caused audio quality degradation and synchronization errors. Fix this by calculating an appropriate length for the PLC frame. The length must be a multiple of 2.5ms. Calculate a multiple of 2.5ms that is nearest to the current PLC length. Any leftover PLC length that didn't make it into this frame is accumulated for the next PLC frame. https://bugzilla.gnome.org/show_bug.cgi?id=725167 2015-07-18 21:18:23 +0100 Tim-Philipp Müller * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: minor clean-up No need for a foreach callback function that's just a few lines of code and is only used once, just do the event pushing inline. https://bugzilla.gnome.org/show_bug.cgi?id=705991 2015-02-06 13:22:14 +0000 Alex Ashley * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: dashdemux: add support for generating Protection events from ContentProtection elements If a ContentProtection element is present in an AdaptationSet element, send Protection events on the source pad, so that qtdemux can use this information to correctly generate its source caps for DASH CENC encrypted streams. This allows qtdemux to support CENC encrypted DASH streams where the content protection specific information is carried in the MPD file rather than in pssh boxes in the initialisation segments. This commit adds a new function to the adaptivedemux base class to allow a GstEvent to be queued for a stream. The queue of events are sent the next time a buffer is pushed for that stream. https://bugzilla.gnome.org/show_bug.cgi?id=705991 2015-07-20 12:40:28 +0100 Tim-Philipp Müller * ext/voaacenc/gstvoaacenc.c: voaacenc: fix output caps for stream-format=ADTS Should have framed=true in caps. Fixes voaacenc ! mpegtsmux. 2015-07-20 12:38:28 +0100 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix aac caps in pad template for raw aac Raw aac doesn't need framed=true. Fixes not-negotiated error with voaacenc ! mpegtsmux. 2015-07-20 11:09:20 +0200 Thibault Saunier * ext/gtk/gtkgstglwidget.c: gtk: Log GDK GL error when failling creating GdkGLContext 2015-07-20 18:19:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: check for pbo availability before attempting pbo download https://bugzilla.gnome.org/show_bug.cgi?id=751165 2015-07-18 17:19:18 +1000 Matthew Waters * ext/gtk/gtkgstglwidget.c: * ext/qt/qtitem.cc: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * tests/check/libs/gstglcontext.c: glcontext: fix get_current_gl_api on x11/nvidia drivers They require to get_proc_address some functions through the platform specific {glX,egl}GetProcAddress rather than the default GL library symbol lookup. 2015-07-18 17:08:36 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: glcontext: consolidate get_proc_address function definition Pass the GstGLAPI directly. 2015-07-17 17:47:37 +1000 Matthew Waters * ext/gl/gstglcolorconvertelement.c: glcolorconvertelement: propagate failure to convert buffer upstream Rather than just silently continuing 2015-07-17 13:48:00 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext/glx: try creating a context with the highest version nvidia drivers return the exact version in glGstString (GL_VERSION) we request on creation so start with the highest known version and work our way down. 2015-07-16 00:37:58 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * tests/check/libs/gstglcontext.c: glcontext: track sharedness with a cookie The previous approach of traversing the other_context weak ref tree was 1. Less performant 2. Incorrect for context destruction removing a link in the tree Example of 2: c1 = context_create (NULL) c2 = context_create (c1) c3 = context_create (c2) context_can_share (c1, c3) == TRUE context_destroy (c2) unref (c2) context_can_share (c1, c3) returns FALSE when it should be TRUE! This does not remove the restriction that context sharedness can only be tracked between GstGLContext's. 2015-07-16 00:33:17 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: use the debug object variant for completeness 2015-07-17 16:00:01 -0400 Nicolas Dufresne * ext/gtk/gtkgstglwidget.c: gtkgstglwidget: Cleanup unused private member new_buffer has been moved to base class. Also cleanup the properties comment, which are also all moved into the base class. 2015-07-17 15:57:37 -0400 Nicolas Dufresne * ext/gtk/gstgtkbasesink.c: gtksink: "widget" must be access from main thread Document that "widget" property must be accessed from the main thread (where GTK is running). This is the same for state transition on these elements. It is very natural to do so un GTK applications. 2015-07-17 15:08:53 -0400 Nicolas Dufresne * ext/gtk/gtkgstglwidget.c: gtkglsink: Don't leak vertex array and buffers This is now possible since reset is always called from the main thread. https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-17 14:36:56 -0400 Nicolas Dufresne * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: gtkgstbasewidget: Fix black frame on resize This is solved by only applying the new format when the next buffer is to be rendered and on the GTK thread. https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-17 13:05:05 -0400 Nicolas Dufresne * ext/gtk/gstgtkbasesink.c: * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: gtkgstbasewidget: Pass already parsed VideoInfo As the base sink already parse the caps into VideoInfo it makes sense to pass in VideoInfo to the widget instead. https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-16 16:49:32 -0400 Nicolas Dufresne * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: gtkglsink: Port to GstGtkBaseSink base class https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-16 16:00:37 -0400 Nicolas Dufresne * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: gtksink: Port to GstGtkBaseSink https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-16 15:59:59 -0400 Nicolas Dufresne * ext/gtk/Makefile.am: * ext/gtk/gstgtkbasesink.c: * ext/gtk/gstgtkbasesink.h: gtkbasesink: Create a base class This contains all the common code between the gtkglsink and gtksink. https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-16 14:30:42 -0400 Nicolas Dufresne * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstglwidget.h: gtkglsink: Port to GtkGstBaseWidget https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-16 12:55:11 -0400 Nicolas Dufresne * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: * ext/gtk/gtkgstwidget.c: * ext/gtk/gtkgstwidget.h: gtksink: Port to GtkGstBaseWidget https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-16 12:51:34 -0400 Nicolas Dufresne * ext/gtk/Makefile.am: * ext/gtk/gtkgstbasewidget.c: * ext/gtk/gtkgstbasewidget.h: gtk: Add GtkGstBaseWidget This is a "pseudo" base class. Basically it's a shared instance and class structure and a shared set of function between the two widget. It cannot have it's own type like normal base class since the one instance will implement GtkGLArea while the other implements GtkDrawingAreay. To workaround this, the parent instance and class is a union of both. https://bugzilla.gnome.org/show_bug.cgi?id=752441 2015-07-16 16:47:05 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: uploadelement: Protect against NULL pointer I notice that if you stop the pipeline during a renegotiation the upload may be NULL while an allocation query is being run. In that scenario, returning FALSE to the allocation query is the best thing. 2015-07-15 17:35:22 -0400 Nicolas Dufresne * ext/gtk/gtkgstglwidget.c: gtkgstglwidget: Remove unused gl_caps 2015-07-15 16:56:33 -0400 Nicolas Dufresne * ext/gtk/gstgtksink.c: gtksink: Create a window if the widget is unparented The same way as it's now done with the gtkglsink, create a top level window if the widget is not parented. https://bugzilla.gnome.org/show_bug.cgi?id=751104 2015-07-15 14:35:02 -0400 Nicolas Dufresne * ext/gtk/gstgtksink.c: gtksink: Ensure the copy pasted code remains the same Move back the default property at the same place they are in the other sink. This helps when using a diff viewer to synchronized this unfortunate copy paste. https://bugzilla.gnome.org/show_bug.cgi?id=751104 2015-07-15 14:32:42 -0400 Nicolas Dufresne * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.c: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: gtk: Fix race between queue_draw and destroy In GTK dispose can be called before the last ref is reached. This happens when you close the container window. The dispose will be explicitly called, and destroyed notify will be fired. This patch fixes this race by properly tracking the widget state. In the sink, we now set the widget pointer to NULL, so the widget will properly get created again if you set your pipeline to NULL state after the widget was destroy, and set it back to PLAYING. https://bugzilla.gnome.org/show_bug.cgi?id=751104 2015-07-16 21:28:28 +0100 Tim-Philipp Müller * ext/dash/gstplugin.c: dashdemux: remove typefinder, move it to typefindfunctions in -base Otherwise this plugin will be loaded pretty much whenever there's anything to typefind. And the code was pretty much copy'n'paste from -base anyway. 2015-07-15 13:02:54 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: default timescale is 1 default timescale value should be 1, not 0. https://bugzilla.gnome.org/show_bug.cgi?id=752414 2015-07-15 13:41:37 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: free prop_string only after it's no longer needed https://bugzilla.gnome.org/show_bug.cgi?id=752419 2015-07-16 17:21:51 +0100 Tim-Philipp Müller * gst-plugins-bad.doap: Update mailing list address from sourceforge to freedesktop 2015-07-15 11:47:51 -0400 Nicolas Dufresne * ext/gtk/gtkgstwidget.c: gtkgstwidget: Add missing break in get_property 2015-07-15 11:44:30 -0400 Nicolas Dufresne * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.h: gtksinks: Remove undefined private structure The classes contains a private structure which are not defined, hence unused. 2015-07-14 17:40:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: memcpy on raw data upload Anything else requires keeping track of the GstVideoFrame mapping across possible multiple buffers to ensure correct data pointer usage. 2015-07-14 17:39:59 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasebuffer.c: glbasebuffer: add some debug and zero the data pointers on init 2015-07-10 01:00:15 +0100 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: don't wait for data on sparse inputs like metadata or subtitle streams 2014-11-09 19:16:29 +0000 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: add basic support for asynchronous KLV metadata streams This is defined in SMPTE Rp 217. In this case the metadata PES packets carry no timestamps of their own and no Metadata Access Unit Wrappers are used. 2015-06-29 02:42:06 +0300 Ilya Konstantinov * sys/applemedia/vtdec.c: vtdec: handle non-consecutive GstBuffer input without copying CMBlockBuffer offers a model similar to GstBuffer, as it can consist of multiple non-consecutive memory blocks. Prior to this change, what we were doing was: 1) Incorrect: CMBlockBufferCreateWithMemoryBlock does not copy the data, but we gst_buffer_unmap'd right away. 2) Inefficient: If the GstBuffer consisted of non-contiguous memory blocks, gst_buffer_map resulted in malloc / memcpy. With this change, we construct a CMBlockBuffer out of individual mapped GstMemory objects. CMBlockBuffer is made to retain the GstMemory objects (through the use of CMBlockBufferCustomBlockSource), so the original GstBuffer can be unref'd. https://bugzilla.gnome.org/show_bug.cgi?id=751241 2015-07-13 23:22:00 +1000 Matthew Waters * sys/applemedia/avsamplevideosink.m: applemedia/avsample: fix unconditional use of OSX 10.10 API We can just not use the error/status properties https://bugzilla.gnome.org/show_bug.cgi?id=746631 2015-07-10 19:05:41 +0100 Tim-Philipp Müller * configure.ac: configure: try harder to find the right Qt5 build tools First check for Qt build tools in the host_bins directory from the Qt5Core pkg-config file. This fixes the situation where both Qt4 and Qt5 are installed but the global moc/uic/etc. are the Qt4 version, which would result in build failures. 2015-07-10 14:01:43 +0200 Edward Hervey * configure.ac: * ext/qt/qtitem.cc: configure/qt: Fix build without Qt5X11Extras 2015-07-10 13:26:51 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparse: g_slice_new() can't return NULL It will abort() if allocation fails. 2015-07-10 13:19:40 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Don't allow network access when reading the XML data 2015-07-10 19:22:08 +1000 Matthew Waters * configure.ac: qt: don't error out if Qt X11 could not be found PCK_CHECK_MODULES default error-if-not-found implementation errors so override it with a simple notice that we couldn't find the library. 2015-07-06 23:10:51 +1000 Matthew Waters * configure.ac: * ext/Makefile.am: * ext/qt/.gitignore: * ext/qt/Makefile.am: * ext/qt/gstplugin.cc: * ext/qt/gstqsgtexture.cc: * ext/qt/gstqsgtexture.h: * ext/qt/gstqtsink.cc: * ext/qt/gstqtsink.h: * ext/qt/qtitem.cc: * ext/qt/qtitem.h: * tests/examples/qt/qml/.gitignore: * tests/examples/qt/qml/main.cpp: * tests/examples/qt/qml/main.qml: * tests/examples/qt/qml/play.pro: * tests/examples/qt/qml/qml.qrc: new qt5 qml GL video sink Very much in the same spirit as the Gtk GL sink Two things are provided 1. A QQuickItem subclass that renders out RGBA filled GstGLMemory buffers that is instantiated from qml. 2. A sink element that will push buffers into (1) To use 1. Declare the GstGLVideoItem in qml with an appropriate objectName property set. 2. Get the aforementioned GstGLVideoItem from qml using something like QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); QObject *rootObject = engine.rootObjects().first(); QQuickItem *videoItem = rootObject->findChild ("videoItem"); 3. Set the videoItem on the sink https://bugzilla.gnome.org/show_bug.cgi?id=752185 2015-07-08 17:17:18 +0200 Rico Tzschichholz * sys/bluez/Makefile.am: bluez: Fix make dist while bluez >= 5 is not available 2015-07-09 18:31:34 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Fix previous commit We only want to do a hard reset of the observations if we're working with TIME segments in push mode. For BYTE segment we want to keep the observations (in order to do seeks in push-mode). 2015-07-09 16:59:16 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Flush more on DISCONT buffers in push mode When in push mode, we want to discard all previous observations from the mpegtspacketizer when we get a DISCONT buffer. This avoids trying to calculate bogus timestamps (estimating them using old PCR observations). We only do a hard reset in push-mode. In pull-mode we still need the observations (in order to seek properly) 2015-07-09 11:07:29 +0200 Edward Hervey * .gitignore: gitignore: Add new generated files 2015-07-09 11:05:10 +0200 Edward Hervey * sys/bluez/Makefile.am: bluez: Include new file in dist'ed files Fixes make distcheck and tarball generation 2015-07-09 13:03:23 +1000 Matthew Waters * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: * tests/check/Makefile.am: gtk: add to the generic/states test 2015-06-17 09:36:57 -0400 Xavier Claessens * ext/gtk/gstgtkglsink.c: GstGtkGLSink: Ensure widget has a toplevel parent Checking for a parent is not enough, it must have a toplevel one. If widget has no toplevel parent then add it in a GtkWindow, that make it usable from gst-launch-1.0. https://bugzilla.gnome.org/show_bug.cgi?id=751104 2015-06-17 09:36:40 -0400 Xavier Claessens * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: GstGtkGLSink: Post error if widget gets destroyed https://bugzilla.gnome.org/show_bug.cgi?id=751104 2015-06-16 16:21:26 -0400 Xavier Claessens * ext/gtk/gstgtkglsink.c: GstGtkGLSink: fix possible warning in finalize If the element is finalized before going in READY state the widget could still be NULL. https://bugzilla.gnome.org/show_bug.cgi?id=751104 2015-07-08 23:14:13 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: mpdparser: Fix some memory leaks in the MPD parser and unit test 2015-07-07 16:59:52 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: tests: added unit tests to test all functions Added unit tests for all functions. Code coverage: Overall coverage rate: lines......: 83.8% (1941 of 2316 lines) functions..: 100.0% (141 of 141 functions) 2015-07-08 17:08:56 +0300 Roman Donchenko * gst/videoparsers/gstpngparse.c: pngparse: fix a GstCaps object leak https://bugzilla.gnome.org//show_bug.cgi?id=752127 2015-03-26 11:34:10 +0000 Tim-Philipp Müller * gst/mpegtsdemux/pesparse.c: tsdemux: remove unnecessary check This is not public API, use g_assert() instead of g_return_if_fail(), so that it's compiled out in releases. It's only called from our code, with &foo. 2014-06-30 13:20:12 +0100 Tim-Philipp Müller * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: add support for KLV metadata streams There's no timestamps for these streams though, we might want to make some up based on the last/next video PTS or so. 2015-07-08 16:31:48 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: Revert "Revert "dashdemux: fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS"" This reverts commit 4875ddf5855a26f349df7b385b68eb692e314bfa. This was based on a misunderstanding of the code. https://bugzilla.gnome.org/show_bug.cgi?id=752085 2015-07-06 13:28:05 +0300 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl/eagl: Don't call anything synchronously from the main thread This will deadlock if the main thread is the one who creates the GstGLContext. All things we call from the main thread should be possible from any thread. https://bugzilla.gnome.org/show_bug.cgi?id=751101 2015-07-08 12:16:35 +0100 Luis de Bethencourt * sys/bluez/gstavdtpsrc.c: bluez: remove unnecessary goto All goto fail happen before ret is set. ret must be NULL, and the only thing the fail statement block does is return NULL. Replacing the jumps to do this return directly. CID #1311329 2015-07-08 11:32:58 +0100 Luis de Bethencourt * ext/dash/gstdashdemux.c: dashdemux: remove redundant else statement Else statement is redundant when the if block finishes with an return. 2015-07-08 11:42:48 +0300 Sebastian Dröge * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Add support for H265/HEVC 2015-06-29 12:40:55 +0300 Ilya Konstantinov * sys/applemedia/vtdec.c: vtdec: fix refcount error in error handling https://bugzilla.gnome.org/show_bug.cgi?id=751641 2015-07-07 19:48:23 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Explicitly check for CUSTOM_ERROR when converting errors to EOS We use things like CUSTOM_SUCCESS* in other places, and those are not errors but should just be handled like OK. 2015-07-07 19:26:00 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: Revert "dashdemux: fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS" This reverts commit dfe37ffc59fdf5f4075696976d98ec8d6db73138. https://bugzilla.gnome.org/show_bug.cgi?id=752085 2015-07-07 19:25:28 +0300 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Fix off-by-one in has-next-segment calculation 2015-07-07 18:37:24 +0300 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: If downloading the last fragment fails, consider this as EOS and not ERROR Sometimes the last fragment does not exist because of rounding errors with the durations. Just finish the stream gracefully instead of erroring out instead. 2015-07-07 22:35:47 +1000 Matthew Waters * ext/gl/gstgldownloadelement.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: download: only start a download transfer for sysmem caps features 2015-07-06 12:08:52 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: tests: added indentation in xml strings to improve readability https://bugzilla.gnome.org/show_bug.cgi?id=752027 2015-07-03 16:17:58 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: added parsing of bitstreamSwitching@AdaptationSet https://bugzilla.gnome.org/show_bug.cgi?id=751170 2015-07-03 15:31:35 +0100 Florin Apostol * ext/dash/gstmpdparser.h: dashdemux: regrouped functions in gstmpdparser.h file Moved gst_mpd_client_get_next_segment_availability_end_time and gst_mpd_client_add_time_difference functions to be grouped with functions from the same category. https://bugzilla.gnome.org/show_bug.cgi?id=752027 2015-07-06 14:21:17 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: dashdemux: tests: corrected code layout deleted the empty line between gst_mpd_parse call and its check so that the assert is next to the function it is testing https://bugzilla.gnome.org/show_bug.cgi?id=752027 2015-07-07 10:56:47 +0900 Hyunjun Ko * gst-libs/gst/codecparsers/gstmpegvideometa.c: mpegvideometa: add meta transform function https://bugzilla.gnome.org/show_bug.cgi?id=751778 2015-07-07 10:57:26 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: transform func: return FALSE if not supported or failed https://bugzilla.gnome.org/show_bug.cgi?id=751778 2015-07-06 14:14:12 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS Fixed gst_mpd_client_advance_segment to return GST_FLOW_EOS if the new index is out of range. https://bugzilla.gnome.org/show_bug.cgi?id=751850 2015-07-07 16:39:09 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.h: android: add missing egl.h include 2015-07-07 15:30:17 +1000 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: correct vao usage keep the vao bound after uploading the new vertex data fixes a mesa GL error "no vertex array object bound" on caps changes 2015-06-16 07:49:34 +0000 Matthew Waters * ext/gl/gstopengl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/Makefile.am: * gst-libs/gst/gl/egl/gstegl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/gstglapi.h: gl: consolidate egl header includes to egl-only headers They may conflict with other headers. 2015-07-06 19:33:35 +0200 Thibault Saunier * ext/gtk/gtkgstglwidget.c: gtkglsink: Release the widget lock when trying to get the GL context Otherwise we might be waiting for the lock on the main loop (for example in the ->render vmethod) and thus we will deadlock. 2015-07-06 18:51:07 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove pixel-aspect-ratio field from the caps returned by getcaps Avoiding not negotiated error while negotiating as we anyway force 1/1 as output 2015-07-06 15:24:06 +0100 Luis de Bethencourt * ext/curl/gstcurlsshsink.c: curlsshsink: remove redundant else statement Else statement is redundant when the if block finishes with an return. 2015-07-02 15:17:51 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: fixed segment start when specified by SegmentTimeline @t attribute in segment Timeline is relative to the period start. Corrected the code to take this into account when computing segment timestamp. https://bugzilla.gnome.org/show_bug.cgi?id=751841 2015-07-03 17:00:31 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: wrong segment duration computed by gst_mpd_client_setup_representation Corrected computation of segment start and duration. https://bugzilla.gnome.org/show_bug.cgi?id=751914 2015-07-03 16:10:20 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: corrected search for audio languages Corrected the initialisation of mimeType in gst_mpdparser_get_list_and_nb_of_audio_language: the variable is used in a loop, so it must be set to NULL at the beginning of each iteration. https://bugzilla.gnome.org/show_bug.cgi?id=751911 2015-07-03 21:58:26 +0200 Stefan Sauer * common: Automatic update of common submodule From f74b2df to 9aed1d7 2015-07-03 12:17:42 -0400 Olivier Crête * ext/gl/gstglmixerbin.c: * ext/gl/gstglvideomixer.c: glvideomixer, glmixer: Add description and klass 2015-07-03 19:24:58 +0530 Arun Raghavan * configure.ac: build: Fix broken BlueZ configure check The previous commit left an extra set of brackets, and missed removing the explicit dbus check (which is no longer needed since we're using gdbus). 2015-01-13 10:31:41 -0800 Nick Stoughton * configure.ac: build: remove support for bluez4 2014-12-30 07:21:44 -0800 Nick Stoughton * configure.ac: * sys/bluez/Makefile.am: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtputil.c: * sys/bluez/gstavdtputil.h: * sys/bluez/org.bluez.xml: bluez: refactor to use glib and add connection state tracking 2015-06-15 23:40:44 +0100 Tim-Philipp Müller * gst/pcapparse/gstpcapparse.c: pcapparse: fix another regression Introduced by c4c9fe60b pcapparse: Take buffer directly from the adapter Using gst_adapter_take_buffer_fast() can lead to buffers that are made up of multiple memories with the first memory smaller than the RTP header size, which violates assumptions GstRtpBaseDepayloader makes, namely that the complete RTP header will be in the first memory. This leads to such packets being dropped when feeding them from pcapparse to RTP depayloaders. Use take_buffer() so we get buffers with a single memory. 2015-07-02 13:45:04 +0200 Stian Selnes * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/pcapparse.c: tests: pcapparse: add unit test for frames with eth padding https://bugzilla.gnome.org/show_bug.cgi?id=751879 2015-06-15 12:55:39 +0100 Tim-Philipp Müller * gst/pcapparse/gstpcapparse.c: pcapparse: fix regression when handling packets with eth padding Introduced by c4c9fe60b pcapparse: Take buffer directly from the adapter Flush any trailing bytes after the payload from the adapter as well, otherwise we'll read a bogus packet size from the adapter next and then everything goes downhill from there. https://bugzilla.gnome.org/show_bug.cgi?id=751879 2015-07-02 18:51:09 +0200 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Unref video frames and codec state in all cases 2015-07-02 10:26:18 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglviewconvert.c: gl: initialize output params to 0 before calling gl functions The client side API of the Chromium's GPU Process has asserts in debug mode that check that output params are initialized to 0. 2015-06-26 15:34:35 -0400 Nicolas Dufresne * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: gl: Don't leak pool if set_config failed 2015-06-26 15:33:33 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Don't cache buffer pool Caching and sharing to multiple element the same pool prevents renegotiation from passthrough to not passthrough. 2015-07-02 14:15:05 +0200 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Uninitializing the decoder can't fail and will always return 0 == cmResultSuccess ... but when we cast cmResultSuccess to a gboolean it will be FALSE, and make GstVideoDecoder::stop() fail for no reason. 2015-07-02 17:08:26 +0900 Vineeth TM * ext/gl/gstglimagesink.c: glimagesink: use g_clear_error instead of g_error_free replace g_error_free with g_clear_error, as it internally checks if error variable is valid or not. https://bugzilla.gnome.org/show_bug.cgi?id=751823 2015-07-02 16:27:06 +0900 Vineeth TM * sys/androidmedia/gstamc.c: amc: fix check whether we managed to acquire a buffer https://bugzilla.gnome.org/show_bug.cgi?id=751821 2015-06-30 15:52:18 +0200 Miguel París Díaz * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: srtpdec: Add config for the replay window size https://bugzilla.gnome.org/show_bug.cgi?id=751729 2015-06-30 13:20:43 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: corrected parsing of %u in segment templates https://bugzilla.gnome.org/show_bug.cgi?id=751716 2015-06-29 22:18:38 +0100 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: corrected recognition of $$$ in segment templates fixed recognition of $$ after a $ that ends an identifier, eg $Time$$$ https://bugzilla.gnome.org/show_bug.cgi?id=751682 2015-06-29 18:50:09 +0200 Sebastian Dröge * sys/androidmedia/gstjniutils.c: androidmedia: Call initialize_classes() also when we got the Java VM from the app https://bugzilla.gnome.org/show_bug.cgi?id=751664 2015-06-29 16:10:39 +0100 Luis de Bethencourt * ext/gl/gstglviewconvert.c: gl: add missing break gst_gl_view_convert_element_set_property() is missing a break at the end of the PROP_OUTPUT_DOWNMIX_MODE case. Adding it. CID #1308949 2015-06-26 14:12:22 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Don't leak pool gst_query_add_allocation_pool is transfer none. Also unref if there was a configuration error. 2015-06-26 15:58:25 +0900 Sangkyu Park * gst/mpegdemux/gstmpegdemux.c: mpegdemux: check pointer before dereferencing gst_ps_demux_get_stream() could return NULL when it is unknown stream, check this hasn't happened before dereferencing the returned pointer. https://bugzilla.gnome.org/show_bug.cgi?id=751528 2015-06-26 13:09:54 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: corrected next fragment duration validation Before returning the next fragment duration value, the gst_mpd_client_get_next_fragment_duration function tries to validate it. But the condition was incorrect. https://bugzilla.gnome.org/show_bug.cgi?id=751539 2015-06-25 23:49:10 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Move unref() into the right scope 2015-06-25 23:32:10 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Properly handle presentationTimeOffset for seeking and multi-period streams Segment start/time/position/base should only be modified if this is the first time we send a segment, otherwise we will override values from the seek segment if new streams have to be exposed as part of the seek. Segment base should be calculated from the segment start based on the stream's own segment, not the demuxer's segment. Both might differ slightly because of the presentationTimeOffset. Always add the presentationTimeOffset (relative to the period start, not timestamp 0) to the segment start after resetting the stream's segment based on the demuxer's segment (i.e. after seeks or stream restart). Also make sure to keep the stream's segment up to date and not just send a new segment event without storing the segment in the stream. https://bugzilla.gnome.org/show_bug.cgi?id=745455 2015-06-25 23:24:50 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Subtract the period start time from the presentation offset We're interested in the offset between the period start timestamp and the actual media timestamp so that we can properly correct for it. The absolute presentation offset to timestamp 0 is useless as the only thing we really care about is the offset between the current fragment timestamp and the media timestamp. 2015-06-25 20:19:34 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Subtract the period start when seeking based on a template Otherwise we will look for segments after the period usually. The seek timestamp is relative to the start of the first period and we have to select a segment relative to the current period's start. 2015-06-25 20:09:14 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: dashdemux: Include the period start in the fragment timestamps in all cases We didn't do this for fragments that are generated on demand from a template, only for the other cases when they were all generated upfront. This caused fragment timestamps to start from 0 again for each new period. 2015-06-25 23:23:58 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Seek on the new streams if the seek caused a period switch Seeking on the old streams is pointless, they are going to be freed on the next opportunity. 2015-06-25 15:05:20 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dash: Correct check for valid timeShiftBufferDepth If not set, the timeShiftBufferDepth has a default value of -1. The standard says that this should be interpreted as infinite. The gst_mpd_client_check_time_position function incorrectly compares timeShiftBufferDepth with 0 instead of -1 to determine if it was set. https://bugzilla.gnome.org/show_bug.cgi?id=751500 2015-06-25 11:02:41 +0100 Luis de Bethencourt * ext/opencv/gstfacedetect.c: * sys/applemedia/iosassetsrc.m: docs: decodebin2 -> decodebin 2015-04-27 15:09:18 +0300 Ilya Konstantinov * sys/applemedia/coremediabuffer.c: applemedia: enable sharing of CMBlockBuffer data Instead of wrapping with GST_MEMORY_FLAG_NO_SHARE, we make the GstMemory object retain the underlying CMBlockBuffer. https://bugzilla.gnome.org/show_bug.cgi?id=751072 2015-04-27 15:02:59 +0300 Ilya Konstantinov * sys/applemedia/coremediabuffer.c: applemedia: CMBlockBuffer can be non-contiguous CMBlockBufferGetDataLength would return the entire data length, while size of individual blocks can be smaller. Iterate over the block buffer and add the individual (possibly non-contiguous) memory blocks. https://bugzilla.gnome.org/show_bug.cgi?id=751071 2015-06-24 17:16:46 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: Corrected duration argument for gst_mpd_client_add_media_segment call The last parameter of gst_mpd_client_add_media_segment function is a duration. But when called from gst_mpd_client_setup_representation, the last argument was wrongly set to PeriodEnd https://bugzilla.gnome.org/show_bug.cgi?id=751449 2015-06-24 21:42:32 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: incorrect use of period start The period start information, calculated in gst_mpd_client_setup_media_presentation function is stored in stream_period->start. The information read from xml file and stored in stream_period->period->start is not changed. If the xml file does not contain the period start information, stream_period->period->start will be -1. The function gst_mpd_client_get_next_segment_availability_end_time wants to use period start time, but incorrectly uses stream_period->period->start (value from xml file, which could be -1) instead of stream_period->start (computed value) https://bugzilla.gnome.org/show_bug.cgi?id=751465 2015-06-15 17:18:41 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: tests: dashdemux: renamed functions Renamed 2 testcase functions: - dash_mpdparser_program_information - dash_mpdparser_base_URL 2015-06-25 00:04:32 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.5.2 === 2015-06-24 23:37:26 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.5.2 2015-06-24 23:01:24 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2015-06-15 17:30:26 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: tests: dashdemux: added explicit type conversions flexelint (http://www.gimpel.com/html/flex.htm) static code analyser complained about implicit conversions from unsigned to signed, so I added explicit conversions. Ideally, the size parameter of gst_mpd_parse function should be unsigned, but I don't want to change the API. 2015-06-15 16:59:33 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: tests: dashdemux: corrected return type for duration_to_ms function The duration_to_ms function converts a time specified by year, month, day, hour, minute, second, millisecond to a millisecond value. Because all the arguments are positive numbers, the result must also be positive. This patch changes the returned value from a gint64 to a guint64 type. 2015-06-24 11:15:46 +0200 Sebastian Dröge * po/cs.po: * po/de.po: * po/hu.po: * po/pl.po: * po/ru.po: * po/uk.po: * po/vi.po: po: Update translations 2015-06-23 18:19:35 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Also update segment.base and segment.time when switching periods And include the presentation offset in the last known position for each stream, and just because we can also keep track of the latest known position inside the demuxer segment. 2015-06-23 16:46:39 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: Revert "gl/window/x11: don't create our own X11 display" This reverts commit 5697b6b89b4b2a15c45bd47be940a17f4412ea11. https://bugzilla.gnome.org/show_bug.cgi?id=751003 2015-06-23 14:16:39 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: Revert "eagl: Don't dispatch_sync() to the main thread if we are on the main thread" This reverts commit 0bff481011cf74c59869b511393d1696b570e3d5. It wasn't supposed to be merged and also doesn't fix the problem. 2015-06-23 13:13:49 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Remember the last return value of gst_adaptive_demux_stream_update_fragment_info() It's going to return EOS if the period ended or otherwise there is just no next fragment left. If we don't store the last return value, it will always stay OK and gst_adaptive_demux_combine_flows() will always return OK instead of EOS once all streams are done. This partially switches period changes in DASH by at least trying to switch instead of just stopping. What is still left is that after a period change with DASH the times all start at 0 again instead of continuing. 2015-06-23 11:05:06 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: eagl: Don't dispatch_sync() to the main thread if we are on the main thread This will otherwise deadlock. https://bugzilla.gnome.org/show_bug.cgi?id=751101 2015-06-23 10:31:44 +0200 John Ludwig * gst-libs/gst/gl/glprototypes/base.h: gl: Include texParameterf in the GL function table https://bugzilla.gnome.org/show_bug.cgi?id=751228 2015-05-29 14:27:24 +0300 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gsterrorignore.c: * gst/debugutils/gsterrorignore.h: error-ignore: New element to convert some GstFlowReturn types into others Can be used to fix misbehaving sinks. It will pass through all buffers until it encounters GST_FLOW_ERROR or GST_FLOW_NOT_NEGOTIATED (configurable). At that point it will unref the buffers and return GST_FLOW_NOT_LINKED (configurable) - until the next READY_TO_PAUSED or FLUSH_STOP. https://bugzilla.gnome.org/show_bug.cgi?id=750098 2015-06-20 13:36:27 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: simplifies and improves sink_get_caps. The problem here was that after removing the formats and all the things we could convert, we then intersected these caps with the template caps. Hence if a subclass offered permissive sink templates (eg all the possible formats videoconvert handles), but only one output format, then at negotiation time getcaps returned caps with the format restricted to that format, even though we do handle conversion. https://bugzilla.gnome.org/show_bug.cgi?id=751255 2015-06-22 15:47:18 -0400 Nicolas Dufresne * ext/opencv/gstmotioncells.c: * ext/opencv/gstmotioncells.h: motioncells: Port to g_get_current_time This is more portable. https://bugzilla.gnome.org/show_bug.cgi?id=751221 2015-06-16 17:18:52 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: add frame rate range to caps When AVFoundation indicates a supported frame rate range, add it to the caps. This is important for devices such as the iPhone 6, which indicate a single AVFrameRateRange of 2fps - 60fps. https://bugzilla.gnome.org/show_bug.cgi?id=751048 2015-06-15 17:37:42 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: tests: dashdemux: added parsing of period element Improved dash_mpd unit tests by adding new tests that parse the Period element. Code coverage reported by lcov for dash/gstmpdparser.c is: lines......: 43.0% (985 of 2290 lines) functions..: 47.5% (67 of 141 functions) 2015-06-22 14:06:04 +0100 Julien Isorce * gst-libs/gst/gl/gstglmemory.c: glmemory: fix consistency about pbo availability. https://bugzilla.gnome.org/show_bug.cgi?id=751165 2015-06-15 17:34:48 +0100 Florin Apostol * tests/check/elements/dash_mpd.c: tests: dashdemux: extended MPD element test to test xml namespaces Extended the dash_mpdparser_mpd testcase to also test parsing the xml namespace attribute. https://bugzilla.gnome.org/show_bug.cgi?id=750863 2015-06-15 13:43:53 +0200 Mersad Jelacic * ext/opus/gstopusenc.c: opusenc: Add bitrate to the tags https://bugzilla.gnome.org/show_bug.cgi?id=750992 2015-06-15 12:59:55 +0100 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: corrected computation of period's duration According to ISO/IEC 23009-1:2014(E), chapter 5.3.2.1 "The Period extends until the PeriodStart of the next Period, or until the end of the Media Presentation in the case of the last Period." This means that a configured value for optional attribute period duration should be ignored if the next period contains a start attribute or it is the last period and the MPD contains a mediaPresentationDuration attribute. https://bugzilla.gnome.org/show_bug.cgi?id=750797 2015-06-22 13:29:25 +0200 Wim Taymans * gst/bayer/gstbayerorc-dist.c: bayer: update ORC files Update ORC files with newest ORC to fix backup code generation error. 2015-06-22 10:49:50 +0100 Tim-Philipp Müller * gst/pcapparse/gstirtspparse.c: irtspparse: reflow code to avoid uninitialized variable warning This should hopefully allow even the most challenged static code analyzer to figure out that it's all fine. Also makes the flow clearer. https://bugzilla.gnome.org/show_bug.cgi?id=751305 2015-06-22 10:58:00 +0900 Vineeth TM * gst/mpegtsmux/tsmux/tsmux.c: tsmux: code style fix trivial patch to add proper ( while checking for if(G_UNLIKELY()) https://bugzilla.gnome.org/show_bug.cgi?id=751305 2015-06-22 09:23:12 +0100 Tim-Philipp Müller * sys/uvch264/gstuvch264_src.c: uvch264src: fix small leak in caps query handler gst_query_set_caps_result() does not take ownership of the caps. 2015-06-22 11:03:15 +0900 Vineeth TM * sys/uvch264/gstuvch264_src.c: uvch264_src: add missing break in caps query handler There is a missing break statement in switch, which will result in executing default case as well resulting in wrong behavior https://bugzilla.gnome.org/show_bug.cgi?id=751305 2015-06-22 09:08:00 +0100 Tim-Philipp Müller * gst/mpeg1sys/.gitignore: * gst/mpeg1sys/Makefile.am: * gst/mpeg1sys/buffer.c: * gst/mpeg1sys/buffer.h: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpeg1sys/main.h: * gst/mpeg1sys/mpeg1systemencode.vcproj: * gst/mpeg1sys/systems.c: mpeg1sys: remove ancient plugin that's never even been ported to 0.8 2015-06-21 17:13:07 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpegparser.h: codecparsers: jpeg: add some padding to ScanHdr struct For bits that we don't parse out at the moment. 2015-06-21 17:03:52 +0100 Tim-Philipp Müller * win32/common/libgstcodecparsers.def: codecparsers: jpeg: add new API to .def file 2015-06-21 14:58:17 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpegparser.c: codecparsers: jpeg: fix docs for table parsing functions 2015-06-21 13:55:29 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstjpegparser.h: docs: add new JPEG codecparser API to the docs And sprinkle some more Since markers 2015-06-21 11:51:38 +0100 Tim-Philipp Müller * .gitignore: * tests/examples/codecparsers/Makefile.am: * tests/examples/codecparsers/parse-vp8.c: * tests/icles/.gitignore: * tests/icles/Makefile.am: examples: move vp8 parser test to codecparser example directory 2015-06-21 11:20:57 +0100 Tim-Philipp Müller * .gitignore: * configure.ac: * tests/examples/Makefile.am: * tests/examples/codecparsers/Makefile.am: * tests/examples/codecparsers/parse-jpeg.c: examples: add small jpeg codecparser test https://bugzilla.gnome.org/show_bug.cgi?id=673925 2015-06-20 22:49:23 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpegparser.c: codecparsers: jpeg: fix validity checking of data parsed g_return_val_if_fail() and g_assert() are not appropriate for checking untrusted external data. https://bugzilla.gnome.org/show_bug.cgi?id=673925 2015-06-20 19:52:42 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstjpegparser.h: codecparsers: jpeg: fix up API - add data pointer to GstJpegSegment and pass segment to all parsing functions, rename accordingly - shorten GstJpegMarkerCode enum type name to GstJpegMarker - move function gtk-doc blurbs into .c file - add since markers - flesh out docs for SOF markers https://bugzilla.gnome.org/show_bug.cgi?id=673925 2015-06-14 11:41:52 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstjpegparser.h: codecparsers: jpeg: tweak API a little https://bugzilla.gnome.org/show_bug.cgi?id=673925 2015-06-14 19:01:12 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstjpegparser.h: codecparsers: jpeg: hide gst_jpeg_scan_for_marker_code() Make this function private for now, since it's unclear whether it's actually needed seeing that gst_jpeg_parse() scans too. https://bugzilla.gnome.org/show_bug.cgi?id=673925 2013-09-24 16:10:45 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstjpegparser.c: codecparsers: jpeg: fix and optimize scan for next marker code. Fix scan for next marker code when there is an odd number of filler (0xff) bytes before the actual marker code. Also optimize the loop to execute with fewer instructions (~10%). This fixes parsing for Spectralfan.mov. 2013-09-18 15:56:52 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstjpegparser.c: codecparsers: jpeg: fix calculation of segment size. The size of a marker segment is defined to be exclusive of any initial marker code. So, fix the size for SOI, EOI and APPn segments but also the size of any possible segment that is usually "reserved" or not explicitly defined. https://bugzilla.gnome.org/show_bug.cgi?id=707447 2013-06-13 13:22:18 +0800 Wind Yuan * gst-libs/gst/codecparsers/gstjpegparser.c: codecparsers: jpeg: fix default Huffman tables generation. Fix build_huffman_table() to correctly fill in the associated HUFFVAL entries to the default Huffman tables. 2012-09-12 10:40:06 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstjpegparser.c: * gst-libs/gst/codecparsers/gstjpegparser.h: codecparsers: jpeg: add JPEG bitstream parser Signed-off-by: Gwenole Beauchesne https://bugzilla.gnome.org/show_bug.cgi?id=673925 2015-06-20 16:07:57 +0100 Tim-Philipp Müller * gst/videoparsers/gsth264parse.c: h264parse: fix typo in log message 2015-06-15 16:09:54 +0100 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: add gst_gl_display_create_context It also emits a create-context signal so that an application can provide an external GstGLContext backend. https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-06-15 16:36:26 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: move display from priv https://bugzilla.gnome.org/show_bug.cgi?id=750310 2015-06-18 10:55:28 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: Revert "glcontext: add gst_gl_context_set_display helper" This reverts commit 71b8103cbd16fff9cf5a65cf517083cb794aa3b5. 2015-06-18 10:52:18 +0100 Julien Isorce * configure.ac: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gpuprocess/Makefile.am: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.h: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: Revert "gl: add GstGLContextGPUProcess backend" This reverts commit b377112ee38912d316e77b4e2102041389dc0051. 2015-06-19 14:35:37 +1000 Jan Schmidt * ext/gl/gstglimagesink.c: glimagesink: Remove duplicate, useless line of code 2015-06-18 22:11:05 -0400 Nicolas Dufresne * ext/gl/gstopengl.c: opengl: glstero* are only built with full OpenGL Don't try to register the elements unless they are built. 2015-06-18 21:09:24 -0400 Nicolas Dufresne * configure.ac: style: Remove white spaces at the end of line 2015-06-18 18:09:55 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Fix GLES2 compatibility 2015-06-18 18:02:21 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglviewconvert.c: glviewconvert: Fix broken validity check 2015-06-15 16:06:41 +1000 Jan Schmidt * gst/videoparsers/gsth264parse.c: h264parse: Move PAR calcs, and use them for stereoscopic half-aspect Move the pixel-aspect-ratio calculations higher up in caps determination, so the results are available for a call to gst_video_multiview_guess_half_aspect() when stereoscopic video is detected. 2015-05-30 03:09:17 +1000 Jan Schmidt * configure.ac: * tests/examples/gl/gtk/3dvideo/.gitignore: * tests/examples/gl/gtk/3dvideo/3dvideo.vcproj: * tests/examples/gl/gtk/3dvideo/Makefile.am: * tests/examples/gl/gtk/3dvideo/main.cpp: * tests/examples/gl/gtk/3dvideo/mviewwidget.c: * tests/examples/gl/gtk/3dvideo/mviewwidget.h: * tests/examples/gl/gtk/Makefile.am: 3dvideo: Add simple gtk example stereoscopic video player https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-05-30 02:29:04 +1000 Jan Schmidt * ext/gl/Makefile.am: * ext/gl/gstglstereomix.c: * ext/gl/gstglstereomix.h: * ext/gl/gstglstereosplit.c: * ext/gl/gstglstereosplit.h: * ext/gl/gstglviewconvert.c: * ext/gl/gstglviewconvert.h: * ext/gl/gstopengl.c: gl: Add glviewconvert, glstereomix and glstereosplit elements Conversion elements for transforming multiview/stereoscopic video https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-05-30 02:26:32 +1000 Jan Schmidt * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Support multiview/stereoscopic video Support video with multiview info in the caps, transform it to mono anaglyph by default, but allow for configuring other output modes and handoff to the app via the draw signal. https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-05-30 02:21:43 +1000 Jan Schmidt * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglviewconvert.c: * gst-libs/gst/gl/gstglviewconvert.h: gl libs: Add glviewconvert helper object Add API for a helper object that can convert between different stereoscopic video representations, and later do filtering of multiple view streams. https://bugzilla.gnome.org/show_bug.cgi?id=611157 2015-06-18 16:20:26 +0100 Florin Apostol * ext/dash/gstmpdparser.c: dashdemux: added warnings in gst_mpd_client_setup_streaming function Added some warning messages in gst_mpd_client_setup_streaming to help debug situations when the function will return FALSE. Renamed a wrongly spelled variable. https://bugzilla.gnome.org/show_bug.cgi?id=751149 2015-06-18 12:21:43 +0100 Florin Apostol * ext/dash/gstmpdparser.h: dashdemux: corrected comments in gstmpdparser.h Corrected some comments in gstmpdparser.h file. Moved gst_mpd_client_get_adaptation_sets function to be grouped with other functions from AdaptationSet group https://bugzilla.gnome.org/show_bug.cgi?id=751149 2015-06-18 13:08:25 +0100 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: fixed getting representation based on max bandwidth The gst_mpdparser_get_rep_idx_with_max_bandwidth function assumes representations are ordered by bandwidth and incorrectly returns the first one when wanting the one with minimum bandwidth. Corrected gst_mpdparser_get_rep_idx_with_max_bandwidth function to get the correct representation in case max_bandwidth parameter is 0. https://bugzilla.gnome.org/show_bug.cgi?id=751153 2015-06-18 14:38:04 +0200 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: androidmedia: Allow the application to provide the Java VM In JNI_OnLoad() we will already get the Java VM passed and could just directly use that. gstreamer_android-1.0.c will now provide this to us. Reason for this is that apparently not all Android system are providing the JNI functions to get the currently running Java VMs, so we would fail to get. With this we will always be able to get the Java VM on such systems. 2015-06-18 14:31:39 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Prefer software codecs over hardware codecs for audio Hardware codecs don't make sense for audio and are generally less reliable on Android than the software codecs. 2015-06-18 14:29:33 +0200 Sebastian Dröge * sys/androidmedia/gstjniutils.c: androidmedia: Failing to detach a thread is not that much of a problem Someone else might have detached it before us, so make this just normal debug output instead of a GST_ERROR() 2015-06-18 10:43:53 +0200 Sebastian Dröge * sys/androidmedia/gstjniutils.c: androidmedia: Don't fail if JNI_CreateJavaVM can't be found We only need that if no Java VM is running yet, and all usual cases, i.e. when calling GStreamer from an actual Android app, there will already be a Java VM we can just use. It seems like some phones come without that symbol, let's hope they come with the other symbol but for now don't make a missing JNI_CreateJavaVM fatal. 2015-06-18 12:59:18 +0700 Alessandro Decina * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: get rendered and dropped stats from QOS messages Use QOS messages to update rendered and dropped frame stats. This is the only accurate method. The old method didn't take max-lateness and latency into account. 2015-06-17 10:44:16 +0900 Vineeth TM * gst-libs/gst/codecparsers/nalutils.c: nalutils: trivial patch to check if trivial patch to add proper ( while checking for if(G_UNLIKELY()) https://bugzilla.gnome.org/show_bug.cgi?id=751087 2015-06-16 17:48:51 -0400 Nicolas Dufresne * common: Automatic update of common submodule From 6015d26 to f74b2df 2015-06-15 21:32:43 +0200 Sebastian Dröge * ext/gtk/gtkgstglwidget.c: gtkglwidget: Const'ify another array 2015-06-15 21:29:46 +0200 Sebastian Dröge * ext/gtk/gtkgstglwidget.c: gtkglwidget: Calculate the viewport size ourselves Getting the current viewport and modifying it relatively will produce an interesting feedback loop during widget resizing. Over a few frames we will gradually move the viewport a bit until it converged again, adding unnecessary additional borders at the top and left. 2015-06-15 21:24:01 +0200 Sebastian Dröge * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: gtk: Use the display width/height for the widget's preferred width/height 2015-06-15 20:45:11 +0200 Sebastian Dröge * ext/gtk/gstgtksink.c: * ext/gtk/gtkgstwidget.c: gtksink: Add support for xRGB/BGRx 2015-06-15 20:39:59 +0200 Sebastian Dröge * ext/gtk/gstgtksink.c: * ext/gtk/gtkgstwidget.c: gtk: Cairo color formats are in native endianness, GStreamer's in memory order CAIRO_FORMAT_ARGB32 is ARGB on big endian and BGRA on little endian. 2015-06-15 20:35:38 +0200 Sebastian Dröge * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: gtk: Implement ignore-alpha property and enable it by default 2015-06-15 20:13:57 +0200 Sebastian Dröge * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: gtk: Sync properties from the sink to the widget upon widget creation 2015-06-15 10:08:57 -0400 Nicolas Dufresne * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: Remove redundant min_dts After few iteration, this variable became the same as dts. It's not the min as the name says, but the dts of the current buffer. Simply remove and place with dts. Also move the debug trace to actually print the signed version of the running-time dts. 2015-06-15 22:43:54 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: add missing handle-events/ignore-alpha property to the bin 2015-06-15 18:28:37 +1000 Matthew Waters * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: gtk: implement pixel and display aspect ratio handling 2015-06-15 14:29:04 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Print some debug output if we change the timestamp offset 2015-06-15 14:25:43 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Add some more debug output 2015-06-15 14:22:00 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Move variables into the scope where they are needed 2015-06-15 14:19:05 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't update the ts-offset before updating the actual configured caps 2015-06-15 14:18:39 +0200 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remember if the last LATENCY query returned live or not and use the in the QoS messages 2015-06-15 12:20:24 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Don't query supported color formats for non-video codecs 2015-06-15 10:34:56 +0900 Vineeth TM * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix build error after e000a6f0a4984fbe81190df6cd439c70dafde3d6, there is build error in bad plugins this happens because, GST_CLOCK_STIME_IS_VALID () is being checked for pad_data but it expects a GstClockTime parameter. Changing the check to 'dts' https://bugzilla.gnome.org/show_bug.cgi?id=750961 2015-06-15 16:47:15 +1000 Matthew Waters * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/videooverlay.pro: gl/examples: update qt examples for api changes 2015-06-15 14:35:35 +1000 Matthew Waters * ext/gtk/gtkgstglwidget.c: gtk: silence unused variable warnings for unsupported winsys' 2015-06-15 14:33:08 +1000 Matthew Waters * ext/gtk/gtkgstglwidget.c: gtk: implement basic wayland GL support 2015-06-14 23:20:38 +0200 Mathieu Duponchelle * gst/compositor/compositor.c: compositor: update zorder documentation. It is not bound between 0 and 10000 anymore. 2015-06-14 23:13:59 +0200 Mathieu Duponchelle * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: No need to artificially bound the zorder. It is an unsigned integer so the upper bound is G_MAXUINT. 2014-10-29 15:03:04 +0000 Luis de Bethencourt * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: mpeg4: actually return full number of bits of resync marker Switch the increment of markersize from when it is used to when it is returned from compute_resync_marker_size. This also makes the CHECK_REMAINING in gst_mpeg4_parse_video_packet_header check for the actually required number of bits now and not one too few. https://bugzilla.gnome.org/show_bug.cgi?id=739345 2015-06-13 17:36:20 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstmpeg4parser.c: Revert "codecparsers: remove ignored increment of return" This reverts commit 916b954315abc2f94348ec0be3e116c19b080b54. Clearly something else was intended, and it also makes more sense to add the extra bit. The resync marker is N zero bits plus a 1 bit, and the pattern/mask needs to be run on N+1 bits too. (Even after the rever the code doesn't do that of course, so it still needs to be fixed differently.) https://bugzilla.gnome.org/show_bug.cgi?id=739345 2015-06-12 18:08:44 +0530 Arun Raghavan * sys/opensles/openslescommon.c: * sys/opensles/openslescommon.h: opensles: Fix build with Android API level < 14 Headers were broken on older Android versions, apparently. https://bugzilla.gnome.org/show_bug.cgi?id=744459 2015-01-28 13:06:39 +0530 Arun Raghavan * sys/opensles/openslescommon.c: * sys/opensles/openslescommon.h: * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: openslessink: Allow setting the stream type via a property 2015-01-27 15:25:59 +0530 Arun Raghavan * sys/opensles/Makefile.am: * sys/opensles/openslescommon.c: * sys/opensles/openslescommon.h: * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessrc.c: * sys/opensles/openslessrc.h: openslessrc: Implement recording presets This allows us to signal what kind of audio we are expecting to record, which should tell the system to apply filters (such as echo cancellation, noise suppression, etc.) if required. 2015-06-13 11:40:14 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Remove late frame-dropping workaround for basesink bug This was fixed by https://bugzilla.gnome.org/show_bug.cgi?id=749258 in basesink, and is not necessary to duplicate here anymore. 2015-06-13 18:43:04 +1000 Matthew Waters * ext/gl/gstglmixerbin.c: glmixerbin: implement proper dynamic pad removal https://bugzilla.gnome.org/show_bug.cgi?id=750881 2015-06-12 20:14:37 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Don't do pool caching We now know that pool caching can cause renegotiation issues when an element in the pipeline change from passthrough to not passthrough. As it's not needed, don't cache existing pools. https://bugzilla.gnome.org/show_bug.cgi?id=748344 2015-06-12 18:08:40 -0400 Nicolas Dufresne * configure.ac: configure.ac: Remove reference to cvs 2015-06-10 17:05:52 -0400 Nicolas Dufresne * gst/mpegtsdemux/tsdemux.c: tsdemux: Segment start should match first PTS The segment should start at first PTS, and the vairable name lower_pts state so correctly. Though we where using the first DTS instead. This could lead to small desynchronization of video stream. https://bugzilla.gnome.org/show_bug.cgi?id=740575 2015-06-10 12:32:34 -0400 Nicolas Dufresne * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: tsmux: Add negative DTS support Use the saved DTS, make it signed and pass that to the stream muxer. This preserves the running time sign. All usage of -1 as invalid TS are now replaced with G_MININT64. Negative values will be seen as wrap-around point, but the delta between PTS and DTS will remain correct. Demuxers don't care about absolute values, they only cares about deltas. https://bugzilla.gnome.org/show_bug.cgi?id=740575 2015-06-10 12:31:13 -0400 Nicolas Dufresne * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: tsmux: Remove uneeded cast and cast macro https://bugzilla.gnome.org/show_bug.cgi?id=740575 2015-06-10 11:39:01 -0400 Nicolas Dufresne * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Properly detect backward DTS There was code to detect backward dts, but the marker min_dts was never set. Setting it enable this feature that prevents potential integer overflow when generating TS. https://bugzilla.gnome.org/show_bug.cgi?id=740575 2015-06-12 16:44:55 +0100 Florin Apostol * ext/dash/gstmpdparser.c: * tests/check/elements/dash_mpd.c: dashdemux: fixed segfault for missing default namespace Added a check for a_node->ns before accessing a_node->ns->href in gst_mpdparser_get_xml_node_namespace. This could happen if the xml is missing the default namespace. https://bugzilla.gnome.org/show_bug.cgi?id=750866 2015-06-12 22:33:58 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Don't require the same framerate in the input as the mode's framerate We only really care about the timestamps for the sink. 2015-06-13 01:40:00 +0530 Nirbheek Chauhan * tests/examples/playout.c: examples: playout: Add better help text This should help people figure out how to use the example a bit better 2015-06-13 01:35:59 +0530 Nirbheek Chauhan * tests/examples/playout.c: examples: playout: Decrement the currently-playing counter correctly Only do that when we're removing an item that was playing, otherwise we'll mess things up while trying to edit the play queue (playlist). 2015-01-29 00:56:26 +0000 Nirbheek Chauhan * .gitignore: * tests/examples/Makefile.am: * tests/examples/playout.c: playout: New example for seamless audio/video playback An example app that takes video URIs as command line arguments and switches between them seamlessly one after the other using compositor and audiomixer. Both audio-video and video-only media files are valid inputs, but mixing files of both types in a single invocation is cumbersome to support, and hence does not work. The example attempts to keep the audio stream moving along perfectly, and duplicates video frames where necessary to cover gaps in the video timestamps using the 'ignore-eos' videoaggregator pad property. Ensuring seamless (and mostly-glitch-free) switching is harder than it sounds, and hence the example contains plenty of pad probes and running time calculations to make things work. The GPtrArray play_queue contains items that are being played back, have been prepared for playback, and will be played back in the future. The queue itself is mutable besides the first two items (playing and prepared). The item that has been prepared should not be edited or removed since it has been prepared in advance to be activated immediately on the current item's EOS. The example also has support for switching to the next item in the queue prematurely; see the --switch-after/-s flag to the application. Note: the output video is hard-coded at 1280x720, and input video is scaled as needed to fit this size. Set OUTPUT_VIDEO_WIDTH/HEIGHT to change this. https://bugzilla.gnome.org/show_bug.cgi?id=748947 2015-06-06 20:40:13 +0530 Nirbheek Chauhan * tests/check/elements/compositor.c: tests: Add test for the 'ignore-eos' compositor sink pad property When the 'ignore-eos' property is set on a pad, compositor will keep resending the last buffer on the pad till the pad is unlinked. We count the buffers received on appsink, and if it's more than the buffers sent by videotestsrc, the test passes. 2015-02-10 00:49:35 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: add "ignore-eos" property for input pads When set, it causes videoaggregator to repeatedly aggregate the last buffer on an EOS pad instead of skipping it and outputting silence. This is useful, for instance, while playing back files seamless one after the other, to avoid videoaggregator ever outputting silence (the checkerboard pattern). It is to be noted that if all the pads on videoaggregator have this property set on them, the mixer will never forward EOS downstream for obvious reasons. Hence, at least one pad with 'ignore-eos' set to FALSE must send EOS to the mixer before it will be forwarded downstream. https://bugzilla.gnome.org/show_bug.cgi?id=748946 2014-12-19 14:43:20 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: return early if packetizing short section Short sections have 3 bytes of common header, while other sections have 8 bytes of common header. If packetizing common header of short section, we should stop after the first 3 bytes. https://bugzilla.gnome.org/show_bug.cgi?id=735653 2015-06-12 17:14:02 +0300 Vivia Nikolaidou * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: debugutilsbad: Minor cleanup Ran gst-indent on debugutilsbad.c, moved headers to noinst in Makefile.am 2015-06-12 15:39:56 +0200 Thibault Saunier * ext/gtk/gtkgstglwidget.c: gtk: Do not try to activate a NULL GLContext At that point in the code nothing guarantees it exists 2015-06-12 21:31:48 +1000 Matthew Waters * tests/check/Makefile.am: gl/tests: remove reference to undefined buffer test 2015-06-11 18:26:50 +1000 Matthew Waters * ext/gl/gstgldownloadelement.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglmemory.c: glmemory: separate pbo transfer from texture transfers When supported, the potentially longer pbo upload/download can be initiated before the texture upload/download, potentially increasing throughput. 2015-06-10 16:36:15 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasebuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * tests/check/Makefile.am: * tests/check/libs/gstglmemory.c: glmemory: implement on top of glbasebuffer Provides convenient access to PBO usage. Currently texture updates are coupled tightly to data transfers. 2015-06-10 16:24:59 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasebuffer.c: * gst-libs/gst/gl/gstglbasebuffer.h: gl: new glbasebuffer GstMemory object Provides generic handling of GL buffer objects accessible using the GL bind points (GL_ARRAY_BUFFER, GL_PIXEL_*_BUFFER). Implementation based off the current GstGLMemory. 2015-06-10 16:23:36 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/buffers.h: gl/prototypes: add some buffer function prototypes 2015-06-12 15:17:30 +1000 Matthew Waters * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstwidget.c: gtk: implement video aspect-ratio handling For both the software and the GL sink's. Doesn't deal with the pixel-aspect-ratio field at all yet. 2015-06-12 13:14:57 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: only listen on the X Display when needed 5697b6b89b4b2a15c45bd47be940a17f4412ea11 causes us to possibly listen on a toolkit provided Display connection. We thus could eat their precious winsys events. Only listen if we need to (!foreign_display or videooverlay). 2015-06-12 12:40:50 +1000 Matthew Waters * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: gtk: fix a couple of typos 2015-06-12 12:29:37 +1000 Matthew Waters * ext/gtk/gstgtkglsink.c: gtkglsink: reset the context/display in READY_TO_NULL Fixes context propagation in pipelines with upstream GL elements. 2015-06-11 17:25:49 +0100 Alex Ashley * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: fix error calculating large presentationTimeOffset values If the presentationTimeOffset attribute of a DASH manifest contains a value that is larger than 2^32, gstmpdparser incorrectly calculates the stream's presentation time offset. This is due to two bugs: 1: Using gst_mpdparser_get_xml_prop_unsigned_integer rather than gst_mpdparser_get_xml_prop_unsigned_integer_64 to parse the attribute 2: gst_mpd_client_setup_representation multiplying the value by GST_SECOND and then dividing by timescale https://bugzilla.gnome.org/show_bug.cgi?id=750804 2015-06-11 12:41:10 -0400 Nicolas Dufresne * tests/examples/gtk/gtkglsink.c: gstgtk: No need to realize the widget The widget already does that. 2015-06-11 12:38:53 -0400 Nicolas Dufresne * tests/examples/gtk/gtkglsink.c: * tests/examples/gtk/gtksink.c: gstgtk: Don't leak the widget g_object_get() returns a ref, gtk_container_add() only ref_sink(). That mean we still need to unref afterward. This leak was hiding a reference bug previously present. 2015-06-11 12:10:23 -0400 Nicolas Dufresne * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtksink.c: gstgtk: Allow doing gst-inspect-1.0 on these elements This patch allow going gst-inspect-1.0 on these elements removing ugly crash that was previously occurring. The method consist of making the widget creation as lazy as possible. This way we don't endup doing gtk_init() before the application. We also ref_sink() the widget, so we don't crash if the parent widget is discarded, and cleanly error out with GL if the widget has no parent window, because calling gtk_widget_realized() can only be done if the widget has been parented to a window). 2015-05-30 02:15:51 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: gl: Add support for multiple views in upload, colour convert and download Support multiple attached views on input/output buffers by processing each one, not just the first. 2015-05-30 01:38:16 +1000 Jan Schmidt * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Add support for passing stereoscopic/multiview info Pass any multiview info from the container or SEI info downstream 2015-06-11 01:57:08 +1000 Jan Schmidt * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Don't switch to passthrough on set_caps() Wait until at least one keyframe has been parsed before deciding to switch to passthrough mode, in case the stream contains SEI messages that supplement the output caps - for example by providing stereoscopic information 2015-06-12 00:32:00 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: don't create our own X11 display It's not needed anymore with most window operations occuring in the GL thread. 2015-06-12 00:30:58 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window/x11: handle_events() may be called before the window has been created Fixes an XIO fatal error 2015-06-12 00:29:23 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglsinkbin.c: gl: move basesink properties from glimagesinkbin to glsinkbin 2015-03-25 19:27:42 +0200 Yanko Kaneti * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: Remove arbitrary constraint on prog-map program ids https://bugzilla.gnome.org/show_bug.cgi?id=746765 2015-06-11 15:22:04 +0200 Sebastian Dröge * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsrcbin.c: gl: Use gst_object_ref_sink() for gl{filter,mixer,src}bin too 2015-06-11 15:17:02 +0200 Sebastian Dröge * ext/gl/gstglsinkbin.c: glsinkbin: Use gst_object_ref_sink() for consistency with the video-sink property on playbin 2015-06-11 15:02:44 +0200 Thibault Saunier * ext/gtk/gtkgstglwidget.c: gtk: Do not try to initialize display if we have not have a GLContext yet 2015-06-11 14:58:27 +0200 Sebastian Dröge * tests/examples/gtk/Makefile.am: gtk: Add missing CFLAGS to example 2014-12-18 17:00:30 +1100 Matthew Waters * configure.ac: * ext/Makefile.am: * ext/gtk/Makefile.am: * ext/gtk/gstgtkglsink.c: * ext/gtk/gstgtkglsink.h: * ext/gtk/gstgtksink.c: * ext/gtk/gstgtksink.h: * ext/gtk/gstplugin.c: * ext/gtk/gtkgstglwidget.c: * ext/gtk/gtkgstglwidget.h: * ext/gtk/gtkgstwidget.c: * ext/gtk/gtkgstwidget.h: * tests/check/Makefile.am: * tests/examples/Makefile.am: * tests/examples/gtk/Makefile.am: * tests/examples/gtk/gtkglsink.c: * tests/examples/gtk/gtksink.c: Implement gtk sinks two sinks are provided. gtksink which is a cairo/software based renderer and gtkglsink which utilises the GL support in gtk and gstreamer. 2015-06-10 10:36:21 +0200 Edward Hervey h263parse: Fix PSC matching We were off by one byte in the matching It should be (using 24 bit matching): * startcode : 0000 0000 0000 0000 1000 00xx * mask (bin) : 1111 1111 1111 1111 1111 1100 * mask (hex) : f f f f f c * match : 0 0 0 0 8 0 https://bugzilla.gnome.org/show_bug.cgi?id=750685 2015-05-11 16:47:25 +0200 Ilya Konstantinov * sys/applemedia/vtenc.c: vtenc: always enqueue frames, even on error Even when we fail to encode frame, we should still enqueue it so it could be passed into handle_frame (with output_buffer == NULL). Otherwise, we risk GstVideoEncoder's queue of frames growing unbounded. Note: We're slightly changing the renegotiation code to accommodate for frames without output buffers, but this commit takes no ownership over the way negotiation is being done. https://bugzilla.gnome.org/show_bug.cgi?id=750669 2015-06-10 15:03:31 +0200 Fabio Cetrini * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Avoid frame rendering while the window is completely hidden https://bugzilla.gnome.org/show_bug.cgi?id=749856 2015-06-10 11:42:06 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: gl: OES_vertex_array_object is improperly implemented on PowerVR SGX 544MP https://bugzilla.gnome.org/show_bug.cgi?id=750185 2015-05-11 16:40:07 +0200 Ilya Konstantinov * sys/applemedia/vtenc.c: vtenc: free input buffer ASAP VTCompressionSessionEncodeFrame retains the CVPixelBuffer during encoding, and will release it as soon as it can (e.g. before it even calls our callback). This means we can safely release input buffer at this point, possibly allowing the system to reuse it sooner. https://bugzilla.gnome.org/show_bug.cgi?id=750671 2015-05-11 16:39:19 +0200 Ilya Konstantinov * sys/applemedia/vtenc.c: vtenc: Add missing gst_vtenc_frame_free() in error path https://bugzilla.gnome.org/show_bug.cgi?id=750668 2015-06-09 16:33:39 +0200 Santiago Carot-Nemesio * gst/liveadder/liveadder.c: liveadder: Fix memory leaks iterating over pads Rebased for latest master by Nicolas Huet . https://bugzilla.gnome.org/show_bug.cgi?id=745748 2015-06-10 00:16:27 +0300 Ilya Konstantinov * sys/applemedia/vtenc.c: vtenc: add alignment=au to sink caps VT compression callback gets a CMSampleBuffer per frame, so vtenc_h264 should set 'alignment=au' in sink caps to indicate this. https://bugzilla.gnome.org/show_bug.cgi?id=750635 2015-06-09 18:30:55 +0100 Chris Clayton * sys/uvch264/gstuvch264_src.c: uvch264src: fix compiler warnings https://bugzilla.gnome.org/show_bug.cgi?id=750601 2015-05-12 00:18:02 +0200 Ilya Konstantinov * sys/applemedia/avfassetsrc.m: avfassetsrc: fix huge memory leak CMSampleBuffers were retained -> huge memory leak. https://bugzilla.gnome.org/show_bug.cgi?id=750638 2015-05-11 16:44:33 +0200 Ilya Konstantinov * sys/applemedia/vtenc.c: vtenc: no need for queue_length with try_pop 2015-05-05 15:07:53 +0200 Ilya Konstantinov * sys/applemedia/vtdec.c: vtdec: don't copy meta from input to output Copying arbitrary metas is going to cause problems and this should really be handled by the base class. It overrides most other things already anyway, including timestamp and duration. Those are just set here now so we can insert the frame sorted into the queue. https://bugzilla.gnome.org/show_bug.cgi?id=748922 2015-06-09 15:32:36 +0200 Stefan Sauer * Makefile.am: cruft: add the obsolete tmpl dir to cruft-dirs 2015-06-09 14:37:36 +0100 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: fix misleading documentation copied from adder 2015-06-09 12:11:54 +0200 Sebastian Dröge * ext/dash/Makefile.am: dash: Add $(GST_PLUGINS_BASE_LIBS) to LIBADD https://bugzilla.gnome.org/show_bug.cgi?id=750619 2015-06-09 11:30:29 +0200 Edward Hervey * common: Automatic update of common submodule From d9a3353 to 6015d26 2015-06-09 09:07:45 +1000 Jan Schmidt * gst/dvdspu/gstspu-vobsub-render.c: * gst/dvdspu/gstspu-vobsub.h: dvdspu: Map the pixel data once per render, not *ahem* twice per byte. The naive port to 1.0 from years ago was silly, make it better. 2015-06-08 23:08:04 +0200 Stefan Sauer * common: Automatic update of common submodule From d37af32 to d9a3353 2015-06-05 17:20:20 +0100 Florin Apostol * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dash_mpd.c: tests: dashdemux: add unit tests for checking the parsing of MPD element Create a dash test target and add unit tests that check the parsing of attributes of the MPD element and the following child elements: - baseURL - program information - location - metrics These tests check the compliance of parts of the MPD parser in the dashdemux element against the DASH specification [1]. [1] http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014_Electronic_inserts.zip http://standards.iso.org/ittf/PubliclyAvailableStandards/c065274_ISO_IEC_23009-1_2014.zip https://bugzilla.gnome.org/show_bug.cgi?id=750390 2015-05-06 14:29:01 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: simplify aggregate returning Rework special handling with goto/labels to only have one case and otherwise just return normally. 2015-05-06 14:19:36 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: refactor caps reconfigure to its own function Makes the aggregation code shorter and easier to read 2015-05-06 13:59:51 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fixing types in aggregate function Correctly use boolean and GstFlowReturn types in the function. 2015-05-06 13:08:11 -0300 Thiago Santos * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use macro to access aggregator src pad Makes code a bit more readable 2015-05-06 13:07:52 -0300 Thiago Santos * gst-libs/gst/base/gstaggregator.h: aggregator: add a convenience macro to get the source pad Easier than casting or acessing the parent everywhere 2015-06-08 14:16:22 +0100 Luis de Bethencourt * gst/mpegtsdemux/tsdemux.c: tsdemux: correct fix for dead code Rename template to caps to keep the original intention of the code after commit b4c9aa1c CID #1304674 2015-06-08 14:14:41 +0100 Luis de Bethencourt * gst/mpegtsdemux/tsdemux.c: Revert "tsdemux: remove dead code" This reverts commit 0635acfec041b1c664bc0770839b1a576e3598b1. 2015-06-08 13:37:32 +0100 Luis de Bethencourt * gst/mpegtsdemux/tsdemux.c: tsdemux: remove dead code After commit b4c9aa1c308f88bf4e1f69ab0156ed9f99815e8e template will always be NULL. The if conditional will always be FALSE, so removing it. CID #1304674 2015-06-07 23:06:38 +0200 Stefan Sauer * common: Automatic update of common submodule From 21ba2e5 to d37af32 2015-06-07 17:32:07 +0200 Stefan Sauer * common: Automatic update of common submodule From c408583 to 21ba2e5 2015-06-07 17:03:15 +0200 Stefan Sauer * docs/libs/Makefile.am: * docs/plugins/Makefile.am: docs: remove variables that we define in the snippet from common This is syncing our Makefile.am with upstream gtkdoc. 2015-06-07 17:16:25 +0200 Stefan Sauer * autogen.sh: * common: Automatic update of common submodule From d676993 to c408583 2015-06-07 16:45:04 +0200 Sebastian Dröge * configure.ac: Back to development 2015-06-07 16:28:43 +0200 Stefan Sauer * docs/libs/Makefile.am: docs: only add the libs that we actually document right now Keep the libs in alphabetical order unless a specific link order is required. Also remove the -L directives as we specify the direct path to the .la files. 2015-06-07 16:28:22 +0200 Stefan Sauer * docs/libs/gst-plugins-bad-libs.types: docs: remove duplicated entry from types file 2015-06-07 15:59:59 +0200 Stefan Sauer * tests/check/elements/zbar.c: zbar: split test Lets not cram everything into a single test - this would render the test name useless for quick diagnosis. Having separate tests for the optional feature is also verifying the behaviour when the feature is off. === release 1.5.1 === 2015-06-07 10:55:35 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiomixer.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * gst-plugins-bad.doap: * gst/audiomixer/gstaudiomixerorc-dist.c: * gst/bayer/gstbayerorc-dist.c: * gst/compositor/compositororc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/gaudieffects/gstgaudieffectsorc-dist.c: * win32/common/config.h: Release 1.5.1 2015-06-07 09:36:21 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2015-05-30 21:35:36 +0900 Jimmy Ohn * ext/hls/gsthlsdemux.c: hlsdemux: Fix wrong gst-launch command in the description Fix wrong gst-lauch command in the description. This patch may help people to get right testing results using the script. https://bugzilla.gnome.org/show_bug.cgi?id=750143 2015-06-05 14:49:18 +0100 Luis de Bethencourt * ext/directfb/dfbvideosink.c: dfbvideosink: remove ignored assignments Remove assignments to DFBResult res that are never read. 2015-06-05 14:34:55 +0100 Luis de Bethencourt * gst/mpegtsdemux/tsdemux.c: tsdemux: remove ignored assignment Function goes to done before the value set in start_offset is ever used. 2015-06-05 09:35:39 -0300 Thiago Santos * ext/gl/caopengllayersink.m: * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * sys/applemedia/avsamplevideosink.m: * tests/check/elements/glimagesink.c: Fix a common typo: retreive -> retrieve Seems to have been copy pasted around a few places 2015-06-05 09:22:58 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: drop TODO that doesn't need a solution Connection speed is only checked at that point in hlsdemux so there is no real need to refactor it. https://bugzilla.gnome.org/show_bug.cgi?id=749328 2015-06-05 09:15:34 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: Revert "hlsdemux: Simplify logic in process_manifest" This reverts commit 4ca3a22b6b33ad8be4383063e76f79c4d346535d. The connection-speed=0 is used as a special value in the property of hlsdemux to mean 'automatic' selection, m3u8.c doesn't need to know about that as it should be as simple as possible. So this patch hides this automatic selection documented in hlsdemux into m3u8 logic and I think the gets harder to understand the code. It also makes the hlsdemux unit tests work again https://bugzilla.gnome.org/show_bug.cgi?id=749328 2015-06-05 14:30:03 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Fix inverted logic introduced in last commit 2015-06-05 08:58:03 +0900 Vineeth TM * gst/videosignal/gstsimplevideomarkdetect.c: simplevideomarkdetect: fix detect of videomark partially or fully outside video In case of the videomark being partially or fully outside, an error was bein thrown saying, mark width is more than video width. And when the width, offset properties are set to maximum it resulted in crash. Instead of throwing error, added logic to detect the mark in case of partial visibility or dont show the mark when it is outside. https://bugzilla.gnome.org/show_bug.cgi?id=743908 2015-06-05 14:10:43 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Calculate the number of segments we have when a segment template instead of a list is used Otherwise we would just continue downloading new files forever until we get 404 for the first one, and then error out instead of going EOS. 2015-06-05 08:53:30 +0900 Vineeth TM * gst/videosignal/gstsimplevideomark.c: simplevideomark: Add Error logs When the pattern offset is outside the video, the print error message https://bugzilla.gnome.org/show_bug.cgi?id=743908 2015-06-05 13:28:39 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: Revert "mpdparser: Don't consider streams with a known media presentation duration as live" This reverts commit 37011e519830e0786fa6e307ed26003a2a8774f1. This change was actually completely unnecessary, the streams in question are marked as static and are not considered live anyway. 2015-06-05 13:21:55 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Don't consider streams with a known media presentation duration as live 2015-06-05 11:26:11 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Error out if downloading a segment failed too often in live mode It's true that we shouldn't consider errors fatal immediately, but if we always ignore them we will loop infinitely on live streams with segments that can't be downloaded at all. 2015-06-03 12:17:19 +0200 Jose Antonio Santos Cadenas * ext/srtp/gstsrtp.c: srtp: Allow getting ssrc of more package types than RR and SR This allows decrypting reduce size packages. See RFC 5506 https://bugzilla.gnome.org/show_bug.cgi?id=750326 2015-06-04 13:36:32 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: tsdemux: refactor pad creation Avoid repeating the same pad creation code everywhere 2015-06-04 15:57:57 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Don't crash in debug output if stream->segments is NULL 2015-06-04 13:31:56 +0100 Tim-Philipp Müller * sys/winks/gstksvideosrc.c: ksvideosrc: fix logic and timestamp non-muxed streams again https://bugzilla.gnome.org/show_bug.cgi?id=750381 2015-06-04 12:53:19 +0100 Tim-Philipp Müller * ext/libde265/gstlibde265.c: * ext/libde265/libde265-dec.c: libde265dec: fix up plugin name and decoder description 2015-06-04 13:36:05 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparse: Clamp seek times to the availabilityStartTime Otherwise we will seek to negative times, which are interpreted as unsigned integers later. 2015-06-04 13:13:39 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Improve debug output a bit when advancing segments 2015-06-04 12:36:41 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Release the manifest mutex before waiting for a download Otherwise we will hurt parallel downloads in the best case, and often cause deadlocks. 2015-06-04 11:54:24 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: If channel/rate negotiation fails, fall back to stereo and 48kHz 2015-06-04 11:52:40 +0200 Sebastian Dröge * ext/opus/gstopusparse.c: opusparse: Set up default header with 48kHz sample rate instead of 0 2015-06-04 11:45:05 +0200 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: gst_structure_fixate_field_nearest_int() only works if the structure has this field Just set the rate/channels directly if the caps don't have this field. 2015-06-04 11:05:07 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Use 64 bit integer format strings when passing a 64 bit integer Otherwise we'll only get half of its bits printed on 32 bit architectures. For this, promote the %d-style format strings to something that accepts 64 bit integers with G_GINT64_MODIFIER. 2015-06-04 10:47:07 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparse: Validate format strings before using them Using format strings from an untrusted source without validation is calling for problems, and at least allows to remotely crash your application. If not worse. 2015-06-04 09:40:19 +0200 Philippe Normand * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: Fix build 2015-06-03 22:21:30 +0100 Julien Isorce * tests/examples/gl/cocoa/Makefile.am: gl/example: fix build error when compiling cocoa-videooverlay libtool: error: ignoring unknown tag OBJC and clang: error: argument unused during compilation: '-pthread' 2015-06-04 15:01:16 +1000 Matthew Waters * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/window/dispmanx: fix compiler warning 2015-06-04 12:16:35 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: gl/window: use the default main loop implementation for all backends fixes glimagsink being unable to display. https://bugzilla.gnome.org/show_bug.cgi?id=750337 2015-06-03 21:22:09 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: glwindow_cocoa: use parent default implementation Fixes https://bugzilla.gnome.org/show_bug.cgi?id=750337 2015-06-03 20:03:37 +0200 Sebastian Dröge * ext/dash/gstmpdparser.c: mpdparser: Add the startNumber as offset to the segment index when using a template 2015-06-03 16:59:44 +0200 Santiago Carot-Nemesio * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsdec.h: dtlsdec: Fix critical warning "got data flow before stream-start event" Forward sticky events on requested src pad. https://bugzilla.gnome.org/show_bug.cgi?id=750348 2015-06-03 15:25:10 +0100 Luis de Bethencourt * gst/videoparsers/gstvc1parse.c: vc1parse: remove useless value assignments In all these cases ret is set but overwritten before the return of the function 2015-06-03 14:44:31 +0100 Luis de Bethencourt * tests/examples/camerabin2/gst-camerabin2-test.c: examples: gst-camerabin2-test: protect from division by zero Highly unlikely to have 0 captures, but protect from crashes in the future by doing none of the math if there is no data. 2015-06-02 20:57:34 +0100 Tim-Philipp Müller * configure.ac: configure: lower curl requirement to 7.35.0 Build and unit tests were tested against 7.35 too now, which is the version in Ubuntu 14.04. 2015-06-02 16:40:25 -0300 Thiago Santos * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: do not access variable after unref Data might not exist anymore 2015-06-02 15:45:13 -0400 Olivier Crête * tests/check/elements/audiointerleave.c: tests: audiointerleave: test not setting positions Disable "channel-positions-from-input", but without actually giving a position table, so every position should be NONE 2015-06-02 15:44:57 -0400 Olivier Crête * tests/check/elements/audiointerleave.c: tests: Fix indentation in audiointerleave test 2015-06-02 11:31:00 -0300 Reynaldo H. Verdejo Pinochet * ext/zbar/gstzbar.c: zbar: don't ignore zbar_scan_image() errors 2015-06-03 00:31:42 +1000 Jan Schmidt * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: Set new sync point when copying Set a new sync point when copying instead of transferring the (non-refcounted) GL sync object from the source meta. https://bugzilla.gnome.org/show_bug.cgi?id=750279 2015-06-02 23:59:50 +1000 Jan Schmidt * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: Add some debug output 2015-06-02 16:02:37 +0200 Edward Hervey * tests/check/elements/asfmux.c: * tests/check/elements/faac.c: * tests/check/elements/faad.c: * tests/check/elements/h263parse.c: * tests/check/elements/hlsdemux_m3u8.c: * tests/check/elements/jpegparse.c: * tests/check/elements/kate.c: * tests/check/elements/mpeg2enc.c: * tests/check/elements/mpeg4videoparse.c: * tests/check/elements/mpegvideoparse.c: * tests/check/elements/mplex.c: * tests/check/elements/opus.c: * tests/check/elements/rtponvif.c: * tests/check/elements/timidity.c: * tests/check/elements/voaacenc.c: * tests/check/elements/voamrwbenc.c: * tests/check/libs/h264parser.c: * tests/check/libs/mpegts.c: * tests/check/libs/mpegvideoparser.c: * tests/check/libs/vc1parser.c: * tests/check/libs/vp8parser.c: * tests/check/pipelines/simple-launch-lines.c: * tests/check/pipelines/streamheader.c: check: Use GST_CHECK_MAIN () macro everywhere Makes source code smaller, and ensures we go through common initialization path (like the one that sets up XML unit test output ...) 2015-06-02 10:21:42 +0900 Vineeth TM * gst/videosignal/gstsimplevideomark.c: simplevideomark: fix display of videomark partially or fully outside video In case of the videomark being partially or fully outside, an error was being thrown saying the mark width is more than video width. And when the width, offset properties are set to maximum it resulted in crash. Instead of throwing an error, add logic to detect the mark in case of partial visibility or don't show the mark when it is outside. https://bugzilla.gnome.org/show_bug.cgi?id=743908 2015-03-24 15:17:16 +0100 Aurélien Zanelli * gst/mpegtsdemux/tsdemux.c: tsdemux: enable Chinese AVS video stream Chinese broadcaster encapsulate AVS video codec into MPEG2-TS. They use the stream_id 0x42 to identify AVS video streams. It should be noted that this id is currently within the ISO reserved range, hence it's utilisation is unofficial. https://bugzilla.gnome.org/show_bug.cgi?id=727731 2015-06-02 17:24:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: provide compatibility definition for GLES2 for GL_RGBA8 2015-06-02 16:32:03 +1000 Matthew Waters * ext/gl/gstgleffects.c: * ext/gl/gstglfiltershader.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: consolidate internal_rgba_format into glmemory Expose some useful value format conversion functions available in GstGLMemory. 2015-06-01 19:43:20 -0400 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: audiointerleave: Always have "channels" be the actual pad count Don't force it anywhere https://bugzilla.gnome.org/show_bug.cgi?id=750252 2015-06-01 19:42:49 -0400 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: audiointerleave: Use the channel count from the set caps This is the same number that was used to allocate the buffer 2015-06-01 18:50:14 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Document that the latency is in ns 2015-06-01 20:03:22 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Only lower ranks of OMX.Exynos. audio codecs, the video codecs are actually working 2015-06-01 19:40:11 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Give marginal rank to codecs that start with OMX.Exynos. OMX.Exynos. codecs are existing on some devices like the Galaxy S5 mini, and cause random crashes (of the device, not the app!) and generally misbehave. That specific device has other codecs that work with a different name, but let's just give them marginal rank in case there are devices that have no other codecs and these are actually the only working ones 2015-06-01 19:23:01 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Give lower ranks to codecs not starting with OMX. On some devices there are codecs that don't start with OMX., while there are also some that do. And on some of these devices the ones that don't start with OMX. just crash during initialization while the others work. To make things even more complicated other devices have codecs with the same name that work and no alternatives. So just give a lower rank to these non-OMX codecs and hope that there's an alternative with a higher rank. Also stagefright gives codecs starting with OMX. a higher rank too and considers other codecs that don't start with OMX. as software codecs. 2015-06-01 11:12:22 -0300 Reynaldo H. Verdejo Pinochet * tests/check/elements/zbar.c: tests: zbar: check for frame field on attach-frame=true Also check for the sample to have a buffer and caps associated with it. Related to: https://bugzilla.gnome.org/show_bug.cgi?id=747557 2015-05-20 15:04:40 -0400 Nicolas Dufresne * sys/applemedia/vtdec.c: vtdec: Require width and height field for H264 This decoder does not work if width and height field are not set in the sinkpad caps. Let's make this explicit by adding them to the template caps. https://bugzilla.gnome.org/show_bug.cgi?id=749655 2015-06-01 14:07:37 +0100 Julien Isorce * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.c: glcontext_gpu_process: close the window when done 2015-06-01 14:05:58 +0100 Julien Isorce * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.c: glwindow_gpu_process: avoid empty struct 2015-06-01 12:58:11 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: move main loop/context creation back to init/finalize Fixes https://bugzilla.gnome.org/show_bug.cgi?id=750199 2015-06-01 14:05:06 +0200 Edward Hervey * tests/examples/gl/gtk/gstgtk.c: examples: Fix gl usage without wayland support Not all platforms have wayland support. Handle that gracefully at compile time 2015-06-01 13:55:20 +0200 Edward Hervey * ext/rtmp/gstrtmpsink.c: rtmpsink: Initialize GstMapInfo Avoids doing a call to unmap with it uninitialized CID #1302834 2015-06-01 12:51:46 +0100 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: clean dereferences of private structure https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-04-25 22:55:28 +0300 Ilya Konstantinov * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: fix keyframe request race condition It is incorrect to modify the frame properties after passing them, since VTCompressionSessionEncodeFrame takes reference and we have no control over when it's being used. In fact, the code can be simplified. We just preallocate the frame properties for keyframe requests, and pass NULL otherwise. https://bugzilla.gnome.org/show_bug.cgi?id=748467 2015-06-01 11:56:13 +0100 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: * gst/audiovisualizers/gstaudiovisualizer.h: audiovisualizer: make private all variable subclasses don't need https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-05-01 23:20:30 -0300 Reynaldo H. Verdejo Pinochet * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: zbar: add frame sample to barcode message New attach-frame property enables barcode frame dumping when set to true. https://bugzilla.gnome.org/show_bug.cgi?id=747557 2015-05-31 21:30:23 +0200 Sebastian Dröge * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl: Fix compiler warning gstglwindow_wayland_egl.c:246:41: error: unused variable 'surface_listener' [-Werror,-Wunused-const-variable] static const struct wl_surface_listener surface_listener = { ^ 2015-05-27 23:34:14 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstamcvideoenc.h: * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: androidmedia: Conditionally use get_{input,output}_buffer() Android 21 APIs Also properly set limit/position on byte buffer, some codecs prefer to have correct values there. 2015-05-31 16:53:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: fix compiler error gstglwindow.c:1118:544: error: 'return' with no value, in function returning non-void [-Werror] g_return_if_fail (GST_GL_IS_WINDOW (window)); 2015-05-31 15:42:48 +1000 Matthew Waters * tests/examples/gl/gtk/filternovideooverlay/main.cpp: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: gl/examples: update gtk examples for glupload 2015-05-31 15:40:15 +1000 Matthew Waters * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: gl/examples: update gtk examples for wayland 2015-05-29 18:06:27 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: implement setting the render rectangle Places our subsurface at the rectangle provided position 2015-05-29 18:03:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: handle gst_video_overlay_set_render_rectangle 2015-05-29 18:01:29 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: don't block the event loop after poll Use the dispatch_pending set of functions which just run the currently queued up events instead of potentially waiting for an event to occur. 2015-05-27 16:42:55 +1000 Matthew Waters * tests/examples/gl/gtk/gstgtk.c: * tests/examples/gl/gtk/gstgtk.h: tests/gl/gtk: implement setting a wayland display/surface 2015-05-27 16:39:06 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: implement basic video overlay support via subsurfaces Currently does not position the subsurface relative to the parent surface at all 2015-05-27 15:44:33 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: allow a NULL wl_event_queue perform operations on the default wl_display event queue in that case 2015-05-27 15:43:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl/utils: implement wayland display GstContext requried for sharing GL contexts or subsurface support 2015-05-22 16:07:49 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: gl/wayland: run each window on a separate queue Based on patch by Julien Isorce https://bugzilla.gnome.org/show_bug.cgi?id=709747 2015-05-30 02:19:25 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: gl: Don't leak temp strings in _RGB_pixel_order() Fix a memory leak of temporary strings when computing swizzling of RGB formats. 2015-05-30 02:29:47 +1000 Jan Schmidt * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Add transform_internal_caps() vfunc Add a vfunc that is called by glfilter before it sets caps features and intersects with the peer caps, and move removing the size from caps into its default implementation. Allows sub-classes to do more sophisticated management of the size fields in case they don't support arbitrary resizing or have distinct preferences. 2015-05-30 02:23:44 +1000 Jan Schmidt * gst-libs/gst/gl/gstglfilter.c: glfilter: Don't remove size fields from caps Instead of removing size fields, set them to the full range like videoscale does, so the caps are clearly unfixed in all cases. 2015-05-10 18:55:16 +1000 Jan Schmidt * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: videoaggregator: Add class property to disable caps scaling Add preserve_update_caps_result boolean on the class to allow sub-classes to disable videoaggregator removing sizes and framerate from the update_caps() return result. 2015-05-04 18:17:21 +1000 Jan Schmidt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Catch errors, and allow sub-class to return NULL from get_output_buffer() A return value of GST_FLOW_OK with a NULL buffer from get_output_buffer() means the sub-class doesn't want to produce an output buffer, so skip it. If gst_videoaggregator_do_aggregate() generates an error, make sure to propagate it - don't just ignore and discard the error by over-writing it with the gst_pad_push() result. 2015-05-29 16:02:31 +0300 Vivia Nikolaidou * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsink.h: rtmpsink: Do not crash when receiving buffers after GST_FLOW_ERROR If the RTMP URI is invalid, the rtmpsink will return GST_FLOW_ERROR. If it still receives buffers after that, it shouldn't crash. https://bugzilla.gnome.org/show_bug.cgi?id=750104 2015-05-29 09:01:29 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: avoid assertion when splitting buffer Pass size=-1 as is if that is the case instead of subtracting the offset. Otherwise we have an invalid size passed for that buffer. 2015-05-28 15:59:02 +0200 Santiago Carot-Nemesio * ext/dtls/gstdtlssrtpdec.c: dtlssrtpdec: Release requested pads https://bugzilla.gnome.org/show_bug.cgi?id=750036 2015-05-28 15:57:10 +0200 Santiago Carot-Nemesio * ext/dtls/gstdtlsdec.c: dtlsdec: Remove unnecessary ref/unref operations https://bugzilla.gnome.org/show_bug.cgi?id=750036 2015-05-28 15:55:03 +0200 Santiago Carot-Nemesio * ext/dtls/gstdtlsdec.c: dtlsdec: Fix release request pad function Don't unref the pad reference we don't own and just remove the pad. https://bugzilla.gnome.org/show_bug.cgi?id=750036 2015-05-28 14:30:46 +0200 Edward Hervey * ext/hls/m3u8.c: hlsdemux: Search more when advancing fragment In live situations, it is not uncommon for the current fragment to end up out of the (updated) play range (lowest/highest sequence). But the next fragment to play *is* present in the play range. When advancing, if we can't find the current GstM3U8MediaFile, don't abort straight away. Instead, look if a GstM3U8MediaFile with the next sequence value is present, and if so switch to it. https://bugzilla.gnome.org/show_bug.cgi?id=750028 2015-05-27 10:58:10 +0100 Julien Isorce * configure.ac: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gpuprocess/Makefile.am: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglcontext_gpu_process.h: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.c: * gst-libs/gst/gl/gpuprocess/gstglwindow_gpu_process.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: gl: add GstGLContextGPUProcess backend It builds its GL vtable from a proc address provided by the application. 2015-05-27 16:28:39 +0100 Julien Isorce * ext/gl/gstgleffects.c: * ext/gl/gstglfiltershader.c: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: add and use gst_gl_internal_format_rgba Previously when compiling GstGL with both GL and GLES2, GL_RGBA8 was picked from GL/gl.h. But a clash may happen at runtime when one is selecting GLES2. gst_gl_internal_format_rgba allows to check at runtime if it should use GL_RGBA or GL_RGBA8. 2015-05-27 14:10:16 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: glwindow_x11: use parent default implementation 2015-05-27 11:16:32 +0100 Julien Isorce * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext_glx: rename variable from window to context 2015-05-27 11:11:55 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: initialize debug in class_init Useful if one uses gst_gl_window_x11_new directly instead of gst_gl_window_new. 2015-05-27 11:07:38 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: glcontext: initialize debug in class_init Useful if one uses gst_gl_context_egl_new directly instead of gst_gl_context_new. 2015-05-27 10:55:20 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add gst_gl_context_set_display helper 2015-05-27 15:25:40 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.h: glcontext: add missing _CAST after G_TYPE_CHECK_CLASS 2015-05-27 10:51:54 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.h: glwindow: add missing _CAST after G_TYPE_CHECK_CLASS 2015-05-26 18:38:39 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: provides some default implementations to factorize with all backends 2015-05-28 00:59:39 +1000 Jan Schmidt * gst-libs/gst/base/gstaggregator.c: aggregator: Push EOS on error return. Before shutting down the srcpad task due to a downstream error, push an EOS to give downstream a chance to shut down somewhat cleanly. 2015-05-27 13:12:57 +0100 Luis de Bethencourt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: don't overwrite value Value of res is reset to FALSE in each iteration of the while loop. We want to conserve TRUE if any pad event succeeded until we arrive to done. Also, buf is set to the value of *outbuf twice. Removing the first assignment since the second one is outside of a conditional. 2015-05-27 13:08:46 +0100 Luis de Bethencourt * ext/opencv/gstretinex.c: opencv: 'for' loop initial declaration 'for' loop initial declarations are not allowed in C89, moving the declarations to before the 'for' loops. 2015-05-27 13:05:11 +0100 Luis de Bethencourt * ext/gl/gstgleffects.c: gleffects: 'for' loop initial declaration 'for' loop initial declarations are not allowed in C89, moving the declarations to before the 'for' loops. 2015-05-27 12:03:42 +0100 Luis de Bethencourt * ext/resindvd/gstmpegdemux.c: resindvd: remove unused value The data variable is incremented but never read again. Remove the unused value assignment. 2015-05-27 06:17:49 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: remove more unused attributes Those are not used or only read 2015-05-27 05:35:30 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: remove unused attribute It is never read for anything useful 2015-05-26 16:47:47 -0400 Xavier Claessens * ext/gl/gstgloverlay.c: gloverlay: fix a leak https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 15:10:28 -0400 Xavier Claessens * ext/gl/gstgloverlay.c: gloverlay: properly handle errors while loading file Post an error on the bus if anything bad happens while reading and parsing the image file. https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 15:04:34 -0400 Xavier Claessens * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: gloverlay: remove unused type_file field https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 15:01:37 -0400 Xavier Claessens * gst-libs/gst/gl/gstglfilter.c: gl: propagate return value from filter and filter_texture https://bugzilla.gnome.org/show_bug.cgi?id=749846 2015-05-26 16:39:59 +0100 Luis de Bethencourt * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: remove unused assignment buf is incremented just before returning, this new value is never used. Removing unused assignment. 2015-05-26 15:24:52 +0100 Luis de Bethencourt * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: 'for' loop initial declaration 'for' loop initial declarations are only allowed in C89, moving the declaration to before the 'for' loop. 2015-05-26 14:14:34 +0100 Vineeth T M * gst/gaudieffects/gstexclusion.c: exclusion: exception when set factor to 0 When factor property is set to 0, transform just returns. Adjust the minimum value to 1. https://bugzilla.gnome.org/show_bug.cgi?id=743907 2015-05-26 12:47:40 +1000 Matthew Waters * ext/gl/gstgleffects.c: gleffects: properly initialize the shaders across contexts implementing multiple API's 2015-05-26 12:44:47 +1000 Matthew Waters * ext/gl/effects/gstgleffectssources.c: gleffects_laplacian: fix shader compilation in gl3/gles2 https://bugzilla.gnome.org/show_bug.cgi?id=748393 2015-05-25 12:33:50 +0200 Patricia Muscalu * configure.ac: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: curlsink: handle socket callback for active FTP connections as well Since version 7.28.0, libcurl allows application to set socket options for active FTP connections. Bump libcurl requirement to version tested. https://bugzilla.gnome.org/show_bug.cgi?id=749815 2015-05-20 12:08:38 +0100 David Waring * ext/dash/gstmpdparser.c: dashdemux: Fix segfault introduced by segment iteration refactoring (2105a310). The functions to get the next fragment, next fragment timestamp and to advance to the next fragment need to work differently when stream->segments is NULL. Use logic similar to that introduced by commit 2105a310 to perform these functions. https://bugzilla.gnome.org/show_bug.cgi?id=749684 2015-05-18 22:33:50 -0300 Thiago Santos * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: use signed integet to represent segment index We need to be able to represent -1 to check when we are EOS on reverse playback and unsigned integer won't allow that. CID #1298193 CID #1298194 CID #1298195 https://bugzilla.gnome.org/show_bug.cgi?id=749534 2015-05-25 10:30:55 +0900 Suhwang Kim * ext/dash/gstdashdemux.c: dashdemux: fix outdated example launch line https://bugzilla.gnome.org/show_bug.cgi?id=749809 2015-05-22 13:12:09 +1000 Matthew Waters * gst-libs/gst/gl/wayland/wayland_event_source.c: gl/wayland: remove dead event source code 2015-05-21 17:48:31 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c: * gst-libs/gst/gl/wayland/gstgldisplay_wayland.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: gl/wayland: add GstGLDisplayWayland Simple implementation split from GstGLWindowWayland Can now have multiple glimagesink elements all displaying output linked via GL or otherwise (barring GL platform limitations). The intel driver is racy and can crash setting up the two glimagesink contexts. e.g. videotestsrc ! tee name=t ! queue ! glupload ! glimagesinkelement t. ! queue ! gleffects_blur ! glimagesinkelement videotestsrc ! glupload ! glfiltercube ! tee name=t ! queue ! glimagesinkelement t. ! queue ! gleffects_blur ! glimagesinkelement 2015-05-25 17:27:58 +1000 Matthew Waters * ext/gl/gstgltransformation.c: gltransformation: fix DrawElements call for element array buffers https://bugzilla.gnome.org/show_bug.cgi?id=749734 2015-05-23 01:00:18 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: provide the exact GL api version for the wrapped context Otherwise we could end up being mistaken for the diference between a gl3 and a gl2 context resulting in a failure getting the list of extensions from the wrapped context due to the difference between glGetString and glGetStringi for the GL_EXTENSIONS token. https://bugzilla.gnome.org/show_bug.cgi?id=749728 2015-05-22 02:40:37 +0900 Jimmy Ohn * ext/dash/gstdashdemux.c: dashdemux: remove unnecessary semicolon https://bugzilla.gnome.org/show_bug.cgi?id=749691 2015-05-21 15:30:34 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: do not call SetParent in release_parent_win_id() When called from gst_gl_window_win32_close(), internal window could not exist, and if it does it's going to be destroyed just after that anyway. Also it causes window_proc() to be called and crash because it gets a NULL context. When called from gst_gl_window_win32_set_window_handle() we are going to set another parent anyway, and it's probably better to reparent directly instead of passing by a NULL parent which could cause the internal window to popup briefly. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-21 15:30:00 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: remove unused code https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 17:09:21 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: fix crash when finalizing GstGLContext gst_gl_context_finalize() is calling gst_gl_window_win32_quit() which was posting a message. But then window_proc takes window's context and get a NULL. Now that we've got a GMainLoop we can do like other backends and simply call g_main_loop_quit(). This also remove duplicated code to release the parent window and potential crash there because parent_proc could be NULL if we never created the internal window. That could happen for example if setting state to READY then setting a window_handle, and go back to NULL state. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 17:06:42 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: Fix leaked GstGLContext https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 15:30:49 -0400 Xavier Claessens * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl: win32: set the parent window when creating internal window When _set_window_handle() was called in READY state, it wasn't set to the internal window created later. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-20 15:29:50 -0400 Xavier Claessens * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/win32_message_source.c: * gst-libs/gst/gl/win32/win32_message_source.h: gl: win32: use a GMainContext to dispatch win32 messages gst_gl_window_win32_send_message_async() could be called before the internal window is created so we cannot use PostMessage there. x11 and wayland backends both create a custom GSource for this, so there is no reason to not do that for win32. https://bugzilla.gnome.org/show_bug.cgi?id=749601 2015-05-22 00:27:36 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Don't leak all memory uploaded via raw uploads. Remove an extra ref missed when switching over to not reusing output textures 2015-05-21 16:24:48 +0300 Sebastian Dröge * ext/gl/gstglvideomixer.c: * gst/compositor/compositor.c: compositor/glvideomixer: Don't calculate PAR/DAR with unset GstVideoInfos Otherwise we divide by zero. 2015-05-21 16:19:08 +0300 Sebastian Dröge * gst/compositor/compositor.c: compositor: Fix double assignment 2015-05-21 15:05:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: require a shader version to initialize. It's very near pointless to try our GL implementation without shaders. https://bugzilla.gnome.org/show_bug.cgi?id=749284 2015-05-20 02:38:53 +1000 Jan Schmidt * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/Makefile.am: Fix flags order in GL examples for uninstalled build 2015-05-20 01:57:52 +1000 Jan Schmidt * sys/wasapi/Makefile.am: wasapi: Fix flags order for uninstalled build 2015-05-21 00:56:01 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * gst/compositor/compositor.c: compositor/glvideomixer: fix up par handling We were using the wrong formula https://bugzilla.gnome.org/show_bug.cgi?id=749634 2015-04-17 15:36:49 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Consider SEI NALU as "HEADER" packets Like SPS/PPS they do contain information which will be needed to decode the following data (as per definition of the flag) Also ensures that the series of SPS/PPS/SEI NALU before a keyframe can be considered as one contiguous header 2015-04-17 15:35:43 +0200 Edward Hervey * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: Carry over GST_BUFFER_FLAG_HEADER In the same way we do it for the DELTA_UNIT flag This allows downstream elements to know whether a given mpeg-ts packet contains a corresponding HEADER elementary unit 2015-05-20 12:11:31 +0200 Thijs Vermeir * ext/x265/gstx265enc.c: x265enc: Only copy VPS/SPS/PPS NAL units in header buffer Previously the VPS unit was detected and all next packets where copied into the header buffer assuming only SPS and PPS would follow. This is not always true, also other types of NAL units follow the VPS unit and where copied to the header buffer. Now the VPS/SPS/PPS are explicitely detected and copied in the header buffer. 2015-05-20 11:27:25 +0200 Thijs Vermeir * ext/x265/gstx265enc.c: x265enc: Fix tune parameter mismatch There was a mismatch between the tune parameter in x265 and the enum used in this element. The value in the enum is the x265 tune parameter + 1. 2015-05-19 18:02:30 +0300 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: amcaudiodec: Add an output adapter for chunking the output into codec frames Otherwise the base class will be confused. See https://bugzilla.gnome.org/show_bug.cgi?id=685730 2015-05-19 10:43:28 -0400 Xavier Claessens * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglframebuffer.c: gl: fix crash on windows with intel driver https://bugzilla.gnome.org/show_bug.cgi?id=749430 2015-05-20 00:50:37 +1000 Matthew Waters * ext/gl/caopengllayersink.m: caopengllayersink: static const the indices array the contents will never change anyway. 2015-05-20 00:28:52 +1000 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: correctly use the sync meta across multiple contexts 1. Set the sync point after the (possible) upload has occured 2. Wait in the correct GL context (the draw context) Note: We don't add the GL sync meta to the input buffer as it's not writable and a copy would be expensive. Similar to the change with the same name for glimagesink 2015-05-20 00:28:07 +1000 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: caopengllayersink: update for GL3 element array buffer usage fixes blank output 2015-05-19 16:22:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: correctly use the sync meta across multiple contexts 1. Set the sync point after the (possible) upload has occured 2. Wait in the correct GL context (the draw context) Note: We don't add the GL sync meta to the input buffer as it's not writable and a copy would be expensive. 2015-05-19 16:19:41 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: provide a current wrapped GstGLContext for callbacks So that the draw and resize callbacks can get the current GstGLContext. 2015-05-19 16:14:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: ensure that the Fence is going to be executed Otherwise it could stay client side without being submitted to the GL server resulting in another context waiting on a Fence that will never become signalled causing a deadlock. 2015-05-19 11:47:23 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: don't reuse output textures for raw data upload Causes stale textures to be used further down the chain. 2015-05-19 11:11:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: don't clear the framebuffer Breaks attempting to blend with the destination buffer and should be done explicitly by the callback anyway. 2015-05-19 11:09:54 +1000 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: track gl_start/stop correctly Don't start multiple times without calling gl_stop. 2015-05-18 20:16:32 +0200 Stefan Sauer * gst/audiomixer/gstaudiomixer.c: * gst/compositor/compositor.c: Revert "doc: Workaround gtkdoc issue" This reverts commit ff6c736fe08e01f4320c4b02e811a0b57cf97cc1. This is fixed by the gtk-doc 1.23 release. cannot contain : http://www.docbook.org/tdg/en/html/para.html http://www.docbook.org/tdg/en/html/refsect2.html 2015-05-14 02:11:50 +0900 Jimmy Ohn * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: hlsdemux: Simplify logic in process_manifest Simplify logic in process_manifest and remove a TODO item. https://bugzilla.gnome.org/show_bug.cgi?id=749328 2015-05-18 14:12:56 +0900 Vineeth T M * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsmooth.h: cvsmooth: rename properties The properties are named as param1 to param4, which makes very little sense hence renamed the properties according to what it is doing. https://bugzilla.gnome.org/show_bug.cgi?id=749523 2015-05-18 14:01:59 +0900 Vineeth T M * ext/opencv/gstcvsmooth.c: cvsmooth: Wrong assignment of prop leads to crash when setting param2 property, it is wrongly being assigned to param1. This leads to wrong behavior and a crash when param2 is set as 0. https://bugzilla.gnome.org/show_bug.cgi?id=749523 2015-05-18 14:30:19 +0900 Vineeth T M * ext/opencv/gstpyramidsegment.c: pyramidsegment: wrong value of level property The property level has a minimum value of 0. But when we set the level as 0, it gets an assertion error. The function icvPyrSegmentation8uC3R returns false if level is set as 0, since the minimum level cant be 0 and thus results in error. Hence changing the minimum value to 1. https://bugzilla.gnome.org/show_bug.cgi?id=749525 2015-05-16 23:38:14 -0400 Nicolas Dufresne * gst/audiomixer/gstaudiomixer.c: * gst/compositor/compositor.c: doc: Workaround gtkdoc issue With gtkdoc 1.22, the XML generator fails when a itemizedlist is followed by a refsect2. Workaround the issue by wrapping the refsect2 into para. 2015-05-06 15:17:24 +0100 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: fix buffer timestamp not being in stream time Timestamps should start at the segment start, rather than 0, so we need to not subtract the first timestamp. This makes the sink correctly account for running time when switching PMTs where a stream starts not quite at zero, causing timing offsets that can become noticeable and causing dropped frames after a few times. 2015-05-06 15:16:37 +0100 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: accumulate previous segment base time 2015-04-24 12:56:02 +0100 Vincent Penquerc'h * gst/mpegtsdemux/mpegtsbase.c: tsdemux: fix refcounting when applying a new PMT A new program object is created to replace an existing one in the programs hash table, so its refcount needs to match. With the default of 0 refcount on creation, the next PAT change will cause that refcount to be both incremented and decremented (assuming the new PAT references that stream too), which will cause the program to be destroyed. https://bugzilla.gnome.org/show_bug.cgi?id=748412 2015-05-14 16:06:55 +0200 Jose Antonio Santos Cadenas * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: dtls: Fix memory leak Keys were not correctly released when it was get as a property nor when a second key was received https://bugzilla.gnome.org/show_bug.cgi?id=749380 2015-05-14 21:21:01 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: free the vertex buffer when done fixes a memory leak 2015-01-22 18:00:36 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: implement GL3 core context selection 2015-05-14 18:35:35 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: tests/gl: fix typo 2015-05-14 16:42:09 +1000 Matthew Waters * ext/gl/effects/gstgleffectblur.c: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gltestsrc.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls We are using shaders everywhere and so they are not needed 2015-05-14 15:10:59 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: cleanup properties remove unused "display-name" ensure defaults between the bin/element are the same 2015-05-14 14:56:30 +1000 Matthew Waters * ext/gl/gstgleffects.c: gleffects: only try the GL2 shader init path if we have a GL2 context 2015-05-12 22:04:26 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: glshader: attempt to detect the gles2 inside opengl3 case This is necessary to use gles2 shaders in a GL 3 core context on OS X which fails without a proper #version being set on the shaders. 2015-05-12 17:55:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: glshader: remove references to gl3 specific shaders We rely specifically on gles2 shaders being supported by the GL implementation with GL3 core profile. 2015-05-01 12:04:28 +1000 Matthew Waters * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: element buffers are part of vao state Use them as such. They are also required for GL3 core profile support with glDrawElements on OS X. 2015-05-07 12:25:10 +0700 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: properly detect (hopefully) the correct ext_rg/arb_rg variant GL_EXT_texture_rg is only valid for GLES2. GLES3 uses similar wording to the GL_ARB_texture_rg which requires a sized internal format that the GL_EXT_texture_rg does not require. https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_rg.txt https://www.opengl.org/registry/specs/ARB/texture_rg.txt 2015-05-14 13:04:21 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: * gst/compositor/compositor.c: compositor: implement proper par handling We were previously failing on different input and output par 2015-05-12 13:41:19 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: avoid busy-looping when waiting for new fragment When all fragments have already been downloaded on a live stream dashdemux would busy loop as the default implementation of has_next_fragment would return TRUE. Implement it to correctly signal if adaptivedemux should wait for the manifest update before trying to get new fragments. 2015-05-11 14:19:20 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Improve live stream manifest update repositioning When updating the manifest the timestamps on it might have changed a little due to rounding and timescale conversions. If the change makes the timestamp of the current segment to go up it makes dashdemux reposition to the previous one causing one extra unnecessary download. So when repositioning add an extra 10 microseconds to cover for that rounding issues and increase the chance of falling in the same segment. Additionally, also improve the time used when the client is already after the last segment. Instead of using the last segment starting timestamp use the final timestamp to make it reposition to the next one and not to the one that has already been downloaded. 2015-05-11 12:30:03 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: add more protection when acessing gptrarray entries The glib structure doesn't do range checking so we have to do it ourselves. Also adds some more debugging messages 2015-05-08 16:58:36 -0300 Thiago Santos * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: remove unused functions These functions of directly getting and setting segment indexes are no longer useful as now we need 2 indexes: repeat and segment index. The only operations needed are advance_segment, going back to the first one or seeking for a timestamp. 2015-05-08 16:49:02 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: reuse seeking function to reduce repeated code Instead of writing a seek routine, just use the mpdparser function. Also remove function that is not needed anymore 2015-05-08 16:31:44 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: refactor segment iteration for better performance Segments are now stored with their repeat counts instead of spanding them to multiple segments. This caused advancing to the next segment using a single index to have to iterate over the whole list every time. This commit addresses this by storing both the segment index as well as the repeat index and makes advancing to next segment just an increment of the repeat or the segment index. 2015-05-07 16:30:48 -0300 Thiago Santos * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: improve mpd parsing for repeated segment entries Use a single segment to represent it internally to avoid using too much memory. This has the drawback of issuing a linear search to find the correct segment to play but this can be fixed by using binary searches or caching the current position and just looking for the next one. https://bugzilla.gnome.org/show_bug.cgi?id=748369 2015-05-12 12:55:42 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: drop debug message that was wrong EOS doesn't necessarily mean that no fragment was downloaded 2015-05-12 12:55:17 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: run gst-indent To allow commiting on this file cleanly 2015-05-11 11:56:52 -0300 Thiago Santos * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: the parent is provided in the function No need to get it again 2015-05-13 15:59:48 +0200 Jose Antonio Santos Cadenas * ext/dtls/gstdtlsenc.c: dtlsenc: Fix memory leak releasing connection_id https://bugzilla.gnome.org/show_bug.cgi?id=749318 2015-05-13 15:33:49 +0200 Jose Antonio Santos Cadenas * ext/dtls/gstdtlsenc.c: dtlsenc: Fix memory leak while setting connection-id https://bugzilla.gnome.org/show_bug.cgi?id=749318 2015-05-13 17:15:57 +0200 Jose Antonio Santos Cadenas * ext/dtls/gstdtlsdec.c: dtlsdec: Fix memory leak, release previous pem https://bugzilla.gnome.org/show_bug.cgi?id=749322 2015-05-13 16:06:52 +0200 Jose Antonio Santos Cadenas * ext/dtls/gstdtlsdec.c: dtlsdec: Fix memory leak on dispose Parent dispose function was not called https://bugzilla.gnome.org/show_bug.cgi?id=749322 2015-05-13 17:19:25 +0200 Jose Antonio Santos Cadenas * ext/dtls/gstdtlsconnection.c: dtlsconnection: Fix memory leak while setting closure https://bugzilla.gnome.org/show_bug.cgi?id=749325 2015-05-13 16:23:26 +0200 Wim Taymans * configure.ac: fix faad2 version check On fedora 22, the output of cpp inserts extra debug comments, which makes our regexp for the faad2 version check fail. This in turn causes it to compile with the wrong arguments passed which then causes stack corruption and crashes. Fix this by only checking for the version (which should be by itself on a single line). This is potentially less safe, it might be possible that a similar string would appear in a later version in the header file. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=748571 2015-05-13 23:55:28 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: propagate the version/extension failure upwards Otherwise the calling code has no idea that the context failed to be created fully. https://bugzilla.gnome.org/show_bug.cgi?id=749284 2015-05-13 23:54:52 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: don't deadlock on context creation failure https://bugzilla.gnome.org/show_bug.cgi?id=749284 2015-05-13 15:42:15 +0300 Sebastian Dröge * ext/gl/gstglmixerbin.c: glmixerbin: Don't unref pad templates Otherwise we unref the reference that is owned by the element class. 2015-05-13 12:31:44 +0100 Tim-Philipp Müller * ext/srtp/gstsrtpenc.c: srtpenc: fix failure return values from create_session() create_session() returns an err_status_t with err_status_ok=0 and err_status_fail=1, so returning TRUE/FALSE is not quite right. https://bugzilla.gnome.org/show_bug.cgi?id=749304 2015-05-13 13:14:14 +0200 Miguel París Díaz * ext/srtp/gstsrtpenc.c: srtpenc: fix over unlocking Called should call function with lock, and is also responsible for unlocking it later. https://bugzilla.gnome.org/show_bug.cgi?id=749304 2015-05-12 15:47:33 +0800 Lyon Wang * gst/videoparsers/h263parse.c: h263parse: fix custom picture format (CPFMT) parsing In the H263 spec, CPFMT is present only if the use of a custom picture format is signalled in PLUSEPTYPE and UFEP is "001", so we need to check params->format and only if the value is 6 (custom source format) the CPFMT should be read, otherwise it's not present and wrong data will be parsed. When reading the CPFMT, the width and height were not calculated correctly (wrong bitmask). https://bugzilla.gnome.org//show_bug.cgi?id=749253 2015-05-13 17:38:35 +1000 Matthew Waters * gst/compositor/compositor.c: * tests/check/elements/compositor.c: compositor: fix rectangle obscure test to clamp against the output frame size Rather than one of the input pad video info's. The test checking this was not constraining the output frame size to ensure that the out of frame stream was not being displayed. 2015-05-13 17:11:55 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: implement par handling We were previously ignoring it completely 2015-05-13 17:10:42 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't upload the vertex data every frame Add the missing cache tracking statement. 2015-05-12 16:36:58 -0400 Nicolas Dufresne * ext/gl/gstgluploadelement.c: gluploadelement: Remove uneeded header and defines 2015-05-11 15:02:02 -0400 Nicolas Dufresne * ext/gl/gstgltestsrc.c: gltestsrc: Use default get_caps implementation The custom code is wrong as it ignores the templates, which leads to missing fields in the result. Instead, simply use the default get_caps implementation which does it correctly (get the template, intersect with filter and return). https://bugzilla.gnome.org/show_bug.cgi?id=749237 2015-05-11 15:54:52 +0300 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Implement GstVideoAggregator::find_best_format() Without this, we will fixate weird pixel-aspect-ratios like 1/2147483647. But in the end, all the negotiation code in videoaggregator needs a big cleanup and videoaggregator needs to get rid of the software-mixer specific things everywhere. 2015-05-11 22:53:09 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: demote upload/convert/download elements to none Copy paste error 2015-05-11 22:37:44 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: expose internal glvideomixerelement\ We might want more control over the exact pipeline Also reduces overhead 2015-05-11 22:35:18 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: expose internal glimagesinkelement We might want more control over the exact pipeline. Also reduces overhead. 2015-05-07 21:18:27 +0200 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: fix unconditional buffer queue unlock Unless stopRequest is set, we should unlock conditionally -- otherwise, the 'create:' method can wake up to an empty buffer queue and pull a nil buffer. https://bugzilla.gnome.org/show_bug.cgi?id=748054 2015-05-11 12:18:28 +0200 Heinrich Fink * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Rename mode 2048p to 1556p https://bugzilla.gnome.org/show_bug.cgi?id=749218 2015-05-11 12:04:47 +0200 Heinrich Fink * sys/decklink/gstdecklink.cpp: decklink: Use correct frame rate for mode 2160p50 https://bugzilla.gnome.org/show_bug.cgi?id=749218 2015-05-11 12:02:47 +0200 Heinrich Fink * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Rename mode 3184p to 2160p https://bugzilla.gnome.org/show_bug.cgi?id=749218 2015-01-22 15:43:22 +0100 Piotr Drąg * po/POTFILES.in: * po/POTFILES.skip: po: update POTFILES.skip and POTFILES.in The ones in .skip need to be added back to POTFILES.in after porting to 1.x. https://bugzilla.gnome.org/show_bug.cgi?id=743352 2015-05-08 14:20:44 +0100 Luis de Bethencourt * gst/removesilence/gstremovesilence.c: removesilence: remove gst_remove_silence_reset() No need to call gst_remove_silence_reset() in gst_remove_silence_init() because vad_new() already calls this function. Since there are no more uses of _silence_reset(), we can remove it altogether. 2015-05-08 14:55:28 +0200 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: We shouldn't manually check reconfigure flag on pads but instead implement ::negotiate() Add FIXME comment related to that. 2015-05-08 13:54:06 +0100 Luis de Bethencourt * gst/asfmux/gstasfmux.c: * gst/debugutils/fpsdisplaysink.c: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfmux.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: Update references to decodebin Update old references for decodebin2 to decodebin. 2015-05-08 13:49:38 +0100 Luis de Bethencourt * gst/removesilence/gstremovesilence.c: removesilence: update example launch line 2015-05-07 21:04:30 +0200 Sebastian Dröge * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpdec.h: dtlssrtpdec: Don't merge RTP and RTCP streams that were just split by srtpdec The funnel has some overhead, and later rtpbin will have to split both streams again anyway. https://bugzilla.gnome.org/show_bug.cgi?id=748723 2015-05-06 15:47:27 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: Revert "Revert "glimagesink: add pixel-aspect-ratio property on the bin"" This reverts commit d96e43b034a03fe54633907bc1bf2a26fe5f95fb. 2015-05-06 15:47:20 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: Revert "Revert "glimagesink: forward ALL the properties on the bin"" This reverts commit 59fb0f830f08e3e59f87f83df8fa3c2d9f3d9741. 2015-05-06 15:47:04 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstopengl.c: Revert "Revert "glimagesink: implement as a bin"" This reverts commit be938f92d94e8acccf593128281f6e09213600a0. 2015-05-06 15:46:49 +0200 Sebastian Dröge * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: Revert "gl: readd glupload/download onto element pads" This reverts commit 87d8270f302b03f63ce04f986d824892a2c131fd. 2015-05-06 15:43:32 +0200 Sebastian Dröge * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: Revert "Revert "glvideomixer: implement with glmixerbin"" This reverts commit b4bd11f2f3a60224d188b27ab55b278077cb1217. 2015-05-06 12:59:33 +0200 Sebastian Dröge * ext/srtp/gstsrtpdec.c: srtpdec: Actually set the caps on the srcpad instead of just calling the default event handler for the sinkpad Fixes up dafa11b9d21d06a0273007628a2a0bb4d7858658 2015-04-29 18:23:31 +0900 Jimmy Ohn * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: only update stream position if query success We don't need to check about the query fail case. because it is update to segment position even though query fail. https://bugzilla.gnome.org/show_bug.cgi?id=748529 2015-05-05 12:45:24 +0200 Sebastian Dröge * configure.ac: decklink: Disable decklink plugin on Android 2015-05-05 14:44:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: fixup size declaration 2015-05-04 23:42:36 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: handle the local_context query so that upstream elements can get the GL context from glimagesink 2015-05-03 14:56:05 +0200 Matthieu Bouron * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: androidmedia: Add suport for COLOR_FormatYV12 Reference: http://developer.android.com/reference/android/graphics/ImageFormat.html#YV12 https://bugzilla.gnome.org/show_bug.cgi?id=747126 2015-04-30 11:44:06 +0200 Matthieu Bouron * sys/androidmedia/gstamc-constants.h: androidmedia: Declare QOMX_COLOR_FORMATYVU420PackedSemiPlanar32mMultiView constant This color format is the same as QOMX_COLOR_FORMATYUV420PackedSemiPlanar32m but stores two images one after the other in a top-bottom layout. https://bugzilla.gnome.org/show_bug.cgi?id=747126 2015-05-04 11:23:16 +0200 Sebastian Dröge * ext/opus/gstrtpopusdepay.c: opusdepay: Set multistream=FALSE on the Opus caps The RTP Opus mapping only allows mono/stereo, and not multistream Opus streams. 2015-05-04 10:35:55 +0200 Jose Antonio Santos Cadenas * ext/opus/gstopusheader.c: opusheader: Do not include rate in caps if it is 0 As expressed in gst_opus_header_create_caps, value 0 means unset. Setting rate value to 0 make negotiation with decoder fail. https://bugzilla.gnome.org/show_bug.cgi?id=748875 2015-05-04 08:06:35 +0200 Matthieu Bouron * sys/androidmedia/gstamc.c: androidmedia: Fix slice-height for Tegra 3 devices https://bugzilla.gnome.org/show_bug.cgi?id=748867 2015-03-13 16:07:15 +0100 Edward Hervey * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: androidmedia: Add support for COLOR_FormatYUV420Flexible https://bugzilla.gnome.org/show_bug.cgi?id=747126 2015-03-25 17:43:59 +0100 Edward Hervey * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: androidmedia: Add suport for Intel color formats https://bugzilla.gnome.org/show_bug.cgi?id=747126 2015-05-02 18:06:18 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: Fix profile and level setting in caps Don't use the apis in codec-utils to extract the profile and level syntax elements since it is wrong if there are emulation prevention bytes existing in the byte-stream data. https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-05-03 23:08:15 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: Improve passthrough check when no conversion is needed. Make the passthrough check contingent on only the fields we can modify being unchanged, and pre-compute it when caps change instead of checking on each buffer. Makes the passthrough more lenient if consumers are lax about making input and output caps complete. 2015-05-01 19:39:58 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: handle when source creation fail Remember to set the source to NULL state as adding it to the pipeline will set it to the READY state. 2015-05-01 19:31:45 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: fix element linking order Video source should be linked to videocrop and not to videoconvert as it is done in the main linking path 2015-03-13 06:10:52 +0530 Nirbheek Chauhan * tests/check/Makefile.am: * tests/check/elements/compositor.c: tests: Add a check for the new compositor pad-is-obscured optimization We verify that all the buffers on an obscured sinkpad are skipped by overriding the map() function in the GstVideoMeta of the buffers to set a variable when called. We also test that the buffers do get mapped when they're not obscured. Blame^WCredit for the GstVideoMeta map() idea goes to Tim. https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-18 15:10:00 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Only map the frame from a buffer if it will be used It's a waste of resources to map it if it won't be converted or used at all. Since we moved the frame mapping down, we need to use the GST_VIDEO_INFO accessor macros now in the code above that instead of the GST_VIDEO_FRAME accessor macros. https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-18 15:09:02 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: use accessor macros for consistency https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-18 15:09:02 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Skip pads that are completely obscured by a higher zorder pad For each frame, compare the frame boundaries, check if the format contains an alpha channel, check opacity, and skip the frame if it's going to be completely overwritten by a higher zorder frame. The check is O(n^2), but that doesn't matter here because the number of sinkpads is small. More can be done to avoid needless drawing, but this covers the majority of cases. See TODOs. Ideally, a reverse painter's algorithm should be used for optimal drawing, but memcpy during compositing is small compared to the CPU used for frame conversion on each pad. https://bugzilla.gnome.org/show_bug.cgi?id=746147 2015-04-30 19:08:25 +0300 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: h265parse: Fix source caps to report cropped dimensions https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-10 15:34:40 +0300 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: h265parse: Fix the memory freeing of stored VPS nals https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-30 18:36:35 +0300 Sreerenj Balachandran * gst/videoparsers/gsth265parse.c: h265parse: Fix profile, tier and level setting in caps Don't use the apis in codec-utils to extract the profile,tier and level syntax elements since it is wrong if there are emulation prevention bytes existing in the byte-stream data. https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-17 15:15:33 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparser: h265: Fix nal unit size checking The EOS and EOB nals have the size 2 which is the size of nal unit header itself. The gst_h265_parser_identify_nalu() is not required to scan start code again in this case. In other cases, for a valid nalunit the minimum required size is 3 bytes (2 byte header and at least 1 byte RBSP payload) 2015-04-17 15:03:34 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparser: h265: Calculate crop rectangle dimensions 2015-04-17 15:01:57 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparser: h265: Fix parsing multiple SEI messages in a single SEI Nal An SEI Nal can have more than one SEI message. Change in API: the gst_h265_parser_parse_sei() 2015-04-30 21:32:29 +0200 Sebastian Dröge * ext/srtp/gstsrtpdec.c: srtpdec: Make sure to send caps events downstream before any segment events Upstream might not give us a caps event (dtlssrtpdec) because it might be an RTP/RTCP mixed stream, but we split the two streams anyway and should report proper caps downstream if possible. Fixes "sticky event misordering" warnings with dtlssrtpdec. 2015-04-30 10:50:19 +0100 Luis de Bethencourt * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: rtjpeg: remove unused quality property 2015-04-30 11:15:40 +1000 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: readd glupload/download onto element pads Allows insertion of gl elements into non-gl pipelines without converter (upload/download) elements. https://bugzilla.gnome.org/show_bug.cgi?id=743974 2015-04-29 22:55:00 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: Revert "glvideomixer: implement with glmixerbin" This reverts commit 0fb56738a14391f248aa0be8756adeaf978baa0c. 2015-04-29 22:38:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstopengl.c: Revert "glimagesink: implement as a bin" This reverts commit 8a0017e21d5f9a8507f0593c6b24f723aa415258. 2015-04-29 22:32:33 +1000 Matthew Waters * ext/gl/gstglimagesink.c: Revert "glimagesink: forward ALL the properties on the bin" This reverts commit 4be45e5f30dc6121f2769323603447f591ca4a0a. 2015-04-29 22:32:20 +1000 Matthew Waters * ext/gl/gstglimagesink.c: Revert "glimagesink: add pixel-aspect-ratio property on the bin" This reverts commit 2ba6bb9b9325b63f58a9ff0b2c82fa28759dcabc. 2015-04-29 09:57:52 +0200 Andoni Morales Alastruey * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: ksvideosrc: don't timestamp buffers for muxed streams 2015-04-29 21:37:56 +0200 Andoni Morales Alastruey * sys/winks/gstksvideodevice.c: ksvideosrc: fix header size for muxed streams 2015-04-29 19:39:14 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparser: h265: Fix the number of tile rows/columns parsing The possible minimum value for num_tile_columns_minus1 and num_tile_rows_minus1 is zero (7.4.3.3). https://bugzilla.gnome.org/show_bug.cgi?id=748641 2015-04-29 17:20:58 +0100 Luis de Bethencourt * gst/mixmatrix/mixmatrix.c: mixmatrix: remove unused property enum items These two properties have been there since the origin of the element but they aren't used. Removing them. 2015-04-29 15:41:07 +0200 Edward Hervey * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix comparision logic We can't answer the SEEKING query if we do *not* have the manifest 2015-04-29 10:56:24 +0200 Edward Hervey * gst/aiff/Makefile.am: aiff: Re-add noinst_HEADERS instruction Was removed in the previous android cleanup commit 2015-04-28 21:43:56 +0000 Руслан Ижбулатов * sys/winks/Makefile.am: * sys/winks/gstksclock.c: * sys/winks/gstksvideosrc.c: * sys/winks/ksdeviceprovider.c: * sys/winks/ksdeviceprovider.h: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: GstDeviceProvider implementation for WIN Kernel Streaming plugin gst_ks_device_provider_probe() is a no-braier, just runs ks_enumerate_devices() and reports the results. Monitoring is a bit more tricky. We have to create a dummy message-processing window and register device change notifications for it. As kernel streaming can (and should) be used for audio capture and audio playback, this change also has certain placeholders for such. https://bugzilla.gnome.org/show_bug.cgi?id=747757 2015-04-29 02:30:05 +1000 Jan Schmidt * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Cache caps for passing to the client draw call Don't convert the GstVideoInfo to caps on every draw call, just cache the caps and pass them into the GstSample. 2015-04-29 02:20:09 +1000 Jan Schmidt * gst-libs/gst/gl/gstglupload.c: glupload: Make upload method static caps non-const. Retrieving a GstStaticCaps does a one time internal initialisation and caches it - they can't be stored as const structures. 2015-04-28 17:24:04 +0100 Tim-Philipp Müller * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusparse.c: opus: fix includes and compilation against opus in non-standard prefix https://bugzilla.gnome.org/show_bug.cgi?id=748594 2015-04-28 16:58:21 +0200 Mersad Jelacic * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: don't use deprecated gst_buffer_new_and_alloc Use the helper function available in the base class instead. https://bugzilla.gnome.org/show_bug.cgi?id=748585 2015-04-28 16:06:47 +0100 Tim-Philipp Müller * ext/libde265/libde265-dec.c: de265dec: use g_get_num_processors() if available And provide home-made fallback for older GLib versions, so that we can later find these and remove them when we bump the GLib requirement (which is certainly going to happen before 2.0). https://bugzilla.gnome.org/show_bug.cgi?id=748495 2015-04-28 16:02:27 +0100 Tim-Philipp Müller * gst/debugutils/fpsdisplaysink.c: * gst/inter/gstintertest.c: * gst/liveadder/liveadder.c: gst: remove some unnecessary glib version checks We require 2.32, no need to check for anything older than that. 2015-04-28 11:28:39 +0200 Guillaume Desmottes * gst/mxf/mxfmetadata.c: mxf: fix descriptor leak Free the existing descriptor array, if any, before replacing it. Fix leaks with the validate.file.playback.scrub_forward_seeking.test-mpeg2-mp3_mxf scenario. https://bugzilla.gnome.org/show_bug.cgi?id=748580 2015-04-28 10:13:35 +0200 Guillaume Desmottes * gst/mpegtsdemux/tsdemux.c: tsdemux: fix taglist leak If the stream which is about to be removed still has a ref on a tag list we should drop it. Fix a leak which was occasionally happening with the validate.file.playback.change_state_intensive.tron_en_ge_aac_h264_ts scenario. https://bugzilla.gnome.org/show_bug.cgi?id=748576 2015-04-27 22:44:28 +0900 Jimmy Ohn * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: fix find_subtable() return value find_subtable() returns a pointer, so return NULL and not FALSE when nothing is found. https://bugzilla.gnome.org/show_bug.cgi?id=748527 2015-04-28 14:52:36 +0200 Edward Hervey * win32/common/libgstcodecparsers.def: win32: update defs 2015-04-28 20:46:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: remove uneeded unref The call to _gl_mem_alloc_data will unref and NULLify 'dest' for us. We just need to return. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-04-28 09:37:59 +0200 Matthieu Bouron * ext/gl/gstglimagesink.c: glimagesink: Use gst_pad_get_pad_template_caps in ::get_caps() 2015-04-28 20:11:07 +1000 Matthew Waters * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixerbin.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: glupload: provide the sink template caps that could be used https://bugzilla.gnome.org/show_bug.cgi?id=746399 2015-04-27 19:28:57 -0300 Thiago Santos * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camera2.h: * tests/examples/camerabin2/gst-camera2.ui: examples: gst-camera: add zoom property to UI Add a slider to modify the zoom in camerabin 2015-04-27 18:33:37 -0300 Thiago Santos * tests/examples/camerabin2/gst-camera2.ui: examples: gst-camera: remove widgets deprecated in GTK3.0 VBox and HBox are now simply Box 2015-04-27 15:41:04 -0300 Thiago Santos * tests/examples/camerabin2/Makefile.am: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camera2.ui: examples: gst-camera: update to GTK3 When opening the .ui file it complains about being for GTK 2 and automatically updates it to GTK3. Commit this version and update the makefile 2015-04-27 13:41:44 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: remove unused code The structure is created and never used anymore. Remove it. 2015-04-27 13:24:54 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: use digitalzoom element Replace videocrop ! videoscale ! capsfilter with the digitalzoom bin that has the same pipeline internally and already updates the capsfilter automatically when caps change, removing this code from wrappercamerabinsrc and making it cleaner. 2015-04-27 21:14:02 -0300 Thiago Santos * gst/camerabin2/gstdigitalzoom.c: digitalzoom: change videocrop parameters before passing caps event Avoids one extra uneeded renegotiation if the elements are already configured to their final property values when the caps event goes through. Also avoids hitting bug https://bugzilla.gnome.org/show_bug.cgi?id=748344 2015-04-22 13:06:30 -0300 Thiago Santos * gst/camerabin2/gstdigitalzoom.c: digitalzoom: also skip internal pipeline in upstream caps query To avoid going through our capsfilter which would limit the choices. 2015-04-22 13:05:42 -0300 Thiago Santos * gst/camerabin2/gstdigitalzoom.c: digitalzoom: prevent assertion when caps is any 2015-04-21 23:10:05 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstdigitalzoom.c: * gst/camerabin2/gstdigitalzoom.h: camerabin: digitalzoom: create a bin element for digital zooming It contains videocrop ! videoscale ! capsfilter and implements digital zooming. At this moment, it is a private element of the camerabin plugin. This will remove some code used in wrappercamerabinsrc to make code clearer and digitalzoom can potentially be used by other applications in the future, it has nothing camerabin specific. 2015-04-27 10:11:41 -0400 Xavier Claessens * gst-libs/gst/gl/egl/gstglcontext_egl.c: egl: Use maximum bits per color instead of minimum https://bugzilla.gnome.org/show_bug.cgi?id=748425 2015-04-26 20:55:03 +0000 Руслан Ижбулатов * ext/libde265/libde265-dec.c: libde265: W32 thread count support This code is imported from GLib g_get_num_processors(). This function was added in 2.36 but we depend on 2.32. https://bugzilla.gnome.org/show_bug.cgi?id=748495 2015-04-26 21:00:06 +0000 Руслан Ижбулатов * ext/libde265/libde265-dec.c: libde265: Fix format string for gsize https://bugzilla.gnome.org/show_bug.cgi?id=748496 2015-04-26 21:03:45 +0000 Руслан Ижбулатов * ext/spandsp/gstspanplc.c: spandsp: Don't use the private field 'missing_samples' https://bugzilla.gnome.org/show_bug.cgi?id=748497 2015-04-27 14:56:06 +0100 Luis de Bethencourt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: remove unused property enum item The property enum item has been there since the origin of the element but it has never been used. Removing it. 2015-04-27 14:49:59 +0200 Matthieu Bouron * ext/gl/gstglfiltercube.c: glfiltercube: Don't initialize multiple shaders on renegotiation 2015-04-27 10:55:13 +0100 Luis de Bethencourt * gst/adpcmenc/adpcmenc.c: * gst/festival/gstfestival.c: * gst/games/gstpuzzle.c: * gst/id3tag/gstid3mux.c: * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/gstmvemux.c: * gst/onvif/gstrtponviftimestamp.c: * gst/overlay/gstoverlay.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: * gst/tta/gstttadec.c: * gst/vbidec/gstvbidec.c: * gst/vmnc/vmncdec.c: Rename property enums from ARG_ to PROP_ Property enum items should be named PROP_ for consistency and readability. 2015-04-27 10:24:00 +0200 Matthieu Bouron * ext/gl/gstglimagesink.c: glimagesink: Remove unused stop function 2015-04-27 16:04:50 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unref the pool in the correct place Otherwise we could hold a pool to a context that is never going to be used. https://bugzilla.gnome.org/show_bug.cgi?id=748405 2015-04-27 10:01:53 +0200 Matthieu Bouron * ext/gl/gstgltransformation.c: gltransformation: Unref shader in ::stop() 2015-04-27 15:20:56 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: gl: unref display/other-context in the correct place Otherwise state changes from PLAYING->READY->PAUSED will cause there to to be no display configured on the element. https://bugzilla.gnome.org/show_bug.cgi?id=748405 2015-04-10 14:08:43 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparsers: h265: add helpers to convert quantization matrices Add utility functions to convert quantization matrices from zig-zag scan order into raster scan order and vice-versa https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-10 14:07:56 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparser: h265: skip byte alignment bits while parsing slice header Skip the byte alignment bits as per the logic of byte_alignment() provided in hevc specification. This will fix the calculation of slice header size. https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-10 14:07:35 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparser: h265: Fix the NumDeltaPocs calculation Always use the equation provided in spec (7-57) for finding the NumDeltaPocs https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-10 14:04:17 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparser: h265: Fix the NumPocTotalCurr calculation The NumPocToalCurr should be calculated for all B and P slices. https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-10 13:59:50 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth265parser.c: codecparser: h265: Fix nal size calculation for EOS and EOB https://bugzilla.gnome.org/show_bug.cgi?id=747613 2015-04-26 21:42:03 +0200 Sebastian Dröge * ext/gl/gstglbumper.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: De-camelcase onInitFBO() vfunc 2015-04-26 21:39:06 +0200 Sebastian Dröge * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: Remove onStart/onStop vfuncs, and unused onReset() onStart/onStop are just duplicates of the basetransform ones, onReset was never called but was used everywhere when stop should've been used. 2015-04-21 09:43:58 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: gltransformation: don't initialize multiple shaders on renegotiation https://bugzilla.gnome.org/show_bug.cgi?id=748407 * delete shader if one exists * set it to NULL after unrefing 2015-04-26 21:11:17 +0200 Sebastian Dröge * ext/gl/gstglcolorconvertelement.c: glcolorconvert: Fix compiler warning gstglcolorconvertelement.c:230:19: error: unused variable 'in_structure' [-Werror,-Wunused-variable] GstStructure *in_structure = gst_caps_get_structure (caps, 0); ^ 2015-04-15 01:24:45 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: drop frames we get before we have a clock https://bugzilla.gnome.org/show_bug.cgi?id=748054 2015-04-26 20:33:41 +0200 Matthew Waters * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: Unref other context in finalize, and display in READY->NULL https://bugzilla.gnome.org/show_bug.cgi?id=748405 2015-04-19 19:16:55 +0200 Matthieu Bouron * ext/gl/gstglcolorconvertelement.c: glcolorconvert: Keep colorimetry and chroma-site fields if passthrough https://bugzilla.gnome.org/show_bug.cgi?id=748141 2015-04-26 18:04:16 +0100 Tim-Philipp Müller * Android.mk: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/hls/Makefile.am: * ext/mpg123/Makefile.am: * ext/smoothstreaming/Makefile.am: * ext/x265/Makefile.am: * gst-libs/gst/adaptivedemux/Makefile.am: * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/uridownloader/Makefile.am: * gst/adpcmdec/Makefile.am: * gst/adpcmenc/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/audiofxbad/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/autoconvert/Makefile.am: * gst/bayer/Makefile.am: * gst/camerabin2/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/coloreffects/Makefile.am: * gst/dataurisrc/Makefile.am: * gst/debugutils/Makefile.am: * gst/dvbsuboverlay/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/freeverb/Makefile.am: * gst/frei0r/Makefile.am: * gst/gaudieffects/Makefile.am: * gst/gdp/Makefile.am: * gst/geometrictransform/Makefile.am: * gst/hdvparse/Makefile.am: * gst/id3tag/Makefile.am: * gst/inter/Makefile.am: * gst/interlace/Makefile.am: * gst/ivfparse/Makefile.am: * gst/ivtc/Makefile.am: * gst/jp2kdecimator/Makefile.am: * gst/jpegformat/Makefile.am: * gst/librfb/Makefile.am: * gst/liveadder/Makefile.am: * gst/midi/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegpsmux/Makefile.am: * gst/mpegtsdemux/Makefile.am: * gst/mve/Makefile.am: * gst/mxf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/onvif/Makefile.am: * gst/patchdetect/Makefile.am: * gst/pcapparse/Makefile.am: * gst/pnm/Makefile.am: * gst/rawparse/Makefile.am: * gst/rtp/Makefile.am: * gst/sdi/Makefile.am: * gst/sdp/Makefile.am: * gst/segmentclip/Makefile.am: * gst/siren/Makefile.am: * gst/smooth/Makefile.am: * gst/speed/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/videofilters/Makefile.am: * gst/videomeasure/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videosignal/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * gst/yadif/Makefile.am: * sys/androidmedia/Makefile.am: Remove obsolete Android build cruft This is not needed any longer. 2015-04-19 00:55:50 +0900 Yujin Lee * sys/applemedia/plugin.m: vtdec: fix build error with clang This commit fixes a simple build error by clang with by clang with [-Werror,-Wtautological-pointer-compare] options. https://bugzilla.gnome.org/show_bug.cgi?id=748110 2015-04-26 19:08:00 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Only answer the duration query in non-live mode 2015-04-25 18:50:52 +0200 Stefan Sauer * gst/audiovisualizers/gstdrawhelpers.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstspectrascope.h: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstsynaescope.h: * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: * gst/audiovisualizers/plugin.c: audiovisualizer: fix the license from GPL to LGPL This was a copy'n'paste buf in the initial commit done by myself. 2015-04-25 18:46:41 +0200 Stefan Sauer * gst/audiovisualizers/gstaudiovisualizer.c: * gst/audiovisualizers/gstaudiovisualizer.h: audiovisualizer: fix the license from GPL to LGPL This was a copy'n'paste buf in the initial commit done by myself. 2015-04-25 13:38:08 +0100 Tim-Philipp Müller * tests/examples/opencv/Makefile.am: * tests/examples/opencv/gst_element_print_properties.c: * tests/examples/opencv/gst_element_print_properties.h: * tests/examples/opencv/gstmotioncells_dynamic_test.c: * tests/examples/opencv/gstmotioncells_dynamic_test.h: examples: motioncells: remove GPL3 code we don't need If 95% of the code of an example app consists of GObject code, maybe that's defeating the point a little. So just remove a lot of that and trim down the example to the absolute minimum. Also removes the last remaining GPL3 licensed code in -bad. 2015-04-25 12:52:04 +0100 Tim-Philipp Müller * tests/examples/opencv/gstmotioncells_dynamic_test.c: examples: motioncells: simplify property setting 2015-04-25 12:48:28 +0100 Tim-Philipp Müller * tests/examples/opencv/gstmotioncells_dynamic_test.c: examples: motioncells: port to 1.x 2014-11-20 00:33:44 +0100 Robert Jobbagy * tests/examples/opencv/gstmotioncells_dynamic_test.c: * tests/examples/opencv/gstmotioncells_dynamic_test.h: examples: motioncells: relicense opencv example to LGPLv2 2015-04-24 14:04:55 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: add tests for GstPhotography image capture GstPhotography enables new paths in wrappercamerabinsrc that allows the source to be notified about the capture caps and provide an alternative caps if desired bypassing the negotiation (this doesn't seem like a good idea these days). To make sure it keeps working until we remove it from the API in favor of standard caps negotiation features this test was added. It adds 3 extra tests with a simple test source that will: 1) Test that capturing with ANY caps work 2) Test that capturing with a fixed caps work 3) Test that capturing with a fixed caps and having the source pick a different resolution from GstPhotography API works by having wrappercamerabinsrc crop the capture to the final requested dimensions 2015-04-24 14:19:50 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: Rework cropping for zoom and dimension reduction wrappercamerabinsrc has a videocrop element to be used for zooming and for cropping when input caps is different when used with the GstPhotography interface. The zooming part needs the following elements: capsfilter ! videocrop ! videoscale ! capsfilter The capsfilters should always have the same caps to ensure the zooming is done and preserves dimensions, unless when it is needed to do more cropping due to input dimensions those caps need to be modified accordingly to preserve the output dimensions. This, however, makes it hard to get caps negotiation to work properly as we need to have different caps in the capsfilters to account for the extra cropping needed. It could be simple for fixed caps but it gets tricky with unfixed ones. To solve this, this patch splits the zooming and dimension reduction cropping into 2 separate videocrop elements. The first one does the dimension cropping, which is only needed when the GstPhotography API is used and the source provides a caps that is different than what is requested, while the second is dedicated to zoom crop only. The first part of the pipeline goes from: src ! videoconvert ! capsfilter ! videocrop ! videoscale ! capsfilter to src ! videocrop ! videoconvert ! capsfilter ! videocrop ! videoscale ! capsfilter It might add an extra overhead in the image capture as the image might need to be cropped twice but this can be solved by enabling videocrop to use crop metas so only the later one does the real cropping. It also makes the code a bit simpler. 2015-04-24 14:17:51 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: remove obsolete comment This is already handled in another place and doesn't make sense in the function context anymore 2015-04-24 14:16:24 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: error out if source fails to prepare for capture Post an error when preparing the image capture through photography interface fails 2015-04-24 14:13:34 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: intersect instead of compare for equality Intersect is enough to check if the requested caps are compatible with what the source is going to provide. Equality will be too strict. 2015-04-24 14:13:16 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: fix typo 2015-04-24 02:22:54 -0300 Thiago Santos * tests/check/elements/camerabin.c: camerabin: tests: remove unused macros Those macros were with the wrong name (likely a copy n paste mistake) and were unused. 2015-04-23 14:28:11 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: remove obsolete check for 0.10 feature 2015-04-24 16:48:23 +0100 Luis de Bethencourt * gst/audiobuffer/gstaudioringbuffer.c: * gst/coloreffects/gstchromahold.c: * gst/debugutils/gstcompare.c: * gst/gaudieffects/gstgaussblur.c: * gst/pcapparse/gstpcapparse.c: * gst/rtp/gstrtph265pay.c: * gst/sdp/gstsdpdemux.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: remove unused enum items PROP_LAST This were probably added to the enums due to cargo cult programming and are unused. 2015-04-24 17:13:10 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: balance change_state display ref/unref the display was being unreffed on the incorrect state change causing invalid state when changing from PLAYING/PAUSED->READY->PAUSED/PLAYING. 2015-04-23 17:43:36 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't claim to be live when answering the LATENCY query Even for "live" streams we are not live in the GStreamer meaning of the word. We don't produce buffers that are timestamped based on their "capture time" and our clock, but just based on whatever timestamps the stream might contain. Also even if we wanted to claim to be live, that wouldn't work well as we would have to return GST_STATE_CHANGE_NO_PREROLL when going from READY to PAUSED, which we can't. We first need data to know if we are "live" or not. 2015-04-23 17:39:46 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Use the downloader of the base class instead of creating our own The one of the base class is completely unused because we override all the downloading here, so let's just use that one instead. 2015-04-23 17:36:49 +0200 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Don't error out if we can't match variant playlists after updating It's better to just select some random variant playlist instead of stopping, chances are that it's still continuing to work and we might just have to select a different variant again later. 2015-04-23 17:33:04 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Fix how the playlists are refreshed We should only refresh the currently selected variant playlist (if any, otherwise the main playlist), not the main playlist. And only try to refresh the main playlist if updating the variant playlist fails. Some servers (Wowza) use the request of the main playlist to create a "session", which is then part of the URI of the variant playlist and also the fragments. Refreshing the main playlist would generate a new session, and the server rate limits that usually. And after a few retries the server just kicks us out. Also as a side effect we now use the same downloader for all playlists, so that we only have 2 instead of 3 connections to the server. And also previously we just ignored the downloaded data from the main playlist that the base class gave to us. 2015-04-23 17:22:11 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/hls/gsthlsdemux.c: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Allow subclasses to override how a new manifest would be downloaded 2015-04-23 17:02:44 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: Expose downloader This allows subclasses to use it and share connections if possible. 2015-04-23 16:43:11 +0100 Tim-Philipp Müller * .gitignore: Update .gitignore 2015-04-23 16:40:49 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: define GST_CHECK_TEST_ENVIRONMENT_BEACON Make sure the test environment is set up. https://bugzilla.gnome.org//show_bug.cgi?id=747624 2015-04-23 16:39:20 +0100 Tim-Philipp Müller * configure.ac: configure: bump automake requirement to 1.14 and autoconf to 2.69 This is only required for builds from git, people can still build tarballs if they only have older autotools. https://bugzilla.gnome.org//show_bug.cgi?id=747624 2015-04-23 16:47:40 +0200 Matthieu Bouron * ext/gl/gstgluploadelement.c: glupload: Release glupload buffer when caps are changed https://bugzilla.gnome.org/show_bug.cgi?id=748371 2015-04-23 11:47:37 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.c: gaudi: don't run gaussian function if sigma is 0 2015-04-22 19:28:39 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: handle too short segments When the segment is very short it might be the case that the typefinding fails and when finishing the segment hlsdemux would consider the remaining data (pending_buffer) as an encryption leftover. This patch fixes it and makes sure an error is properly posted if typefind failed by refactoring buffer handling to a function and using it from the data_received and finish_fragment functions. 2015-04-22 19:04:43 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: use correct variable type gst_buffer_resize needs gssize and not gsize. This makes gdb print it correctly when debugging. 2015-04-22 17:08:09 +0200 Josep Torra * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: fix mode autodetection The autodetection mode was broken because a race condition in the input mode setting. The mode could be reverted back when it was replaced in the streaming thread by the old mode in the middle of mode changed callback. 2015-04-22 17:04:25 +0200 Josep Torra * sys/decklink/gstdecklink.cpp: decklink: do not repeat first video format in caps template The first entry in the modes array is used as default mode for autodetection. There's no need to copy it into the caps template. 2015-04-22 15:04:03 +0100 Luis de Bethencourt * gst/gaudieffects/gstexclusion.c: gaudi: fix to 30780db1 The second check for (factor == 0) creeped in the last commit. Apologies. 2015-04-22 14:30:56 +0100 Luis de Bethencourt * gst/gaudieffects/gstexclusion.c: gaudi: fix exclusion's factor range Avoid dividing by zero when the factor is zero. Instead, output a buffer with all color values as zero. 2015-04-22 14:15:13 +0100 Luis de Bethencourt * gst/gaudieffects/gstsolarize.c: gaudi: remove floor variable in solarize Floor variable has no effect and it isn't worth it to have it adjustable. 2015-04-22 13:55:06 +0100 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstdodge.h: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: gaudi: remove unused property 2015-04-22 18:54:45 +0900 Vineeth T M * ext/gl/gstglmixer.c: glmixer: Possible null pointer dereference While printing error message when context fails, error variable is not being used anymore so it will lead to null pointer dereference https://bugzilla.gnome.org/show_bug.cgi?id=748287 2015-04-22 10:38:19 +0200 Sebastian Dröge * INSTALL: Remove INSTALL file autotools automatically generate this, and when using different versions for autogen.sh there will always be changes to a file tracked by git. 2015-04-22 10:38:13 +0200 Sebastian Dröge * LICENSE_readme: Remove LICENSE_readme It's completely outdated and just confusing, better if people are forced to look at the actual code in question than trusting this file. 2015-04-21 22:04:56 +0200 Sebastian Dröge * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Don't stop all tasks and streams from the update task on errors It will deadlocks as we will then join() the update task from itself. Instead just post an actual error message on the bus and only stop the update task. The application is then responsible for shutting down the element, and thus all the other tasks and everything, based on the error message it gets. 2015-04-21 18:29:36 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Fix seeking We also have to update the current_file GList pointer in the M3U playlist client, otherwise we are just continuing playback from the current position instead of seeking. 2015-04-21 18:05:44 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Don't call unlock() just to call lock() immediately afterwards 2015-04-20 08:21:32 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Reset zoom element caps to go to viewfinder mode Avoids not-negotiated failures related to using image capture caps still when adjusting to go back to viewfinder. 2015-04-20 08:20:37 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: add test for capture with different caps Adds a test to verify that viewfinder and image capture caps can be set to non-intersecting caps and still work. https://bugzilla.gnome.org/show_bug.cgi?id=724868 2015-04-20 08:42:56 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: fix leak of drain query gst_pad_peer_query doesn't take ownership of the query object 2015-04-20 08:42:48 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: Refactor internal pipeline Remove tee and output-selector and just link the source pad to the outputs we want as needed. The way we need to prioritize caps negotiation and allocation queries depending on the mode enabled is too custom to be handled using tee and output-selector. This provides more flexibility and doesn't get in the way of proper handling of negotiation and allocation queries. 2015-04-05 20:18:56 +0200 Michał Dębski * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstopengl.c: gleffects: Create element for each effect https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-22 11:22:52 +0100 Michał Dębski * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectlaplacian.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterlaplacian.h: * ext/gl/gstopengl.c: gleffects: Merge laplacian filter into effects https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-22 11:20:49 +0100 Michał Dębski * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectsobel.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglfiltersobel.h: * ext/gl/gstopengl.c: gleffects: Merge sobel filter into effects https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-22 11:13:30 +0100 Michał Dębski * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectblur.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfilterblur.h: * ext/gl/gstopengl.c: gleffects: Merge blur filter into effects https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-21 23:50:33 +0100 Michał Dębski * ext/gl/effects/gstgleffectglow.c: * ext/gl/gstglfilterblur.c: gleffects: Correct attributes for hconv and vconv shaders Width and height were switched for glow shaders. For blur filter attributes names were obsolete. https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-03-21 23:21:13 +0100 Michał Dębski * ext/gl/effects/gstgleffectssources.c: gleffects: Fix fisheye shader - pass float to sqrt On OSX passing literal int to sqrt() in GLSL results in error. https://bugzilla.gnome.org/show_bug.cgi?id=746209 2015-04-21 07:28:58 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: gltransformation: fix shader memory leak 2015-04-21 12:25:11 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: glwindow: track context activation properly We only need to deactivate/reactivate the context iff it was already active. 2015-04-21 12:19:46 +1000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gldisplay: synchronize the searching and creation of GstGLContext's Ootherwise we could end up with multiple elements in different chains each creating a context. Fixes context creation with glvideomixer. 2015-04-20 14:35:19 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Remove dead code The detection for missing format/alignment is done way before this codepath is reached (at which point we have already decided of a format and alignment). CID #1232800 2015-01-07 16:26:57 +0000 Edward Hervey * ext/opencv/gsthanddetect.c: handdetect: remove unneeded check Variable hands is already checked to contain a value previously at the beginning of the current block. There is no need to check again. This is logically dead code. CID 1197693 2015-04-20 14:20:05 +0200 Edward Hervey * sys/shm/shmpipe.c: shmpipe: Ensure string received from recv() is NULL-terminated We will be doing string operations on it later. CID #1292830 2015-04-20 11:30:10 +0100 Luis de Bethencourt * gst/mpegtsdemux/tsdemux.c: tsdemux: clean assignment typo No need to set the value twice. https://bugzilla.gnome.org/show_bug.cgi?id=745102 CID #295122 2015-04-20 10:57:41 +0100 Luis de Bethencourt * gst/mpegtsdemux/tsdemux.c: tsdemux: remove dead code position of GstSegment is an unsigned int64, it can never be below zero. CID #1295123 2015-02-09 11:29:46 +0530 Vineeth T M * gst/fieldanalysis/gstfieldanalysis.c: fieldanalysis: exception when block width to 0 When block width property is set to 0, exception occurs. This happens due to divide by zero errors in calculations. block width property can never be 0. Hence adjusting the minimum value to 1. https://bugzilla.gnome.org/show_bug.cgi?id=744188 2015-04-15 15:22:37 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: fix caps leak in gst_gl_mixer_pad_sink_getcaps() Caps refcounting was all wrong in this function. Rewrote it and add some comments to make it clearer. Fix caps leaks with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747915 Signed-off-by: Guillaume Desmottes 2015-04-20 17:08:23 +1000 Alessandro Decina * sys/applemedia/avfvideosrc.m: * sys/applemedia/corevideotexturecache.h: * sys/applemedia/corevideotexturecache.m: * sys/applemedia/vtdec.c: applemedia: avoid implicit color conversions Rework the GL texture code a little to avoid implicit color conversion inside AVF/VT on both iOS and OSX. 2015-04-19 01:15:07 +0300 Ilya Konstantinov * sys/applemedia/corevideotexturecache.m: corevideotexturecache: free texture cache on iOS https://bugzilla.gnome.org/show_bug.cgi?id=748122 2015-04-19 01:21:40 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: check for failure to create buffer gst_core_media_buffer_new and gst_core_video_texture_cache_get_gl_buffer can fail for various platform reasons. https://bugzilla.gnome.org/show_bug.cgi?id=748122 2015-04-19 13:12:05 +0900 Yujin Lee * sys/applemedia/avfvideosrc.m: avfvideosrc: fix build failure with clang Use fabs for floating point input. https://bugzilla.gnome.org/show_bug.cgi?id=748128 2015-04-17 13:57:38 -0600 Olivier Crête * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Remove unused latency query code The behavior changes based on the type of segment, not on the liveness of the source. 2015-04-17 13:55:26 -0600 Olivier Crête * gst/mpegtsdemux/tsdemux.c: tsdemux: Cleanup latency query handling The minimum latency is always 0 or more. And we should requery upstream as it may have changed. 2014-07-17 10:53:30 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: Handle queue/release errors non-fatal They can happen sometimes as a transient problem, e.g. if there is a problem in the stream. Only handle them as fatal if many of them happen in a row. 2015-04-11 16:53:38 +0000 Руслан Ижбулатов * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: * ext/opencv/gstcvdilate.c: * ext/opencv/gstcvdilate.h: * ext/opencv/gstcvdilateerode.h: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcvequalizehist.h: * ext/opencv/gstcverode.c: * ext/opencv/gstcverode.h: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsmooth.h: * ext/opencv/gstcvsobel.c: * ext/opencv/gstcvsobel.h: * ext/opencv/gstdisparity.h: * ext/opencv/gstedgedetect.c: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: * ext/opencv/gsthanddetect.c: * ext/opencv/gsthanddetect.h: * ext/opencv/gstmotioncells.h: * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvutils.h: * ext/opencv/gstopencvvideofilter.h: * ext/opencv/gstpyramidsegment.h: * ext/opencv/gstretinex.c: * ext/opencv/gstretinex.h: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: * ext/opencv/gstskindetect.c: * ext/opencv/gstskindetect.h: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextoverlay.h: opencv: Change opencv plugin to use opencv2-style includes If old opencv1-style legacy include directory is available, this change becomes purely cosmetic (maybe will compile a bit faster). It becomes an FTBFS fix when opencv1-style include directory is missing (possibly because opencv package maintainer decided not to pack it). https://bugzilla.gnome.org/show_bug.cgi?id=747705 2015-04-12 00:56:48 +0000 Руслан Ижбулатов * configure.ac: opencv: Change configure test to check for OpenCV2 headers * Checks for opencv2 headers only, not for legacy opencv1 headers * Checks for every opencv2 header that the implementation needs, not just highgui_c.h https://bugzilla.gnome.org/show_bug.cgi?id=725163 2015-04-17 05:12:10 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: get connection and input clock early 2015-04-17 15:32:56 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Unify debug statements Use 0x%04x for PIDs 2015-04-17 15:30:29 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Unify duration querying code And properly use it in the SEEKING query. Fixes seeking with gst-play 2015-04-16 14:17:04 +0200 Guillaume Desmottes * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix caps leak when early returning https://bugzilla.gnome.org/show_bug.cgi?id=747993 Signed-off-by: Guillaume Desmottes 2015-04-16 14:21:16 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: unref owned caps when finalizing the mixer Fix a caps leak with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747915 Signed-off-by: Guillaume Desmottes 2015-04-15 15:16:33 +0200 Guillaume Desmottes * ext/gl/gstglmixer.c: glmixer: pass the proper free function to frames and buffers array 'array_buffers' contain borrowed GstBuffer and so shouldn't have a free function. 'frames' is the one containing GstGLMixerFrameData and so should use _free_glmixer_frame_data as free function. Fix GstGLMixerFrameData leaks with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747913 Signed-off-by: Guillaume Desmottes 2015-04-17 15:20:12 +0200 Sebastian Dröge * ext/gl/gstgldownloadelement.c: gldownloadelement: Download *from* OpenGL, not into 2015-04-17 09:24:12 +0200 Robert Swain * ext/openh264/gstopenh264enc.cpp: openh264enc: Add complexity property for speed/quality tradeoff 2015-04-17 14:24:28 +0200 Matthieu Bouron * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: Make gst_gl_context_egl_activate fail if the old surface could not be destroyed https://bugzilla.gnome.org/show_bug.cgi?id=746251 2015-04-17 10:38:16 +0200 Matthieu Bouron * ext/gl/gstgluploadelement.c: gluploadelement: Unref GstGLUpload object and caps in ::stop() Fix leak of the GstGLUpload object. https://bugzilla.gnome.org/show_bug.cgi?id=748033 2015-04-17 14:09:47 +0200 Sebastian Dröge * ext/gl/gstglbasemixer.c: * ext/gl/gstglfilterbin.c: * ext/gl/gstglmixer.c: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsrcbin.c: gl: Remove some empty ::finalize() implementations 2015-04-17 14:06:03 +0200 Sebastian Dröge * ext/gl/gstgldownloadelement.c: gldownloadelement: Fix element description 2015-04-17 14:05:44 +0200 Sebastian Dröge * ext/gl/gstgldownloadelement.c: gldownloadelement: Remove unused ::finalize() implementation 2015-04-17 14:03:21 +0200 Sebastian Dröge * ext/gl/gstglcolorconvertelement.c: glcolorconvertelement: Also unref caps in ::stop() already They are not useful anymore afterwards, so keeping them until ::finalize() might only cause someone to use them later and then fail. 2015-04-15 14:49:02 +0200 Guillaume Desmottes * ext/gl/gstglcolorconvertelement.c: glcolorconvertelement: fix GstGLColorConvert leak convert->convert was never unreffed. This can be reproduce with the validate.file.glvideomixer.simple.play_15s.synchronized scenario. https://bugzilla.gnome.org/show_bug.cgi?id=747911 2015-04-16 22:43:54 +1000 Jan Schmidt * ext/apexsink/gstapexraop.c: apexsink: Fix buffer overflow, in case anyone ever ports it. Fix a simple buffer overflow - 16 bytes isn't enough to hold the string representation of a gulong on x86_64. I guess the intent was to generate a 32 bit random key, so let's do that. Only matters if anyone ever ports the sink to 1.x https://bugzilla.gnome.org/show_bug.cgi?id=676524 2015-04-16 13:35:00 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegdemux.c: mpegdemux: fix pad leak when not adding a new pad after no-more-pads 2015-04-09 17:35:55 +0100 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: fix segment position tracking for the general case Different streams can have different PTS/DTS bases, and some streams may not even have DTS. https://bugzilla.gnome.org/show_bug.cgi?id=745102 2015-04-16 10:42:45 +0200 Matthieu Bouron * gst-libs/gst/gl/egl/gstglcontext_egl.c: glcontext: Make gst_gl_context_egl_activate fail if the surface could not be created Also add some error logging. 2015-04-15 21:07:35 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Don't unref buffer that was unreffed just a few lines before already 2015-04-11 04:20:43 +0000 Руслан Ижбулатов * docs/libs/Makefile.am: Add adaptivedemux, badvideo and badbase to the link-list for the docscanner https://bugzilla.gnome.org/show_bug.cgi?id=747697 2015-04-12 01:58:31 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: remove unused variables Complement commit 5496fd3e75e65a4e387715d0ba0740790aefa5f6 by removing the involved variables. 2015-04-14 20:33:25 +1000 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix GL negotiation 2015-04-14 18:05:31 +1000 Alessandro Decina * sys/applemedia/avfvideosrc.m: avfvideosrc: log timestamps 2015-04-13 11:55:42 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: subtract time spent in AVF queues The time spent in AVF queues was being incorrectly added to running time rather than subtracted. 2015-04-11 07:38:57 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: fix GL texture negotiation GST_VIDEO_GL_TEXTURE_UPLOAD_META_API_TYPE should no longer be used. Instead, just get the GL context. https://bugzilla.gnome.org/show_bug.cgi?id=747352 2015-04-13 19:40:31 +0200 Sebastian Dröge * ext/dtls/gstdtlsdec.c: dtlsdec: Fix typo 2015-04-13 19:40:22 +0200 Sebastian Dröge * ext/dtls/gstdtlssrtpdec.c: dtlssrtpdec: Add some more debug output 2015-04-13 19:40:03 +0200 Sebastian Dröge * ext/srtp/gstsrtpdec.c: srtpdec: Add some more debug output 2015-04-10 09:34:01 +0900 Yujin Lee * ext/dash/gstdashdemux.c: dashdemux: enable playback of content with text streams There is a playback error when trying to play a content that has 'application' mimeType. This commit prevents an exception from setup text streams. https://bugzilla.gnome.org/show_bug.cgi?id=747525 2015-04-12 13:01:56 +0200 Sebastian Dröge * sys/winks/gstksvideosrc.c: winks: Reset DTS to GST_CLOCK_TIME_NONE Otherwise we might get a previous DTS set from a recycled buffer that we get back from a buffer pool, which then confuses synchronization. https://bugzilla.gnome.org/show_bug.cgi?id=747722 2015-03-28 15:44:43 +0100 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: amc: Use new JNI utils almost everywhere 2015-03-28 15:48:28 +0100 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: amc: Allow creating global and local references of objects 2015-03-28 15:21:02 +0100 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: amc: Make GError argument order more consistent 2015-03-28 15:08:15 +0100 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: amc: Add helper function for getting a direct buffer array 2015-03-28 15:08:02 +0100 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: amc: Java longs are gint64s 2015-03-28 14:31:41 +0100 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: amc: Improve JNI utilities and add some missing ones We now fill GErrors for everything that could throw an exception, and method calls now always return a gboolean and their value in an out-parameter to distinguish failures from other values. 2015-04-11 19:35:48 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix last commit 2015-04-11 19:17:00 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: gl: Remove iOS/EAGL workaround for R/RG textures This should be unneeded now after https://bugzilla.gnome.org/show_bug.cgi?id=732507 2015-04-11 19:14:34 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Add correct check for RG/R textures in glcolorconvert too https://bugzilla.gnome.org/show_bug.cgi?id=732507 2015-04-11 12:12:57 +0100 Tim-Philipp Müller * sys/winks/ksvideohelpers.c: winks: fix debug message parameter format The first part of the GUID structure is a DWORD which is defined as an unsigned long, so we need to either cast or use %08lx. 2015-04-10 20:25:49 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: Take buffer directly from the adapter No need to make a copy into a new buffer, just take the data from the adapter. 2015-04-10 20:15:52 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: pcapparse: Produce GstBufferList 2015-04-10 16:23:25 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: remove unused attribute and related pad probe The variable was never set to true and can be removed along with the probe in which it used to act 2015-03-31 17:10:45 +0100 Anton Obzhirov * gst-libs/gst/gl/gstglbasefilter.c: glbasefilter: avoid segfault when gl platform is not available https://bugzilla.gnome.org/show_bug.cgi?id=747124 2015-04-09 16:20:44 +0100 Vincent Penquerc'h * tests/check/elements/audiomixer.c: tests: fix type mismatch in varargs passing A bitmask is 64 bits, but integer immediates are passed as int in varargs, which happen to be 32 bit with high probability. This triggered a valgrind jump-relies-on-uninitalized-value report well away from the site, since it doesn't trigger on stack accesses, and there must have been enough zeroes to stop g_object_set at the right place. 2014-08-20 13:46:12 +0100 Vincent Penquerc'h * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: handle seeks with no target (ie, keep current position) Such seeks are used to change playback rate and we do not want to alter the position in that case, so we bypass the flush/seek logic, and set things up so a new segment is scheduled to be regenerated. https://bugzilla.gnome.org/show_bug.cgi?id=735100 2015-03-26 13:46:16 +0000 Vincent Penquerc'h * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: tsparse: fix timestamps not updating after a PMT change The PCRs stay locked onto the same PID as before the change, but the relevant PID has no reason to be the same after it. https://bugzilla.gnome.org/show_bug.cgi?id=745102 2015-03-24 12:56:53 +0000 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: send new segment when a stream is added This will happen when the PMT changes, replacing streams with new ones. In that case, we need to accumulate the running time from the previous chain in the segment base. https://bugzilla.gnome.org/show_bug.cgi?id=745102 2015-03-09 09:56:38 +0000 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: keep track of current position This allows seeking to correctly set the base on the segment. https://bugzilla.gnome.org/show_bug.cgi?id=745102 2015-04-09 15:41:57 +0200 Edward Hervey * tests/check/Makefile.am: check: Don't run the state change test on the dtls elements There isn't really any way to test the elements standalone. 2015-04-08 19:29:40 -0700 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Remove broken timestamps-going-backwards check This would've also triggered if for some reason the segment was updated in such a way that PTS went backwards, but the running time increased. Like what happens when non-flushing seeks are done. We're doing a proper buffer-from-the-past check a few lines below based on the running time, which is the only time we should care about here. 2015-04-08 18:51:50 +0200 Andoni Morales Alastruey * sys/winks/gstksvideodevice.c: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: ksvideosrc: fix support for DV devices 2015-02-10 13:32:00 +0100 Andoni Morales Alastruey * sys/winks/kshelpers.c: ksvideosrc: only list capture devices 2015-04-08 16:46:11 +0200 Edward Hervey * common: * tests/check/Makefile.am: tests: Use AM_TESTS_ENVIRONMENT Needed by the new automake test runner 2015-04-08 10:52:17 +0530 Arun Raghavan * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: opensles: Explicitly specify layout=interleaved in caps This is fine to hard-code. Section 9.1.8 of the OpenSL ES 1.1 specification, it is expected that multi-channel audio is always interleaved. 2015-04-07 15:57:30 +0200 Edward Hervey * configure.ac: configure: Depend on openh264 >= 1.3.0 Required for the version check header, as agreed upon on IRC 2015-04-05 05:37:09 +0300 Ilya Konstantinov * sys/applemedia/avfvideosrc.m: avfvideosrc: fix setting of buffer offset end Don't set offset end to random values off the stack. https://bugzilla.gnome.org/show_bug.cgi?id=747352 2015-04-07 11:09:38 +0200 Edward Hervey * ext/openh264/gstopenh264enc.cpp: open264: Fix GType/gsize usage gstopenh264enc.cpp:108:7: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 2015-04-07 11:21:55 +0200 Edward Hervey * ext/openh264/gstopenh264enc.cpp: openh264: Detect 1.4 API change As mentionned in release notes : Added new Sps/Pps strategies for real-time video (replace the old setting variable 'bEnableSpsPpsIdAddition' with 'eSpsPpsIdStrategy') 2015-04-06 20:28:22 -0700 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Disconnect mouse/key event signal handlers from window when shutting down context 2015-04-06 20:24:06 -0700 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Guard against disconnecting invalid signal ids 2015-03-26 11:52:33 +0100 Guillaume Desmottes * gst/mxf/mxfdemux.c: mxfdemux: fix memory leak Reset the internal segment before freeing it. mxf_index_table_segment_parse() allocates data inside the segment (like segment->delta_entries) which have to be freed using mxf_index_table_segment_reset(). https://bugzilla.gnome.org/show_bug.cgi?id=746803 2015-04-04 10:56:56 -0300 Thiago Santos * ext/hls/gsthlssink.c: hlssink: write the playlist end marker on EOS Catch EOS from the multifilesink and add the endlist marker to the playlist when it happens https://bugzilla.gnome.org/show_bug.cgi?id=747319 2015-03-29 17:53:23 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/base/gstaggregator.c: aggregator: document gap handling behavior https://bugzilla.gnome.org/show_bug.cgi?id=746249 2015-03-27 19:36:42 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/base/gstaggregator.c: aggregator: drop stale white space at warning 2015-03-27 19:28:05 -0300 Reynaldo H. Verdejo Pinochet * tests/check/libs/aggregator.c: aggregator: fix typo in test suite 2015-03-27 18:32:27 -0300 Reynaldo H. Verdejo Pinochet * tests/check/libs/aggregator.c: aggregator: add gap event handling unit test https://bugzilla.gnome.org/show_bug.cgi?id=746249 2015-03-17 22:13:06 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/base/gstaggregator.c: aggregator: implement gap handling https://bugzilla.gnome.org/show_bug.cgi?id=746249 2015-04-03 18:57:58 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From bc76a8b to c8fb372 2015-04-03 11:46:12 +0530 Arun Raghavan * ext/opus/gstopusenc.c: opus: Fix incorrect fall-through condition in property getter 2012-04-27 18:29:14 +0200 Guillaume Emont * sys/shm/gstshmsrc.c: * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shmsink: add an shm-area-name property The shm-area-property tells the name of the shm area used by the element. This is useful for cases where shmsink is not able to clean up (calling shm_unlink()), e.g. if it is in a sandbox. https://bugzilla.gnome.org/show_bug.cgi?id=675134 2015-04-01 22:10:11 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Unify downstream flow return and flushing Also means that having a non-OK downstream flow return wakes up the chain functions. https://bugzilla.gnome.org/show_bug.cgi?id=747220 2015-04-01 21:45:01 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Flushing is always in pad lock, no need to atomics The usage of atomics was always doubtful as it was used to release a GCond https://bugzilla.gnome.org/show_bug.cgi?id=747220 2015-04-01 21:38:11 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Reset pending_eos on pad flush https://bugzilla.gnome.org/show_bug.cgi?id=747220 2015-04-01 21:37:25 -0400 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Unify code to set a pad flushing https://bugzilla.gnome.org/show_bug.cgi?id=747220 2015-04-02 18:05:55 +1100 Alessandro Decina * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: fix rendering on iOS Stop assuming that the handle has been set by the time ->create_context is called. After bc7a7259f357b0065dd94e0668b5a895d83fa53a set_window_handle always happens after ->create_context in fact. See also https://bugzilla.gnome.org/show_bug.cgi?id=745090 2015-03-06 21:12:52 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Query latency on first incoming buffer. And keep on querying upstream until we get a reply. Also, the _get_latency_unlocked() method required being calld with a private lock, so removed the _unlocked() variant from the API. And it now returns GST_CLOCK_TIME_NONE when the element is not live as we think that 0 upstream latency is possible. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-04-01 20:32:41 -0400 Olivier Crête * gst/audiomixer/gstaudiomixer.c: * tests/check/elements/audiomixer.c: audiomixer: Allow downstream caps with a non-default channel-mask Instead of failing, take the downstream channel mask if the channel count is 1. 2015-03-31 16:27:00 +0200 Edward Hervey * ext/gl/gstglvideomixer.c: glvideomixer: Don't use context if not present Avoids assertions at runtime 2015-03-31 11:24:57 +0200 Edward Hervey * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/mpegts/Makefile.am: introspection: Don't use g-ir-scanner cache at compile time It pollutes user directories and we don't need to cache it https://bugzilla.gnome.org/show_bug.cgi?id=747095 2015-03-31 10:53:55 +0100 Victor Toso * configure.ac: * sys/directsound/Makefile.am: * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Implement volume and mute Using the MixerAPI as IDirectSoundCaptureBuffer doesn't implement volume control. https://bugzilla.gnome.org/show_bug.cgi?id=744383 2015-03-30 13:49:01 +0100 Anton Obzhirov * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfiltersobel.c: gleffects: port all effects to GLES2.0 https://bugzilla.gnome.org/show_bug.cgi?id=745955 2015-03-28 11:40:14 -0300 Thiago Santos * ext/hls/gsthlssink.c: hlssink: implement a chain_list to request key unit for segments upstream might send buffer lists instead of buffers and hlssink's probe won't get called and a new segment won't be created when needed. This patch fixes it by adding a chain_list function to the sink pad that will just pass through the whole bufferlist if no segment needs to be requested at the moment or convert the list into buffers to check the proper timestamp to request the next key-unit that will start the segment. https://bugzilla.gnome.org/show_bug.cgi?id=746906 2015-03-28 17:28:34 +0100 Mark Nauwelaerts * gst/mxf/mxfdemux.c: mxfdemux: resurrect some flow return handling https://bugzilla.gnome.org/show_bug.cgi?id=744572 2015-03-28 17:28:26 +0100 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: resurrect some flow return handling https://bugzilla.gnome.org/show_bug.cgi?id=744572 2015-03-27 00:27:34 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: do not try to advance fragment if there is none It might return OK from subclasses and it could cause a bitrate renegotiation. For DASH and MSS that is ok as they won't expose new pads as part of this but it can cause issues for HLS as it will expose new pads, leading to pads that will only have EOS that cause decodebin to fail https://bugzilla.gnome.org/show_bug.cgi?id=745905 2015-03-24 13:57:54 -0400 Olivier Crête * ext/opus/gstrtpopuspay.c: rtpopuspay: Forward stereo preferences from caps upstream https://bugzilla.gnome.org/show_bug.cgi?id=746617 2015-03-24 13:56:21 -0400 Olivier Crête * ext/opus/gstrtpopuspay.c: rtpopuspay: Set the number of channels to 2 as per RFC draft https://bugzilla.gnome.org/show_bug.cgi?id=746617 2015-03-17 21:49:40 +0800 Jun Xie * ext/dash/gstmpdparser.c: dashdemux: set default @startNumber and also avoid wrong overwrite Set default @startNumber to 1, if @startNumber is missing at all level. Also avoid incorrect overwriting inherited value. https://bugzilla.gnome.org/show_bug.cgi?id=746347 2015-03-24 16:18:22 +0000 Luis de Bethencourt * gst/audiomixer/gstaudioaggregator.c: audioaggregator: check sink caps are valid 2015-03-24 16:17:00 +0000 Luis de Bethencourt * gst/audiomixer/gstaudioaggregator.c: Revert "audioaggregator: check sink caps are valid" This reverts commit 6d4d0d1cdf7c7531fbf72ce39e1eab1260d20550. Never put code with side effects into an assertion, it can be compiled out 2015-03-24 15:45:25 +0000 Luis de Bethencourt * gst/audiomixer/gstaudioaggregator.c: audioaggregator: check sink caps are valid CID #1291622 2015-03-24 15:13:52 +0000 Luis de Bethencourt * ext/opus/gstopusenc.c: opusenc: fall through switch statement Adding a comment makes coverity happy and quells the issue. CID 1291629 2015-03-24 19:05:00 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: Document why buffer_vinfo is needed 2015-03-24 19:04:26 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Check if there's a previous buffer to 'keep' If we want to keep a previous buffer but there's no previous buffer, we actually need more data instead. 2015-03-23 16:43:01 +0100 Philippe Normand * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/dispmanx: surfaceless EGL context support Show the DispmanX window only if there's no shared external GL context set up. When a window is required by the context a transparent DispmanX element is created and later on made visible by the ::show method. https://bugzilla.gnome.org/show_bug.cgi?id=746632 2015-03-23 15:09:33 +0000 Luis de Bethencourt * gst/gaudieffects/gstsolarize.c: gaudieffects: clean solarize code 2015-03-23 14:39:56 +0000 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstsolarize.c: gaudieffects: removing values only used once 2015-03-23 11:13:24 +0000 Luis de Bethencourt * gst/gaudieffects/gstburn.h: * gst/gaudieffects/gstdilate.h: * gst/gaudieffects/gstdodge.h: * gst/gaudieffects/gstexclusion.h: * gst/gaudieffects/gstsolarize.h: gaudieffects: small cleanup in headers 2015-03-23 13:15:30 +0100 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Set output format immediately after creating the encoder instance We know the caps by then, there's no need to wait until we actually receive the first buffer. 2015-03-23 13:13:35 +0100 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: Remove another unused variable 2015-03-23 13:11:42 +0100 Sebastian Dröge * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: opusenc: Remove useless headers and header_sent variables from the instance struct They are only used inside a single function. 2015-03-23 12:24:55 +0100 Sebastian Dröge * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopuspay.c: opus: Handle sprop-stereo and sprop-maxcapturerate RTP caps fields https://bugzilla.gnome.org/show_bug.cgi?id=746617 2015-03-23 12:09:25 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Take channels and sample rate from the caps if we have no stream header 2015-03-23 12:07:52 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Reset the decoder if the caps change 2015-03-23 11:57:09 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Take output sample rate from the stream headers too This way we let opusdec do the resampling if needed and don't carry around buffers with a too high sample rate if not required. While Opus always uses 48kHz internally, this information from the header specifies which frequencies are safe to drop. 2015-03-23 11:56:09 +0100 Sebastian Dröge * ext/opus/gstopusheader.c: opusheader: Put number of channels and sample rate into the caps https://bugzilla.gnome.org/show_bug.cgi?id=746617 2015-03-22 19:12:15 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: glwindow: remove unused gl_thread field 2015-03-22 19:03:19 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix GThread leak https://bugzilla.gnome.org/show_bug.cgi?id=746541 2015-03-20 18:33:45 +0100 Nicola Murino * ext/gl/gstglimagesink.c: glimagesink: fix caps leak https://bugzilla.gnome.org/show_bug.cgi?id=746541 2015-03-18 11:25:42 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpdec.c: srtpdec: Add support for buffer list https://bugzilla.gnome.org/show_bug.cgi?id=746387 2015-03-19 16:17:58 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpenc.c: srtpenc: Do not drop all buffers in buffer list if one fails https://bugzilla.gnome.org/show_bug.cgi?id=746387 2015-03-19 13:59:42 +0000 Luis de Bethencourt * gst/gaudieffects/gstdilate.c: gaudieffects: update copyright dates of dilate 2015-03-19 13:58:21 +0000 Luis de Bethencourt * gst/gaudieffects/gstdilate.c: gaudieffects: factorize transform code of dilate 2015-03-19 14:04:28 +0100 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: dtls: Pass the connection instance as data to the thread pool No need to ref/unref the connection every time we push something on the pool. However we have to provide non-NULL data to the pool, so let's just give it some coffee. 2015-03-19 13:55:53 +0100 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: dtls: Remove unused thread struct field 2015-03-19 13:30:00 +0100 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsenc.c: dtls: Use a shared thread pool for the timeouts This way we will share threads with other DTLS connections if possible, and don't have to start/stop threads for timeouts if there are many to be handled in a short period of time. Also use the system clock and async waiting on it for scheduling the timeouts. 2015-03-18 18:17:39 +0100 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: dtls: Shutdown timeout thread when it's not needed It is not needed most of the time and usually we have a thread idling around doing nothing all the time after the first few seconds. 2015-03-18 10:12:49 -0700 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: gl/docs: update some doc comments 2015-03-18 17:40:47 +0100 Sebastian Dröge * ext/dtls/gstdtlsenc.c: dtlsenc: Clear the queue when deactivating the pad 2015-03-18 17:38:35 +0100 Sebastian Dröge * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlsenc.h: dtlsenc: Handle pad activity states properly 2015-03-18 17:35:12 +0100 Sebastian Dröge * ext/dtls/gstdtlsenc.c: dtlsenc: Don't manually activate/deactivate srcpad 2015-03-18 10:47:15 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpdec.c: srtpdec: Separate buffer encoding functionality into a different function https://bugzilla.gnome.org/show_bug.cgi?id=746387 2015-03-18 10:16:41 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpenc.c: srtpenc: Add support for buffer list https://bugzilla.gnome.org/show_bug.cgi?id=746387 2015-03-18 09:39:49 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpenc.c: srtpenc: Add missing locks https://bugzilla.gnome.org/show_bug.cgi?id=746387 2015-03-18 09:17:31 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpenc.c: srtpenc: Split chain functionality so it can be reused for buffer list https://bugzilla.gnome.org/show_bug.cgi?id=746387 2015-03-18 13:52:38 +0100 Sebastian Dröge * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlsenc.h: dtlsenc: Use a GQueue instead of a GPtrArray Using a GPtrArray as a queue is not very efficient as the whole array has to be copied whenever an element is removed from the beginning. 2015-03-18 10:06:47 +0100 Sebastian Dröge * ext/dtls/gstdtlsdec.c: dtlsdec: Fix locking Especially don't hold any mutex while adding/removing pads or pushing data. 2015-03-18 09:57:32 +0100 Sebastian Dröge * ext/dtls/gstdtlsdec.c: dtlsdec: Add support for buffer lists 2015-03-18 09:46:40 +0100 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsdec.h: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlsenc.h: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpenc.c: * ext/dtls/gstdtlssrtpenc.h: dtls: Fix some search & replace mistakes from renaming the elements 2015-03-17 16:49:54 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpenc.c: srtpenc: Improve memory management on chain function Avoiding copy the buffer twice, one while mapping and other with mencpy https://bugzilla.gnome.org/show_bug.cgi?id=746356 2015-03-17 16:50:41 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpenc.c: srtpenc: Fix typo in log 2015-03-17 11:43:00 +0100 Sebastian Dröge * ext/dtls/gstdtlsagent.c: dtls: Initialize debug category earlier Otherwise the openssl initialization will use it before initialization 2014-11-13 20:39:11 -0500 Olivier Crête * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/audiointerleave.c: audiointerleave: Add unit tests Almost a copy of the "interleave" unit tests, improved to support the thread on the src pad on GstAggregator. https://bugzilla.gnome.org/show_bug.cgi?id=740236 2015-03-06 13:49:48 -0500 Olivier Crête * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: audiointerleave: Set src caps in aggregate This prevents races between the setcaps of the sink pads https://bugzilla.gnome.org/show_bug.cgi?id=740236 2014-11-13 15:40:15 -0500 Olivier Crête * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiointerleave.c: * gst/audiomixer/gstaudiointerleave.h: * gst/audiomixer/gstaudiomixer.c: audiointerleave: Add interleave element based on audioaggregator https://bugzilla.gnome.org/show_bug.cgi?id=740236 2015-03-06 16:51:12 -0500 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Print a message when a buffer is late https://bugzilla.gnome.org/show_bug.cgi?id=740236 2014-11-15 17:54:51 -0500 Olivier Crête * gst/audiomixer/gstaudioaggregator.c: audioaggregator: Don't re-send the caps if they did not change https://bugzilla.gnome.org/show_bug.cgi?id=740236 2014-11-06 17:15:17 -0500 Olivier Crête * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudioaggregator.c: * gst/audiomixer/gstaudioaggregator.h: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audioaggregator: Split base class from audiomixer Also: - Don't modify size on early buffer The size is the size of the buffer, not of remaining part. - Use the input caps when manipulating the input buffer Also store in in the sink pad - Reply to the position query in bytes too - Put GAP flag on output if all inputs are GAP data - Only try to clip buffer if the incoming segment is in time or samples - Use incoming segment with incoming timestamp Handle non-time segments and NONE timestamps - Don't reset the position when pushing out new caps - Make a number of member variables private - Correctly handle case where no pad has a buffer If none of the pads have buffers that can be handled, don't claim to be EOS. - Ensure proper locking - Only support time segments https://bugzilla.gnome.org/show_bug.cgi?id=740236 2015-03-07 22:08:40 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Release pad object lock before dropping buffer Otherwise, the locking order is violated and deadlocks happen. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 20:22:13 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Only ignore pads with no buffers on timeout When the timeout is reached, only ignore pads with no buffers, iterate over the other pads until all buffers have been read. This is important in the cases where the input buffers are smaller than the output buffer. https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 21:12:13 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Be more aggressive with invalid replies to our latency query https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-06 20:25:03 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Only advance by the buffer size when a buffer is late https://bugzilla.gnome.org/show_bug.cgi?id=745768 2015-03-16 17:49:58 +0000 Tim-Philipp Müller * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlsconnection.c: dtls: make sure we actually log into the right debug category GST_DTLS_USE_GST_LOG is not defined anywhere, so we'd just log into the default category by accident. We use the gst logging system unconditionally now, so might just as well remove this #if #else. 2015-03-16 17:36:49 +0000 Tim-Philipp Müller * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlsconnection.c: dtls: fix some more compiler warnings gcc-4.9.2: gstdtlsagent.c:114:1: error: old-style function definition gstdtlsconnection.c:253:3: error: ISO C90 forbids mixed declarations and code gstdtlsconnection.c:291:3: error: ISO C90 forbids mixed declarations and code gstdtlsconnection.c:391:3: error: ISO C90 forbids mixed declarations and code gstdtlsconnection.c:434:3: error: ISO C90 forbids mixed declarations and code gstdtlsconnection.c:773:1: error: 'BIO_s_gst_dtls_connection' was used with no prototype before its definition gstdtlsconnection.c:773:1: error: old-style function definition 2015-03-16 17:53:11 +0100 Sebastian Dröge * ext/dtls/Makefile.am: * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlscommon.h: * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlssrtpdec.c: dtls: Unconditionally use GStreamer debug log system 2015-03-16 17:48:43 +0100 Sebastian Dröge * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlsagent.h: * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlscertificate.h: * ext/dtls/gstdtlscommon.h: * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsdec.h: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlsenc.h: * ext/dtls/gstdtlssrtpbin.c: * ext/dtls/gstdtlssrtpbin.h: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpdec.h: * ext/dtls/gstdtlssrtpdemux.c: * ext/dtls/gstdtlssrtpdemux.h: * ext/dtls/gstdtlssrtpenc.c: * ext/dtls/gstdtlssrtpenc.h: * ext/dtls/plugin.c: dtls: Re-namespace from Er to Gst 2015-03-16 17:35:29 +0100 Sebastian Dröge * ext/dtls/gstdtlsconnection.c: dtls: Fix some compiler warnings gstdtlsconnection.c:128:32: error: passing 'const char [30]' to parameter of type 'void *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers] SSL_get_ex_new_index (0, "gstdtlsagent connection index", NULL, NULL, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/openssl/ssl.h:1981:43: note: passing argument to parameter 'argp' here int SSL_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, ^ gstdtlsconnection.c:822:40: error: arithmetic on a pointer to void is a GNU extension [-Werror,-Wpointer-arith] memcpy (out_buffer, priv->bio_buffer + priv->bio_buffer_offset, copy_size); ~~~~~~~~~~~~~~~~ ^ 2015-03-16 17:34:05 +0100 Sebastian Dröge * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlssrtpbin.c: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpdemux.c: * ext/dtls/gstdtlssrtpenc.c: * ext/dtls/plugin.c: dtls: Fix indention 2015-03-16 17:33:03 +0100 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/dtls/Makefile.am: * ext/dtls/gstdtlsagent.c: * ext/dtls/gstdtlsagent.h: * ext/dtls/gstdtlscertificate.c: * ext/dtls/gstdtlscertificate.h: * ext/dtls/gstdtlscommon.h: * ext/dtls/gstdtlsconnection.c: * ext/dtls/gstdtlsconnection.h: * ext/dtls/gstdtlsdec.c: * ext/dtls/gstdtlsdec.h: * ext/dtls/gstdtlsenc.c: * ext/dtls/gstdtlsenc.h: * ext/dtls/gstdtlssrtpbin.c: * ext/dtls/gstdtlssrtpbin.h: * ext/dtls/gstdtlssrtpdec.c: * ext/dtls/gstdtlssrtpdec.h: * ext/dtls/gstdtlssrtpdemux.c: * ext/dtls/gstdtlssrtpdemux.h: * ext/dtls/gstdtlssrtpenc.c: * ext/dtls/gstdtlssrtpenc.h: * ext/dtls/plugin.c: dtls: Add new DTLS plugin This is a copy of the Ericsson DTLS plugin from https://github.com/EricssonResearch/openwebrtc-gst-plugins/tree/master/ext/erdtls/src https://bugzilla.gnome.org/show_bug.cgi?id=744582 2015-03-16 03:53:33 +1100 Jan Schmidt * gst/compositor/compositororc.orc: compositor: Revert most of previous patch. The calculation doesn't produce the same results. Keep just the change to divide alpha by 255 instead of 256, for slightly better accuracy 2015-03-15 16:55:00 +0000 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: androidmedia: Add helpers for calling static methods 2015-03-15 16:38:29 +0000 Sebastian Dröge * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: androidmedia: Fix indention 2014-06-05 10:33:56 +0200 Matthieu Bouron * sys/androidmedia/gstamc.c: * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: androidmedia: Add more JNI helper functions 2014-06-02 12:37:09 +0100 Matthieu Bouron * sys/androidmedia/Makefile.am: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstjniutils.c: * sys/androidmedia/gstjniutils.h: androidmedia: Split jni code to gstjniutils.c 2015-03-15 16:10:31 +0000 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: drop some superfluous assertions g_return_*_if_fail() is for public API to catch programming errors. For internal code, we should just use g_assert() to check internal state. 2015-03-15 15:54:01 +0000 Tim-Philipp Müller * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: add test for keyframe/delta flag propagation The first output MPEG-TS packet that corresponds to a video input buffer which had the delta flag cleared (i.e. was a keyframe) should have the delta flag cleared as well. This is needed e.g. by tcpserversink in order to keep track of the last keyframe and be able to burst data to newly- connected clients. https://bugzilla.gnome.org/show_bug.cgi?id=706872 2015-03-15 14:35:15 +0000 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: gl/docs: add missing functions/objects 2015-03-15 12:58:26 +0000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: tentative proper context collision detection Fixes tee name=t ! queue ! gliamgesink t. ! queue ! glimagesink 2014-07-18 10:44:59 +0200 Jesper Larsen * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Fix namespace of some internal functions https://bugzilla.gnome.org/show_bug.cgi?id=733347 2015-03-16 00:22:14 +1100 Jan Schmidt * gst/compositor/compositororc.orc: compositor: Fix blending functions Correctly calculate alpha in a few places by dividing by 255, not 256. Fix the argb and bgra blending functions to avoid an off-by-one error in the calculations, so painting with alpha = 0xff doesn't ever bleed through from behind 2015-03-15 12:06:22 +0000 Tim-Philipp Müller * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: add unit test for "alignment" property https://bugzilla.gnome.org/show_bug.cgi?id=722129 2015-03-14 15:27:39 +0000 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: make "alignment" property more useful for packetisation Currently the alignment property just makes sure that we output things in multiples of align*packet_size bytes, but with no clear maximum size. When streaming MPEG-TS over UDP one wants buffers with a maximum packet size of 1316. The alignment property so far would just output buffers that are a multiple of 1316 then. Instead we now make the alignment property output individual buffers with the alignment size, which is entirely backwards compatible with the expected behaviour up until now. For efficiency reason collect all those buffers in a buffer list and send that downstream. Also collect data to push downstream in a buffer list from the adapter if we don't align things, which is still more efficient because of the silly way the muxer currently creates output packets. https://bugzilla.gnome.org/show_bug.cgi?id=722129 2015-03-11 23:03:24 +0800 xixi * ext/dash/gstmpdparser.c: dashdemux: fetch wrong segment at the end of Period Fix check for end of Period time to avoid trying to fetch a segment that doesn't exist https://bugzilla.gnome.org/show_bug.cgi?id=746038 2015-03-14 19:48:21 +0100 Víctor Manuel Jáquez Leal * ext/gl/gstgluploadelement.c: * gst-libs/gst/gl/gstglupload.c: glupload: move meta-data copy into gst-gl library In some upload implementations the out buffer has more than one references, turning the buffer not writable, so it won't be possible to modify its meta-data. This patch moves the meta-data copy before increasing the reference of the out buffer. https://bugzilla.gnome.org/show_bug.cgi?id=746173 2015-03-14 18:45:01 +0000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: fix the slight difference between EXT_rg and ARB_rg GL_EXT_texture_rg doesn't take sized formats for the internalformat parameter of TexImage* but GL_ARB_texture_rg and GL(ES)3 do. https://bugzilla.gnome.org/show_bug.cgi?id=732507 2015-03-14 17:29:02 +0000 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: remove hack around bug 648359 It is already fixed 2015-03-14 12:24:53 +0000 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: remove deprecated g_atomic function We depend on 2.32 already 2015-03-14 11:45:20 +0000 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: fix pad leak Only get the pad if it is really going to be used to avoid leaking it 2015-03-14 18:10:24 +0000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: gl/examples: fixup generic cube example for NDC translating outside the clip region doesn't work 2015-03-14 15:38:28 +0000 Julien Isorce * tests/examples/gl/sdl/.gitignore: * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/sdlshare2.c: gl/examples: add sdlshare2 that uses glimagesink to output textures https://bugzilla.gnome.org/show_bug.cgi?id=739681 2015-03-14 16:30:42 +0000 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: keep window invisible when sharing output https://bugzilla.gnome.org/show_bug.cgi?id=739681 2015-03-14 15:16:55 +0000 Julien Isorce * ext/gl/gstglimagesink.c: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: glimagesink: provide GstSample in client-draw signal Instead of prividing texture and size directly. And apply changes to examples. https://bugzilla.gnome.org/show_bug.cgi?id=739681 2015-03-14 15:37:05 +0000 Julien Isorce * tests/examples/gl/sdl/sdlshare.c: sdlshare: use glupload and unmap frame 2015-03-14 16:25:29 +0000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: glsyncmeta: make context to wait and set sync explicit otherwise we may wait on a sync object in same context by accident 2015-03-14 15:16:01 +0000 Tim-Philipp Müller * configure.ac: configure: fix build Was supposed to be squashed into earlier commit. 2015-03-14 15:15:02 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-resindvd.xml: docs: update plugin docs 2015-03-14 14:43:37 +0000 Tim-Philipp Müller * configure.ac: * sys/Makefile.am: * sys/osxvideo/Makefile.am: * sys/osxvideo/osxvideoplugin.c: * sys/osxvideo/osxvideosrc.c: * sys/osxvideo/osxvideosrc.h: Remove unported and useless osxvideosrc element There are other elements for this now. 2015-03-13 18:24:43 +0000 Ramiro Polla * gst/sdp/gstsdpdemux.c: sdpdemux: properly escape percent sign in documentation 2015-03-14 12:58:22 +0000 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Add NULL check in error case Other context may be NULL if something went wrong. Avoid trying to unref a NULL pointer. 2015-03-14 11:01:12 +0000 Matthew Waters * configure.ac: gl: fix a couple of typos in configure.ac https://bugzilla.gnome.org/show_bug.cgi?id=744020 2015-03-14 10:39:06 +0000 Matthew Waters * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstgluploadelement.c: glupload/colorconvert: only copy timestamps if the input buffer != output 2015-03-11 00:06:55 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.h: * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m: * gst-libs/gst/gl/gstgldisplay.c: gl: add GstGLDisplayCocoa https://bugzilla.gnome.org/show_bug.cgi?id=746012 2015-03-13 09:07:16 +0000 Julien Isorce * tests/examples/gl/cocoa/cocoa-videooverlay.m: examples: initialize NSApp at the beginning 2015-03-14 07:49:14 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: do not terminate loop in gst_gl_window_cocoa_close It is now done in _finalize. Fix regression introduced by "gl/window: create the main loop/context on init/finalize" bc7a7259f357b0065dd94e0668b5a895d83fa53a 2015-03-13 15:34:55 +0000 Julien Isorce * gst-libs/gst/gl/gstglutils.c: gl: avoid overwriting display and context to NULL It happens when the application provides display and/or context. 2015-03-13 17:41:17 +0000 Matthew Waters * ext/gl/gltestsrc.c: * gst-libs/gst/gl/gstglshader.c: glshader: attribute locations are -1 on error 2015-03-13 17:04:17 +0000 Neos3452 * gst-libs/gst/gl/gstglshader.c: glshader: prevent from getting attributes without vertex shader It doesn't make sense to query for vertex attributes without a vertex shader. Moreover this is causing a crash on OSX. https://bugzilla.gnome.org/show_bug.cgi?id=746168 2015-03-14 02:53:00 +1100 Jan Schmidt * ext/gl/gstglfilterbin.c: GL: Remove annoying printf in the filterbin class_init 2015-03-12 09:27:30 +0100 ijsf * sys/applemedia/avfvideosrc.m: Restricted activeVideoMaxFrameDuration to fix frame rate 2015-03-13 12:43:13 +0000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: add pixel-aspect-ratio property on the bin 2015-03-13 12:40:04 +0000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: unref the bufferpool 2015-03-13 12:29:54 +0000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: forward ALL the properties on the bin 2015-03-13 12:28:36 +0000 Matthew Waters * ext/gl/gstgluploadelement.c: gluploadelement: properly unref buffers that are the same as the input basetransform doesn't unref equal input and output buffers 2015-03-13 10:25:35 +0000 Matthew Waters * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstglbumper.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: get the context from basemixer/basefilter 2015-03-13 09:38:54 +0000 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglfilter.c: gl: retreive the gldisplay/app gl context as soon as possible fixes the usage of gst_gl_display_filter_gl_api 2015-03-13 09:37:46 +0000 Matthew Waters * tests/check/libs/gstglcontext.c: gl/tests: fix deadlock on glcontext wrapped context test 2015-03-12 16:46:44 +0000 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: cache indices in a buffer object 2015-03-12 17:11:31 +0000 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Fix discont detection and buffer alignment code Actually accumulate the sample counter to check the accumulated error between actual timestamps and expected ones instead of just resetting the error back to 0 with every new buffer. Also don't reset discont_time whenever we don't resync. The whole point of discont_time is to remember when we first detected a discont until we actually act on it a bit later if the discont stayed around for discont_wait time. https://bugzilla.gnome.org/show_bug.cgi?id=746032 2015-03-08 18:16:04 +1100 Matthew Waters * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * ext/gl/gstopengl.c: caopengllayersink: implement as a bin like glimagesink 2015-03-03 18:05:04 +1100 Matthew Waters * ext/gl/caopengllayersink.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: avoid deadlock when creating context on the main thread. Make window/view creation async so that it is possible to gst_gl_context_create from the main thread. 2015-03-03 17:26:47 +1100 Matthew Waters * ext/gl/gstglbasemixer.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl: store the list of contexts within gldisplay Removes the reliance on the allocation query to propogate GL contexts. Allows thread safely getting a context for the a specific thread. 2015-03-03 16:48:24 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unset the current shader after rendering fixes gltestsrc ! glimagesink when gltestsrc doesn't use a shader 2015-03-03 16:38:56 +1100 Matthew Waters * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: remove usage of gldownload library object 2015-02-28 00:30:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: store the thread current context 2015-02-26 18:26:36 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglsrcbin.c: * ext/gl/gstglsrcbin.h: * ext/gl/gstopengl.c: gl: new glsrcbin element 2015-02-26 13:45:56 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: glvideomixer: implement with glmixerbin The relevant properties are forwarded to/from the containing bin and sink pads. 2015-02-26 00:20:37 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: glmixer: remove usage of upload/download objects 2015-02-25 23:48:56 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglmixerbin.c: * ext/gl/gstglmixerbin.h: * ext/gl/gstopengl.c: gl: new glmixerbin element 2015-02-20 16:47:01 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstopengl.c: glimagesink: implement as a bin glupload ! glcolorconvert ! sink Some properties are manually forwarded. The rest are available using GstChildProxy. The two signals are forwarded as well. 2015-02-19 18:23:37 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglsinkbin.c: * ext/gl/gstglsinkbin.h: * ext/gl/gstopengl.c: gl: new glsinkbin element similar to glfilterbin but for sinks 2015-02-19 14:19:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: don't use the library upload/convert objects 2015-02-19 13:33:28 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglfilterbin.c: * ext/gl/gstglfilterbin.h: * ext/gl/gstopengl.c: gl: new element glfilterbin It encapsulates a confiurable GL processing element in the upload/colorconvert/download dance required to transparently process the majority of GstBuffer's. 2015-02-19 13:24:59 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgldownloadelement.c: * ext/gl/gstgldownloadelement.h: * ext/gl/gstopengl.c: gl: add new gldownloadelement Simply transforms caps to/from raw/glmemory capsfeatures 2015-02-12 17:59:27 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglcolorconvertelement.c: * ext/gl/gstglcolorconvertelement.h: * ext/gl/gstopengl.c: gl: add a new glcolorconvert element based on the glcolorconvert library object 2015-03-11 16:56:16 +0000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: implement propose_allocation pool handling for glmemory upload 2015-02-11 23:29:01 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstgluploadelement.c: * ext/gl/gstgluploadelement.h: * ext/gl/gstopengl.c: gl: add a new glupload element based on the glupload library object 2015-02-11 14:48:45 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglbasemixer.c: * ext/gl/gstglbasemixer.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmixerpad.h: * ext/gl/gstglvideomixer.h: gl: add a new glbasemixer class below glmixer It deals with propagating the gl display/contexts throughout the application/pipeline 2015-02-11 01:48:11 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbasefilter.c: * gst-libs/gst/gl/gstglbasefilter.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: add a new glbasefilter class below glfilter It deals with propagating the gl display/contexts throughout the application/pipeline 2015-02-11 01:27:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glutils: expose running a query on a set of src/sink pads 2015-03-12 12:49:40 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: replace cbr and constrained-vbr properties with an enum It was deemed confusing before. https://bugzilla.gnome.org/show_bug.cgi?id=744909 2015-03-12 10:14:50 +0000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: advertise resize in the caps negotiation properly 2015-03-12 01:49:58 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudiomixer.c: audiomixer: Add locking to fill_buffer and fix mix_buffer The audiomixer pad struct fields may be changed from other threads 2015-03-12 01:56:44 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audiomixer: Mark a discont when we receive a new segment event This allows us to handle new segment events correctly; either by dropping buffers or inserting silence; for example if the offset is changed on an srcpad connected to audiomixer. 2015-03-12 09:46:02 +0000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: we don't do resizing of the video frames As we cannot do accurate texel sampling then due to the texture coordinates being interpolated based on the output frame size. 2015-01-20 19:53:09 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: While aggregating, sync values for all pads before converting frames 2015-03-11 18:49:22 +0000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: don't XGetWindowAttributes every XEvent fixes a deadlock in xcb where the X window may not exist. https://bugzilla.gnome.org/show_bug.cgi?id=745633 2015-03-11 14:50:28 +0000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/window: hopefully fixup compile warnings on android/ios 2015-03-11 17:19:17 +1100 Jan Schmidt * gst-libs/gst/gl/gstglfilter.c: glfilter: Remove redundant check for clearing context on reset. The context is already cleared a few lines above. 2015-03-11 16:55:14 +1100 Jan Schmidt * ext/dash/gstisoff.c: * ext/dc1394/gstdc1394.c: * ext/openjpeg/gstopenjpegenc.c: * ext/resindvd/gstmpegdesc.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/insertbin/gstinsertbin.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst/mxf/mxfmetadata.c: * gst/siren/gstsirendec.c: * gst/videomeasure/gstvideomeasure_ssim.c: * sys/acmenc/acmenc.c: * sys/vdpau/gstvdpvideobufferpool.c: Remove a bunch of silly ';;' typos at the end of lines 2015-03-06 15:31:18 +1100 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window: create the main loop/context on init/finalize Avoids races setting the window handle from the main thread. https://bugzilla.gnome.org/show_bug.cgi?id=745633 2015-03-08 02:04:11 +1100 Matthew Waters * gst-libs/gst/base/gstaggregator.h: aggregatory: don't redefine GST_FLOW_CUSTOM_SUCCESS 2015-03-04 11:12:32 +0100 Edward Hervey * sys/androidmedia/gstamcaudiodec.c: androidmedia: Remove unused label/variable 2015-03-10 15:31:21 +0100 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix get_presentation_offset check. And return 0 isntead of FALSE. https://bugzilla.gnome.org/show_bug.cgi?id=745455 2015-03-02 14:00:03 +0100 Mathieu Duponchelle * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: implement get_presentation_offset. To account for presentationTimeOffset as per section 7.2.1 . https://bugzilla.gnome.org/show_bug.cgi?id=745455 2015-03-02 13:53:03 +0100 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: [API]: get_presentation_offset virtual method. Asks the subclass for a potential time offset to apply to each separate stream, in dash streams can have "presentation time offsets", which can be different for each stream. https://bugzilla.gnome.org/show_bug.cgi?id=745455 2015-03-06 12:24:44 +0100 Mathieu Duponchelle * ext/dash/gstmpdparser.c: gstmpdparser: Really set the default value for startNumber. + The specs ask for a default of 1, the current code only did set a default when the field was present. https://bugzilla.gnome.org/show_bug.cgi?id=745455 2015-03-09 11:11:16 +0000 Luis de Bethencourt * gst/videoparsers/gstmpegvideoparse.c: videoparser: unused value Value set in off will be immediately overwritten after going to next. CID #1226476 2015-03-09 12:51:21 +0900 hoonhee.lee * gst/y4m/gsty4mdec.c: y4mdec: remove unnecessary semicolon https://bugzilla.gnome.org/show_bug.cgi?id=745877 2015-03-09 12:41:59 +0900 hoonhee.lee * tests/check/libs/gstglcontext.c: tests: glcontext: remove unnecessary semicolon https://bugzilla.gnome.org/show_bug.cgi?id=745875 2015-03-06 14:49:20 +0200 Mohammed Hassan * gst/camerabin2/gstcamerabin2.c: camerabin: update zoom param spec if video source changes its max-zoom If the video source happens to allow max-zoom to be greater than our maximum hard coded value of 10 then the user cannot set anything greater than our maximum specified in the param spec. We have to update our param spec to prevent glib from capping the value https://bugzilla.gnome.org/show_bug.cgi?id=745740 2015-03-07 10:28:35 +0100 Sebastian Dröge * sys/applemedia/plugin.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: vtdec: Register a hardware-only vtdec_hw on OSX and give it a higher rank while having the default vtdec at secondary rank. This allows decodebin/playbin to prefer the hardware based decoders, and if that fails to initialize because hardware resources are busy to fall back to e.g. the libav based h264 decoder instead of the software based vtdec (which is slower), and only fall back to the software based vtdec if there is no higher ranked decoder available. 2015-03-06 20:11:00 -0500 Nicolas Dufresne * ext/gl/gstglmixer.c: glmixer: Don't share our downstream pool with upstream Pool cannot have multiple owner. This can lead to spurious pool was flushing error. https://bugzilla.gnome.org/show_bug.cgi?id=74570 2015-03-05 16:28:36 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Don't chain downstream pool Chaining a downstream pool would lead to two owner of the same pool. In dynamic pipeline, if one owner is removed from the pipeline the pool will be stopped, and the rest of the pipeline will fail since the pool will now be flushing. Also fix proposed pool caching, filter->pool was never set, never unrefed. https://bugzilla.gnome.org/show_bug.cgi?id=745705 2015-03-05 15:49:50 -0500 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Only cache pool, don't manage it GLImage does not use any kind of internal pool. There was some remaining code and comment stating that it was managing the pool, and it was in fact setting the active state when doing to ready state. * Only create the pool if requested and in propose_allocation * Cache the pool to avoid reallocation on spurious reconfigure * Don't try to deactivate the pool (we don't own it) https://bugzilla.gnome.org/show_bug.cgi?id=745705 2015-03-06 12:07:47 -0500 Xavier Claessens * gst/videoparsers/gstpngparse.c: pngparse: stop spamming info messages https://bugzilla.gnome.org/show_bug.cgi?id=745755 2015-03-06 18:54:24 +0100 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: gldownload: Simplify caps feature setting code 2015-03-06 18:15:11 +0100 Sebastian Dröge * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: gl: Remove format info in glcolorconvert's transform_caps function instead of on every caller ... and let glmixer actually transform the caps it is supposed to transform instead of inventing new caps. 2015-03-06 18:49:16 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: Revert "videoaggregator: Create new caps from the video-info" This reverts commit 78215be0dfbb4e8ed4f249e161a94c644328d28d. because it broke glvideomixer with custom caps features. 2015-03-06 18:36:12 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Simplify caps feature setting code 2015-03-06 14:54:41 +0000 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtp: donl_present variable unused donl_present is not implemented, yet the value is set and checked a few times. Cleaning this. CID #1249687 2015-03-06 14:27:44 +0000 Luis de Bethencourt * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: fall through switch statement Adding a comment makes coverity happy and quells the issue. CID #1139748 2015-03-06 14:36:26 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Create new caps from the video-info In case the original caps were missing some optional fields like interlace-mode. We assume default values for those everywhere, but they can still cause negotiation to fail if a downstream element expects the field to be there and at a specific value. 2015-02-25 13:52:21 +0100 Florian Zwoch * sys/applemedia/avfvideosrc.m: avfvideosrc: allow "capture-screen" mode to select which screen to capture via the "device-index" option https://bugzilla.gnome.org/show_bug.cgi?id=745161 2015-03-05 19:09:49 +0100 Edward Hervey * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Only use debugging if we have valid values The debug category won't have been created/activated if it's not a valid display 2015-03-05 15:54:55 +0000 Luis de Bethencourt * ext/opencv/motioncells_wrapper.cpp: motioncells: protect against not found id If searchIdx() doesn't find the id it returns -1, which breaks motioncelssvector.at (idx). Check for it and return if not found. Changing a few other lines for style consistency. 2015-03-05 15:34:09 +0000 Luis de Bethencourt * ext/opencv/gsttemplatematch.c: opencv: remove always-true check filter->cvImage has just been used/dereferenced, there would be an error there if the pointer was NULL. No need to check since it will always be true. 2015-03-04 16:13:30 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Calculate the duration more accurately from the capture time and numbers of samples This should prevent any accumulating rounding errors with the duration. 2015-03-04 16:05:28 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Fix the timestamp and offset calculations even more 2015-03-04 16:04:18 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't subtract the duration from the capture time We already have the real capture time, not the time when we received the end of the packet. 2015-03-04 13:16:03 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: Revert "audiomixer: Latency is twice the output buffer duration, not only once" This reverts commit d387cf67df91b59540f32ee17b4c02f747969add. The analysis was wrong: The first 20ms of latency are introduced by the source already and put into the latency query, making it only necessary to cover the additional 20ms of audiomixer inside audiomixer. 2015-03-04 09:24:27 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix latency query in FEC case The max latency parameter is "the maximum time an element synchronizing to the clock is allowed to wait for receiving all data for the current running time" (docs/design/part-latency.txt). https://bugzilla.gnome.org/show_bug.cgi?id=744338 2015-03-03 11:42:09 -0300 Thiago Santos * gst/videoparsers/gsth264parse.c: h264parse: reset the parser information when caps changes This prevents it from going into passthrough after receiving 2 byte-stream caps (different ones) as it would keep the have_pps and have_sps set to true and would just go into passthrough without updating its caps. This patch makes it reset its stream information to restart properly when new caps are received. https://bugzilla.gnome.org/show_bug.cgi?id=745409 2015-03-03 17:47:51 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: set timestamp on discont buffers Make sure discont buffers have its timestamp set to allow downstream to resync if needed 2012-03-22 08:47:57 +0100 Oleksij Rempel * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: camerabin2: check negotiated caps avoid reseting of the pipe To avoid useless renegotiation of the pipe we can check for negotiated caps on src_filter and compare it with requested filter. If the caps intersect, avoid restart. Signed-off-by: Oleksij Rempel https://bugzilla.gnome.org/show_bug.cgi?id=672610 2015-03-02 01:08:15 +0300 Ilya Averyanov * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Remove duplicate code The muxer is already allocated in reset(), which is called soon afterwards. https://bugzilla.gnome.org/show_bug.cgi?id=745506 2015-03-03 10:12:11 +0800 Song Bing * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Set query ALLOCATION need_pool to FALSE Set query ALLOCATION need_pool to FALSE as it only need query if can support video overlay composition meta. https://bugzilla.gnome.org/show_bug.cgi?id=745495 2015-03-04 14:38:36 +1100 Matthew Waters * sys/applemedia/avsamplevideosink.h: * sys/applemedia/avsamplevideosink.m: applemedia/avsamplesink: utilise a pull based approach of displaying video frames Using requestMediaDataWhenReadyOnQueue the layer will execute a block when it would like more frames. Using this we can provide the current frame and avoid needlessly filling the layer's buffer queue causing older frames to be displayed when under resource pressure. 2015-03-03 15:22:38 -0500 Nicolas Dufresne * ext/gl/gstgloverlay.c: gloverlay: Fix upside down and miss-aligned JPEG LibJPEG uses macroblock of 8x8 sample. In this element we use RGB and Y444, two 24bit formats that are stored in 32bit pixels. This mean we have 32x32 bytes macroblocks. For this reason, we need to allocate our buffer slightly larger. We also need to pass the line pointer in the right order, otherwise the image endup upside-down. https://bugzilla.gnome.org/show_bug.cgi?id=745109 2015-03-03 20:03:55 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Latency is twice the output buffer duration, not only once Let's assume a source that outputs outputs 20ms buffers, and audiomixer having a 20ms output buffer duration. However timestamps don't align perfectly, the source buffers are offsetted by 5ms. For our ASCII art picture, each letter is 5ms, each pipe is the start of a 20ms buffer. So what happens is the following: 0 20 40 60 OOOOOOOOOOOOOOOO | | | | 5 25 45 65 IIIIIIIIIIIIIIII | | | | This means that the second output buffer (20 to 40ms) only gets its last 5ms at time 45ms (the timestamp of the next buffer is the time when the buffer arrives). But if we only have a latency of 20ms, we would wait until 40ms to generate the output buffer and miss the last 5ms of the input buffer. 2015-02-18 21:21:01 -0500 Xavier Claessens gltransformation: normalize translations https://bugzilla.gnome.org/show_bug.cgi?id=744763 * Lubosz: use maxfloat for transformation range 2015-02-18 20:41:14 -0500 Xavier Claessens * ext/gl/gstgltransformation.c: gltransformation: Fix doc typo https://bugzilla.gnome.org/show_bug.cgi?id=744763 2015-03-03 13:45:46 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Get rid of uploader if caps have changed We need to update the uploader format if that caps have changed. https://bugzilla.gnome.org/show_bug.cgi?id=745549 2015-03-03 16:50:30 +0000 Luis de Bethencourt * ext/wayland/wlshmallocator.c: waylandsink: g_mkstemp is safer than mkstep 2015-03-03 16:49:07 +0000 Luis de Bethencourt * ext/wayland/wlshmallocator.c: Revert "waylandsink: mkstemp requires setting permission mask" This reverts commit 1890e7355a5464fcfff58633851265b3fc7a3731. Better to use g_mkstemp that takes care of the mask without affecting the entire process. 2015-03-03 16:55:26 +0100 Edward Hervey * gst-libs/gst/gl/gstglwindow.c: gl: Fix context leaks Introduced by a12ca13750a15300ab3c718ebde2984dc3d587b3 2015-03-03 16:23:40 +0000 Luis de Bethencourt * gst/asfmux/gstasfmux.c: asfmux: remove unnecessary conditional The two branches of the if conditional are identical, which means in all cases the same gst_asf_put_guid() will be executed. Do it directly. CID #1226448 2015-03-03 15:51:50 +0000 Luis de Bethencourt * ext/wayland/wlshmallocator.c: waylandsink: mkstemp requires setting permission mask Using mkstemp without setting the permission mask is potentially harmful. POSIX specification of mkstemp() does not say anything about file modes, so we need to make sure its file mode creation mask is set appropriately before calling it. 2015-03-02 16:45:45 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Reset the clock calibration when unsetting the master clock Otherwise the old calibration will stick around for the next time we use it, potentially giving us completely wrong times. 2015-03-02 13:57:24 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink{audio,video}src: Add some more debug output 2015-02-12 13:43:30 +0100 DanielD10 * sys/decklink/gstdecklink.cpp: decklink: Incorrect frame rate for interlaced modes https://bugzilla.gnome.org/show_bug.cgi?id=744386 2015-03-01 19:57:23 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: register only one custom nsapp loop Otherwise the pipeline stalls when running more than one glimagesink with gst-launch. Also only register the custom nsapp loop when setting up the nsapp from gstgl. 2015-03-01 16:54:10 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: instead of class_init use g_once to setup nsapp 2015-02-26 23:04:09 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: check for deprecated constants prior to OSX 10.10 2015-03-01 09:43:32 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: Fix offset for odd height We also need to recalculate the offset, since otherwise the frame mapping will be forward two lines in the U and V planes (I420) due to gst_video_info_align() round up the Y plane to a even number of lines. https://bugzilla.gnome.org/show_bug.cgi?id=745054 2015-03-01 00:08:42 -0500 Nicolas Dufresne * tests/check/libs/gstglmemory.c: gl-test: Port unit tests to new API 2015-02-28 15:00:13 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Support offset when downloading Make sure we support offset and video alignment when downloading too. This is currently not used (plane_start is always 0), but it makes the code correct if we want to use that later. 2015-02-28 13:01:16 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Provide correct size on upload Provide the right size to GL when uploading. Using maxsize is wrong since we offset the data point with the memory offset and video alignement offset. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-28 12:48:03 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Provide correct size on download Provide the right size to GL when downloading. This fixes downloading from GLMemory that where created for libav. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-28 11:55:26 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: Use fallback for partial copy When the memory is partial copy, the texture size and videoinfo no longer make sense. As we cannot guess what the application wants, we safely copy into a sysmem memory. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-25 18:07:03 -0500 Nicolas Dufresne * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: glmemory: Add GstAllocationParams and alignment support This implements support for GstAllocationParams and memory alignments. The parameters where simply ignored which could lead to crash on certain platform when used with libav and no luck. https://bugzilla.gnome.org/show_bug.cgi?id=744246 2015-02-28 18:21:33 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: perform egl upload on the gl thread Fixes EGLImage usage on raspberry pi https://bugzilla.gnome.org/show_bug.cgi?id=743914 2015-02-27 11:07:34 +0200 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Fix scaling with rate of internal/external clock 2015-02-27 00:26:00 +0530 Arun Raghavan * gst-libs/gst/base/gstaggregator.c: aggregator: Use standard upstream latency querying logic The same functionality is duplicated in the default latency querying now. 2015-02-27 00:01:41 +0530 Arun Raghavan * gst/liveadder/liveadder.c: liveadder: Use default upstream latency querying logic We can rely on the standard upstream latency querying logic and then add our own latency. 2015-02-26 13:20:26 +0100 Víctor Manuel Jáquez Leal * gst-libs/gst/gl/gstglupload.c: glupload: Set freed method implementation to NULL When trying to render buffers with meta:GLTextureUpload the glimagesink crashes with a segmentation fault. This patch workarounds this crash setting to NULL the method implementation after free. https://bugzilla.gnome.org/show_bug.cgi?id=745206 2015-02-25 14:48:59 +0100 Roman Nowicki * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: release existing D3D swap chain on init https://bugzilla.gnome.org/show_bug.cgi?id=745159 2015-02-24 19:01:45 -0500 Nicolas Dufresne * ext/gl/Makefile.am: opengl: Clean Makefile.am + Split headers from source + Remove uneeded AM_CFLAGS, AM_LDFLAGS + Always set OBJCFLAGS Due to the presence of a .m and regardless of the conditional values, automake will promote the link command to OBJC using OBJCFLAGS. Only the basic flags (like warnings and optimization) are going to make a difference though. This cleanup builds up the makefile with less specific files first toward more specific file. FLAGS are built with the basic that unused flags will have empty variable. 2015-02-24 12:54:54 -0500 Xavier Claessens * ext/gl/gstglimagesink.c: glimagesink: cosmetic cleanup https://bugzilla.gnome.org/show_bug.cgi?id=745105 2015-02-24 19:52:59 +0000 Tim-Philipp Müller * ext/gl/Makefile.am: opengl: don't add --tag=CC twice to LIBTOOLFLAGS 2015-02-24 14:35:37 -0500 Nicolas Dufresne * ext/gl/Makefile.am: opengl: Add --tag=CC to LIBTOOLCLFAGS This is required for static build. 2015-02-24 18:50:03 +0000 Luis de Bethencourt * gst/jpegformat/gstjpegparse.c: * tests/check/elements/jpegparse.c: jpegparse: interlaced doesn't mean progressive scan Removing interlaced variable since it is meant to mean progressive scan and that isn't used. 2015-02-24 18:38:31 +0000 Luis de Bethencourt * tests/check/elements/jpegparse.c: Revert "tests: check jpegparse for progressive marker" This reverts commit 1c77d12ce8770f0e065e9c00c35d711fdef1c9f8. "interlaced" in the caps don't mean the same thing as the SOF2 marker in the JPEG format. This test passes because of broken behaviour. 2015-02-24 17:41:43 +0000 Luis de Bethencourt * tests/check/elements/jpegparse.c: tests: check jpegparse for progressive marker 2015-02-24 14:01:04 +0100 Edward Hervey * gst-libs/gst/gl/gstglwindow.c: glwindow: Deactivate window before changing handle When setting a new window handle, we need to ensure all implementations will detect the change. For that we deactivate the context before setting the window handle, then reactivate the context https://bugzilla.gnome.org/show_bug.cgi?id=745090 2015-02-24 13:58:26 +0100 Edward Hervey * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: gl/egl: Detect window handle changes When (re)activating the context, the backing window handle might have changed. If that happened, destroy the previous surface and create a new one https://bugzilla.gnome.org/show_bug.cgi?id=745090 2015-02-24 14:20:42 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglapi.c: gl: remove docbook related warnings 2015-02-24 13:51:24 +0000 Luis de Bethencourt * ext/modplug/gstmodplug.cc: modplug: remove unused variable 2015-02-24 13:36:00 +0000 Luis de Bethencourt * ext/modplug/gstmodplug.cc: modplug: not using deprecated API anymore 2015-02-24 13:16:21 +0000 Luis de Bethencourt * ext/modplug/gstmodplug.cc: modplug: update example pipeline command 2015-02-24 19:03:43 +0530 Arun Raghavan * gst-libs/gst/mpegts/gst-dvb-section.c: mpegts: Fix a compiler warning Causes the following warning on clang: gst-dvb-section.c:567:36: error: format specifies type 'unsigned long' but the argument has type 'int' [-Werror,-Wformat] descriptors_loop_length, end - 4 - data); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ 2015-02-24 23:54:13 +1100 Matthew Waters * sys/applemedia/vtdec.c: vtdec: only attempt use of the texture cache with GLMemory caps features Otherwise we send rectangle textures to glimagesink 2015-02-24 23:52:39 +1100 Matthew Waters * ext/gl/caopengllayersink.m: caopengllayersink: render black when we don't have a texture to display Like when the winsys asks us to redraw before the pipeline has started 2015-02-25 00:00:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: allow sharing between buffers There was no real reason why the flag was set. We should be able to handle it. Fixes last-sample handling on gl sinks 2015-02-24 20:34:35 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: add compat definition for gles2 2015-02-24 11:19:04 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Don't initialize the render window swap chain while the device is lost and we're waiting for reset https://bugzilla.gnome.org/show_bug.cgi?id=744615 2015-02-24 11:18:38 +0200 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Deactivate the fallback buffer pool when replacing it during caps changes https://bugzilla.gnome.org/show_bug.cgi?id=744615 2015-01-29 17:41:19 +1100 Matthew Waters * ext/gl/Makefile.am: * ext/gl/caopengllayersink.h: * ext/gl/caopengllayersink.m: * ext/gl/gstopengl.c: new caopengllayersink element renders gstreamer gl scene/video frames to a caopengllayer retreivable from the "layer" property. 2015-01-19 12:43:23 +1100 Matthew Waters * configure.ac: * sys/applemedia/Makefile.am: * sys/applemedia/avsamplevideosink.h: * sys/applemedia/avsamplevideosink.m: * sys/applemedia/plugin.m: * tests/examples/Makefile.am: * tests/examples/avsamplesink/.gitignore: * tests/examples/avsamplesink/Makefile.am: * tests/examples/avsamplesink/main.m: applemedia: new AVSampleBufferLayerSink Renders buffers using the CALayer subclass AVSampleBufferDisplayLayer which can be placed inside a Core Animation render tree. 2015-02-24 19:06:18 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: don't use the async callback to render not until we can provide equivalent functionality for other window implementations. 2015-02-24 01:20:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: also supported with gles3 2015-02-24 14:23:49 +1100 Alessandro Decina * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: libgstgl: eagl: handle CALayer resize 2015-02-23 16:13:31 +0100 Vasilis Liaskovitis * gst-libs/gst/gl/gstglmemory.c: glmemory: Fix transfer_pbo memory leak https://bugzilla.gnome.org/show_bug.cgi?id=744977 2015-02-22 10:03:54 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: reduce custom main loop latency This fix a very slow rendering rate regression that only happens when using gst-launch, i.e. in the case where the main thread does not run any NSApp loop. Git bisect reported it has been introduced by the commit e10d2417e2fe7aa4733c076984339b0d61caa169: "move to CGL and CAOpenGLLayer for rendering". Then the commit 7d463576271e5a4cc1070780ba1a69c971e8be1d: "gstglwindow_cocoa: fix slow render rate" attempted to fix the slow rendering rate problem when using gst-launch. At least for me it does not work. I tried several combinations, for example to flush CA transactions in the custom app loop, as mentioned in the doc, but the only solution that fixes the slow rendering is by reducing the loop latency. From what I tested, no need to put less than 60ms, even if the framerate has an interval much lower (16.6ms for 60 fps). 2015-02-17 23:50:51 +0000 Julien Isorce * ext/gl/gstglmixerpad.h: glmixer: fix some compiler warnings i686-apple-darwin11-llvm-gcc-4.2 gstglmixer.h:43: error: redefinition of typedef ‘GstGLMixer’ gstglmixerpad.h:32: error: previous declaration of ‘GstGLMixer’ was here gstglmixer.h:46: error: redefinition of typedef ‘GstGLMixerFrameData’ gstglmixerpad.h:33: error: previous declaration of ‘GstGLMixerFrameData’ was here 2015-02-21 19:07:29 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-opus.xml: docs: update 2015-02-21 19:07:14 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: add opus elements to documentation 2015-02-21 18:52:00 +0000 Luis de Bethencourt * tests/examples/mxf/mxfdemux-structure.c: mxf-example: don't quit on Warning Don't quit on Warning. Print out a message when there is an Error or Warning. 2015-02-21 18:47:29 +0000 Luis de Bethencourt * tests/examples/mxf/mxfdemux-structure.c: mxf-example: always show gtk window Show gtk window even when there are no tags, to always have visual feedback about the pipeline running. 2015-02-21 17:35:03 +0000 Luis de Bethencourt * tests/examples/mxf/mxfdemux-structure.c: mxf-example: merge returns in g_value_to_string() 2015-02-21 17:25:51 +0000 Luis de Bethencourt * tests/examples/mxf/mxfdemux-structure.c: mxf-example: make bus_callback consistent Simplify the bus_callback to make it consisten with other examples. 2015-02-21 17:18:02 +0000 Luis de Bethencourt * tests/examples/mxf/mxfdemux-structure.c: mxf-example: fix usage of argc and argv 2015-02-21 17:02:09 +0000 Luis de Bethencourt * tests/examples/camerabin2/gst-camera2.c: camerabin examples: remove unneeded variable ret is only used once, we don't need to store it in a variable for that. 2015-02-21 14:42:05 +0100 Mathieu Duponchelle * gst-libs/gst/gl/gstglmemory.c: gstglmemory: Remove now unused transfer_upload function. 2015-02-21 23:29:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: disable automatic pbo upload until we can track where the data is/or is going to be. 2015-02-20 13:55:05 +0000 Alex Ashley * ext/hls/m3u8.c: * ext/hls/m3u8.h: * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: select correct starting position for live streams When playing live HLS streams, the media playback starts from the beginning of the media playlist. When playing a live HLS stream, media playback should start from 3 fragments from the end of the playlist. See section 6.3.3. of the HLS draft [1] This commit changes the logic to select 3 fragments from the end when playing a live stream. [1] http://tools.ietf.org/html/draft-pantos-http-live-streaming-12#page-29 https://bugzilla.gnome.org/show_bug.cgi?id=727742 2015-02-20 18:42:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glememory: only store and act on the map flags on first/last map/unmap Anytime else, we have no idea how to match up map and unmaps. We also don't know exactly how the calling code is using us. Also fixes the case where we're trying to transfer while someone else is accessing our data pointer or texture resulting in mismatched video frames. https://bugzilla.gnome.org/show_bug.cgi?id=744839 2015-02-19 21:21:56 -0500 Olivier Crete * gst-libs/gst/base/gstaggregator.c: aggregator: Use src_lock to protect latency related members One has to use the src_lock anyway to protect the min/max/live so they can be notified atomically to the src thread to wake it up on changes, such as property changes. So no point in having a second lock. Also, the object lock was being held across a call to GST_ELEMENT_WARNING, guaranteeing a deadlock. 2015-02-19 18:53:32 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Remove untrue comment 2015-02-19 18:30:35 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Don't try to push tags while flush seeking The downstream segment could have been flushed already, so need to re-send the segment event before re-sending the tags. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-02-19 14:34:23 +0100 Guillaume Seguin * ext/hls/gsthlssink.c: hlssink: reduce playlist's EXT-X-VERSION to 3 We are not using any features greater than the 3rd version, so reduce to what we actually use to make it compatible with more players https://bugzilla.gnome.org/show_bug.cgi?id=744689 2015-02-19 14:30:10 +0000 Vincent Penquerc'h * ext/opus/gstrtpopuspay.c: rtpopuspay: default encoding name to OPUS https://bugzilla.gnome.org/show_bug.cgi?id=737810 2015-02-19 14:05:06 +0000 Vincent Penquerc'h * ext/opus/gstrtpopuspay.c: rtpopuspay: make caps writable before truncating them https://bugzilla.gnome.org/show_bug.cgi?id=737810 2015-02-05 10:27:51 +0000 Vincent Penquerc'h * ext/opus/gstrtpopuspay.c: rtpopuspay: negotiate the encoding name Chrome uses a different encoding name that gstreamer. https://bugzilla.gnome.org/show_bug.cgi?id=737810 2015-02-19 17:21:46 +0530 Vineeth T M * gst/videosignal/gstsimplevideomarkdetect.c: simplevideomarkdetect: move offset calculations out of inner loops the calculations for detecting the videomark is being repeated in for loop unnecessarily. Moving this outside of for loop such that the code need not be executed evertime the loop is executed. https://bugzilla.gnome.org/show_bug.cgi?id=744778 2015-02-19 11:04:28 +0200 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Use the sinkpads iterator directly to query upstream latencies While gst_aggregator_iterate_sinkpads() makes sure that every pad is only visited once, even when the iterator has to resync, this is not all we have to do for querying the latency. When the iterator resyncs we actually have to query all pads for the latency again and forget our previous results. It might have happened that a pad was removed, which influenced the result of the latency query. 2015-02-19 10:57:09 +0200 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Move gst_aggregator_get_latency_unlocked() a bit It was between another function and its helper function before, which was confusing when reading the code as it had nothing to do with the other functions. 2015-02-19 01:28:30 +0200 Sebastian Dröge * ext/resindvd/rsninputselector.c: rsninputselector: Fail the latency query if one of the upstream queries fails 2015-02-19 01:28:20 +0200 Sebastian Dröge * gst/liveadder/liveadder.c: liveadder: Fail the latency query if one of the upstream queries fails 2015-02-19 01:28:06 +0200 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Fail the latency query if one of the upstream queries fails 2015-02-18 19:06:09 +0200 Sebastian Dröge * sys/applemedia/avfvideosrc.m: avfvideosrc: Only set latency if we already know our caps Otherwise we might set bogus values or GST_CLOCK_TIME_NONE. Also make sure to reset the caps field to NULL after unreffing the caps to prevent accidential use afterwards, and unref any old caps before we remember new caps. 2015-02-18 15:53:53 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Document locking order https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-02-18 15:11:14 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Rename confusinly named SRC_STREAM_LOCK macros to SRC_LOCK This will match the name of the lock itself. It is also not a stream lock as it not recursive and not held while pushing. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-02-18 15:06:01 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Rename confusingly named stream lock to flush lock This lock is not what is commonly known as a "stream lock" in GStremer, it's not recursive and it's taken from the non-serialized FLUSH_START event. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-02-18 15:04:04 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Fix macro indendation Changes no code https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-02-18 17:10:48 -0500 Nicolas Dufresne * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransform: Fix includes of graphene headers The graphene-1.0 part should not be in the source code. This directory is part of the cflags include. This is similar to gstreamer-1.0/ directory. This break compilation if the include directory where graphene is installed is not in your include path. 2015-02-18 19:07:42 +0000 Luis de Bethencourt * gst/mxf/mxfdemux.c: mxfdemux: remove unneeded values No need to store the GstFlowReturn when we can check if it is not OK directly 2015-02-18 18:33:20 +0000 Luis de Bethencourt * gst/mxf/mxfdemux.c: mxfdemux: renaming GstFlowReturn variable Having a variable named ret in a static void function is very confusing since this usually is to store what the function will return. 2015-02-18 18:00:48 +0000 Luis de Bethencourt * gst/mxf/mxfdemux.c: mxfdemux: remove ignored value Value stored in ret will be ovewritten in the next iteration of the loop. Which means it is never used. Plus a style issue to make gst-indent happy and allow the commit. 2015-02-18 17:41:25 +0200 Sebastian Dröge * ext/opus/gstopusenc.c: opusenc: Remove g_warnings() for the deprecated audio property Otherwise there are g_warnings() already when just using gst-inspect or dumping a pipeline graph. 2015-02-15 23:16:52 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: protect against malformed isombff format Be more careful around malformed mpds that announce using isombff profile but actually are regular mpds 2015-02-18 12:45:22 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Deactivate the fallback pool and unref the fallback buffer when resetting Otherwise we will still have a reference to the surface left, which would prevent activating the sink again later. E.g. after we lost the device. Hopefully fixes https://bugzilla.gnome.org/show_bug.cgi?id=744615 2015-02-17 11:53:49 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: remove unused define 2015-02-17 11:41:27 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: use correct function to clear fragment info Just freeing the url won't reset the byte ranges and can lead to wrong ranges being used. 2015-02-17 10:50:59 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: depracate bandwidth-usage in favor of bitrate-limit Bitrate-limit is already available in the baseclass and, even though the bandwidth-usage name is better, hls and mss already used bitrate-limit. This patch deprecates the bandwidth-usage and maps it to the baseclass bitrate-limite. 2015-02-17 10:40:06 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: add bitrate-limit property Move the property from subclasses to adaptivedemux, it allows selecing the percentage of the measured bitrate to be used when selecting stream bitrates 2015-02-17 10:04:30 -0300 Thiago Santos * ext/hls/gsthlssink.c: * ext/hls/gstm3u8playlist.c: hlssink: allow creation of 'infinite' playlist Allow the playlist-length to accept '0' as a value, indicating that no segment should be removed from the playlist. This allows generating playlists to be used as VOD when complete. 2015-02-17 10:04:27 -0300 Thiago Santos * ext/hls/gsthlssink.c: * ext/hls/gstm3u8playlist.c: * ext/hls/gstm3u8playlist.h: hlssink: remove unused attribute the GFile attribute is never used 2015-02-17 10:03:44 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: add connection-speed property Allows to set a bitrate directly instead of measuring it internally based on the received chunks. The connection-speed was removed from mssdemux and hlsdemux as it is now in the base class 2015-02-17 00:34:55 +0000 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: basecamerabinsrc: don't use private GMutex implementation details Don't use private GMutex implementation details to check whether it has been freed already or not. Just clear mutex and GCond unconditionally in free function, they are always inited anyway, and the free function can't be called multiple times either. 2015-02-16 23:54:28 +0000 Tim-Philipp Müller * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: don't use private GMutex implementation details Don't use private GMutex implementation details to check whether it has been freed already or not. Just turn dispose function into finalize function which will only be called once, that way we can just clear the mutex unconditionally. 2015-02-17 18:17:59 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: don't deadlock if the dispatch_sync is called from the main thread Provide a helper function to check whether we are being called from the main thread and act appropriately. 2015-02-17 16:41:17 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/calayer: only start drawing if the parent gl context is ready otherwise we may try to use GstGLFuncs * that hasn't been set yet 2015-02-17 16:39:56 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: small refactor of layer/view creation into the window 2015-02-17 01:04:38 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: glwindow: Remove assertion in gst_gl_window_show() for subclasses not implementing it On Android and iOS we can't create a window ourselves, so also can't just show one. That's not a problem and an assertion is not really needed here. 2015-02-16 12:35:09 +0200 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Check if VTSessionCopyProperty() succeeds before using the result https://bugzilla.gnome.org/show_bug.cgi?id=744585 2015-02-13 23:45:20 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: drop GAP events until we handle them properly 2015-02-12 12:04:44 +0530 Vineeth T M * gst/videosignal/gstsimplevideomark.c: simplevideomark: refactor code the calculations for drawing the videomark is being repeated in for loop unnecessarily. Moving this outside of for loop such that the code need not be executed evertime the loop is executed. https://bugzilla.gnome.org/show_bug.cgi?id=744371 2015-02-09 11:21:35 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Fix segment and segment event handling during seeking Always update the segment and not only for accurate seeking and always send a new segment event after seeks. For non-accurate force a reset of our segment info to start from where our seek led us as we don't need to be accurate https://bugzilla.gnome.org/show_bug.cgi?id=743363 2015-02-13 16:06:34 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: use new gst_aggregator_pad_drop_buffer() 2015-02-13 16:03:53 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: use new gst_aggregator_pad_drop_buffer() 2015-02-13 15:53:19 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: * tests/check/libs/aggregator.c: aggregator: use new gst_aggregator_pad_drop_buffer() 2015-02-13 15:49:50 +0000 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: add gst_aggregator_pad_drop_buffer() steal_buffer() + unref seems to be a wide-spread idiom (which perhaps indicates that something is not quite right with the way aggregator pad works currently). 2015-02-12 13:32:39 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: only post latency message if anything changed Perhaps we should check for element state as well and only post it if in PLAYING state. 2015-02-12 15:48:07 +0000 Tim-Philipp Müller * tests/check/elements/audiomixer.c: * tests/check/elements/compositor.c: tests: remove GST_DISABLE_PARSE guards from two tests that don't require it 2015-01-28 12:12:26 +0530 Arun Raghavan * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: opensles: Make debug category naming a bit more consistent 2015-02-13 19:12:20 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: applemedia: avfvideosrc: fix crash when non-GL memory is used 2015-02-05 18:10:15 +0100 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix logic in fragment_download_finish. This was preventing us from surfacing a meaningful error. https://bugzilla.gnome.org/show_bug.cgi?id=743703 2015-02-12 22:06:17 +0100 Mathieu Duponchelle * ext/dash/gstdashdemux.c: dashdemux: Fix handling of live streams with timeshift buffers. By implementing get_live_seek_range. As shown by : gst-validate-1.0 playbin \ uri=http://dev-iplatforms.kw.bbc.co.uk/dash/news24-avc3/news24.php This patch handles live seeking, by setting a live seek range comprised between now - timeShiftBufferDepth and now. The inteersting thing with this stream is that one can actually ask fragments up to availabilityStartTime, but it seems quite clear in the spec that content is only guaranteed to exist up to timeShiftBufferDepth. One can test live seeking this way : gst-validate-1.0 playbin \ uri=http://dev-iplatforms.kw.bbc.co.uk/dash/news24-avc3/news24.php \ --set-scenario seek_back.scenario with scenario being: description, seek=true seek, playback-time=position+5.0, start="position-600.0", flags=accurate+flush This example will play the stream, wait for five seconds, then seek back to a position 10 minutes earlier. https://bugzilla.gnome.org/show_bug.cgi?id=744362 2015-02-12 22:04:10 +0100 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Set first segment time to segment start. Otherwise as long as a seek wasn't executed, the position was reported incorrectly: gst-validate-1.0 playbin \ uri=http://dev-iplatforms.kw.bbc.co.uk/dash/news24-avc3/news24.php https://bugzilla.gnome.org/show_bug.cgi?id=744362 2015-02-12 17:33:50 +0100 Edward Hervey * ext/gl/gstglimagesink.c: glimagesink: Fix debug statement 2015-02-12 15:02:31 +0100 Edward Hervey * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: gl: Add/Update more debug statements Where possible, use the _OBJECT variants in order to track better from which object the debug statement is coming from Define (and use) GST_CAT_DEFAULT where applicable Use GST_PTR_FORMAT where applicable 2015-02-12 14:58:14 +0100 Edward Hervey * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.h: gl: Make glcontext debug category used in more places As a bonus it makes the egl context debug messages visible now :) 2015-02-12 14:56:12 +0100 Edward Hervey * ext/gl/gstglimagesink.c: glimagesink: Sprinkle more debug 2015-02-12 11:15:31 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: set proper stream type to streams strncmp returns 0 when it compares equal and not a boolean 2015-02-12 11:26:44 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: calculate stream_time used to sync pad values correctly Use pad (input) segment to calculate the stream time from the input timestamp, not the aggregator (output) segment. 2015-02-12 11:11:19 +0200 Sebastian Dröge * sys/applemedia/avfvideosrc.m: avfvideosrc: Only use the duration of the sample if it is valid 2015-01-27 13:48:42 +0100 Mathieu Duponchelle * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: track per-fragment bitrates. And use the average to go up in resolution, and the last fragment bitrate to go down. This allows the demuxer to react rapidly to bitrate loss, and be conservative for bitrate improvements. + Add a construct only property to define the number of fragments to consider when calculating the average moving bitrate. https://bugzilla.gnome.org/show_bug.cgi?id=742979 2015-02-11 14:44:16 +0100 Sebastian Dröge * ext/x265/gstx265enc.c: x265enc: Add support for 10bit 4:2:0 and 4:4:4 formats 2015-02-11 14:16:21 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: * ext/resindvd/rsninputselector.c: * ext/x265/gstx265enc.c: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/audiomixer/gstaudiomixer.c: * gst/frei0r/gstfrei0rmixer.c: * gst/inter/gstinteraudiosrc.c: * gst/liveadder/liveadder.c: * gst/videomeasure/gstvideomeasure_ssim.c: Improve and fix LATENCY query handling This now follows the design docs everywhere, especially the maximum latency handling. https://bugzilla.gnome.org/show_bug.cgi?id=744106 2015-02-10 15:55:50 +0800 Song Bing * tests/examples/camerabin2/gst-camera2.c: camerabin examples: memory leak in camerabin examples code should unref caps after set to profile. profile will ref it. https://bugzilla.gnome.org/show_bug.cgi?id=744219 2015-02-10 15:53:21 +0800 Song Bing * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin examples: memory leak in camerabin examples code should unref after set object. The object will be refed when set property. https://bugzilla.gnome.org/show_bug.cgi?id=744219 2015-02-10 16:18:34 +0100 Sebastian Dröge * sys/opensles/openslesringbuffer.c: openslesringbuffer: Only allocate at most half the number of internal buffers as external audioringbuffer ones Otherwise we might end up reading too much from the audioringbuffer, which would result in reading silence. 2015-02-10 16:01:19 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Apply the diff between element and pipeline "base" time in all cases Even if both clocks have the same rate, we need to apply this diff. Only when it's the same clock we don't, as it's our clock then. 2015-02-10 15:30:44 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Add the diff between the pipeline base time and when we start to play Add the diff between the external time when we went to playing and the external time when the pipeline went to playing. Otherwise we will always start outputting from 0 instead of the current running time. 2015-02-10 14:53:55 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Actually include the change mentioned in the last commit 2015-02-10 14:48:09 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideo{src,sink}: Sample the internal clock immediately after starting the device Otherwise we might stay at 0.0s for too long because we will take the first timestamp we ever see as 0.0... which will be after we started the device. 2015-02-10 10:56:37 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: When receiving timeout before caps, make sure to also advance our frame counter Otherwise we will directly go EOS on the next non-timeout. 2015-02-10 10:49:16 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Pause srcpad task on flow errors Otherwise we will call the task function over and over again until upstream finally handled the flow return and shuts us down. 2015-02-09 00:59:30 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix buffer selection when duration=-1 If the src framerate and videoaggreator's output framerate were different, then we were taking every single buffer that had duration=-1 as it came in regardless of the buffer's start time. This caused the src to possibly run at a different speed to the output frames. https://bugzilla.gnome.org/show_bug.cgi?id=744096 2015-02-09 21:04:17 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix compiler warning with gcc gstdecklink.cpp: In member function 'virtual HRESULT GStreamerDecklinkInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*)': gstdecklink.cpp:498:22: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] if (capture_time > m_input->clock_start_time) ^ gstdecklink.cpp:503:22: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] if (capture_time > m_input->clock_offset) ^ 2015-02-09 17:17:37 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink{audio,video}src: Implement clock slaving if the pipeline clock is not the decklink clock 2015-02-09 17:15:21 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudio{src,sink}: Only start streams / scheduled playback if there is a videosrc at this point 2015-02-09 17:04:27 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't provide a clock The audio source only works together with the video source, and the video source is already providing a clock. 2015-02-09 16:18:03 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Throttle reading from the ringbuffer The driver has an internal buffer of unspecified and unconfigurable size, and it will pull data from our ring buffer as fast as it can until that is full. Unfortunately that means that we pull silence from the ringbuffer unless its size is by conincidence larger than the driver's internal ringbuffer. The good news is that it's not required to completely fill the buffer for proper playback. So we now throttle reading from the ringbuffer whenever the driver has buffered more than half of our ringbuffer size by waiting on the clock for the amount of time until it has buffered less than that again. 2015-02-09 15:19:11 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: decklinkaudiosink: Start scheduled playback when going to PLAYING The ringbuffer's acquire() is too early, and ringbuffer's start() will only be called after the clock has advanced a bit... which it won't unless we start scheduled playback. 2015-02-09 21:18:24 +1100 Alessandro Decina * sys/applemedia/corevideotexturecache.m: * sys/applemedia/vtdec.c: vtdec: fix texture sharing on iOS Move GLES calls to the context thread. Fix CVOpenGLESTextureCacheCreateTextureFromImage usage on iOS. 2015-02-09 20:44:50 +1100 Alessandro Decina * gst-libs/gst/gl/gstglmemory.c: libgstgl: set user data and GDestroyNotify for wrapped textures 2015-02-08 21:53:58 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink{audio,video}src: Take the capture times from the pipeline clock Not from the decklink clock. Both will return exactly the same time once the decklink clock got slaved to the pipeline clock and received the first observation, but until then it will return bogus values. But as both return exactly the same values, we can as well use the pipeline clock directly. 2015-02-08 14:32:22 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: don't set element factory details This is an abstract base class, not an element. 2015-02-08 01:19:42 +1100 Rob Clark * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: some optimizations Detect invisible pixels, and skip gstspu_vobsub_blend_comp_buffers() when there are only invisible pixels. This significantly reduces the CPU load in cases of DVDs which don't use the clip_rect to exclude processing for parts of the screen where the video is visible. https://bugzilla.gnome.org/show_bug.cgi?id=667221 2015-02-08 05:06:48 +1100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Avoid warning if the video for a still frame arrives after the SPU When we don't have a segment on the video pad yet during a still frame don't freak out. 2015-02-08 04:51:13 +1100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Don't send meaningless segment position downstream Don't place a meaningless value in the position field in outgoing segments - values have to be in the range start->stop. https://bugzilla.gnome.org/show_bug.cgi?id=740558 2015-02-06 16:22:26 +0000 Luis de Bethencourt * gst/aiff/aiffparse.c: Revert "aiffparse: make sure we have data before handling sink event" This reverts commit a4baabb48d252214d3833b502c7903d9f15f3502. 2015-02-06 15:10:55 +0000 Luis de Bethencourt * gst/aiff/aiffparse.c: aiffparse: make sure we have data before handling sink event Check AIFF_PARSE_DATA is True before handling sink event, if not goto exit. 2015-02-05 15:57:59 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.h: audiomixer: remove now-unused base_time field in object structure 2015-02-06 10:59:27 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Streamline latency calculations Min latency can never be invalid, latency property can never be invalid either. So no need to check for all these things in various places. 2015-02-06 10:36:28 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: If upstream has no max latency but the subclass has, take the subclass max latency 2015-02-06 10:33:59 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Fix min>max latency error check We have to include the upstream latency, our own latency and the subclass latency in the calculations. FIXME: This is still not entirely correct 2015-02-06 10:30:59 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Don't add the latency property to the max latency It has no meaning for the max latency and is only used to increase the min latency. 2015-02-06 12:53:15 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/vao.h: glproto/vao: only supported in core for ES 3.0+ Was causing horizontally flipped video for frame 2 onward on android 2015-02-05 13:31:18 -0300 Thiago Santos * ext/faac/gstfaac.c: faac: relace parsed with framed in aac caps For AAC it should always be 'framed' and not 'parsed' 2015-02-05 11:39:55 -0300 Thiago Santos * ext/faac/gstfaac.c: faac: fix output caps to negotiate with some muxers Add parsed/framed=true to allow negotiation with some muxers that required parsed input. Encoders already provide parsed/framed output so it should say so in caps. 2015-02-05 15:48:41 +0000 Tim-Philipp Müller * tests/check/elements/compositor.c: tests: compositor: add unit test for proper segment.base handling As adjusted by gst_pad_set_offset(), or when doing segment seeks or looping for example. 2015-02-05 15:23:04 +0000 Tim-Philipp Müller * tests/check/elements/audiomixer.c: tests: audiomixer: add unit test for proper segment.base handling As adjusted by gst_pad_set_offset(), or when doing segment seeks or looping for example. See previous audiomixer commit. 2015-02-05 16:02:54 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Remove weird and wrong segment handling There's no reason why audiomixer should override the segment base of upstream with whatever value it got from a SEEK event, or even worse... with 0 if there was no SEEK event yet. This broke synchronization if upstream provided a segment base other than 0, e.g. when using pad offsets. Also that this code did things conditional on the element's state should've been a big warning already that something is just wrong. If this breaks anything else now, let's fix it properly :) Also don't do fancy segment position trickery when receiving a segment event. It's just not correct. 2015-02-05 12:24:04 +0100 Sebastian Dröge * sys/opensles/openslesringbuffer.c: openslesringbuffer: Only pre-roll a single buffer There is no reason to pre-roll more buffers here as we have our own ringbuffer with more segments around it, and we can immediately provide more buffers to OpenSL ES when it requests that from the callback. Pre-rolling a single buffer before starting is necessary though, as otherwise we will only output silence. Lowers latency a bit, depending on latency-time and buffer-time settings. 2015-02-05 12:22:46 +0100 Sebastian Dröge * sys/opensles/openslesringbuffer.c: openslesringbuffer: Allocate at most 4 internal buffers 4 is the "typical" number of buffers defined by Android's OpenSL ES implementation, and its code is optimized for this. Also because we have our own ringbuffer around this, we will always have enough buffering on our side already. Allows for more efficient processing. 2015-02-05 12:21:55 +0100 Sebastian Dröge * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: openslessink/src: Lower default buffer time to 200ms like alsasink 2015-02-05 16:46:32 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: ensure that the input upload/colorconvert are always available 2015-02-05 11:06:10 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: log the converted caps 2015-02-05 11:05:02 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: restrict EGL and UploadMeta to RGBA other formats are highly untested. 2015-02-05 11:04:05 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: don't intersect with the input caps that limits our formats to whatever is in the input caps 2015-02-04 14:10:13 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglfilter.c: gl: fix memory leak In gst_gl_filter_fixate_caps () it can goto done without freeing the memory of the tmp GstStructure. This makes it go out of scope and leak. CID #1265765 2015-02-04 11:52:26 +0000 Luis de Bethencourt * ext/opencv/MotionCells.cpp: motioncells: initialize class variables Some variables are not initialized in the constructor. It is highly unlikely they are used before being set, but it is safer to initialize them. CID #1197704 2015-02-03 18:13:25 -0500 Nicolas Dufresne * sys/winks/kshelpers.c: ksvideosrc: Fix missing brace warning There is more but it's from ks.h GUID initializer, which is shipped this way with mingw. 2015-02-03 17:44:34 -0500 Nicolas Dufresne * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: ksvideosrc: Fix buffer handling The pseudo buffer pool code was using gst_buffer_is_writable() alone to try and figure-out if cached buffer could be reused. It needs to check for memory writability too. Also check map result and fix map flags. https://bugzilla.gnome.org/show_bug.cgi?id=734264 2015-02-03 17:05:06 -0300 Thiago Santos * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: avoid leaking force keyunit event when going to NULL Do not set to NULL before unreffing the event or it will leak 2013-03-18 08:15:00 +0000 Anton Gritsay * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: parse force key unit events with the correct function Otherwise it won't be parsed and bogus values would be used. https://bugzilla.gnome.org/show_bug.cgi?id=696032 2015-01-26 20:42:25 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: remove update segment logic This is not needed in 1.x series anymore 2015-02-03 10:59:16 -0300 Aurélien Zanelli * gst/mpegtsdemux/tsdemux.c: tsdemux: don't mark streams as needing a new segment on flush The flush is called on discont and we shouldn't output a new segment each time a discont happens. So this commit remove the mark for a new segment when flushing streams by propagating the 'hard' flag passed on the flusing from the base class. https://bugzilla.gnome.org/show_bug.cgi?id=743363 2015-02-03 17:32:03 +0100 Sebastian Dröge * sys/applemedia/corevideotexturecache.m: corevideotexturecache: Add some assertions instead of just dereferencing NULL 2015-02-03 17:29:25 +0100 Sebastian Dröge * sys/applemedia/corevideotexturecache.m: corevideotexturecache: Don't unconditionally use the CoreMedia meta on iOS We might instead have a CoreVideo meta. 2015-02-03 14:55:32 +0000 Tim-Philipp Müller * common: Undo accidental common module rewind in commit 7d463576 2015-02-03 15:38:40 +0100 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Don't dereference NULL frames when draining/flushing 2015-02-03 15:30:08 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: gl: remove the egl caps from the src pads we don't actually support producing EGLImage buffers anywhere. 2015-02-03 13:32:47 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: put GstGLSyncMeta on output buffers allows thread safely using the provided output buffer in a separate thread 2015-02-03 00:35:26 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: only try the glmemory upload for sysmem/glmemory caps features Allows selecting/testing the upload path with explicit caps features. 2015-02-03 00:26:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add missing initilisation of tex_target when copying fixes: glcolorscale ! video/x-raw\(meta:GstVideoGLTextureUploadMeta\) ! glimagesink 2015-02-03 00:15:30 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: allow NULL buffer for accept vfunc 2015-02-03 00:13:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: remove unsed convert field in private struct 2015-02-03 00:11:06 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: glupload/download/convert: provide transform_caps functions Allows finer grain decisions about formats and features at each stage of the pipeline. Also provide propose_allocation for glupload besed on the supported methods. 2015-02-03 11:07:58 +1100 Alessandro Decina * common: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gstglwindow_cocoa: fix slow render rate In gst_gl_window_cocoa_draw we used to just call setNeedsDisplay:YES. That was creating an implicit CA transaction which was getting committed at the next runloop iteration. Since we don't know how often the main runloop is running, and when we run it implicitly (from gst_gl_window_cocoa_nsapp_iteration) we only do so every 200ms, use an explicit CA transaction instead and commit it immediately. CA transactions nest and debounce automatically so this will never result in extra work. 2015-02-02 23:40:16 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: gstglcaopengllayer: use the correct rectangle type for iOS and OS X 2015-02-02 21:07:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: use the correct caps feature for supported caps glcolorconvert currently only supports converting between GLMemory targets. 2015-02-02 20:51:31 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsyncmeta: don't use the gst debug object variants We are not a GObject or any inferable GstMiniObject supported by the gst debug system. Also fixes a segfault. 2015-01-30 18:51:17 +1100 Matthew Waters * tests/check/libs/gstglmemory.c: gl: update unit test for glmemory api change 2015-01-30 15:13:27 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: clobber the alpha channel by default this can be disabled with the ignore-alpha property 2015-01-30 12:32:17 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: Revert "libgstgl: gstglcaopengllayer: set the layer as opaque" This reverts commit 6f152d381ca21595cdc823f32341c8f2fe71b9c7. The layer shouldn't be always opaque, it should be made a property. 2015-01-30 12:22:25 +1100 Alessandro Decina * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: libgstgl: gstglcaopengllayer: set the layer as opaque 2015-01-29 16:30:34 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Add FIXME comment about possibility of non-Apple YCbCr422 rectangular textures 2015-01-29 16:26:26 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Only use GL_TEXTURE_RECTANGLE with OpenGL It's not defined for GLES. 2015-01-30 00:28:18 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: * sys/applemedia/corevideotexturecache.h: * sys/applemedia/corevideotexturecache.m: * sys/applemedia/vtdec.c: applemedia: rework GL texture sharing Use YUV instead of RGB textures, then convert using the new apple specific shader in GstGLColorConvert. Also use GLMemory directly instead of using the GL upload meta, avoiding an extra texture copy we used to have before. 2015-01-28 00:53:59 +1100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix CMBlockBufferRef leak Fix huge leak that went unnoticed for too long. Oops. 2015-01-28 00:48:27 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: libgstgl: run a custom shader to convert YUV to RGB on mac and ios When GL_APPLE_ycbcr_422 is available, run a custom shader to convert GL_TEXTURE_RECTANGLE textures from YUV to RGB. See https://www.opengl.org/registry/specs/APPLE/ycbcr_422.txt 2015-01-28 00:43:09 +1100 Alessandro Decina * sys/applemedia/avfassetsrc.m: * sys/applemedia/avfvideosrc.m: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/vtenc.c: applemedia: don't call CVPixelBufferLockBaseAddress when doing texture sharing When doing texture sharing we don't need to call CVPixelBufferLockBaseAddress to map the buffer in CPU. This cuts about 10% relative cpu time from a vtdec ! glimagesink pipeline. 2015-01-28 00:13:46 +1100 Alessandro Decina * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstgluploadmeta.c: gl: initial support for texture targets other than GL_TEXTURE_2D Make GstGLMemory hold the texture target (tex_target) the texture it represents (tex_id) is bound to. Modify gst_gl_memory_wrapped_texture and gst_gl_download_perform_with_data to take the texture target as an argument. This change is needed to support wrapping textures created outside libgstgl, which might be bound to a target other than GL_TEXTURE_2D. For example on OSX textures coming from VideoToolbox have target GL_TEXTURE_RECTANGLE. With this change we still keep (and sometimes imply) GL_TEXTURE_2D as the target of textures created with libgstgl. API: modify GstGLMemory API: modify gst_gl_memory_wrapped_texture API: gst_gl_download_perform_with_data 2015-01-22 13:18:23 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: gstglcolorconvert: micro optimization Don't call glClear && glClearColor at each draw since we're going to draw the whole viewport anyway. Gets rid of a glFlush triggered by glClear on OSX. 2015-01-22 13:17:11 +1100 Alessandro Decina * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: corevideobuffer: make mapping the CVPixelBuffer in CPU optional Mapping is not necessary and impacts performance when doing texture sharing with downstream 2015-01-22 13:11:46 +1100 Alessandro Decina * gst-libs/gst/gl/gstglcolorconvert.c: gstglcolorconvert: relax caps features check Require caps to have the GST_CAPS_FEATURE_MEMORY_GL_MEMORY feature but allow them to have more features. 2015-01-28 16:43:59 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: change audio property to audio-type This is now an enum with values generic (default) and voice. https://bugzilla.gnome.org/show_bug.cgi?id=740891 2015-01-29 23:45:15 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/win32: fixup compilation 2015-01-29 11:54:35 +0000 Luis de Bethencourt * gst/audiovisualizers/gstwavescope.c: audiovisualizer: remove double-setting of render function No need to set the audiovisualizer->render function twice. Once is enough. 2015-01-29 22:25:00 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: make showing a window explicit Also fixes the cgl context always displaying a window to render to for every GstGLContextCocoa created 2015-01-26 17:06:29 +0100 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Cleanup locking around AggregatorPad flush related fields And document the locking https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-26 13:11:05 +0100 Mathieu Duponchelle * gst-libs/gst/base/gstaggregator.c: aggregator: keep chain functions as dumb as possible. + A pad chain function has no business checking other pads, that's what the aggregate thread is for. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-26 11:32:47 +0100 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: aggregator: More fixes around locking when accessing protected private fields In some more places we were accessing GstAggregator->segment and GstAggregator->seqnum without holding the GST_OBJECT_LOCK https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-26 11:29:08 +0100 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst/audiomixer/gstaudiomixer.c: aggregator: Make the PAD_LOCK private Instead of using the GST_OBJECT_LOCK we should have a dedicated mutex for the pad as it is also associated with the mutex on the EVENT_MUTEX on which we wait in the _chain function of the pad. The GstAggregatorPad.segment is still protected with the GST_OBJECT_LOCK. Remove the gst_aggregator_pad_peak_unlocked method as it does not make sense anymore with a private lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-26 11:25:54 +0100 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst/audiomixer/gstaudiomixer.c: * tests/check/libs/aggregator.c: aggregator: Hide GstAggregatorPad buffer and EOS fileds And add a getter for the EOS. The user should always use the various getters to access those fields https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:09:13 -0500 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Make flush start/stop test non-racy The flush stop could have happened between the source trying to push the segment event and the buffer, this would cause a warning. Prevent that by taking the source's stream lock while flushing. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-22 17:41:24 -0500 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Replace racy timeout based tested with drain query Using the drain query, we can be certain that the buffer has done going through the aggregator by taking the stream locks. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:41:43 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Document locking of GstAggregatorPrivate members Most of them are protected by the object lock, specify which ones use a different lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:47:09 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.h: aggregator: Document how the segment is protected Document that it can only be accessed with the object lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:44:57 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Protect all latency related members with the object lock The locking was not consistent, now consistently use the object lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:43:12 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: aggregator: Document locking for gst_aggregator_get_latency_unlocked() Renamed it to _unlocked() to make it clear. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:35:25 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Protect the srcpad caps negotiation with the stream lock Instead of adding another lock, use the srcpad stream lock, which is already taken anyway to push out the new caps if needed. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:33:18 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Protect the tags with the object lock The tags related variables were sometimes protected, sometimes not and sometimes atomic. Put them all under the object lock. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 19:32:34 -0500 Olivier Crête * tests/check/elements/audiomixer.c: audiomixer: Avoid race in caps negotiation With the current audiomixer, the input caps need to be the same, otherwise there is an unavoidable race in the caps negotiation. So enforce that using capsfilters https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:53:20 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Consistenly lock the flow_return state Use the object's lock to protect it. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:47:40 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Clear GstAudioInfo the the caps When clearing the caps, also clear the matching GstAudioInfo https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:45:36 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Consistently lock some members Some members sometimes used atomic access, sometimes where not locked at all. Instead consistently use a mutex to protect them, also document that. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-21 18:39:24 -0500 Olivier Crête * gst/audiomixer/gstaudiomixer.c: audiomixer: Don't reset caps on flush A flush event doesn't invalidate the previous caps event. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-14 14:45:06 -0500 Olivier Crête * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Lock access to members of GstAggregatorPad Take the pad's object lock before accessing members of the GstAggregatorPad structure. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-14 14:38:09 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: Protect exported pad members with the pad's object lock https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-14 14:35:15 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst/audiomixer/gstaudiomixer.c: aggregator: Replace event lock with pad's object lock Reduce the number of locks simplify code, what is protects is exposed, but the lock was not. Also means adding an _unlocked version of gst_aggregator_pad_steal_buffer(). https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-09 22:01:00 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Protect data with the same mutex as GCond Whenever a GCond is used, the safest paradigm is to protect the variable which change is signalled by the GCond with the same mutex that the GCond depends on. https://bugzilla.gnome.org/show_bug.cgi?id=742684 2015-01-29 02:28:38 +0530 Nirbheek Chauhan * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: If getting a timeout before having caps, just advance our position This can happen if this is a live pipeline and no source produced any buffer and sent no caps until an output buffer should've been produced according to the latency. This fix is similar in spirit to commit be7034d1 by Sebastian for audiomixer. 2015-01-29 17:31:09 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/calayer: add resize callback based on the bounds rectangle 2015-01-29 15:26:21 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: gl/caopengllayer: draw asynchronously This essentially makes the CAOpenGLLayer draw every refresh cycle. 2015-01-28 17:59:42 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: don't segfault if we have a NULL draw/resize/close callback 2015-01-28 17:16:14 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: cgl/calayer: use a callback instead of hardcoding the draw functionality 2015-01-28 17:13:05 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: cgl: install the gl context and gl layer headers 2015-01-28 17:05:14 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: cgl: add a header for the CAOpenGLLayer support 2015-01-28 17:02:59 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Always lock the mutex before starting the streams 2015-01-28 16:58:27 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Fix deadlock 2015-01-28 15:48:26 +0100 Sebastian Dröge * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink{audio,video}sink: Only start scheduled playback once both sources are ready and we are in PLAYING Otherwise we might start the scheduled playback before the audio or video streams are actually enabled, and then error out later because they are enabled to late. We enable the streams when getting the caps, which might be *after* we were set to PLAYING state. 2015-01-28 15:26:17 +0100 Sebastian Dröge * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink{audio,video}src: Only start the streams once both sources are ready and we are in PLAYING Otherwise we might start the streams before the audio or video streams are actually enabled, and then error out later because they are enabled to late. We enable the streams when getting the caps, which might be *after* we were set to PLAYING state. 2015-01-28 14:21:40 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Make sure our clock never returns NONE, always advances and does not jump when going from PAUSED to PLAYING It basically behaves the same as the audio clocks. 2015-01-28 12:20:05 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Handle the clock returning GST_CLOCK_TIME_NONE properly 2015-01-28 11:41:17 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideo{sink,src}: Make elements more similar to the audio elements by enabling the video input/output only when getting the actual caps This will also make it easier later to support caps changes and support selecting the mode based on the caps if that should ever be implemented. 2015-01-26 19:02:04 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Properly report caps if mode!=auto and handle caps changes properly for mode=auto 2015-01-26 18:27:10 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Don't release input device twice on errors in set_caps() 2015-01-27 11:25:53 +0100 Philippe Normand * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/dispmanx: fix build Commit ab48bb6f0f55091662e595a001e178154ce60cdb changed the API of GstGLWindow. 2015-01-27 14:52:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: more compatibility defines for gles2 systems 2015-01-27 12:15:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: add some thread safety for gl operations 2015-01-27 11:53:51 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: use pbo's for download In order to use pbo's efficiently, the transfer operation has to be separated from the use of the downloaded data which requires some rearchitecturing around glcolorconvert/gldownload and elements 2015-01-27 11:04:07 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/base.h: glprototypes: add some (un)map buffer variants for GL/GLES 2015-01-26 17:51:22 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: use audio_%02u and video_%02u names for pads Instead of using the default ghostpad%u naming. The audio_/video_ names are more common in demuxers 2015-01-26 15:33:23 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: decklinkaudiosrc: Release the audio input on errors, not the video input 2015-01-26 13:46:44 +0000 Luis de Bethencourt * gst/aiff/aiffparse.c: aiffparse: remove unnecessary variable The bps variable is declared with value aiff->bps, read once and never written. aiff->bps can be used directly instead. 2015-01-26 12:49:45 +0000 Luis de Bethencourt * gst/aiff/aiffparse.c: aiffparse: fix which stop variable is used in assignment Assignment is done to variable segment.stop when the intention was to assign to local variable stop. Instead of overwriting it, the value is now clamped and segment.stop is set to it soon after. CID #1265772 2015-01-26 09:22:23 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix crash when receiving buffer without timestamps Unset out buffer in clip function when we unref the buffer to be clipped, otherwise aggregator will continue to use the already- freed buffer. Fixes crash when buffers without timestamps are being fed to aggregator. Partly because aggregator ignores the error flow return. https://bugzilla.gnome.org/show_bug.cgi?id=743334 2015-01-18 18:05:31 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * sys/Makefile.am: * sys/directdraw/Makefile.am: * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: * win32/MANIFEST: * win32/vs6/libgstdirectdraw.dsp: * win32/vs8/libgstdirectdraw.vcproj: Remove unported directdraw plugin This API has been deprecated for eternities and microsoft stopped shipping the headers in 2010 accoding to wikipedia, so let's just remove it and focus on bringing the plugins based on the newer APIs up to snuff. 2014-03-26 17:43:33 +0000 Matthieu Bouron * gst/aiff/aiffmux.c: aiffmux: write padding byte at end of SSND chunk if needed AIFF chunks are supposed to be even aligned. Aligning the SSND chunk will allow the aiff muxer to properly write chunks (like the ID3 one) at the end of the file. https://bugzilla.gnome.org/show_bug.cgi?id=727402 2015-01-23 12:44:22 +0100 Edward Hervey * ext/wayland/gstwaylandsink.c: waylandsink: Free leaked GstStructure Coverity CID : 1256565 2015-01-23 12:41:29 +0100 Edward Hervey * ext/gl/gstgltestsrc.c: gltestsrc: Ensure variable is initialized before usage Coverity CID: 1256569 2015-01-23 12:26:16 +0100 Edward Hervey * gst-libs/gst/codecparsers/dboolhuff.c: codecparsers: Indent file Someone's been commiting without using gst-indent :) 2015-01-23 12:24:52 +0100 Edward Hervey * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/nalutils.h: codecparsers: Add READ_UE_MAX macro READ_UE_ALLOWED was almost exclusively used with min == 0, which doesn't make much point for unsigned integers. Add a READ_UE_MAX variant and use that instead. Also replaced two usages of CHECK_ALLOWED (a,0,something) by CHECK_ALLOWED_MAX (a, something) 2015-01-23 12:28:42 +0530 Arun Raghavan * gst/inter/gstintervideosrc.c: intervideosrc: Fix GAP flag setting on non-black frames The previous commit fixed setting the GAP flag on black frames, but incorrectly dropped the flag on repeated pushes of the same video buffer. 2015-01-23 17:27:42 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglupload.c: gl/tests: update glwindow api change 2015-01-23 16:52:25 +1100 Matthew Waters * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/window/eagl: fix a couple of typos 2015-01-23 16:39:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.h: glwindow: cleanup/reorganize functions/members into logical groups 2015-01-23 15:02:55 +1100 Matthew Waters * sys/applemedia/corevideotexturecache.m: applemedia: update for gstgl cocoa -> cgl change 2015-01-23 14:18:12 +1100 Matthew Waters * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm: gl/qt/examples: update for NSOpenGL -> CGL change 2015-01-23 14:11:48 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow: remove width/height from _draw() Depending on the platform, it was only ever implemented to 1) set a default surface size, 2) resize based on the video frame or 3) nothing. Instead, provide a set_preferred_size () that elements/applications can use to request a certain size which may be ignored for videooverlay/other cases. 2015-01-22 21:43:51 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: avoid destroying a possibly 0 GSource id 2015-01-20 22:01:39 +1100 Matthew Waters * configure.ac: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: move to CGL and CAOpenGLLayer for rendering Removes the use of NSOpenGL* variety and functions. Any Cocoa specific functions that took/returned a NSOpenGL* object now take/return the CGL equivalents. 2015-01-22 16:08:11 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcontext/cocoa: add debug category 2015-01-22 10:50:23 +0530 Arun Raghavan * gst/inter/gstintervideosrc.c: intervideosrc: Fix GAP flag setting on black frames correctly This did not actually work since the video_buffer was set to NULL after the first black frame. Reported by: Patrik Oldsberg 2015-01-21 23:37:10 +0530 Arun Raghavan * gst/inter/gstintervideosrc.c: intervideosrc: Fix max value of the timeout property Reported by: Patrik Oldsberg 2015-01-21 23:35:55 +0530 Arun Raghavan * ext/openh264/gstopenh264enc.cpp: openh264: Implement the preset interface Will be useful when we want to set presets on the encoder via encodebin or such. 2015-01-21 15:31:21 +0000 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: sync with base class in -base https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-01-21 15:06:21 +0000 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: ensure default query/event handlers are used Sync audiovisualizer class implementation to the one in gst-plugins-base. This commit matches 9dd0e6cccc971d8a6bcca4e9e4d2ee1dbb20fffa in that module. https://bugzilla.gnome.org/show_bug.cgi?id=742875 2015-01-21 10:18:11 +0100 Sebastian Dröge * gst/siren/decoder.c: * gst/siren/encoder.c: siren: Make some local variables non-static for thread-safety Otherwise we will override values from another thread if we encode or decode frames at the same time in different threads. 2015-01-21 10:17:04 +0100 Sebastian Dröge * ext/apexsink/gstapexsink.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/bs2b/gstbs2b.c: * ext/dash/gstmpdparser.c: * ext/faac/gstfaac.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/openh264/gstopenh264enc.cpp: * ext/voamrwbenc/gstvoamrwbenc.c: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/gl/gstglupload.c: * gst/adpcmenc/adpcmenc.c: * gst/freeverb/gstfreeverb.c: * gst/librfb/d3des.c: * gst/mpeg1sys/buffer.c: * gst/mpegpsmux/crc.h: * gst/patchdetect/gstpatchdetect.c: * gst/tta/filters.h: * gst/vbidec/gstvbidec.c: * gst/vbidec/vbidata.c: * sys/dvb/camapplication.c: * sys/dvb/camtransport.c: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dxr3/dxr3videosink.c: * sys/linsys/gstlinsyssdisink.c: * sys/qcam/gstqcamsrc.c: Constify some static arrays everywhere 2015-01-21 08:49:23 +0100 Edward Hervey * po/POTFILES.in: po: Fix list of files tracked sfsink/sfsrc haven't been ported (and therefore dist'ed) in 1.x 2014-12-09 09:58:03 +0100 Edward Hervey * gst/mpegdemux/gstmpegdemux.c: mpegdemux: minor debug update Only show PTS/DTS when they are valid, and include the stream id 2015-01-20 14:55:05 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: do not skip the first fragment Avoid advancing fragment right after downloading the header. If it is the header, by default, don't advance to the next fragment. 2015-01-20 16:57:15 +0100 Piotr Drąg * po/POTFILES.in: po: update POTFILES https://bugzilla.gnome.org/show_bug.cgi?id=743251 2015-01-16 19:32:15 +0100 Víctor Manuel Jáquez Leal * gst/videoparsers/gsth264parse.c: h264parse: expose stereo-high profile Exposing stereo-high profile as a compatible profile of multiview-high if the maximum number of encoded views in the stream is two. https://bugzilla.gnome.org/show_bug.cgi?id=743174 2015-01-19 17:31:26 +0100 Víctor Manuel Jáquez Leal * gst/videoparsers/gsth264parse.c: h264parse: parse SPS subset This patch calls gst_h264_parser_parse_subset_sps() when a SPS subset NAL type is found. All the bits required for parsing the SPS subset in NALs were already there, just we need to call them when the this NAL type is found. With this parsing, the number of views (minus 1) attribute is filled, which was a requirement for negotiating the stereo-high profile. https://bugzilla.gnome.org/show_bug.cgi?id=743174 2013-03-19 14:23:00 +0200 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: add initial support for MVC NAL units. Initial support for MVC NAL units. It is only needed to propagate the complete set of NAL units downstream at this time. https://bugzilla.gnome.org/show_bug.cgi?id=696135 Signed-off-by: Sreerenj Balachandran Signed-off-by: Gwenole Beauchesne 2015-01-20 09:23:02 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: add explicit cast to make clang happy Fixes compilation 2015-01-15 17:44:45 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: refactor chunk downloading flow Add more power to the chunk_received function (renamed to data_received) and also to the fragment_finish function. The data_received function must parse/decrypt the data if necessary and also push it using the new push_buffer function that is exposed now. The default implementation gets data from the stream adapter (all available) and pushes it. The fragment_finish function must also advance the fragment. The default implementation only advances the fragment. This allows the subsegment handling in dashdemux to continuously download the same file from the server instead of stopping at every subsegment boundary and starting a new request 2015-01-19 12:37:23 +0000 Vincent Penquerc'h * gst/compositor/blend.c: compositor: fix illegal memory access in blend function with negative ypos https://bugzilla.gnome.org/show_bug.cgi?id=741115 2015-01-19 08:37:59 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: add log message about segment time information For debugging purposes 2015-01-19 08:36:42 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix multi-period playback If we say it is the first segment after a new period it will resync the segment.start value and all buffers will be late for the new period we are trying to play. Otherwise we want to keep the segment.start with the previous value to allow the running time to smoothly increase 2015-01-19 11:23:52 +0100 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Fix compiler warning with clang gstdashdemux.c:1330:13: error: implicit conversion from enumeration type 'enum _GstAdaptiveDemuxFlowReturn' to different enumeration type 'GstFlowReturn' [-Werror,-Wenum-conversion] ret = GST_ADAPTIVE_DEMUX_FLOW_SUBSEGMENT_END; ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2015-01-18 21:05:44 +0100 Nicola Murino * ext/gl/gstglimagesink.c: glimagesink: fix memleak https://bugzilla.gnome.org/show_bug.cgi?id=743142 2015-01-18 17:25:35 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * gst/real/Makefile.am: * gst/real/gstreal.c: * gst/real/gstreal.h: * gst/real/gstrealaudiodec.c: * gst/real/gstrealaudiodec.h: * gst/real/gstrealvideodec.c: * gst/real/gstrealvideodec.h: Remove real plugin which is no longer needed and has never been ported Decoders for these formats exist in gst-libav, if anyone still has a need for them. 2015-01-18 17:10:37 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * ext/Makefile.am: * ext/mythtv/Makefile.am: * ext/mythtv/gstmythtvsrc.c: * ext/mythtv/gstmythtvsrc.h: * gst-plugins-bad.spec.in: Remove libgmyth-based MythTV source element which was never ported gmyth seems to be unmaintained upstream, and no one has asked for this to be ported for a very long time, so let's just remove it. Neither debian nor Fedora seem to ship libgmyth any longer, and in any case it's most likely deprecated by the UPnP support in MythTV. 2015-01-17 10:06:40 +1100 Lasse Laursen * gst-libs/gst/gl/gstglapi.h: glapi: fix compilation with latest MSVC https://bugzilla.gnome.org/show_bug.cgi?id=743041 2015-01-15 12:57:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: use the correct size for the pbo It was missing the GstVideoAlignment padding which could cause GL errors related to overrunning the size of the pbo. 2015-01-16 16:18:35 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: prevent early EOS when switching at last fragment Check if there is a next fragment before advancing to avoid causing a bitrate switch (and maybe exposing new pads) only to push EOS. This causes playback to stop with an error instead of properly finishing with EOS message. 2015-01-13 14:22:02 +0000 David Waring * ext/dash/gstmpdparser.c: dashdemux: Fix detection for the end of segment. The segment start time is calculated as the offset into the current segment. The old condition to detect the end of period (i.e. segment start time > period start + period duration) failed when the period start was not 0 since the segment start time does not take the period start time into account. Fix this detection by only comparing the segment start to the period duration. https://bugzilla.gnome.org/show_bug.cgi?id=733369 2015-01-14 23:11:15 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: remove unused segment attribute It was never used, only initialized 2015-01-12 17:40:47 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: implement ISOBMFF profile handling The ISOBMFF profile allows definind subsegments in a segment. At those subsegment boundaries the client can switch from one representation to another as they have aligned indexes. To handle those the 'sidx' index is parsed from the stream and the entries point to pts/offset of the samples in the stream. Knowing that the entries are aligned in the different representation allows the client to switch mid fragment. In this profile a single fragment is used per representation and the subsegments are contained in this fragment. To notify the superclass about the subsegment boundary the chunk_received function returns a special flow return that indicates that. In this case, the super class will check if a more suitable bitrate is available and will change to the same subsegment in this new representation. It also requires special handling of the position in the stream as the fragment advancing is now done by incrementing the index of the subsegment. It will only advance to the next fragment once all subsegments have been downloaded. https://bugzilla.gnome.org/show_bug.cgi?id=741248 2015-01-12 11:57:02 -0300 Thiago Santos * ext/dash/Makefile.am: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstisoff.c: * ext/dash/gstisoff.h: dashdemux: parse the sidx index from isobmff streams Allows dashdemux to identify the subsegments in the stream and switch bitrates when needed 2015-01-09 16:43:03 -0300 Thiago Santos * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: check for profiles Check for available profiles to enable certain features for dash playback. For now we check for the ISOFF On Demand 2011 profile. 2015-01-13 10:16:22 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: add a special return to signal subsegment boundary The subsegment boundary return tells the adaptivedemux that it can try to switch to another representation as the stream is at a suitable position for starting from another bitrate. 2015-01-13 10:15:21 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Actually use the byte range for the fragment url Otherwise we would always download the full fragment. This would make handling subsegments in DASH impossible. 2015-01-13 10:13:47 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: allow downloads of headers only In order to get some subsegment information, subclasses might want to download only the headers to have enough data (the index) to decide where to start downloading from the subsegment. 2015-01-12 18:22:14 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: refactor common code to function Reuse the same function when finishing downloading and signaling to the download loop thread to get the next fragment or abort 2015-01-09 17:19:54 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: inform subclass when headers/index are being downloaded This allows the subclasses to know if the chunks that are downloaded are part of the header or of the index and will parse the parts that are of their interest. 2015-01-15 16:11:24 +0000 Vincent Penquerc'h * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: a few leak fixes 2015-01-15 13:16:07 +0000 Vincent Penquerc'h * gst-libs/gst/uridownloader/gstfragment.c: fragment: fix caps and buffer leaks in get_property 2015-01-14 17:43:51 +0000 Vincent Penquerc'h * ext/hls/gsthlsdemux.h: hlsdemux: remove unused fragments_cache field 2015-01-14 16:42:25 +0000 Vincent Penquerc'h * ext/hls/gsthlsdemux.c: hlsdemux: a few leak fixes 2015-01-12 21:22:06 +0100 Stefan Sauer * ext/bs2b/gstbs2b.c: bs2b: implement the preset interface Instead of a preset property implement the preset interface in a read-only fashion. 2015-01-12 12:11:01 +0100 Stefan Sauer * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-bs2b.xml: docs: add new bs2b plugin and element 2015-01-10 21:41:12 +0100 Christoph Reiter * configure.ac: * ext/Makefile.am: * ext/bs2b/Makefile.am: * ext/bs2b/gstbs2b.c: * ext/bs2b/gstbs2b.h: bs2b: add new plugin (Effect/Audio, crossfeed) https://bugzilla.gnome.org/show_bug.cgi?id=611689 2015-01-15 13:13:51 +0100 Sebastian Dröge * gst/inter/gstinteraudiosink.c: interaudiosink: Make sure that buffer time is always bigger than period time 2015-01-15 12:49:20 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Also consider max-lateness property value before dropping late frames 2015-01-15 14:09:43 +1100 Alessandro Decina * sys/applemedia/corevideotexturecache.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: vtdec: implement the GL texture upload meta 2015-01-09 00:16:17 +1100 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/avfvideosrc.m: * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideotexturecache.h: * sys/applemedia/corevideotexturecache.m: avfvideosrc: implement the GL texture upload meta 2015-01-15 09:47:45 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixerpad.h: * ext/gl/gstglvideomixer.c: glvideomixer: don't upload if alpha <= 0 Implemented using a upload_buffer vfunc within GstGLMixer allowing NULL uploaded buffers. 2015-01-15 09:45:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: remove spurious gst_video_info_align That will be taken care of by the calling code (typically a bufferpool). The GstVideoAlignment is purely informational to compute plane data sizes. 2015-01-14 23:48:16 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Document the zorder pad property from gstvideoaggregator 2015-01-14 23:47:19 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Nitpick spacing/punctuation in debug logging 2015-01-14 16:33:53 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Stop scheduled playback shortly in PAUSED->PLAYING if it was running already This fixes handling of flushing seeks, where we will get a PAUSED->PLAYING state transition after the previous one without actually going to PAUSED first. 2015-01-14 16:01:07 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Don't schedule too late frames in prepare() Otherwise we will overflow the internal buffer of the hardware with useless frames and run into an error. This is necessary until this bug in basesink is fixed: https://bugzilla.gnome.org/show_bug.cgi?id=742916 2015-01-14 15:54:28 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Keep track of the time when we went to PLAYING for the external clock too Otherwise we're adding an offset of the time the pipeline was in PLAYING already to the running time when converting it to our internal clock. 2015-01-14 13:32:51 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Enable QoS and set max-lateness to 20ms 2015-01-12 17:24:52 +0000 Vincent Penquerc'h * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: fix stack smashing Ensure that we do not trust the bitstream when filling a table with a fixed max size. Additionally, the code was not quite matching what the spec says: - a value of 3 broke from the loop before adding an entry - an unhandled value did not add an entry The reference algorithm does these things differently (7.3.3.1 in ITU-T Rec. H.264 (05/2003)). This plays (apparently correctly) the original repro file, with no stack smashing. Based on a patch and bug report by André Draszik 2015-01-14 22:08:43 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * ext/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglcolorconvert.c: gl: split glcolorconvert usage from glupload the separation allows the transfer operation to occur in a separate thread/time which may increase performance in specific circumstances. 2015-01-14 12:39:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: offset the data pointer for upload for GstVideoAlignment otherwise we attempt to read from the padding data 2015-01-14 00:08:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: use pbo's for upload 2015-01-13 23:47:06 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: relax the GLMemory uploader check for input caps features As there may be a sysmem caps features with GLMemory filled buffers. e.g. videotestsrc ! glimagesink 2015-01-13 11:32:03 -0800 Zaheer Abbas Merali * configure.ac: * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: Revert "Revert "openh264: fix to work with released versions and master of upstream"" This reverts commit 329f0ccba1aa604da1bd80293fd1fe717447df5d. 2014-12-17 09:19:52 -0800 Zaheer Abbas Merali * ext/openh264/gstopenh264enc.cpp: openh264: remove all trace output to console from encoder 2015-01-13 19:56:24 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Use BT2020 colorspace for UltraHD resolutions 2015-01-13 19:55:37 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Fix indention once again 2015-01-13 16:49:07 +0000 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: handle the return of the setup function Make the class future proof by handling the gboolean return of the setup function. So if/when a child class uses this the base class is ready. 2015-01-13 16:46:10 +0000 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: Revert "audiovisualizer: remove unused value" This reverts commit 25c97570834d6de1c14424e71221d19eb0d33ee3. It is preferable to handle the retun of the setup function. 2015-01-13 17:44:17 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Get our own "start time" instead of the one of the pipeline decklinkvideosink might be added later to the pipeline, or its state might be handled separately from the pipeline. In which case the running time when we (last) went into PLAYING state will be different from the pipeline's. However we need our own start time to tell the Decklink API, which running time should be displayed at the moment we go to PLAYING and start scheduled rendering. 2015-01-13 17:00:51 +0100 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: inter: Use a #define for the default value of the channel property 2015-01-13 16:58:50 +0100 Sebastian Dröge * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: intervideosrc: Make the timeout configurable after which we start showing a black frame 2015-01-13 15:42:26 +0000 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: remove unused value klass->setup (scope) will always return TRUE since all children of this class do so, no need to store the return. Besides, the value is overwritten a few lines down before it is used. Change helps keep files in sync after: -base commit a91d521a3602f33083405467db9454d422b9da1b 2015-01-13 14:54:26 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: Don't do any conversions if the pad is completely transparent anyway 2015-01-12 12:58:27 +0100 Branislav Katreniak * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintervideosrc.c: inter: silence messages for flushed / created samples These messages are logged periodically and polute the log https://bugzilla.gnome.org/show_bug.cgi?id=741592 2014-12-25 23:10:19 +0100 Nicola Murino * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix memleak https://bugzilla.gnome.org/show_bug.cgi?id=741943 2014-12-25 22:59:42 +0100 Nicola Murino * gst-libs/gst/gl/gstglupload.c: glupload: fix some memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=741943 2014-12-31 17:45:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * tests/check/libs/gstglcontext.c: glcontext: allow wrapped contexts to be utilised like non-wrapped contexts Fill in the missing pieces like get_proc_address, the gl function vtable 2015-01-12 21:25:14 +0100 Stefan Sauer * gst-libs/gst/video/.gitignore: * gst/compositor/.gitignore: * tests/check/pipelines/.gitignore: gitignore: ignore more files 2015-01-12 15:33:09 +0000 Luis de Bethencourt * gst/audiovisualizers/gstaudiovisualizer.c: visual: use unused value ret is assigned but not used and in the next cycle of the loop it is overwritten with default_prepare_output_buffer (). If there is a flow error the function should return instead. CID #1226475 2015-01-12 16:10:31 +0100 Stefan Sauer * common: Automatic update of common submodule From f2c6b95 to bc76a8b 2015-01-12 15:57:53 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkvideosink.cpp: decklink: Initialize refcount of our C++ classes in the constructor CID 1262288 CID 1262287 CID 1262289 2015-01-12 14:22:47 +0000 Luis de Bethencourt * gst/gaudieffects/gstdilate.c: gaudieffects: stored value is overwritten Value from left_luminance is assigned to out_luminance here, but that stored value is not used before it is overwritten in the next cycle of the loop. Removing assignation. CID #1226473 2015-01-12 12:50:33 +0000 Luis de Bethencourt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: fix dead code found is initialized to FALSE to then only be used in two conditional statements that will always be false, making the blocks inside them dead code. Looking back in the file's history the setting of the variable's value before it is checked was dropped as part of the port to 0.11, bringing that value setting back. https://bugzilla.gnome.org/show_bug.cgi?id=742638 2015-01-11 20:40:34 +0000 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegdemux: minor optimisation when scanning for SCRs Bail out early when we're scanning for SCR, no need to parse stuff we're not going to use nor interested in. 2015-01-11 01:08:08 +0000 Tim-Philipp Müller * ext/mpg123/gstmpg123audiodec.c: mpg123: fix compiler warning and simplify checks in set_caps https://bugzilla.gnome.org/show_bug.cgi?id=740195 2015-01-03 13:06:45 +0100 Carlos Rafael Giani * ext/mpg123/gstmpg123audiodec.c: mpg123: rework set_format code so mpg123audiodec works with decodebin/playbin The old code was using gst_caps_normalize() and was generally overly complex. Simplify by picking sample rate and number of channels from upstream and the sample format from the allowed caps. If the format caps is a list of strins, just pick the first one. And if the srcpad isn't linked yet, use the default format (S16). https://bugzilla.gnome.org/show_bug.cgi?id=740195 2015-01-10 15:34:57 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: Disable hack for NSApp iteration with a special #define The hack causes deadlocks and other interesting problems and it really can only be fixed properly inside GLib. We will include a patch for GLib in our builds for now that handles this, and hopefully at some point GLib will also merge a proper solution. A proper solution would first require to refactor the polling in GMainContext to only provide a single fd, e.g. via epoll/kqueue or a thread like the one added by our patch. Then this single fd could be retrieved from the GMainContext and directly integrated into a NSRunLoop. https://bugzilla.gnome.org/show_bug.cgi?id=741450 https://bugzilla.gnome.org/show_bug.cgi?id=704374 2015-01-10 15:40:30 +1100 Jan Schmidt * gst/inter/gstinteraudiosrc.c: inter: interaudiosrc - fixate layout for default caps Makes interaudiosrc produce valid audio caps in the absence of any other guidance by adding to the pad template and fixate function 2015-01-09 21:51:40 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Remove pointless atomic It is only modified from the streaming thread 2015-01-09 21:30:36 -0500 Olivier Crête * gst-libs/gst/base/gstaggregator.c: aggregator: Fix query leak 2015-01-09 17:56:09 +0000 Luis de Bethencourt * gst/audiovisualizers/gstwavescope.c: audiovisualizer: remove check for below zero for unsigned value CLAMP checks both if value is '< 0' and '> max'. Value will never be a negative number since it is an unsigned integer. Removing that check and only checking if it is bigger than max and setting it appropriately. Also converting the previous instance of this into MIN() for consistency. CID 1139793 2014-12-02 10:10:39 +0200 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: expose compatible profiles to downstream Some video bitstreams report a too restrictive set of profiles. If a video decoder was to strictly follow the indicated profile, it wouldn't support that stream, whereas it could in theory and in practice. So we should relax the profile restriction for allowing the decoder to get connected with parser. https://bugzilla.gnome.org/show_bug.cgi?id=739992 2015-01-09 16:43:39 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Print jitter from clock waiting in the debug logs 2015-01-09 14:42:34 +0000 Luis de Bethencourt * gst/audiovisualizers/gstwavescope.c: audiovisualizer: remove check if below zero for unsigned value CLAMP checks both if y is '< 0' and '> h1'. y will never be a negative number since it is an unsigned integer. Removing that check and only checking if it bigger than h1 and setting it to that max approprietaly. CID 1139792 2015-01-08 16:24:29 -0300 Thiago Santos * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: cache current file position in the list Avoids iterating the list everytime to look for the next segment to be used (or to advance to the next one). 2015-01-08 15:46:49 -0300 Thiago Santos * ext/hls/m3u8.c: hlsdemux: simplify next segment checking functions Optimize loop by moving condition outside of it and reuse the find_next_fragment function to check if there is next instead of replicating the same loop 2015-01-08 13:03:11 -0300 Thiago Santos * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: cache total duration to avoid iterating at every query Duration queries can be done a few times per second and would cause the segment list to be traversed for every one. Caching the duration prevents that. 2015-01-08 18:15:27 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Post LATENCY message when the mode changes Different modes have different framerates, and thus different latencies. We might need to reconfigure the latency of the pipeline. 2015-01-08 18:14:38 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Fix compiler warning 2015-01-08 16:42:31 +0100 Florian Langlois * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklinkvideosrc: Add automatic mode detection https://bugzilla.gnome.org/show_bug.cgi?id=739284 2015-01-08 15:54:18 +0000 Luis de Bethencourt * ext/hls/m3u8.c: hlsdemux: g_return_if_fail in function with return type Need to use g_return_val_if_fail() when the function returns a type, in this case a gboolean 2015-01-08 15:36:04 +0000 Luis de Bethencourt * gst/rtp/gstrtph265pay.c: rtp: value truncated too short creates dead code type is truncated to 0-31 with "& 0x1f", but right after that it is checks if the value is equivalent to GST_H265_NAL_VPS, GST_H265_NAL_SPS, and GST_H265_NAL_PPS (which are 32, 33, and 34 respectively). Obviously, this will never be True if the value is maximum 31 after the truncation. The intention of the code was to truncate to 0-63. 2015-01-08 15:27:44 +0000 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtp: fix nal unit type check After further investigation the previous commit is wrong. The code intended to check if the type is 39 or the ranges 41-44 and 48-55. Just like gsth265parse.c does. Type 40 would not be complete. 2015-01-08 13:47:09 +0000 Luis de Bethencourt * gst/rtp/gstrtph265depay.c: rtp: fix dead code and check for impossible values nal_type is the index for a GstH265NalUnitType enum. There are two types of dead code here: First, after checking if nal_type is >= 39 there are two OR conditionals that check if the value is in ranges higher than that number, so if nal_type >= 39 falls in the True branch those other conditions aren't checked and if it falls in the False branch and they are checked, they will always also be False. They are redundant. Second, the enum has a range of 0 to 40. So the checks for ranges higher than 41 should never be True. Removing this redundant checks. CID 1249684 2015-01-08 14:47:16 +0100 Florian Zwoch * sys/applemedia/vtenc.c: vtenc: Unlock the stream lock while waiting for pending frames to be completed in finish() We might otherwise deadlock because gst_vtenc_enqueue_buffer() can be called again and will take the stream lock again from another thread. https://bugzilla.gnome.org/show_bug.cgi?id=742174 2015-01-08 08:46:48 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: implement _has_next_fragment to avoid busy looping It will allow the demuxer to wait for a fragment to be available instead of busy looping polling the playlist for a new fragment 2015-01-08 12:55:16 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Add a dummy value to the video connection mapping table for auto 2015-01-08 12:48:22 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Add property to select the audio input connection 2015-01-08 12:23:53 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Add XLR and RCA audio connection enums 2015-01-08 12:17:45 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: decklinkvideosrc: Add auto value for the connection property This will use the default/auto connection for video capturing, and can be set via the Decklink configuration tools. 2015-01-08 12:13:03 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix indention once again 2015-01-06 14:02:38 +0100 Florian Langlois * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add property for configuring the input connection of the video sources 2015-01-08 09:35:23 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: Don't init and clear static GMutex / GCond We would potentially use it from the main loop later in gst_gl_window_cocoa_init_nsapp() if it timed out before. 2015-01-07 16:53:41 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglfilter.c: glfilter: remove logically dead code Soon after setting two variables to 1, the code checks if their values are different from each other. This would never be true. Removing this. CID 1226443 2015-01-07 16:40:25 +0000 Tim-Philipp Müller * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstpngparse.h: Revert "pngparse: improve parsing of the image" This reverts commit 59e7f0597d1cc524174e847de7b91407922304c8. This patch should not have been pushed, see https://bugzilla.gnome.org/show_bug.cgi?id=740058#c3 2015-01-07 16:26:57 +0000 Luis de Bethencourt * ext/opencv/gsthanddetect.c: handdetect: remove unneeded check Variable hands is already checked to contain a value previously at the beginning of the current block (in line 504). There is no need to check again. This is logically dead code. CID 1197693 2014-11-13 15:56:07 +0530 Vineeth T M * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstpngparse.h: pngparse: improve parsing of the image Everytime a buffer is being provided from baseparse, we are parsing all the data from the beginning. But since we would have already parsed some of the data in the previous iterations, it doesnt make much sense to keep parsing the same everytime. Hence skipping the data which is already read in previous iterations to improve the parsing performance. https://bugzilla.gnome.org/show_bug.cgi?id=740058 2015-01-07 15:32:05 +0100 Florian Langlois * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Fix latency values for sources 2015-01-07 10:23:31 -0300 Thiago Santos * ext/hls/m3u8.c: hlsdemux: remove duplicate call to uri_join 2015-01-07 09:30:00 -0300 Thiago Santos * ext/hls/m3u8.c: hlsdemux: skip checking '#EXT-X-' token for all entries Put this common check before to avoid repeating it for all possible entries to save some cycles 2015-01-07 09:21:33 -0300 Thiago Santos * ext/hls/m3u8.c: hlsdemux: avoid using g_list_append for creating segments list Use g_list_prepend and reverse it at the end to skip traversing the same list for every new segment 2014-06-20 12:38:59 -0600 Thomas Bluemel * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Don't use approximate duration for fragment buffer pts The duration values in playlists are approximate only, and for playlist versions 2 and older they are only rounded integer values. They cannot be used to timestamp buffers. This resulted in playback gaps and skips because the actual duration of fragments is slightly different. The solution is to only set the pts of the very first buffer processed, not for each fragment. 2015-01-06 18:44:15 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: only update segment if we have a valid PTS Otherwise we set the position to GST_CLOCK_TIME_NONE and it disrupts bitrate switching 2015-01-07 11:31:30 +0530 Rajat Verma * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix crash while setting bitrate in caps structure q->bitrate is a guint64, but G_TYPE_INT may read fewer bits off the stack, and if we pass more then the NULL sentinel may not be found at the right place, which in turn might lead to crashes. https://bugzilla.gnome.org/show_bug.cgi?id=741751 2015-01-02 00:59:00 +0000 Duncan Palmer * gst/videoparsers/gsth264parse.c: h264parse: Fix periodic SPS/PPS sending work after a seek Reset the interval variable to have SPS/PPS sending work after a (backwards) seek. https://bugzilla.gnome.org/show_bug.cgi?id=742212 2015-01-05 21:26:22 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: fix deadlock with pad object lock The image capture mutex and the pad object lock would cause a race if the pad query was made right when the image probe was running. The image probe needs the capture mutex and the querying would need the pad object lock. 2015-01-05 15:16:15 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: simplify weird if/else clause It is not an if/else situation but an if error abort otherwise just continue. Remove else to make it more readable 2014-04-04 16:45:51 +0100 Alex Ashley * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Implement live seeking hlsdemux assumes that seeking is not allowed for live streams, however seek is possible if there are sufficient fragments in the manifest. For example the BBC have live streams that contain 2 hours of fragments. The seek code for both live and on-demand is common code. The difference between them is that an offset has to be calculated for the timecode of the first fragment in the live playlist. When hlsdemux starts to play a live stream, the possible seek range is between 0 and A seconds. After some time has passed, the beginning of the stream will no longer be available in the playlist and the seek range is between B and C seconds. Seek range: start 0 ........... A later B ........... C This commit adds code to keep a note of the B and C values and the highest sequence number it has seen. Every time it updates the media playlist, it walks the list of fragments, seeing if there is a fragment with sequence number > highest_seen_sequence. If so, the values of B and C are updated. The value of B is used when timestamping buffers. It also makes sure the seek range is never closer than three fragments from the end of the playlist - see 6.3.3. "Playing the Playlist file" of the HLS draft. https://bugzilla.gnome.org/show_bug.cgi?id=725435 2015-01-05 17:58:54 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: prepare for supporting seeks in live streams Add function to allow subclasses to specify seeking range for live streams https://bugzilla.gnome.org/show_bug.cgi?id=725435 2015-01-04 17:15:37 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: don't use iterator when setting flush pending on pads 2015-01-04 16:57:05 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: check if pads are ready more efficiently No need to use an iterator for this which creates a temporary structure every time and also involves taking and releasing the object lock many times in the course of iterating. Not to mention all that GList handling in gst_aggregator_iterate_sinkpads(). 2015-01-04 12:59:19 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: name vfunc arguments consistently 2014-12-31 20:47:24 +0100 Mark Nauwelaerts * tests/check/Makefile.am: tests: nodist for orc generated code 2015-01-01 15:46:00 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: add g-i transfer and scope annotations 2015-01-01 14:10:05 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: register names of iterate_sinkpads functions with debug system 2015-01-01 14:03:02 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: reduce debug messages for taking/releasing logs to TRACE level Don't spam debug log with this stuff. 2014-12-31 18:16:21 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: move property member into private structure Our locking (or lack thereof) while accessing this also looks generally quite dodgy. 2014-12-31 14:50:58 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: remove empty dispose function 2014-12-30 23:58:34 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: give private functions namespace prefix Especially the GST_DEBUG_FUNCPTR ones. 2014-12-31 12:35:06 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: fix up some docs comments in header 2014-12-30 23:44:46 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: remove now-unused system clock member 2014-12-30 19:43:43 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: * ext/gl/gstglvideomixer.c: glmixer, glvideomixer: update for GstAggregatorPadForeachFunc change 2014-12-30 19:26:47 +0000 Tim-Philipp Müller * ext/gl/gstglmixer.c: glmixer: update for aggregator start/stop vfunc change 2014-12-30 19:22:01 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: make GstAggregatorPadForeachFunc take an GstAggregatorPad 2014-12-30 18:01:34 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: update for aggregator start/stop vfunc change 2014-12-30 17:56:35 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: update for aggregator start/stop vfunc change 2014-12-30 17:50:17 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: bring start/stop vfunc semantics in line with other baseclasses Sub-class should not have to chain up to GstAggregator's start/stop vfuncs, same as in GstBaseSrc, GstBaseSink, GstBaseTransform etc. 2014-12-30 15:29:36 +0000 Tim-Philipp Müller * gst/audiomixer/gstaudiomixer.c: audiomixer: fix output-block-size property description 2014-12-30 08:07:18 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: only typefind when we have a minimum amount of data For small amounts some data might be mistyped and it would cause the pipeline to fail. For example if you have AAC inside mpegts, for small amounts, the AAC samples would cause the typefinder to think it is AAC and not mpegts. https://bugzilla.gnome.org/show_bug.cgi?id=736061 2014-12-29 11:49:51 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Add support for 4K / UHD modes 2014-12-29 11:49:42 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Fix indention 2014-12-29 10:44:53 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: do not try to ref null pointer Playlists might be missing the availability start time, so check for it before trying to ref the object 2014-12-29 10:44:19 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: run gst-indent on mpdparser Run gst-indent on mpdparser to have it stop complaining on every commit 2014-12-28 18:26:49 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: remove pointless GST_DEBUG_FUNCPTR Not useful for GObject vfuncs. 2014-12-28 18:24:21 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: remove duplicate pad parent_class variable G_DEFINE_TYPE already provides one, just need to use it. 2014-12-28 18:22:57 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: aggregator: add _CAST() variants for cast macros 2014-12-28 01:13:33 +0000 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: aggregator: make padding larger Esp. the class structures, can't have enough spare space for virtual functions. 2014-12-28 00:58:04 +0000 Tim-Philipp Müller * gst/siren/gstsiren.h: * gst/siren/gstsirendec.h: * gst/siren/gstsirenenc.h: siren: remove unneeded structure padding Public headers are private and not installed. 2014-12-27 16:15:41 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Log to the pad instead of the element More correct way of doing the same thing as before 2014-12-27 15:50:17 +0530 Nirbheek Chauhan * ext/gl/gstglvideomixer.c: glvideomixer: Point to compositor for the pad properties documentation 2014-12-27 15:49:47 +0530 Nirbheek Chauhan * gst/compositor/compositor.c: compositor: Document the pad properties 2014-12-27 15:49:39 +0530 Nirbheek Chauhan * gst/audiomixer/gstaudiomixer.c: audiomixer: Document the pad properties 2014-12-27 09:49:43 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Make sure that the minimum latencies are never GST_CLOCK_TIME_NONE 2014-12-27 09:42:57 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Wait for the minimum latency, not the maximum The minimum latency is the latency we have to wait at least to guarantee that all upstreams have produced data. The maximum latency has no meaning like that and shouldn't be used for waiting. 2014-12-27 04:21:36 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Clamp the min latency at the max if it's greater 2014-12-27 04:21:26 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Print the sinkpad name while logging latency queries Very useful while debugging. 2014-12-27 04:19:52 +0530 Nirbheek Chauhan * gst-libs/gst/base/gstaggregator.c: aggregator: Take the stream lock when iterating sink pads When iterating sink pads to collect some data, we should take the stream lock so we don't get stale data and possibly deadlock because of that. This fixes a definitive deadlock in _wait_and_check() that manifests with high max latencies in a live pipeline, and fixes other possible race conditions. 2014-12-26 23:05:43 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: do not set source state with lock It might be racy with the image probe thread as it uses the capture mutex just like the start-capture handler from camerabin. The start-capture would be waiting for the source's streaming thread to stop to be able to set the source state to ready while the probe would be blocked waiting to acquire the capture mutex. It causes a deadlock. 2014-12-26 10:17:19 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: use the drain query instead of flush The flush might clear any pending captures that are still in queues being processed while the drain query will wait for those to be properly done 2014-12-26 22:45:41 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: avfvideosrc: improve timestamp code Use a combination of the running time and CMClockGetTime from AVF to compute timestamps. 2014-12-26 11:48:56 +0000 Tim-Philipp Müller * gst/gdp/gstgdppay.c: gdppay: use public API for accessing stream header arrays in caps Don't rely on core implementation details, which are private and may change. It's also not needed here, the performance impact is close to none. Also copy buffer before changing its metadata. 2014-12-26 11:29:12 +0000 Tim-Philipp Müller * tests/check/elements/gdpdepay.c: tests: gdpdepay: update for internal gdp refactoring This test uses some internal/private API, so needs to be updated for recent changes. 2014-12-26 11:27:38 +0000 Tim-Philipp Müller * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/gstgdppay.c: gdppay: refactor payloading code a little Get rid of some indirections and inefficiencies, just payload things directly which gives us more control over what memory is allocated where and how and makes things much simpler. In particular, we can now allocate the payload header plus the GstMemory to represent it in one go. 2014-12-15 00:41:22 +0000 Tim-Philipp Müller * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/gstgdppay.c: * gst/gdp/gstgdppay.h: * tests/check/elements/gdpdepay.c: gdppay: refactor a little Get rid of now-useless packetizer struct and just call internal functions directly. Also remove version property which is now defunct, not least because we create the packetizer with the version in the init function before a version can be set. 2014-12-13 16:46:07 +0000 Tim-Philipp Müller * tests/check/elements/gdppay.c: tests: gdppay: initialise memory of buffers used in unit test 2014-12-13 15:23:48 +0000 Tim-Philipp Müller * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: gdppay: optimise payloading of buffers with multiple memories Add function to calculate a payload CRC across multiple memories so we don't have to merge buffers with multiple memories just to calculate the CRC. Also make CRC calculation function static, since it's not used outside dataprotocol.h and move special-casing of length = 0 -> CRC = 0 into CRC function (from caller). Perhaps more importantly, since payload CRC is off by default: don't map buffer (and possibly merge memories in the process) if we are not going to use it to calculate a CRC anyway. 2014-12-13 15:19:16 +0000 Tim-Philipp Müller * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: gdppay: dataprotocol: drop bogus const Doesn't really make sense given that we map it and possibly merge memories and such. 2014-11-24 12:18:36 -0700 Vijay Jayaraman * ext/hls/gsthlsdemux.c: hlsdemux: typefind might fail if first buffer is too short If typefind fails, check to see if the buffer is too short for typefind. If this is the case, prepend the decrypted buffer to the pending buffer and try again the next time around. https://bugzilla.gnome.org/show_bug.cgi?id=740458 2014-08-27 16:26:19 -0300 Thiago Santos * ext/hls/Makefile.am: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: port to adaptive base class Conflicts: ext/hls/gsthlsdemux.c ext/hls/gsthlsdemux.h 2014-12-23 01:51:50 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: check if element exists before setting it to null Under certain error conditions it might happen that the element has been freed already and trying to set it to NULL causes an assertion 2014-12-23 01:51:10 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: make sure task has stopped before freeing it Otherwise the thread will be running and its memory will get freed. This leads to memory corruption 2014-12-23 01:48:41 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix segment start when exposing new streams Segment start needs only to be updated when starting the streams or after a seek, doing it during bitrate changes will cause the running time to go discontinuous (jump back to a previous ts) and QOS will drop buffers 2014-12-19 02:22:47 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: allow subclass to use new pads group when switching bitrate Fix pad groups switching when bitrate changes to allow HLS to use this feature 2014-12-23 12:24:48 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: If getting a timeout before having caps, just advance our position This can happen if this is a live pipeline and no source produced any buffer and sent no caps until the an output buffer should've been produced according to the latency. 2014-12-23 12:15:50 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Make sure to release the current buffer in reset() If we didn't output the last one in aggregate because we were shutting down earlier we might otherwise leak it. 2014-12-23 11:45:50 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * tests/check/elements/audiomixer.c: audiomixer: Change blocksize property to output-buffer-duration in time format This makes the interface of audiomixer independent of the actual caps. 2014-12-23 11:45:05 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Don't leak flush-start events 2014-12-23 10:24:27 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Also change the default latency to 0, not just the minimum 2014-12-23 09:52:20 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Fix docs and default value of the latency property 2014-12-22 22:19:52 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Also include the subclass latency in the result of the latency query 2014-12-22 22:11:30 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Use the src query implementation of aggregator as the default case 2014-12-22 22:11:13 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Use the src query implementation of aggregator as the default case 2014-12-22 16:45:05 +0000 Tim-Philipp Müller * gst/bayer/gstbayer2rgb.c: bayer2rgb: take into account filter in transform_caps function Fixes criticals when filter caps are passed. Also fix wrong GST_DEBUG_OBJECT use. https://bugzilla.gnome.org/show_bug.cgi?id=741863 2014-12-22 15:26:37 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Post a latency message if the value of the latency property changes 2014-12-22 15:03:59 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Wake up the src thread after handling a latency query Due to changed latencies or changed live-ness we might have to adjust if we wait on a deadline at all and how long. 2014-12-22 15:00:36 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Don't count the number of times we need to wake up but instead check all conditions for waiting again This simplifies the code and also makes sure that we don't forget to check all conditions for waiting. Also fix a potential deadlock caused by not checking if we're actually still running before starting to wait. 2014-12-22 11:49:08 +0100 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Instead of crashing if no corresponding frame is found, ignore this ... and hope that everything will be fine. This shouldn't really happen but previously happened during shutdown. It should be fixed in videoencoder now, but better be on the safe side here. 2014-12-22 11:46:05 +0100 Sebastian Dröge * MAINTAINERS: MAINTAINERS: Update my mail address 2014-12-21 07:47:25 -0500 Stefan Sauer * gst/audiomixer/Makefile.am: audiomixer: fix build flag order Have the libraries/inlcudes from plugins-bad first to avoid picking up the installed version. Fixes the build when the local api changed. 2014-12-20 12:24:53 -0500 Stefan Sauer * gst/freeverb/GstFreeverb.prs: * gst/freeverb/Makefile.am: freeverb: add a few presets 2014-12-19 13:18:50 -0500 Nicolas Dufresne * tests/check/libs/gstglcolorconvert.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gltest: Port to new API https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-19 12:22:12 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: Always recalculate buffer size Actually we should always recalculate buffer size since our buffer size even when not-padded is smaller for many sub-sampled formats. This is because we don't add padding between the planes. https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-19 12:12:08 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.h: glmemory: No need for padding A memory object cannot be put on stack, so no need for padding. 2014-12-19 12:11:08 -0500 Nicolas Dufresne * ext/gl/gstgloverlay.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: Add support for GstVideoAlignment This allow saving a copy with libav video decoders or decoders with similar padding requirement. https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-11-22 11:25:23 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: glmemory: Handle upload/download flags from map Problem was that if buffer was mapped READWRITE (state of buffers from libav right now), mapping it READ/GL will not upload. This is because the flag is only set when the buffer is unmapped. We can fix this by setting the flags in map. This result in already mapped buffer that get mapped to be read in GL will be uploaded. The problem is that if the write mapper makes modification afterward, the modification will never get uploaded. https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-13 21:47:38 -0500 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Handle custom stride with OPENGL3 https://bugzilla.gnome.org/show_bug.cgi?id=740900 2014-12-19 15:05:58 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklink: Fix various compiler warnings with gcc 2014-12-19 14:50:09 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: Re-add the COM initialization code for Windows Untested, and we will never deinitialize COM again. 2014-12-19 14:38:03 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: decklink: Remove in-same-pipeline detection code for audio/video elements of the same device This causes deadlocks sometimes for some reason. 2014-12-19 14:35:03 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklinkvideosink: Implement clock slaving 2014-12-19 13:52:08 +0100 Sebastian Dröge * sys/decklink/gstdecklinkvideosink.cpp: decklinkvideosink: Add some more debug output for when frames are scheduled 2014-12-19 13:28:29 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add property for configuring the buffer size of the sources 2014-12-19 13:24:10 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: decklinkaudiosrc: Implement timestamp jitter and discont handling 2014-12-19 12:37:30 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Our capture time is the end timestamp of the buffer, subtract the duration 2014-12-19 12:30:04 +0100 Sebastian Dröge * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Allow for a maximum of 5 packets to be queued up In case downstream is a bit slow with consuming packets at times. 2014-12-19 12:03:09 +0100 Sebastian Dröge * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosrc.cpp: decklink: Implement latency query in sources and remember selected mode 2014-12-18 18:30:16 +0100 Sebastian Dröge * sys/decklink/capture.cpp: * sys/decklink/capture.h: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: Remove obsolete files 2014-12-18 17:31:20 +0100 Sebastian Dröge * sys/decklink/Makefile.am: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosrc.cpp: * sys/decklink/gstdecklinkaudiosrc.h: * sys/decklink/gstdecklinkvideosrc.cpp: * sys/decklink/gstdecklinkvideosrc.h: decklink: Add initial version of audio and video sources 2014-12-13 17:23:31 +0100 Sebastian Dröge * sys/decklink/Makefile.am: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinkaudiosink.cpp: * sys/decklink/gstdecklinkaudiosink.h: * sys/decklink/gstdecklinkvideosink.cpp: * sys/decklink/gstdecklinkvideosink.h: decklink: Initial version of the audio/video sink rewrite 2014-12-19 13:04:58 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audiomixer: Track discont-time per pad instead of globally We do discont handling per pad, not per element! 2014-12-15 16:27:16 +0100 Branko Subasic * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsmtpsink.h: curlsmtpsink: add final boundary to all multipart emails Corrected the final boundary mechanism so that a final boundary is added to each mail with multipart content that is sent, not just to the last one. https://bugzilla.gnome.org/show_bug.cgi?id=741553 2014-12-18 23:33:58 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: We're only EOS if all our pads are actually EOS Having a buffer or not on the pad is irrelevant. 2014-12-18 22:42:14 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: The pad's size is always supposed to be the whole buffer size And the offset the offset into that buffer. Changing the size will cause all kinds of assumptions to fail and cause crashes. 2014-12-18 22:04:38 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't try to map NULL buffers 2014-12-18 22:03:04 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Make sure to always update the pad's videoinfo together with buffers Otherwise the videoinfo and the buffer content can go out of sync. 2014-12-18 11:48:37 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: Fix memory leak when no buffer is available for a pad currently CID 1258718 2014-12-18 10:54:05 +0100 Sebastian Dröge * common: Automatic update of common submodule From ef1ffdc to f2c6b95 2014-12-17 22:01:23 -0300 Thiago Santos * ext/x265/gstx265enc.c: x265enc: reuse the gstvideo proxy getcaps The caps query is implementing the same logic as the default handler from the base class. Reuse it to simplify code. 2014-12-17 21:52:13 -0300 Thiago Santos * ext/opus/gstopusenc.c: opusenc: plug ref leak of template caps the pad template caps is already a new ref. No need to copy. 2014-12-17 19:51:32 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst/audiomixer/gstaudiomixer.c: aggregator: Add function to allow subclasses to set their own latency For audiomixer this is one blocksize, for videoaggregator this should be the duration of one output frame. 2014-12-17 19:37:22 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Make sure to not have pads being behind the current offset We would break sync between the different streams then. 2014-12-17 17:54:09 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst/audiomixer/gstaudiomixer.c: * gst/compositor/compositor.c: * tests/check/libs/aggregator.c: aggregator: Add a timeout parameter to ::aggregate() When this is TRUE, we really have to produce output. This happens in live mixing mode when we have to output something for the current time, no matter if we have enough input or not. 2014-12-17 18:20:15 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add queues after the (live) sources in the unit test 2014-12-17 12:20:54 +1100 Alessandro Decina * sys/applemedia/avfvideosrc.m: avfvideosrc: improve timestamping and latency reporting Use AVF provided timings to timestamp output buffers. Use the running time at the time the first buffer is produced to base timestamps on. Report 1-frame latency based on the negotiated framerate instead of hardcoding 4ms latency. 2014-12-15 22:24:26 -0500 Raimo Järvi * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowutil.cpp: * sys/dshowdecwrapper/gstdshowutil.h: * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdecwrapper: Remove dependency on ATL This fixes compiling with Visual C++ Express that doesn't include ATL. https://bugzilla.gnome.org/show_bug.cgi?id=677223 2014-12-04 23:30:23 -0500 Matthew Bader * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: Added support for image/jpeg and h264 https://bugzilla.gnome.org/show_bug.cgi?id=741188 2014-12-16 19:49:35 +0000 Tim-Philipp Müller * tests/check/libs/aggregator.c: tests: fix aggregator unit test after property renaming 2014-12-16 17:37:12 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Implement get_next_time() 2014-12-16 17:33:01 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Some minor cleanup 2014-12-05 18:19:54 +1100 Matthew Waters * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * gst-libs/gst/video/gstvideoaggregator.c: aggregator: make the src pad task drive the pipeline for live pipelines This removes the uses of GAsyncQueue and replaces it with explicit GMutex, GCond and wakeup count which is used for the non-live case. For live pipelines, the aggregator waits on the clock until either data arrives on all sink pads or the expected output buffer time arrives plus the timeout/latency at which time, the subclass produces a buffer. https://bugzilla.gnome.org/show_bug.cgi?id=741146 2014-12-08 15:18:25 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: always try to use newer buffers instead of dropping them for being too old. This ensures that the newest buffer is always used for rendering 2014-12-16 13:35:14 +0100 Wim Taymans * ext/directfb/dfbvideosink.c: * ext/sdl/sdlvideosink.c: * ext/wayland/wlwindow.c: * sys/directdraw/gstdirectdrawsink.c: * sys/pvr2d/gstpvrvideosink.c: * sys/vdpau/gstvdpvideopostprocess.c: rectangle: clear rectangle struct before use 2014-12-15 15:21:50 +0000 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: fix frame size determination https://bugzilla.gnome.org/show_bug.cgi?id=741321 2014-06-19 21:32:09 +0200 Mathieu Duponchelle * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxftypes.h: mxfdemux: Use IndexTableSegments. This speeds up seeking drastically. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732294 2014-12-14 01:29:26 +0100 Sebastian Rasmussen * tests/check/libs/aggregator.c: tests/aggregator: Use correct type when setting property Fixes https://bugzilla.gnome.org/show_bug.cgi?id=741495 2014-05-08 10:41:03 +0530 Sudip Jain * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: scan more bytes to find initial PCRs Fixes playback of Samsung-Colorful-Variety-1080i.ts. https://bugzilla.gnome.org/show_bug.cgi?id=729768 2014-12-12 20:57:28 +0000 Tim-Philipp Müller * configure.ac: * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: Revert "openh264: fix to work with released versions and master of upstream" This reverts commit 15394aa70543f55c54fa8a474805224f4138f76c. The latest release (v1.1) does not have pkg-config support yet, so this plugin won't be built with the latest release. Cerbero uses the latest release, so this makes cerbero builds fail, which expect the plugin to be built. We can re-commit this once there's a release that includes pkg-config support. 2014-12-12 10:05:23 -0800 Zaheer Abbas Merali * configure.ac: * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: openh264: fix to work with released versions and master of upstream 2014-12-12 11:21:27 +0100 Thibault Saunier * gst/debugutils/gstwatchdog.c: watchdog: GstElement->state is protected with the OBJECT_LOCK Not the STATE_LOCK. gst_watchdog_feed was already always called with the OBJECT_LOCK taken. 2014-11-27 20:48:24 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: Hide some more fields from the API + Add some documentation 2014-12-12 00:30:21 +0000 Tim-Philipp Müller * gst/onvif/Makefile.am: onvif: fix 'make dist' 2014-12-11 21:01:48 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix seek event handling Properly do seeking and avoid only seeking when the segment was updated. It would cause seeks after the stream was EOS to fail, for example. https://bugzilla.gnome.org/show_bug.cgi?id=738920 2014-11-17 19:26:53 -0500 Olivier Crête * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: * tests/check/elements/rtponvif.c: rtponviftimestamp: Automatically discover the ntp-offset by default. This only works if no packets are pushed in before the pipeline goes to playing. So it helps to have a live source. https://bugzilla.gnome.org/show_bug.cgi?id=731769 2014-06-05 15:06:33 +0200 Guillaume Desmottes * gst/onvif/Makefile.am: * gst/onvif/gstrtponvif.c: * gst/onvif/gstrtponvifparse.c: * gst/onvif/gstrtponvifparse.h: * tests/check/elements/rtponvif.c: add rtponvifextract element https://bugzilla.gnome.org/show_bug.cgi?id=731769 2014-04-28 11:07:17 +0200 Guillaume Desmottes * configure.ac: * gst/onvif/Makefile.am: * gst/onvif/gstrtponvif.c: * gst/onvif/gstrtponviftimestamp.c: * gst/onvif/gstrtponviftimestamp.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rtponvif.c: add rtponviftimestamp element https://bugzilla.gnome.org/show_bug.cgi?id=731769 2014-12-08 11:02:51 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglfilter.c: glfilter: fix position/texcoord attrib index usage https://bugzilla.gnome.org/show_bug.cgi?id=741231 2014-12-11 18:17:02 +1100 Matthew Waters * ext/gl/gstglfiltercube.c: glfiltercube: use a shader everywhere 2014-12-11 18:15:02 +1100 Matthew Waters * ext/gl/gstglfiltercube.c: * ext/gl/gstglimagesink.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglfilter.c: gl: fixup vao and vbo usage for legacy GL 2014-12-11 14:57:18 +1100 Matthew Waters * ext/gl/gstgleffects.c: gleffects: don't abort when setting the effect to 0,1,2 2014-12-10 12:48:33 +1100 Matthew Waters * tests/examples/gl/sdl/sdlshare.c: gl/examples: fixup sdl example for gluPerspective removal 2014-12-09 08:38:55 -0800 Nick Stoughton * configure.ac: * sys/bluez/gstavdtputil.c: bluez: support compile-time distinction between bluez4 and bluez5 Signed-off-by: Nick Stoughton https://bugzilla.gnome.org/show_bug.cgi?id=738626 2014-12-10 18:23:02 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: check the return from update_manifest correctly It is a GstFlowReturn and not a boolean 2014-12-10 09:24:17 +0000 David Waring * ext/dash/gstmpdparser.c: dashdemux: Change period when setting by period id. Make gst_mpd_client_set_period_id set the current period index when it finds a period with a matching period id. https://bugzilla.gnome.org/show_bug.cgi?id=741322 2014-12-10 15:27:49 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix reverse playback fragment tracking Rework reverse fragment traversing with repetition fields to prevent NULL pointer deref and avoid never advancing a fragment as the variable is unsigned and would always be non-negative. CID #1257627 CID #1257628 2014-12-11 00:02:26 +1100 Alessandro Decina * sys/applemedia/vtenc.c: vtenc: bump rank to PRIMARY 2014-12-10 22:36:53 +1100 Alessandro Decina * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: negotiate profile and level with downstream 2014-12-10 19:44:01 +1100 Alessandro Decina * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: report latency 2014-12-05 16:20:08 +0000 David Waring * ext/dash/gstdashdemux.c: dashdemux: Find current segment in the streams that have just been setup Using demux->streams will just skip the whole loop as demux->streams will always be NULL at that point https://bugzilla.gnome.org/show_bug.cgi?id=741285 2014-12-09 05:03:11 +0100 Mathieu Duponchelle * gst/geometrictransform/gstmirror.c: mirror: Needs remap when the mode changes. This caused the user to think the mode wasn't taken into account. 2014-12-09 04:28:17 +0100 Mathieu Duponchelle * gst/videoparsers/gsth264parse.c: Revert "h264parse: expose compatible profiles to downstream" This reverts commit 3910cbe7ce1a67ed5506f87e4c5a005c168d0e6c. 2014-12-08 08:53:00 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: do not try to unlock not locked mutex A misplaced unlock was causing an assertion for playback with a set stop time 2014-12-08 08:24:17 -0300 Thiago Santos * gst-libs/gst/Makefile.am: gst-libs: build order: uridownloader before adaptivedemux Otherwise make install fails 2014-12-05 16:33:20 +0100 Sebastian Dröge * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Add properties to specify the maximum keyframe interval in frames and seconds 2014-12-05 16:15:23 +0100 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Fix conversion of the bitrate property and our internal bitrate storage The property is in kbit/s and we store it in bit/s, so just multiply and divide by 1000. No need to put a factor of 8 in there. kVTCompressionPropertyKey_AverageBitRate is also in bit/s according to its documentation. 2014-12-05 13:12:59 +0530 Arun Raghavan * gst/inter/gstintervideosrc.c: intervideosrc: Fix a memory leak Frees the source ARGB black frame that we use to create the black frame in our target format. 2014-12-02 10:10:39 +0200 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: expose compatible profiles to downstream Some video bitstreams report a too restrictive set of profiles. If a video decoder was to strictly follow the indicated profile, it wouldn't support that stream, whereas it could in theory and in practice. So we should relax the profile restriction for allowing the decoder to get connected with parser. https://bugzilla.gnome.org/show_bug.cgi?id=739992 2013-05-01 11:17:02 +0800 Chun-wei Fan * sys/dshowvideosink/dshowvideofakesrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: dshowvideosink: Port to 1.0 and new GLib threading API This updates the dshowvideosink to work with the GStreamer 1.0.x APIs, and avoids the use of deprecated GLib threading API that are now used since GLib 2.32+ https://bugzilla.gnome.org/show_bug.cgi?id=699364 2014-12-04 01:46:43 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: add live support Implement the functions of adaptivedemux to have live support enabled. This allows mssdemux to refresh the Manifest periodically 2014-12-04 15:52:44 -0500 Matthew Bader * sys/dshowdecwrapper/CMakeLists.txt: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowdecwrapper.h: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.h: dshowdecwrapper: Port to 1.x https://bugzilla.gnome.org/show_bug.cgi?id=740945 2014-12-01 16:40:24 -0300 Reynaldo H. Verdejo Pinochet * configure.ac: * sys/vcd/vcdsrc.c: vcdsrc: port to 1. https://bugzilla.gnome.org/show_bug.cgi?id=547661 2014-12-04 12:21:04 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix getting current position in segments when after last one For live streams this makes a difference when resyncing after a Manifest refresh, otherwise it doesn't know where to restart 2014-12-02 23:27:29 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: support manifests with repetition fragments Read the "r" attribute from fragments to support fragments nodes that use repetition to have a shorter Manifest xml. Instead of doing: You can use: 2014-11-22 01:01:50 -0300 Thiago Santos * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: port to adaptivedemux base class 2014-12-03 16:13:17 -0500 Matthew Bader * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: Fixed null caps comparison https://bugzilla.gnome.org/show_bug.cgi?id=741086 2014-12-04 02:12:08 -0200 Flávio Ribeiro * ext/hls/gsthlssink.c: * ext/hls/gstm3u8playlist.c: hlssink: remove unnecessary title on EXTINF tag According to the HLS spec the remainder of the line following the comma on EXTINF tag is not required. This patch removes the fake title and saves some bytes on the playlist. https://bugzilla.gnome.org/show_bug.cgi?id=741096 2014-12-04 20:37:51 +0530 Ramprakash Jelari * ext/gl/gstopengl.c: gl: Rename gst-launch-0.10 to gst-launch-1.0 in docs 2014-12-04 15:42:55 +0100 Sebastian Dröge * sys/decklink/Makefile.am: decklink: Fix make distcheck And properly dist all headers and source files. 2014-12-03 18:31:06 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: release threads waiting for manifest update on shutdown For live streams, also unblock threads that might be waiting for a manifest update when stopping the pipeline. Also add some more debug messages 2014-12-03 13:52:07 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: use gst_task_stop instead of gst_task_pause To avoid race conditions with gst_task_stop(); gst_task_join() with another thread doing gst_task_pause(), the joining thread would be waiting for the task to stop but it would never happen. So just use gst_task_stop() everywhere to prevent more mutexes 2014-12-03 12:48:42 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix deadlock when stopping streams Remember to unlock the manifest's lock when leaving the download task. 2014-12-03 16:01:11 +0100 Sebastian Dröge * sys/decklink/linux/DeckLinkAPIDispatch.cpp: decklink: Fix compiler warnings with gcc in the dispatcher 2014-12-03 15:30:43 +0100 Philippe Normand * gst-libs/gst/gl/gstglsyncmeta.h: glsyncmeta: add G_END_DECLS 2014-12-03 15:07:16 +0100 Sebastian Dröge * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPI_i.c: decklink: Update Windows SDK headers to 10.3.1 No idea where the DecklinkAPIDispatch.cpp comes from on Windows, but this should still work. Will just become a problem once we use other parts of the API. 2014-12-03 14:42:43 +0100 Sebastian Dröge * sys/decklink/Makefile.am: * sys/decklink/osx/DeckLinkAPI.h: * sys/decklink/osx/DeckLinkAPIConfiguration.h: * sys/decklink/osx/DeckLinkAPIDeckControl.h: * sys/decklink/osx/DeckLinkAPIDiscovery.h: * sys/decklink/osx/DeckLinkAPIDispatch.cpp: * sys/decklink/osx/DeckLinkAPIModes.h: * sys/decklink/osx/DeckLinkAPIStreaming.h: * sys/decklink/osx/DeckLinkAPITypes.h: * sys/decklink/osx/DeckLinkAPIVersion.h: decklink: Update OS X SDK headers to 10.3.1 2014-12-03 14:39:13 +0100 Sebastian Dröge * sys/decklink/linux/DeckLinkAPI.h: * sys/decklink/linux/DeckLinkAPIConfiguration.h: * sys/decklink/linux/DeckLinkAPIDeckControl.h: * sys/decklink/linux/DeckLinkAPIDiscovery.h: * sys/decklink/linux/DeckLinkAPIDispatch.cpp: * sys/decklink/linux/DeckLinkAPIModes.h: * sys/decklink/linux/DeckLinkAPITypes.h: decklink: Update Linux SDK headers to 10.3.1 2014-12-03 10:06:09 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: remove unused error variable CID #1256556 2014-12-03 09:45:58 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: remove more get_duration checks Subclasses must implement get_duration function. If they do not know the duration they can return GST_CLOCK_TIME_NONE 2014-12-03 09:40:34 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: all subclasses must implement get_duration CID #1256557 2014-12-02 23:29:20 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: make sure to always stop the stream on EOS For On-Demand streams, always stop the tasks for streams that reached EOS 2014-12-03 08:02:58 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: glcontext: try cgl before glx It was already done by commit f506e80686eedc66912583db11914ec3f713b478 but it has been broken by commit 45ec777cea0e69b2597d1ec02b18ec31d618c920 2014-12-03 07:46:50 +0000 Julien Isorce * tests/check/elements/.gitignore: tests: add glimagesink unit test to .gitignore 2014-12-02 15:52:54 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: fix double unref of object the datetime is already released by the end of the function 2014-10-10 11:24:08 +0100 David Waring * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Find the current period in a live stream Start from the correct period on a live stream https://bugzilla.gnome.org/show_bug.cgi?id=737421 2014-12-02 10:06:00 +0000 David Waring * ext/dash/gstdashdemux.c: dashdemux: Fix period selection for live streams Fix period selection and properly error out when update cannot be done https://bugzilla.gnome.org/show_bug.cgi?id=725298 2014-07-09 10:11:40 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Improve last PCR detection When dealing with random-access content (such as files), we initially search for the last PCR in order to figure out duration and to handle other position estimation such as those used in seeking. Previously, the code looking for that last PCR would search in the last 640kB of the file going forward, and stop at the first PCR encountered. The problem with that was two-fold: * It wouldn't really be the last PCR (it would be the first one within those last 640kB. In case of VBR files, this would put off duration and seek code slightly. * It would fail on files with bitrates higher than 52Mbit/s (not common) Instead this patch modifies that code by: * Scanning over the last 2048kB (allows to cope with streams up to 160Mbit/s) * Starts by the end of the file, going over chunks of 300 MPEG-TS packets * Doesn't stop at the first PCR detected in a chunk, but instead records all of them, and only stop searching if there was "at least" one PCR within that chunk This should improve duration reporting and seeking operations on VBR files https://bugzilla.gnome.org/show_bug.cgi?id=708532 2014-12-01 11:47:29 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Only activate warning for real streams streams with stream_type 0xff are PCR-only streams, it's normal not to have a pad for them. 2014-12-01 12:14:20 +0100 Jürgen Slowack * ext/x265/gstx265enc.c: * ext/x265/gstx265enc.h: x265enc: add qp property QP property enables CQP mode and sets the QP for P slices. 2014-12-01 10:59:32 +0100 Thijs Vermeir * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl/cocoa: Fix example on Mac OS X 10.10 Using NSApp directly seems to confuse something, as the compiler was expecting an id. Switched to using [NSApplication sharedApplication], and specified the delegate protocol on the window class as well. Similar to https://bugzilla.gnome.org/show_bug.cgi?id=738740 2014-12-01 10:27:43 +0100 Edward Hervey * gst-libs/gst/Makefile.am: * gst-libs/gst/adaptivedemux/Makefile.am: gst-libs: Fix dependency build adaptivedemux depends on uridownloader and video depends on base 2014-12-01 09:48:41 +0100 Thomas Klausner * configure.ac: configure: Do comparisons in a portable way with = instead of == https://bugzilla.gnome.org/show_bug.cgi?id=740953 2014-11-30 21:54:38 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: reworking live manifest update wait Check if the stream is live before checking if it is EOS as a live stream might be considered EOS when it just needs to wait for a manifest update to proceed with the next fragments 2014-11-29 10:28:09 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: fix manifest update locking To avoid unlocking a not locked mutex 2014-11-29 10:27:25 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: Fix segment for manifests that won't start at 0 For live streams, the manifest might start at an advanced position. Avoid using segment start=0 to have playback start immediately 2014-11-29 10:26:31 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: replace the streams with the new mpd client's streams Otherwise it won't update with the new segment info from the playlist update 2014-11-29 10:25:45 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: when updating the manifest, set the uri This will allow dashdemux to create the correct full path URIs to continue downloading fragments 2014-08-26 16:45:46 -0300 Thiago Santos * ext/dash/Makefile.am: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: port to adaptive demux 2014-11-22 17:27:03 -0300 Thiago Santos * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: adaptivedemux: also clear flushing state on pads before restarting During flushing seeks the flushing flow return will propagate up to the source element and all pads are going to have the flushing flag set. So before restarting also remove that flag together with the EOS one. We don't do that when pushing the flush stop event because our event handler for the proxypad will drop all events. 2014-11-21 20:42:09 -0300 Thiago Santos * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/adaptivedemux/Makefile.am: * gst-libs/gst/adaptivedemux/gstadaptivedemux.c: * gst-libs/gst/adaptivedemux/gstadaptivedemux.h: adaptivedemux: add adaptivedemux base class https://bugzilla.gnome.org/show_bug.cgi?id=735848 2014-11-29 13:16:56 +0000 Tim-Philipp Müller * gst/gdp/gstgdppay.c: gdppay: minor caps event payloading optimisation Avoid creation of buffer we're just going to throw away two lines later anyway. 2014-11-29 13:15:36 +0000 Tim-Philipp Müller * gst/gdp/gstgdppay.c: gdppay: fix some memory leaks 2014-11-30 00:42:17 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: require GL_ARB_ES2_compatibility for opengl3 until we generate gl3 compliant shaders https://bugzilla.gnome.org/show_bug.cgi?id=740012 2014-11-30 00:18:55 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: properly handle the !opengl3 case https://bugzilla.gnome.org/show_bug.cgi?id=740012 2014-11-28 17:31:07 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Drop too late frames and start scheduled playback at the correct time 2014-11-28 16:04:54 +0000 Tim-Philipp Müller * ext/gl/gstglfilterapp.c: glfilterapp: fix unused variable compiler warning When GST_GL_HAVE_OPENGL is 0 or unset. 2014-11-28 15:06:42 +0100 Sebastian Dröge * sys/decklink/gstdecklinksrc.cpp: decklinksrc: For the source, unsetting the callback already deletes it 2014-11-14 11:19:45 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Wait for the pipeline clock instead of the decklink clock Otherwise we're going to starve other elements if the decklink clock is slower than the pipeline clock, or starts much later. Of course this will still cause problems if the decklink clock and ours are completely out of sync, or running at a very different rate. But this at least works better now. 2014-11-14 10:58:53 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: decklinksink: Schedule video frames according to their timestamps, not according to a frame counter 2014-11-14 11:02:01 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Add some FIXME comments about synchronization 2014-11-14 10:38:33 +0100 Sebastian Dröge * sys/decklink/capture.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklinksrc: Sample the pipeline clock for the timestamps instead of coming up with our own If we just count the frames and calculate timestamps from that, all frames will arrive late in the sink as we have a live source here. Instead take the pipeline clock at capture time as reference. 2014-11-28 14:50:18 +0100 Sebastian Dröge * sys/decklink/capture.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklinksrc: Handle callback/delegate object the same way as in the sink Potentially fixes crashes. 2014-11-28 14:46:06 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: decklinksink: Don't crash when going to READY another time We have to handle the callback object a bit different: a) it needs a virtual destructor b) we need to set the callback to NULL when we're done with the output c) create a new one every time https://bugzilla.gnome.org/show_bug.cgi?id=740616 2014-11-28 10:23:55 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: Failure to map a video frame is not just a warning Also add some warning debug output if mapping a output buffer fails 2014-11-28 10:22:44 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Failure to map a video frame is not just a warning 2014-11-28 14:08:40 +1100 Matthew Waters * ext/gl/Makefile.am: glfilterapp is now available on gles2 as well so build it 2014-11-28 13:04:21 +1100 Matthew Waters * configure.ac: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: gl: fixup compat definition for GLuint64 for OS X 2014-11-28 11:56:10 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_compat.h: gl: add compat definition for GLuint64 for android ../../../../gst-libs/gst/gl/glprototypes/sync.h:41:23: error: unknown type name 'GLuint64' GLuint64 timeout)) 2014-11-28 02:21:49 +0900 Danny Song * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: fix typo in docs https://bugzilla.gnome.org/show_bug.cgi?id=740815 2014-11-28 11:11:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglsyncmeta.c: glsync: fix build with desktop gl 2014-11-28 11:04:22 +1100 Matthew Waters * ext/gl/gstglcolorscale.c: gl: fix typo in #if GST_GL_API_HAVE_OPENGL doesn't exist 2014-11-28 10:59:46 +1100 Matthew Waters * ext/gl/effects/gstgleffectssources.h: * ext/gl/gstglcolorscale.c: * ext/gl/gstgleffects.c: * gst-libs/gst/gl/gstglsyncmeta.c: gl: fix various build errors without desktop gl 2014-11-28 10:03:18 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gldisplay: fix build error gstgldisplay.c:234:541: error: 'return' with no value, in function returning non-void [-Werror] g_return_if_fail (GST_IS_GL_DISPLAY (display)); 2014-11-27 21:05:45 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglbumper.c: * ext/gl/gstglcolorscale.c: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgleffects.c: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltransformation.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gldisplay: implement runtime GL api filtering Needed so that the pipeline/application can limit the choice of GL api to what it supports 2014-11-27 16:17:50 +1100 Matthew Waters * configure.ac: * ext/gl/Makefile.am: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglimagesink.c: * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/sdl/sdlshare.c: gl: remove the use of glu 2014-10-17 15:22:24 +0200 Matthew Waters * configure.ac: * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/glprototypes/sync.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglsyncmeta.c: * gst-libs/gst/gl/gstglsyncmeta.h: gl: add a sync meta for synchronizing across GL contexts A context can create a GLsync object that can be waited on in order to ensure that GL resources created in one context are able to be used in another shared context without any chance of reading invalid data. This meta would be placed on buffers that are known to cross from one context to another. The receiving element would then wait on the sync object to ensure that the data to be used is complete. 2014-10-17 15:08:29 +0200 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/sync.h: glprototypes: add sync function definitions 2014-11-17 18:06:20 +1100 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstopengl.c: glfilterapp: port to gles2 and gl3 2014-11-14 23:24:48 +1100 Matthew Waters * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: gloverlay: support gl3 2014-11-14 00:20:10 +1100 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add support for gl3 2014-11-13 21:30:38 +1100 Matthew Waters * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: glfiltercube: add a gl3 code path 2014-11-13 15:09:04 +1100 Matthew Waters * ext/gl/gstglfiltershader.c: glfiltershader: support gl3 2014-11-13 12:12:46 +1100 Matthew Waters * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: support gl3 2014-11-12 23:48:32 +1100 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: gleffects: support gl3 whereever gles2 is supported 2014-11-12 23:47:13 +1100 Matthew Waters * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: glcolorscale: support gl3 2014-11-12 22:49:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: add a gl3 code path using vao's and vbo's 2014-11-12 22:48:04 +1100 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: add support for gl3 2014-10-23 22:35:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: glcolorconvert: add support for gl3 2014-10-21 22:18:51 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: use vbo's and vao's for gl3 2014-10-21 19:30:38 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader add support for gl3 2014-10-19 08:09:37 +0400 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glx: ask for a GL3 core context 2014-11-27 21:22:44 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Minor cleanup 2014-11-26 15:02:14 +0100 Sebastian Dröge * gst/compositor/compositor.c: * gst/compositor/compositorpad.h: compositor: Implement rescaling of the input via pad properties compositor has now the same interface as glvideomixer. 2014-11-27 20:34:25 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Copy over more fields from the relevant video-info gst_video_info_set_format() will reset the complete video-info, but we want to keep values like the PAR, colorimetry and chroma site. Otherwise we risk setting different values on the srcpad caps than what is actually inside the buffers. 2014-11-27 20:25:29 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Directly use the converters video-info instead of recalculating it 2014-11-27 19:52:20 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do source pad negotiation only from the aggregated function Otherwise we might negotiate from the sinkpad streaming threads at the same time as on the srcpad streaming thread, and then all kinds of crazy bugs happen that don't make any sense at all. 2014-11-27 18:46:03 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoconvert: Hide all conversion related fields And do not delay the setting of the conversion_info https://bugzilla.gnome.org/show_bug.cgi?id=740768 2014-11-27 16:43:39 +0100 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: audiomixer: Do not try to resize a buffer to a negative size on EOS 2014-11-26 18:24:05 +0100 Thibault Saunier * ext/gl/gstglmixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: Expose vmethods to set converters and prepare/clean frames This gives more flexibility to the subclasses and permits to remove the GstVideoAggregatorClass->disable_frame_conversion ugly API. WARNING: This breaks the API as it removes the disable_frame_conversion field API: + GstVideoAggregatorClass->find_best_format + GstVideoAggregatorPadClass->set_format + GstVideoAggregatorPadClass->prepare_frame + GstVideoAggregatorPadClass->clean_frame - GstVideoAggregatorClass->disable_frame_conversion https://bugzilla.gnome.org/show_bug.cgi?id=740768 2014-11-26 15:41:37 +0100 Thibault Saunier * gst/debugutils/gstwatchdog.c: * gst/debugutils/gstwatchdog.h: watchdog: Handle FLUSHING seek events even in PAUSED state https://bugzilla.gnome.org/show_bug.cgi?id=740757 2014-11-26 15:43:12 +0100 Thibault Saunier * gst/debugutils/gstwatchdog.c: * gst/debugutils/gstwatchdog.h: watchdog: Properly handle PAUSED state In PAUSED state we should just preroll, so get one buffer and stop monitoring. https://bugzilla.gnome.org/show_bug.cgi?id=740757 2014-10-31 11:01:47 +0100 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Let a full renegotiation happen after removing the last pad With the current code, we will end up setting the preferred downstream format as the srcpad format, and it might not be accepted by the next sinkpad to be added. We should instead let the next sinkpad reconfigure everything. 2014-11-27 13:40:56 +0100 Alessandro Decina * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: add quality property 2014-11-27 13:33:07 +0100 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/vtenc.c: vtenc: set profile and level in caps 2014-11-27 18:09:58 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Unref buffer with the correct function 2014-11-27 18:09:14 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglmemory.c: glmemory: Handle failure of memory allocation gracefully 2014-11-27 18:04:58 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglmemory.c: glmemory: Use g_try_malloc() in the appropriate places g_malloc() aborts if allocation fails, it's pointless to check against NULL afterwards. That's why g_try_malloc() exists. 2014-11-27 17:11:13 +0100 Edward Hervey * common: Automatic update of common submodule From f32cfcd to ef1ffdc 2014-11-27 10:48:43 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: support RGB16/BGR16 video format download https://bugzilla.gnome.org/show_bug.cgi?id=740801 2014-11-27 13:01:19 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: only attempt a resize when the window has already resized fixes a black startup screen on wayland 2014-11-27 11:47:38 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: gl/wayland: implement resizing the window using the right mouse button 2014-11-26 22:05:10 +0530 Arun Raghavan * common: * configure.ac: build: Use newer AX_PTHREAD instead of ACX_PTHREAD 2014-11-26 14:36:42 +0000 Tim-Philipp Müller * configure.ac: * sys/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/codecmapping.c: * sys/qtwrapper/codecmapping.h: * sys/qtwrapper/imagedescription.c: * sys/qtwrapper/imagedescription.h: * sys/qtwrapper/qtutils.c: * sys/qtwrapper/qtutils.h: * sys/qtwrapper/qtwrapper.c: * sys/qtwrapper/qtwrapper.h: * sys/qtwrapper/videodecoders.c: Remove unported and obsolete qtwrapper plugin code QuickTime is deprecated, we want new plugins based on avfoundation (osx) or dxva/mediafoundation (windows). 2014-11-27 01:27:19 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: support fixed dimensions on both sides of the element Fixes: width=320,height=240 ! glfilter ! width=800,height=600 width=230,height=240 ! glfilter ! width=600 ... ! glfilter ! width=800 2014-11-25 13:33:07 +1100 Matthew Waters * configure.ac: gl: fix automagic disabling of desktop GL If configure finds GL + GLES2 but the user passes --enable-gles2 and the two GL API's cannot be built against together, configure was still allowing the desktop GL stack to be built. 2014-11-26 13:06:21 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Also sync pad properties to the controller if conversion is disabled 2014-11-26 12:35:52 +0100 Sebastian Dröge * gst/compositor/compositor.c: * gst/compositor/compositorpad.h: compositor: Remove unused zorder pad property It's handled in videoaggregator already. 2014-11-23 23:49:50 +0000 Julien Isorce * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/nalutils.h: codecparsers: fix some compiler warnings i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 "warning: comparison is always true due to limited range of data type" Fixes https://bugzilla.gnome.org/show_bug.cgi?id=740673 2014-11-25 18:53:55 +0100 Sebastian Dröge * gst/compositor/compositor.c: compositor: GstVideoMeta is supported just fine, tell upstream about that Also provide a GstVideoBufferPool to upstream just in case. 2014-11-24 13:25:55 +0000 Tim-Philipp Müller * sys/winks/gstksvideodevice.c: * sys/winks/ksvideohelpers.c: winks: fix debug message format issues And print last bits of GUID properly instead of printing nonsense. https://bugzilla.gnome.org/show_bug.cgi?id=733055 2014-11-25 08:24:16 +0000 Julien Isorce * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: fix some compiler warnings i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 "warning: comparison is always true due to limited range of data type" https://bugzilla.gnome.org/show_bug.cgi?id=740674 2014-11-24 19:53:56 +0000 Tim-Philipp Müller * configure.ac: configure: use pkg-config to detect X11 Like we do in -base and -good now. https://bugzilla.gnome.org/show_bug.cgi?id=731047 2014-11-24 19:21:29 +0100 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Use a fixed number of slices by default 2014-11-24 19:16:20 +0100 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Add some more encoding properties Merged from https://github.com/EricssonResearch/openwebrtc-gst-plugins based on a patchset by Robert Swain 2014-11-24 18:40:53 +0530 Ramprakash Jelari * gst-libs/gst/gl/gstglcontext.c: glcontext: Fix unused variable warning by moving declaration where it is actually used 2014-11-24 14:07:19 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: decklink: Add support for 2k modes 2014-11-24 13:56:56 +0100 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: HD1080i50 is 50 frames per second 2014-11-24 17:58:42 +0530 Ramprakash Jelari * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix format string compiler warning 2014-11-24 17:18:44 +0530 Ramprakash Jelari * gst-libs/gst/mpegts/gst-dvb-section.c: dvbsection: Fix format string compiler warning 2014-11-24 16:54:42 +0530 Ramprakash Jelari * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegtsdescriptor: Fix format string compiler warning gstmpegtsdescriptor.c:778:16: warning: format specifies type 'unsigned long' but the argument has type 'int' [-Wformat] 2014-11-24 11:32:33 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Fix valid compiler warning gstglupload.c:442:32: error: if statement has empty body [-Werror,-Wempty-body] if (upload->texture_ids[i]); ^ 2014-11-24 10:43:23 +0100 Philippe Normand * gst-libs/gst/gl/egl/Makefile.am: gl: ship the gstglcontext_egl.h header It is required by gsteglimagememory.h. https://bugzilla.gnome.org/show_bug.cgi?id=740611 2014-11-23 21:43:20 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglshadervariables.c: gl: shadervariables: make parsing of floats locale-independent Floating point numbers are written differently in different locales, e.g. in many countries 1/2 = 0,5 instead of 0.5, and strtod will not be able to parse "0.5" correctly in such a locale. 2014-11-24 02:52:24 +1100 Matthew Waters * gst-libs/gst/gl/gstglshadervariables.c: glshadervariables: also trim \r as well as \n 2014-11-05 20:18:06 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gsteglimagememory.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglupload.c: glupload: rearchitecture for non GLMemory inputs/outputs Allows other memory types to be implemented/returned/used by the caller. 2014-11-14 10:55:14 +0900 Wonchul Lee * gst/rawparse/gstrawparse.c: rawparse: send SEEKING query upstream first Sometimes rawparse does not handle the seeking query properly, the rawparse should send the query upstream first. For example, upstream could support seeking in TIME format (but not in BYTE format), so the BYTE format seeking query that rawparse sends in push mode would fail. https://bugzilla.gnome.org/show_bug.cgi?id=722764 2014-11-21 15:46:49 +0100 Alessandro Decina * sys/applemedia/vtenc.c: vtenc: let VT pick the bitrate by default 2014-11-20 10:23:30 -0800 Aleix Conchillo Flaqué * ext/srtp/gstsrtpdec.c: srtpdec: fix rtp/rtcp sink event memory leak https://bugzilla.gnome.org/show_bug.cgi?id=740451 2014-11-20 16:04:34 +0100 Alessandro Decina * sys/applemedia/vtenc.c: vtenc: set H264_Baseline_AutoLevel on OSX as well 2014-11-20 15:50:18 +0100 Alessandro Decina * sys/applemedia/vtdec.c: vtdec: disable the reorder queue for baseline streams 2014-11-20 09:41:43 +0100 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Fix divide by zero in the picture buffer length calculation 2014-11-20 09:13:58 +0530 Vineeth T M * ext/gl/gstglimagesink.c: glimagesink: critical error while seek playback-test(stop state) If we seek when media is in stop state, playback-test gives critical error, since context of glimagesink is destroyed during stop. But since context is not present, we need not handle send_event in glimagesink Hence adding a condition to check if context is valid. https://bugzilla.gnome.org/show_bug.cgi?id=740305 2014-11-19 17:17:06 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Unblock events/queries immediately if the pad is flushing https://bugzilla.gnome.org/show_bug.cgi?id=740376 2014-11-19 17:15:02 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Drop serialized events/queries if the pad is flushing https://bugzilla.gnome.org/show_bug.cgi?id=740376 2014-11-19 17:03:41 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Block serialized events/queries until the pad has consumed all buffers Otherwise the caps of the pad might change while the subclass still works with a buffer of the old caps, assuming the the current pad caps apply to that buffer. Which then leads to crashes and other nice effects. https://bugzilla.gnome.org/show_bug.cgi?id=740376 2014-11-19 17:02:40 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Don't output 0-duration buffers at the segment end https://bugzilla.gnome.org/show_bug.cgi?id=740376 2014-11-19 17:03:33 +0100 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Fix typo in debug output 2014-11-17 14:05:01 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix up QoS handling for live sources Only attempt adaptive drop when we are not live https://bugzilla.gnome.org/show_bug.cgi?id=739996 2014-11-17 14:00:10 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: add _get_latency() for subclass usage API: gst_aggregator_get_latency https://bugzilla.gnome.org/show_bug.cgi?id=739996 2014-11-17 09:36:52 +0530 Vineeth T M * gst-libs/gst/gl/gstglcontext.c: glcontext: build errors when GST_GL_HAVE_OPENGL is 0 Moving variables within #if GST_GL_HAVE_OPENGL, which are not going to be used otherwise. and which are needed only when OpenGl is present https://bugzilla.gnome.org/show_bug.cgi?id=740235 2014-11-17 11:10:35 +0200 Sreerenj Balachandran * tests/examples/opencv/gsthanddetect_test.c: examples: relicense opencv gsthanddetect_test to LGPLv2+ The GPL3 license header was copy'n'pasted from a neighbouring source file by mistake, the original code was not GPL3 licensed, but fell under the default GStreamer license, which is LGPLv2+. https://bugzilla.gnome.org/show_bug.cgi?id=685655 2014-11-17 18:50:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: add read-only context property 2014-11-17 18:50:04 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: add read-only context property 2014-11-11 17:08:25 +0900 Hyunjun Ko * tests/examples/opencv/gst_element_print_properties.c: opencv-example: Use g_snprintf instead of sprintf https://bugzilla.gnome.org/show_bug.cgi?id=739846 2014-11-16 20:32:56 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop explicit comparisons against 0 for true/false 2014-11-16 11:00:14 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Only use convertRectToBacking on OSX >= 10.7 It does not exist before and older versions also don't have support for HiDPI displays anyway. https://bugzilla.gnome.org/show_bug.cgi?id=740201 2014-11-16 10:57:55 +0100 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/gstglapi.h: gl: Use numeric OSX version instead of the macro The macro is not defined on older OSX versions and evaluates to 0. https://bugzilla.gnome.org/show_bug.cgi?id=740201 2014-11-15 21:59:48 +0000 Tim-Philipp Müller * sys/dvb/dvbbasebin.c: dvbbasebin: fix possible crash by passing 64 bits for 64-bit queue property https://bugzilla.gnome.org/show_bug.cgi?id=740191 2014-11-14 10:40:31 +0100 Sebastian Dröge * sys/decklink/capture.cpp: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinksrc.cpp: decklink: Fix indention 2014-11-10 10:01:24 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix derivation of MaxPicNum variable. The logic to compute the MaxPicNum variable was reversed. In paricular, MaxPicNum is double MaxFrameNum only if field_pic_flag is set to 1. https://bugzilla.gnome.org/show_bug.cgi?id=739291 2014-11-13 12:01:25 +0100 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Don't override the application delegate Otherwise interesting things will happen in Cocoa applications, like infinite event loops that block the NSApplication loop forever. This was only needed for GNUStep and thus can safely be removed now. 2014-11-13 11:58:07 +0100 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl/cocoa: Remove GNUStep support Until gcc and GNUStep properly support Objective-C blocks and other "new" features of Objective-C we can't properly support them without making the code much more ugly. https://bugzilla.gnome.org/show_bug.cgi?id=739152 2014-11-12 18:06:45 +0100 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosink.h: interaudiosink: Make sure to store at least period-time samples at once in the adapter It's better to create some more silence than having the source pull multiple short buffers out of the adapter and insert silence between them. 2014-11-12 16:45:12 +0100 Alessandro Decina * sys/applemedia/vtenc.c: vtenc: fix build on iOS 2014-11-12 15:35:36 +0100 Alessandro Decina * sys/applemedia/coremediabuffer.c: coremediabuffer: set ->pixel_buf for CVPixelBuffer buffers Fix a bug for which we never actually set ->pixel_buf to non-NULL for CVPixelBuffer buffers. 2014-06-06 13:57:30 +0100 Vincent Penquerc'h * ext/faad/gstfaad.c: faad: set channel positions using the appropriate API https://bugzilla.gnome.org/show_bug.cgi?id=731038 2014-11-12 13:58:56 +0100 Sebastian Dröge * gst/inter/gstintervideosrc.c: intervideosrc: Stop showing the current frame after 1 second, not after 30 frames 2014-11-12 09:41:53 +0000 Julien Isorce * tests/check/Makefile.am: tests: add CFLAGS and LADD for glimagesink unit test Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732694 2014-11-12 11:52:58 +0100 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Add new enable-frame-skip property and disable it by default Otherwise e.g. videotestsrc ! openh264enc ! ... will drop every second frame because otherwise the target bitrate can't be reached without loosing too much quality. 2014-11-12 09:59:53 +0100 Alessandro Decina * sys/applemedia/vtenc.c: vtenc: fix compilation on < 10.9 2014-11-12 11:44:07 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: don't set the upload to NULL on the drain query https://bugzilla.gnome.org/show_bug.cgi?id=732694 2014-11-11 17:04:48 +0900 Hyunjun Ko * gst-libs/gst/gl/gstglwindow.c: gl: Correct invalid comment text 2014-11-11 23:54:44 +0000 Julien Isorce * tests/check/Makefile.am: * tests/check/elements/glimagesink.c: gl: add unit test that checks for glimagesink drain query handling Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732694 2014-11-11 23:49:59 +0000 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: release stored buffers on drain query Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732694 2014-11-11 23:43:42 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: gl: do not raise a critical msg if the backend does not handle window events Fix "assertion 'window_class->handle_events != NULL' failed" if not using a X11 window. 2014-11-11 18:01:54 +0100 Alessandro Decina * sys/applemedia/vtenc.c: vtenc: enable the hw encoder on OSX 2014-11-11 12:00:30 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Check the correct variable for failure If we can't get an output, we would otherwise just use it later and crash. 2014-11-11 11:18:19 +0100 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: interaudiosrc: Make sure we have a writable buffer before we start changing metadata 2014-11-11 11:15:35 +0100 Sebastian Dröge * gst/inter/gstintervideosrc.c: intervideosrc: Set the GAP flag on repeated buffers videorate does the same and it allows optimizations downstream. 2014-11-11 11:12:55 +0100 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: interaudiosrc: Set the GAP flag on buffers that only contain silence 2014-11-11 14:23:55 +1100 Matthew Waters * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: gl: remove the width/height fields from the caps to support frame resizing It was previously only occuring with sysmem caps features https://bugzilla.gnome.org/show_bug.cgi?id=739334 2014-11-10 17:42:20 +0100 Aurélien Zanelli * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: fix GstH264ParserResult documentation typo https://bugzilla.gnome.org/show_bug.cgi?id=739906 2014-11-10 16:01:25 +0100 Sebastian Dröge * tests/check/elements/.gitignore: tests: Add x265enc unit test to .gitignore 2014-11-09 20:53:34 +0000 Tim-Philipp Müller * gst/videoparsers/gstpngparse.c: pngparse: optimise reading of png files Read PNG data chunk in one go by letting the parser base class know the size we need, so that it doesn't drip-feed us small chunks of data (causing a lot of reallocs and memcpy in the process) until we have everything. Improves parsing performance of very large PNG files (65MB) from ~13 seconds to a couple of millisecs. https://bugzilla.gnome.org/show_bug.cgi?id=736176 2014-11-09 19:23:47 +0000 Tim-Philipp Müller * tests/examples/mpegtsmux/mpts_test2.c: examples: remove pointless mpegtsmux example Serves no purpose, is not even hooked up to the build system, has hard coded file names and paths, and can easily be replaced with a gst-launch line. https://bugzilla.gnome.org/show_bug.cgi?id=739844 2014-11-09 10:25:25 +0100 Sebastian Dröge * sys/applemedia/avfvideosrc.m: avfvideosrc: Don't pretend to support reconfiguration We will run into an assertion in set_caps() if we try to change caps while the source is already running. Don't try to find new caps in GstBaseSrc::negotiate() to prevent caps changes. 2014-10-09 13:11:48 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: set seq_layer_sent to FALSE on reset() https://bugzilla.gnome.org/show_bug.cgi?id=738526 2014-10-09 13:03:56 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvc1parse.h: vc1parse: implement asf to *-frame-layer stream-format This commit add an helper to convert a frame to frame-layer format and use it to implement these two stream-format conversion: - asf --> sequence-layer-frame-layer - asf --> frame-layer In simple/main profile, we basically have a raw frame, so building a frame layer isn't too complicated. But in advanced profile, the first frame-layer should contain sequence-header, entrypoint, and frame and each keyframe should contain entrypoint, so we have to handle these carefully. https://bugzilla.gnome.org/show_bug.cgi?id=738526 2014-10-09 10:38:40 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: check output format at negotiation time Add an helper to check that output stream-format is coherent with profile and header-format. It also check if we know how to do the conversion if the input stream-format differs from selected output-format. So, in case output stream-format is not allowed, it will now fail at negotiation rather than in pre_push_frame. https://bugzilla.gnome.org/show_bug.cgi?id=738526 2014-09-30 15:35:38 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: add some asf related stream-format conversions This commit introduces an helper to convert an ASF frame to BDUs format with startcodes and use this helper to implements following stream-format conversions: - asf --> bdu - asf --> sequence-layer-bdu - asf --> sequence-layer-raw-frame https://bugzilla.gnome.org/show_bug.cgi?id=738526 2014-09-30 15:28:55 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvc1parse.h: vc1parse: add some simple stream-format conversion It add the support of following stream-format conversion: - bdu --> sequence-layer-bdu - bdu-frame --> sequence-layer-bdu-frame - frame-layer --> sequence-layer-frame-layer For these conversion, the only requirements is to push a sequence-layer buffer prior to data. https://bugzilla.gnome.org/show_bug.cgi?id=738526 2014-09-30 14:53:25 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: prepare the stream-format conversion code and add the simplest ones It prepares the template for stream-format conversion and it implements the following conversion: - sequence-layer-bdu --> bdu - sequence-layer-bdu-frame --> bdu-frame - sequence-layer-frame-layer --> frame-layer Work is done in the pre_push_frame() method. https://bugzilla.gnome.org/show_bug.cgi?id=738526 2014-09-05 17:57:47 +0200 Matthieu Bouron * ext/dash/gstdashdemux.c: dashdemux: do not override last known stream error https://bugzilla.gnome.org/show_bug.cgi?id=736141 2014-11-07 19:30:18 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: seeks in the manifest never fail Set void as the return and remove error handling as it could never fail 2014-11-07 19:16:47 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: make sure flushes have the same seqnum as the seek event They are part of the same operation and should preserve the seqnum 2014-11-07 19:09:15 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: simplify seek to eos handling Remove redundant flush stop pushing and remove a goto to make the code flow simpler 2014-09-17 15:22:59 +0200 Matthieu Bouron * ext/dash/gstdashdemux.c: dashdemux: send missing FLUSH_STOP/EOS when no seeking period is found https://bugzilla.gnome.org/show_bug.cgi?id=736800 2014-11-07 15:50:51 +0100 Josep Torra * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: set the HEADER flag on buffers containing SPS or PPS 2014-11-07 15:41:15 +0100 Josep Torra * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: set the HEADER flag on buffers containing VPS, SPS or PPS 2014-11-07 11:41:01 +0100 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * pkgconfig/gstreamer-gl.pc.in: gstglconfig: Put gstglconfig.h into $(libdir)/gstreamer-1.0/include It's architecture dependent and should not be placed into the include directory as the assumption is that all those headers are architecture independent. https://bugzilla.gnome.org/show_bug.cgi?id=739767 2014-11-07 00:16:12 +0000 Tim-Philipp Müller * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: initialise new GstH264NalUnit fields CID #1251107. 2014-11-06 23:58:06 +0100 Alessandro Decina * ext/gl/gstglimagesink.c: glimagesink: don't make gst_glimage_sink_handle_events call _ensure_gl_setup gst_glimage_sink_handle_events can be called from the overlay interface and from the main thread before GL is setup. Before this change, that would call _ensure_gl_setup() and deadlock on OSX. Change things so that it's always safe to call gst_glimage_sink_handle_events() without stuff deadlocking. 2014-11-06 23:55:20 +0100 Alessandro Decina * ext/gl/gstglimagesink.c: glimagesink: fix possible deadlock on osx Remove gst_glimage_sink_handle_events call in gst_glimage_sink_init. It was unnecessary and when the element was instantiated from the main thread, caused a deadlock in OSX creating the context (thread). 2014-11-06 13:22:17 +0100 Alessandro Decina * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: add realtime and allow-frame-reordering properties 2014-11-07 10:01:59 +1100 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: clamp the resize width/height to >= 1 to avoid a GL error 2014-11-06 17:36:15 +0100 Sebastian Dröge * gst/inter/gstintervideosrc.c: intervideosrc: Print a warning into the debug log on generating black frames 2014-11-06 17:21:39 +0100 Sebastian Dröge * gst/inter/gstintervideosink.c: intervideosink: Add some debug output in the render function 2014-11-06 11:53:04 +0100 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: don't unnecesarily set src_caps https://bugzilla.gnome.org/show_bug.cgi?id=739374 2014-10-29 22:55:47 +0100 Matej Knopp * gst/videoparsers/gsth264parse.c: h264parse: don't unnecesarily set src_caps https://bugzilla.gnome.org/show_bug.cgi?id=739374 2014-11-06 18:43:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: glutils: only attempt getting the app context when we don't already have a display avoids querying/messaging the world on each frame 2014-11-06 18:37:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fail context creation if glGetString returns NULL 2014-10-29 12:24:16 +0100 Lubosz Sarnecki * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: glimagesink: implement gst_video_overlay_handle_events https://bugzilla.gnome.org/show_bug.cgi?id=736035 2014-11-04 15:16:33 +0100 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: interaudiosrc: Fix compiler warning about unused variables gstinteraudiosrc.c: In function 'gst_inter_audio_src_create': gstinteraudiosrc.c:339:27: error: variable 'buffer_samples' set but not used [-Werror=unused-but-set-variable] guint64 period_samples, buffer_samples; ^ 2014-11-04 14:56:55 +0100 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstinteraudiosrc.h: * gst/inter/gstintersurface.c: * gst/inter/gstintersurface.h: interaudio: Make buffer size and latency handling more explicit and add properties for them This now makes audio work more reliable without disconts. 2014-11-04 13:59:20 +0100 Sebastian Dröge * gst/inter/gstinteraudiosink.c: interaudiosink: Use the bpf from the audio info instead of hardcoding 4 2014-11-04 13:58:44 +0100 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: interaudio: Only flush the ringbuffer on the sink side 2014-11-04 13:46:46 +0100 Sebastian Dröge * gst/inter/gstinteraudiosink.c: interaudiosink: Flush the adapter when we get new caps Ideally we would drain the source but that would require more coordination between sink and source than what we currently have. 2014-11-04 09:52:11 +0100 Sebastian Dröge * configure.ac: gl/cocoa: include gl3.h in configure too for consistency with gstglapi.h 2014-11-03 20:45:03 -0500 Olivier Crête * gst-libs/gst/insertbin/gstinsertbin.c: insertbin: Add doc for the ignored user-data in action signals 2014-11-03 23:24:33 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: use NSAutoreleasePool to free resize data Otherwise when resizing the window you will also get messages like: class NSConcreteMapTable autoreleased with no pool in place - just leaking class NSConcreteValue autoreleased with no pool in place - just leaking class NSConcreteValue autoreleased with no pool in place - just leaking class __NSCFDictionary autoreleased with no pool in place - just leaking 2014-11-03 23:08:09 +0000 Julien Isorce * gst-libs/gst/gl/gstglapi.h: gl/cocoa: include gl3.h to have GL_CONTEXT_PROFILE_MASK 2014-11-03 23:07:34 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: make sure to turn on frame rectangle changes notifications Default value of property postsFrameChangedNotifications is YES but it is worth to explicitly enable it. 2014-11-03 23:02:17 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: fix uncaught exception 'unrecognized selector sent to instance' Need to set the ':' as the reshape method now takes one parameter. For the story, the GstGLNSView was previously inheriting from NSOpenGLView which has a reshape function without any parameter. Now the GstGLNSView inherits from NSView and we re-use the reshape function manually. 2014-11-03 22:59:41 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: fix compiler warning Use the reshape function after being defined. The other way would have been to declare the reshape function in the header. gstglwindow_cocoa.m: In function '-[GstGLNSView drawRect:]': gstglwindow_cocoa.m:555: warning: 'GstGLNSView' may not respond to '-reshape' gstglwindow_cocoa.m:555: warning: (Messages without a matching method signature gstglwindow_cocoa.m:555: warning: will be assumed to return 'id' and accept gstglwindow_cocoa.m:555: warning: '...' as arguments.) 2014-11-03 16:54:58 +0100 Sebastian Dröge * gst/inter/gstintervideosrc.c: intervideosrc: Negotiate framerate with downstream Prefer the closest framerate to the input framerate though. 2014-11-03 16:24:33 +0100 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintervideosrc.c: inter*src: No need to set caps manually on the pad basesrc does that for us already. 2014-11-03 16:13:23 +0100 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Swap source/destination parameters of gst_video_converter_frame() 2014-11-03 15:19:48 +0100 Wim Taymans * gst/inter/gstintervideosrc.c: inter: fix order of arguments 2014-11-03 10:05:59 +0100 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: interaudio: Set all required fields on the template caps https://bugzilla.gnome.org/show_bug.cgi?id=739542 2014-11-03 00:17:41 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglwindow.c: gl: fix Since marker for gst_gl_window_run_navigation() 2014-11-02 23:24:39 +0000 Tim-Philipp Müller * gst/inter/gstintersurface.c: inter: don't leak surface name 2013-09-03 11:11:54 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegdemux: start pushing data again when a pad gets linked later The whole not_linked optimisation is really a bit dodgy here, but let's leave it in place for now and at least start pushing data again when a pad got linked later, in which case we should get a RECONFIGURE event. 2013-09-02 23:36:43 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/plugin.c: mpegdemux: namespace fixes 2014-11-02 19:26:20 +0000 Tim-Philipp Müller * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: post QoS messages when dropping frames due to QoS 2014-11-02 19:12:56 +0000 Tim-Philipp Müller * gst/audiovisualizers/gstaudiovisualizer.h: audiovisualizer: fix boilerplate macros 2014-11-02 17:18:12 +0000 Tim-Philipp Müller * ext/dash/gstdashdemux.c: * ext/hls/gsthlsdemux.c: * ext/smoothstreaming/gstmssdemux.c: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: Sprinkle some G_PARAM_DEPRECATED and #ifndef GST_REMOVE_DEPRECATED 2014-11-02 17:17:46 +0000 Tim-Philipp Müller * ext/hls/gsthlsdemux.c: hls: fix indentation 2014-10-29 18:18:07 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglshadervariables.c: glshader: Fix memory leak Memory is only freed in the TRUE clause of the if conditional. Free in the else clause as well. Also, consolidate g_malloc + sprintf into a g_strdup_printf(). CID #1212171 https://bugzilla.gnome.org/show_bug.cgi?id=739368 2014-11-01 10:10:27 -0400 Nicolas Dufresne * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopuspay.c: rtpopus: Use OPUS encoding name Both Firefox and Chrome uses OPUS as the encoding in their SDP. Adding this now defacto standard name remove the need for special case in SDP parsing code. https://bugzilla.gnome.org/show_bug.cgi?id=737810 2014-10-31 17:32:56 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: add type of stream to debug log Makes it faster to debug why certain streams are not showing 2014-10-31 17:32:39 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: do not unlock not locked mutex 2014-10-31 10:45:19 +0000 Luis de Bethencourt * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix comments that confuse gtk-doc GTK-Doc uses a special syntax for code documentation. A multiline comment that starts with an additional '*' marks a documentation block that will be processed by the GTK-Doc tools. So GTK-Doc is confused if a comment block starts with that additional '*' but isn't meant to be processed. Removing this additional '*'. https://bugzilla.gnome.org/show_bug.cgi?id=739444 2014-10-31 12:52:50 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: resize the viewport correctly on a caps change with force-aspect-ratio=true, if the width or height changed, the viewport wasn't being updated to respect the new video width and height until a resize occured. 2014-10-31 12:52:07 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: advertise support for changing input caps mid-stream https://bugzilla.gnome.org/show_bug.cgi?id=739334 2014-10-31 12:30:53 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.c: gl: sprinkle some Since markers 2014-10-30 14:27:38 +0000 Luis de Bethencourt * gst-libs/gst/mpegts/gst-atsc-section.c: mpegts: remove storage of never used values Both _parse_atsc_mgt() and _parse_atsc_vct () change the value of the variable data just before returning. The new value is never used since data is a pointer declared at the beginning of the function and going out of scope just after the new value is stored. https://bugzilla.gnome.org/show_bug.cgi?id=739404 2014-10-30 17:06:01 +0000 Luis de Bethencourt * gst/gaudieffects/gstsolarize.c: gaudieffects: remove < 0 comparison on guint32 Current CLAMP checks both if the value is below 0 or above 255. Considering it is an unsigned value it can never be less than zero, so that comparison is unnecessary. Switching to using if just for the upper bound. CID #1139796 2014-10-30 16:05:14 +0000 Luis de Bethencourt * gst/gaudieffects/gstsolarize.c: gaudieffects: declare floor and ceiling as constants 2014-10-30 15:49:01 +0000 Luis de Bethencourt * gst/gaudieffects/gstdilate.c: gaudieffects: stored value is overwritten Value from left_luminance is assigned to out_luminance here, but that stored value is not used before it is overwritten in the next cycle of the loop. Removing assignation. CID #1226473 2014-10-24 16:52:42 +0200 Matthieu Bouron * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: do not remove programs on EOS As a consequence, tsdemux won't remove its pads anymore on EOS. Fixes the case when mpegtsbase is not able to process new packets after EOS as the corresponding pids aren't known anymore because the programs were removed and the pes/psi were kept, preventing the PAT to be parsed again. https://bugzilla.gnome.org/show_bug.cgi?id=738695 2014-04-21 11:48:22 +0100 Vincent Penquerc'h * gst/siren/common.c: siren: fix sample rate list It was using a 24000/24000/48000, but I think it meant to use 24000/32000/48000. Not 100% sure... https://en.wikipedia.org/wiki/G.722.1 has the list of supported bitrates. It's not clear whether the "flag" code maps to this, however. Coverity 206072 2014-10-30 14:49:05 +0000 Luis de Bethencourt * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: remove storage of never used values These two values are stored just before the function returns and they go out of scope. 2014-06-10 09:33:40 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: update output segment stop time to match clipped samples This will let oggmux generate a granpos on the last page that properly represents the clipped samples at the end of the stream. 2014-10-30 18:45:04 +0530 Arun Raghavan * ext/srtp/gstsrtpdec.c: srtpdec: Trivial documentation fix 2014-10-30 23:08:00 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: don't get the current caps from GstVideoInfo for the srcpad It's missing the caps features needed. 2014-10-30 18:57:59 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/sdl/sdlshare.c: gl/examples: update for other-context property removal 2014-10-30 16:48:00 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: glcontext: add more functionality to wrapped contexts Implements get_current_context() and get_proc_address() for wrapped contexts. 2014-10-30 12:43:09 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader: advertise the default vertex and fragment shaders on desktop GL 2014-05-22 13:13:14 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: recognize SVC NAL units. Identify SVC NAL units and tag them as such. This is necessary for gst_h264_parser_parse_slice_hdr() to fail gracefully, if the user did not perform the check himself. Signed-off-by: Gwenole Beauchesne 2014-10-29 14:53:15 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix number of list0 {,non-}anchor refs. Fix copy-paste error in gst_h264_sps_mvc_copy() where num_anchor_refs_l0 and num_non_anchor_refs_l0 were incorrectly initialized from list1. Signed-off-by: Gwenole Beauchesne 2014-10-29 13:51:40 +0000 Tim-Philipp Müller * win32/common/libgstcodecparsers.def: Update .def for new API 2014-10-29 13:15:51 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: sprinkle some gtk-doc Since: markers for new API 2014-10-29 12:22:14 +0100 Lubosz Sarnecki * ext/gl/gstglimagesink.c: satisfy gst-indent 2014-10-29 22:23:13 +1000 Jan Schmidt * ext/gl/gstglfiltercube.c: glfiltercube: Fix typo in property description 2014-10-29 22:23:02 +1000 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: Initialise nalu extension type to NONE Always set a default NALU extension type, and override it when we find a supported extension, to avoid having it unset/random for unsupported NALU extensions 2014-10-07 16:28:03 +1100 Jan Schmidt * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Fix frame packing SEI parsing 2014-03-25 14:08:44 +0100 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: codecparsers: h264: add support for Frame Packing Arrangement SEI message. This parses the frame_packing_arragement() payload in SEI message. This information can be used by decoders to appropriately rearrange the samples which belong to Stereoscopic and Multiview High profiles. https://bugzilla.gnome.org/show_bug.cgi?id=685215 Signed-off-by: Sreerenj Balachandran Signed-off-by: Gwenole Beauchesne 2013-03-08 18:17:16 +0200 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: codecparsers: h264: add support for Stereo Video Information SEI message. Add the necessary payload parsing support for stereo_video_info. https://bugzilla.gnome.org/show_bug.cgi?id=685215 Signed-off-by: Sreerenj Balachandran 2012-10-01 13:36:45 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: parse seq_parameter_set_mvc_extension(). https://bugzilla.gnome.org/show_bug.cgi?id=685215 Signed-off-by: Gwenole Beauchesne 2012-09-26 18:46:36 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: parse MVC syntax elements. https://bugzilla.gnome.org/show_bug.cgi?id=685215 Signed-off-by: Gwenole Beauchesne 2014-10-29 22:58:37 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: tsparse: Handle backward and discont timestamps better. Assume that small backward PCR jumps are just from upstream packet mis-ordering and don't reset timestamp tracking state - assuming that things will be OK again shortly. Make the threshold for detecting discont between sequential buffers configurable and match the smoothing-latency setting on tsparse to better cope with data bursts. 2014-10-29 22:58:37 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: tsparse: Implement timestamp/retimestamping of output buffers When the set-timestamps property is set, use PCRs on the provided (or autodetected) pcr-pid to apply (or replace) timestamps on the output buffers, using piece-wise linear interpolation. This allows tsparse to be used to stream an arbitrary mpeg-ts file, or to smooth jittery reception timestamps from a network stream. The reported latency is increased to match the smoothing latency if necessary. 2014-10-29 10:09:35 +0100 Vincent Abriou * configure.ac: configure.ac: auto decision to include GL library fails The part of the configure.ac that consist to check if we can include both GL and GLES2 at the same time is failing. Indeed, in the case NEED_GLES2=yes and NEED_OPENGL=auto, HAVE_OPENGL variable is updated whereas it should be HAVE_GL variable that has to be updated (HAVE_OPENGL variable is not used in the rest of the configure.ac). https://bugzilla.gnome.org/show_bug.cgi?id=739348 Signed-off-by: Vincent Abriou Reviewed-by: Benjamin GAIGNARD 2014-10-29 10:37:38 +0000 Luis de Bethencourt * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: remove ignored increment of return 'return val++;' returns the value before it is incremented because the post increment happens after the statement. Removing the unused increment. https://bugzilla.gnome.org/show_bug.cgi?id=739345 2014-10-29 08:27:57 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstglmixer.c: glmixer:fix incorrect parameter passed to handle_set_context 2014-10-28 21:42:31 +0000 Tim-Philipp Müller * ext/webp/gstwebpdec.h: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/gstwrappercamerabinsrc.h: * sys/uvch264/gstuvch264_src.h: Add some missing G_END_DECLS 2014-10-28 17:44:47 +0000 Tim-Philipp Müller * ext/faad/gstfaad.c: faad: fix wrong unrefs in set_format error code path 2014-10-28 18:27:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: get the config from the correct pool 2014-10-28 18:01:27 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: avoid uninitialized variable size when chaining multiple glfilters https://bugzilla.gnome.org/show_bug.cgi?id=739277 2014-10-28 18:01:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: gst-indent file 2014-10-28 17:31:37 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * tests/check/libs/gstglcontext.c: glcontext: add api for retreiving the current context and api that is current in the calling thread. 2014-10-21 19:03:08 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/vao.h: glprototypes: add vertex attribute array definitions 2014-10-27 17:57:46 +0100 Sebastian Dröge * common: Automatic update of common submodule From 84d06cd to 7bb2bce 2014-10-27 15:34:58 +0100 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintervideosrc.c: inter: Use 64-bit safe scaling functions 2014-10-27 12:43:53 +0000 Tim-Philipp Müller * sys/dvb/gstdvbsrc.c: dvbsrc: reflow switch case statement a bit Make it clear there's no 'break' missing at the end of the case SYS_DVBT, and pacify coverity (CID 1249689). 2014-06-12 16:59:46 +0200 L. Sorin * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurlsshsink.h: curlsshsink: use the locally defined types Just a matter of coding style, makes the code a bit tidier... https://bugzilla.gnome.org/show_bug.cgi?id=731581 2014-10-26 15:45:20 +0000 Tim-Philipp Müller * Makefile.am: Parallelise 'make check-valgrind' 2014-10-26 15:44:05 +0000 Tim-Philipp Müller * configure.ac: configure: check for more openh264 API that we need 2014-10-25 18:50:42 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/audiomixer.c: tests: fix audiomixer test on big endian systems 2014-10-24 21:42:58 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: correctly capitalize DiSEqC 2014-10-24 20:12:23 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: rework _output_frontend_stats() Retry stat reporting ioctls on EINTR 2014-10-24 19:30:25 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add checks on allowed DVB-T bandwidths 2014-10-24 19:12:33 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add fixme note on DTV_LNA setting Rephrase another comment while at it 2014-10-24 18:57:40 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add missing logic for additional bandwidths New 1.712, 5 and 10 MHz bandwidths were been ignored at set/get prop. 2014-10-24 15:53:59 +0200 Edward Hervey * configure.ac: configure.ac: Use libsrtp.pc if present 2014-10-23 17:42:27 +0300 Vootele Vesterblom * gst/rawparse/gstrawparse.c: rawparse: fix handling of segment event in sink event handler 2014-10-24 00:35:22 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: override the caps query in order to 'convert' capsfeatures Otherwise, it is only possible for the sink pads and the src pads to have the exact same caps features. We can convert from any feature to another feature so support that. 2014-10-23 23:55:48 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: override the accept caps query in order to 'convert' capsfeatures Otherwise, it is only possible for the sink pads and the src pads to have the exact same caps features. We can convert from any feature to another feature so support that. 2014-08-14 23:29:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: gl: propogate other-context using GstContext 2014-10-20 03:07:08 -0600 Brendan Long * ext/dash/README: dash: Remove obsolete README. https://bugzilla.gnome.org/show_bug.cgi?id=738848 2014-10-22 19:34:17 +0200 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: interaudio: Add support for arbitrary raw audio formats 2014-10-22 19:31:31 +0200 Sebastian Dröge * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: intervideo: Add support for arbitrary video formats 2014-10-22 19:28:48 +0200 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintervideosrc.c: inter: Truncate the caps as part of the fixating 2014-10-22 19:08:39 +0200 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: interaudio: Fix timestamp, latency and period handling 2014-10-22 18:41:55 +0200 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: interaudio: Use GST_DEBUG_OBJECT() instead of GST_DEBUG() 2014-10-22 18:40:01 +0200 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosink.h: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstinteraudiosrc.h: * gst/inter/gstintersurface.h: interaudio: Properly pass through caps from the sink to the source Otherwise a magic capsfilter after the source is required with exactly the same caps as the input. 2014-10-22 18:13:36 +0200 Sebastian Dröge * gst/inter/gstintersurface.c: * gst/inter/gstintersurface.h: inter: Clean up surfaces after the last user is gone 2014-10-22 18:07:00 +0200 Sebastian Dröge * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintersurface.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: inter: Whitespace cleanup 2014-10-22 18:03:13 +0200 Sebastian Dröge * gst/inter/gstintersurface.h: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosink.h: * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: intervideo: Properly pass through caps from the sink to the source Otherwise a magic capsfilter after the source is required with exactly the same caps as the input. This would've failed before with invalid buffer sizes: gst-launch-1.0 videotestsrc ! intervideosink intervideosrc ! "video/x-raw,width=640,height=480" ! xvimagesink 2014-10-22 15:07:04 +0200 Sebastian Dröge * gst/rawparse/gstrawparse.c: rawparse: Check for 0-size after adjusting the size for the frame size If we don't have a complete raw audio frame we would otherwise still ask for a 0 sized buffer from the adapter. 2014-10-22 14:43:50 +0200 Sebastian Dröge * gst/rawparse/gstrawparse.c: rawparse: Don't try to retrieve 0 byte buffers from the adapter in multi-frame mode 2014-10-22 13:03:30 +0100 Tim-Philipp Müller * configure.ac: configure: improve openh264 check The openh264 API is still unstable, so check for structure member that we need to prevent building against an older incompatible version. 2014-10-22 12:36:36 +0100 Tim-Philipp Müller * configure.ac: configure: simplify openh264 check Of course PTHREADS_CFLAGS is not used anywhere now for the check, but that was the case before as well. 2014-10-21 16:21:08 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Fix compiler warning gstglwindow_cocoa.m: In function '-[GstGLNSView drawRect:]': gstglwindow_cocoa.m:555: warning: 'GstGLNSView' may not respond to '-reshape' gstglwindow_cocoa.m:555: warning: (Messages without a matching method signature gstglwindow_cocoa.m:555: warning: will be assumed to return 'id' and accept gstglwindow_cocoa.m:555: warning: '...' as arguments.) 2014-10-21 15:42:32 +0200 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Fix locking The object lock only protects the session, as we modify the session from other threads when the bitrate property is changed. Don't hold it much longer than for session related things. And we need to release the video decoder stream lock before enqueueing a frames. It might wait for our callback to dequeue a frame from another thread, which will then take the stream lock too and deadlock. 2014-10-21 13:01:45 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From a8c8939 to 84d06cd 2014-10-21 13:28:50 +0200 Stefan Sauer * configure.ac: configure: use a macro to check for pthread Replace the hardcoded -lpthread in most of the places with $PTHREAD_LIBS. For openh264 also add $PTHREAD_LIBS to OPENH264_LIBS until upstream ships a .pc file. 2014-10-21 12:58:39 +0200 Stefan Sauer * README: * common: Automatic update of common submodule From 36388a1 to a8c8939 2014-10-21 12:39:14 +0200 Matthieu Bouron * ext/hls/gsthlsdemux.c: hlsdemux: reset end_of_playlist attribute when we receive a seek https://bugzilla.gnome.org/show_bug.cgi?id=738696 2014-10-20 18:25:08 +0530 Vineeth T M * gst-libs/gst/base/gstaggregator.c: * gst/audiomixer/gstaudiomixer.c: audiomixer: critical error for blocksize, timeout min/max values Audiomixer blocksize, cant be 0, hence adjusting the minimum value to 1 timeout value of aggregator is defined with MAX of MAXINT64, but it cannot cross G_MAXLONG * GST_SECOND - 1 Hence changed the max value of the same https://bugzilla.gnome.org/show_bug.cgi?id=738845 2014-10-21 06:04:10 +1100 Matthew Waters * ext/gl/gstglmixer.c: glmixer: fixup eglimage include path 2014-10-21 02:52:05 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fixate the parts of the caps we don't know how to deal with fixes glvideomixer with video/x-raw,width=foo i.e. no format field. 2014-10-18 10:03:43 +0200 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: glbufferpool: add the GstVideoGLTextureUploadMeta buffer pool option 2014-10-20 10:34:27 +1100 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglvideomixer.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst/compositor/compositor.c: videoaggregator: operate on caps rather than video info Otherwise the CapsFeatures will be lost along with the possibility of multiple output types and formats. https://bugzilla.gnome.org/show_bug.cgi?id=738129 2014-09-19 11:37:56 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: introduce a helper to make sequence-layer It will be useful to implement stream-format conversion. https://bugzilla.gnome.org/show_bug.cgi?id=738526 2014-10-20 02:27:15 -0600 Brendan Long * configure.ac: gl: Check for GLU before trying to use it in configure.ac https://bugzilla.gnome.org/show_bug.cgi?id=738816 2014-10-20 15:02:28 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglmemory.c: glcolorconvert: support RGB16/BGR16 video format upload https://bugzilla.gnome.org/show_bug.cgi?id=738842 2014-10-09 15:12:01 +0200 Aurélien Zanelli * tests/check/libs/vc1parser.c: vc1parser: fix expected level in sequence-layer parsing unit test Sequence-layer used for unit test have a level set to 2 which should match the medium level, not the high. https://bugzilla.gnome.org/show_bug.cgi?id=738230 2014-10-09 15:05:55 +0200 Aurélien Zanelli * gst-libs/gst/codecparsers/gstvc1parser.h: vc1parser: fix level values for simple/main profile In simple profile, level set to 0 or 2 indicate low and medium level respectively. In main profile, level set to 0, 2 or 4 indicate low, medium and high level respectively. Level values are defined in Annex J.1.2 of the SMPTE 421M. https://bugzilla.gnome.org/show_bug.cgi?id=738230 2014-08-02 11:29:37 +0100 Tim-Philipp Müller * gst/mpegtsdemux/tsdemux.c: tsdemux: send initial GAP event on sparse streams for faster startup with playbin Signal sparse streams properly in stream-start event and force sending of pending sticky events which have been stored on the pad already and which otherwise would only be sent on the first buffer or serialized event (which means very late in case of subtitle streams). Playsink in playbin waits for stream-start or another serialized event, and if we don't do this it will wait for the multiqueue to run full before starting playback, which might take a couple of seconds. https://bugzilla.gnome.org/show_bug.cgi?id=734040 2014-10-20 12:30:50 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: GAP detection All pads of a stream are now added at the beginning. In order to cope with streams that don't get any data (forever or for a long time) we detect gaps and push out GAP events when needed. Cleanups and commenting by Jan Schmidt https://bugzilla.gnome.org/show_bug.cgi?id=734040 2014-10-01 16:17:46 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvc1parse.h: vc1parse: select caps according to wmv format at negotiation Some VC1 decoder can have different caps according to wmv format, ie WMV3 or WVC1. So instead of keeping the first available caps, we interserct with current WMV format. https://bugzilla.gnome.org/show_bug.cgi?id=738532 2014-10-20 11:22:54 +0200 Stefan Sauer * configure.ac: configure: add pthread to the configure check for openh264 2014-10-20 09:47:27 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsink.c: rtmpsink: Declare sink variable that was forgotten in last commit 2014-10-19 20:35:41 +0200 Havard Graff * ext/rtmp/gstrtmpsink.c: rtmpsink: Free URI string in finalize() https://bugzilla.gnome.org/show_bug.cgi?id=738674 2014-10-17 21:26:52 -0700 Brion Vibber * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Fix for building on Mac OS X 10.10 Using NSApp directly seems to confuse something, as the compiler was expecting an id. Switched to using [NSApplication sharedApplication], and specified the delegate protocol on the window class as well. https://bugzilla.gnome.org/show_bug.cgi?id=738740 2014-10-19 14:57:43 +0200 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Use kVTProfileLevel_H264_Baseline_AutoLevel only on iOS It is not required on OSX apparently and was only added in 10.9.6 there. Calculating the correct level from the configuration is not trivial, so let's just not set a level at all here. 2014-10-19 14:51:40 +0200 Sebastian Dröge * configure.ac: * sys/applemedia/vtenc.c: vtenc: VTCompressionSessionPrepareToEncodeFrames only exists since 10.9.6 Check with configure for it instead of using one of the availability macros as those wouldn't work as expected with minor versions. 2014-10-19 14:32:31 +0200 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Remove unused #define 2014-10-19 13:44:38 +0200 Sebastian Dröge * gst/rtp/Makefile.am: rtpbad: Fix make dist by removing non-existing file from EXTRA_DIST It's used by the rtp plugin in gst-plugins-good for VP8 but not needed or used here. 2014-10-17 16:51:27 +0200 Thijs Vermeir * gst/rtp/Makefile.am: rtpbad: include plugins base cflags (fix build on jenkins) 2014-10-16 10:34:01 +0200 Thijs Vermeir * configure.ac: * gst/rtp/Makefile.am: * gst/rtp/gstrtp.c: * gst/rtp/gstrtph265depay.c: * gst/rtp/gstrtph265depay.h: * gst/rtp/gstrtph265pay.c: * gst/rtp/gstrtph265pay.h: rtp: add h265 RTP payloader + depayloader 2014-10-15 15:25:55 +0200 Stefan Sauer * ext/curl/gstcurlbasesink.c: curlbasesink: strip newlines from curl debug messages The messages we receive in the custom log handler might end with a newline and are not \0 terminated. Copy the messages, trim and terminate them. 2014-10-15 15:24:12 +0200 Stefan Sauer * ext/curl/gstcurlbasesink.c: curlbasesink: small code cleanup Use a local var and save a local var. 2014-10-15 16:52:09 +0200 Thijs Vermeir * tests/check/Makefile.am: * tests/check/elements/x265enc.c: tests/x265enc: add simple unit test 2014-03-05 16:39:30 +0100 Thijs Vermeir * configure.ac: * ext/Makefile.am: * ext/x265/Makefile.am: * ext/x265/gstx265enc.c: * ext/x265/gstx265enc.h: x265enc: add x265 encoder element 2014-10-14 14:00:11 +0200 Matthew Waters * ext/gl/gstgldeinterlace.c: gldeinterlace: ref the uploaded buffer Instead of the possibly non-GL input buffer. 2014-10-14 16:41:51 +0200 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: glfilter: add uploaded_buffer field 2014-09-22 09:44:14 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: parse frame header when stream format is ASF/raw for simple/main profile When stream-format is ASF or sequence-layer-raw-frame, we basically have a raw frame so we can parse it to extract some information such the keyframe flag. The only requirement is to have a valid sequence-header. This commit parse the frame header and set the DELTA_UNIT buffer flag in case the frame is not a keyframe. https://bugzilla.gnome.org/show_bug.cgi?id=738519 2014-10-14 10:51:22 +0200 Sebastian Dröge * ext/libde265/libde265-dec.c: libde265: Change rank to SECONDARY, gst-libav has PRIMARY rank 2014-09-17 10:38:44 +0200 Joachim Bauch * configure.ac: * ext/Makefile.am: * ext/libde265/Makefile.am: * ext/libde265/gstlibde265.c: * ext/libde265/libde265-dec.c: * ext/libde265/libde265-dec.h: * gst-plugins-bad.spec.in: Integrate libde265 into gst-plugins-bad. 2014-10-13 14:05:24 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: just assume none header-format when no codec_data is present https://bugzilla.gnome.org/show_bug.cgi?id=738449 2014-10-14 09:19:59 +0200 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Set reorder length to 0 if we can't calculate it Instead of leaving it at whatever value it had before. 2014-10-13 13:28:57 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Only finalize the other context in finalize() Otherwise we change a value of a property when going to READY state, which is unexpected behaviour. 2014-10-13 13:27:55 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Call the pad's parent class finalize method 2014-10-13 13:27:11 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: glmixer: Only finalize the other context in finalize() Otherwise we change a value of a property when going to READY state, which is unexpected behaviour. 2014-10-13 13:25:42 +0200 Sebastian Dröge * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: Add other-context property 2014-10-13 11:56:03 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Don't leak other-context 2014-10-13 11:53:47 +0200 Sebastian Dröge * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: glmixer: Add other-context property 2014-10-12 21:25:16 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvb: make interleaving a prop and proxy on dvbbasebin DTV_INTERLEAVING is currently used only for DTBM. This is congruent with the v4l dvb API where the different interleaving modes where added for v5.7 2014-10-12 18:30:38 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add transmission mode checks for DVB-T/T2 These and every sanity check leading to a warning (we have a few in place) should come handy when debuging failed tunning scenarios. 2014-10-12 13:34:09 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: docs, drop v5 API change history comments < .5 We only support from minor 5 and up now. Also add a note about the recently added preliminar DTMB support. 2014-10-12 13:08:13 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add missing DVB-T2 bandwidth types DVB-T2 supports 5, 10 and 1.712 MHz Order of the enum values (new values after _AUTO) has been kept congruent with the one in the v4l API for consistency 2014-10-07 10:37:33 +0200 Benjamin Gaignard * ext/wayland/gstwaylandsink.c: waylandsink: do not render twice the same buffer Do not try to render a buffer that is already being rendered. This happens typically during the initial rendering stage as the first buffer is rendered twice: first by preroll(), then by render(). This commit avoids this assertion failure: CRITICAL: gst_wayland_compositor_acquire_buffer: assertion 'meta->used_by_compositor == FALSE' failed https://bugzilla.gnome.org/show_bug.cgi?id=738069 Signed-off-by: Fabien Dessenne Signed-off-by: Benjamin Gaignard 2014-07-24 16:53:53 +0200 Tifaine Inguere * ext/wayland/wlwindow.c: waylandsink : Allow surface to catch input events If waylandsink is the owner of the display then it is in charge of catching input events on the surface. https://bugzilla.gnome.org/show_bug.cgi?id=733682 Signed-off-by: Tifaine Inguere Reviewed-by: Benjamin Gaignard 2014-07-02 13:29:55 +0300 George Kiagiadakis * ext/wayland/wlbuffer.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: take into account the case where a pool may be destroyed together with GstWlDisplay There are two cases covered here: 1) The GstWlDisplay forces the release of the last buffer and the pool gets destroyed in this context, which means it unregisters all the other buffers from the GstWlDisplay as well and the display->buffers hash table gets corrupted because it is iterating. 2) The pool and its buffers get destroyed concurrently from another thread while GstWlDisplay is finalizing and many things get corrupted. 2014-07-01 11:43:20 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wlbuffer.c: * ext/wayland/wlbuffer.h: * ext/wayland/wlvideoformat.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: stack the video subsurface into another subsurface that covers the whole render rectangle The main reason behind this is that when the video caps change and the video subsurface needs to resize and change position, the wl_subsurface.set_position call needs a commit in its parent in order to take effect. Previously, the parent was the application's surface, over which there is no control. Now, the parent is inside the sink, so we can commit it and change size smoothly. As a side effect, this also allows the sink to draw its black borders on its own, without the need for the application to do that. And another side effect is that this can now allow resizing the sink when it is in top-level mode and have it respect the aspect ratio. 2014-06-20 16:24:36 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wlshmallocator.c: * ext/wayland/wlvideoformat.c: * ext/wayland/wlvideoformat.h: waylandsink: rename video format conversion functions to indicate they are about wl_shm Needed to add linux_dmabuf format conversion functions later 2014-06-23 17:27:01 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wlbuffer.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: remove the ugly gst_wl_display_stop() now that this mechanism is not needed anymore Because we no longer have a custom buffer pool that holds a reference to the display, there is no way for a cyclic reference to happen like before, so we no longer need to explicitly call a function from the display to release the wl_buffers. However, the general mechanism of registering buffers to the display and forcibly releasing them when the display is destroyed is still needed to avoid potential memory leaks. The comment in wlbuffer.c is updated to reflect the current situation. 2014-06-23 16:40:02 +0300 George Kiagiadakis * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: * ext/wayland/wlshmallocator.c: * ext/wayland/wlshmallocator.h: waylandsink: replace the custom buffer pool with an allocator This reduces the complexity of having a custom buffer pool, as we don't really need it. We only need the custom allocation part. And since the wl_buffer is no longer saved in a GstMeta, we can create it and add it on the buffers in the sink's render() function, which removes the reference cycle caused by the pool holding a reference to the display and also allows more generic scenarios (the allocator being used in another pool, or buffers being allocated without a pool [if anything stupid does that]). This commit also simplifies the propose_allocation() function, which doesn't really need to do all these complicated checks, since there is always a correct buffer pool available, created in set_caps(). The other side effect of this commit is that a new wl_shm_pool is now created for every GstMemory, which means that we use as much shm memory as we actually need and no more. Previously, the created wl_shm_pool would allocate space for 15 buffers, no matter if they were being used or not. 2014-06-20 14:47:57 +0300 George Kiagiadakis * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: * ext/wayland/wlbuffer.c: * ext/wayland/wlbuffer.h: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: rework the mechanism for keeping buffers out of the pool until wl_buffer::release This also removes the GstWlMeta and adds a wrapper class for wl_buffer which is saved in the GstBuffer qdata instead of being a GstMeta. The motivation behind this is mainly to allow attaching wl_buffers on GstBuffers that have not been allocated inside the GstWaylandBufferPool, so that if for example an upstream element is sending us a buffer from a different pool, which however does not need to be copied to a buffer from our pool because it may be a hardware buffer (hello dmabuf!), we can create a wl_buffer directly from it and first, attach it on it so that we don't have to re-create a wl_buffer every time the same GstBuffer arrives and second, force the whole mechanism for keeping the buffer out of the pool until there is a wl_buffer::release on that foreign GstBuffer. 2014-10-09 08:20:15 +0530 Vineeth T M * ext/schroedinger/gstschrodec.c: schrodec: optimize parse logic Header will be read each and everytime parse function will be called which is not necessary since until we have complete data, we need not parse the header again. https://bugzilla.gnome.org/show_bug.cgi?id=737984 2014-10-10 13:05:49 +0100 Tim-Philipp Müller * ext/fluidsynth/gstfluiddec.c: fluiddec: don't leak incoming caps event https://bugzilla.gnome.org/show_bug.cgi?id=738291 2014-10-09 18:18:02 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: fix framesize when input is frame-layer frame-layer header is represented as a sequence of 32 bit unsigned integer serialized in little-endian byte order, so framesize is on the first 3 bytes. SMPTE 421M Annex L. https://bugzilla.gnome.org/show_bug.cgi?id=738243 2014-10-07 17:05:04 +0200 Antonio Ospite * gst/midi/midiparse.c: midiparse: mention fluiddec instead of fluidsynth The element name is actually fluiddec even if it uses fluidsynth. https://bugzilla.gnome.org/show_bug.cgi?id=738223 2014-10-09 11:51:16 +0200 Antonio Ospite * ext/fluidsynth/gstfluiddec.c: fluiddec: fix some memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=738223 2014-10-09 04:11:00 -0400 David Woodhouse * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: Add support for LINKTYPE_RAW Also, strictly speaking, these numbers aren't DLT_*; they are LINKTYPE_* because libpcap translates from internal OS-specific DLT_ numbering to the portable LINKTYPE_ number space when writing files. https://bugzilla.gnome.org/show_bug.cgi?id=738206 2014-10-09 14:51:56 +0200 Aurélien Zanelli * tests/check/elements/audiomixer.c: test: use G_GSIZE_FORMAT in audiomixer test https://bugzilla.gnome.org/show_bug.cgi?id=738227 2014-10-07 16:57:27 +1100 Matthew Waters * tests/check/libs/aggregator.c: tests/aggregator: add timeout handling test for the timeout parameter 2014-10-06 21:46:24 +1100 Matthew Waters * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: * gst/audiomixer/gstaudiomixer.c: aggregator: add latency query handling 2014-10-06 18:33:52 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: support unresponsive pads Render unresponsive pads with the last video frame received. 2014-10-06 18:23:03 +1100 Matthew Waters * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: aggregator: add a timeout property determining buffer wait time Determines the amount of time that a pad will wait for a buffer before being marked unresponsive. Network sources may fail to produce buffers for an extended period of time, currently causing the pipeline to stall possibly indefinitely, waiting for these buffers to appear. Subclasses should render unresponsive pads with either silence (audio), the last (video) frame or what makes the most sense in the given context. 2014-10-06 18:10:38 +1100 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: videoaggregator: remove the use of the queued buffer on sink pads That data is now held by the aggregator class 2014-10-09 11:46:23 +0300 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: expose parsed profile, tier and level to downstream https://bugzilla.gnome.org/show_bug.cgi?id=732239 2014-10-09 01:18:16 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: expose parsed profile and level to downstream Set parsed profile and level in src caps. https://bugzilla.gnome.org/show_bug.cgi?id=732239 2014-10-09 10:54:35 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Add support for HiDPI displays Without this our GL surface would be upscaled after rendering by Cocoa, which would reduce image quality. 2014-10-09 12:28:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: output why we cannot convert a buffer 2014-10-09 12:25:55 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix planar YUV download - sample the u and v planes properly - output the correctly scaled u and v planes for different chroma block sizes 2014-10-08 21:51:12 +0300 Vivia Nikolaidou * ext/gl/gstgloverlay.c: gloverlay: And fix another unused variable compiler warning 2014-10-08 21:49:25 +0300 Vivia Nikolaidou * ext/gl/gstgloverlay.c: gloverlay: Fix unused variable compiler warning when compiling without desktop GL 2014-09-26 13:55:20 +0530 Anuj Jaiswal * ext/zbar/gstzbar.c: zbar: Add YVU9 and YUV9 to ZBAR_YUV_CAPS https://bugzilla.gnome.org/show_bug.cgi?id=737407 2014-09-28 10:51:09 +0800 Wang Xin-yu (王昕宇) * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: gltestsrc: implement checkers pattern with GLSL https://bugzilla.gnome.org/show_bug.cgi?id=737505 2014-10-07 15:24:10 +0300 Sebastian Dröge * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: Fix M3U8 parsing unit test after API changes 2014-10-02 10:37:57 -0600 Thomas Bluemel * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Fix accessing invalidated memory In gst_hls_demux_get_next_fragment() the next fragment URI gets stored in next_fragment_uri, but the gst_hls_demux_updates_loop() can at any time update the playlist, rendering this string invalid. Therefore, any data (like key, iv, URIs) that is taken from a GstM3U8Client needs to be copied. In addition, accessing the internals of a GstM3U8Client requires locking. https://bugzilla.gnome.org/show_bug.cgi?id=737793 2014-10-07 12:12:04 +0200 Felix Schwarz * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/mpegts.h: mpegts: fix typos in comments https://bugzilla.gnome.org/show_bug.cgi?id=738072 2014-10-07 23:04:30 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix UYVY download green screen 2014-10-07 22:50:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolrconvert: fix YUY2 download - The shader was outputing the wrong values compared with raw videotestsrc. - deal with the texture edge properly. - properly sample the 2x1 rectangle for the u and v values - don't double sample the y value 2014-10-06 21:25:30 +0300 Vivia Nikolaidou * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: Set CURLOPT_UPLOAD to 1 to not use VRFY and other unneeded commands Fixes the sink with SMTP servers that disable VRFY for spam protection. http://sourceforge.net/p/curl/bugs/1389/ 2014-09-17 16:48:02 +0200 Jan Alexander Steffens (heftig) * gst-libs/gst/base/gstaggregator.c: aggregator: Replace GMainContext with GAsyncQueue (v2) The previous implementation kept accumulating GSources, slowing down the iteration and leaking memory. Instead of trying to fix the main context flushing, replace it with a GAsyncQueue which is simple to flush and has less overhead. https://bugzilla.gnome.org/show_bug.cgi?id=736782 2014-10-06 13:09:00 +0200 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: audiomixer: Handle seek event in READY state 2014-07-21 11:07:19 +0200 Thibault Saunier * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: audiomixer: Set the sinkpad segments basetime after seeking Otherwise stream offset and running time comparison will not be correct, leading to segfaults after seeks 2014-05-28 16:29:37 +0200 Thibault Saunier * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * tests/check/elements/audiomixer.c: audiomixer: Port to GstAggregator https://bugzilla.gnome.org/show_bug.cgi?id=737183 Co-Authored by: Mathieu Duponchelle 2014-09-23 15:59:10 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do not wrongly set the aggregator.segment The aggregator.segment is not to be initialized by the subclasses but by the aggregator itself. Moreover, initializing it on start would make us loose the information coming from the initial seek. 2014-07-30 11:57:46 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Make sure not to unref a NULL pointer 2014-08-05 15:36:30 +0200 Mathieu Duponchelle * gst-libs/gst/base/gstaggregator.c: aggregator: Set seqnum only when segments are received. 2014-08-02 18:25:01 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Add a streaming lock so to secure flush start action Without a lock that is taken in FLUSH_START we had a rare race where we end up aggregating a buffer that was before the whole FLUSH_START/STOP dance. That could lead to very wrong behaviour in subclasses. 2014-07-18 13:58:55 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Query seeking when a seek failed to see if it was expected And do not worry if seeking failed on a stream that is not seekable 2014-07-18 01:41:26 +0200 Mathieu Duponchelle * gst-libs/gst/base/gstaggregator.c: aggregator: set future seqnum before propagating the seek event. So the seqnum is properly set for the following events. 2014-07-08 16:16:55 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Store segment when seeked in READY for later use 2014-10-06 16:44:51 +0300 Sebastian Dröge * ext/openh264/gstopenh264plugin.c: openh264: Use a MARGINAL rank for the encoder and decoder They work but for now we prefer others until these are extensively tested. 2014-10-01 10:57:26 +0200 Lihua Liu * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: Email with multipart content-type should end with a final boundary Add final boundary for each of the sending out emails from smtpsink. https://bugzilla.gnome.org/show_bug.cgi?id=736134 2014-10-06 11:44:12 +0100 Vineeth T M * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstvc1parse.h: videoparser: comment unused GST_BASE_PARSE_FRAME_FLAG_PARSING GST_BASE_PARSE_FRAME_FLAG_PARSING value is wrong, and the same flag is not being used presently. Hence changing the value and commenting it out. This needs to be included in baseparse.h later on https://bugzilla.gnome.org/show_bug.cgi?id=737411 2014-10-04 20:55:08 +0200 Nicola Murino * ext/openh264/gstopenh264enc.cpp: openh264enc: make denoise work https://bugzilla.gnome.org/show_bug.cgi?id=737894 2014-10-06 10:11:47 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Unmap and free GstVideoFrames as needed after conversion and errors 2014-10-06 10:11:23 +0300 Sebastian Dröge * gst-libs/gst/base/gstaggregator.c: aggregator: Unref the taglist in GstAggregator::stop() 2014-10-03 20:42:58 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add preliminary support for DTMB Previously known as DMB-T/H, this is the terrestial DTV broadcast standard currently used by the People's Republic of China, Hong Kong, Laos and Macau (officially), and by Malaysia, Iraq, Jordan, Syria and Lebanon (experimentally). 2014-10-03 20:20:30 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add missing standard transmission modes These apply to ISDB-T, DVB-T2 and DTMB Order of the enum values (new rates after _AUTO) has been kept congruent with the one in the v4l API for consistency. 2014-10-03 20:03:27 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add missing DTMB guard intervals 2014-10-03 19:55:02 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add missing DVB-T2 guard intervals According to the v4l-dvb API docs, these are only used for DVB-T2 at the moment. Order of the enum values (new rates after _AUTO) has been kept congruent with the one in the v4l API for consistency. 2014-10-03 19:20:03 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: fix typo in GstMpegtsExtendedEventDescriptor doc 2014-10-03 19:06:21 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add _MUTABLE_PLAYING to tuning props The element can (re)tune while playing so basically every property used at set_fe_params() can be set in state <= PLAYING. 2014-10-03 17:22:23 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: The codec can only do baseline so simplify the code a bit and declare this also on the srcpad caps. With baseline profile there are no B-frames or frame reordering. 2014-10-03 17:20:28 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: On ::finish() stop trying if the decoder returned that no output is available 2014-10-03 13:54:22 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264plugin.c: openh264: Run gst-indent over everything 2014-10-03 13:52:32 +0300 Sebastian Dröge * ext/openh264/Makefile.am: openh264: Remove unused codecparsers lib 2014-10-02 16:46:25 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264enc.cpp: openh264: Add FIXME comment about missing API in openh264 2014-10-02 16:33:30 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Try to handle frame reordering As openh264 has no way to attach any IDs to input frames that we then get on the output frames, we have to assume that the input has valid PTS. We just take the frame with the oldest PTS, and if there is no PTS information we take the one with the oldest DTS. 2014-10-02 16:23:37 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Don't drop videocodec frames if we can't decode them *yet* Fixes jittery playback of streams with B frames. 2014-10-02 16:21:37 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: GstVideoDecoder works on frames, not sub-frames (e.g. NALs) And we can just pass complete AUs to the decoder without problems. 2014-10-02 16:19:46 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: As we require NAL alignment from upstream we don't need to parse anything 2014-10-02 15:48:51 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Properly drain codec on ::finish() 2014-10-02 15:22:14 +0300 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Properly drain the encoder on ::finish() 2014-10-02 14:36:45 +0300 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: We always get a single frame as output, not a NAL No need to accumulate NALs. 2014-10-02 14:20:21 +0300 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Fix up caps and stride handling 2014-10-02 14:15:49 +0300 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Add support for GstVideoMeta This will allow upstream elements to work more efficiently. 2014-10-02 14:12:11 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Add support for GstVideoMeta This will make operation with various sinks faster for free. 2014-10-02 14:08:49 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Optimize frame copying a bit 2014-10-02 14:06:58 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Don't forget to unref the input state 2014-10-02 14:03:43 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Fix various crashes on ::stop() 2014-10-02 14:00:06 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Remove invalid sprops-parameter-set handling This only exists on RTP caps, not H264 caps. 2014-10-02 13:53:01 +0300 Sebastian Dröge * ext/openh264/gstopenh264enc.cpp: openh264enc: Don't set caps manually This will break the order of events in GStreamer. 2014-10-02 13:49:14 +0300 Sebastian Dröge * ext/openh264/gstopenh264dec.cpp: openh264dec: Fix input state handling and propagation of upstream caps fields 2014-10-03 13:45:26 +0300 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/openh264/Makefile.am: * ext/openh264/gstopenh264dec.cpp: * ext/openh264/gstopenh264dec.h: * ext/openh264/gstopenh264enc.cpp: * ext/openh264/gstopenh264enc.h: * ext/openh264/gstopenh264plugin.c: openh264: Add OpenH264 based encoder/decoder elements These are the openh264 elements released under the BSD-2 license by Ericsson as part of the OpenWebRTC project. https://github.com/EricssonResearch/openwebrtc-gst-plugins https://bugzilla.gnome.org/show_bug.cgi?id=737788 2014-09-18 17:14:22 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Do not to release VIDEO_AGGREGATOR_LOCK while setting format info We should be able to always keep the VIDEO_AGGREGATOR_LOCK while negotiating caps, this patch introduce that change. That also implies that we do not need the SETCAPS_LOCK anymore because now VIDEO_AGGREGATOR_LOCK guarantees that setcaps is not called from several threads and the gst_aggregator_set_caps method is now protected. https://bugzilla.gnome.org/show_bug.cgi?id=735042 2014-10-03 12:34:15 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Take lock to ensure set_caps is not called concurently Avoiding to be in an inconsistent state where we do not have actual negotiate caps set as srccaps and leading to point where we try to unref ->srccaps when they have already been set to NULL. https://bugzilla.gnome.org/show_bug.cgi?id=735042 2014-09-29 10:15:39 +0530 Vineeth T M * gst/aiff/aiffparse.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/coloreffects/gstchromahold.c: * gst/dvdspu/gstdvdspu.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mxf/mxfdemux.c: * gst/rawparse/gstrawparse.c: * gst/sdp/gstsdpdemux.c: gst: remove unnecessary GLIB_DISABLE_DEPRECATION_WARNINGS There are unnecessary definitions for disabling deprecation warnings. Since GLIB_DISABLE_DEPRECATION_WARNINGS is not needed anymore in these files, removing the same. https://bugzilla.gnome.org/show_bug.cgi?id=737559 2014-10-01 16:19:02 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: unref caps when it is empty in renegotiate() https://bugzilla.gnome.org/show_bug.cgi?id=737724 2014-10-02 10:26:43 +0300 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Fix calculation of the frame size for COLOR_FormatYUV420Planar https://bugzilla.gnome.org/show_bug.cgi?id=734156 2014-10-01 17:22:59 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Also copy over the chroma siting and colorimetry when deciding on a conversion 2014-10-01 17:18:05 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Revert the last commit and handle resolutions differences properly This is about converting the format, not about converting any widths and heights. Subclasses are expected to handler different resolutions themselves, like the videomixers already do properly. 2014-10-01 17:11:16 +0300 Sebastian Dröge * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: GstVideoConverter currently can't rescale and will assert Leads to ugly assertions instead of properly erroring out: CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed 2014-10-01 16:04:36 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Always update our viewport if Cocoa tells us something has changed The visible rect and bounds might be the same as before, but Cocoa might've changed our viewport without us nothing. This happens if you hide the view and show it again. 2014-10-01 11:55:13 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Handle NSView::renewGState() properly Don't update the screen until we redraw, this prevents flickering during scrolling, clipping, resizing, etc 2014-10-01 00:53:59 +0100 Tim-Philipp Müller * ext/fluidsynth/gstfluiddec.c: fluiddec: don't crash on 0-sized input buffers https://bugzilla.gnome.org/show_bug.cgi?id=737658 2014-09-30 14:58:06 +0200 Lubosz Sarnecki * configure.ac: gltransformation: requires graphene 1.0.0 2014-09-25 17:01:31 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: gltransformation: graphene multiplication order has changed https://bugzilla.gnome.org/show_bug.cgi?id=733510 2014-09-30 20:39:36 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: update element documentation 2014-09-30 18:26:34 +1000 Matthew Waters * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/gstglcolorconvert.c: tests/glcolorconvert: do reorder checking for rgba formats 2014-09-30 14:46:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: convert xRGB into ARGB properly The alpha channel might not be the last component so check which one it is in and clobber that one instead. 2014-09-30 01:45:20 +1000 Matthew Waters * tests/check/libs/gstglmemory.c: tests/glmemory: add simple transfer test tests transferring to/from the GL with a 1x1 RGBA pixel. 2014-09-30 01:38:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: unset the opposite corresponding transfer flags when mapped with write fixes consistency with consecutive gst_memory_map()'s with flags & GST_MAP_WRITE 2014-09-29 09:33:42 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Update viewport according to the current clipping We have to update the GL viewport if the NSView is only partially visible. Otherwise the content of the frame will be visibly offset. 2014-09-29 10:01:27 +0200 Jesper Larsen * gst/mpegtsdemux/tsdemux.c: tsdemux: do not discard on discont if PES start If a discontinuity in the stream is detected, data is discarded until a new PES starts. If the first packet after the discontinuity is also the start of a PES, there is no reason to discard the packets. https://bugzilla.gnome.org/show_bug.cgi?id=737569 2014-07-31 22:57:40 +0100 David Waring * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dash: Use GstUri to join URIs 2014-09-29 10:49:46 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: Improve the NSApplication initialization This is only for non-Cocoa apps but previously caused a 2 second waiting during startup for Cocoa apps. This is unacceptable. Instead we now check a bit more extensive if something actually runs on the GLib default main context, and if not don't even bother waiting for something to happen from there. 2014-09-29 09:24:49 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: NSView::drawRect() should call into reshape too We a) need to render again because part of the window was obscured and b) might need to reshape because of clipping changes. 2014-09-26 14:21:46 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Call UI related API from the application main thread 2014-09-26 13:05:27 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Switch to a plain NSView subclass instead of NSOpenGLView We don't and can't use NSOpenGLView as it's supposed to be used and it gets into our way by being to clever in various situations. 2014-09-29 08:54:29 +0200 Edward Hervey * gst-libs/gst/gl/gstglcontext.c: glcontext: Initialize variable Avoids the following warning: gstglcontext.c:647:58: error: 'prev' may be used uninitialized in this function [-Werror=maybe-uninitialized] 2014-09-28 18:03:09 +0200 Josep Torra * gst-libs/gst/video/Makefile.am: video: fix build in gst-uninstalled setup Include the base video lib appropriately and resort all of them as thaytan suggested. 2014-09-29 00:23:57 +1000 Jan Schmidt * tests/examples/gl/qt/qglwtextureshare/README: * tests/examples/gl/qt/qglwtextureshare/gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: examples: Fix Qt/GL qglwtextureshare example for X11 We need to pass the X11 display to GstGL or else it will use its own X11 Display pointer, and the GL Context won't get shared correctly on newer X servers 2014-09-28 20:21:50 +1000 Jan Schmidt * tests/examples/gl/qt/.gitignore: * tests/examples/gl/qt/README: * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/mousevideooverlay/qrenderer.cpp: * tests/examples/gl/qt/mousevideooverlay/qrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/Debug/videooverlay: * tests/examples/gl/qt/videooverlay/videooverlay.pro: examples: port GL/Qt examples to Qt5 Update the GL Qt integration examples for Qt5 changes and for GstGL signal signature changes. 2014-09-29 00:32:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fixup error in sharegroup comment 2014-09-29 00:27:30 +1000 Matthew Waters * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: Revert accidental push: "gltestsrc: implement checkers pattern with GLSL" This reverts commit eae09179f0b4eb584c8fc7b6560d8fc8e86eed4c. 2014-09-29 00:24:28 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: detect the sharegroup case where the context are in different chains In the end they will lead to the same root context in the tree so check that for equality. 2014-09-28 10:51:09 +0800 Wang Xin-yu (王昕宇) * ext/gl/gltestsrc.c: * ext/gl/gstgltestsrc.c: gltestsrc: implement checkers pattern with GLSL 2014-09-28 21:18:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: silence a warning with empty input caps discovered with the doublecube example gst_caps_get_features: assertion 'index < GST_CAPS_LEN (caps)' failed 2014-09-28 20:37:04 +1000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: examples/gl: update for signal signature change 2014-09-28 16:58:42 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: don't create converters when the subclass doesn't want them fixes a critical with glvideomixer after 35bd1969f912cecda0fb5df9595a005e6ddf4e7a CRITICAL **: gst_video_converter_new: assertion 'in_info->width == out_info->width' failed 2014-09-26 22:29:56 +1000 Matthew Waters * ext/gl/gstgloverlay.c: gloverlay: fix zero output frames with YUY2/UYVY also, be nice and disable blending for other elements 2014-09-26 22:22:06 +1000 Matthew Waters * ext/gl/gstgloverlay.c: gloverlay: protect desktop gl specific tokens with #if 2014-09-26 12:28:10 +1000 Matthew Waters * ext/gl/gstgloverlay.c: gloverlay: free the image memory every time the location changes fixes a memory leak 2014-09-25 20:48:59 +0300 Sebastian Dröge * ext/gl/Makefile.am: gloverlay: Include into the build with GLES2 only too 2014-09-26 01:45:22 +1000 Matthew Waters * ext/gl/gstgltestsrc.c: gltestsrc: free the shader on stop 2014-09-26 01:34:54 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: fix blending with low-alpha sources We also need to apply the blend paramaters to the alpha channel otherwise the output of the blend will appear black at low alpha values (< 0.2). 2014-09-26 01:14:35 +1000 Matthew Waters * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstopengl.c: gloverlay: reimplement everything - update for shaders - add alpha property - image placement properties shamelessly borrowed from gdkpixbufoverlay - image placement properties are GstController able - use GstGLMemory for the overlay image data - add support for gles2 2014-09-25 16:04:33 +0100 Luis de Bethencourt * gst/dvdspu/gstdvdspu.c: * gst/jp2kdecimator/jp2kcodestream.c: * gst/jpegformat/gstjifmux.c: * gst/nuvdemux/gstnuvdemux.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: style: remove unnecessary break statements Code flow never arrives to these break statements due to the gotos preceding them. So the breaks are unnecessary, as discussed in bug 736942. https://bugzilla.gnome.org/show_bug.cgi?id=737370 2014-09-25 15:45:57 +0100 Luis de Bethencourt * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: break statement unnecessary Code flow never arrives to the break statements due to the goto's. So the breaks are unnecessary. https://bugzilla.gnome.org/show_bug.cgi?id=736942 2014-09-25 16:13:19 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Switch from our custom main loop to a GMainLoop Simplifies code a lot and makes it more similar to the other backends. 2014-09-25 16:12:24 +0300 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: Clear the current GL context when it should happen 2014-09-24 12:42:23 +0200 Lihua Liu * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: Email with multipart content-type should end with a final boundary Add final boundary for each of the sending out emails from smtpsink. https://bugzilla.gnome.org/show_bug.cgi?id=736134 2014-09-25 10:14:41 +0200 Stefan Sauer * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlhttpsink.c: curl*sink: add more logging 2014-09-25 08:05:50 +0200 Stefan Sauer * ext/curl/gstcurlbasesink.c: curlbasesink: add a debug function If gstreamer is build with logging enabled, add a debug function and output verbose messages to the log instead of stderr. 2014-09-24 22:24:49 +0200 Stefan Sauer * ext/curl/gstcurlhttpsink.c: curlhttpsink: only add content-disposition header if a filename is set The header is optional and therefore we better omit it if we don't have a filename. 2014-09-24 22:06:21 +0200 Stefan Sauer * ext/curl/gstcurlbasesink.c: curlbasesink: don't replace specific error messages with a generic one Only set an error if we haven't set one already. 2014-09-24 21:07:20 +0200 Stefan Sauer * ext/curl/gstcurltlssink.c: curltlssink: swap check Lets check for NULL first, as that is the default anyway. 2014-07-29 16:12:26 +0200 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Return flushing if we get chained while being set to READY Or not negotiated in the case we would be actually not negotiated Currently we are getting assertions from gst_pb_utils_add_codec_description_to_tag_list because of NULL caps. https://bugzilla.gnome.org/show_bug.cgi?id=737186 2014-09-09 13:12:31 +0200 Matthieu Bouron * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: mark first buffer as discont after restarting a download task Mark first buffer as discont after restarting a download task, so downstream can reset its state to properly handle the new fragment. Related issue: https://bugzilla.gnome.org/show_bug.cgi?id=736318 https://bugzilla.gnome.org/show_bug.cgi?id=736319 2014-09-19 22:32:39 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: push a time segment when restarting streaming This should inform demuxers/decoders downstream that the stream is about to start from a new position and they should flush accordingly https://bugzilla.gnome.org/show_bug.cgi?id=736319 2014-09-24 16:55:49 +0200 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/bad-video-orc-dist.c: * gst-libs/gst/video/bad-video-orc-dist.h: * gst-libs/gst/video/bad-video-orc.orc: * gst-libs/gst/video/gstcms.c: * gst-libs/gst/video/gstcms.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/videoconvert.c: * gst-libs/gst/video/videoconvert.h: video: use video lib conversion code instead of copy 2014-09-18 17:26:37 +0530 Anuj Jaiswal * ext/mplex/gstmplex.cc: mplex: break statement unnecessary One more code flow issue where it never arrives to the break statement due to the goto. So the break is unnecessary. Plus two coding style fixes. https://bugzilla.gnome.org/show_bug.cgi?id=736895 2014-09-24 22:42:58 +1000 Jan Schmidt * gst/debugutils/gstchopmydata.c: chopmydata: Transfer timestamps to output buffers Allows using chopmydata as a simple repacketizer 2014-09-19 09:51:48 +0530 Anuj Jaiswal * sys/androidmedia/gstamcaudiodec.c: androidmedia: break statements unnecessary Code flow never arrives to the break statements due to the goto's. So the breaks are unecessary. Second part to commit a3958ae65b https://bugzilla.gnome.org/show_bug.cgi?id=736940 2014-09-19 09:59:41 +0530 Anuj Jaiswal * sys/androidmedia/gstamcvideodec.c: androidmedia: break statement unnecessary Code flow never arrives to the break statements due to the goto's. So the breaks are unecessary. https://bugzilla.gnome.org/show_bug.cgi?id=736942 2014-09-18 16:13:58 -0400 Joshua M. Doe * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: avoid error when set_caps called twice If set_caps is called in a running state, return immediately if the caps haven't changed. If the pins are already connected, disconnect them. https://bugzilla.gnome.org/show_bug.cgi?id=736926 2014-09-24 14:29:37 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: skip input frames with an alpha of 0 2014-09-24 13:13:19 +1000 Matthew Waters * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: gl: download whenever we have sysmem capsfeatures Otherwise we could pass on a RGBA formatted buffer and downstream would misinterpret that as some other video format. Fixes pipelines of the form gleffects ! tee ! xvimagesink 2014-09-19 01:22:14 +0200 Sebastian Rasmussen * ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml.in: gsettings: Fix typo in description Fixes https://bugzilla.gnome.org/show_bug.cgi?id=736933 2014-09-23 17:32:59 +0100 Luis de Bethencourt * gst/mpegpsmux/psmuxstream.c: mpegpsmux: refactor duplicate else branches Unknown case should assert if reached instead of just assuming the max buffer size. https://bugzilla.gnome.org/show_bug.cgi?id=736460 2014-09-19 09:54:11 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: initialize sent_codec_tag before using it https://bugzilla.gnome.org/show_bug.cgi?id=736951 2014-09-22 17:14:29 +0530 Sanjay NM * gst/videofilters/gstzebrastripe.c: videofilters: Add support for more YUV formats https://bugzilla.gnome.org/show_bug.cgi?id=737111 2014-08-21 02:14:40 +0200 Lubosz Sarnecki * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: add Mandelbrot fractal pattern. https://bugzilla.gnome.org/show_bug.cgi?id=735131 2014-08-21 02:13:58 +0200 Lubosz Sarnecki * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: gltestsrc: implement snow pattern with GLSL. https://bugzilla.gnome.org/show_bug.cgi?id=735131 2014-09-23 12:02:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: fallback to upload if contexts cannot share GL resources Fixes pipelines of the form gleffects ! tee ! glimagesink as tee does not pass on the allocation query. 2014-09-23 12:01:04 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add gst_gl_context_can_share Which determines whether two GstGLContext's can share sharable OpenGL resources. 2014-09-22 20:01:27 +1000 Matthew Waters * tests/check/libs/gstglupload.c: gl/tests: update for upload API changes 2014-09-22 10:08:17 +0300 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: gl: Let gst_gl_context_get_thread() return a new reference to the GThread Otherwise it might go away in the meantime and the caller has some random pointer. 2014-09-22 11:10:42 +0530 Anuj Jaiswal * gst-libs/gst/gl/gstglfilter.c: gl: consecutive return, break statement Signed-off-by: Anuj Jaiswal https://bugzilla.gnome.org/show_bug.cgi?id=736939 2014-09-22 12:21:22 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/debug.h: gl/debug: desktop GL does not have the KHR suffixes 2014-09-22 11:59:30 +1000 Matthew Waters * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: examples/gl/gtk: use the sync bus callback to set the window handle And output error messages. 2014-09-19 18:59:01 -0300 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add missing FEC rates Order of the enum values (new rates after _AUTO) has been kept congruent with the one in the v4l API for consistency. 2014-09-21 13:32:29 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcontext.c: gl: add since markers for new API 2014-09-21 21:42:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: add debug line for freeing textures 2014-09-21 21:36:49 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: glupload: provide the output buffer that is rendered into Allows callers to properly reference count the buffers used for rendering. Fixes a redraw race in glimagesink where the previous buffer (the one used for redraw operations) is freed as soon as the next buffer is uploaded. 1. glimagesink uploads in _prepare() to texture n 1.1 glupload holds buffer n 2. glimagesink _render()s texture n 3. glimagesink uploads texture n+1 3.1 glupload free previous buffer which deletes texture n 3.2 glupload holds buffer n+1 4. glwindow resize/expose 5. glimagesink redraws with texture n The race is that the buffer n (the one used for redrawing) is freed as soon as the buffer n+1 arrives. There could be any amount of time and number of redraws between this event and when buffer n+1 is actually rendered and thus replaces buffer n as the redraw source. https://bugzilla.gnome.org/show_bug.cgi?id=736740 2014-09-21 21:30:58 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add API to retreive the thread that context is active in 2014-09-19 15:32:33 +0530 Sanjay NM * ext/gl/gstglimagesink.c: * ext/gl/gstglmixer.c: gl: Removed unreachable break, unused variable https://bugzilla.gnome.org/show_bug.cgi?id=736957 2014-09-19 14:36:39 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Fix encoder to work on iOS iOS has special stride requirements that we don't know yet, so copy input buffers into buffers allocated by iOS for now. Later we should check the stride and probably provide a buffer pool for these buffers so upstream can directly write in there. 2014-09-19 14:32:46 +0300 Sebastian Dröge * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: applemedia: We need to map the coremedia buffers in non-readonly mode Our buffers claim to be writable so other elements expect to be able to write there without losing their changes. 2014-09-18 18:16:59 +0200 Philippe Normand * ext/hls/gsthlsdemux.c: hlsdemux: lock client mutex before entering the retry_failover block This is consistent with the case where the block execution is triggered by the goto invoked after the current_variant update. https://bugzilla.gnome.org/show_bug.cgi?id=736919 2014-09-12 02:36:47 -0300 George Kiagiadakis * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: synchronize with the download loop thread to signal it to continue If EOS or ERROR happens before the download loop thread has reached its g_cond_wait() call, then the g_cond_signal doesn't have any effect and the download loop thread stucks later. https://bugzilla.gnome.org/show_bug.cgi?id=735663 2014-09-12 02:35:44 -0300 George Kiagiadakis * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: synchronize with the download loop thread to signal it to continue If EOS or ERROR happens before the download loop thread has reached its g_cond_wait() call, then the g_cond_signal doesn't have any effect and the download loop thread stucks later. https://bugzilla.gnome.org/show_bug.cgi?id=735663 2014-08-29 12:38:12 +0200 George Kiagiadakis * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: synchronize with the download loop thread to signal it to continue If EOS or ERROR happens before the download loop thread has reached its g_cond_wait() call, then the g_cond_signal doesn't have any effect and the download loop thread stucks later. https://bugzilla.gnome.org/show_bug.cgi?id=735663 2014-09-17 17:27:53 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: fix clearing of eos state in pads The internal pad still keeps its EOS flag and event as it can be assigned after the flush-start/stop pair is sent. The EOS is assigned from the streaming thread so this is racy. To be sure to clear it, it has to be done after setting the source to READY to be sure that its streaming thread isn't running. https://bugzilla.gnome.org/show_bug.cgi?id=736012 2014-09-17 17:27:25 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: fix clearing of eos state in pads The internal pad still keeps its EOS flag and event as it can be assigned after the flush-start/stop pair is sent. The EOS is assigned from the streaming thread so this is racy. To be sure to clear it, it has to be done after setting the source to READY to be sure that its streaming thread isn't running. https://bugzilla.gnome.org/show_bug.cgi?id=736012 2014-09-17 14:51:53 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: fix clearing of eos state in pads The internal pad still keeps its EOS flag and event as it can be assigned after the flush-start/stop pair is sent. The EOS is assigned from the streaming thread so this is racy. To be sure to clear it, it has to be done after setting the source to READY to be sure that its streaming thread isn't running. https://bugzilla.gnome.org/show_bug.cgi?id=736012 2014-09-18 17:49:46 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Let the encoder automatically choose a h264 level We should negotiate these things via caps... 2014-09-18 13:45:33 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Use 0 instead of G_MAXDOUBLE as the max keyframe interval 0 means no limit, which was meant here with G_MAXDOUBLE probably. 2014-09-18 13:42:24 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Expected duration is supposed to be the duration of the stream, not a frame Just don't set it for now, it isn't really needed. 2014-09-18 11:39:53 +0200 Aurélien Zanelli * tests/check/libs/vc1parser.c: vc1parser: add unit test for sequence-layer parsing Check that a sequence-layer header is successfully parsed. https://bugzilla.gnome.org/show_bug.cgi?id=736871 2014-09-18 11:49:13 +0200 Aurélien Zanelli * gst-libs/gst/codecparsers/gstvc1parser.c: vc1parser: take care of endianness when parsing sequence-layer sequence-layer is serialized in little-endian byte order except for STRUCT_C which is serialized in big-endian byte order. But since STRUCT_A and STRUCT_B fields are defined as unsigned int msb first, we have to pass them as big-endian to their parsing function. So we basically use temporary buffers to convert them in big-endian. See SMPTE 421M Annex J and L. https://bugzilla.gnome.org/show_bug.cgi?id=736871 2014-09-18 13:11:05 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Properly handle keyframes Especially set the SYNC_POINT flag on keyframes. 2014-09-18 14:24:13 +0530 Sanjay NM * gst/mpegdemux/gstmpegdemux.c: mpegdemux: removed an unwanted initialization and a variable https://bugzilla.gnome.org/show_bug.cgi?id=736863 2014-09-17 12:24:39 +0200 Jerome Laheurte * sys/dshowsrcwrapper/BUILD.txt: * sys/dshowsrcwrapper/CMakeLists.txt: * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowsrcwrapper: Port to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=732283 2014-09-18 12:53:11 +0530 Sanjay NM * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: removed redundant initialization https://bugzilla.gnome.org/show_bug.cgi?id=736853 2014-09-17 15:50:23 +0530 Anuj Jaiswal * ext/faad/gstfaad.c: faad: logical disjunction consecutive return, break unnecessary https://bugzilla.gnome.org/show_bug.cgi?id=736790 2014-09-17 11:49:22 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: enable header-format conversion In fact we support header-format conversion which is done in update_caps() method. https://bugzilla.gnome.org/show_bug.cgi?id=736786 2014-09-18 10:30:04 +0300 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Fix compilation 2014-09-18 09:47:06 +0300 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Handle 0/1 framerates correctly by not calculating their frame duration 2014-09-17 17:37:12 +0300 Sebastian Dröge * sys/applemedia/atdec.c: atdec: Fix some compiler warnings with newer clang 2014-09-17 17:10:58 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Prepare encoder after setup This will allow encoding to happen faster on the first frame. 2014-09-17 17:08:57 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Only drain the encoder in ::finish(), not on every frame Otherwise quality and bitrate will be bad. 2014-09-17 15:39:26 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Error out if encoding returned an error Otherwise we will just continue consuming frames until all memory is filled up and the app crashes. 2014-09-17 14:56:05 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Check for errors from VTCompressionSessionCompleteFrames() 2014-09-17 14:55:24 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Properly scale timestamps for the API and set invalid values 2014-09-17 14:54:39 +0300 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Properly scale timestamps for the API and set invalid values 2014-09-17 13:19:04 +0300 Sebastian Dröge * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264decbin.h: * sys/applemedia/vth264encbin.c: * sys/applemedia/vth264encbin.h: applemedia: Remove old code that is of no use anymore 2014-09-16 17:38:53 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: forge sequence-layer from seq_hdr instead of seq_layer If we don't have a seq_layer_buffer, we also don't have a valid seq_layer because there are set together in gst_vc1_parse_handle_seq_layer(). So when output header format is sequence-layer and when we don't have a seq_layer_buffer, we forge one from seq_hdr. https://bugzilla.gnome.org/show_bug.cgi?id=736781 2014-09-17 10:39:26 +0300 Sebastian Dröge * configure.ac: applemedia: Unconditionally use VideoToolbox on iOS if available Because we do weak linking now we can always compile it in and check at runtime if it is actually available or not. 2014-09-17 10:38:20 +0300 Sebastian Dröge * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: applemedia: Do weak linking with the VideoToolbox framework It does not exist on older OSX and iOS but we still want to be able to use it when it's available. 2014-09-16 12:06:35 +0200 Ognyan Tonchev * ext/wayland/gstwaylandsink.c: waylandsink: do not leak buffer pool in error case https://bugzilla.gnome.org/show_bug.cgi?id=736735 2014-09-16 15:59:58 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: fix sequence-layer/frame-layer endianness Sequence-layer and frame-layer are serialized in little-endian byte order except for STRUCT_C and framedata fields as described in SMPTE 421M Annex L. https://bugzilla.gnome.org/show_bug.cgi?id=736750 2014-09-16 16:51:28 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Port to GstVideoEncoder base class 2014-09-16 16:13:16 +0300 Sebastian Dröge * sys/applemedia/vtenc.c: vtenc: Use correct instance struct size 2014-09-16 15:48:11 +0300 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Fix compiler warnings values of type 'OSStatus' should not be used as format arguments; add an explicit cast to 'int' instead [-Wformat] 2014-09-16 15:02:46 +0300 Sebastian Dröge * sys/applemedia/Makefile.am: * sys/applemedia/coremediactx.c: * sys/applemedia/coremediactx.h: * sys/applemedia/dynapi-internal.h: * sys/applemedia/dynapi.c: * sys/applemedia/dynapi.h: * sys/applemedia/mtapi.c: * sys/applemedia/mtapi.h: * sys/applemedia/vtapi.c: * sys/applemedia/vtapi.h: * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Port to the real VideoToolbox API instead of using our dlopen() wrapper It's a public framework since a long time. 2014-09-16 11:42:34 +0200 Ognyan Tonchev * gst-libs/gst/gl/gstglfilter.c: glfilter: do not leak pool in error cases https://bugzilla.gnome.org/show_bug.cgi?id=736732 2014-09-16 11:43:02 +0200 Ognyan Tonchev * sys/vdpau/gstvdpdecoder.c: vdpdecoder: do not leak pool https://bugzilla.gnome.org/show_bug.cgi?id=736733 2014-09-16 11:41:43 +0200 Ognyan Tonchev * ext/gl/gstgltestsrc.c: gltestsrc: do not leak pool in error cases https://bugzilla.gnome.org/show_bug.cgi?id=736730 2014-09-16 11:42:13 +0200 Ognyan Tonchev * ext/openni2/gstopenni2src.cpp: openni2src: do not leak pool https://bugzilla.gnome.org/show_bug.cgi?id=736731 2014-09-16 11:41:16 +0200 Ognyan Tonchev * ext/gl/gstglmixer.c: glmixer: do not leak pool in error cases https://bugzilla.gnome.org/show_bug.cgi?id=736729 2014-09-16 13:21:22 +0530 Vineeth T M * gst/vmnc/vmncdec.c: vmncdec: modify wrong packetized mode logic packetized mode is being set when framerate is being set which is not correct. Changing the same by checking the input segement format. If input segment is in TIME it is Packetized, and if it is in BYTES it is not. https://bugzilla.gnome.org/show_bug.cgi?id=736252 2014-09-16 11:24:37 +0300 Sebastian Dröge * ext/webp/gstwebpdec.c: webpdec: Remove unused variable 2014-09-16 13:19:25 +0530 Vineeth T M * ext/webp/gstwebpdec.c: webpdec: modify wrong packetized mode logic packetized mode is being set when framerate is being set which is not correct. Changing the same by checking the input segement format. If input segment is in TIME it is Packetized, and if it is in BYTES it is not. https://bugzilla.gnome.org/show_bug.cgi?id=736252 2014-09-16 01:15:31 +0300 Sebastian Dröge * tests/check/elements/templatematch.c: templatematch: Compare the correct loop variables 2014-09-15 15:42:41 +0300 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: No need to set kVTVideoDecoderSpecification_EnableHardwareAcceleratedVideoDecoder on iOS 2014-09-15 15:36:44 +0300 Sebastian Dröge * configure.ac: configure: And make the preprocessor check work properly 2014-09-15 15:25:46 +0300 Sebastian Dröge * configure.ac: configure: Do the AM_CONDITIONAL() after finally setting the variable 2014-09-15 15:12:31 +0300 Sebastian Dröge * configure.ac: * sys/applemedia/vtdec.c: applemedia: Don't include VideoToolbox on iOS < 8.0 It's private API and does not work without a jailbroken device. 2014-09-15 13:33:45 +0300 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Also refetch the playlist after the first fragment failure Previously we only refetched the playlist if downloading a fragment has failed once. We should also do that if it failed a second or third time, chances are that the playlist was updated now and contains new URIs. 2014-09-15 11:59:32 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dash: Actually retry 3 times as advertised instead of 2 2014-09-15 11:59:19 +0300 Sebastian Dröge * ext/hls/gsthlsdemux.c: hls: Actually retry 3 times as advertised instead of 2 2014-09-13 20:49:16 +0300 Sebastian Dröge * sys/applemedia/vtdec.c: vtdec: Fix compilation on iOS 8.0 2014-09-11 14:36:31 +0200 Aurélien Zanelli * gst/videoparsers/gstvc1parse.c: vc1parse: fix malformed sequence layer header and STRUCT_C This commit fix several issues with sequence layer header forging on update_caps(): - 0x00000004 unsigned integer is before STRUCT_C. - Set reserved bits of STRUCT_C to their values for simple/main profiles in sequence layer header format and ASF header format. - Sequence layer shall be represented as a sequence of 32 bits unsigned integers and shall be serialized in little-endian byte order except for STRUCT_C which shall be serialized in big-endian byte-order. See SMPTE 421M Annex L for more details about sequence layer format. https://bugzilla.gnome.org/show_bug.cgi?id=736474 2014-09-12 14:49:44 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Use proper variable for delivery system We want to check the delivery system is ISDBT (and not the modulation which we check later in that case). CID #1238439 2014-09-12 09:30:04 +0200 Aurélien Zanelli * gst/mpegtsdemux/tsdemux.c: tsdemux: fix trivial coding style issue https://bugzilla.gnome.org/show_bug.cgi?id=736531 2014-09-11 18:33:20 +0200 Aurélien Zanelli * gst/mpegtsdemux/pesparse.h: tsdemux: fix overflow of packet_length field of PESHeader packet_length is defined as a guint16 in the PESHeader structure. This definition match the specification. But since we add 6 bytes to the packet_length value (length of start_code + stream_id + packet_length), we can overflow the guint16 when the value in the PES header is greater than 65529. So use a guint32 instead of a guint16 to avoid overflow. https://bugzilla.gnome.org/show_bug.cgi?id=736490 2014-09-10 15:39:44 -0300 Matthieu Bouron * ext/smoothstreaming/gstmssdemux.c: mssdemux: improve position detection when a download restart Query other src pads before falling back to the position of the last known pushed segment (which can be far ahead in time). https://bugzilla.gnome.org/show_bug.cgi?id=736421 2014-09-10 15:43:05 +0200 Matthieu Bouron * ext/dash/gstdashdemux.c: dashdemux: improve position detection when a download restart Query other src pads before falling back to the position of the last known pushed segment (which can be far ahead in time). https://bugzilla.gnome.org/show_bug.cgi?id=736421 2014-09-11 16:21:30 +0400 Belozorov Semen * gst/mpegpsmux/mpegpsmux_h264.c: mpegpsmux: fix memory leak when converting H.264 avc to byte-stream format Fix memory leak for input stream with caps "video/x-h264,stream-format=avc". https://bugzilla.gnome.org/show_bug.cgi?id=736426 2014-09-10 19:27:27 +0100 Tim-Philipp Müller * gst/aiff/aiffmux.c: aiffmux: allocate byte writer on stack 2014-09-10 19:19:32 +0100 Tim-Philipp Müller * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfparse.c: asfmux: allocate byte readers on the stack 2014-09-10 10:58:03 +0200 Jesper Larsen * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: clear mutex resources in dispose https://bugzilla.gnome.org/show_bug.cgi?id=736390 2014-09-10 17:24:39 +0100 Tim-Philipp Müller * ext/mpg123/gstmpg123audiodec.c: * ext/opus/gstopusdec.c: * gst/adpcmenc/adpcmenc.c: * sys/opensles/openslessrc.c: * sys/uvch264/gstuvch264_src.c: Fix up one-element lists in template caps 2014-09-10 16:38:52 +0100 Tim-Philipp Müller * sys/applemedia/avfvideosrc.m: avfvideosrc: fix bogus BGRA caps Remove 0.10-style endianness/*_mask/bpp/depth fields. 2014-09-10 19:16:53 +1000 Matthew Waters * configure.ac: build: don't AC_SUBST intermediate values 2014-09-09 12:01:47 +0200 Vasilis Liaskovitis * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: GstGLWindow: Introduce navigation thread This thread dispatches navigation events. It is needed to avoid deadlocks between window backend threads that emit navigation events (e.g. X11/GMainLoop thread) and consumers of navigation events such as glimagesink, see https://bugzilla.gnome.org/show_bug.cgi?id=733661 GstGlWindow_x11 thread is changed to invoke the navigation thread for navigation dispatching, instead of emiting the event itself. Othe backends beside X11 do not dispatch navigation events yet, but should use this thread when dispatching these events in the future. The navigation thread is currently part of GstGLWindow and not implemented in separate subclasses / backends. This will be needed in the future. gst_gl_window_x11_get_surface_dimensions is also changed to use a cached value of the window's width, height. These values are now retrieved in the X11 thread, function gst_gl_window_x11_handle_event. This change is needed because otherwise the XGetWindowAttributes gets called from the navigation thread, leading to xlib aborting due to multithreaded access (if XInitThreads is not called before, as is the case for gst-launch) 2014-09-05 13:58:19 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: retry opening the frontend on EINTR 2014-09-05 13:32:09 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: assorted doc & spelling fixes 2014-09-07 01:30:16 -0300 Thiago Santos * gst/dataurisrc/gstdataurisrc.c: Revert "dataurisrc: Remove unnecessary else if condition" This reverts commit 3024ae9c38490817a76c83feab3c8472989cafad. The *buf can be NULL or not depending if the caller of gst_pad_get_range function provided or not a buffer. 2014-09-05 16:11:08 -0300 Thiago Santos * tests/check/elements/hlsdemux_m3u8.c: tests: hlsdemux: fix compilation In file included from /home/thiagoss/gst/head/gstreamer/gst/gst.h:54:0, from /home/thiagoss/gst/head/gstreamer/libs/gst/check/gstcheck.h:34, from elements/hlsdemux_m3u8.c:27: ../../ext/hls/gstfragmented.h:8:28: error: redundant redeclaration of ‘fragmented_debug’ [-Werror=redundant-decls] GST_DEBUG_CATEGORY_EXTERN (fragmented_debug); Move the definition of the category to after the declaration. 2014-09-05 12:56:13 +0300 Sebastian Dröge * tests/check/Makefile.am: hlsdemux: And fix Makefile yet again 2014-09-05 12:25:01 +0300 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: Include the m3u8.c file directly in the test because of an automake bug $(top_srcdir) doesn't seem to work with _SOURCES because that would be too obvious. http://lists.gnu.org/archive/html/automake/2013-09/msg00005.html 2014-09-05 09:53:15 +0530 Vineeth T M * gst/aiff/aiffparse.c: aiffparse: Fix handling of 64 bit floating point data In gst_aiff_parse_create_caps if and else-if conditions are duplicated. https://bugzilla.gnome.org/show_bug.cgi?id=736090 2014-09-05 08:51:30 +0200 Nicola Murino * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: facedetect: Add new property min-stddev face detection will be performed only if image standard deviation is greater that min-stddev. Default min-stddev is 0 for backward compatibility. This property will avoid to perform face detection on images with little changes improving cpu usage and reducing false positives https://bugzilla.gnome.org/show_bug.cgi?id=730510 2014-07-07 10:52:57 +0200 Lubosz Sarnecki * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: gltransformation: fix issues and expose mvp matrix * aspect should not be 0 on init * rename fovy to fov * add mvp to properties as boxed graphene type * fix transformation order. scale first * clear color with 1.0 alpha https://bugzilla.gnome.org/show_bug.cgi?id=734223 2014-09-04 21:41:54 +0300 Sebastian Dröge * tests/check/Makefile.am: hlsdemux: Also get the m3u8.c source file from the $(top_srcdir) for the test Should fix make distcheck for real now. 2014-09-04 19:01:45 +0300 Sebastian Dröge * tests/check/Makefile.am: hlsdemux: Use $(top_srcdir) instead of $(top_builddir) for the include path 2014-09-04 18:21:38 +0300 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: mssdemux: Don't send flush events to deactivated pads https://bugzilla.gnome.org/show_bug.cgi?id=736012 2014-09-04 18:21:25 +0300 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Don't send flush events to deactivated pads https://bugzilla.gnome.org/show_bug.cgi?id=736012 2014-09-04 18:20:58 +0300 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Don't send flush events to deactivated pads https://bugzilla.gnome.org/show_bug.cgi?id=736012 2014-09-04 17:52:35 +0300 Sebastian Dröge * tests/check/Makefile.am: hlsdemux: Compile the m3u8.c directly instead of re-using the .o file 2014-09-04 17:50:16 +0300 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/hlsdemux_m3u8.c: hlsdemux: Add unit test for parsing of M3U8 playlists Ported from https://github.com/ylatuya/gst-plugins-bad This still has some unit tests for alternative renditions and seeking, which are commented out for the time being until we support them properly. 2014-09-04 17:49:23 +0300 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Properly assign offsets to the files if we accumulate them instead of reading from the playlist 2014-09-04 13:38:21 +0530 Vineeth T M * gst/dataurisrc/gstdataurisrc.c: dataurisrc: Remove unnecessary else if condition In gst_data_uri_src_create(), buf cannot be NULL, hence else if (*buf != NULL) will be invalid so removing the else if condition and adding a check to unreference buf in else condition, just in case https://bugzilla.gnome.org/show_bug.cgi?id=735861 2014-09-02 18:06:53 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: simplify ISDB-T launch line example 2014-09-02 12:13:01 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: delay locking till actually needed Get rid of unneeded locking at prop setting by doing it only when tuning the frontend at _tune_fe() 2014-09-02 12:11:44 +0530 Vineeth T M * gst/dataurisrc/gstdataurisrc.c: dataurisrc: Make get_uri() threadsafe https://bugzilla.gnome.org/show_bug.cgi?id=735861 2014-09-01 17:41:50 +0300 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: amcaudiodec: Remove hack for Google MP3 decoder The first buffer does not contain more garbage than any other MP3 decoder outputs and we don't really know how much we have to drop or not. After this change the output has the same duration as with mad. 2014-09-01 08:24:57 +0530 Vineeth T M * gst/videofilters/gstzebrastripe.c: zebrastripe: Refactor to remove duplicate code gst_zebra_stripe_transform_frame_ip_planarY gst_zebra_stripe_transform_frame_ip_YUY2 gst_zebra_stripe_transform_frame_ip_AYUV all above 3 functions do the same functionality except for offset and pixel stride. Hence moving the functionality to a single funtion. https://bugzilla.gnome.org/show_bug.cgi?id=735032 2014-08-29 18:55:32 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix description for modulation prop 2014-08-29 17:16:09 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add basic checks on ISDB-T parameters Also add a routine for checking wrong delsys/modulation combinations right before tuning (only implemented for ISDB-T for now). 2014-08-29 18:09:07 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: add support for additional modulation types 2014-08-29 13:26:12 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop FIXME on _ISDBT_LAYER_ENABLED prop Valid values range from 1 to 7 as stated. DTV_ISDBT_LAYER_ENABLED bitmask is built from OR-ing 0x1 0x2 0x4. If all bits are set (0x00000111 = 7) it means all layers should be demodulated. 2014-08-29 19:26:40 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: remove code that can't be reached If this code could ever be reached, it would leak memory (CID 1231979), but gst_caps_get_features() never returns NULL, so that can't happen. 2014-08-29 19:24:52 +0100 Tim-Philipp Müller * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: remove code that can't be reached If this code could ever be reached, it would leak memory (CID 1231977), but gst_caps_get_features() never returns NULL, so that can't happen. 2014-08-28 20:12:07 +0100 Tim-Philipp Müller * gst/videoparsers/gsth264parse.c: h264parse: fix up handling of input caps corner cases Do more elaborate validation of the input caps: what fields are required and/or not allowed. Don't assume AVC3 format input without codec_data field is byte-stream format. Fix up some now-unreachable code (CID 1232800). 2014-08-28 16:42:30 +0300 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Add missing break to switch CID 1232801 2014-08-28 11:37:56 +0300 Sebastian Dröge * gst/rawparse/gstrawparse.c: rawparse: Reset negotiation state when going back to READY After going back to READY we can accept new format settings again. 2014-08-22 15:18:59 -0600 Thomas Bluemel * configure.ac: * ext/hls/Makefile.am: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Support OpenSSL for AES decryption of HLS fragments https://bugzilla.gnome.org//show_bug.cgi?id=735248 2014-08-26 16:21:42 +0800 Wang Xin-yu (王昕宇) * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/main.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: gl: qglwtextureshare demo fixes and cleanup 1. glcontextid function is replaced by gstreamer gst_gl_context_new_wrapped . 2. call gst_init before gst_gl_display_new , seems gst_gl_display_new depends on gst_allocator_register , which only worked after gst_init called 3. flush gstreamer OpenGL context before using shared texture, fix flicker problem. https://bugzilla.gnome.org/show_bug.cgi?id=735566 2014-08-27 13:40:42 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglcontext.c: gl: Add GSTGLAPI macro to the debug callback function Fixes the Windows build. https://bugzilla.gnome.org/show_bug.cgi?id=735565 2014-08-28 09:53:17 +0300 Blake Tregre * gst/librfb/rfbdecoder.c: rfbsrc: Clamp out of bounds resolutions to prevent segfaults https://bugzilla.gnome.org/show_bug.cgi?id=726801 2014-08-27 14:47:25 +0200 Carlos Rafael Giani * configure.ac: gl: do not check for GL/GLU/EGL/GLES2 libs if disabled in configuration https://bugzilla.gnome.org/show_bug.cgi?id=735522 2014-08-26 12:38:52 +1000 Jan Schmidt * gst-libs/gst/gl/egl/gstglcontext_egl.c: egl: Wrap KHR_create_context flags in an ifdef EGL_CONTEXT_FLAGS_KHR and EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR don't exist in the Android NDK. Wrap their usage in an #ifdef EGL_KHR_create_context to fix the build there. 2014-08-21 12:32:10 -0300 Thiago Santos * gst/videoparsers/gsth264parse.c: h264parse: don't consider unknown stream-format as avc It should try to use bytestream in these cases that the format is set to _FORMAT_NONE as it seems that is what the 'else' clause for bytestream can handle (by defaulting to _FORMAT_BYTESTREAM). 2014-08-25 13:33:15 -0300 Thiago Santos * tests/check/elements/h264parse.c: h264parse: tests: fix caps for avc format If it has a codec_data field, it should also use the stream-format=avc as codec_data doesn't make sense otherwise and the default should be bytestream 2014-08-25 15:21:39 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-mpegpsmux.xml: docs: add mpegpsmux and mpegtsmux 2014-08-25 15:20:59 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-audiomixer.xml: docs: add audiomixer to docs 2014-08-25 15:20:16 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-aiff.xml: docs: add aiff elements to docs 2014-08-25 14:56:15 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: docs: plugins: misc updates 2014-08-25 14:43:49 +0100 Tim-Philipp Müller * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.types: docs: move GstPhotography interface docs into the library docs Now that we have docs for the libs. 2014-08-25 12:21:36 +0100 Tim-Philipp Müller * ext/sndfile/gstsf.c: sndfile: don't decode formats that are better handled by other elements In particular: flac, ogg, pcm, au, aiff, wav. https://bugzilla.gnome.org/show_bug.cgi?id=722316 2014-08-22 16:49:10 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: egl: fallback to a non-debug context if a debug one fails The text for EGL_KHR_create_context added the possiblity for ES contexts to ask for a debug context however that has not been fully realized by all implementations. Fallback to a non-debug context when the implementation errors. 2014-08-05 14:06:07 -0400 Youness Alaoui * ext/srtp/gstsrtpdec.c: srtpdec: Add support for RTP/RTCP mixing if data arrives on RTCP pad https://bugzilla.gnome.org/show_bug.cgi?id=734321 2014-08-21 16:24:06 +0100 Tim-Philipp Müller * ext/dash/gstdashdemux.c: dashdemux: fix abort in error code path with newer glib Don't forget to unlock mpd client again when erroring out. Fixes abort when g_mutex_clear() is called on a locked mutex. 2014-07-02 12:49:44 +0200 Lubosz Sarnecki * gst-libs/gst/gl/Makefile.am: gstopengl: add introspection support https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-08-05 12:07:08 +0200 Lubosz Sarnecki * tests/examples/gl/gtk/switchvideooverlay/main.cpp: examples: fix gtk+ 3.14 deprecation error https://developer.gnome.org/gtk3/3.13/GtkWidget.html#gtk-widget-set-double-buffered https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-07-07 10:52:06 +0200 Lubosz Sarnecki * ext/gl/gstglimagesink.c: glimagesink: expose context * expose context in draw / reshape callbacks * add context property https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-07-07 10:51:28 +0200 Lubosz Sarnecki * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: glshader: expose opengl handle in getter https://bugzilla.gnome.org/show_bug.cgi?id=734482 2014-08-20 09:37:01 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglutils.c: gl: check null before unref GstGLDisplay 2014-08-21 10:03:07 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/debug.h: gl: add prototype definition for KHR_debug 2014-08-20 23:24:12 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: glcontext: implement the debug callback For both GL_KHR_debug and ARB_debug_output. This allows us to receive errors and other hints from the GL instead of querying after every GL operation. 2014-08-20 23:23:06 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstglapi.h: gl: add prototypes for KHR_debug/ARB_debug_output 2014-08-19 17:17:33 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: unref pad reference when removing internal source in error Avoids leaking the pad in error situations 2014-08-19 16:01:58 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: read language from ContentComponent node as a fallback If the language is not specified in the AdaptationSet, use the ContentComponent node to get it. We only get it if there is only a single ContentComponent as it doesn't seem clear on what to do if there are multiple entries https://bugzilla.gnome.org/show_bug.cgi?id=732237 2014-06-25 15:55:32 +0200 Matthieu Bouron * ext/dash/Makefile.am: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: push language code tag Language code tag is retrieved from the AdaptationSet language property. https://bugzilla.gnome.org/show_bug.cgi?id=732237 2014-08-19 20:14:22 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: don't take an extra ref on the display on set_context gst_context_get_gl_display() returns a ref. Don't take another in gst_object_replace(). 2014-08-19 17:01:36 +1000 Matthew Waters * ext/gl/gstglmixer.c: glmixer: unref the GstGLUpload in the pad if freed while running Dynamic pipelines that get and release the sink pads will finalize the pad without going through gst_gl_mixer_stop() which is where the upload object is usually freed. Don't leak objects in such case. 2014-08-14 23:51:21 -0400 Wang Xin-yu (王昕宇) * ext/gl/gstglmixer.c: glvideomixer: avoid gl resource race condition between different thread https://bugzilla.gnome.org/show_bug.cgi?id=734830 2014-08-19 14:44:29 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't clobber unnecessary GstVideoInfo fields otherwise we might clobber other important fields such as the frame rate. 2014-08-19 14:43:42 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: get the attribute from the correct shader 2014-08-19 14:23:21 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unref the window on navigation event plugs a memory leak 2014-08-19 00:01:28 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: tsdemux: remove pads when resetting the element Otherwise the pads will be there if it is restarted and the stream can be a completely different one. https://bugzilla.gnome.org/show_bug.cgi?id=734394 2014-08-17 01:42:05 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparser: h264: Use proper bit_reader api while parsing buffering_period SEI https://bugzilla.gnome.org/show_bug.cgi?id=734970 2014-08-14 10:19:13 +0530 Vineeth T M * gst/videofilters/gstscenechange.c: scenechange: fix crash on startup gst_video_frame_map() was using the oldinfo GstVideoInfo before it's been populated, resulting in a crash right at the start. https://bugzilla.gnome.org/show_bug.cgi?id=734763 2014-08-14 15:26:53 +0300 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Make sure to unblock any thread waiting on the drain condition variable when errors happen 2014-08-14 15:24:21 +0300 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstamcvideoenc.h: androidmedia: Fix draining logic to let the base class handle EOS events https://bugzilla.gnome.org//show_bug.cgi?id=734775 2014-08-11 21:25:41 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/parsechannels.c: dvbbasebin: fix parsing of freqs in some ZAP files Change avoids attempting to convert to kHz if unneeded. There are quite some ZAP format variants out there. Among their subtle little differences, some store transponder frequencies in Mhz and others in kHz. The latter been the most common variant. 2014-08-07 19:37:01 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: get rid of remaining trailing whitespace 2014-08-07 19:19:36 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: wrap around known-interruptible ioctls Also get rid of the asumption that some requests like FE_SET_TONE or FE_SET_VOLTAGE only error out with -1 2014-08-07 14:00:40 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop gst_dvbsrc_retry_ioctl for retry macro LOOP_WHILE_EINTR macro makes it easier to handle assorted ioctl argp types. Functionality is otherwise equivalent. 2014-08-12 12:35:00 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: * sys/dvb/dvbbasebin.h: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: dvbbasebin: add 'tune' signal It works the same as the 'tune' property that is used only to signal the element that it should tune, but it is more natural to be used as a signal rather than a property. It is also proxied at the dvbbasebin element 2014-08-07 15:25:32 +0200 Thibault Saunier * ext/hls/gsthlsdemux.c: hlsdemux: Do not switch playlist on trick modes Instead always use the low bandwith playlist making things go smoother as the current heuristic is rather set for normal playback, and currently it does not behave properly. https://bugzilla.gnome.org/show_bug.cgi?id=734445 2014-07-21 14:42:47 +0200 Thibault Saunier * ext/hls/gsthlsdemux.c: hlsdemux: No need to have a I-Frame list to do trick modes It just works cleanly without any index and there is no real reason for that limitation. Also, there are very few stream with that feature. https://bugzilla.gnome.org/show_bug.cgi?id=734445 2014-08-05 17:13:13 +0200 Thibault Saunier * gst/mpegtsdemux/tsdemux.c: tsdemux: Do not tweak segments on reverse playback We can't compare the first buffer start and the segment start in that case... playback is going backward! https://bugzilla.gnome.org/show_bug.cgi?id=734445 2014-08-13 16:57:15 +0200 Valentin PONS * ext/opencv/gstfacedetect.c: facedetect: Use NULL to disable eyes/nose/mouth Without printing a warning about it https://bugzilla.gnome.org/show_bug.cgi?id=734623 2014-08-10 22:58:22 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglbufferpool.c: glbufferpool: fix allocator leak in some cases Spotted by Sebastian Rasmussen. https://bugzilla.gnome.org/show_bug.cgi?id=734523 2014-08-11 12:32:04 -0300 Thiago Santos * ext/assrender/gstassrender.c: assrender: save a few ref/unref pairs The event/query functions already have a reference to the element, avoid ref/unref in the functions handling caps queries and events. 2014-08-11 12:31:17 -0300 Thiago Santos * ext/assrender/gstassrender.c: assrender: remove obsolete fixme 2014-08-11 12:22:44 -0300 Thiago Santos * ext/assrender/gstassrender.c: assrender: improve negotiation Check if downstream supports overlay meta, if possible use it and if not fallback to no-overlay caps https://bugzilla.gnome.org/show_bug.cgi?id=733916 2014-08-11 12:21:28 -0300 Thiago Santos * ext/assrender/gstassrender.c: assrender: always intersect with the filter caps Avoids returning values that peers can't use https://bugzilla.gnome.org/show_bug.cgi?id=733916 2014-08-11 11:35:01 -0300 Thiago Santos * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: improve negotiation Check if downstream supports overlay meta, if possible use it and if not fallback to no-overlay caps https://bugzilla.gnome.org/show_bug.cgi?id=733916 2014-08-11 11:33:28 -0300 Thiago Santos * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: always intersect with the filter in getcaps Avoids returning unsupported caps to peers https://bugzilla.gnome.org/show_bug.cgi?id=733916 2014-08-11 23:38:40 +1000 Matthew Waters * gst-libs/gst/base/gstaggregator.c: aggregator: fix up doc comment for set_src_caps It does not occur 'later' anymore https://bugzilla.gnome.org/show_bug.cgi?id=732662 2014-08-07 19:54:36 +1000 Matthew Waters * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: push the caps event as soon as we receive it Along with the required mandatory dependent events. Some elements need to perform an allocation query inside ::negotiated_caps(). Without the caps event being sent prior, downstream elements will be unable to answer and will return an error. https://bugzilla.gnome.org/show_bug.cgi?id=732662 2014-08-11 16:01:32 +0300 Sreerenj Balachandran * ext/webp/Makefile.am: * ext/webp/gstwebp.c: * ext/webp/gstwebpenc.c: * ext/webp/gstwebpenc.h: webenc: Add WebP image encoder https://bugzilla.gnome.org/show_bug.cgi?id=733087 2014-08-09 01:29:30 +0200 Sebastian Rasmussen * ext/sbc/gstsbcenc.c: sbcenc: Unref output caps in error cases gst_caps_intersect() returns a reference to a caps object which in the normal case is consumed, but in error cases must be unreferenced. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734521 2014-08-08 14:08:19 +0200 Sebastian Rasmussen * ext/opus/gstopusenc.c: opusenc: Unref pad template caps after usage Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734517 2014-08-09 11:41:17 +0200 Sebastian Rasmussen * gst/inter/gstintertest.c: inter: Unref bus after usage gst_pipeline_get_bus() returns a reference to a bus that needs to be unreferenced after usage. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734525 2014-08-09 11:45:41 +0200 Sebastian Rasmussen * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: * tests/examples/gl/gtk/fxtest/fxtest.c: examples/gl: unref bus and element after usage gst_pipeline_get_bus() and gst_bin_get_by_interface() both return references that need to be unreferenced after usage. https://bugzilla.gnome.org/show_bug.cgi?id=734527 2014-08-10 19:12:01 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update for git master 2014-08-10 19:05:43 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-rtpvp8.xml: docs: remove rtpvp8 plugin docs, the elements are now in -good 2014-08-10 18:07:28 +0100 Tim-Philipp Müller * ext/gl/gstglcolorscale.c: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfilterglass.c: * ext/gl/gstglimagesink.c: * ext/gl/gstglmosaic.c: * ext/gl/gstgloverlay.c: * ext/gl/gstglvideomixer.c: opengl: update element docs for 1.x 2014-08-10 17:48:50 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-eglglessink.xml: docs: remove eglglessink from docs as it no longer exists 2014-08-09 11:36:38 +0200 Sebastian Rasmussen * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Unref elements after usage gst_bin_get_by_name() and gst_bin_get_by_interface() both return references to elements that need to be unreferenced after usage. https://bugzilla.gnome.org/show_bug.cgi?id=734524 2014-08-09 01:27:53 +0200 Sebastian Rasmussen * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: openal: Unref pad template caps after usage https://bugzilla.gnome.org/show_bug.cgi?id=734520 2014-08-10 12:29:04 +0100 Tim-Philipp Müller * ext/ladspa/gstladspafilter.c: ladspa: fix up broken patch merge Sorry, should've been commit --amend 2014-08-09 13:24:00 +0200 Sebastian Rasmussen * sys/pvr2d/gstpvrvideosink.c: pvrvideosink: Avoid leaking bufferpool configuration gst_buffer_pool_get_config() returns a copy to the bufferpool's configuration, which must be passed to gst_structure_free() after use if not given away to gst_buffer_pool_set_config(). Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734537 2014-08-09 13:22:42 +0200 Sebastian Rasmussen * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Avoid leaking copy of caps object gst_pad_get_pad_template_caps() returns a reference which is unreferenced, so creating a copy using gst_caps_copy() results in a reference leak. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734536 2014-08-09 13:20:41 +0200 Sebastian Rasmussen * sys/applemedia/vtenc.c: vtenc: Avoid leaking caps object and its copy gst_pad_get_pad_template_caps() returns a reference which is unreferenced, so creating a copy using gst_caps_copy() results in a reference leak. Also the caps are pushed as an event downstream, but this doesn't consume the caps so it must still be unreferenced. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734534 2014-08-09 13:17:17 +0200 Sebastian Rasmussen * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Avoid leaking copy of caps object gst_pad_get_pad_template_caps() returns a reference which is unreferenced, so creating a copy using gst_caps_copy() results in a reference leak. Also remove the incorrect comment to avoid confusion in the future. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734533 2014-08-09 13:12:14 +0200 Sebastian Rasmussen * gst/interlace/gstinterlace.c: interlace: fix caps refcounting tcaps was unrefed when it shouldn't have been unrefed in some cases. https://bugzilla.gnome.org/show_bug.cgi?id=734531 2014-08-09 13:09:52 +0200 Sebastian Rasmussen * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Avoid leaking copy of caps object gst_pad_get_pad_template_caps() returns a reference which is unreferenced, so creating a copy using gst_caps_copy() results in a reference leak. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734528 2014-08-09 11:17:44 +0200 Sebastian Rasmussen * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Unref allowed caps after usage Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734522 2014-08-09 01:25:21 +0200 Sebastian Rasmussen * ext/ladspa/gstladspafilter.c: ladspa: Unref pad template caps after usage Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734519 2014-08-09 01:25:21 +0200 Sebastian Rasmussen * ext/ladspa/gstladspafilter.c: ladspa: Unref pad template caps after usage https://bugzilla.gnome.org/show_bug.cgi?id=734519 2014-08-09 01:23:50 +0200 Sebastian Rasmussen * ext/directfb/dfbvideosink.c: dfbvideosink: Unref pad template caps after usage Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734518 2014-08-10 11:35:41 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/pipelines/.gitignore: * tests/check/pipelines/colorspace.c: tests: remove defunct test code for old colorspace element https://bugzilla.gnome.org/show_bug.cgi?id=734538 2014-08-09 13:27:00 +0200 Sebastian Rasmussen * tools/element-templates/srcpad: element-maker: Avoid leaking copy of caps object gst_pad_get_pad_template_caps() returns a reference which is unreferenced, so creating a copy using gst_caps_copy() results in a reference leak. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734539 2014-08-09 14:27:34 +0200 Sebastian Rasmussen * ext/gsm/gstgsmenc.c: gstgsmenc: Unref caps object after usage gst_audio_encoder_set_output_format() does not consume caps, so unreference that object instead. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=734544 2014-08-09 14:24:59 +0200 Sebastian Rasmussen * ext/opus/gstopusheader.c: opus: Improve annotation of internal function https://bugzilla.gnome.org/show_bug.cgi?id=734543 2014-08-06 18:11:20 +0300 George Kiagiadakis * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: support downloading segments in reverse order When a seek with a negative rate is requested, find the target segment where gstsegment.stop belongs in and then download from this segment backwards until the first segment. This allows proper reverse playback. 2014-08-07 19:18:49 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add a background property That's compatible with the compositor/videomixer property https://bugzilla.gnome.org/show_bug.cgi?id=731954 2014-08-06 13:27:04 +0200 Thibault Saunier * ext/faad/gstfaad.c: ext:faad: Set rank to SECONDARY as the libav decoder is concidered better https://bugzilla.gnome.org/show_bug.cgi?id=676131 2014-08-06 16:48:03 +0300 Vasilis Liaskovitis * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: GstGLWindow, GstGLImagesink, x11: Scale navigation events on resized windows If window is resized, GstStructure pointer values have to be rescaled to original geometry. A get_surface_dimensions GLWindow class method is added for this purpose and used in the navigation send_event function. https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-08-06 08:15:38 -0400 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglupload.c: glupload: don't determine if frame needs upload by pointer compare https://bugzilla.gnome.org/show_bug.cgi?id=734269 2014-08-05 11:45:55 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Store PCR time/byte offsets in 64 bit integers 32 bit integers are going to overflow, especially the PCR offset to the first PCR will overflow after about 159 seconds. This makes playback of streams stop at 159 seconds as suddenly the timestamps are starting again from 0. Now we have a few more years time until it happens again and 64 bits are too small. 2014-08-05 10:42:28 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: Revert "mpegtspacketizer: Convert PCR times to GStreamer times before comparing them against 500 * GST_MSECOND" This reverts commit 9f186c6ab32c1e949916d385186b2d400190add6. That commit was actually completely wrong, nevermind. 2014-08-05 10:36:17 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Convert PCR times to GStreamer times before comparing them against 500 * GST_MSECOND Otherwise it will believe to detect PCR gaps already when there's a very small gap of a few milliseconds, breaking playback of some files. 2014-07-31 17:40:30 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.h: dvbsrc: remove srcpad leftover The element is inheriting its srcpad from basesrc 2014-08-01 18:02:10 +0200 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Initialize pixel format to bmdFormat8BitYUV https://bugzilla.gnome.org/show_bug.cgi?id=725871 2014-08-01 16:40:49 +0200 Aurélien Zanelli * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers_h264: initialize some fields of pic_timing structure Otherwise pic timing structure can have invalid cpb_removal_delay, dpb_output_delay or pic_struct_present_flag which are blindly retrieved in h264parse. https://bugzilla.gnome.org/show_bug.cgi?id=734124 2014-08-01 16:58:23 +0200 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Catch errors during data flow and error out properly Otherwise we will just deadlock the thread if e.g. scheduling a video frame fails for whatever reason. 2014-07-31 20:52:39 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: return the error to the source immediately to stop faster When flushing, this will prevent dashdemux from trying to download more fragments or more chunks of the same fragment before stopping. Also improves the error handling to not transform everything non-ok into an error. https://bugzilla.gnome.org/show_bug.cgi?id=734014 2014-07-29 02:11:54 -0300 Thiago Santos * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: avoid timestamp overflows Cause timing to break in the pipeline that can lead to a stall https://bugzilla.gnome.org/show_bug.cgi?id=733837 2014-08-01 13:14:03 +0200 Edward Hervey * po/POTFILES.in: po: Remove files no longer present They were removed when sndfile was ported to 1.x 2014-08-01 12:38:44 +0200 Sebastian Dröge * sys/decklink/gstdecklink.cpp: decklink: 59.94fps is 60000/1001, not 30000/1001 And also change 30/1 to 60/1 for one 60fps mode. 2014-08-01 17:51:08 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/docs: remove superflous 'the' 2014-08-01 16:41:13 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstgldisplay.c: gl: document GST_GL_* environment variables https://bugzilla.gnome.org/show_bug.cgi?id=733245 2014-08-01 10:01:18 +1000 Matthew Waters * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/tests: update for API changes 2014-07-31 18:55:33 +0200 Edward Hervey * Makefile.am: * common: Makefile: Add usage of build-checks step Allows building checks without running them 2014-07-31 18:46:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: glcontext: add a destroy function that just calls the subclass 2014-07-31 18:36:58 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: silence runtime warning g_main_loop_quit: assertion 'loop != NULL' failed 2014-07-31 15:18:04 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: use the plane offsets to compute the size of the data pointer Certain elements expect that there be a certain number of lines that they can write into. e.g. for odd heights, I420, YV12, NV12, NV21 (and others) Y lines are expected to have exactly twice the number of U/UV lines. https://bugzilla.gnome.org/show_bug.cgi?id=733717 2014-07-31 14:07:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: glmemory: use GstVideoInfo everywhere Simplifies a lot of the calling code https://bugzilla.gnome.org/show_bug.cgi?id=733717 2014-07-30 16:32:01 -0300 Robert Jobbagy * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: faceblur: facedetect: add properties to faceblur Makes faceblur have the same properties as facedetect. Also improves the standard defaults and makes them the same in the 2 elements 2014-07-30 16:30:39 -0300 Robert Jobbagy * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: faceblur: post message when profile loading fails 2014-07-30 16:07:17 -0300 Robert Jobbagy * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: facedetect: faceblur: update launch line examples Reflect 1.0 and more useful examples 2014-07-29 13:25:22 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: keep the uploaded buffer around on successful redisplay We might need it later to perform a redisplay. GstGLUpload will take of releasing the previous buffer when it receives a new buffer. https://bugzilla.gnome.org/show_bug.cgi?id=733726 2014-07-29 11:47:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: glmemory: reenable the texture_rg support for !eagl The GST_GL_HAVE_PLATFORM_EAGL is always defined we need to compare against the value instead. 2014-07-28 19:11:41 -0300 Thiago Santos * tests/check/elements/.gitignore: * tests/check/libs/.gitignore: tests: gitignore: update with new tests 2014-07-28 16:55:15 -0300 Thiago Santos * tests/files/blue-square.png: tests: files: adds missing file from previous commit This is required for the templatematch test to work 2014-07-28 15:45:09 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/templatematch.c: * tests/files/Makefile.am: tests: templatematch: add test to check that we use the correct rgb format templatematch should use the same RGB format that opencv uses (BGR), make sure we keep it that way with this test. https://bugzilla.gnome.org/show_bug.cgi?id=678485 2012-06-15 13:19:06 +0100 David Rothlisberger * ext/opencv/gsttemplatematch.c: opencv templatematch: Set caps to BGR order templatematch operates on BGR data. In fact, OpenCV's IplImage always stores color image data in BGR order -- this isn't documented at all in the OpenCV source code, but there are hints around the web (see for example http://www.cs.iit.edu/~agam/cs512/lect-notes/opencv-intro/opencv-intro.html#SECTION00041000000000000000 and http://www.comp.leeds.ac.uk/vision/opencv/iplimage.html ). gst_templatematch_load_template loads the template (the image to find) from disk using OpenCV's cvLoadImage, so it is stored in an IplImage in BGR order. But in gst_templatematch_chain, no OpenCV conversion functions are used: the imageData pointer of the IplImage for the video frame (the image to search in) is just set to point to the raw buffer data. Without this fix, that raw data is in RGB order, so the call to cvMatchTemplate ends up comparing the template's Blue channel against the frame's Red channel, producing very poor results. 2014-07-28 13:10:35 -0300 Thiago Santos * ext/opencv/gsttemplatematch.c: templatematch: mark pads as proxy caps Allows negotiation to happen properly 2012-06-25 20:37:01 +0100 William Manley * ext/opencv/gsttemplatematch.c: templatematch: Produce a warning message if we can't load a template image 2012-06-20 15:22:52 +0100 William Manley * ext/opencv/gsttemplatematch.c: templatematch: Match rectangle grows redder with increased match certainty This is useful for debugging your matches as it indicates how certain the match was in addition to its position. 2012-06-20 15:05:40 +0100 William Manley templatematch: Allow changing template property on the fly Previously changing the template property resulted in an exception thrown from cvMatchTemplate, because "dist_image" (the intermediate match-certainty-distribution) was the wrong size (because the template image size had changed). Locking has also been added to allow changing the properties (e.g. the pattern to match) while the pipeline is playing. * gst_element_post_message is moved outside of the lock, because it will call into arbitrary user code (otherwise, if that user code calls into gst_templatematch_set_property on this same thread it would deadlock). * gst_template_match_load_template: If we fail to load the new template we still unload the previous template, so this element becomes a no-op in the pipeline. The alternative would be to keep the previous template; I believe unloading the previous template is a better choice, because it is consistent with the state this element would be in if it fails to load the very first template at start-up. Thanks to Will Manley for the bulk of this work; any errors are probably mine. 2012-06-01 16:07:34 +0100 David Rothlisberger * ext/opencv/gsttemplatematch.c: templatematch: Pass video through when nothing to match against The early return was bypassing the call to gst_pad_push. With no filter->template (and thus no filter->cvTemplateImage) the rest of this function is essentially a no-op (except for the call to gst_pad_push). This (plus the previous commit) allows templatematch to be enabled/disabled without removing it entirely from the pipeline, by setting/unsetting the template property. 2012-06-20 15:05:06 +0100 William Manley * ext/opencv/gsttemplatematch.c: templatematch: Remove no-op call to gst_templatematch_load_template We have just set filter->template to NULL, so gst_templatematch_load_template did nothing. 2014-07-08 19:18:48 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: clarify units for freq and symbol-rate 2014-07-07 18:52:20 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: add preliminary support for ISDB-T/Tb ISDB-T and ISDB-Tb (the Brazilian variant) are the terrestial DTV standards used by Japan, Philippines, Maldives, Thailand, most South American countries and Botswana. Changeset adds the set of previously missing (and required) ISDB-T parameters, adapter and frontend setup logic and proxies the new properties on dvbbasebin. Tested to work with the live aerial broadcast by Tv Paraíba HD in Campina Grande (Brazil). https://bugzilla.gnome.org/show_bug.cgi?id=732875 2014-07-05 03:08:00 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: make slof/lof1/lof2 settable properties Allows proper tuning around high/low band boundaries when using non "standard" LNBs. Not all LNBs (Low noise block down converters) are made equal. This is particularly true for universal LNBFs, where, even though there are seemingly standard values for the local oscillator frequencies, these can vary from manufacturer to manufacturer and LNB model. Change also proxies the new LNB properties in dvbbasebin. https://bugzilla.gnome.org/show_bug.cgi?id=732818 2014-07-27 13:26:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: silence gsignal warning instance '0xblah' has no handler with id '13' 2014-07-26 13:27:51 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: do not give references to probes They are kept until the probes are removed but they will never be removed as the refcount of the element won't get to 0 because the probes own references (cyclic refs). As the probes should only be running as long as the element is running there is no need to secure a ref for them. Removes 3 leaked refs of wrappercamerabinsrc 2014-07-26 12:46:01 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: use gst_object_ref to make it easier to track refs Helps debugging 2014-07-26 12:38:42 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: unref request pads Do not forget to unref output-selector requested pads 2014-04-21 23:05:48 -0300 Thiago Santos * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: jpegparse: port to baseparse https://bugzilla.gnome.org/show_bug.cgi?id=728356 2014-07-24 12:25:36 +0300 Vasilis Liaskovitis * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow/11: Emit signals for mouse and key navigation events https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-07-24 12:23:03 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: glwindow: Constify string parameters to the send_*_event() functions 2014-07-24 13:05:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: remove extra argument from debug call 2014-07-07 00:20:01 +0300 Vasilis Liaskovitis * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: Add navigation interface and callbacks for GstGLWindow mouse/key signals https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-07-06 23:39:47 +0300 Vasilis Liaskovitis * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: GstGLWindow : Add mouse-event and key-event signals for navigation https://bugzilla.gnome.org/show_bug.cgi?id=703486 2014-07-23 10:25:31 +0800 Wang Xin-yu (王昕宇) * ext/gl/gstgleffects.c: * ext/gl/gstglmixer.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: gl: fix multi gl object leaks 1. fix FBO leaks in decide_allocation 2. fix texture leaks in decide_allocation and reset 3. fix texture leaks in FBO incomplete error path 2014-07-23 13:55:06 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: only flush buffers if renegotiation is needed This avoid extra overhead when taking sequential pictures that woudln't need renegotiation 2014-07-23 13:37:05 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: handle EOS on the pipeline Make camerabin handle EOS to the pipeline to allow standard pipeline close where an EOS is sent to the whole pipeline before setting it to NULL. 2014-07-21 18:22:18 +0200 Mathieu Duponchelle * gst/mpegtsdemux/tsdemux.c: tsdemux: Do not scan for keyframe when in push mode. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733490 2014-07-21 18:21:41 +0200 Mathieu Duponchelle * gst/mpegtsdemux/tsdemux.c: tsdemux: Do not scan for a keyframe in non-accurate mode. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733490 2014-07-01 10:24:44 -0300 Thiago Santos * gst/gdp/gstgdppay.c: gdppay: remove obsolete code Buffers have no caps in 1.0 2014-07-01 10:07:40 -0300 Thiago Santos * gst/gdp/gstgdppay.c: * gst/gdp/gstgdppay.h: * tests/check/elements/gdppay.c: gdppay: put all sticky events in streamheader Use the sticky events to compose the streamheader as they are the ones that are persisted to config new pads linked. Instead of storing them ourselves rely on the pad storage that already orders it for us https://bugzilla.gnome.org/show_bug.cgi?id=732596 2014-07-21 21:03:26 +0200 Nicola Murino * ext/opencv/gstfacedetect.c: facedetect: improve enum GstFaceDetectUpdates descriptions https://bugzilla.gnome.org/show_bug.cgi?id=730509 2014-05-21 12:59:57 +0200 Nicola Murino * ext/opencv/gstfacedetect.c: facedetect: make updates on_change works as expected https://bugzilla.gnome.org/show_bug.cgi?id=730509 2014-07-22 12:42:36 +0530 Sanjay NM * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmenc.h: pnmenc: Port PNM Encoder to use GstVideoEncoder Class https://bugzilla.gnome.org/show_bug.cgi?id=731943 2014-06-18 11:44:54 +0530 Sanjay NM * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmutils.c: pnmdec: Patch to handle max value Convert the image values from 0-maxvalue to 0-255 when 'decoding' the pnm image https://bugzilla.gnome.org/show_bug.cgi?id=731773 2014-07-15 16:42:57 -0300 Thiago Santos * ext/kate/gstkatedec.c: * ext/kate/gstkateutil.c: katedec: handle segment event earlier Delaying the segment event to when caps are decided can cause issues as the first thing katedec does on its chain function it doing a segment clip. It will lead to an assertion if the segment format is undefined https://bugzilla.gnome.org/show_bug.cgi?id=733226 2014-07-15 16:41:51 -0300 Thiago Santos * ext/kate/gstkatedec.c: katedec: handle streamheaders in caps Properly handle the caps event by configuring the kate decoding lib using the available streamheaders. This makes it possible to decode kate subtitles when the stream is seeked before katedec gets the initial buffers that are usually the streamheaders. https://bugzilla.gnome.org/show_bug.cgi?id=733226 2014-07-21 17:34:52 +0200 Sebastian Dröge * configure.ac: openjpeg: Don't remember -lopenjp2 as libs when falling back to openjpeg1 2014-07-21 11:07:28 +0000 Руслан Ижбулатов * tests/examples/gl/sdl/Makefile.am: gl: Reorder CFLAGS to include in-source dirs first in examples https://bugzilla.gnome.org/show_bug.cgi?id=733426 2014-05-06 09:28:14 +0000 Руслан Ижбулатов * configure.ac: openjpeg: Win32-compatible OpenJPEG-2.0 detection OpenJPEG 2.0 API uses stdcall on W32 by default. This prevents normal autoconf library macros from finding its functions. A more compatible check is to acutally link a program that includes a real header. https://bugzilla.gnome.org/show_bug.cgi?id=733487 2014-07-21 10:14:17 +0200 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Fix unitialized variable compiler warning gstopenni2src.cpp:721:14: error: variable 'oni_ts' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] } else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ gstopenni2src.cpp:752:26: note: uninitialized use occurs here GST_BUFFER_PTS (buf) = oni_ts - src->oni_start_ts; ^~~~~~ gstopenni2src.cpp:721:10: note: remove the 'if' if its condition is always true } else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ gstopenni2src.cpp:721:14: error: variable 'oni_ts' is used uninitialized whenever '&&' condition is false [-Werror,-Wsometimes-uninitialized] } else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) { ^~~~~~~~~~~~~~~~~~~~~~ gstopenni2src.cpp:752:26: note: uninitialized use occurs here GST_BUFFER_PTS (buf) = oni_ts - src->oni_start_ts; ^~~~~~ gstopenni2src.cpp:721:14: note: remove the '&&' if its condition is always true } else if (src->color->isValid () && src->sourcetype == SOURCETYPE_COLOR) { ^~~~~~~~~~~~~~~~~~~~~~~~~ gstopenni2src.cpp:642:18: note: initialize the variable 'oni_ts' to silence this warning uint64_t oni_ts; ^ = 0 2014-07-17 16:25:54 +0200 Fabrice Bellet * gst-libs/gst/codecparsers/gstmpeg4parser.c: parser: mpeg4: fix vlc table used for sprite trajectory The vlc table members cbits, cword and values were assigned in the wrong order, causing the mpeg4 parser to fail when handling sprite trajectories. https://bugzilla.gnome.org/show_bug.cgi?id=733322 2014-07-18 15:09:54 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Make statistics message more generic for other adaptive streaming demuxers to reuse https://bugzilla.gnome.org/show_bug.cgi?id=725828 2014-02-25 11:58:57 +0100 Alexander Zallesov * ext/hls/gsthlsdemux.c: hlsdemux: Provide statistics about time to download playlists and fragments https://bugzilla.gnome.org/show_bug.cgi?id=725828 2014-07-19 18:04:42 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.4.0 === 2014-07-19 17:27:11 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.4.0 2014-07-19 16:45:25 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-07-19 12:47:43 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2014-07-16 18:27:15 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: set src to ready when there are no pending buffers Setting to ready will block waiting for buffers to be reclaimed, so flush before setting to null to make sure no buffers are pending https://bugzilla.gnome.org/show_bug.cgi?id=733072 2014-07-17 10:05:47 +0100 Tim-Philipp Müller * tests/examples/gl/gtk/fxtest/pixbufdrop.c: examples: fix compilation of gl fxtest example on win32 with Gtk+ 3.0 https://bugzilla.gnome.org/show_bug.cgi?id=733063 2014-07-17 00:11:48 +0200 Sebastian Dröge * sys/opensles/openslesringbuffer.c: openslesringbuffer: Provide the size of our array to GetDestinationOutputDeviceIDs Otherwise it does not and just fails. It needs to know the size of the array to not write too much to it. 2014-07-17 00:11:21 +0200 Sebastian Dröge * sys/opensles/openslessink.c: openslessink: Silence some error debug output to log output These are not really errors, just unsupported features we don't necessarily need. 2014-07-16 16:57:35 +0200 Mathieu Duponchelle * gst-libs/gst/base/gstaggregator.c: aggregator: Reset flow_return *after* stopping the srcpad task. Otherwise it might be set in an already running aggregate function. 2014-07-10 13:18:21 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Flush sinkpads when stopping All values are meaningless in that case, so we should make sure that we clean everything 2014-07-10 13:15:55 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Do not forget to reset the flow return when stoping Setting it to FLUSHING when the element is not started, and to OK when it starts. 2014-07-08 16:48:08 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Handle event seqnum 2014-07-13 16:07:02 +0200 Sebastian Rasmussen * gst/mxf/mxfmux.c: mxfmux: Avoid taking unnecessary ref Fixes https://bugzilla.gnome.org/show_bug.cgi?id=733123 2014-07-16 16:31:27 +0300 Mart Raudsepp * configure.ac: gl: Include GL_CFLAGS while checking for GL typedefs Otherwise those checks may fail at configure time if they contain extra include paths, while at build time they are included, potentially causing incompatible typedefs between system GL headers and gstreamer compatibility prototypes. https://bugzilla.gnome.org/show_bug.cgi?id=733248 2014-07-16 16:29:10 +0300 Mart Raudsepp * configure.ac: gl: Always include EGL_CFLAGS in GL_CFLAGS when EGL_LIBS is added to GL_LIBS They should be handled in tandem, in case any EGL provider could require some CFLAGS and set them (possibly once moved to prefer pkg-config files), such as for a custom header location. 2014-03-17 16:09:46 +0100 Piotr Drąg * po/POTFILES.in: po: update POTFILES https://bugzilla.gnome.org/show_bug.cgi?id=726555 2014-07-15 13:29:24 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Open Direct3D devices in a threadsafe way Otherwise we'll get crashes when using the device from multiple threads, e.g. when using multiple sinks at once. https://bugzilla.gnome.org/show_bug.cgi?id=707523 2014-07-11 21:15:59 +0200 Sebastian Dröge * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsshsink.c: curlsshsink: Include gst.h and other stuff before anything else 2014-07-11 10:40:42 -0400 Nicolas Dufresne * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Fix caps filter caps proxying The notify signal is triggered when caps is changed. But instead of proxying the fixed caps, we query for the caps. Hence, when we go to READY state, we endup setting template caps on the proxied caps filter instead of NULL, which leads to negoitation failure. Correctly proxy NULL caps if this is the new caps. Fixes not negotiated error when running in cheese. Also fix a leak of caps string in one of the trace. https://bugzilla.gnome.org/show_bug.cgi?id=732741 2014-07-11 13:58:55 +0200 Sebastian Dröge * ext/gl/Makefile.am: gl: Always build gstglmixer, not only when full OpenGL support is enabled 2014-07-11 13:25:37 +0200 Sebastian Dröge * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsshsink.c: curl: Use winsock2 instead and the GLib macro for checking if we're on Windows 2014-07-11 13:25:18 +0200 Sebastian Dröge * ext/opencv/MotionCells.cpp: motioncells: Use no network API if not required 2014-07-11 13:21:21 +0200 Alexey Pavlov * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsshsink.c: * ext/opencv/MotionCells.cpp: ext: Include winsock.h on Windows when required https://bugzilla.gnome.org/show_bug.cgi?id=733052 2014-07-11 12:13:22 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.3.91 2014-07-11 12:04:07 +0200 Sebastian Dröge * ext/gl/Makefile.am: * gst-libs/gst/gl/Makefile.am: gl: Link to all required libraries but not more 2014-07-11 12:01:12 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: video: Properly include headers in Makefile.am and don't set noinst_HEADERS twice. 2014-07-11 11:05:59 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-07-11 09:43:44 +0200 Sebastian Dröge * sys/applemedia/plugin.m: atdec: Change rank to MARGINAL until it can properly handle multichannel audio https://bugzilla.gnome.org/show_bug.cgi?id=727757 2014-07-11 09:41:05 +0200 Sebastian Dröge * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * ext/gl/Makefile.am: * ext/gl/gstglmixer.c: * ext/gl/gstglmixer.h: * ext/gl/gstglmixerpad.h: * ext/gl/gstglmosaic.h: * ext/gl/gstglvideomixer.h: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: gl: Move GstGLMixer to the plugin for now It depends on GstAggregator and we don't want to install headers for that yet. https://bugzilla.gnome.org/show_bug.cgi?id=732207 2014-07-11 09:33:57 +0200 Sebastian Dröge * gst-libs/gst/base/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/wayland/Makefile.am: * pkgconfig/Makefile.am: libs: Don't install headers and pc files for libgstwayland/badvideo/badbase These will disappear after 1.4.0 and it would be rather annoying if people started depending on them. https://bugzilla.gnome.org/show_bug.cgi?id=732207 2014-07-10 15:52:46 +0100 Philip Withnall * ext/opus/gstopusheader.c: opus: Fix a double-unref in the Opus header code The headers were never getting reffed when being added to the headers list, which is later unreffed-and-freed by the caller (e.g. gst_opus_parse_parse_frame()). https://bugzilla.gnome.org/show_bug.cgi?id=733013 2014-07-11 08:54:30 +0200 Sebastian Dröge * po/vi.po: po: Update translations 2014-07-10 11:29:41 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Add CAT section and CA descriptor support https://bugzilla.gnome.org/show_bug.cgi?id=732986 2014-07-10 11:24:12 +0200 Edward Hervey * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegts: Add parsing for CA descriptor (0x05) https://bugzilla.gnome.org/show_bug.cgi?id=732986 2014-07-07 11:52:18 -0400 Nicolas Dufresne * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: Flush downstream after setting src to READY v4l2src requires all buffers to come back in order to cleanly stop streaming. Flushing the pipline should force all buffers to come back. https://bugzilla.gnome.org/show_bug.cgi?id=732741 2014-07-06 11:28:34 +0200 Sebastian Rasmussen * tests/icles/dccp/call/DCCPClient.c: * tests/icles/dccp/call/DCCPServer.c: tests/icles/dccp: Release reference to parent Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732977 2014-07-09 15:03:42 -0400 Nicolas Dufresne * ext/gl/gstglimagesink.c: glimagesink: Keep aspect ratio by default The expected default behaviour for video sink is to maintain the aspect ratio. Fix the default value to reflect this. The property default was already TRUE, but the value was not initially TRUE. 2014-07-06 01:55:50 +0200 Sebastian Rasmussen * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: No need to check for NULL before calling g_free() Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732789 2014-07-06 01:55:16 +0200 Sebastian Rasmussen * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Don't confuse slice allocator with regular one Previously selector_bytes and private_data_bytes were sometimes allocated and free using the normal allocator and sometimes using the slice allocator. Additionally prefer g_strdup() to g_memdup() for strings. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732789 2014-07-09 07:50:13 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Fix dvb linkage leaks CID #1224130 2014-07-04 14:04:47 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * tests/examples/mpegts/ts-parser.c: mpegts: use getter for egde linkage descriptor type https://bugzilla.gnome.org/show_bug.cgi?id=730914 2014-07-04 14:02:22 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: mpegts: docs: add missed *_free methods https://bugzilla.gnome.org/show_bug.cgi?id=730914 2014-06-24 19:18:56 +0200 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: fix annotation https://bugzilla.gnome.org/show_bug.cgi?id=730914 2014-07-09 07:38:38 +0200 Edward Hervey * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: Add padding to public structures Allows use to add API in the future without breaking ABI. We broke the API/ABI once between 1.2 and 1.4, let's try to avoid this in the future even if this is an unstable library. https://bugzilla.gnome.org/show_bug.cgi?id=730914 2014-07-08 15:43:32 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: mpegts: atsc: fix leak of short name 2014-07-08 14:56:13 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: fix leak of language code 2014-07-06 23:30:53 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: Fix some more the locking logic in update_src_caps We need the GST_OBJECT_LOCK only to iterate the sinkpads, nothing else. https://bugzilla.gnome.org/show_bug.cgi?id=732750 2014-07-06 22:16:48 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix broken locking in update_src_caps function We would unlock an already-unlocked mutex that we never re-locked. https://bugzilla.gnome.org/show_bug.cgi?id=732750 2014-07-06 16:17:06 +0100 Tim-Philipp Müller * gst-libs/gst/base/gstaggregator.c: aggregator: fix locking We would unlock a mutex we never locked on SEGMENT events. 2014-07-04 21:00:38 -0400 Nicolas Dufresne * ext/opencv/gstfacedetect.c: facedetect: Make cascades dir a little more portable 2014-07-04 20:55:11 -0400 Nicolas Dufresne * ext/opencv/gsthanddetect.c: * ext/opencv/gsthanddetect.h: handdetect: Use already mapped image No need to map again the image, it's already handled by the base class. 2014-07-04 20:39:49 -0400 Nicolas Dufresne * ext/opencv/gsthanddetect.c: handdetect: Move size warning in set_caps so it's called once 2014-07-04 20:33:41 -0400 Nicolas Dufresne * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: faceblur: Port to OpencvVideoFilter base class This fixes issue whit black frames when special memory, like GlMemory is in used. https://bugzilla.gnome.org/show_bug.cgi?id=732756 2014-07-04 20:31:50 -0400 Nicolas Dufresne * ext/opencv/gstopencvvideofilter.c: cvvideofilter: Don't try to make buffer writable First this is handle by base transform, hence this is a no-op, and if it wasn't it would lead to a buffer copy being leaked, and then an unreffed buffer being pushed downstream. https://bugzilla.gnome.org/show_bug.cgi?id=732756 2014-07-04 20:30:20 -0400 Nicolas Dufresne * ext/opencv/gstopencvvideofilter.c: cvvideofilter: Check buffer_map return value Check the resturn value and cleanly fail if we could not mapped the buffers. https://bugzilla.gnome.org/show_bug.cgi?id=732756 2014-07-04 03:19:42 +0200 Sebastian Rasmussen * ext/mimic/gstmimdec.c: mimdec: Print invalid fourcc in error message in hex Previously this was printed as characters which caused later processing of the error message to sometimes warn about non-UTF-8 characters. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732715 2014-07-04 03:20:22 +0200 Sebastian Rasmussen * gst/aiff/aiffparse.c: aiffparse: Print invalid fourcc in error message in hex Previously this was printed as characters which caused later processing of the error message to sometimes warn about non-UTF-8 characters. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732715 2014-07-04 17:51:58 +0200 Matthieu Bouron * configure.ac: configure: fix uninitialized variables with --disable-external https://bugzilla.gnome.org/show_bug.cgi?id=732744 2014-07-01 12:34:44 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: openni2src: Add proper clean up of OpenNI2 objects https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-01 12:18:45 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: * ext/openni2/gstopenni2src.h: openni2src: Don't embed C++ objects in our GObject Since C++ objects shoudl be properly constructed, we keep only pointers to them and manually construct them on the heap. https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-01 12:18:19 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: openni2src: Close device when stopping the stream https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-01 11:58:36 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: * ext/openni2/gstopenni2src.h: openni2src: Fix timestamping OpenNI2 makes no guarantees of timestamp starting from zero, just that it will be a millisecond timestamp. Make timestamps start from zero manually so things work correctly. https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-01 11:56:59 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: openni2src: Make the location property not be mandatory Our calls to device open already handle the unset location case (by opening any available device). https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-01 11:56:15 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: openni2src: Open device on NULL->READY https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-01 11:53:46 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: openni2src: Fix deadlock when _get_caps() is called before READY The object lock was not being dropped in the empty case. Restructured the code a bit to make this sort of error less likely. https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-01 11:51:21 +0530 Arun Raghavan * ext/openni2/gstopenni2src.cpp: openni2src: Mark element as a live source https://bugzilla.gnome.org/show_bug.cgi?id=732535 2014-07-03 19:10:26 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Always lock the D3D surfaces in write mode Locking them in readonly mode can give different stride to mapping in write mode, which then causes rendering to be broken. Happened on all (many?) NVIDIA GPUs. Thanks to voskater15@gmail.com for hinting at the problem. https://bugzilla.gnome.org/show_bug.cgi?id=712809 2014-07-03 19:05:22 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dhelpers: Swap UV planes properly for YV12 as compared to I420 If we only do it in one place colors will look funny. 2014-07-03 17:53:33 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amc: Properly integrate COLOR_QCOM_FormatYVU420SemiPlanar32m again https://bugzilla.gnome.org/show_bug.cgi?id=732683 2014-07-03 15:07:23 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: amcaudiodec: audio/mpeg is always MPEG 1 layer 3 Configuring e.g. layer 2 on such a decoder usually fails unless it additionally also accepts audio/mpeg-L2. 2014-07-03 14:15:36 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Don't dereference NULL if we have no PCR yet Can happen sometimes if the duration is requested before we received enough data with a PCR. 2014-07-03 21:39:19 +1000 Jan Schmidt * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: tsdemux: Add locking around mpegtspacketiser groups. Otherwise occasionally DURATION queries can crash, if they happen at the wrong moment. 2014-07-03 09:00:32 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: glcocoa: initalize NSApp asap when using gst-launch See https://bugzilla.gnome.org/show_bug.cgi?id=732661 2014-07-02 12:54:45 +0200 Alessandro Decina * configure.ac: * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: applemedia: enable vtdec and vtenc only on >= 10.8 where VideoToolbox is public Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=723670 2014-07-02 04:54:29 -0300 Thiago Santos * sys/applemedia/vtdec.c: vtdec: avoid segfault when output isn't configured This can help when the callback is called during/after videodecoder base class shut down https://bugzilla.gnome.org/show_bug.cgi?id=728435 2014-07-02 00:27:12 -0300 Thiago Santos * sys/applemedia/vtdec.c: vtdec: ignore the dropped flag if buffer was received Apparently there is some issue with VT that makes it mark the dropped flag even though the buffer was decoded. https://bugzilla.gnome.org/show_bug.cgi?id=728435 2014-07-02 10:31:49 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Don't leak all surfaces This was broken when disabling the buffer pool exporting. Also disable buffer pool a bit more efficient... 2014-07-02 10:01:34 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: PostMessage() takes integers as last parameters, not pointers 2014-07-02 09:59:02 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Remove unused variable 2014-07-02 17:38:13 +1000 Matthew Waters * tests/examples/gl/qt/qglwtextureshare/.gitignore: * tests/examples/gl/qt/qglwtextureshare/moc_gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare: gl/examples: gitignore generated files 2014-07-01 08:36:53 +0800 Wang Xin-yu (王昕宇) * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: gl : fix qglwtextureshare demo 2014-06-23 11:53:11 +0200 Göran Jönsson * gst/debugutils/gstwatchdog.c: watchdog: Only create a new GSource if we have a main context We can still get OOB events while stopping the watchdog element, and while stopping it we destroy the main context. Also let the GSource own a reference to the element for additional safety. https://bugzilla.gnome.org/show_bug.cgi?id=732554 2014-07-01 12:52:39 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: reset QoS on segment event https://bugzilla.gnome.org/show_bug.cgi?id=732540 2014-07-01 16:54:00 +0200 Gwenole Beauchesne * tests/check/libs/h264parser.c: tests: h264parser: add test to identify EOSEQ / EOS NALs. Check that end_of_seq() [EOSEQ] and end_of_stream [EOS] NAL units are correctly parsed and the reported NAL unit size yields 1 byte, i.e. the only NalHeaderBytes in there. https://bugzilla.gnome.org/show_bug.cgi?id=732553 Signed-off-by: Gwenole Beauchesne 2014-06-25 17:19:00 +0200 Gwenole Beauchesne * tests/check/elements/h264parse.c: tests: h264parse: add test for byte-stream/au output. Check that conversion to byte-stream/au formats work and that we can effectively drop broken/invalid NAL units from the resulting access unit buffer. https://bugzilla.gnome.org/show_bug.cgi?id=732203 Signed-off-by: Gwenole Beauchesne 2014-06-25 18:47:55 +0200 Gwenole Beauchesne * tests/check/elements/h264parse.c: tests: h264parse: check SEI buffering_period() message is output. If an SEI NAL unit with a buffering_period() message is inserted between an SPS and PPS NAL unit, check that the output buffer still contain it. i.e. make sure that this SEI message is not dropped. https://bugzilla.gnome.org/show_bug.cgi?id=732156 Signed-off-by: Gwenole Beauchesne 2014-06-26 09:44:26 +0200 Gwenole Beauchesne * gst/videoparsers/gsth264parse.c: h264parse: fix collection of access units to preserve config headers. Always use a GstAdapter when collecting access units (alignment="au") in either byte-stream or avcC format. This is required to properly preserve config headers like SPS and PPS when invalid or broken NAL units are subsequently parsed. More precisely, this fixes scenario like: where we used to reset the output frame buffer when an invalid or broken NAL is parsed, i.e. SPS and PPS NAL units were lost, thus preventing the next slice unit to be decoded, should this also represent any valid data. https://bugzilla.gnome.org/show_bug.cgi?id=732203 Signed-off-by: Gwenole Beauchesne 2014-06-25 13:14:10 +0200 Gwenole Beauchesne * gst/videoparsers/gsth264parse.c: h264parse: improve conditions for skipping NAL units. Carefully track cases when skipping broken or invalid NAL units is necessary. In particular, always allow NAL units to be processed and let that gst_h264_parse_process_nal() function decide on whether the current NAL needs to be dropped or not. This fixes parsing of streams with SEI NAL buffering_period() message inserted between SPS and PPS, or SPS-Ext NAL following a traditional SPS NAL unit, among other cases too. Practical examples from the H.264 AVC conformance suite include alphaconformanceG, CVSE2_Sony_B, CVSE3_Sony_H, CVSEFDFT3_Sony_E when parsing in stream-format=byte-stream,alignment=au mode. https://bugzilla.gnome.org/show_bug.cgi?id=732203 Signed-off-by: Gwenole Beauchesne 2014-06-25 11:06:41 +0200 Gwenole Beauchesne * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: introduce new state tracking variables. Improve parser state tracking by introducing new flags reflecting it: "got-sps", "got-pps" and "got-slice". This is an addition for robustness purposes. Older have_sps and have_pps variables are kept because they have a different meaning. i.e. they are used for deciding on when to submit updated caps or not, and rather mean "have new SPS/PPS to be submitted?" Signed-off-by: Gwenole Beauchesne 2014-06-24 13:55:13 +0200 Gwenole Beauchesne * gst/videoparsers/gsth264parse.c: h264parse: fix and optimize NAL collection function. Use gst_h264_parser_identify_nalu_unchecked() to identify the next NAL unit. We don't want to parse the full NAL unit, but only the header bytes and possibly the first RBSP byte for identifying the first_mb_in_slice syntax element. Also fix check for failure when returning from that function. The only success condition for that is GST_H264_PARSER_OK, so use it. https://bugzilla.gnome.org/show_bug.cgi?id=732154 Signed-off-by: Gwenole Beauchesne 2014-07-01 16:09:28 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: clarifications and documentation fixes. Fix documentation for GstH264NalUnit. The @ref_idc part was totally unbalanced. Also add a note about @offset and @size fields to remind that this is relative to the start of the NAL unit, thus including the header bytes. 2014-07-01 15:46:17 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix identification of EOSEQ and EOS NALs. An end_of_seq() [EOSEQ] or end_of_stream() [EOS] NAL unit is really one byte long because this shall include the NalHeaderBytes (1) too. The NALU.offset starts from the first byte of the header. This is the proper fix to commit d37f842. In practice, this fixes parsing of FRExt1_Panasonic_D and FRExt2_Panasonic_C, that include additional frames after an EOSEQ. https://bugzilla.gnome.org/show_bug.cgi?id=732553 Signed-off-by: Gwenole Beauchesne 2014-06-27 12:24:49 +0200 Jan Alexander Steffens (heftig) * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Report limited bandwidth Makes uridecodebin treat this source as a stream source, allowing timeshifting. https://bugzilla.gnome.org/show_bug.cgi?id=732335 2014-07-01 10:03:05 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * tests/check/libs/mpegts.c: mpegts: Expose GstMpegtsDescriptor free function Nothing earth shattering, but avoids people having to use g_boxed_free() 2014-06-30 19:15:01 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: eagl: Disable usage of R and RG textures on iOS They don't work currently and just render zeroes, while the fallback code path with LUM and LUM_ALPHA textures still works. https://bugzilla.gnome.org/show_bug.cgi?id=732390 2014-06-30 11:54:41 -0300 Thiago Santos * ext/opencv/gstfaceblur.c: faceblur: release the haar cascade 2014-06-30 12:22:07 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: * tests/check/libs/aggregator.c: aggregator: Avoid destroying sources we do not own + Unref the maincontext in a new dispose function + Make sure to remove all sources on dispose https://bugzilla.gnome.org/show_bug.cgi?id=732445 2014-06-16 12:35:13 +0200 Matthieu Bouron * sys/applemedia/vtenc.c: vtenc: fix memory leak The pixel buffer release callback is called if the void * dataPtr given to the CVPixelBufferCreateWithPlanarBytes is not NULL. According to the documentation dataPtr is supposed to be a "plane description block" but no specific type is given. https://bugzilla.gnome.org/show_bug.cgi?id=711847 2014-06-30 00:22:22 +0200 Sebastian Dröge * ext/opencv/gstsegmentation.cpp: segmentation: Release memory storage in finalize 2014-06-30 00:18:20 +0200 Sebastian Dröge * ext/opencv/gsttextoverlay.c: textoverlay: Release memory storage and resize image when caps change 2014-06-30 00:15:38 +0200 Sebastian Dröge * ext/opencv/gsttemplatematch.c: templatematch: Release cvImages when reloading templates are changing caps 2014-06-30 00:12:26 +0200 Sebastian Dröge * ext/opencv/gstpyramidsegment.c: pyramidsegment: Release image when changing caps or reusing the element 2014-06-30 00:09:28 +0200 Sebastian Dröge * ext/opencv/gsthanddetect.c: handdetect: Release memory storage 2014-06-30 00:07:22 +0200 Sebastian Dröge * ext/opencv/gstfaceblur.c: faceblur: Release memory storage And also release cvImages and memory storage when changing caps or reusing the element. 2014-06-30 00:05:53 +0200 Sebastian Dröge * ext/opencv/gstedgedetect.c: edgedetect: Don't leak cvImages when caps are changing or the element is reused 2014-06-29 23:42:52 +0200 Sebastian Dröge * ext/opencv/gstpyramidsegment.c: pyramidsegment: Release memory storage when finalizing 2014-06-29 23:33:20 +0200 Sebastian Dröge * ext/schroedinger/gstschroenc.c: schroenc: Remove obsolete FIXME comment 2014-06-29 23:31:50 +0200 Sebastian Dröge * ext/schroedinger/gstschroenc.c: schroenc: Don't leak all input buffers 2014-06-29 23:22:13 +0200 Sebastian Dröge * tests/check/elements/h264parse.c: h264parse: Fix memory leak in unit test 2014-06-29 22:30:56 +0200 Sebastian Dröge * ext/opencv/gsttextoverlay.c: textoverlay: Free text buffer in finalize 2014-06-29 22:26:47 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Chain up to the parent class' finalize function 2014-06-29 22:25:43 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Make sure to always unref the display Even if we didn't create a context yet. 2014-06-29 22:20:51 +0200 Sebastian Dröge * gst/inter/gstintersubsrc.c: * gst/inter/gstintersubsrc.h: intersubsrc: basesrc is already creating a pad for us, no need to do it twice 2014-06-29 22:18:41 +0200 Sebastian Dröge * gst/yadif/gstyadif.c: * gst/yadif/gstyadif.h: yadif: basetransform is creating pads for us already, don't do it twice 2014-06-29 21:57:32 +0200 Sebastian Dröge * tests/check/libs/gstglupload.c: glupload: Fix memory leak in unit test 2014-06-29 21:53:21 +0200 Sebastian Dröge * tests/check/libs/gstglcontext.c: glcontext: Fix memory leaks in unit test 2014-06-29 21:34:50 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * tests/check/libs/mpegts.c: mpegts: Fix memory leaks in the test and the library Currently uses g_boxed_free() in the unit test, this needs to be fixed properly when cleaning up the API. https://bugzilla.gnome.org/show_bug.cgi?id=730914 2014-06-29 21:05:27 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Make static caps actually static Otherwise we leak once caps instance on every function call. 2014-06-29 21:01:39 +0200 Sebastian Dröge * sys/uvch264/gstuvch264_src.c: uvch264src: Free property strings when disposing the instance 2014-06-29 20:58:40 +0200 Sebastian Dröge * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: intersubsink/src: Free channel string when finalizing the instance 2014-06-29 20:13:10 +0200 Sebastian Dröge * sys/uvch264/gstuvch264_src.c: uvch264src: Fix compiler warning when compiling with G_DISABLE_ASSERT 2014-06-29 20:11:58 +0200 Sebastian Dröge * gst/videoparsers/gstvc1parse.c: vc1parse: Fix compiler warnings when compiling with G_DISABLE_ASSERT 2014-06-28 23:26:23 +0200 Sebastian Dröge * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatespu.c: * ext/kate/gstkateutil.c: kate: Use G_GSIZE_FORMAT instead of unportable %zu 2014-06-28 17:02:24 +0200 Sebastian Dröge * gst-libs/gst/video/bad-video-orc-dist.c: * gst-libs/gst/video/bad-video-orc-dist.h: badvideo: Update dist generated ORC files 2014-06-28 17:01:52 +0200 Sebastian Dröge * gst-libs/gst/video/bad-video-orc.orc: * gst-libs/gst/video/gstcms.c: * gst-libs/gst/video/gstcms.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/videoconvert.c: * gst-libs/gst/video/videoconvert.h: badvideo: Rename videoconvert functions to prevent conflicts with static linking https://bugzilla.gnome.org/show_bug.cgi?id=728443 2014-06-28 11:20:43 -0300 Thiago Santos * tests/check/libs/aggregator.c: tests: aggregator: fix various leaks in the tests 2014-06-28 09:43:48 -0300 Thiago Santos * tests/check/elements/compositor.c: compositor: tests: Fix pad leak Remember to unref requested pad 2014-06-28 09:35:21 -0300 Thiago Santos * gst/dataurisrc/gstdataurisrc.c: dataurisrc: fix leak as gst_buffer_replace adds its own ref So unref the buffer after that otherwise it leaks 2014-06-28 09:34:05 -0300 Thiago Santos * gst-libs/gst/base/gstaggregator.c: aggregator: always store or unref the buffer on the _chain function Otherwise it leaks, and it is very common to go to flushing when the pipeline is stopping, leaking a buffer. 2014-06-28 09:32:32 -0300 Thiago Santos * gst-libs/gst/base/gstaggregator.c: aggregator: always unref the buffer on _finish function Otherwise the user doesn't know if it was unref'd or not 2014-06-28 09:31:55 -0300 Thiago Santos * gst-libs/gst/base/gstaggregator.c: aggregator: add dispose/finalize functions Add functions to be able to cleanup the mutex/cond and pending buffers on the aggregator and on its pad === release 1.3.90 === 2014-06-28 11:30:39 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.3.90 2014-06-28 11:27:15 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-06-28 10:43:43 +0200 Sebastian Dröge * gst/inter/gstinteraudiosrc.c: interaudiosrc: Fail in set_caps() if the caps can't be parsed 2014-06-27 17:35:32 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: fix caps leak in test The gst_query_set_caps_result doesn't take ownership of caps 2014-06-27 17:27:25 -0300 Thiago Santos * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: fix caps leaks Fix leak of caps event and of caps objects when setting caps on sink and src pads 2014-06-27 17:00:03 -0300 Thiago Santos * ext/kate/gstkateutil.c: kate: unref events when freeing events list Instead of just feeing the queue structs 2014-06-27 16:58:47 -0300 Thiago Santos * ext/kate/gstkateenc.c: kateenc: fix segment event leak gst_event_replace increments the refcount 2014-06-27 12:50:02 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: mpegts: atsc: avoid calling g_convert with 0-sized input Avoids an assertion. The cached string will be assigned an empty string as its value when size is 0. 2014-06-27 10:53:20 +0200 Gwenole Beauchesne * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: * win32/common/libgstcodecparsers.def: codecparsers: h264: fix memory leak in GstH264PPS. The gst_h264_parse_pps() function dynamically allocates the slice group ids map array, so that needs to be cleared before parsing a new PPS NAL unit again, or when it is no longer needed. Likewise, a clean copy to the internal NAL parser state needs to be performed so that to avoid a double-free corruption. https://bugzilla.gnome.org/show_bug.cgi?id=707282 Signed-off-by: Gwenole Beauchesne 2014-06-26 17:18:47 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: fix typo in GstH264VUIParams description. 2014-01-31 17:07:42 +0100 Aurélien Zanelli * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: codecparsers: h264: add support for Recovery Point SEI message. The recovery point SEI message helps a decoder in determining if the decoding process would produce acceptable pictures for display after the decoder initiates random access or after the encoder indicates a broken link in the coded video sequence. This is not used in the h264parse element, but it could help debugging. https://bugzilla.gnome.org/show_bug.cgi?id=723380 2014-03-25 12:01:55 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/codecparsers/nalutils.h: codecparsers: h264: add nal_reader_skip_long() helper. Add nal_reader_skip_long() helper function to allow an arbitrary number of bits to be skipped. The former nal_reader_skip() function is too limited to the actual cache size. Use this new function to simplify gst_h264_parser_parse_sei_message() default case, that skips unsupported payloads. v2: made args consistent from header to source file. Signed-off-by: Gwenole Beauchesne 2014-06-27 00:09:08 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix a refcount error when keeping the buffer We take a ref on the pad's buffer at the beginning so we need to unref when we are done in all cases. 2014-06-26 15:59:35 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvp8rangedecoder.c: codecparsers: vp8: move up built-in range decoder private data. Use the first _gst_reserved[] slot to hold the built-in range decoder private data. The first slot was formerly the buffer size, which was then promoted to semi-public namespace when it got integrated as git commit 2940ac6. Signed-off-by: Gwenole Beauchesne 2014-06-26 11:25:37 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: free pixel swizzling information 2014-06-26 11:15:56 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: glmixer: remove redundant/unused lock Use the GstObject lock instead 2014-06-26 11:12:49 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: remove redundant creation and free of GPtrArrays Also plugs a memory leak 2014-06-26 10:54:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: plug a memory leak for the caps gst_query_set_caps_result() takes a ref on the caps 2014-06-26 10:53:16 +1000 Matthew Waters * gst-libs/gst/base/gstaggregator.c: aggregator: plug a memory leak of the srccaps 2014-06-26 10:31:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: intersect with the filtercaps if available 2014-06-26 10:30:41 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: gl: update gles2 compatability header 2014-06-25 14:50:05 +0200 Edward Hervey * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camutils.c: * sys/dvb/camutils.h: * sys/dvb/dvbbasebin.c: * tests/check/libs/mpegts.c: * tests/examples/mpegts/ts-parser.c: mpegts: Unify API : GstMpegts / gst_mpegts_ / GST_*_MPEGTS_ It was previously a mix and match of both variants, introducing just too much confusion. The prefix are from now on: * GstMpegts for structures and type names (and not GstMpegTs) * gst_mpegts_ for functions (and not gst_mpeg_ts_) * GST_MPEGTS_ for enums/flags (and not GST_MPEG_TS_) * GST_TYPE_MPEGTS_ for types (and not GST_TYPE_MPEG_TS_) The rationale for chosing that is: * the namespace is shorter/direct (it's mpegts, not mpeg_ts nor mpeg-ts) * the namespace is one word under Gst * it's shorter (yah) 2014-06-25 14:13:55 +0200 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegtssection: Free data in error cases Data is marked as "transfer full", if we have an error we need to free it. 2014-06-25 22:05:37 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: pass through the allocation query when in passthrough mode Otherwise two GL elements on either side will fail to use the same GL context. 2014-06-25 21:50:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: glfilter: prefer passthrough for non-sysmem caps 2014-06-25 18:23:52 +1000 Matthew Waters * ext/gl/Makefile.am: * ext/gl/gstglfiltershader.c: * ext/gl/gstopengl.c: glshader: enable glshader on GLES2 2014-06-24 19:37:17 +0100 Julien Isorce * ext/gl/gstglcolorscale.c: glcolorscale: do passthrough on same caps See https://bugzilla.gnome.org/show_bug.cgi?id=732178 2014-06-24 19:35:01 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: handle NULL decide_query which means passthrough See https://bugzilla.gnome.org/show_bug.cgi?id=732178 2014-06-24 19:23:01 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: prepend intersection to src caps Prefer to stay in the same memory space if possible. Also it let a chance to do passthrough. See https://bugzilla.gnome.org/show_bug.cgi?id=732178 2014-06-22 13:14:27 +0100 Julien Isorce * ext/gl/Makefile.am: * ext/gl/gstglvideomixer.c: * ext/gl/gstopengl.c: gl: enable glvideomixer on GLES2 2014-06-24 22:15:53 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.h: dvbsrc: add copyright/license stub to header 2014-06-24 20:52:54 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: documentation fixes 2014-06-25 12:00:34 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: bas output width/height on the pad properties Allows automatic negotiation of the size in the following case: gst-launch-1.0 glvideomixer name=m sink_0::xpos=0 sink_1::xpos=320 ! glimagesink \ videotestsrc ! m. \ videotestsrc pattern=1 ! m. https://bugzilla.gnome.org/show_bug.cgi?id=731878 2014-06-25 10:18:48 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: don't clobber already allocated shader 2014-06-24 16:32:22 +0200 Sebastian Rasmussen * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlsftpsink.c: curls?ftpsink: Fix memory leaks due to new error handling Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732174 2014-06-24 16:04:57 +0200 Edward Hervey * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: More doc fixes Still not done :( 2014-06-24 15:41:36 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: more annotation fixes 2014-06-01 10:44:23 +0200 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst/mpegtsdemux/tsdemux.c: * tests/examples/mpegts/ts-parser.c: mpegts: change to GType and from gchar[] to gchar* https://bugzilla.gnome.org/show_bug.cgi?id=730914 2014-06-24 23:51:24 +1000 Matthew Waters * ext/gl/gstopengl.c: gl: XInitThreads when env variable is set This is too allow gst-launch debugging with multiple GL contexts as well as avoiding segfaulting innocent gtk+ apps that have not called XInitThreads. https://bugzilla.gnome.org/show_bug.cgi?id=731525 2014-06-24 23:33:30 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl: add a scary note about initializing thread support for the winsys We cannot do it as the winsys may crash if we initialize too late. Example, GLX contexts with Intel drivers: Intel requires the X Display to be the same in order to share GL resources across GL contexts. These GL contexts are generally accessed from different threads. Without winsys support it is nearly impossible to guarentee that concurrent access will not occur. This concurrent access could result in crashes or abortion by the winsys (xcb). https://bugzilla.gnome.org/show_bug.cgi?id=731525 2014-06-24 14:05:14 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * tests/check/libs/mpegts.c: mpegts: Fix descriptor_from_dvb_service Various leaks/overwrites issues 2014-06-24 13:46:17 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstperspective.c: all: Don't declare variables in 'for' loops 2014-06-24 11:27:15 +0200 Sebastian Dröge * gst-libs/gst/base/Makefile.am: badbase: Use the correct LDFLAGS for creating libraries Otherwise we won't e.g. create .dlls on Windows 2014-06-24 08:01:21 +0200 Edward Hervey * gst/compositor/Makefile.am: compositor: Fix Makefile CFLAGS/LIBADD ordering We want to use the libraries from -bad if/when present 2014-06-23 20:44:23 +0200 Eric Trousset * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: d3dvideosink: Release D3D surfaces when shutting down the sink https://bugzilla.gnome.org/show_bug.cgi?id=726026 2014-06-23 20:33:54 +0200 Sebastian Dröge * sys/opensles/openslessrc.c: openslessrc: Classification of the element factory should be Source/ not Src/ https://bugzilla.gnome.org/show_bug.cgi?id=727811 2014-06-23 22:40:23 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: don't clobber already heap allocated video frame CID # 1223440 2014-06-23 22:36:23 +1000 Matthew Waters * gst-libs/gst/video/gstvideoaggregator.c: videoaggregator: fix up the parent chaining for dispose and finalize 2014-06-23 21:43:10 +1000 Matthew Waters * gst-libs/gst/gl/gstgluploadmeta.c: gluploadmeta: reenable GLMemory upload path 2014-06-22 23:39:14 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix diseqc-source prop name in example 2014-06-22 21:04:45 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix nit on warning message 2014-06-22 22:04:31 +0100 Tim-Philipp Müller * configure.ac: configure: use $ERROR_CFLAGS instead of hard-coding -Werror https://bugzilla.gnome.org//show_bug.cgi?id=731692 2014-06-15 21:15:51 +0200 Koop Mast * configure.ac: configure: use -Werror to make the include GL and GLES2 header check guaranteed fatal Clang will only give a warning for the redefinition of typedef GLenum. Since master is build with -Werror this will result in a build failure later in the gl plugin. Add -Werror to the test, so the test result is as expected. This will allow the gl plugins to build. https://bugzilla.gnome.org//show_bug.cgi?id=731692 2014-06-17 14:23:43 +0100 Chris Bass * gst/videoparsers/gsth265parse.c: h265parse: fix hvcC size check In ISO/IEC 14496-15, the minimum size of a HEVCDecoderConfigurationRecord (i.e., the contents of a hvcC box) is 23 bytes. However, the code in h265parse checks that the size of this data is not less than 28 bytes, and it refuses to accept caps if the check fails. The result is that standards-conformant streams that don't carry any parameter sets in their hvcC boxes won't play. https://bugzilla.gnome.org//show_bug.cgi?id=731783 2014-06-19 20:15:05 +0200 Koop Mast * ext/modplug/Makefile.am: modplug: don't hardcode c++ standard library Fixes build with llvm on FreeBSD. https://bugzilla.gnome.org//show_bug.cgi?id=731930 2014-06-22 19:36:14 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.3.3 === 2014-06-22 19:22:28 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-libs/gst/video/bad-video-orc-dist.c: * gst-plugins-bad.doap: * gst/compositor/compositororc-dist.c: * win32/common/config.h: Release 1.3.3 2014-06-22 19:09:43 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-06-22 18:58:51 +0200 Sebastian Dröge * ext/gl/Makefile.am: gl: Need to link to new badvideo library for the video aggregator base class 2014-06-22 18:51:45 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: video: Link with $(LIBM) for rint() and others 2014-06-22 14:25:42 +0200 Sebastian Dröge * po/da.po: * po/de.po: * po/hu.po: * po/id.po: * po/nl.po: * po/pl.po: * po/ru.po: * po/sr.po: * po/uk.po: po: Update translations 2014-06-20 08:20:55 -0600 Thomas Bluemel * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Fix decrypting fragments Only reset the decryption engine on the first buffer of a fragment, not again for the second buffer. This fixes corrupting the second buffer of a fragment. https://bugzilla.gnome.org/show_bug.cgi?id=731968 2014-06-22 14:12:43 +0200 Sebastian Dröge * gst/rawparse/gstrawparse.c: rawparse: Use the pad passed to us directly for default event handling 2014-06-19 17:24:26 +0900 Justin Joy * gst/rawparse/gstrawparse.c: rawparse: default query should be forward on target pad https://bugzilla.gnome.org/show_bug.cgi?id=731899 2014-06-22 12:32:35 +0100 Tim-Philipp Müller * gst/mpegtsdemux/tsdemux.c: tsdemux: fix up comment 2014-06-22 09:44:24 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h: * gst-libs/gst/gl/gstglapi.h: gl: move gles2 compat header to glprototypes 2014-06-22 09:36:34 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: glbufferpool: provide a consistent API regardless of platform 2014-06-22 09:22:23 +1000 Matthew Waters * gst-libs/gst/gl/gl.h: gl: mark library as API unstable 2014-06-21 16:57:34 +0200 Thibault Saunier * gst-libs/gst/uridownloader/gsturidownloader.h: libs:uridownloader: Properly declare APIs as UNSTABLE 2014-06-21 16:52:51 +0200 Thibault Saunier * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstvideoaggregator.h: libs:video: Properly declare APIs as UNSTABLE 2014-06-21 16:51:01 +0200 Thibault Saunier * gst-libs/gst/base/Makefile.am: * gst-libs/gst/base/gstaggregator.h: libs:base: Properly declare APIs as UNSTABLE 2014-06-21 16:57:18 +0200 Sebastian Dröge * ext/wayland/gstwaylandsink.c: waylandsink: Fix compiler warning gstwaylandsink.c:480:14: error: comparison of constant -1 with expression of type 'enum wl_shm_format' is always false [-Werror,-Wtautological-constant-out-of-range-compare] if (format == -1) ~~~~~~ ^ ~~ 2014-06-21 16:55:05 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Update comments to the new reality and remove unused variables 2014-06-21 15:40:58 +0200 Thibault Saunier * gst-libs/gst/video/Makefile.am: libs:video: Add -I$(top_srcdir)/gst-libs to fix distcheck 2014-06-21 15:26:14 +0200 Thibault Saunier * gst-libs/gst/base/Makefile.am: libs:base: Fix includedir 2014-06-21 13:45:13 +0200 Thibault Saunier * gst-libs/gst/base/gstaggregator.c: aggregator: Fix requested pad name 2014-06-20 22:02:07 +0200 Thibault Saunier * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregatorpad.h: libs: videoaggregato: Do not import videoconvert.h in gstvideoaggregatorpad.h + Add a Private structure to the GstVideoAggregatorPad + Add some padding 2014-06-20 21:18:58 +0200 Thibault Saunier * gst-libs/gst/video/Makefile.am: Final fix compilation 2014-06-20 20:11:07 +0100 Tim-Philipp Müller * Makefile.am: build: remove gst-libs/gst/video/ from CRUFT_DIRS It was gone, but now it's back. 2014-06-20 20:23:30 +0200 Thibault Saunier * gst-libs/gst/video/Makefile.am: libs:video:Fix compilation 2014-06-20 11:10:45 +0200 Thibault Saunier * ext/gl/gstglvideomixer.c: gl:glvideomixer: Add the Compositor in the element metadata class So it is possible to pick one compositing element from the registry 2014-05-22 19:46:02 +0200 Mathieu Duponchelle * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/compositor/Makefile.am: * gst/compositor/blend.c: * gst/compositor/blend.h: * gst/compositor/blendorc.h: * gst/compositor/compositor.c: * gst/compositor/compositor.h: * gst/compositor/compositororc-dist.c: * gst/compositor/compositororc-dist.h: * gst/compositor/compositororc.orc: * gst/compositor/compositorpad.h: * tests/check/Makefile.am: * tests/check/elements/compositor.c: compositor: Add a new compositor based on the new GstVideoAggregator base class It is a replacement for videomixer with a similare API Co-Authored by: Thibault Saunier https://bugzilla.gnome.org/show_bug.cgi?id=731919 2014-06-10 11:26:53 +0200 Thibault Saunier * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: gl: Port glmixer to the GstVideoAggregator baseclass https://bugzilla.gnome.org/show_bug.cgi?id=731921 2014-06-03 19:00:34 +0200 Mathieu Duponchelle * configure.ac: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/bad-video-orc-dist.c: * gst-libs/gst/video/bad-video-orc-dist.h: * gst-libs/gst/video/bad-video-orc.orc: * gst-libs/gst/video/gstcms.c: * gst-libs/gst/video/gstcms.h: * gst-libs/gst/video/gstvideoaggregator.c: * gst-libs/gst/video/gstvideoaggregator.h: * gst-libs/gst/video/gstvideoaggregatorpad.h: * gst-libs/gst/video/videoconvert.c: * gst-libs/gst/video/videoconvert.h: * pkgconfig/gstreamer-bad-video-uninstalled.pc.in: * pkgconfig/gstreamer-bad-video.pc.in: videoaggregator: Create a new GstVideoAggregator baseclass This base class has been added to a newly created libgstbadvideo library Co-Authored by: Thibault Saunier https://bugzilla.gnome.org/show_bug.cgi?id=731918 2014-05-22 19:44:37 +0200 Thibault Saunier * configure.ac: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/Makefile.am: * gst-libs/gst/base/Makefile.am: * gst-libs/gst/base/gstaggregator.c: * gst-libs/gst/base/gstaggregator.h: * pkgconfig/gstreamer-bad-base-uninstalled.pc.in: * pkgconfig/gstreamer-bad-base.pc.in: * tests/check/Makefile.am: * tests/check/libs/aggregator.c: aggregator: Add new GstAggregator base class This base class has been added to a newly created libgstbadbase library Co-Authored by: Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=731917 2014-06-20 14:59:12 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Clear exceptions also when we did not provide a GError 2014-06-19 11:26:41 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Also don't report warnings for queue/dequeue errors during flushing in error cases ... and fix a case where we released an invalid buffer index. 2014-06-19 11:15:56 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Don't consider input buffer queueing failures as an error during flushing 2014-06-19 11:12:47 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Clean up flushing code and don't consider output buffer releasing failures during flushing as an error 2014-06-19 09:57:25 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Include the debug string in the error messages we propagate from t source 2014-06-19 09:56:09 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Include the debug string in the error messages we propagate from the source 2014-06-19 09:54:10 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Include a more descriptive error message 2014-06-19 09:53:00 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Propagate error messages from the source element up in the hierarchy Instead of inventing our own generic error strings which are mostly useless. 2014-06-19 09:40:11 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Directly convert GErrors to error messages This will make sure that we don't leak debug information into the actual error message string and keep it behind the debug string. 2014-06-17 11:48:12 +0200 Miguel París Díaz * ext/srtp/gstsrtpenc.c: gstsrtpenc: unref event when needed Fixes https://bugzilla.gnome.org/show_bug.cgi?id=731768 2014-06-18 15:36:09 +0200 Wim Taymans * ext/srtp/gstsrtpenc.c: srtpenc: improve property comments Add a Note to the allow-repeat-tx property because it is potentially insecure when used incorrectly. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=731714 2014-06-13 11:15:25 +0200 Miguel París Díaz * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: gstsrtpenc: add allow-repeat-tx property 2014-05-27 12:40:09 +0200 Lubosz Sarnecki * configure.ac: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/gl/Makefile.am: * ext/gl/gstgltransformation.c: * ext/gl/gstgltransformation.h: * ext/gl/gstopengl.c: opengl: add element for transforming video geometry * add graphene as soft dependency for linear algebra 2014-06-18 10:13:10 +0100 Tim-Philipp Müller * gst/pnm/Makefile.am: pnm: link against libgstbase for GstAdapter https://bugzilla.gnome.org/show_bug.cgi?id=730523 2014-06-17 23:20:04 +1000 Matthew Waters * gst-libs/gst/gl/gstglframebuffer.c: glframebuffer: don't segfault needlessly with GLES2 gst_gl_framebuffer_use_v2 was using a function that is not available with GLES2 2014-06-16 20:36:09 +1000 Matthew Waters * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: glfiltershader: port to GLES2 Provide a time variable 2014-06-17 13:48:10 +0100 Tim-Philipp Müller * win32/common/libgstcodecparsers.def: win32: update exports for changed h264 codec parser API 2014-06-17 12:50:17 +0530 Sanjay NM * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmutils.c: pnmdec: Added PBM Support https://bugzilla.gnome.org/show_bug.cgi?id=730523 2014-06-17 13:15:06 +0100 Tim-Philipp Müller * gst-libs/gst/wayland/wayland.h: wayland: add unstable API guards to wayland library header 2014-06-17 13:11:29 +0100 Tim-Philipp Müller * gst-libs/gst/wayland/Makefile.am: gst-libs: fix uninstalled build of new wayland lib 2014-06-16 18:53:53 +0200 George Kiagiadakis * ext/wayland/wldisplay.c: waylandsink/wldisplay: verify that all the required interfaces have been found on the compositor This allows waylandsink to fail gracefully before going to READY in case one of the required interfaces does not exist. Not all interfaces are necessary for all modes of operation, but it is better imho to fail before going to READY if at least one feature is not supported, than to fail and/or crash at some later point. In the future we may want to relax this restriction and allow certain interfaces not to be present under certain circumstances, for example if there is an alternative similar interface available (for instance, xdg_shell instead of wl_shell), but for now let's require them all. Weston supports them all, which is enough for us now. Other compositors should really implement them if they don't already. I don't like the idea of supporting many different compositors with different sets of interfaces implemented. wl_subcompositor, wl_shm and wl_scaler are really essential for having a nice video sink. Enough said. 2014-06-16 18:03:51 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: remove the buffer from the surface when going PAUSED -> READY This essentially hides the video and allows the application to potentially draw a black background or whatever else it wants. This allows to differentiate the "paused" and "stopped" modes from the user's point of view. Also reworded a comment there to make my thinking more clear, since the "reason for keeping the display around" is not really the exposed() calls, as there is no buffer shown in READY/NULL anymore. 2014-06-12 17:43:40 +0200 Arnaud Vrac * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-wayland-uninstalled.pc.in: * pkgconfig/gstreamer-wayland.pc.in: wayland: install .pc file 2014-06-13 16:37:38 +0200 George Kiagiadakis * ext/wayland/wlwindow.c: waylandsink/wlwindow: do not commit a resize when it happens due to a video info change 1) We know that gst_wayland_sink_render() will commit the surface in the same thread a little later, as gst_wl_window_set_video_info() is always called from there, so we can save the compositor from some extra calculations. 2) We should not commit a resize with the new video info while we are still showing the buffer of the previous video, with the old caps, as that would probably be a visible resize glitch. 2014-06-13 16:29:32 +0200 George Kiagiadakis * ext/wayland/wlwindow.c: waylandsink/wlwindow: take into account the video aspect ratio when determining the size of the surface 2014-06-13 15:58:08 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: improve the way the video size is passed to wlwindow and also improve the code for window creation 2014-06-06 12:49:56 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * gst-libs/gst/wayland/wayland.c: * gst-libs/gst/wayland/wayland.h: waylandsink: rename pause/resume_rendering to begin/end_geometry_change and update their documentation 2014-05-29 12:27:46 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: remove the manual synchronization from pause/resume_rendering and use subsurface sync/desync Previously, in order to change the surface size we had to let the pipeline redraw it, which at first also involved re-negotiating caps, etc, so a synchronization with the pipeline was absolutely necessary. At the moment, we are using wl_viewport, which separates the surface size from the buffer size and it also allows us to commit a surface resize without attaching a new buffer, so it is enough to just do: gst_wayland_video_pause_rendering(): wl_subsurface_set_sync() gst_video_overlay_set_render_rectangle(): wl_subsurface_set_position() wl_viewport_set_destination() wl_surface_damage() wl_surface_commit() ... commit the parent surface ... gst_wayland_video_resume_rendering(): wl_subsurface_set_desync() This is enough to synchronize a surface resize and the pipeline can continue drawing independently. Now of course, the names pause/resume_rendering are bad. I will rename them in another commit. 2014-06-06 12:10:24 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: protect access to properties with the OBJECT_LOCK 2014-06-06 12:04:44 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: protect access to the display with a new display_lock Access is protected only for setting/creating/destroying the display handle. set_caps() for example is not protected because it cannot be called before changing state to READY, at which point there will be a display handle available and which cannot change by any thread at that point 2014-06-06 10:35:20 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: remove the OBJECT_LOCK from set_caps() It's not really necessary, this method is protected from GstBaseSink with the PREROLL_LOCK 2014-05-28 13:10:43 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: Replace the OBJECT_LOCK with a private render_lock to lock render operations This is because: * GST_ELEMENT_WARNING/ERROR do lock the OBJECT_LOCK and we deadlock instantly * In future commits I want to make use of GstBaseSink functions that also lock the OBJECT_LOCK inside this code 2014-05-26 14:13:56 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: move surface resizing logic to the GstWlWindow and make it be called from the main thread 2014-05-26 12:54:10 +0300 George Kiagiadakis * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: cleanup GstWlWindow a bit after the overlaying semantics change * own_surface is not needed anymore * gst_wl_window_from_surface is not used externally anymore * many initializations to 0 are not needed (GObject does them) 2014-05-26 11:34:51 +0300 George Kiagiadakis * gst-libs/gst/wayland/wayland.c: * gst-libs/gst/wayland/wayland.h: wayland: remove gst_wayland_video_set_surface_size() Not needed anymore, since we use gst_video_overlay_set_render_rectangle() 2014-05-23 18:18:32 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: create and maintain the subsurface inside the sink This means that the given surface in set_window_handle can now be the window's top-level surface on top of which waylandsink creates its own subsurface for rendering the video. This has many advantages: * We can maintain aspect ratio by overlaying the subsurface in the center of the given area and fill the parent surface's area black in case we need to draw borders (instead of adding another subsurface inside the subsurface given from the application, so, less subsurfaces) * We can more easily support toolkits without subsurfaces (see gtk) * We can get properly use gst_video_overlay_set_render_rectangle as our api to set the video area size from the application and therefore remove gst_wayland_video_set_surface_size. 2014-05-23 13:09:27 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * gst-libs/gst/wayland/wayland.c: * gst-libs/gst/wayland/wayland.h: wayland: add public API for creating & using the display handle GstContext 2014-05-21 18:27:28 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: * gst-libs/gst/wayland/wayland.h: waylandsink: get the external display handle using GstContext This drops the ugly GstWaylandWindowHandle structure and is much more elegant because we can now request the display separately from the window handle. Therefore the window handle can be requested in render(), i.e. when it is really needed and we can still open the correct display for getting caps and creating the pool earlier. This change also separates setting the wl_surface from setting its size. Applications should do that by calling two functions in sequence: gst_video_overlay_set_window_handle (overlay, surface); gst_wayland_video_set_surface_size (overlay, w, h); 2014-05-21 13:14:15 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: drop width/height arguments from gst_wl_window_new_from_surface() 2014-05-22 10:10:51 +0300 George Kiagiadakis * ext/wayland/wldisplay.h: * ext/wayland/wlvideoformat.h: * ext/wayland/wlwindow.h: waylandsink: add G_BEGIN/END_DECLS on all headers for consistency 2014-05-21 12:58:10 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: fix assertion failure when stopping immediately after starting, without displaying anything This was triggered in scenarios like filesrc location=nonexistent_file ! decodebin ! waylandsink 2014-05-21 11:55:45 +0300 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/scaler.xml: * ext/wayland/wldisplay.c: waylandsink: Update wl_scaler to version 2 2014-05-20 19:04:16 +0300 George Kiagiadakis * gst-libs/gst/wayland/Makefile.am: wayland/Makefile.am: link with gstvideo to avoid introspection errors 2014-05-20 19:03:39 +0300 George Kiagiadakis * ext/wayland/Makefile.am: waylandsink/Makefile.am: Fix scaler-client-protocol.h generation 2014-03-13 13:13:08 +0200 George Kiagiadakis * ext/wayland/wlvideoformat.c: * ext/wayland/wlvideoformat.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: remove unused functions 2014-03-12 19:25:06 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: Add myself to the authors list 2014-03-12 17:03:10 +0200 George Kiagiadakis * ext/wayland/wldisplay.c: waylandsink/wldisplay: bind to the latest available wl_compositor version 2014-03-12 14:28:44 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: create/destroy the display when entering/leaving the READY state instead of PAUSED This is the only way to get the negotiation working with the dynamic detection of formats from the display, because the pipeline needs to know the supported formats in the READY state and the supported formats can only be known if we open the display. Unfortunately,in wayland we cannot have a separate connection to the display from the rest of the application, so we need to ask for a window handle when going to READY in order to get the display from it. And since it's too early to create a top level window from the state change to READY, create it in render() when there is no other window. This also changes set_window_handle() to not support window handle changes in PAUSED/PLAYING (because it's complex to handle and useless in practice) and make sure that there is always a valid display pointer around in the READY state. 2014-03-12 14:13:49 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: Support all video formats supported by the display 2014-03-12 13:54:44 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: fix crash in case there is no pool because of a caps negotiation error 2014-03-11 19:47:52 +0200 George Kiagiadakis * ext/wayland/wlwindow.c: waylandsink: set an empty input region on the video surface 2014-03-11 19:46:56 +0200 George Kiagiadakis * ext/wayland/wlwindow.c: waylandsink/wlwindow: reuse code between the two constructors 2014-03-11 18:45:23 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: increase debug messages 2014-03-11 17:48:46 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: Use a boolean in combination with render_cond to comply with GCond's usage documentation 2014-03-11 17:45:05 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: Implement expose() and handle resizing properly in non-PLAYING states 2014-03-11 13:14:00 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: Use wl_scaler/wl_viewport to scale the surface in the compositor/hardware 2014-03-11 13:05:56 +0200 George Kiagiadakis * configure.ac: * ext/wayland/.gitignore: * ext/wayland/Makefile.am: * ext/wayland/scaler.xml: waylandsink: Build bindings for the unstable wl_scaler spec 2014-03-10 13:50:06 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: Set external surfaces and their child objects to use our own event queue This fixes weird freezes because of frame_redraw_callback() not being called from the main thread when it should with weston's toy toolkit. It's also safer to know that frame_redraw_callback() will always be called from our display thread... Otherwise it could be called after the sink has been destroyed for example. 2014-03-07 17:25:00 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: Wait for the frame_cb to redraw and drop frames meanwhile We are not supposed to redraw until we receive a frame callback and this is especially useful to avoid allocating too many buffers while the window is not visible, because the compositor may not call wl_buffer.release until the window becomes visible (ok, this is a wayland bug, but...). 2014-03-07 16:16:30 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: waylandsink: Handle wl_buffer::release and don't reuse buffers that are not released This is achieved by adding an extra reference on the buffers, which does not allow them to return to the pool. When they are released, this reference is dropped. The rest complexity of this patch (hash table, mutex, flag, explicit release calls) merely exists to allow a safe, guaranteed and deadlock-free destruction sequence. See the added comment on gstwaylandsink.c for details. 2014-03-06 17:03:50 +0200 George Kiagiadakis * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: waylandsink/waylandpool: remove useless munmap call This data pointer is part of a bigger mmap'ed region, it has not been returned from mmap itself. 2014-02-28 13:37:30 +0200 George Kiagiadakis * ext/wayland/waylandpool.c: waylandsink/waylandpool: call the start/stop methods of the parent class start() makes sure that the minimum ammount of buffers requested is allocated. stop() makes sure that buffers are actually destroyed and prevents filling the file system when resizing the surface a lot, because the wayland-shm-* files will stay on the file system as long as the wl_buffers created out of them are alive. 2014-02-28 13:36:43 +0200 George Kiagiadakis * ext/wayland/waylandpool.c: waylandsink/waylandpool: unlink mmaped shm files so that they don't remain on the file system 2014-02-28 11:48:30 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: * gst-libs/gst/wayland/wayland.h: waylandsink: implement the GstVideoOverlay & GstWaylandVideo interfaces This is the initial implementation, without the GstVideoOverlay.expose() method. It only implements using an external (sub)surface and resizing it with GstWaylandVideo. 2014-02-14 16:08:56 +0100 George Kiagiadakis * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: waylandsink: implement with stubs the GstWaylandVideo & GstVideoOverlay interfaces 2013-05-06 13:16:02 +0300 George Kiagiadakis * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/wayland/Makefile.am: * gst-libs/gst/wayland/wayland.c: * gst-libs/gst/wayland/wayland.h: wayland: Add new gst-wayland library containing a new GstWaylandVideo interface This interface is needed to be able to embed waylandsink into other wayland surfaces. Due to the special nature of wayland, GstVideoOverlay is not enough for this job. 2014-02-26 18:35:29 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: handle the list of supported formats properly enum wl_shm_format is not a flags enum, as it may have been in the past, so multiple formats cannot be stored in a bitfield. Use an array instead. 2014-02-26 17:41:11 +0200 George Kiagiadakis * ext/wayland/wlvideoformat.c: waylandsink/wlvideoformat: add mappings for many common formats 2014-02-26 16:20:41 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: unref the buffer pool 2014-02-26 16:11:29 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: waylandsink/waylandpool: ref the display instead of the sink to avoid cyclic references The reference to the sink is not really needed anyway in waylandpool, what matters basically is that the display is active as long as the pool is active, so we really want to reference the display object instead of the sink. 2014-02-26 14:56:21 +0200 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: make the display property useful Let the display property control the name of the display, like in x(v)imagesink. 2014-02-14 17:20:42 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.c: waylandsink: access sink->pool in a more atomic fashion 2014-02-14 16:33:10 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: remove the useless wayland_lock 2014-02-13 13:28:40 +0100 George Kiagiadakis * ext/wayland/waylandpool.c: * ext/wayland/wldisplay.c: * ext/wayland/wlvideoformat.c: * ext/wayland/wlwindow.c: waylandsink: apply the same debug category to all the subobjects 2014-02-13 13:15:31 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: * ext/wayland/wldisplay.c: * ext/wayland/wlvideoformat.c: * ext/wayland/wlwindow.c: waylandsink: cleanup header includes 2014-02-13 11:59:45 +0100 George Kiagiadakis * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wlwindow.c: * ext/wayland/wlwindow.h: waylandsink: split window-related code out to a new GstWlWindow class GstWlWindow also has API ready to support subsurfaces. 2014-02-13 11:32:00 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: remove callback and redraw_pending variables from the window structure 2014-02-13 10:51:59 +0100 George Kiagiadakis * ext/wayland/waylandpool.c: waylandsink/waylandpool: improve debug message 2014-02-13 10:37:01 +0100 George Kiagiadakis * ext/wayland/waylandpool.c: waylandsink/waylandpool: find the video format from the GstVideoInfo instead of accessing the sink For the sake of isolation only. The format should be the same. 2014-02-13 10:29:08 +0100 George Kiagiadakis waylandsink/waylandpool: refactor code * make use of GstBufferPool::start/stop functions to allocate/deallocate memory * get rid of struct shm_pool and do all operations cleanly inside WaylandBufferPool * store a GstVideoInfo during configuration instead of the width & height and use the stride from the video info instead of hardcoding its value 2014-02-13 10:02:54 +0100 George Kiagiadakis * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/wlvideoformat.c: * ext/wayland/wlvideoformat.h: waylandsink: split video format related functions out to a separate file 2014-02-12 15:16:08 +0100 George Kiagiadakis * ext/wayland/waylandpool.c: waylandsink/waylandpool: move code around for better readability 2014-02-12 14:41:52 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: waylandsink: move struct shm_pool and its related functions to waylandpool.c And also make the instance of this struct to be owned by the buffer pool instead of the element, for the sake of isolation 2013-05-14 19:35:33 +0300 George Kiagiadakis * ext/wayland/waylandpool.c: waylandsink: Use XDG_RUNTIME_DIR instead of /tmp for the shm file 2014-02-12 14:15:52 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: waylandsink: remove unused variables 2014-02-12 11:28:40 +0100 George Kiagiadakis * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/waylandpool.c: * ext/wayland/wldisplay.c: * ext/wayland/wldisplay.h: waylandsink: process display events in a separate thread This also moves the display-related code into a new GstWlDisplay class, which takes care of the new thread 2014-02-04 16:32:31 +0100 George Kiagiadakis * ext/wayland/gstwaylandsink.h: * ext/wayland/waylandpool.h: waylandsink: tidy up the header files 2014-06-12 16:38:35 +0530 Sanjay NM * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: pnmdec: use GstVideoDecoder Class https://bugzilla.gnome.org/show_bug.cgi?id=731400 2014-06-16 07:42:37 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't overwrite original seek value In accurate mode, we'll be using start to fill in the seek segment, therefore don't overwrite it with the shifted seek position. https://bugzilla.gnome.org/show_bug.cgi?id=731698 2014-06-15 15:18:46 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: silence incorrect number of arguments in format warning 2014-06-15 15:17:07 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: gldownload: plug a memory leak 2014-06-15 13:59:07 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: wire up the alpha pad property 2014-06-15 13:44:04 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: glvideomixer: support input frame scaling 2014-06-15 12:26:21 +1000 Matthew Waters * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: glvideomixer: add positioning of input streams https://bugzilla.gnome.org/show_bug.cgi?id=729798 2014-06-15 12:24:38 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: glmixer: allow the subclass to choose the sink pad type Allows custom properties to be placed on the sink pads by subclasses 2014-06-13 11:46:19 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: live: handle pcr/dts discrepancies some more When wrapover/reset occur, we end up with a small window of time where the PTS/DTS will still be using the previous/next time-range. In order not to return bogus values, return GST_CLOCK_TIME_NONE if the PTS/DTS value to convert differs by more than 15s against the last seen PCR https://bugzilla.gnome.org/show_bug.cgi?id=674536 2014-06-13 10:37:46 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix wraparound detection issue Using 32bit unsigned values for corrected pcr/offset meant that we potentially ended up in bogus values Furthermore, refpcr - refpcroffset could end up being negative, which PCRTIME_TO_GSTTIME() can't handle (and returned a massive positive value) 2014-06-13 11:26:38 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: docs: add gsteglimagememory 2014-06-13 09:55:42 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: docs: add glframebuffer object 2014-06-13 09:52:01 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: docs: misc adds for gl functions 2014-06-13 09:41:51 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: docs: add gluploadmeta object 2014-06-13 09:32:56 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: docs: update for some gl function name changes 2014-06-12 23:14:45 +1000 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: glfilterapp: actually emit the client-draw signal 2014-06-12 23:13:11 +1000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: gl/examples: update for TEXTURE_2D change 2014-05-30 16:52:09 +0200 Mathieu Duponchelle * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: implement proper seeking for h264 streams. Co-Authored by: Thibault Saunier From a high level perspective, the new process for seeking h264 streams is as follows: 1) Rewind the stream until we find the first I-slice of a frame, and mark its offset in the stream. 2) Rewind the stream until we find SPS and PPS informations, to make sure the subsequent parser is up to date. 3) Accumulate optionnal SEI NAL units on the way. 4) Push the SPS, PPS and SEI units before the new keyframe. https://bugzilla.gnome.org/show_bug.cgi?id=675132 2014-06-12 10:14:27 +0100 Vincent Penquerc'h * sys/dvb/gstdvbsrc.c: dvbsrc: do not try to close negative file descriptors Interestingly, Coverity implies that close takes an unsigned argument, while my close(2) man page shows it taking a signed argument. I guess it may be platforms specific. Coverity 1214602 2014-06-12 10:17:10 +0100 Tim-Philipp Müller * ext/hls/m3u8.c: hls: fix build with GLib 2.32 Provide internal copy of g_list_copy_deep() until we bump the GLib requirement. https://bugzilla.gnome.org/show_bug.cgi?id=731555 2014-06-12 10:00:55 +0100 Vincent Penquerc'h * gst/aiff/aiffparse.c: aiffparse: bail out early when bytes per sample is not set This should always be set for valid files when we get there, and checking this avoids having ad hoc checks further down in several places. Coverity 1139698 2014-06-11 15:11:40 +0200 Gwenole Beauchesne * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: fix quantization matrix conversion routine names. Fix routine names for zigzag/raster scan order conversion routines for quantization matrices. This ought to use the gst_h264_quant_matrix_*() naming convention instead of gst_h264_video_quant_matrix_*(), which derived from the MPEG-2 function names. https://bugzilla.gnome.org/show_bug.cgi?id=731524 Signed-off-by: Gwenole Beauchesne 2014-05-26 18:29:21 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstvp8parser.h: codecparsers: add C++ guards for MPEG-4 and VP8 parsers. Fix MPEG-4 and VP8 APIs to export their external symbols as pure C symbols, i.e. un-mangled for C++. https://bugzilla.gnome.org/show_bug.cgi?id=731522 Signed-off-by: Gwenole Beauchesne 2014-06-12 14:58:47 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: glmixer: send the stream-start event and the caps event after. https://bugzilla.gnome.org/show_bug.cgi?id=730944 2014-06-12 13:37:51 +1000 Matthew Waters * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/sdl/Makefile.am: gl/examples: add GST_PLUGINS_BASE_CFLAGS 2014-06-12 13:15:10 +1000 Matthew Waters * tests/examples/gl/generic/doublecube/main.cpp: gl/examples: remove spurious include for doublecube example 2014-06-12 13:06:31 +1000 Matthew Waters * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/sdl/Makefile.am: gl/examples: add the srcdir and builddir includes And remove references to $(GST_PLUGINS_GL_*) 2014-06-12 12:49:42 +1000 Matthew Waters * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * gst-libs/gst/gl/gstglutils.h: * tests/examples/gl/generic/recordgraphic/main.cpp: glfilterapp: remove the reshape/draw properties The reshape property was never used. Replace the draw property with a signal. Based on patch by Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=704507 2014-06-12 12:14:35 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: glmixer: lock the size of mix->frames to the number of pads Fixes a segfault with decodebin ! glmixer where the request pads on both sides were being requested after the state change to PAUSED. Also fixes dynamically adding and removing pads while glmixer is in a state >= PAUSED. 2014-06-12 12:09:56 +1000 Matthew Waters * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: gl/examples: Port to using signals instead of properties Based on patch by Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=704507 2014-06-01 15:02:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: replace pointer properties with signals Based on patch by Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=704507 2014-06-11 09:38:00 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Use first group for handling reference pcr If _set_current_pcr_offset gets called after a flushing seek, we ended up using the current group for delta calculation ... whereas we should be using the first group to calculate shifts. Also add an early exit if there are no changes to apply 2014-06-10 14:50:10 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Remove unused variable The seeksegment was no longer used since the switch to calculating segments when we see data. 2014-06-10 14:27:53 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix debug statement 2014-06-10 14:27:01 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix duration evaluation in push mode When working in push mode, we need to be able to evaluate the duration based on a single group of observations. To do that we use the current group values 2014-06-02 11:07:01 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Handle early PTS conversion When handling the PTS/DTS conversion in new groups, there's a possibility that the PTS might be smaller than the first PCR value observed, due to re-ordering. When using the current group, only apply the wraparound correction when we are certain it is one (i.e. differs by more than a second) and not when it's just a small difference (like out-of-order PTS). https://bugzilla.gnome.org/show_bug.cgi?id=731088 2014-06-09 10:10:01 +0100 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: don't print already-freed string CID 1221987 2014-06-09 10:56:48 +0200 Edward Hervey * gst/speed/gstspeed.c: speed: Fix position query some more Forgot to remove code in 16fd917632c0992349ca28cf9108e9562c493ad7 CID #1139677 2014-06-07 07:13:59 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: Fix sticky event handling When we receive sticky events from upstream, always return TRUE. Fixes the issue where we receive custom sticky events (such as "uri") and no pads are created yet. 2014-06-04 18:34:44 +0100 Damian Ziobro * ext/hls/m3u8.c: hlsdemux: Improve parsing quoted key URIs and apply it for I-frame-based stream URI https://bugzilla.gnome.org/show_bug.cgi?id=730830 2014-06-06 13:08:04 +0300 Sebastian Dröge * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Don't store the current key in the playlist It's per fragment and applying to all following fragments until the next key is specified. 2014-06-06 13:04:04 +0300 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Fix compiler warnings 2014-05-30 16:34:18 -0600 Thomas Bluemel * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Reload the variant playlist if refreshing a playlist or downloading a fragment fails This can happen if the playlists have moved due to the variant playlist now being redirected to another target. This currently only works as long as the referenced playlists don't change in relation to the variant playlist, and the new location is purely due to a new path triggered by a new redirection target of the variant playlist, or a new redirection target of the playlist itself. https://bugzilla.gnome.org/show_bug.cgi?id=731164 2014-06-05 16:45:12 -0400 Olivier Crête * ext/schroedinger/gstschroenc.c: schroenc: Use an arbitrary framerate if none if given The schro encoder always requires a framerate, but some source material, such as RTP doesn't have a fixed one, so just fake it. https://bugzilla.gnome.org/show_bug.cgi?id=729054 2014-06-04 14:35:51 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop redundant assignment 2014-06-04 01:02:20 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: improve timeout handing at locking loop New approach attempts to be more accurate by measuring the elapsed time by iteration. Also: * Use a 10 seconds default timeout and a half a second polling step. New values should better match the tuning process on real-life scenarios. * Correct elapsed_time computation. * Add _retry_ioctl() to avoid bailing out on temporary ioctl EINTR failures (no need to check for EAGAIN cause we are opening the frontend on blocking mode) * Small corrections to fail condition handling 2014-06-05 18:43:30 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/wayland: create a dummy display instead of an EGLDisplay Currently, GstGLWindowWaylandEGL holds the wayland display connection If we create the EGLDisplay at the GstDisplay creation time, then libEGL will internally open another connection to the wayland server. These two display connections are unable to communicate resulting in no window output/display and hangs inside libEGL. Eventually we will move the wl_display from GstGLWindow to GstGLDisplay. 2014-06-05 09:40:38 +0200 Edward Hervey * ext/rtmp/gstrtmp.c: rtmp: proxy logging from librtmp Helps with debugging various librtmp issues 2014-06-05 08:29:50 +0200 Edward Hervey * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Fix position querying It's the position we're querying, not the duration :) 2014-06-04 21:39:48 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: tsdemux: Remove extraneous extra parameter from check_pending_buffers function 2014-06-04 21:31:21 +1000 Jan Schmidt * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketiser: Always initialise packet AFC flags and PCR fields Also fix a slight typo in a comment about the smoothing algorithm 2014-05-23 15:07:19 +1000 Jan Schmidt * gst/mpegtsdemux/tsdemux.c: tsdemux: Reset pending_ts on a discont, to re-measure initial timestamps Since all the other timestamp tracking now gets reset on a discont, it makes sense to wait for a PCR and timestamp buffers like when playback first starts 2014-03-21 22:16:41 -0700 Aleix Conchillo Flaqué * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: srtp: add support for rollover counters and replay protection window size We add a new signal, get-rollover-counter, to the SRTP encoder. Given a ssrc the signal will return the currently internal SRTP rollover counter for the given stream. For the SRTP decoder we have a new SRTP caps parameter "roc" that needs to be set when a new SRTP stream is created for a given SSRC. https://bugzilla.gnome.org/show_bug.cgi?id=726861 2013-10-14 16:14:42 +0200 Michael Olbrich * gst/liveadder/liveadder.c: liveadder: handle gap buffer flag Remove GAP flag unless both sides have gap data, ignore incoming data if it is gap data. https://bugzilla.gnome.org/show_bug.cgi?id=722397 2014-05-25 21:43:22 +0100 Matthieu Bouron * ext/gl/gstglimagesink.c: glimagesink: improve state change debug message 2014-06-03 13:59:51 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: glupload: always release the previous buffer Fixes the case where _perform_with_buffer() is called without intervening calls to _release_buffer() as is the case on start up with glimagesink. Also release the buffer when reseting the upload. https://bugzilla.gnome.org/show_bug.cgi?id=731107 2014-06-02 21:51:38 -0400 Olivier Crête * tests/check/elements/shm.c: tests: Take account of memory alignment in shm test 2014-06-02 21:43:56 -0400 Olivier Crête * gst/gdp/dataprotocol.c: gdp: Fail gracefully if event can't be parsed https://bugzilla.gnome.org/show_bug.cgi?id=731093 2014-06-02 21:43:34 -0400 Olivier Crête * sys/shm/gstshmsink.c: shmsink: Allocate enough memory to do alignment https://bugzilla.gnome.org/show_bug.cgi?id=731093 2014-06-02 12:39:49 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Actually print the stacktrace into the error string 2014-06-02 11:28:43 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Clear the exception before trying to call Java methods to convert it to a string 2014-06-02 11:16:32 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Fix crashes when loading the plugin in a standalone application on Android >= 4.4 Check if libnativehelper is loaded in the process and if it has these awful wrappers for JNI_CreateJavaVM and JNI_GetCreatedJavaVMs that crash the app if you don't create a JniInvocation instance first. If it isn't we just fail here and don't initialize anything. See this code for reference: https://android.googlesource.com/platform/libnativehelper/+/master/JniInvocation.cpp 2014-06-02 10:11:58 +0200 Edward Hervey * gst/speed/gstspeed.c: speed: make position query able to convert bytes to time (same as 744c58d71b21475d2edd5b9334e277cfa4c53260 but for the position query) It was only querying in time, but then trying to use dead bytes to time conversion code. Coverity 1139677 2014-06-02 09:42:33 +0200 Edward Hervey * gst/mpegdemux/gstmpegdemux.c: mpegdemux: avoid crashing in pathological case (Identical to commit 612cdeec80da95b12f9fad928419c7de2be20d68 which was for resindvd) When we'd see an unknown stream type, then a SDDS stream. Then we'd get to the end of the switch with a NULL temp stream pointer, and dereference it. Coverity 1139708 2014-06-02 09:23:39 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Handle (unlikely) NULL return of gl->GetString (GL_VERSION) more gracefully CID 1219858 2014-06-02 08:22:15 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-atsc-section.c: mpegts: Remove unneeded NULL check Allocating those structures is done in all code paths leading there CID #1219860 CID #1219861 CID #1219862 CID #1219863 CID #1219864 2014-06-01 10:43:49 +0100 Tim-Philipp Müller * ext/mpeg2enc/gstmpeg2encoptions.cc: mpeg2enc: increase max. allowed value for bitrate property For DVD the limit is around 10Mbit/s, but for e.g. ATSC it could be much higher. 2014-05-25 13:05:49 +0100 Tim-Philipp Müller * sys/dvb/dvbbasebin.c: dvbbasebin: better error handling in case tsparse is missing https://bugzilla.gnome.org/show_bug.cgi?id=730641 2014-05-30 17:35:49 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: dvbbasebin: add prop setup code for guint64 Needed since we are now proxying tuning-timeout from dvbsrc. 2014-05-20 07:34:56 +0200 Nicola Murino * ext/opencv/MotionCells.cpp: * ext/opencv/gstmotioncells.c: motioncells: improve logging https://bugzilla.gnome.org/show_bug.cgi?id=730141 2014-05-20 07:29:16 +0200 Nicola Murino * ext/opencv/MotionCells.cpp: motioncells: make framedrop work at 30 fps too https://bugzilla.gnome.org/show_bug.cgi?id=730141 2014-05-20 07:25:20 +0200 Nicola Murino * ext/opencv/gstmotioncells.c: * ext/opencv/motioncells_wrapper.cpp: motioncells: use standard macro for boolean https://bugzilla.gnome.org/show_bug.cgi?id=730141 2014-05-20 07:18:39 +0200 Nicola Murino * configure.ac: opencv: make the plugin compile with all 2.4.x versions https://bugzilla.gnome.org/show_bug.cgi?id=730141 2014-05-26 22:34:01 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/camconditionalaccess.c: * sys/dvb/camdevice.c: * sys/dvb/camswclient.c: dvb/cam*: use g_strerror and other few nits 2014-05-30 11:00:06 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: dvbbasebin: fix dvbsrc signal proxying https://bugzilla.gnome.org/show_bug.cgi?id=641204 2014-05-30 00:49:49 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/dvbbasebin.c: dvbbasebin: proxy new props/signals from dvbsrc Proxy tuning start/done/fail signals and tuning-timeout property. https://bugzilla.gnome.org/show_bug.cgi?id=641204 2014-05-01 18:25:05 -0400 Reynaldo H. Verdejo Pinochet dvbsrc: smarten up tuning logic * Drop remaining sleep() logic in favor of polling * Use best guess delivery system if none is set * Make tuning/locking timeout configurable * Add signals for tuning start, done and fail * Drop gst_dvbsrc_frontend_status(). It was used only for signal LOCK checking. This is now part of the tuning/locking loop * Break up frontend configuration and tuning on separate functions Plus: * Add some more useful DEBUG/TRACE messages * Move over misplaced DVB API message * Fix wrong comment for default DVB buffer size (http://linuxtv.org/downloads/v4l-dvb-apis/dmx_fcalls.html#DMX_SET_BUFFER_SIZE) This patch builds up on previous work done by Fabrizio (Misto) Milo https://bugzilla.gnome.org/show_bug.cgi?id=641204 2014-05-30 16:35:30 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: Add exceptions from the Java API to error messages, and post more error/warning messages overall 2014-05-30 15:24:48 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: androidmedia: Add a GError argument to all amc methods and catch exceptions there 2014-05-30 15:24:15 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Describe exceptions happening when scanning all codecs 2014-05-30 12:19:22 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Add API to convert an exception into a string 2014-05-30 12:40:08 +0200 Jorge Zapata * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Release the codec before freeing it On Samsung Galaxy S4 it is impossible to have more than one hardware decoder at the same time. If we do not release it explicitly the GC only releases it whenever the whole application is finished not whenever the activity is finished and thus a player will not be able to work correctly 2014-05-30 02:10:25 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: fix structure handling in preview message Avoid trying to modify the message structure as it isn't mutable. Use a copy and post a new message if necessary. Fixes failing tests. 2014-05-30 12:23:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: glmemory: remove uneeded gl api ifdefs 2014-05-30 11:51:01 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: glwindow_x11: allow expose events to redraw our window otherwise we will not update the window contents on low framerate streams until the next buffer https://bugzilla.gnome.org/show_bug.cgi?id=723529 2014-05-30 11:46:00 +1000 Matthew Waters * ext/gl/gstglimagesink.c: glimagesink: unref the old buffer outside the lock it could very well deadlock https://bugzilla.gnome.org/show_bug.cgi?id=723529 2014-05-30 11:35:04 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: Revert "[880/906] glimagesink: remove unused stored_buffer field" This reverts commit af3a68db7dc473fb6903c18966b39e4c3f1464d7. Conflicts: ext/gl/gstglimagesink.c https://bugzilla.gnome.org/show_bug.cgi?id=723529 2014-05-30 10:46:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: fix up assertion error: 'return' with no value, in function returning non-void 2014-05-30 10:27:14 +1000 Matthew Waters * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/glprototypes/base.h: * gst-libs/gst/gl/glprototypes/blending.h: * gst-libs/gst/gl/glprototypes/eglimage.h: * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/glprototypes/fixedfunction.h: * gst-libs/gst/gl/glprototypes/gles.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: glfeature: remove GST_GL_API_GLES3 instead check the gl version using gst_gl_context_check_gl_version() 2014-05-30 10:25:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: glcontext: check for GLES versions 2014-05-29 20:35:48 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: gl/context: add check_gl_version 2014-05-29 17:09:26 +0200 Edward Hervey * gst-libs/gst/gl/gstglcontext.c: glcontext: Try GLX support before EGL support If available, glx has got a better chance of being the Gl platform we want to use compared to EGL 2014-05-29 16:59:28 +0200 Edward Hervey * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: glcontext: Try to open lib{EGL|GL|GLESv2}.so.1 before lib{EGL|GL|GLESv2} Fixes issues with .so (without numbering) being installed for development (such as from mesa-dev) but actual driver (with numbering) coming from some other place (like nvidia drivers) 2014-05-29 16:01:22 +0200 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update spec file with latest changes 2014-05-29 12:30:13 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-atsc-section.h: atsc-section: Fix annotation 2014-05-29 12:29:52 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: dvb-descriptor: Fix multilingual service name parsing the provider and service name was inverted 2014-05-28 16:47:53 +0200 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * tests/examples/mpegts/ts-parser.c: example: ts-parser: add parential rating descriptor https://bugzilla.gnome.org/show_bug.cgi?id=730854 2014-05-28 16:47:28 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: example: ts-parser: add ca iddentifier descriptor https://bugzilla.gnome.org/show_bug.cgi?id=730854 2014-05-28 12:23:50 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: example: ts-parser: add stream identifier descriptor https://bugzilla.gnome.org/show_bug.cgi?id=730854 2014-05-28 12:23:12 +0200 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * tests/examples/mpegts/ts-parser.c: example: ts-parser: add content descriptor https://bugzilla.gnome.org/show_bug.cgi?id=730854 2014-05-28 12:19:43 +0200 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * tests/examples/mpegts/ts-parser.c: example: ts-parser: add component descriptor https://bugzilla.gnome.org/show_bug.cgi?id=730854 2014-05-29 11:55:51 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: factor dumping code We can just re-use the new function instead of having two duplicates 2014-05-29 10:50:58 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: example: ts-parser: add linkage descriptor https://bugzilla.gnome.org/show_bug.cgi?id=730901 2014-05-28 20:42:05 +0200 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: bugfix mobile hand over linkage parse missmatch https://bugzilla.gnome.org/show_bug.cgi?id=730901 2014-05-28 16:34:08 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * tests/examples/mpegts/ts-parser.c: mpegts: atsc: add missing field to ETT table Set the subtable_extension as ett_table_id_extension for ETT tables as it is used by it https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-28 15:59:23 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * tests/examples/mpegts/ts-parser.c: mpegts: atsc: add atsc's EIT table parsing ATSC has its own version of the EIT table (DVB also has one). This patch adds parsing for the ATSC EIT table and also fixed the section identification to mark it as the ATSC one. The implementation aws refactored to reuse some common internal structures from ETT. Also adds its dumping function to ts-parser example https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-22 17:49:39 -0300 Thiago Santos * tests/check/libs/mpegts.c: tests: mpegts: add test for STT parsing Specially for the time to UTC datetime conversion Example taken from the A65 spec https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-22 01:47:48 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * tests/examples/mpegts/ts-parser.c: mpegts: atsc: add STT table parsing Adds the system time table structure and functions for convenient parsing of it and for getting the UTC datetime that it represents. Also adds its information dumping to the ts-parser example https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-19 16:20:44 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: mpegts: atsc: add encoding conversion for UTF-16 ETT strings https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-19 14:50:13 -0300 Thiago Santos * tests/examples/mpegts/ts-parser.c: examples: mpegts: add function to dump ETT tables https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-19 13:46:03 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: atsc: add ETT structures and parsing ETT (extended text table) contains ATSC text information with descriptions of virtual channels and events. The text can be internationalized and also compressed. https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-16 15:39:48 -0300 Thiago Santos * gst/mpegtsdemux/mpegtsbase.c: tsbase: parse the mgt and add listed EIT/ETT pids to the known psi This will make tsbase also parse the EITs and ETTs from ATSC streams that have their pids reported on the MGT and post to the bus https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-15 12:31:05 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * tests/examples/mpegts/ts-parser.c: mpegts: add atsc MGT section parsing Add a parsing function for MGT and also detect the EIT tables for ATSC, the EIT pids are reported inside the MGT and we are still only relying only on the table id for detecting it. In the future we would want to also check the pid and compare with whatever the MGT previously reported to confirm that it is indeed the EIT. https://bugzilla.gnome.org/show_bug.cgi?id=730435 2014-05-23 01:41:18 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: atsc: rename TVCT to VCT as it is the same as CVCT Make the ATSC section parse handle both TVCT and CVCT as they are nearly the same struct (CVCT uses 2 reserved bits that are ignored in TVCT). This is changing the glib type and the struct name but TVCT wasn't released in a stable package yet so there should be no problem. Also includes some parsing fixes and changes short_name to be directly stored as utf8 rather than utf16 https://bugzilla.gnome.org/show_bug.cgi?id=730642 2014-05-28 13:11:05 -0300 Thiago Santos * tests/examples/mpegts/ts-parser.c: examples: ts-parser: add TVCT and CVCT tables dumping https://bugzilla.gnome.org/show_bug.cgi?id=730642 2014-05-29 10:37:02 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglupload.c: glupload: Fix assertion after API changes 2014-05-29 18:33:10 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: keep our private pointer again, avoid to much trigger 2014-05-29 18:32:48 +1000 Matthew Waters * tests/check/libs/gstglupload.c: tests: update for glupload changes 2014-05-29 17:29:41 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: gl/colorconvert: use GstObject's lock instead of our own 2014-05-29 17:12:03 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: remove unnecassary pointer inderection 2014-05-29 16:45:37 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: re add the upload meta to the private struct try and avoid being to trigger happy 2014-05-29 16:29:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: small code cleanup and gst-indent 2014-05-29 16:22:52 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: gl/download: use GstObject's lock instead of out own 2014-05-29 16:20:30 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl/upload: use GstObject's lock instead of our own 2014-05-29 16:18:08 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: also remove the width/height in transform_caps allows scaling in the filters 2014-05-29 16:11:20 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: optimise the same format case simply return the input buffer unchanged 2014-05-29 16:07:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: fix YUY2/UYVY download for RG/LA textures 2014-05-29 15:50:56 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl/colorconvert: allocate output buffers Allows the nop optimisation by simply reffing the input buffer. 2014-05-28 16:18:13 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Avoid shadowing main loop variable We end up with interesting results otherwise :) 2014-05-28 15:53:21 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Add support for private-data-specifier and frequency-list 2014-05-28 15:52:49 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Make some fields optional Some people might just not care about the contents 2014-05-28 15:52:03 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Update docs for DVB frequency list 2014-05-28 23:21:07 +1000 Matthew Waters * tests/check/libs/gstglupload.c: tests: update for recent glupload changes GstGLUploadMeta object is now the GstVideoGLTextureUploadMeta provider. 2014-05-28 12:56:24 +0200 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: mssdemux: Always use the redirect target to resolve relative URIs But redownload the playlists from the original URI if it's not a permanent redirect. 2014-05-28 12:43:43 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Always use the redirect target to resolve relative URIs But redownload the playlists from the original URI if it's not a permanent redirect. 2014-05-28 12:44:38 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Don't set base URI if there was no redirect 2014-05-28 09:18:49 +0100 Damian Ziobro * ext/hls/m3u8.c: hlsdemux: Make parsing of "-quoted key URIs more resilient https://bugzilla.gnome.org/show_bug.cgi?id=730830 2014-05-28 10:19:40 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Always use the redirect target to resolve relative URIs But redownload the playlists from the original URI if it's not a permanent redirect. 2014-05-28 09:42:44 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gstfragment.c: * gst-libs/gst/uridownloader/gstfragment.h: * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Store URI and redirect target in the downloaded fragments 2014-05-28 07:40:19 +0200 Edward Hervey * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Fix Logical Channel Descriptor parsing No wonder we were getting garbage ... 2014-05-27 20:37:26 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: example: ts-parser: add terrestrial delivery system descriptor https://bugzilla.gnome.org/show_bug.cgi?id=730847 2014-05-27 20:32:42 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: example: ts-parser: printing enum types https://bugzilla.gnome.org/show_bug.cgi?id=730847 2014-05-28 14:43:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.h: gl/upload: fix incorrect type in macros 2014-05-28 14:40:10 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstgluploadmeta.c: * gst-libs/gst/gl/gstgluploadmeta.h: gl/upload: add GstGLUploadMeta object That simply deals with the provider aspect of GstVideoGLTextureUploadMeta. 2014-05-27 17:34:05 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Add DVB Extended event parsing 2014-05-27 17:32:52 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Ensure NULL-terminated language code Yup, it breaks API and ABI, I know. But let's avoid people and bindings printing out garbage 2014-05-27 17:25:25 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Fix Extended DVB descriptor parsing We were over-reading data, and the nb_items field isn't needed, it's a property of the GPtrArray 2014-05-28 00:56:05 +1000 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: gl/win32: make send_message reentrant I could not find a comparable win32API function so keep the running thread pointer to compare against. https://bugzilla.gnome.org/show_bug.cgi?id=730782 2014-05-27 16:17:39 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Fix usage of memcpy source and destination were inverted 2014-05-26 20:38:45 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: examples: Add support for DVB multilingual component descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-05-26 20:38:19 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: examples: Add support for DVB multilingual service name descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-05-26 20:37:53 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: examples: Add support for DVB multilingual bouquet name descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-05-26 20:37:21 +0200 Stefan Ringel * tests/examples/mpegts/ts-parser.c: examples: Add support for DVB multilingual network name descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-04-17 18:20:39 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add multilingual component descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-04-17 18:20:03 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add multilingual service name descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-04-17 18:10:51 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add multilingual bouquet name descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-04-17 18:07:52 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add multilingual network name descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728429 2014-05-27 10:21:45 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: tsdemux: add/remove pads to flowcombiner differently due to streaming nature Due to mpegts streaming nature some pads are created but are only added later to the element. This can cause a scenario where the first stream doesn't have an available decoder (while the next ones still pending would have) and tsdemux will fail with not-linked as the first stream added wouldn't be linked. To avoid this tsdemux needs to add pads to the flowcombiner when they are created instead of only when adding them to the element. 2014-05-27 13:56:34 +0100 Tim-Philipp Müller * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: fix compiler warning gstglcolorconvert.c:1133:11: error: 'j' may be used uninitialized in this function Was used uninitialized when jumping to out label in error case. 2014-05-27 18:20:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: gl/colorconvert: operate on buffers instead of memories 2014-05-27 07:42:14 -0300 Thiago Santos * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: remove unread last_flow variable it isn't necessary anymore and is already unused 2014-05-27 11:28:27 +0100 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: make it actually honor show-preroll-frame property https://bugzilla.gnome.org/show_bug.cgi?id=730802 2014-05-27 12:08:50 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Compare positions to find the earliest pad, not flow returns 2014-05-27 08:54:20 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.h: gl: add missing cgl and eagl context type https://bugzilla.gnome.org/show_bug.cgi?id=729245 2014-05-27 08:46:16 +0100 Julien Isorce * configure.ac: * gst-libs/gst/gl/gstglcontext.c: * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: gl: rename platform cocoa to cgl Before: GST_GL_PLATFORM=cocoa GST_GL_WINDOW=cocoa gst-launch-1.0 videotestsrc ! glimagesink After: GST_GL_PLATFORM=cgl GST_GL_WINDOW=cocoa gst-launch-1.0 videotestsrc ! glimagesink but still pass --enable-cocoa to configure script because currently it can only be used with cocoa API. We could later have cgl/gstglcontext_cgl.h that manages a CGLContextObj directly and cocoa/gstglcontext_cocoa.h would just wrap it. So that it could be used with other Apple's window APIs. https://bugzilla.gnome.org/show_bug.cgi?id=729245 2014-05-27 08:51:09 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: Revert "androidmedia: Place some const keywords in a few places" This reverts commit 3078b3a34c1f75b86bd629df1cd7c089a0f69999. gst_video_frame_map() doesn't take a const GstVideoInfo*, so all this is rather useless. 2014-05-27 13:55:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: gl/mixer: don't segfault when we don't have a buffer https://bugzilla.gnome.org/show_bug.cgi?id=729257 2014-05-27 13:04:39 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/window_x11: avoid BadDrawable error on shutdown 2014-05-26 17:34:40 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: use GstFlowCombiner Removes flow return combination code to use the newly added GstFlowCombiner https://bugzilla.gnome.org/show_bug.cgi?id=709224 2014-05-26 17:18:01 -0300 Thiago Santos * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: use GstFlowCombiner Removes flow return combination code to use the newly added GstFlowCombiner https://bugzilla.gnome.org/show_bug.cgi?id=709224 2014-05-23 18:26:57 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: use GstFlowCombiner Removes flow return combination code to use the newly added GstFlowCombiner 2014-05-27 10:47:25 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: gl/context_egl: pass the vars in the right order to DestroySurface https://bugzilla.gnome.org/show_bug.cgi?id=728514 2014-05-26 16:31:11 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: androidmedia: Place some const keywords in a few places 2013-11-13 18:41:33 +0800 Chen Jie * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstamcvideoenc.h: androidmedia: add gst_amc_color_format_copy gst_amc_color_format_copy will copy in/out a frame resides at a GstAmcBuffer. Lots of codes in gst_amc_video_*_fill_buffer are moved to this new function. 2013-10-08 21:11:48 +0800 Chen Jie * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideoenc.c: androidmedia: move create_src|sink_caps to gstamc.c Some hack logic needs also to be present in create_src|sink_caps, for working around some broken codecs. These hacks are hidden in color_format/video_format conversion -- the prototypes of these functions are also changed to include more args for hack judgement. Also in case of multi-color_formats mapped to one video_format, then map that video_format back will not give the original color_format, which causes gst_amc_codec_configure failed with something like 'does not support color format N'. The new prototype involves with GstAmcCodecInfo and mime, which ensures the converted color_format is supported by the codec. A COLOR_FormatYCbYCr to GST_VIDEO_FORMAT_YUY2 mapping is also added, in order to work around bugs in OMX.k3.video.decoder.avc(which incorrectly reports supporting COLOR_FormatYCbYCr, which is actually COLOR_FormatYUV420SemiPlanar). There are already hacks for this in gst_amc_video_format_to_color_format, gst_amc_color_format_to_video_format and gst_amc_color_format_info_set, but the codec will still not work(be ignored because of "has unknown color formats") without adding this mapping. 2014-04-11 15:14:17 +0200 Stefan Ringel * sys/dvb/parsechannels.c: dvb: parsechannels: add delsys property Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=709414 2014-05-26 13:29:53 +0200 Edward Hervey * win32/common/libgstcodecparsers.def: win32: update .def for new symbols 2014-04-11 15:38:16 +0100 Vincent Penquerc'h * sys/dvb/gstdvbsrc.c: dvbsrc: map SYS_DVBC_ANNEX_A SYS_DVBC_ANNEX_AC for DVB API < 5.6 https://bugzilla.gnome.org/show_bug.cgi?id=721869 2014-04-15 09:31:02 +0100 Vincent Penquerc'h * sys/dvb/gstdvbsrc.c: dvbsrc: fix typo in testing flag % instead of & https://bugzilla.gnome.org/show_bug.cgi?id=721869 2014-05-25 15:16:13 +0800 Chen Jie * sys/androidmedia/gstamcvideoenc.c: amcvideoenc: Unit of bitrate property is now bit/sec https://bugzilla.gnome.org/show_bug.cgi?id=705129 2014-05-26 11:55:31 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Add support for DVB Bouquet Name parsing 2014-05-26 11:54:50 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Fix Bouquet Name parsing the field is not length prefixed 2014-05-26 11:42:46 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Add support for DVB Service List descriptor 2014-04-17 14:56:23 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add bouquet name descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728364 2014-04-17 14:55:29 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add stuffing descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728364 2014-04-17 14:54:28 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add service list descriptor https://bugzilla.gnome.org/show_bug.cgi?id=728364 2014-05-10 18:32:28 +0200 Miguel París Díaz * ext/opus/gstopusenc.c: opusenc: Use aux vars to minimize critical region This avoid dead lock between gst_audio_encoder_finish_frame() and gst_opus_enc_get_property(). Also, now bytes var is set into protected section. https://bugzilla.gnome.org/show_bug.cgi?id=729882 2014-05-24 19:51:12 +0200 Stefan Ringel * sys/dvb/gstdvbsrc.c: dvbsrc: Add missing tone ioctl https://bugzilla.gnome.org/show_bug.cgi?id=730692 2014-05-25 09:03:32 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Remove format information to allow color convert again We also need to remove the format information, as glfilter can do color convertion. This code was imported from videoconvert. https://bugzilla.gnome.org/show_bug.cgi?id=729861 2014-05-25 11:44:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: allocate the correct memory size and avoid wasting resources we will never need https://bugzilla.gnome.org/show_bug.cgi?id=730703 2014-05-23 23:02:32 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix YUY2 and UYVY support with luminance_alpha https://bugzilla.gnome.org/show_bug.cgi?id=730666 2013-12-03 12:09:58 +0100 Jorge Zapata * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: androidmedia: Add a new QCOM color format It is a NV12 based, aligned to 32 bytes https://bugzilla.gnome.org/show_bug.cgi?id=730635 2014-05-23 15:00:42 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: First try to get symbols from the current program, then load libdvm If the application is using the new ART runtime it will otherwise load dalvik and start a dalvik VM next to the ART VM. Does not work very well obviously. 2013-04-01 07:49:01 +0000 Chen Jie * sys/androidmedia/Makefile.am: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideoenc.c: * sys/androidmedia/gstamcvideoenc.h: androidmedia: add support for video encoding https://bugzilla.gnome.org/show_bug.cgi?id=705129 2014-05-23 12:07:50 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: provide compatability defines fixes build on android/OS X 2014-05-23 11:01:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: remove scratch texture for YUY2/UYVY We can get all our data from the one RG/LA texture with some shader magic. https://bugzilla.gnome.org/show_bug.cgi?id=728890 2014-05-23 10:59:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: RGBA/UNSIGNED_BYTE only format supported by ReadPixels GLES2 Error out in case we attempt to read with any other invalid format. 2014-05-23 10:57:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/memory: generate textures with a sized internal format Required in order to generate RG and RED textured with GLES3. 2014-05-21 21:47:45 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: gl/memory: implement GL_EXT_texture_rg support Which is used by default over the Luminance formats due to it being color renderable with fbos (and deprecation/removal with GL 3.x). https://bugzilla.gnome.org/show_bug.cgi?id=729750 https://bugzilla.gnome.org/show_bug.cgi?id=704222 https://bugzilla.gnome.org/show_bug.cgi?id=728890 2014-05-22 11:50:16 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: Revert "h264parser: Remove unused fps_num/fps_den fields" This breaks the build since mss has not been ported. This reverts commit aeb6a520742fd82888e41ea23f9a39add51125a0. 2014-05-22 16:12:01 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Remove unused fps_num/fps_den fields Instead the newly added function should be used to calculate the framerate properly. 2014-05-19 17:52:38 +0200 Aurélien Zanelli * gst/videoparsers/gsth264parse.c: h264parse: use new gst_h264_video_calculate_framerate() to get framerate https://bugzilla.gnome.org/show_bug.cgi?id=723352 2014-05-19 17:43:54 +0200 Aurélien Zanelli * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers_h264: add gst_h264_video_calculate_framerate() Add a new function to calculate video stream framerate which rely on SPS, slice header and pic timing using formula: time_scale 1 1 fps = ----------------- x --------------- x ------------------------ num_units_in_tick DeltaTfiDivisor (field_pic_flag ? 2 : 1) See section E2.1 of H264 specification for definition of variables. https://bugzilla.gnome.org/show_bug.cgi?id=723352 2014-05-21 21:44:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl/context: add gl extension checking to check_feature() Useful for extensions that do not define any new GL API entrypoints but can still modify behaviour when used. 2014-05-21 20:36:37 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: gl/download: fixup YUY2/UYVY download Regression from 2da979831ec3b1a8d993eb6f2d3999c5810c4d67 as it did not update the download code to reflect the change in texture format. 2014-05-19 11:48:55 +0200 Aurélien Zanelli * gst/videoparsers/gsth264parse.c: h264parse: set field_pic_flag when parsing a slice header field_pic_flag was used but never set to other value than its default https://bugzilla.gnome.org/show_bug.cgi?id=730363 2014-05-22 11:54:40 +0100 Damian Ziobro * ext/hls/m3u8.c: hlsdemux: Fix storing of the IV based on the media sequence number https://bugzilla.gnome.org/show_bug.cgi?id=730574 2014-05-22 12:23:57 +0200 Michael Olbrich * sys/dvb/gstdvbsrc.c: dvbsrc: fix building with newer kernel headers c400eef3772b7dc470eefae02a1288c2b125e25c introduced some defines to handle older kernel headers. However, the check is done before the corresponding kernel header (dvb/frontend.h) is included. As a result the macros are always defined with results in 'redefined' errors with newer kernel headers. Move the check after the include to fix this. https://bugzilla.gnome.org/show_bug.cgi?id=730570 2014-05-21 13:23:30 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.3.2 === 2014-05-21 13:06:35 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect-build.stamp: * docs/plugins/inspect.stamp: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * gst/bayer/gstbayerorc-dist.c: * win32/common/config.h: Release 1.3.2 2014-05-21 12:42:56 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-05-21 19:47:22 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: fixup passthrough bufferpool In a pipeline like so: videotestsrc ! gleffects ! videoconvert ! sink gleffects was simply passing the videoconvert bufferpool to videotestsrc and not creating a glbufferpool. videobufferpool would then fail to allocate from the glallocator. 2014-05-21 10:51:26 +0200 Sebastian Dröge * common: Automatic update of common submodule From 211fa5f to 1f5d3c3 2014-05-21 08:53:03 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gst-dvb-section.c: dvb-section: Don't compare unsigned integers for >= 0 gst-dvb-section.c:93:12: error: comparison of unsigned expression >= 0 is always true [-Werror,-Wtautological-compare] if (hour >= 0 && hour < 24 && minute >= 0 && minute < 60 && second >= 0 ~~~~ ^ ~ gst-dvb-section.c:93:40: error: comparison of unsigned expression >= 0 is always true [-Werror,-Wtautological-compare] if (hour >= 0 && hour < 24 && minute >= 0 && minute < 60 && second >= 0 ~~~~~~ ^ ~ gst-dvb-section.c:93:70: error: comparison of unsigned expression >= 0 is always true [-Werror,-Wtautological-compare] if (hour >= 0 && hour < 24 && minute >= 0 && minute < 60 && second >= 0 ~~~~~~ ^ ~ 2014-05-20 17:09:43 +0200 L. Sorin * ext/curl/gstcurlsshsink.c: curlsshsink: post error on bus in element, not transfer thread Looks like this file was missed in Bug 728960: https://bugzilla.gnome.org/show_bug.cgi?id=728960 https://bugzilla.gnome.org/show_bug.cgi?id=730459 2014-05-21 10:26:21 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: gl/upload: switch the 'master' texture for YUY2, UYVY From d4bcef3204709159713ff1630978ecac0bd91dc9 on, using a RGBA texture to hold the data causes the glmemory to have half width and a scaling of [2, 1]. Using a LA texture solves this problem however cannot be attached to the framebuffer for copying into a RGBA texture. Which will be solved by moving to EXT_texture_rg. https://bugzilla.gnome.org/show_bug.cgi?id=728890 2014-05-14 17:59:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/egl/gsteglimagememory.c: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglfilter.c: gl/eglimage: add eglimage context feature Allows us to selectively use EGLImages only when available https://bugzilla.gnome.org/show_bug.cgi?id=728234 2014-05-14 17:33:21 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: gl/context: add generic feature checking At the moment it simply delegates to the subclass. 2014-05-20 11:42:35 +0200 Wim Taymans * gst/bayer/gstbayerorc.orc: bayer: fix unused variable 2014-01-28 14:04:11 +0100 L. Sorin * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurlsshsink.h: * tests/check/elements/curlsftpsink.c: curlsftpsink: authenticate remote host via public key fingerprint Expose one more libcurl option: CURLOPT_SSH_HOST_PUBLIC_KEY_MD5. This allows authenticating the server by the MD5 fingerprint of the server's public key. https://bugzilla.gnome.org/show_bug.cgi?id=723167 2014-05-19 13:43:59 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-dvb-section.c: mpegts: Check hour:minute:second values before creating datetime Avoids assertions when the packets are malformed and also add the case where the time isn't specified, only the date. 2014-05-19 12:25:51 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Check if context creation failed before trying to use it Otherwise we will cause assertions everywhere by passing NULL to functions and eventually crash when dereferencing a NULL pointer. https://bugzilla.gnome.org/show_bug.cgi?id=730069 2014-05-19 12:21:13 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglcontext.c: glcontext: Add more assertions to make sure that everything sets the GError during context creation if something fails 2014-05-19 11:34:42 +0200 Sebastian Dröge * gst/freeverb/gstfreeverb.c: freeverb: Don't pass floats to abs() but instead cast them to ints first gstfreeverb.c:781:29: error: using integer absolute value function 'abs' when argument is of floating point type [-Werror,-Wabsolute-value] if (abs (out_l2) > 0 || abs (out_r2) > 0) 2014-05-19 09:12:14 +0200 Sebastian Dröge * ext/rsvg/gstrsvgdec.c: rsvgdec: Unref handle and output state on error paths CID 1214604 2014-05-16 09:10:48 +0200 Sebastian Dröge * sys/opensles/openslesringbuffer.c: opensles: Work around race condition in Android < 4.2 that leads to deadlocks on shutdown We need to sleep a bit before destroying the player object because of a bug in Android in versions < 4.2. OpenSLES is using AudioTrack for rendering the sound. AudioTrack has a thread that pulls raw audio from the buffer queue and then passes it forward to AudioFlinger (AudioTrack::processAudioBuffer()). This thread is calling various callbacks on events, e.g. when an underrun happens or to request data. OpenSLES sets this callback on AudioTrack (audioTrack_callBack_pullFromBuffQueue() from android_AudioPlayer.cpp). Among other things this is taking a lock on the player interface. Now if we destroy the player interface object, it will first of all take the player interface lock (IObject_Destroy()). Then it destroys the audio player instance (android_audioPlayer_destroy()) which then calls stop() on the AudioTrack and deletes it. Now the destructor of AudioTrack will wait until the rendering thread (AudioTrack::processAudioBuffer()) has finished. If all this happens with bad timing it can happen that the rendering thread is currently e.g. handling underrun but did not lock the player interface object yet. Then destroying happens and takes the lock and waits for the thread to finish. Then the thread tries to take the lock and waits forever. We wait a bit before destroying the player object to make sure that the rendering thread finished whatever it was doing, and then stops (note: we called gst_opensles_ringbuffer_stop() before this already). 2014-05-15 20:34:48 -0300 Thiago Santos * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: mpegtsdescriptor: fix gobject-introspection warnings Adds missing : to gobject-introspection markers 2014-05-15 19:16:30 -0300 Thiago Santos * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: sections: prevent assertion when packet parsing fails the descriptors entry can be left as NULL and freeing the structure will fail (assertion happens) 2014-05-14 21:32:10 +0200 Nicola Murino * ext/opencv/gstmotioncells.c: motioncells: fix memleak Check gst_buffer_map return and remember to unmap and free memory before returning https://bugzilla.gnome.org/show_bug.cgi?id=730133 2014-05-14 11:47:03 +0200 Wim Taymans * sys/bluez/gstavdtputil.c: bluez: fix property names These were forgotten when they got renamed. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=729731 2014-05-13 14:13:57 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl/download: update to be similar to the glupload semantics 2014-05-13 14:07:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: fix up alpha clobbering Previously it would only work if the alpha value was in the last component (RGBx, BGRx). Now it works wherever the alpha value may be (xRGB, xBGR, etc). 2014-05-14 00:23:35 +0100 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: post error message when erroring out on unsupported essence wrapping 2014-04-10 16:10:06 +0200 Aurélien Zanelli * Android.mk: Add missing backslash in Android.mk https://bugzilla.gnome.org/show_bug.cgi?id=727968 2014-05-13 16:29:46 -0300 Thiago Santos * ext/hls/gsthlssink.c: hlssink: do not leak playlist object In finalize, also release the playlist 2014-05-13 13:16:34 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglfilter.c: glfilter: Fix building without EGL support This fixes the OSX build and any builds with --disable-egl. That issue was introduced in "glfilter: rewrite transform_caps to preserve caps fields". https://bugzilla.gnome.org/show_bug.cgi?id=729861 2014-05-13 13:30:47 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: rewrite transform_caps to preserve caps fields https://bugzilla.gnome.org/show_bug.cgi?id=729861 2014-05-13 10:53:19 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: gl/colorconvert: use the texture scaling from the gl memory The colorconvert values were not being used at all. https://bugzilla.gnome.org/show_bug.cgi?id=729896 2014-05-12 19:29:45 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: Fix handling of stride with alignement larger then 8 Setting a scaled factor for X coordinate is not enough as the indexer will still think stride is shorter and will not fully skip it. Instead, update width, so the lines are as expected. Combined with the scale, it will hide the cropped portion. https://bugzilla.gnome.org/show_bug.cgi?id=729896 2014-05-13 11:22:58 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: mpdparser: properly unref gstdatetime Avoid leaking the GstDateTime instances when summing dates CID #1212143 2014-05-13 10:24:51 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: mpdparser: avoid double free of segment timeline node The parsing function already frees the old value (if any), avoid a double free by not freeing it before calling the function without setting the pointer to NULL Coverity ID: 1212178 2014-05-13 10:13:37 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: mpdparser: avoid double free The _parse_url function already frees the previous pointer, avoid freeing it before without setting to null or we have a double free. Coverity ID: 1212181 Coverity ID: 1212180 Coverity ID: 1212179 2014-05-13 14:21:15 +0200 Edward Hervey * ext/schroedinger/gstschrodec.c: schrodec: Use pool configuration It was leaking the config, but also not using it... CID #1212155 2014-05-13 14:15:24 +0200 Edward Hervey * ext/rsvg/gstrsvgdec.c: rsvg: Don't leak GstVideoCodecState And avoid useless call to _get_output_state (set_output_state() already returns it). CID #1212160 CID #1212161 2014-05-13 13:54:23 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Small rewrite Setting done was useless anyway 2014-05-13 13:52:48 +0200 Edward Hervey * ext/dash/gstmpdparser.c: dash: Don't leak GstActiveStream CID #1212142 2014-05-13 11:41:42 +0200 Edward Hervey * sys/shm/gstshmsrc.c: shm: Don't leak GstShmPipe By reordering the leaking code path to before the allocation CID #1212153 2014-05-13 11:38:44 +0200 Edward Hervey * gst/vmnc/vmncdec.c: vmndec: Don't leak output state _set_output_state returns a reference to the codec state. CID #1212170 2014-05-13 11:35:46 +0200 Edward Hervey * gst/sdp/gstsdpdemux.c: sdpdemux: Don't leak adapter data CID #1212158 2014-05-13 11:30:35 +0200 Edward Hervey * gst/mpegpsmux/psmuxstream.c: mpegpsmux; Fix stream leak CID #1212164 2014-05-13 11:23:42 +0200 Edward Hervey * gst/jp2kdecimator/jp2kcodestream.c: jp2kdecimator: Don't leak various slices and arrays CID #1212139 CID #1212140 CID #1212141 2014-05-13 11:19:24 +0200 Edward Hervey * gst/asfmux/gstasfobjects.c: asfmux: Don't leak bytereader By making it go through the error path that takes care of cleanups CID #1212168 2014-05-12 13:50:47 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Ensure we still have a texture after upload_set_format() gst_gl_upload_set_format() resets the upload, hence the texture. So we need to ensure we have a texture after this call when uploading. 2014-05-12 12:59:59 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Correctly update the video info from video meta Using gst_video_info_set_format() isn't complete when updating a video info from video meta. 2014-05-12 12:57:18 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Correctly update video info in upload fallback When the upload accelerated method fails, we fallback to an upload, but the video info was not correctly updated. 2014-05-12 18:28:45 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: avoid deadlocking when erroring It might get stuck when posting the message while a reconfigure event is being pushed upstream 2014-05-12 17:37:16 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: fix caps leak 2014-05-12 15:43:05 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: handle error messages from internal source set up a bin message handler to get notified of error messages from the internal source element 2014-05-12 14:58:45 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: Always accept the latency configure event Upstream or internal elements are irrelevant and we should always succeed. 2014-05-12 14:51:00 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: reenable segment tracking for streams Store the latest pushed timestamp so that mssdemux streams know where they are in time 2014-05-12 14:23:15 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: deprecate unused max-queue-size-buffers There is no internal storage of buffers anymore 2014-05-12 14:18:13 -0300 Thiago Santos * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstdownloadrate.c: * ext/smoothstreaming/gstdownloadrate.h: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: measure bitrate similarly to hlsdemux new bitrate = (old bitrate + (last fragment bitrate * 3)) / 4 2014-05-12 13:40:19 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: remove uridownloader in favor of internal source Refactor mssdemux to remove uridownloader to use an internal source element which reduces startup latency and provides smaller buffers for better buffering management downstream 2014-05-12 13:28:35 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: initialize the mutex and cond for fragment download 2014-05-12 13:32:31 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl/upload: set out_tex after reset, not before Fix a regression introduced recently with the lazy init. It was happening when calling gst_video_gl_texture_upload_meta_upload from an aplication. So not using gst_gl_upload_perform_with_buffer. 2014-05-11 12:48:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: update the video info on mapping a video frame The buffer should contain the most specific data on how the data is formatted. We should use this information. https://bugzilla.gnome.org/show_bug.cgi?id=729896 2014-05-12 21:56:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/convert: clobber alpha channel when needed Needed in the conversion from padded RGB formats to formats with an alpha channel. e.g. BGRx -> ABGR, etc https://bugzilla.gnome.org/show_bug.cgi?id=729742 2014-05-12 21:51:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: avoid performing color conversion when there is no need One such example is when the buffer contains GstGLMemory in the RGBA format https://bugzilla.gnome.org/show_bug.cgi?id=729278 2014-05-12 10:01:43 +0200 Sebastian Dröge * sys/dvb/gstdvbsrc.c: dvbsrc: Don't free string we're still using CID 1213780 2014-05-11 15:26:45 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: remove unused stream uridownloader The uridownloader for the stream fragments isn't used anymore. 2014-05-11 07:56:17 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Do not try to add a feature to a caps features ANY It does not makes sense and asserts Based on 7f9aac386fd5d5921c80100889a5f212c0148a88 from gst-plugins-base. 2014-05-11 07:55:59 +0200 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Do not try to add a feature to a caps features ANY It does not makes sense and asserts. Based on 7f9aac386fd5d5921c80100889a5f212c0148a88 from gst-plugins-base. 2014-05-11 14:02:34 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: choose the right alpha component for AYUV -> RGBA 2014-05-11 10:27:02 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: update the respective state when we cache textures/data 2014-05-01 02:10:20 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: drop C++ style comments This patch builds on previous work done by Fabrizio (Misto) Milo https://bugzilla.gnome.org/show_bug.cgi?id=641204 2014-05-01 01:58:03 -0400 Reynaldo H. Verdejo Pinochet * sys/dvb/gstdvbsrc.c: dvbsrc: fix up error reporting This patch builds on previous work done by Fabrizio (Misto) Milo https://bugzilla.gnome.org/show_bug.cgi?id=641204 2014-05-10 23:33:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: cache the textures that we are using 2014-05-10 22:48:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: avoid recreating the GLMemory struct for output textures 2014-04-11 19:38:32 +0100 Tim-Philipp Müller * ext/rtmp/gstrtmpsrc.c: rtmpsrc: error out if we get EOS immediately without any data It's not really right to just go EOS as if nothing was wrong. 2014-05-10 12:54:58 +0100 Tim-Philipp Müller * gst/mpegtsdemux/tsdemux.c: tsdemux: remove confusing debug log line 2014-05-07 20:08:08 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: factories don't need the lock An atomic is enough, they can only be set once. 2014-05-09 20:06:12 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: Revert "autoconvert: Handle caps query on internal srcpad" This is not needed anymore if the gst_pad_link checks nothing. This reverts commit a303375a3f5c12e97ca8bf50b5a93ce8652faf23. 2014-05-09 20:12:27 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: No need to check anything when linking internal pads 2014-05-09 20:05:07 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Don't ignore elements accepted ANY, it is valid 2014-05-09 18:49:14 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Remove broken usage of the iterator We're a subclass, so we can just take the object lock and iterate the list directly. 2014-05-08 19:35:07 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Process upstream getcaps Process it like downstream getcaps 2014-05-07 20:00:08 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Return the GList of factories, to a pointer to it. 2014-05-07 19:54:46 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: subelement can only be change with stream lock held It was already the case, now be more explicit about that, and remove useless lock/ref/unlock/unref dances. 2014-05-07 19:48:49 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Keep a ref to the pads too Simplifies the code 2014-05-07 19:47:04 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Remove uneeded if() NULL is valid GList 2014-05-07 19:44:11 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Always push reconfigure upstream too A reconfigure could trigger a change of contents instead of just reconfiguring the internal element 2014-05-07 19:43:13 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Remove unused internal parameter 2014-05-09 18:59:46 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglupload.c: gl: Fix some of the error handling 2014-05-09 17:59:43 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglupload.c: glupload: Update GstVideoInfo after the buffer is mapped gst_video_frame_map() will store an updated video info base on the video meta. In order to have the right stride and offset we should update that video info accordingly. 2014-05-09 15:42:08 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshadervariables.c: gl: Fix memory leak CID #1212171 2014-05-09 15:26:31 +0200 Sebastian Dröge * ext/hls/m3u8.c: hls: Remove invalid free data does not have to be freed at all here, it's a pointer to an arbitrary position inside the current line. Also don't reuse the data variable for anything else, that will cause crashes in playlists that have the I-frame playlist URI followed by other attributes. CID 1212127 2014-05-09 14:31:57 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Fix leak The cell extension was never added to the parent cell CID #1212162 2014-05-09 22:22:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/colorconvert: preserve alpha in AYUV <-> RGBA conversions https://bugzilla.gnome.org/show_bug.cgi?id=729743 2014-05-09 18:07:03 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: gl/colorconvert: implement lazy init 2014-05-08 15:38:24 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl/upload: set initted to TRUE when _init_upload succeeded 2014-05-08 22:49:33 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: gldisplay: Use GST_STR_NULL() for printing possibly NULL strings and print all variables we use Fixes compiler warning about set but not used platform_choice variable among other things. 2014-05-08 16:08:08 +0100 Julien Isorce * ext/gl/gstgleffects.c: gleffects: use gl_vtable 2014-05-08 17:28:11 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: fix compilation on OS X 2014-05-08 15:40:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: fail propoerly if init fails 2014-05-08 15:30:49 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: gl: make all GObjects inherit from GstObject Aids memory leak debugging with GST_TRACE=mem-live 2014-05-08 13:46:29 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglupload.c: gl/upload: implement lazy init Rename init_format to set_format 2014-05-08 00:59:42 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl/upload: add get_format method Simply retreives the format set by init_format 2014-05-08 00:48:07 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: attempt to passthrough the pool if the caps are the same Reduces the number of glbufferpool instances required for >=2 consecutive GL elements in a pipeline. 2014-05-08 00:43:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: gl/filter: always initialize the upload object 2014-05-07 21:45:53 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: gl: advertise GstGLMemory usage in the caps as capsfeatures https://bugzilla.gnome.org/show_bug.cgi?id=729658 2014-05-07 20:12:23 +1000 Matthew Waters * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: gl/examples: fix compilation for clutter examples ClutterX11TexturePixmap is deprecated in Clutter 1.6 and we ask for at least 1.8 2014-05-07 19:05:55 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/display: avoid endless recursion for cocoa 2014-05-06 08:52:27 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: deprecate max-buffering-time property It is not used as dashdemux doesn't have a internal buffer for fragments anymore 2014-05-06 01:56:28 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: removing old unused code The 'catch up mode' isn't needed anymore since dashdemux is downloading and pushing from the same thread 2014-05-05 10:13:15 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: remember to set starting fragment to new fragments 2014-05-02 18:34:04 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: handle a few more error cases related to missing plugins, bad URI and a lockup on dealing with errors from the source. 2014-05-02 18:32:56 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: Only set timestamp to the first buffer of fragments Setting it to the other parts of the fragment is slightly wrong and misleading as it isn't accurate enough. 2014-05-02 18:30:05 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: handle error messages from the sources Set up a message handling function to be able to catch errors from the source element and signal the cond to allow the download loop to retry the download. 2014-05-01 21:04:54 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: check for errors between downloads To abort earlier in case of failures 2014-05-01 21:00:32 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: Always accept the latency configure event Upstream or internal elements are irrelevant and we should always succeed. 2014-05-01 12:04:51 -0300 Thiago Santos * ext/dash/Makefile.am: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstdownloadrate.c: * ext/dash/gstdownloadrate.h: dashdemux: measure download rate just like hlsdemux new bitrate = (old bitrate + (last fragment bitrate * 3)) / 4 2014-04-25 08:50:18 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: remove uridownloader from fragments download Instead, use a source element linked to a ghostpad to provide smaller buffers and more granular control for downstream buffering elements while also reducing startup latency 2014-05-07 09:11:25 +1000 Matthew Waters * ext/gl/gstglimagesink.c: gl/sink: make sure we always initialize the upload object https://bugzilla.gnome.org/show_bug.cgi?id=729542 2014-05-06 19:24:55 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: fix internal source event leaks 2014-05-06 11:59:24 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl: do not allocate the target texture of an EGLImage The target texture of an EGLImage is the texture bind just before calling glEGLImageTargetTexture2D. As we currently only support a gl texture as the source of an EGLImage the gl texture is actually already allocated when creating the eglimage. I also see some cases where it fails to upload an eglimage when glTexImage2D is called on the target. 2014-05-06 11:51:31 +0100 Julien Isorce * gst-libs/gst/gl/gstglutils.c: gl: allow to avoid calling glTexImage2D(w, h, NULL) when generating a texture Just pass 0 as width or height to gst_gl_context_gen_texture. 2014-05-06 11:27:47 +0100 Julien Isorce * gst-libs/gst/gl/gstglbufferpool.c: gl: no need to initialize a frame buffer object to upload an eglimage Fix https://bugzilla.gnome.org/show_bug.cgi?id=729588 2014-05-06 11:21:56 +0100 Julien Isorce * gst-libs/gst/gl/egl/gsteglimagememory.c: gl: use GST_CAT_ERROR instead of GST_ERROR_OBJECT It fixes segault when GST_DEBUG is at least level 1 and eglCreateImage fails 2014-05-06 10:14:26 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl: delete texture used with GstVideoGLTextureUploadMeta 2014-05-06 14:23:34 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl: use gst_gl_context_gen_shader helper instead of duplicating code 2014-05-06 09:55:05 -0400 Luis de Bethencourt * gst/pnm/gstpnmenc.c: pnmenc: remove empty line Remove trailing empty line from commit bfdc54395238c04fc6e5b51880c2d706f33e9011 https://bugzilla.gnome.org/show_bug.cgi?id=729614 2013-11-20 12:16:17 +0100 Jesper Larsen * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: Remove unused data in TsMuxSection https://bugzilla.gnome.org/show_bug.cgi?id=721685 2014-05-06 21:17:59 +1000 Matthew Waters * tests/check/Makefile.am: tests: reenable camerabin element test 2014-05-06 16:39:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * tests/check/Makefile.am: gl/display: clean up pre gstglcontext api and struct fields https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 17:27:15 +1000 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl/display: add get_handle_type https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 17:08:18 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/display: avoid opening the X11 display on systems with Cocoa (OS X) https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 16:39:55 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: fix string length check for eagl 2014-05-06 16:31:28 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: gl/display: check the correct env variable for choosing an egl display GST_GL_WINDOW is used for window system specific choices. An EGLDisplay can be created from window systems with egl support by using eglGetDisplay(). https://bugzilla.gnome.org/show_bug.cgi?id=729551 2014-05-06 12:56:25 +0200 Edward Hervey * gst-libs/gst/gl/cocoa/Makefile.am: gl/cocoa: Use OBJCFLAGS where needed Should fix usage of c-compiler-only flags with an objective-c compiler 2014-05-06 09:48:58 +0100 Tim-Philipp Müller * gst/pnm/gstpnmenc.c: pnmenc: fix flow return and buffer leak in not-negotiated case https://bugzilla.gnome.org/show_bug.cgi?id=729614 2014-05-06 09:40:01 +0100 Tim-Philipp Müller * tests/icles/.gitignore: tests: add new vp8parser-test binary to .gitignore 2014-05-05 17:20:45 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Don't reset stream if the key hasn't changed 2014-05-05 17:00:02 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: srtpdec: Add "remove-key" action signal to remove a single key Removing all the keys can be a problem as it also resets the various counters, so instead add an option to remove a single key. 2014-05-05 22:25:08 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: srtpenc: Use %u in templates to match rtpbin 2014-05-06 00:11:26 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Remove unused field 2014-05-06 09:23:13 +0530 Sanjay NM * gst/pnm/gstpnmenc.c: Fix for not checking zero width and height Signed-off-by: Sanjay NM https://bugzilla.gnome.org/show_bug.cgi?id=729614 2014-05-05 11:13:09 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: Only set the segment position if there is a timestamp Only the first buffer of a fragment has its timestamp set, so only update the segment.position when pushing those buffers to avoid having GST_CLOCK_TIME_NONE set to the position https://bugzilla.gnome.org/show_bug.cgi?id=729364 2014-05-05 12:30:32 +0200 Sebastian Dröge * configure.ac: configure: Use the same includes for GL that we would use later in the code for checking if GLES2 and OpenGL headers can both be included 2014-05-05 20:06:29 +1000 Matthew Waters * configure.ac: gl: check if we can include both GL and GLES2 headers at the same time If we cannot, then default to GL over GLES2 unless GLES2 is required. 2014-05-05 09:46:06 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Set Cache-Control header according to the caching requirements of the playlist 2014-05-05 09:38:14 +0200 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: mssdemux: Update for uri downloader API changes 2014-05-05 09:37:44 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Update for uri downloader API changes 2014-05-05 09:36:56 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: Add parameter to disallow caching as required by HLS 2014-05-05 09:34:56 +0200 Sebastian Dröge * ext/hls/m3u8.c: * ext/hls/m3u8.h: hls: Store allowcache playlist field in a boolean 2014-05-04 22:22:14 +0200 Sebastian Dröge * configure.ac: configure: Use the same #includes for checking GL types as later in the code 2014-05-03 21:38:42 -0400 Luis de Bethencourt * tests/examples/gl/clutter/cluttershare.c: gl/clutter: safer check for cogl version Use COGL_VERSION_ENCODE to check for the minimum required and maximum allowed cogl version. In certain situations just using the COGL_VERSION_* macro name can give you the following error: error "COGL_VERSION_MAX_ALLOWED must be >= COGL_VERSION_MIN_REQUIRED" 2014-05-03 21:05:19 -0400 Luis de Bethencourt * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/recordgraphic/main.cpp: gl/examples/generic: remove trailing whitespaces 2014-05-03 20:48:33 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.3.1 === 2014-05-03 18:16:21 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * gst/audiomixer/gstaudiomixerorc-dist.c: * gst/bayer/gstbayerorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/gaudieffects/gstgaudieffectsorc-dist.c: * win32/common/config.h: * win32/common/libgstcodecparsers.def: Release 1.3.1 2014-05-03 18:16:07 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2014-05-03 19:45:37 +0200 Sebastian Dröge * tests/examples/gl/clutter/Makefile.am: examples: Fix CFLAGS in clutter GL examples 2014-05-03 19:42:37 +0200 Sebastian Dröge * tests/examples/gl/Makefile.am: examples: Add all gl subdirs to DIST_SUBDIRS to fix the build 2014-05-03 17:24:17 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: Update translations 2014-05-03 13:12:40 +0200 Sebastian Dröge * Makefile.am: * configure.ac: * sys/Makefile.am: * sys/mfc/Makefile.am: * sys/mfc/fimc/fimc.c: * sys/mfc/fimc/fimc.h: * sys/mfc/gstmfc.c: * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: * sys/mfc/mfc_decoder/mfc_decoder.c: * sys/mfc/mfc_decoder/mfc_decoder.h: mfc: Remove mfc plugin, it is obsoleted by the v4l2videodec element from gst-plugins-good 2014-05-03 12:02:27 +0200 Sebastian Dröge * tests/check/elements/mpegtsmux.c: mpegtsmux: Use complete caps for setting up the streams in the test 2014-05-03 10:15:16 +0200 Sebastian Dröge * common: Automatic update of common submodule From bcb1518 to 211fa5f 2014-03-19 09:22:08 +0100 Per x Johansson * gst/debugutils/gstwatchdog.c: watchdog: Add handling of PAUSED state Also allow disabling the timeout by setting it to 0. https://bugzilla.gnome.org/show_bug.cgi?id=726156 2014-05-02 17:27:56 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: srtpenc: Add config for the replay window size 2014-05-02 17:24:47 -0400 Olivier Crête * ext/srtp/gstsrtpenc.h: srtpenc: Remove unused object members 2014-05-02 17:19:21 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: srtpenc: Remove useless structure Remove now useless structure 2014-05-02 17:14:14 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: srtpenc: Remove ssrc parsing from stream It's no longer used 2014-05-02 17:13:54 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: srtpenc: Remove SSRC from signal, it's meaningless 2014-05-02 17:07:21 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: srtpenc: Set the SRTP key as a shared key for all SSRCs This is already how it was used. 2014-05-02 14:20:58 +0200 Blake Tregre * gst/librfb/gstrfbsrc.c: rfbsrc: Send stream-start event in the beginning https://bugzilla.gnome.org/show_bug.cgi?id=726802 2014-05-02 10:44:41 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Update for URI downloader API changes And make sure to set refresh=TRUE when updating the playlist. 2014-05-02 10:43:06 +0200 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: mssdemux: Update for URI downloader API changes And include the manifest file as referer in requests, and make sure to set refresh=TRUE when updating the manifest. 2014-05-02 10:39:22 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Update for URI downloader API changes And include the MPD file as referer in requests, and make sure to set refresh=TRUE when updating the MPD. 2014-05-02 10:36:21 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: Add refresh parameter to hint caches that they should check if they're up to date 2014-05-02 15:56:59 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfilter.c: gl: use the bufferpool's upload when available Avoids duplicating GL resources https://bugzilla.gnome.org/show_bug.cgi?id=728872 2014-05-02 05:57:00 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl: show internal cocoa window on top of others Useful when your OSX terminal is fullscreen https://bugzilla.gnome.org/show_bug.cgi?id=728127 2014-05-02 05:51:36 +0100 Julien Isorce * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl: pass NSView instead of NSWindow in cocoa-videooverlay example https://bugzilla.gnome.org/show_bug.cgi?id=728451 2014-05-02 05:50:18 +0100 Julien Isorce * tests/examples/gl/cocoa/cocoa-videooverlay.m: gl: add copyright to cocoa example 2014-05-02 05:46:18 +0100 Julien Isorce * configure.ac: * tests/examples/gl/cocoa/.gitignore: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/cocoa-videooverlay.m: * tests/examples/gl/cocoa/videooverlay/.gitignore: * tests/examples/gl/cocoa/videooverlay/Makefile.am: gl: rename cocoa example and move it to its parent directory 2014-05-02 05:29:41 +0100 Julien Isorce * tests/examples/gl/cocoa/README: gl: remove unuseful README for cocoa example 2014-05-01 16:07:05 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: gl/pool: init the upload object on start Theoretically, set_config could be called multiple times 2014-05-01 19:16:35 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Only clear streams if they have been created 2014-05-01 19:10:43 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Use object debug 2014-05-01 15:59:28 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Always succeed the LATENCY event Upstream and our internal source is irrelevant for the latency and we don't want the LATENCY event to ever fail. 2014-05-01 15:56:55 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Reset the last flow return before restarting the internal source Otherwise we will never recover from previous errors, and especially will never start again after a flushing seek if downstream returned GST_FLOW_FLUSHING to us. 2014-05-01 15:29:37 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Only set PTS on the first buffer of a fragment instead of setting the same on all of them 2014-04-30 17:59:28 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Always flush the internal proxy pads before downloading hlsdemux can't rely on the source to push flushes on a seek on ready as that might not make sense. So always resort to flushing the internal proxy pads by pushing flush events from the source's src pad. Also as the seeking is not required anymore, only seek if there is really a byte range to be used. And store a ref to the source's src pad to avoid doing get_static_pad for every fragment. 2014-05-01 14:36:54 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl: Try harder to load symbols from the correct place This commit makes the loading of the GModules threadsafe, and always first tries to load the symbol for the GL library that is selected for the current context. Only then it falls back to looking into the current module (NULL), and only as a last resort the context specific function (e.g. eglGetProcAddress()) is called. Also add configure parameters to select the names of the library modules instead of using the defaults, and let the defaults be independent of the G_MODULE_SUFFIX. https://bugzilla.gnome.org/show_bug.cgi?id=728753 2014-05-01 14:11:00 +1000 Matthew Waters * ext/gl/gstglcolorscale.c: glcolorscale: fix operation with dual GL, GLES2 libgstgl 2014-05-01 13:57:16 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: gl/mem: implement texture copying between formats with strides properly Previously, we used the width to determine the amount of data to be copied using pbos. This, makes it allocate enough data for the the strides as well. 2014-05-01 12:51:06 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.h: gl/mem: pad the public struct 2014-04-30 18:37:27 +0100 Nicolas Dufresne * gst-libs/gst/gl/gstglcontext.c: gl: no need to provide full lib path to load symbols - Make gstgl work on Mali - Keep it work on RPI - fallback to NULL name module if fails with usual lib name https://bugzilla.gnome.org/show_bug.cgi?id=728753 2014-04-30 10:05:15 +0100 Vincent Penquerc'h * ext/kate/gstkatespu.c: kate: avoid read buffer overflow in crafted stream Coverity 1208777 2014-04-30 17:30:06 +0100 Julien Isorce * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: glcolorscale: use a shader on GLESv2 Otherwise you only see black frames Fix https://bugzilla.gnome.org/show_bug.cgi?id=728947 2014-04-30 15:30:53 +0100 Julien Isorce * ext/gl/gstglimagesink.c: glimagesink: use new helper function to avoid duplicating default shader text 2014-04-30 15:28:35 +0100 Julien Isorce * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: gleffects: use new helper functions to avoid duplicating the same vertex shader text And also use the default fragment shader text for the identity effect 2014-04-30 15:20:23 +0100 Julien Isorce * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: gl: add convenient functions to setup default vertex and fragment shaders Most of our 2D filters use the same simple vertex shader. Also define the default fragment shader as the identity. Avoid duplicating the same vertex and fragment shader text. 2014-04-30 08:53:19 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Only unref pending buffer if there is one 2014-04-29 18:15:05 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: Do not push last buffer after error In decryption scenario, a buffer is always stored to be sent later to wait for more data or EOS to be able to strip the final bytes if requested. In case an error hapenned this buffer can be ignored and not pushed downstream. 2014-04-29 18:14:29 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: flush the adapter in the end of a fragment In case of error there might be some data left in the adapter when EOS is received. Clear the adapter to be able to restart again later if requested. 2014-04-29 18:14:14 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: handle more error cases Handle some more error cases: 1) When the source element fails to go to ready 2) When decryption fails 3) When there is no source to handle a specific URI 4) When the URI is invalid 2014-04-29 15:19:51 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: handle errors from internal source Set up a message handling function to catch errors from the internal source and store the last return code to identify error situations when returning from a fragment download. Also moves the duration increase to after the download when we know if it was successful or not 2014-04-29 15:17:00 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Improve pad switching conditions When using the internal source, hlsdemux doesn't know the caps of the input before adding the pad, so remove the arguments that would use that as it is always NULL. And use an specific flag to signal when a pad switch is required. Using the discont flag is a bad idea now because when a fragment download fails it will lead to exposing a pad group without any data, causing decodebin to abort. 2014-04-28 20:01:48 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: properly flush decryption status on seeks Avoids mixing decryption of different fragments when seeking happens and leading to broken stream output. 2014-04-28 19:10:02 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Track fragments duration When receving EOS from the internal src, increase the current positon by the fragment duration to allow correct restoring of download position if the bitrate changes 2014-04-25 12:55:54 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: properly stop tasks by stopping fragment download Issue a signal to the fragment download cond to stop the task earlier 2014-04-25 10:40:50 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: decrypt before typefinding Make sure typefinding gets the decrypted content instead of trying to typefind the encrypted data. 2014-04-25 10:39:19 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: fix decryption function return Correctly return the decrypted buffer when it succeeds and return NULL otherwise 2014-04-22 20:19:54 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: keep connection alive between downloads Use the same properties as uridownloader to keep connections alive between consecutive fragments downloads. 1) set keep-alive property to true 2) keep the element in READY instead of in NULL 2014-04-16 20:02:35 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: create sources from uri Instead of using always an http source, create it dynamically from uri when needed. If not needed just replace the URI on the current element 2014-04-16 18:04:05 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: do not try to run typefind again if caps is the same Always reset the do_typefind flag if hls did typefind because trying it on non-zero offsets doesn't make sense and will cause assertions 2014-04-16 06:12:42 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: enable download bitrate measure Measure the download bitrate to be able to select the best playlist. As the buffers are directly pushed downstream and it might block. The time is only measured from the download until the pad push and it is started again after the push returns. 2014-04-08 17:31:32 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: re-enable decryption after uridownloader removal Now the decryption is done buffer by buffer instead of on the whole fragment at once. As it expects multiples of 16 bytes a GstAdapter was added to properly chunk the buffers. Also the last buffer must be resized depending on the value of the last byte of the fragment, so hlsdemux always keeps a pending buffer as it doesn't know if it is the last one yet 2014-04-07 13:57:26 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: replace uridownloader with a GstElement The GstElement is directly linked into a ghost pad and its buffers are pushed as received downstream. This way the buffers are small enough and not a whole fragment that usually causes extra latency and makes buffering harder 2014-04-29 19:24:08 +0100 Philippe Normand * gst-libs/gst/gl/gstglutils.h: gl: add missing G_BEGIN/END_DECLS in utils header 2014-04-29 13:21:27 -0300 Thiago Santos * tests/examples/gl/gtk/Makefile.am: examples: gl: add missing entry to cflags to find gst/gl/gl.h Otherwise build fails 2014-04-29 16:44:59 +0200 Stefan Sauer * tests/examples/gl/gtk/gstgtk.c: tests: drop direct include It is only allowed to include gdk/gdkx.h and that will bring all the x11 things. 2014-01-06 22:13:21 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sndfile: send a toc for the segments in the audio file 2014-04-29 15:06:00 +0000 Haakon Sporsheim (ieei) * gst/videoparsers/gsth264parse.c: h264parse: unref/replace force_key_unit_event in gst_h264_parse_reset https://bugzilla.gnome.org/show_bug.cgi?id=729200 2014-04-29 22:18:14 +1000 Jan Schmidt * tests/examples/gl/sdl/Makefile.am: gl/sdl example: Fix uninstalled build 2014-04-23 20:29:47 +1000 Jan Schmidt * gst-libs/gst/gl/gstglutils.c: gl: Reduce noisy Info level output to LOG 2014-04-29 18:32:22 +1000 Matthew Waters * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/sdlshare.c: gl/examples/sdl: update for the latest gstgl changes 2014-04-29 16:38:55 +1000 Matthew Waters * configure.ac: * tests/examples/Makefile.am: * tests/examples/gl/Makefile.am: * tests/examples/gl/clutter/.gitignore: * tests/examples/gl/clutter/Makefile.am: * tests/examples/gl/clutter/clutteractor.c: * tests/examples/gl/clutter/clutteractortee.c: * tests/examples/gl/clutter/cluttershare.c: * tests/examples/gl/clutter/cluttershare.cbp: * tests/examples/gl/cocoa/Makefile.am: * tests/examples/gl/cocoa/README: * tests/examples/gl/cocoa/videooverlay/.gitignore: * tests/examples/gl/cocoa/videooverlay/Makefile.am: * tests/examples/gl/cocoa/videooverlay/main.m: * tests/examples/gl/generic/Makefile.am: * tests/examples/gl/generic/README: * tests/examples/gl/generic/cube/.gitignore: * tests/examples/gl/generic/cube/Makefile.am: * tests/examples/gl/generic/cube/cube.vcproj: * tests/examples/gl/generic/cube/main.cpp: * tests/examples/gl/generic/cubeyuv/.gitignore: * tests/examples/gl/generic/cubeyuv/Makefile.am: * tests/examples/gl/generic/cubeyuv/cubeyuv.vcproj: * tests/examples/gl/generic/cubeyuv/main.cpp: * tests/examples/gl/generic/doublecube/.gitignore: * tests/examples/gl/generic/doublecube/Makefile.am: * tests/examples/gl/generic/doublecube/doublecube.vcproj: * tests/examples/gl/generic/doublecube/main.cpp: * tests/examples/gl/generic/generic.sln: * tests/examples/gl/generic/recordgraphic/.gitignore: * tests/examples/gl/generic/recordgraphic/Makefile.am: * tests/examples/gl/generic/recordgraphic/main.cpp: * tests/examples/gl/generic/recordgraphic/recordgraphic.vcproj: * tests/examples/gl/gtk/Makefile.am: * tests/examples/gl/gtk/README: * tests/examples/gl/gtk/filternovideooverlay/.gitignore: * tests/examples/gl/gtk/filternovideooverlay/Makefile.am: * tests/examples/gl/gtk/filternovideooverlay/filternovideooverlay.vcproj: * tests/examples/gl/gtk/filternovideooverlay/main.cpp: * tests/examples/gl/gtk/filtervideooverlay/.gitignore: * tests/examples/gl/gtk/filtervideooverlay/Makefile.am: * tests/examples/gl/gtk/filtervideooverlay/filtervideooverlay.vcproj: * tests/examples/gl/gtk/filtervideooverlay/main.cpp: * tests/examples/gl/gtk/fxtest/.gitignore: * tests/examples/gl/gtk/fxtest/Makefile.am: * tests/examples/gl/gtk/fxtest/fxtest.c: * tests/examples/gl/gtk/fxtest/fxtest.vcproj: * tests/examples/gl/gtk/fxtest/pixbufdrop.c: * tests/examples/gl/gtk/gstgtk.c: * tests/examples/gl/gtk/gstgtk.h: * tests/examples/gl/gtk/gtk.sln: * tests/examples/gl/gtk/gtkvideooverlay/.gitignore: * tests/examples/gl/gtk/gtkvideooverlay/Makefile.am: * tests/examples/gl/gtk/gtkvideooverlay/gtkvideooverlay.vcproj: * tests/examples/gl/gtk/gtkvideooverlay/main.cpp: * tests/examples/gl/gtk/pixbufdrop/pixbufdrop.vcproj: * tests/examples/gl/gtk/switchvideooverlay/.gitignore: * tests/examples/gl/gtk/switchvideooverlay/Makefile.am: * tests/examples/gl/gtk/switchvideooverlay/main.cpp: * tests/examples/gl/gtk/switchvideooverlay/switchvideooverlay.vcproj: * tests/examples/gl/qt/Makefile.am: * tests/examples/gl/qt/README: * tests/examples/gl/qt/mousevideooverlay/gstthread.cpp: * tests/examples/gl/qt/mousevideooverlay/gstthread.h: * tests/examples/gl/qt/mousevideooverlay/main.cpp: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pri: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.pro: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.sln: * tests/examples/gl/qt/mousevideooverlay/mousevideooverlay.vcproj: * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp: * tests/examples/gl/qt/mousevideooverlay/pipeline.h: * tests/examples/gl/qt/mousevideooverlay/qrenderer.cpp: * tests/examples/gl/qt/mousevideooverlay/qrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/gstthread.h: * tests/examples/gl/qt/qglwidgetvideooverlay/main.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.cpp: * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.h: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pri: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.pro: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.sln: * tests/examples/gl/qt/qglwidgetvideooverlay/qglwidgetvideooverlay.vcproj: * tests/examples/gl/qt/qglwtextureshare/AsyncQueue.h: * tests/examples/gl/qt/qglwtextureshare/README: * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm: * tests/examples/gl/qt/qglwtextureshare/glcontextid.h: * tests/examples/gl/qt/qglwtextureshare/gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/gstthread.h: * tests/examples/gl/qt/qglwtextureshare/main.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_gstthread.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/moc_qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp: * tests/examples/gl/qt/qglwtextureshare/pipeline.h: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp: * tests/examples/gl/qt/qglwtextureshare/qglrenderer.h: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare: * tests/examples/gl/qt/qglwtextureshare/qglwtextureshare.pro: * tests/examples/gl/qt/videooverlay/Debug/videooverlay: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_gstthread.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_pipeline.cpp: * tests/examples/gl/qt/videooverlay/GeneratedFiles/debug/moc_qrenderer.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.cpp: * tests/examples/gl/qt/videooverlay/videooverlay.pri: * tests/examples/gl/qt/videooverlay/videooverlay.sln: * tests/examples/gl/qt/videooverlay/videooverlay.vcproj: * tests/examples/gl/qt/videooverlay/videovideooverlay.pro: * tests/examples/gl/sdl/.gitignore: * tests/examples/gl/sdl/Makefile.am: * tests/examples/gl/sdl/sdl.sln: * tests/examples/gl/sdl/sdlshare.c: * tests/examples/gl/sdl/sdlshare.vcproj: gl/examples: move to -bad - fix all the compiler errors - give them their own gl directory 2014-04-28 15:56:06 +0100 Julien Isorce * pkgconfig/gstreamer-egl-uninstalled.pc.in: * pkgconfig/gstreamer-egl.pc.in: egl: remove pc files Forgot to do that in 09116bf10d515d50bdd1e9a20278be816cb762aa: "egl/eglglessink: remove since EGLImage and iOS support have been added in glimagesink" 2014-04-28 15:52:41 +0100 Julien Isorce * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: gl: append GL_LIB and GL_CFLAGS in pc files 2014-04-28 15:47:27 +0100 Julien Isorce * configure.ac: gl: append EGL_LIB to GL_LIB 2014-04-28 15:15:20 +0100 Julien Isorce * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl: use gst_gl_platform_from_string because we support gl shareList on all platforms 2014-04-28 15:07:34 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: glfilter: only warn when other_context attribute is set Fix false positive 2014-04-28 14:54:21 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl: fix string literal warning warning: format not a string literal, argument types not checked [-Wformat-nonliteral] 2014-04-28 10:12:52 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Unset referer if none was specified later on 2014-04-28 09:32:54 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Set Referer in requests to the playlist URI 2014-04-28 09:23:34 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: Add API to specify the referer of a request 2014-04-27 23:29:41 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix parsing of slice groups for map type = 2. When parsing slice groups information for slice_group_map_type = 2, we should only be reading up to num_slice_groups_minus1 groups since there is always a "leftover" slice group and as many "foreground" slice groups as needed. This fixes parsing for SVCBMT-5 and SVCBMT-12 whereby the base layer would have incorrectly been parsed to have up to 38 reference frames in list0, which is not possible. Signed-off-by: Gwenole Beauchesne 2014-04-27 09:25:50 -0400 Nicolas Dufresne * sys/decklink/gstdecklink.cpp: decklink: Don't fail if HW does not have all interfaces This patch completes 1c1cc73a3b230454663971656515297f9ee8bd9f. These changes where accidentally pushed as a separate patch with wrong commit message. https://bugzilla.gnome.org/show_bug.cgi?id=7273 2014-04-27 13:09:52 +0100 Tim-Philipp Müller * sys/decklink/gstdecklink.cpp: Revert "y4mdec: check for VIDEO meta instead of CROP meta" This reverts commit 68309bd21592a96dc8241702f17ded4e5f545f33. Commit message and files changed do not match. 2014-04-27 00:36:32 +0100 Tim-Philipp Müller * ext/daala/gstdaaladec.c: * ext/hls/gsthlsdemux.c: * gst/liveadder/liveadder.c: * gst/sdp/gstsdpdemux.c: * gst/speed/gstspeed.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videosignal/gstsimplevideomark.c: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstvideoanalyse.c: docs: remove outdated and pointless 'Last reviewed' lines from docs They are very confusing for people, and more often than not also just not very accurate. Seeing 'last reviewed: 2005' in your docs is not very confidence-inspiring. Let's just remove those comments. 2014-04-26 08:08:57 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix derivation of default scaling lists. When useDefaultScalingMatrixFlag is computed to be 1 while parsing scaling_list(), then the scaling list shall be inferred to be equal to the default list (7.4.2.1.1.1). That default list is really one of Default_4x4_{Intra,Inter} or Default_8x8_{Intra,Inter} and not one from fall-back rule sets A or B. This fixes parsing for FRExt1_Panasonic_D, FRExt2_Panasonic_C, FRExt3_Panasonic_E and FRExt4_Panasonic_B. https://bugzilla.gnome.org/show_bug.cgi?id=724518 Signed-off-by: Gwenole Beauchesne 2014-04-16 01:50:16 +0200 Sebastian Rasmussen * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurltlssink.c: curl*sink: report errors from curl when setting options https://bugzilla.gnome.org/show_bug.cgi?id=728960 2014-04-15 23:53:32 +0200 Sebastian Rasmussen * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsmtpsink.c: curl*sink: post error on bus in element, not transfer thread https://bugzilla.gnome.org/show_bug.cgi?id=728960 2014-04-22 22:26:32 +0200 Sebastian Rasmussen * ext/curl/gstcurlhttpsink.c: curlhttpsink: allow for unconditionally disabling proxying Previously if the proxy server hostname was the empty string curlhttpsink would never even set the libcurl option. For libcurl however, having a proxy server hostname be the empty string means that proxying should be disabled even if environment variables might be set. Now with the restriction lifted, doing this is allowed. https://bugzilla.gnome.org/show_bug.cgi?id=728960 2014-04-22 22:26:56 +0200 Sebastian Rasmussen * tests/check/elements/curlfilesink.c: * tests/check/elements/curlftpsink.c: * tests/check/elements/curlhttpsink.c: * tests/check/elements/curlsftpsink.c: * tests/check/elements/curlsmtpsink.c: curl*sink: improve return value checks in test cases https://bugzilla.gnome.org/show_bug.cgi?id=728960 2014-04-22 22:26:12 +0200 Sebastian Rasmussen * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurltlssink.c: * tests/check/elements/curlfilesink.c: curl*sink: fix typos https://bugzilla.gnome.org/show_bug.cgi?id=728960 2014-04-16 01:50:03 +0200 Sebastian Rasmussen * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlftpsink.h: * ext/curl/gstcurlsftpsink.h: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsshsink.h: * ext/curl/gstcurltlssink.c: curl*sink: fix some gst-indent problems https://bugzilla.gnome.org/show_bug.cgi?id=728960 2014-04-25 16:18:07 -0400 Luis de Bethencourt * tests/check/libs/gstglmemory.c: gl: check the correct GstGLMemory in basic_test 2014-04-25 17:40:56 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Only require alignment and stream-format for h264, parsed is implicit 2014-04-25 14:41:27 +0200 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Set source state to NULL if downloading failed for whatever reason 2014-04-24 13:59:35 -0400 Nicolas Dufresne * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: Removed unused variable 2014-04-24 18:33:03 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: gl/x11: Get rid of unneeded second display connection and do everything from the main loop 2014-04-24 18:28:34 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: gl/x11: Block rendering until swapbuffers is called and don't go via X11 events as unneeded indirection This should fix QoS problems, where basesink believed it was rendering with 20FPS but actually we were just queueing up X11 Expose events and only once in a while something was rendered. 2014-04-24 16:05:32 +0100 Julien Isorce * ext/gl/gstglimagesink.c: gl: fails glimagesink when shader compilation went wrong Those shaders are fixed and very simple so it should not fail but it's worth to handle a such case. 2014-04-24 15:36:47 +0100 Julien Isorce * ext/gl/gstglimagesink.c: gl: call glClearColor before glClear 2014-04-24 16:33:56 +0200 Josep Torra * pkgconfig/gstreamer-gl-uninstalled.pc.in: pkgconfig: fix gstreamer-gl uninstalled Ensure to provide libgstgl also in the uninstalled setup. Fixes build of gst-omx for RPI in uninstalled setup. 2014-04-24 15:17:41 +0100 Julien Isorce * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/rpi: do not scale to full screen Having a 640x360 movie being scaled to 1900x1200 does not look nice 2014-04-24 14:50:57 +0100 Julien Isorce * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/rpi: change dispmanx attributes of existing element instead of creating a new one I was lucky that: e1 = vc_dispmanx_element_add () eglCreateWindowSurface (e1) vc_dispmanx_element_remove (e1) e2 = vc_dispmanx_element_add () resulted in having e2 equal to e1. And also having the egl surface that does not allocate its buffers before the first draw. 2014-04-24 14:38:40 +0100 Julien Isorce * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: gl/rpi: ensure the dispmanx element to be opaque So that we ensure it does not get alpha composited with other dispmanx elements like the desktop. 2014-04-18 20:04:25 +0200 Andoni Morales Alastruey * sys/applemedia/plugin.m: avfassetsrc: downgrade rank to SECONDARY in OS X 2014-04-18 20:03:48 +0200 Andoni Morales Alastruey * sys/applemedia/avfassetsrc.m: avfassetsrc: rename references to iOS 2014-04-14 19:08:01 +0100 Matthieu Bouron * sys/applemedia/Makefile.am: * sys/applemedia/avfassetsrc.h: * sys/applemedia/avfassetsrc.m: * sys/applemedia/plugin.m: iosavassetsrc: rename element to avfassetsrc https://bugzilla.gnome.org/show_bug.cgi?id=728249 2014-04-03 14:02:18 +0100 Matthieu Bouron * sys/applemedia/Makefile.am: * sys/applemedia/iosassetsrc.m: * sys/applemedia/iosavassetsrc.h: * sys/applemedia/iosavassetsrc.m: * sys/applemedia/plugin.m: iosavassetsrc: Port to 1.0 Also enables this element on OSX >= 10.7. https://bugzilla.gnome.org/show_bug.cgi?id=728249 2013-05-11 03:41:36 +0200 Andoni Morales Alastruey * sys/applemedia/Makefile.am: * sys/applemedia/iosavassetsrc.h: * sys/applemedia/iosavassetsrc.m: * sys/applemedia/plugin.m: applemedia: add new source/decoder element for iOS assets https://bugzilla.gnome.org/show_bug.cgi?id=728249 2014-04-09 10:55:03 +0100 Matthieu Bouron * sys/applemedia/avfvideosrc.m: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/vtenc.c: coremediabuffer: handle stride alignment Handle stride alignment through the use of the video meta API. The code is based on the corevideobuffer implementation. If the video meta API is not supported and the underlying buffer contains padding, the core media buffer is copied to a system memory buffer. https://bugzilla.gnome.org/show_bug.cgi?id=727885 2014-04-09 11:47:12 +0100 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: check if downstream supports the video meta API Check if downstream supports the video meta API, so we can use it later with the core media buffers. https://bugzilla.gnome.org/show_bug.cgi?id=727953 2014-04-24 10:37:00 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: pass a NSView to set_window_handle instead of a NSWindow Fix backwards compatibility https://bugzilla.gnome.org/show_bug.cgi?id=728451 2014-04-24 09:03:32 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: only draw once the window has been resized It avoids to draw the first frame with an incorrect view port. 2014-04-24 08:49:54 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: set the view to use for drawing by the context It avoids to draw to an invalid buffer. Withtout this the default frame buffer is undefined: glBindFramebuffer (GL_FRAMEBUFFER, 0) Visually you could see some white frames at the beginning when lunching videotestsrc ! glimagesink With OpenGL Profiler from XCode you could see some GL_INVALID_FRAMEBUFFER_OPERATION for the first frames 2014-04-23 14:41:21 +0100 Julien Isorce * gst-libs/gst/gl/gstglupload.c: gl: fix declaration-definition mismatch for _init_upload 2014-04-23 13:34:12 +0100 Julien Isorce * gst-libs/gst/gl/gstglbufferpool.c: gl/bufferpool: do not reset upload when set_config does not change the caps With videotestsrc ! glimagesink it was reset 3 times 2014-04-23 13:30:27 +0100 Julien Isorce * gst-libs/gst/gl/gstglapi.h: gl: use #ifdef instead of #if for __APPLE__ warning: "__APPLE__" is not defined [-Wundef] with gcc version 4.7.2 20120731 (prerelease) (crosstool-NG linaro-1.13.1+bzr2458 - Linaro GCC 2012.08) 2014-04-23 12:42:32 -0400 Nicolas Dufresne * gst-libs/gst/gl/gstglmemory.c: glmemory: User g_slice_new0 to ensure fully initilized structure The pbo pointer not being initialized would trigger a use of unitilialized variable in valgrind. 2014-03-29 18:34:26 -0400 Nicolas Dufresne * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: decklink: Fix support for HW without output Devices suitable for decklinksrc may not have any output, hence querying the input returns NULL. Add support for all cases where input/output/config may be missing. https://bugzilla.gnome.org/show_bug.cgi?id=727306 2014-03-15 15:17:43 +0100 Nicolas Dufresne * sys/decklink/gstdecklink.cpp: y4mdec: check for VIDEO meta instead of CROP meta This element only need stride support, but checks for CROP_META, which is a bit too much, even though this works as CROP imply having VIDEO meta. https://bugzilla.gnome.org/show_bug.cgi?id=726255 2014-04-23 11:10:28 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Use the pixel-aspect-ratio adjusted width/height when centering the frame in the display area Makes sure we actually keep the display aspect ratio 2014-04-23 10:55:38 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: By default keep the display aspect ratio Also the default for the pixel-aspect-ratio should be 1/1, not 0/1. 2014-04-23 10:42:45 +0200 Edward Hervey * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: Flush program end code bytes This should not harm regular files, since those are the last 4 bytes of a normal file. This allows to handle playback of concatenated mpeg-ps files. Seeking and duration reporting is still wrong though. 2014-04-23 10:27:23 +0200 Sebastian Dröge * ext/gl/gstgltestsrc.c: gltestsrc: Unref context when creation failed and guard against that in fill() 2014-04-23 10:24:55 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Call gst_object_unref() on the GstGL GObjects again While they're plain GObjects it does not hurt to call gst_object_unref() on them and potentially allows to debug reference leaks a bit easier. 2014-04-23 10:00:48 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: If creating a context or upload failed, destroy it Fixes deadlocks in error cases when later code assumes the broken context is actually usable. https://bugzilla.gnome.org/show_bug.cgi?id=728761 2014-04-22 12:56:54 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Remove dead code and simplify if statement CID 1204274 2014-04-21 13:15:34 +0100 Vincent Penquerc'h * gst/mxf/mxfmpeg.c: mxf: fix MP2 case Testing mpegversion when mpegaudioversion was likely meant. Similar tests in sys/androidmedia/gstamcaudiodec.c also test mpegaudioversion with the same conditional code. Coverity 206071 2014-04-21 10:36:55 +0100 Vincent Penquerc'h * gst/videoparsers/gstvc1parse.c: vc1parse: guard against dividing by zero If framerate is unknown, we write the maximum framerate allowed for this profile/level: https://tools.ietf.org/html/draft-ietf-avt-rtp-vc1-06#section-6.1 http://wiki.multimedia.cx/index.php?title=VC-1#Setup_Data_.2F_Sequence_Layer Coverity 1139694 2014-04-21 10:07:06 +0100 Vincent Penquerc'h * gst/mxf/mxfmux.c: mxfmux: guard against dividing by 0 Use a placeholder value in that case, it's better than crashing. Coverity 1139697 2014-04-21 09:51:19 +0100 Vincent Penquerc'h * ext/gl/gstglimagesink.c: gl: a couple spelling/grammar fixes 2014-04-21 09:50:19 +0100 Vincent Penquerc'h * ext/gl/gstglimagesink.c: gl: guard against using a NULL window pointer Coverity 1195145 2014-04-21 09:47:08 +0100 Vincent Penquerc'h * gst-libs/gst/gl/gstglmemory.c: gl: prevent division by 0 on unsupported texture type Coverity 1199697 2014-04-21 22:01:47 +1000 Jan Schmidt * gst-libs/gst/gl/gstglcolorconvert.c: glcolorconvert: Fix bt709 conversion matrices. Fix the sign on one entry in the bt.709 YUV->RGB conversion matrix, and the corresponding inverse matrix. Fixes really wrong colouring of some videos. 2014-04-17 09:58:47 +0100 Vincent Penquerc'h * sys/dvb/dvbbasebin.c: dvbbasebin: fix test for proper use count balancing usecount is unsigned, so too many "unuse" will wrap the counter around and the >= 0 check will always be fine. It would be much simpler to just make the counter signed, but moving the checks where the decrements happen allow a mistake to be detected earlier, and thus easier to debug. Coverity 1139791 2014-04-17 09:35:37 +0100 Vincent Penquerc'h * gst/mxf/mxfdemux.c: mxfdemux: guard against NULL non source components This component is dereferenced, and later code checking for NULL in particular cases implies it can be NULL. This likely does not fix the coverity warning as it was seeing another path setting component to NULL explicitely, but this was spotted by looking at: Coverity 1139736 Which is actually OK from what I can see since the actual dereference of the explicit NULL pointer will not happen if the condition that led to the NULL pointer assignment is met, since the assignment and defeference have mutually exclusive tests. 2014-04-17 09:26:20 +0100 Vincent Penquerc'h * gst/rawparse/gstaudioparse.c: rawparse: catch errors in caps manipulation Coverity 1139622 2014-04-18 20:12:37 +0200 Andoni Morales Alastruey * sys/applemedia/vtenc.c: vtenc: fix complier error using fixed lenght arrays 2014-04-18 18:12:36 +0200 Gwenole Beauchesne * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: ivfparse: detect and propagate resolution changes. Detect resolution changes on key frames, and propagate the resulting caps to the src pad. Only the uncompressed data chunk is decoded, so avoid using the new VP8 bitstream parsing library for now. Signed-off-by: Gwenole Beauchesne 2014-04-18 17:34:08 +0200 Gwenole Beauchesne * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: ivfparse: avoid possible division-by-zero when calculating PTS. Avoid possible division-by-zero while deriving the presentation timestamp of the buffer. The base class will take care of any interpolation needs. Signed-off-by: Gwenole Beauchesne 2013-10-25 07:38:53 +0800 Halley Zhao * configure.ac: ivfparse: enable build. Drop `ivfparse' element from the non-ported set of plugins in configure. 2014-03-04 15:46:58 +0100 Gwenole Beauchesne * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: ivfparse: port to baseparse. https://bugzilla.gnome.org/show_bug.cgi?id=710855 Signed-off-by: Gwenole Beauchesne 2014-01-24 08:37:16 +0800 Zhao, Halley * tests/icles/Makefile.am: * tests/icles/vp8parser-test.c: tests: add standalone program for VP8 parser. Add standalone test application that demonstrates how to use the new VP8 bitstream parsing library, while also allowing simple debugging/ tracing of IVF files. [clean-ups, updated to new parser API] Signed-off-by: Gwenole Beauchesne 2014-01-08 02:49:00 +0800 Zhao, Halley * tests/check/Makefile.am: * tests/check/libs/vp8parser.c: tests: add test for VP8 bitstream parsing library. [updated to new parser API] Signed-off-by: Gwenole Beauchesne 2014-04-09 09:22:02 +0200 Sebastian Dröge * gst-libs/gst/codecparsers/Makefile.am: codecparsers: vp8: rename dboolhuff symbols. Rename VP8 dboolhuff symbols so that to avoid clashes with libvpx when static linking. 2014-04-08 10:30:09 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/dboolhuff.AUTHORS: * gst-libs/gst/codecparsers/dboolhuff.LICENSE: * gst-libs/gst/codecparsers/dboolhuff.PATENTS: * gst-libs/gst/codecparsers/dboolhuff.c: * gst-libs/gst/codecparsers/dboolhuff.h: * gst-libs/gst/codecparsers/gstvp8rangedecoder.c: * gst-libs/gst/codecparsers/vp8utils.c: codecparsers: vp8: add GStreamer native utilities. Import libvpx 1.3.0 range decoder files (dboolhuff.[ch]) to implement the VP8 utilities native interface. Likewise, copy and use the default libvpx generated entropy probabilities tables. Signed-off-by: Gwenole Beauchesne 2014-01-08 02:49:00 +0800 Zhao, Halley * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstvp8parser.c: * gst-libs/gst/codecparsers/gstvp8parser.h: * gst-libs/gst/codecparsers/gstvp8rangedecoder.h: * gst-libs/gst/codecparsers/vp8utils.h: codecparsers: add VP8 bitstream parser. https://bugzilla.gnome.org/show_bug.cgi?id=722760 [refactored, among other fixes] Signed-off-by: Gwenole Beauchesne 2014-04-18 16:23:43 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Improve ts_to_offset code * Search in current pending values first. For CBR streams we can very easily end up having just one initial observations and then nothing else (since the bitrate doesn't change). * Use one group whether we are in that group *OR* if there is only one group. * If the group to use isn't closed (points are being accumulated in the PCROffsetCurrent), use the latest data available for calculation * If in the unlikelyness that all of this *still* didn't produce more than one data point, just return the initial offset 2014-04-18 16:20:31 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: tsdemux: Fix scaling macros While the calculation done in these macros will work with 64bit integers, they will fail if working with 32bit integers. Force the scaling up to solve that. This amazingly didn't introduce major issues up to now, but resulted in bogus values in debug logs. 2014-04-18 16:18:01 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Don't hard-flush the packetizer on discont buffers Doing a hard flush on the packetizer will drop all observations, which will eventually break push-based seeking (with BYTES segment) since we won't know where to seek to anymore (new data would always be considered as the beginning of the stream). 2014-04-16 16:25:29 +0200 Edward Hervey * gst/mxf/mxfdemux.c: mxfdemux: Fix copy/paste error We want to check whether the rate is different. We check changes in numerator *and* denominator. CID #1139631 CID #1139642 2014-04-16 16:19:47 +0200 Edward Hervey * gst/mxf/mxftypes.c: mxf: Handle fraction parsing failure And properly cleanup/reset the segment before returning on errors CID #206012 2014-04-16 16:12:02 +0200 Edward Hervey * gst/mxf/mxftypes.c: mxf: Remove useless check a guint will always smaller or equal to the maximum value it can contain CID #206049 2014-04-09 12:27:16 +0100 Vincent Penquerc'h * gst/mxf/mxfup.c: mxf: avoid dereferencing NULL mapping data pointer Also unref buffers on error, as it seems to be done in one, but not all, error paths. The NULL pointer part is Coverity 206112 https://bugzilla.gnome.org/show_bug.cgi?id=727889 2014-04-16 16:07:17 +0200 Edward Hervey * sys/dvb/camswclient.c: dvb: Fix if() check introduced by my previous commit :( 2014-04-16 15:43:06 +0200 Edward Hervey * configure.ac: configure: Detect EGL header presence Fixes the build for Android, and I suspect for other systems too... 2014-04-16 15:37:57 +0200 Edward Hervey * sys/dvb/camsession.c: dvb/camsession: Don't do operations on unexisting sessions CID #206114 2014-04-16 15:32:32 +0200 Edward Hervey * sys/dvb/camswclient.c: dvb: Handle socket() failure CID #206178 2014-04-16 15:23:57 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Handle failure to get statistics from the device Check the ioctl return value and don't output bogus values. CID #206016 2014-04-16 15:18:44 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Don't close a fd that wasn't open We are handling the failure cases in this block where the open failed CID #206179 2014-04-16 15:17:03 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Don't try to access NULL string And refactor the pid setting code to be in its own function for clarity CID #206374 2014-04-10 16:04:21 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add dvb ca identifier descriptor https://bugzilla.gnome.org/show_bug.cgi?id=727560 2014-04-10 16:03:07 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add scrambling descriptor https://bugzilla.gnome.org/show_bug.cgi?id=727560 2014-04-10 16:02:09 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add frequency list descriptor https://bugzilla.gnome.org/show_bug.cgi?id=727560 2014-04-10 16:00:50 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add data broadcast id descriptor https://bugzilla.gnome.org/show_bug.cgi?id=727403 2014-04-10 15:59:50 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add private data specifier descriptor https://bugzilla.gnome.org/show_bug.cgi?id=727403 2014-04-16 09:20:37 +0200 Sebastian Dröge * gst-libs/gst/mpegts/gst-dvb-descriptor.c: dvb: Minor code style fix 2014-04-10 15:58:55 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add parential rating descriptor https://bugzilla.gnome.org/show_bug.cgi?id=727403 2014-04-10 15:58:04 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: add linkage descriptor https://bugzilla.gnome.org/show_bug.cgi?id=727403 2014-04-16 00:25:51 +0100 Tim-Philipp Müller * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: for loop initial declarations are only allowed in C99 mode Fixes compiler warnings. 2014-04-15 20:47:55 +0200 Sebastian Dröge * Makefile.am: egl: Add libgstegl and eglgles plugin to the CRUFT directories 2014-04-15 17:58:34 +0100 Julien Isorce * configure.ac: * docs/plugins/Makefile.am: * ext/Makefile.am: * ext/eglgles/Android.mk: * ext/eglgles/Makefile.am: * ext/eglgles/TODO: * ext/eglgles/gstegladaptation.c: * ext/eglgles/gstegladaptation.h: * ext/eglgles/gstegladaptation_eagl.m: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * ext/eglgles/video_platform_wrapper.c: * ext/eglgles/video_platform_wrapper.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/egl/Makefile.am: * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: * pkgconfig/Makefile.am: * win32/common/config.h: egl/eglglessink: remove since EGLImage and iOS support have been added in glimagesink https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-24 12:08:43 +0000 Julien Isorce * gst-libs/gst/gl/gstgles2.h: gl: allow to include GLES/gl.h https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-04-14 07:56:16 +0200 Edward Hervey * ext/wayland/gstwaylandsink.c: wayland: Remove dead assignment We set it just after variable declaration CID #1197709 2014-04-13 19:20:32 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Fix compilation 2014-04-13 16:53:58 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: gl/eagl: Notify the window's resize callback about surface dimension changes https://bugzilla.gnome.org/show_bug.cgi?id=728107 2014-04-13 16:46:11 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: gl/eagl: Remove spurious private struct pointer 2014-04-13 16:40:58 +0200 Sebastian Dröge * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: gl/android: Notify the window's resize callback about surface dimension changes https://bugzilla.gnome.org/show_bug.cgi?id=728107 2014-04-13 22:16:45 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: remove unused texture 2014-04-13 22:14:52 +1000 Matthew Waters * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: glimagesink: move upload into _prepare() 2014-04-13 13:49:22 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl/context: output available extensions 2014-04-13 13:39:14 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: gl/context: provide get_gl_version 2014-04-13 00:21:00 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: restore viewport dimensions when fbo done Regression introduced by 95abfda1399bcddbee345d4542e857d743965477. It caused to display the wrong frame size when resizing the window. 2014-04-12 22:45:30 +0200 Sebastian Dröge * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: gl: Import QuartzCore/QuartzCore.h for CAEAGLLayer on older iOS versions 2014-04-12 22:15:35 +0200 Sebastian Dröge * ext/gl/gstopengl.c: gl: Set glimagesink rank to SECONDARY This is a full-featured video sink now and especially should be used instead of osxvideosink on OSX if available. 2014-04-12 21:43:50 +0200 Sebastian Dröge * configure.ac: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/eagl/Makefile.am: * gst-libs/gst/gl/eagl/gstglcontext_eagl.h: * gst-libs/gst/gl/eagl/gstglcontext_eagl.m: * gst-libs/gst/gl/eagl/gstglwindow_eagl.h: * gst-libs/gst/gl/eagl/gstglwindow_eagl.m: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglwindow.c: gl: Add support for iOS EAGL platform https://bugzilla.gnome.org/show_bug.cgi?id=703341 2014-04-12 17:33:44 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: make gst_gl_window_cocoa_send_message_async re-entrant Backends that use g_main_context_invoke are re-entrant. Il allows to call two nested gst_gl_context_thread_add. ex: init_upload / init_colorconvert 2014-04-12 17:01:09 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: First handle GL window setup, then create the context and its thread 2014-04-12 15:51:47 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: gl/cocoa: fix NSAutoreleasePool initialization 2014-04-12 12:42:40 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: ensure to call NSApplication:sharedApplication in the main thread "(NSApplication *)sharedApplication This method also makes a connection to the window server and completes other initialization" The implicit thing which is not mentioned is that it required to be called in the main thread. Fix a regression introduces by 82b7c915bb02a9790d256d599452e5a54afda633 When using with gst-launch, it was not possible to click on the close cross of the window anymore which is a bit anoying and also because it's was possible before. Prior to this commit the GstGLContextCocoaClass was initialized in the main thread because gst_gl_context_new was called in the state change function from going from ready to paused. From this commit this call is done from the streaming thread. So that the call to [NSApplication sharedApplication]; was not done in the main thread anymore. We now ensure that by assuming there is a GMainLoop running. It's for debugging purpose so that's ok to do that. Also note we already do this assumtion to run app itereations. The regression had no consequence on the cocoa/videooverlay example (that should be moved from gst-plugins-gl to -bad) because the application is responsible for that necessary call. 2014-04-12 14:40:40 +0100 Julien Isorce * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: fix warning type qualifiers ignored i686-apple-darwin11-llvm-gcc-4.2 "warning: type qualifiers ignored on function return type" 2014-04-12 18:24:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: remove if statement with no effect Coverity 1199698 2014-04-12 18:16:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: gl/color: pass large value by reference Coverity 1199700 2014-04-02 12:59:58 -0700 Aleix Conchillo Flaqué * ext/srtp/gstsrtp.c: srtpdec: fix assertion checking ssrc from rtcp packets rtcp_buffer_get_ssrc is called even with RTP buffers. this means we might end up with an exception and not find any valid RTCP packet type and thus hit GST_RTCP_TYPE_INVALID. we now take care of this. https://bugzilla.gnome.org/show_bug.cgi?id=727512 2014-04-11 12:29:17 +0200 Andoni Morales Alastruey * gst/jp2kdecimator/gstjp2kdecimator.c: jp2kdecimator: fix maybe-uninitialized compiler error 2014-04-11 11:34:26 +0200 Edward Hervey * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: Remove unneeded unref packet_buffer has already been cleared in all code paths leading to this point. CID #1199696 2014-04-11 08:39:29 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Handle symbols added in minor version 7 and 8 Some symbols were re-defined in minor v8 (GO TEAM BACKWARDS COMPATIBLE!) Some symbols were added in minor v7 https://bugzilla.gnome.org/show_bug.cgi?id=727977 2014-04-11 17:24:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: gl/mem: cache the stride/unpack length for upload 2014-04-11 17:23:32 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: explicitly map the buffers we are copying into Otherwise it may not be downloaded at all. 2014-04-11 08:16:01 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Add comment with all DVB API v5 minor changes There wasn't a definite list anyway, so I just dove in the kernel and extract all that information. 2014-04-11 16:09:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl/color: cache the temporary textures 2014-04-11 11:04:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: gl/mem: provide defines for tokens not defined in GLES2/ancient platforms 2014-04-11 11:03:19 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl: fixup incorrect number of arguments 2014-04-11 10:55:21 +1000 Matthew Waters * gst-libs/gst/gl/gstglcolorconvert.c: gl: fix incorrect usage of g_return_if_fail 2014-04-02 17:43:52 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-sections.txt: * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl/mem: allocate the memory per plane This patch provides the basic infrastructure required for this. Upload and Download has been ported to this. Has the nice effect of allowing GstGLMemory to be our refcounted texture object for any texture type (not just RGBA). Should not lose any features/video formats. 2014-04-01 15:10:05 +1100 Matthew Waters * gst-libs/gst/gl/egl/gsteglimagememory.c: gl/eglimage: #if 0 unused code 2014-04-01 13:30:51 +1100 Matthew Waters * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * ext/gl/gstglimagesink.c: * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcolorconvert.c: * gst-libs/gst/gl/gstglcolorconvert.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl: add colorconvert object that converts between color spaces/formats Currently used by both upload and download objects separately. 2014-04-10 17:55:21 +0100 Vincent Penquerc'h * ext/faac/gstfaac.c: faac: fix faac API error checking Coverity 1139790 2014-04-10 17:52:02 +0100 Vincent Penquerc'h * ext/dash/gstplugin.c: dashdemux: do not ignore failure to register typefinder Coverity 1139629 2014-04-10 17:48:03 +0100 Vincent Penquerc'h * ext/dash/gstdashdemux.c: dashdemux: fix time leak Coverity 1147016 2014-04-10 17:44:14 +0100 Vincent Penquerc'h * ext/dash/gstdashdemux.c: dashdemux: remove dead code and variable A recent commit made stream not able to be NULL, ending up with a flag being always set to FALSE when it matters. Coverity 1146968, 1147012 2014-04-10 17:37:22 +0100 Vincent Penquerc'h * ext/curl/gstcurlsmtpsink.c: curl: remove unneeded NULL check We just checked for NULL and allocated if it was. And glib aborts if it can't allocate, I'm told. Coverity 1139841 2014-04-10 17:33:55 +0100 Vincent Penquerc'h * ext/curl/gstcurlbasesink.c: curl: remove duplicate assignment Coverity 1197708 2014-04-10 16:53:42 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Also update the sequence position when updating non-live playlists 2014-04-10 14:59:57 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Try reloading the playlist first if downloading a fragment fails But only add this for non-live playlists. For live playlists we already have another thread that is periodically updating playlists. Reason for this is that sometimes downloading a fragment can fail because the URIs have changed or expired since last time. 2014-04-10 14:46:01 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: When updating a non-live playlist make sure to find the current sequence by time Sequence numbers in different playlists are not guaranteed to be the same for the same position, e.g. fragments could have different durations in different playlists. In theory we should do exactly the same for live playlists, but unfortunately we can't because doing this kind of seeking requires the complete playlist since we started playback. For live playlists the server is however dropping fragments in the beginning over time and we have no absolute time references. 2014-04-09 17:28:49 +0100 Vincent Penquerc'h * ext/smoothstreaming/gstmssdemux.c: smoothstreaming: avoid using an uninitialized manifest If we did not set the manifest yet, early out in the seeking query. Coverity 1139737 2014-03-17 16:39:42 +0100 Thibault Saunier * gst-libs/gst/codecparsers/gsth264parser.c: h264parse: Set framerate even for interlaced videos Co-Authored by: Mathieu Duponchelle https://bugzilla.gnome.org/show_bug.cgi?id=726752 2014-04-09 10:04:46 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-atsc-section.c: * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: add atsc terrestrial virtual channel table https://bugzilla.gnome.org/show_bug.cgi?id=727460 2014-04-09 15:07:19 +0200 Santiago Carot-Nemesio * gst/liveadder/liveadder.c: liveadder: fix memory leak querying sink caps https://bugzilla.gnome.org/show_bug.cgi?id=727894 2014-04-09 18:44:38 +0100 Vincent Penquerc'h * ext/hls/gsthlssink.c: hlssink: catch failure to write playlist file Coverity 1139613 2014-04-09 18:31:31 +0100 Vincent Penquerc'h * ext/kate/gstkatespu.c: kate: fix implicit promotion to signed int breaking on largeish inputs Coverity 1139858, 1139857 2014-04-09 18:16:52 +0100 Vincent Penquerc'h * ext/ladspa/gstladspasink.c: ladspa: remove duplicate assignment Coverity 1139706 2014-04-09 18:12:58 +0100 Vincent Penquerc'h * ext/mimic/gstmimdec.c: mimdec: fix open error checking Coverity 206364 2014-04-09 17:37:41 +0100 Vincent Penquerc'h * ext/schroedinger/gstschrodec.c: schrodec: remove unnecessary check The tag was dereferenced earier. From the libschroedinger code, it's not obvious to see whether tag and frame would be NULL at the same time. I think is likely that both will be non NULL here, but that's not certain. Additional tests may be needed to avoid dereferencing tag and/or frame, but what to do if only one is NULL isn't obvious, as the _get_tag function does transfer ownership so isn't undoable. Coverity 1139850 2014-04-09 17:10:06 +0100 Vincent Penquerc'h * ext/smoothstreaming/gstmssdemux.c: smoothstreaming: remove unnecessary check The function is static, the only call site passes a non NULL pointer, and the pointer is dereferenced before anyway. Coverity 1139839 2014-04-09 16:55:30 +0100 Vincent Penquerc'h * ext/srtp/gstsrtpdec.c: srtp: remove dead assignment Coverity 1197707 2014-04-09 15:54:18 +0100 Vincent Penquerc'h * gst-libs/gst/mpegts/gst-dvb-section.c: mpegts: fix sdt length check It was originally test for 9 bytes (as the comment says) and was rewritten buggily. So rewrite it a third way, which is now hopefully consistent with the original and the comment, while being more sense-making to humans. Coverity 1139654 2014-04-09 16:00:24 +0100 Vincent Penquerc'h * gst/mpegtsmux/tsmux/tsmux.c: Revert "tsmux: catch alloc failure" Turns out glib aborts on allocation failure, so this is pointless. We'll just ignore Coverity warnings on such constructs. This reverts commit d347809a82e24057302f948269392e76aaacea10. 2014-04-09 15:58:37 +0100 Vincent Penquerc'h * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: turns out glib aborts on allocation failure So this is actually pointless. We'll just have to ignore Coverity moaning on those. Revert "mpegts: test for allocation failure" This reverts commit 224cb81b8fcbf03df5e07f045ecb9ecf64189400. 2014-04-09 15:44:10 +0100 Vincent Penquerc'h * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: test for allocation failure While it's unlikely to get there, it silences the coverity warning on the error code path that we test for NULL before freeing, when all branches there are from locations where pmt cannot be NULL, and removing the NULL check makes the code more vulnerable to a hypothetical future branch from somewhere where it can be. Coverity 1139852 2014-04-09 15:41:11 +0100 Vincent Penquerc'h * gst/asfmux/gstasfmux.c: asfmux: remove unnecessary test We've been dereferencing that object like there's no tomorrow in the code just before that. Coverity 206369 2014-04-09 15:37:55 +0100 Vincent Penquerc'h * gst/asfmux/gstasfobjects.c: asfmux: remove stray gst_buffer_unmap on error path A previous commit removed the map, and the unmap on the main code path, but not the one on the error path. Coverity 1139930 2014-04-09 15:28:05 +0100 Vincent Penquerc'h * gst/autoconvert/gstautoconvert.c: autoconvert: remove dead code Those events were previously taken from a cached events list, which was removed during the port to 0.11, but this bit stayed. Coverity 1139684 2014-04-09 15:24:13 +0100 Vincent Penquerc'h * gst/camerabin2/gstcamerabin2.c: camerabin2: remove unneeded check A message may not be NULL in the message handling function (and nothing there sets it to NULL). Coverity 1139848 2014-04-09 15:18:22 +0100 Vincent Penquerc'h * gst/debugutils/gstcompare.c: compare: special case empty regions with 1 SSIM to avoid dividing by 0 Coverity 1139689, 1139688 2014-04-09 15:09:25 +0100 Vincent Penquerc'h * gst/inter/gstintertest.c: inter: remove dead code Coverity 1139666 2014-04-09 15:03:45 +0100 Vincent Penquerc'h * gst/liveadder/liveadder.c: liveadder: remove dead code From the 0.11 port Coverity 1139676 2014-04-09 14:37:48 +0100 Vincent Penquerc'h * ext/resindvd/gstmpegdemux.c: resindvd: avoid crashing in pathological case When we'd see an unknown stream type, then a SDDS stream. Then we'd get to the end of the switch with a NULL temp stream pointer, and dereference it. Coverity 1139708 2014-04-09 14:13:46 +0100 Vincent Penquerc'h * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: catch prev-not-found when inserting in the group list While this probably should never happen if callers are well behaved, this avoids a crash if it does. With a warning about it. Unsure if it'd be better to not add at all, but it should not happen... Coverity 1139713 2014-04-09 13:51:41 +0100 Vincent Penquerc'h * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: guard against _dispose being called mutiple times _dispose calls _reset, so we need to make sure _reset handles already NULLed fields. Coverity 1139843 2014-04-09 13:43:10 +0100 Vincent Penquerc'h * gst/mpegtsmux/tsmux/tsmux.c: tsmux: prevent possible double free on error path Spotted while looking at a Coverity issue in the area. 2014-04-09 13:41:35 +0100 Vincent Penquerc'h * gst/mpegtsmux/tsmux/tsmux.c: tsmux: catch alloc failure While it will probably not trigger, it should silence a Coverity warning about the fail code path testing for NULLness before freeing, where the buffer was already dereferenced. It seems safest to keep that test, in case future goto fail statements happen to have a NULL buffer there. Coverity 1139851 2014-04-09 11:43:23 +0100 Vincent Penquerc'h * sys/decklink/capture.cpp: decklink: initialize priv to NULL While the code that creates the object sets priv to some existing pointer after new, this ensures any future new not doing this will hit the various priv!=NULL asserts in the code. Coverity 1139935 2014-04-09 11:15:10 +0100 Vincent Penquerc'h * gst/speed/gstspeed.c: speed: make duration query able to convert bytes to time It was only querying in time, but then trying to use dead bytes to time conversion code. Coverity 1139677 2014-04-09 11:04:32 +0100 Vincent Penquerc'h * sys/mfc/gstmfcdec.c: mfc: fix left crop change test It was testing a noop Coverity 1139643 2014-04-09 11:02:00 +0100 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: add missing va_end in variadic function Coverity 1139944 2014-04-09 11:00:22 +0100 Vincent Penquerc'h * sys/shm/shmpipe.c: shm: remove dead code Coverity 1139683 2014-04-09 10:56:16 +0100 Vincent Penquerc'h * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: reset "in use" flag on failure to initialize 2014-04-09 10:55:46 +0100 Vincent Penquerc'h * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: test for allocation failure before dereferencing Coverity 1139849 2014-04-09 10:33:10 +0100 Vincent Penquerc'h * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: remove dead assignment Coverity 1139829 2014-04-09 10:28:46 +0100 Vincent Penquerc'h * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectxray.c: gl: pass large structure by const pointer, not value Avoids large pointless memcpy. Coverity 206236, 206237 2014-04-08 21:39:20 +0300 Mohammed Sameer * gst/camerabin2/gstviewfinderbin.c: camerabin: add any feature to viewfinderbin static pad template https://bugzilla.gnome.org/show_bug.cgi?id=727857 2014-04-08 20:54:26 +0300 Mohammed Sameer * gst/camerabin2/gstcamerabin2.c: camerabin: report an error if we fail to link vfsrc and viewfinder queue https://bugzilla.gnome.org/show_bug.cgi?id=727855 2014-04-08 17:45:46 +0100 Tim-Philipp Müller * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: post proper error message when window disappears 2014-04-08 17:34:13 +0100 Vincent Penquerc'h * ext/flite/gstflitetestsrc.c: flite: fix off by one in channel mask building The first loop would shift 1 by 64, which is either undefined or implementation defined, instead of clearing the top bit. Coverity 1197691 2014-04-08 17:10:27 +0100 Vincent Penquerc'h * ext/hls/m3u8.c: hls: restore NULL test mistakenly removed Thanks to tpm for point out I'm an idiot. 2014-04-08 16:53:54 +0100 Vincent Penquerc'h * ext/hls/gsthlsdemux.c: hls: only set DISCONT flag on a valid buffer Recent refactoring causes this code to be called with either a NULL fragment, or a non NULL fragment. In the former case, we don't have a buffer. In the latter case, the original code dealing with DISCONT assumed the buffer was valid. Testing for a NULL buffer here thus does not seem to change the intent, and fixes: Coverity 1195147 2014-04-08 16:53:41 +0100 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: guard against NULL material track Just to be on the safe side. 2014-04-08 16:46:56 +0100 Vincent Penquerc'h * ext/hls/m3u8.c: hls: bring NULL test before dereference Coverity 1195168 2014-04-08 16:23:50 +0100 Vincent Penquerc'h * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: test for frame NULLness before dereferencing it Coverity 1195172, 1195171 2014-04-09 00:44:08 +1000 Jan Schmidt * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Avoid infinite loops on short data 2014-04-08 16:09:16 +0100 Tim-Philipp Müller * sys/dvb/camswclient.c: dvb: fix compilation 2014-04-08 15:54:01 +0100 Vincent Penquerc'h * gst-libs/gst/gl/egl/gsteglimagememory.c: gl: fix leaks As the relevant variables are initialized to 0/NULL, we can loop over the full range and make sure we free partial allocations when an error happens partway through initialization. 2014-04-08 15:26:04 +0100 Vincent Penquerc'h * sys/dvb/camswclient.c: dvb: reject too long socket paths Coverity 206004 2014-04-08 14:33:06 +0100 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: implement simple KEY_UNIT seeking If a KEY_UNIT seek was requested, adjust segment start to position of the key frame. 2014-04-08 14:24:31 +0100 Vincent Penquerc'h * ext/resindvd/resindvdsrc.c: resindvd: guard against overflow in audio subtitle streams Turns out there was the same issue as with subtitles. There is space for a single audio stream, but up to 255 may be used based on a uint8_t value in a struct, which may or may not be read from the (untrusted) data. A comment in ifo_types.h says this value is either 0 or 1, so we can ensure this here without drawbacks. Coverity 1139585 2014-04-08 14:19:29 +0100 Vincent Penquerc'h * ext/resindvd/resindvdsrc.c: resindvd: guard against overflow in menu subtitle streams There is space for a single subtitle stream, but up to 255 may be used based on a uint8_t value in a struct, which may or may not be read from the (untrusted) data. A comment in ifo_types.h says this value is either 0 or 1, so we can ensure this here without drawbacks. Coverity 1139586 2014-04-08 13:26:49 +0100 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: fix seeking, send data starting from a key unit Fixes multiple seeking issues. When doing ACCURATE or normal non-KEYUNIT seeks, mxfdemux would just send data from the edit unit that covered the seek position, whether that's a keyframe or not. Decoders would only output things from the next keyframe then, which means there's a gap between the start of the segment and the first decoded data in some cases. In combination with gst-editing-services this might result in a frozen picture for the duration of that gap at the beginning (if videorate fixes up the first buffer's start timestamp to cover the entire gap), or a black frame (if no videorate is used and videomixer fills the gap). Also fixes A/V sync issue when requesting a KEYUNIT seek. 2014-04-08 12:37:30 +0100 Vincent Penquerc'h * ext/dts/gstdtsdec.c: dtsdec: fix buffer overflows Channels can be up to 7. Also add a guard in case more can be returned in the future. Coverity 1139820, 1139821 2014-04-08 13:20:54 +0200 Xavi Artigas * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Fix critical due to missing debug category initialization https://bugzilla.gnome.org/show_bug.cgi?id=727812 2014-04-08 12:20:40 +0100 Vincent Penquerc'h * gst/festival/gstfestival.c: festival: fix fd leak Coverity 1139831 2014-04-08 11:26:38 +0200 Edward Hervey * gst/speed/gstspeed.c: speed: Clarify passthrough in switch statement We do want the caps event to be forwarded downstream CID #1139754 2014-04-08 11:23:50 +0200 Edward Hervey * ext/soundtouch/gstpitch.cc: soundtouch: Add missing break in switch Whoops, modifying the pitch when modifying the output rate ... CID #1139749 2014-04-08 11:21:44 +0200 Edward Hervey * ext/rsvg/gstrsvgoverlay.c: rsvg: Add missing break in switch statement This wasn't fatal before (worst case it would clear an already empty adapter). CID #1139758 2014-04-08 11:20:29 +0200 Edward Hervey * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: Add missing break in switch QUERY_CAPS is fully handled, we don't need to passthrough to the default handler. CID #1139756 2014-04-08 09:51:08 +0200 Edward Hervey * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: bz2: Initialize variables There is a small chance that we might end up in the done step without having any output available. Furthermore, when going through not_ready, we need to ensure gst_buffer_unmap has a properly initialized GstMapInfo. CID #1139923 CID #1139924 CID #1139919 CID #1139920 2014-04-08 07:48:28 +0200 Edward Hervey * tests/check/elements/mpegtsmux.c: check: Fix mpegtsmux caps Incoming streams need to be parsed. Doesn't fix the test completely though 2014-04-08 07:47:15 +0200 Edward Hervey * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Initialize helper mpegts library We now use that library, we need to initialize it so that debug categories (amongst other things) get properly initialized 2014-04-07 13:25:56 +0100 Vincent Penquerc'h * gst/mxf/mxfdms1.c: mxf: fix stop date parsing using the wrong input Coverity 1139645 2014-04-07 13:22:22 +0100 Vincent Penquerc'h * gst/jp2kdecimator/jp2kcodestream.c: jp2kdecimator: fix copy/paste errors in expressions Correct formulae found in ITU T.800, B.12.1.[345] Coverity 1139649, 1139650, 1139651 2014-04-04 15:30:20 +0100 Vincent Penquerc'h * tests/check/elements/shm.c: tests: fix shm test deadlock The test was not bringing the source back to NULL, so its thread could start creating a buffer while the pads were being shutdown. 2014-04-06 11:57:12 +0200 Sebastian Dröge * ext/gl/gstglimagesink.c: glimagesink: Create GL context and set up window from the streaming thread gst_gl_context_create() might need to dispatch some operations to the application's main thread, and calling this in the change_state function can cause deadlocks. 2014-04-04 09:19:39 +0200 Sebastian Dröge * configure.ac: configure: Fix check for iOS for the OpenGL support There is also an i386 version of iOS, which is for the simulator. Better use our already existing HAVE_IOS check instead of relying on the host triplet. 2014-04-03 11:54:41 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: fix possible uninitialized variables 2014-04-03 11:48:07 +0200 Wim Taymans * ext/dash/gstmpdparser.c: mpdparse: only add location when node existed Actually return FALSE when the location node was non-existing Only add the location node when it existed 2014-04-02 23:49:37 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Require parsed/framed input for most of the supported formats https://bugzilla.gnome.org/show_bug.cgi?id=719519 2014-04-02 23:08:36 +0200 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Only pass a dest rectangle if set, otherwise pass NULL Call with an uninitialized rectangle will cause errors. https://bugzilla.gnome.org/show_bug.cgi?id=714998 2014-04-02 13:48:02 +0100 Tim-Philipp Müller * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: tests: fix gl unit tests for recent API changes 2014-04-02 23:05:47 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: gl: pass video info's by reference 2014-04-02 23:05:11 +1100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: fix array initialization 2014-04-02 22:54:55 +1100 Matthew Waters * ext/gl/gstglbumper.c: glbumper: remove redundant check 2014-04-02 22:53:10 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: gl/glx: use the context's display rather than asking for the window's 2014-04-02 22:43:41 +1100 Matthew Waters * ext/gl/gstglmosaic.c: * ext/gl/gstglvideomixer.c: gl: fix assignment of temporary variables 2014-04-02 22:42:50 +1100 Matthew Waters * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl: avoid adding a NULL pool to propose allocation 2014-04-02 12:38:28 +1100 Matthew Waters * configure.ac: gl/win32: actually build the gl plugins on win32 Regression from c8ff215b02ee178513e076e2dfbd14e9ce77ec49 2014-04-02 09:29:56 +1100 Matthew Waters * configure.ac: gl/win32: fix detection of GL/wglext.h Was resulting in 'present but cannot be compiled' errors 2014-04-01 21:48:26 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl: fix detection of extensions with GL versions < 3 Mesa, for example returns valid pointers for glGetIntegerv and glGetStringi even if the gl version is less than that required for both those functions to supposedly exist. https://bugzilla.gnome.org/show_bug.cgi?id=727324 2014-03-30 21:02:45 +0200 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: fix docs Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=727356 2014-03-30 21:02:10 +0200 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gstmpegts-private.h: mpegts: add dvb-t2 delivery system descriptor Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=727356 2014-03-24 17:44:47 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: bugfix delivery system descriptors Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=726979 2014-03-27 21:22:32 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: use GST_READ_UINT32_BE Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=727187 2014-03-27 21:21:23 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: add parsing data broadcast descriptor Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=727187 2014-03-27 21:18:36 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: add parsing stream identifier Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=727187 2014-03-27 13:56:26 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: use glib alloc and free Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=727159 2014-03-29 17:26:03 +0000 Matthieu Bouron * ext/dash/gstdashdemux.c: dashdemux: use correct print format for gint64 https://bugzilla.gnome.org/show_bug.cgi?id=727385 2014-03-30 18:52:38 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Handle errors when switching playlists properly 2014-03-30 18:12:07 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Go EOS if the end of the segment is reached 2014-03-30 18:06:51 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Store buffer end position in segment.position 2014-03-29 10:19:52 +0100 Sebastian Dröge * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix typo in debug output 2014-03-28 18:27:16 +0100 Sebastian Dröge * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Copy over DISCONT flag from input buffers 2014-03-28 18:11:21 +0100 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Push next buffer after a discont with the DISCONT flag 2014-03-28 17:32:56 +0100 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Drain remaining data on disconts 2014-03-28 17:25:02 +0100 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Flush if we receive a discont buffer 2014-03-28 17:24:46 +0100 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't dereference NULL if flushed before a program was selected 2014-03-27 19:42:52 +0100 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Ensure that all pending data is pushed even if the stream was not activated before gst_ts_demux_push_pending_data() will check if it now can activate the stream and add the pad, we don't have to check that ourselves. Fixes playback of very short MPEG TS files. 2014-03-27 19:22:03 +0100 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Fix pull mode scanning for PCR on small files If a file does not contain 5 PCRs until it is EOS, or does not contain more than 655360 bytes the PCR scanning algorithm just aborted. 2014-03-26 22:25:07 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Don't set the segment offset It's causing wrong running times after seeks or bitrate switches. 2014-03-26 07:32:43 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Set DISCONT flag on all buffers in reverse playback mode 2014-03-26 07:25:13 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Fix forwards and backwards searching in the files list 2014-03-26 07:24:16 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Unset DTS of all buffers We won't get a valid DTS from the source. 2014-03-26 07:22:54 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Send flush start event before waiting for the tasks to finish Otherwise we'll wait until buffers are completely processed downstream, which might take quite some time. 2014-03-09 19:31:31 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Implement trick modes via I-frame variant lists 2014-03-09 18:24:50 +0100 Sebastian Dröge * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Implement parsing of #EXT-X-I-FRAME-STREAM-INF These are I-frame-only variant lists that can be used for trick mode playback. 2014-03-28 20:22:43 +0000 Tim-Philipp Müller * gst-libs/gst/gl/egl/Makefile.am: gl: egl: fix distcheck and out of source build 2014-03-28 20:47:36 +0100 Rico Tzschichholz * ext/Makefile.am: * gst-libs/gst/gl/Makefile.am: build: Fix make dist 2014-03-28 19:46:33 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix LDADD order for insertbin test 2014-03-28 19:41:25 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: don't link codecparser tests twice to the lib 2014-03-28 19:30:16 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix build of gl unit tests in uninstalled setup Put local .la files first, and add link to libgstvideo for tests that use the libgstvideo API directly. 2014-03-27 22:41:02 +1100 Matthew Waters * configure.ac: gl/win32: allow not building the gl plugins Fixes build on windows if headers are not present. https://bugzilla.gnome.org/show_bug.cgi?id=727125 2014-03-28 11:54:45 +0000 Julien Isorce * ext/eglgles/gsteglglessink.c: eglglessink: unref last buffer on DRAIN Similar to 093574053fae243ec5fcfd6adae8185053b1e896 in gstbasesink https://bugzilla.gnome.org/show_bug.cgi?id=726107 2014-03-27 18:51:59 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: fix wrong doc block for create_window Wrong since 1ad253b9 when prop name was changed from can_create_window to create_window. 2014-03-27 22:02:22 +1100 Matthew Waters * configure.ac: gl: don't fail configure if we do not understand the platform 2014-03-25 15:40:14 +1100 Matthew Waters * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: gl: fix out-of-source builds pt2 21b897de2f762bee504cbc007fd108148ee5ae24 did this for x11 and wayland. Do it for the other backends as well. 2014-03-26 23:13:53 +0000 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gstglfilter.c: gl: only set CAPS_FEATURE_MEMORY_EGL_IMAGE on egl platform 2014-03-26 17:14:40 +0000 Matthieu Bouron * configure.ac: configure.ac: fix OSX host check Makes the check works with (i386|x86_64)-apple-darwin* hosts. https://bugzilla.gnome.org/show_bug.cgi?id=727104 2014-03-26 19:17:03 +0000 Julien Isorce * ext/gl/gstglimagesink.c: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstglfilter.c: gl: let the user includes itself our egl headers if needed Forgot to address this change. https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-22 22:01:49 +0000 Julien Isorce gl: add EGLImage support * picked from old libgstegl: - GstEGLImageMemory - GstEGLImageAllocator - last_buffer management from removed GstEGLImageBufferPool * add-ons: - GstEGLImageMemory now old a reference on GstGLContext so that it can delete the EGLImage and its gltexture source while having the associated gl context being current. - add EGLImage support for GstVideoGLTextureUploadMeta which mainly call EGLImageTargetTexture2D - GstGLBufferPool now supports GstEGLImageAllocator - glimagesink / glfilters / etc.. now propose GstEGLImageAllocator to upstream https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-24 12:12:42 +0000 Julien Isorce * configure.ac: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/Makefile.am: gl: deploy egl headers in gst/gl/egl instead of gst/gl https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-24 12:10:00 +0000 Julien Isorce * gst-libs/gst/gl/x11/Makefile.am: gl: remove commented and unsued code in x11 Makefile.am https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-23 21:55:34 +0000 Julien Isorce * configure.ac: * pkgconfig/Makefile.am: pkgconfig: add gstreamer-gl https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-24 12:04:08 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gl: fix crash if _build_extension_string is not called On GLES2 then (gl->GetIntegerv && gl->GetStringi) is false regression introduced by cc6df204e2f58fffda5cbe90f3450aeba95889c4 https://bugzilla.gnome.org/show_bug.cgi?id=703343 2014-03-26 10:14:36 +0100 Edward Hervey * configure.ac: gl: Only enabled cocoa backend on osx (and not ios) ios requires using EAGL 2014-03-26 09:05:15 +1100 Jan Schmidt * ext/rtmp/gstrtmpsink.c: rtmpsink: Remove URL check for valid playpath. The playpath is an optional component of the URL - don't require it. 2014-03-25 17:39:18 +0100 Wim Taymans * ext/srtp/gstsrtpenc.c: srtpenc: unlock object lock before posting error Posting an error with the object lock will deadlock. Rework the code a bit to make things more simple. 2014-03-25 15:04:14 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: * gst-libs/gst/codecparsers/gstmpegvideometa.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: cosmetics: drop TAB characters. Signed-off-by: Gwenole Beauchesne 2014-03-25 21:40:11 +1100 Jan Schmidt * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Clarify confusing debug message The message is describing the number of bytes remaining for parsing, not 'missing'. 2014-03-25 21:40:11 +1100 Jan Schmidt * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: Fix mpegts_packetizer_set_current_pcr_offset() When adjusting the PCR offset of groups, adjust the correct group entry from the list - not the current group repeatedly. 2014-03-25 21:40:11 +1100 Jan Schmidt * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Remove warning for 2-bit and 8-bit subpictures Both 2-bit and 8-bit mode now seem fine, so remove the warning messages about them 2014-03-25 21:40:10 +1100 Jan Schmidt * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Fix 8-bit subpicture rendering. Fix 2 small flaws handling 8-bit subpictures that makes my one test file work. 2013-03-08 09:57:22 +0800 Li Xiaowei * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix slice_header() parsing for MVC. The idr_pic_id syntax element depends on IdrPicFlag, which is a calculated value that does not only depend on NAL unit type (IDR), but possibly also on MVC non_idr_flag syntax element. The computed idr_pic_flag is already stored in GstH264NalUnit structure. https://bugzilla.gnome.org/show_bug.cgi?id=721772 Signed-off-by: Li Xiaowei Signed-off-by: Gwenole Beauchesne 2012-10-01 09:48:06 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: add gst_h264_parse_nalu_header() helper. Add helper to parse the NALU header. Move bounds checking to there. https://bugzilla.gnome.org/show_bug.cgi?id=685215 Signed-off-by: Gwenole Beauchesne 2012-10-01 09:37:21 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: add gst_h264_parse_sps_data() helper. Split seq_parameter_set_data() parsing off gst_h264_parse_sps() so that it could be re-used later on. https://bugzilla.gnome.org/show_bug.cgi?id=685215 Signed-off-by: Gwenole Beauchesne 2012-09-26 18:46:36 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: complete set of NAL unit types. Add missing NAL unit types. They are mostly related to alpha blending, scalable video coding extensions (SVC, Annex.G), and multiview video coding extensions (MVC, Annex.H). Signed-off-by: Gwenole Beauchesne 2014-03-24 19:27:44 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: clean-up gst_h264_parser_parse_sei_message(). Fix build when GST_DISABLE_GST_DEBUG is not defined. Use a switch statement to dispatch to the various SEI payload handlers. Signed-off-by: Gwenole Beauchesne 2014-03-21 17:07:19 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/codecparsers/nalutils.h: codecparsers: h264: fix skipping of unsupported SEI messages. The payloadSize does not account for emulation prevention bytes. So, just use nal_reader_skip() for skipping payload_size bits. It should be possible to further optimize this code since the NAL reader shall be aligned to byte boundary already. Kill the now unused nal_reader_skip_to_next_byte() function. https://bugzilla.gnome.org/show_bug.cgi?id=726829 Signed-off-by: Gwenole Beauchesne 2014-03-21 17:03:36 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix SEI buffering_period() parsing. Fix parsing of buffering_period() SEI messages. The number of bits used to express {nal,vcl}_initial_cpb_removal_delay{,_offset} syntax elements is not 5 but 1 + initial_cpb_removal_delay_length_minus1. https://bugzilla.gnome.org/show_bug.cgi?id=726828 Signed-off-by: Gwenole Beauchesne 2012-10-10 16:19:49 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/nalutils.c: codecparsers: h264: fix rbsp_more_data() implementation. Account for trailing zero bits when checking for rbsp_more_data(). In particular, fix an hypothetical stream whereby rbsp_more_data() is called in the following conditions for PPS header: NalReader reached position 20, 12 bits are remaining and trailing data at current byte position is c8 00. rbsp_more_data() used to return TRUE whereas it should obviously return FALSE because x8 00 represents a valid rbsp_trailing_bits() structure. https://bugzilla.gnome.org/show_bug.cgi?id=685890 Signed-off-by: Gwenole Beauchesne 2014-03-24 17:33:00 +0100 Gwenole Beauchesne * ext/gl/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: gl: fix out-of-source builds. Always use the locally generated file. Signed-off-by: Gwenole Beauchesne 2014-03-25 00:50:30 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: gl/download: add support for the bt709 color matrix 2014-03-25 00:34:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: add support for the bt709 color matrix 2014-03-24 23:09:20 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: gl: remove explicit reference to X_CFLAGS They are in GL_CFLAGS if required 2014-03-23 23:43:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: gl/upload: remove the legacy GL 1.x upload path uploading requires shaders and fbos available in GL2. 2014-03-23 11:02:08 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: gl: fallback to glGetString if GL_NUM_EXTENSIONS fails Need it on MacOSX 10.7.5 2014-03-23 01:02:03 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/all_functions.h: gl: and update the Makefile 2014-03-23 00:38:16 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/base.h: * gst-libs/gst/gl/glprototypes/blending.h: * gst-libs/gst/gl/glprototypes/eglimage.h: * gst-libs/gst/gl/glprototypes/fbo.h: * gst-libs/gst/gl/glprototypes/fixedfunction.h: * gst-libs/gst/gl/glprototypes/gles.h: * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1_functions.h: * gst-libs/gst/gl/glprototypes/gles2_functions.h: * gst-libs/gst/gl/glprototypes/gles3opengl.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/glprototypes/shaders.h: * gst-libs/gst/gl/gstglapi.h: gl: reorganize the extension headers by function rather than api 2014-03-21 20:29:49 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl/win32: use the correct include and gst-indent 2014-03-21 15:56:16 +0100 Wim Taymans * tests/check/elements/mpegvideoparse.c: check: fix make check The mpeg parser now flags the stream as mpeg2 if there is a picture extension header, so remove it for mpeg1 data. 2014-03-18 09:16:25 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/win32/gstglcontext_wgl.c: gl: use wglCreateContextAttribsARB to create share context https://bugzilla.gnome.org/show_bug.cgi?id=726494 2014-03-17 20:43:35 +0100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: gl/mixer: fix download check for failure 2014-03-17 20:40:51 +0100 Matthew Waters * ext/gl/gstgltestsrc.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: gl: silence a critical if upstream does not provide us with meta params 2014-03-19 13:48:10 +0000 Julien Isorce * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglapi.h: gl: silence warnings building for RPI related to 'vcos_*' Similar than 1190a79b199584cfc4dd62c474531c32cfbba425 2014-03-19 13:45:35 +0000 Julien Isorce * ext/gl/gstopengl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: gl: keep only one occurence of '#include ' To simply maintainance if we need to put specific includes around it. 2014-03-16 01:25:10 +0100 Edward Hervey * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Don't forward text gap events downstream That gap is only for the subtitle stream and not for the video stream. 2014-03-18 00:11:09 +0000 Руслан Ижбулатов * configure.ac: gl: don't default to GST_GL_HAVE_WINDOW_DISPMANX=1 Mistake introduced by 2a0f0399ae226089c2ba07b1b904741b856f37af https://bugzilla.gnome.org/show_bug.cgi?id=726591 2014-03-18 00:08:50 +0000 Руслан Ижбулатов * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * tests/examples/gtk/gstgtk.c: gl: fix the use of always-defined macros After 2a0f0399ae226089c2ba07b1b904741b856f37af GST_GL_* macros are always defined to 0 or 1. Don't use #ifdef ... or #if defined() on them. https://bugzilla.gnome.org/show_bug.cgi?id=726591 2014-03-18 00:07:43 +0000 Руслан Ижбулатов * configure.ac: gl: check for X unconditionally Without this the HAVE_X macro is empty, not "no" or "yes", which is not what the later code is counting on. https://bugzilla.gnome.org/show_bug.cgi?id=726591 2014-03-17 17:35:22 +0000 Julien Isorce * configure.ac: gl: set default value to 0 for all definitions that go to gstglconfig.h To avoid warnings like "GST_GL_HAVE_OPENGL is not defined". As we are using #if instead of #ifdef 2014-03-17 15:49:37 +0100 Matthew Waters * configure.ac: gl: allow not building the gl library plugins 2014-03-17 15:16:13 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: add GModule libs for win32 2014-03-17 15:06:25 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: only link against gstegl if we are using egl Assuming if we are building egl that the egl library is built 2014-03-17 15:05:24 +0100 Matthew Waters * configure.ac: gl: add the option of disabling cocoa on OS X using --disable-cocoa 2014-03-17 14:37:13 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: add path of the gstegl library Temporary until we merge the two libraries 2014-03-17 14:26:31 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: Revert "gl: add dep on gstegl" It was already in _LIBADD This reverts commit b10a3530804335fc3b9494603ef78ce9417c3bc8. 2014-03-17 14:11:14 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: gl: add dep on gstegl Temporary until we merge the two libraries 2014-03-17 14:06:22 +0100 Edward Hervey * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: gl/cocoa: Fix debug statements and platform 2014-03-17 12:32:26 +0000 Julien Isorce * configure.ac: gl: set HAVE_EGL_RPI to yes if HAVE_GL and RPI Which fixes build on Raspberry Pi since -gl has been moved to -bad 2014-03-17 12:04:40 +0100 Edward Hervey * gst-libs/gst/gl/cocoa/Makefile.am: gl: Fix static build with objective-C --tag=CC is needed for static build 2014-03-17 12:00:09 +0100 Thijs Vermeir * configure.ac: * ext/Makefile.am: make: whitespace cleanups 2014-03-17 10:56:39 +0100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.c: * gst-libs/gst/gl/egl/gstgldisplay_egl.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: gl: Add EGLDisplay display subclass 2014-03-17 10:44:32 +0100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: gl/window: add a dummy window class Effective for the case where we have a platform that does not require a native window. We require a mainloop to run the GL commands which is currently operated by GstGLWindow. 2014-03-17 08:10:50 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: fix undeclared symbol when building without GST_DEBUG 2014-03-16 18:55:03 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: fix a double unref of the query when building without X 2014-03-16 16:36:06 +0000 Matthieu Bouron * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: handle video/x-raw(ANY) if downstream supports the GstVideoOverlayCompositionMeta API https://bugzilla.gnome.org/show_bug.cgi?id=726463 2014-03-16 17:21:38 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl: silence a compiler warning about missing prototypes 2014-03-14 19:03:36 +0100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: gl/utils: add x11 GstContext handling https://bugzilla.gnome.org/show_bug.cgi?id=726360 2014-03-16 15:34:11 +0100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: gl: define GL_NUM_EXTENSIONS if not defined 2014-03-16 15:08:23 +0100 Matthew Waters * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * ext/Makefile.am: * gst-libs/gst/Makefile.am: * tests/check/Makefile.am: * tests/check/libs/.gitignore: Move gst-plugins-gl to bad 2014-03-16 15:06:37 +0100 Matthew Waters * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfilterblur.h: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfilterlaplacian.h: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfilterreflectedscreen.h: * ext/gl/gstglfiltershader.h: * ext/gl/gstglfiltersobel.h: * ext/gl/gstgloverlay.h: * ext/gl/gstopengl.c: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: gl: silence all the compiler warnings 2014-03-16 11:23:16 +0100 Matthew Waters * ext/gl/BUGS: * ext/gl/Makefile.am: * ext/gl/effects/gstgleffectbulge.c: * ext/gl/effects/gstgleffectfisheye.c: * ext/gl/effects/gstgleffectglow.c: * ext/gl/effects/gstgleffectidentity.c: * ext/gl/effects/gstgleffectlumatocurve.c: * ext/gl/effects/gstgleffectlumatocurve.h: * ext/gl/effects/gstgleffectmirror.c: * ext/gl/effects/gstgleffectrgbtocurve.c: * ext/gl/effects/gstgleffectscurves.h: * ext/gl/effects/gstgleffectsin.c: * ext/gl/effects/gstgleffectsquare.c: * ext/gl/effects/gstgleffectsqueeze.c: * ext/gl/effects/gstgleffectssources.c: * ext/gl/effects/gstgleffectssources.h: * ext/gl/effects/gstgleffectstretch.c: * ext/gl/effects/gstgleffecttunnel.c: * ext/gl/effects/gstgleffecttwirl.c: * ext/gl/effects/gstgleffectxray.c: * ext/gl/gltestsrc.c: * ext/gl/gltestsrc.h: * ext/gl/gstglbumper.c: * ext/gl/gstglbumper.h: * ext/gl/gstglcolorscale.c: * ext/gl/gstglcolorscale.h: * ext/gl/gstgldeinterlace.c: * ext/gl/gstgldeinterlace.h: * ext/gl/gstgldifferencematte.c: * ext/gl/gstgldifferencematte.h: * ext/gl/gstgleffects.c: * ext/gl/gstgleffects.h: * ext/gl/gstglfilterapp.c: * ext/gl/gstglfilterapp.h: * ext/gl/gstglfilterblur.c: * ext/gl/gstglfilterblur.h: * ext/gl/gstglfiltercube.c: * ext/gl/gstglfiltercube.h: * ext/gl/gstglfilterglass.c: * ext/gl/gstglfilterglass.h: * ext/gl/gstglfilterlaplacian.c: * ext/gl/gstglfilterlaplacian.h: * ext/gl/gstglfilterreflectedscreen.c: * ext/gl/gstglfilterreflectedscreen.h: * ext/gl/gstglfiltershader.c: * ext/gl/gstglfiltershader.h: * ext/gl/gstglfiltersobel.c: * ext/gl/gstglfiltersobel.h: * ext/gl/gstglimagesink.c: * ext/gl/gstglimagesink.h: * ext/gl/gstglmosaic.c: * ext/gl/gstglmosaic.h: * ext/gl/gstgloverlay.c: * ext/gl/gstgloverlay.h: * ext/gl/gstgltestsrc.c: * ext/gl/gstgltestsrc.h: * ext/gl/gstglvideomixer.c: * ext/gl/gstglvideomixer.h: * ext/gl/gstopengl.c: move gl elements to ext subdirectory 2014-03-15 15:55:46 +0100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [906/906] filter: warn about trying to share with multiple contexts at once 2014-03-15 14:06:40 +0100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [905/906] Add GL context sharing support for non-gstgl elements 2014-03-15 13:55:39 +0100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [904/906] mixer: ask for display handles on pad activation 2014-03-15 13:51:44 +0100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: [903/906] api: add GstGLPlatform to/from string 2014-03-15 11:25:43 +0100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/gstglcontext.c: [902/906] context: implement glGetStringi handling for GL core contexts/GLES3 2014-03-12 23:46:58 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglcontext_glx.c: [901/906] glx: use the display handle from the global display Intel drivers require the display handles be the same for context sharing to occur. Also solves some cases of use after free of the display when integrating with gstreamer-vaapi. See https://bugs.freedesktop.org/show_bug.cgi?id=41736 for the intel bug. 2014-03-12 23:44:28 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: [900/906] tests/gstglcontext: reduce the number of frames displayed Was causing timeouts on intel hardware due to vsync handling. 2014-03-12 23:43:12 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: [899/906] egl: warn if we resort to display handles from the window 2014-03-06 18:11:22 +1100 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [898/906] glimagesink: add an other-context property Allows applications to provide us with an OpenGL context with which to share with. 2014-03-04 23:28:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: [897/906] api: plugin a small memory leak Found by adrien.schwartzentruber@gmail.com 2014-03-02 11:48:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglutils.c: [896/906] utils: use the vtable for deleting the texture 2014-02-28 17:42:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: [895/906] context: call window_class->close last We should destroy resources before closing the display connection Fixes https://bugzilla.gnome.org/show_bug.cgi?id=725048 2014-02-25 09:27:26 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglfeature.h: [894/906] gl: add missing G_BEGIN_DECLS/G_END_DECLS https://bugzilla.gnome.org/show_bug.cgi?id=725111 2014-02-24 23:55:58 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [893/906] x11: close both of the display's we use (the comment doesn't seem to apply anymore) https://bugzilla.gnome.org/show_bug.cgi?id=725048 2014-02-23 11:44:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: [892/906] silence a compiler warning on older gcc versions (4.6) 2014-02-11 08:57:29 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * tests/check/libs/gstglcontext.c: [891/906] context: add support for wrapping external contexts 2013-11-27 17:52:46 +1100 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstgldisplay_x11.c: * gst-libs/gst/gl/x11/gstgldisplay_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/x11_event_source.c: [890/906] x11: add display subclass GstGLDisplayX11 holds the display connection and name. Each thread requires it's own X11 Display connection (initialised from name) due to the fact that we do not want to call XInitThreads(). Doing so would result in segfaults when integrating with GUI toolkits Gtk, Qt, etc. The Display connection is for OpenGL platforms where a constant display is required in order to share contexts (egl). In the case of a wrapped context (added later), we do not have GstGLWindow to retreive the display from so a 'master' connection is used instead. 2014-01-15 10:21:56 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [889/906] display: add display type enum 2014-02-23 11:27:23 +1100 Adrien SCH * gst-libs/gst/gl/gstgldownload.c: [888/906] correct error handling in gstgldownload.c 2014-02-23 10:36:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [887/906] mixer: fixup a memory leak of the context in the GLTextureUploadMeta path gst_structure_get returns a reference to the object and we asked for another with gst_object_replace. https://bugzilla.gnome.org/show_bug.cgi?id=724816 2014-02-23 01:32:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst/gl/gstgltestsrc.c: [886/906] fixup a memory leak of the context in the GLTextureUploadMeta path gst_structure_get returns a reference to the object and we asked for another with gst_object_replace. https://bugzilla.gnome.org/show_bug.cgi?id=724816 2014-02-21 15:25:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [885/906] filter: free our data plugs some memory leaks https://bugzilla.gnome.org/show_bug.cgi?id=724816 2014-02-21 13:28:16 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [884/906] filter: return the pad template caps in transform_caps We can transform from any input in our caps to any output. With the following pipeline snippet: ... ! vaapidecode ! glcolorscale ! xvimagesink GstVideoGLTextureUploadMeta was being used on both src and sink pads causing linking to fail. This allows the usage of the meta on either pad without affecting whether the meta is chosen on the other pad. 2014-02-11 08:23:39 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1gles2.h: * gst-libs/gst/gl/glprototypes/gles1gles2opengl.h: * gst-libs/gst/gl/glprototypes/gles1opengl.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglcontext.c: [883/906] api: provide from_string() Also s/gst_gl_api_string/gst_gl_api_to_string/g 2014-02-11 07:24:40 +1100 Matthew Waters * gst/gl/Makefile.am: * gst/gl/gstglcolorscale.c: * gst/gl/gstopengl.c: [882/906] port glcolorscale to GLES2 2014-02-06 21:43:45 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [881/906] upload: restore default values for unpack_length fixes elements that upload a supplementary texture (glbumber, gldifferencematte, etc) 2014-02-05 00:44:18 +1100 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [880/906] glimagesink: remove unused stored_buffer field It has the potential to cause deadlocks. 2014-02-20 22:40:05 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: [879/906] build: don't add X_CFLAGS to CFLAGS It should already be included if needed inside GL_CFLAGS 2014-02-05 01:53:04 +1100 Matthew Waters * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: * tests/check/libs/gstglupload.c: [878/906] tests: update for glmem api change 2014-02-04 13:49:35 +0100 Chris Paulson-Ellis * gst-libs/gst/gl/x11/gstglwindow_x11.c: [877/906] x11: Use correct format string for guintptr https://bugzilla.gnome.org/show_bug.cgi?id=723537 2014-02-01 03:14:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: [876/906] glmem: use GstVideoInfo for format configuration Allows use of strides 2014-01-31 06:53:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [875/906] upload: support for arbitrary strides Using GL_UNPACK_ALIGNMENT for GLES2 and GL_UNPACK_ROW_LENGTH for everything else 2014-01-30 07:49:20 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: [874/906] filter: implement draw_texture for GLES2 (taken from gleffects) 2014-01-29 19:14:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst/gl/gstglimagesink.c: [873/906] upload: use GstVideoInfo for choosing the format 2014-01-29 06:42:40 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [872/906] upload: consolidate data _fill 2014-01-29 02:51:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [871/906] upload: fix texture scaling for YUY2/UYVY with GLES2 Another artifact from the transition to GL_TEXTURE_2D 2014-01-29 01:02:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [870/906] upload: remove superflous g_mutex_init 2014-01-30 08:28:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * tests/check/libs/gstglupload.c: [869/906] tests: add some upload tests 2014-01-28 07:50:13 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [868/906] upload: fix compilation for GLES2 2014-01-17 08:46:02 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [867/906] glupload: Add GRAY8/GRAY16LE/BE upload support to glimagesink the 16bit data is uploaded as LUMINANCE_ALPHA, then expanded, composed in shader. value weight is a little complicate, high byte weight is 255*256/65535 (denormalize to [0~255] ,shift to high byte,then normalize to [0~1]), low byte weight is 255/65535(similar) https://bugzilla.gnome.org/show_bug.cgi?id=722670 2013-11-23 22:57:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [866/906] upload: update some docs 2013-11-23 22:19:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [865/906] glmem: report successful copy to the caller 2013-12-29 17:29:53 +1100 Matthew Waters * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: * tests/examples/gtk/gstgtk.c: [864/906] examples: update to gtk3 2013-11-26 09:32:32 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [863/906] window: hold a ref to our GstGLDisplay 2013-11-25 20:34:06 +1100 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [862/906] window: remove set_need_lock No-one is using it. The only code that did was the x11 one which doesn't need it anymore. 2014-01-10 02:50:14 +0800 Wang Xin-yu (王昕宇) * gst-libs/gst/gl/glprototypes/opengl.h: [861/906] glprototypes: Add missing glScalef declare https://bugzilla.gnome.org/show_bug.cgi?id=721903 2013-11-23 22:58:57 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: [860/906] docs: misc updates 2013-11-23 22:57:49 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [859/906] window: provide some documetation 2013-11-23 22:56:10 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: [858/906] glmem: update the docs 2013-11-23 22:54:46 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [857/906] display: document the new GstContext api 2013-11-23 22:53:48 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: [856/906] context: document it 2013-11-14 15:27:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst/gl/gstglimagesink.c: [855/906] upload: add support for GstVideoGLTextureUploadMeta 2013-11-13 00:41:01 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [854/906] use the allocation query to propogate GstGLContext uses the GstVideoGLTextureUploadMeta api type for the query 2013-10-24 22:30:45 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: [853/906] display: remove _{set,get}_context A GstGLDisplay doesn't need a GstGLContext and its use was cause a reference cycle 2013-11-13 10:43:16 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [852/906] use GstContext for GstGLDisplay propogation implements the hooks required in GstElement::set_context and the context query 2013-12-20 15:18:38 +0000 Matthieu Bouron * gst/gl/gstgldeinterlace.c: [851/906] deinterlace: fix texture coordinates computation Fixes a regression introduced by fffdcbdd3dde437e10cf6e1b5e40c6958d41e6c1 https://bugzilla.gnome.org/show_bug.cgi?id=720826 2013-11-15 18:28:49 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [850/906] glupload: Remove texture scaling artifacts from the TEXTURE_RECTANGLE -> TEXTURE_2D transition fixes the funky colours in some of the yuv formats https://bugzilla.gnome.org/show_bug.cgi?id=721155 2013-10-26 02:20:17 +1100 Matthew Waters * gst/gl/gltestsrc.c: [849/906] testsrc: use _context_get_gl_api 2013-10-24 22:28:57 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [848/906] filter: a little code cleanup 2013-11-13 15:57:07 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [847/906] mixer: unmap the video frames we map plugs a memory leak 2013-11-15 20:50:27 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [846/906] mixer: handle 0/1 framerate better in caps 2013-11-15 20:49:43 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [845/906] filter: handle capsfeatures properly 2013-11-14 15:08:47 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst/gl/gstglmosaic.c: * gst/gl/gstglmosaic.h: * gst/gl/gstglvideomixer.c: * gst/gl/gstglvideomixer.h: [844/906] mixer: give access to the pads at render time allows us to move the video frame mapping somewhere else 2013-11-13 23:24:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: [843/906] memory: provide copy_into_texture 2013-12-25 23:35:50 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: [842/906] Fix gstglconfig.h-related 'make distcheck' issues Fix srcdir vs. builddir issue in docs and 'files left after disclean' issue for gstglconfig.h 2013-11-30 09:51:49 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: [841/906] osx: allow x11/glx backend and set default runtime to cocoa/nsgl https://bugzilla.gnome.org/show_bug.cgi?id=719757 2013-12-14 19:12:09 +0100 Wang Xin-yu (王昕宇) * gst/gl/gstglvideomixer.c: [840/906] glvideomixer: Use correct coordinates after the switch from GL_TEXTURE_RECTANGLE to GL_TEXTURE_2D https://bugzilla.gnome.org/show_bug.cgi?id=720177 2013-11-30 16:38:13 +0000 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [839/906] cocoa: allow to call set_window_handle before to create glcontext So that it actually make cocoa videooverlay example work again. Fixes bug https://bugzilla.gnome.org/show_bug.cgi?id=719758 2013-11-15 18:28:49 +1100 Matthew Waters * ext/libvisual/visual-gl.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gltestsrc.c: * gst/gl/gstglbumper.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglmosaic.c: * gst/gl/gstgloverlay.c: * gst/gl/gstglvideomixer.c: * tests/check/libs/gstglcontext.c: * tests/examples/clutter/cluttershare.c: * tests/examples/sdl/sdlshare.c: [838/906] gl: Use GL_TEXTURE_2D instead of GL_TEXTURE_RECTANGLE We create our textures (in Desktop GL) with GL_TEXTURE_RECTANGLE, vaapi attempts to bind our texture to GL_TEXTURE_2D which throws a GL_INVALID_OPERATION error and as thus, no video. Also, by moving exclusively to GL_TEXTURE_2D and the npot extension we also remove a difference between the Desktop GL and GLES2 code. https://bugzilla.gnome.org/show_bug.cgi?id=712287 2013-11-08 12:12:26 +0000 Matthieu Bouron * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [837/906] cocoa: resize OpenGL view size each time the window is resized Fixes glitches that can appear when the OpenGL view has not been resized after a window resize. https://bugzilla.gnome.org/show_bug.cgi?id=711672 2013-11-01 16:35:46 +0000 Matthieu Bouron * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: [836/906] cocoa: only use GSRegisterCurrentThread with GNUStep environment 2013-11-06 22:16:21 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [835/906] gstglwindow: remove unused fields 2013-11-06 22:13:20 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [834/906] gstglwindow: clear mutex 2013-11-06 22:12:02 +0000 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: [833/906] gstglcontext: initialize window to NULL 2013-11-06 21:59:27 +0000 Julien Isorce * gst-libs/gst/gl/x11/gstglwindow_x11.c: [832/906] x11: ignore Expose events not initiated by gst_gl_window_draw 2013-11-06 21:55:49 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst/gl/gstglimagesink.c: [831/906] glimagesink: avoid to overload the drawer if already drawing Especially if the application calls gst_video_overlay_expose a lot 2013-10-23 21:46:04 +1100 Matthew Waters * gst/gl/Makefile.am: * gst/gl/gstglvideomixer.c: * gst/gl/gstglvideomixer.h: * gst/gl/gstopengl.c: [830/906] glvideomixer: Add a new simple glvideomixer element that simply uses glBlendFunc to blend each imput frame https://bugzilla.gnome.org/show_bug.cgi?id=710714 2013-10-23 20:38:56 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [829/906] mixer: error out properly on flushing 2013-10-22 21:48:00 +1100 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: [828/906] context: refcount the display 2013-10-26 02:20:54 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [827/906] mixer: don't unref the query in the default case The element/application performing the query is responsible for the de/allocation 2013-10-24 21:24:03 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [826/906] upload: free our mutex 2013-10-11 16:00:23 +0100 Julien Isorce * gst-libs/gst/gl/x11/gstglwindow_x11.c: [825/906] glwindow_x11: check if the loop exists It happens when calling set_window_handle before to reach GST_STATE_READY. In this case the parent is set when creating the internal window. 2013-10-01 23:47:54 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshadervariables.c: [824/906] android: Build fixes https://bugzilla.gnome.org/show_bug.cgi?id=709786 2013-10-01 11:46:46 +0000 Julien Isorce * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [823/906] wayland_egl: make the wayland backend actually work on Raspberry Pi Fix resizing and can now move the window 2013-10-01 11:44:00 +0000 Julien Isorce * gst-libs/gst/gl/egl/gstglcontext_egl.c: [822/906] gstglcontext_egl: avoid non working EGL confs on rpi/wayland 2013-10-01 11:42:21 +0000 Julien Isorce * gst-libs/gst/gl/gstglframebuffer.c: * tests/check/libs/gstglcontext.c: [821/906] tests: fix test_share on GLESv2 2013-10-01 11:27:07 +0000 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [820/906] gstglwindow: if available use wayland instead dispmanx on rpi 2013-09-27 01:15:25 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst/gl/gstgldeinterlace.c: [819/906] make gen_texture/del_texture threadsafe Use stack allocated instead of static variables Conflicts: gst-libs/gst/gl/gstglutils.c 2013-09-25 12:26:57 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [818/906] window: add send_message_async vmethod - provide a default synchronous send_message - make context creation threadsafe again 2013-09-24 16:37:11 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst/gl/gstglbumper.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglmosaic.c: [817/906] make the state change test pass 2013-09-24 14:07:58 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [816/906] x11: fix make check segfault 2013-09-20 11:55:36 +1000 Matthew Waters * gst-libs/gst/gl/gstglcontext.c: * gst/gl/gstglimagesink.c: [815/906] fix some refcount errors 2013-09-20 11:54:42 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [814/906] mixer: timestamp buffers 2013-09-16 19:07:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstglimagesink.c: [813/906] unref the pool on shutdown 2013-09-15 14:23:43 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstglbumper.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstglmosaic.c: * gst/gl/gstgloverlay.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: * tests/check/libs/gstglcontext.c: * tests/check/libs/gstglmemory.c: [812/906] move the GL vtable from GstGLDisplay to GstGLContext Conflicts: tests/check/libs/gstglcontext.c 2013-08-22 15:55:35 +1000 Matthew Waters * tests/check/libs/gstglmemory.c: [811/906] tests: update for GstGLContext addition 2013-09-26 14:46:16 +0100 Julien Isorce * gst-libs/gst/gl/gstglutils.c: [810/906] gstglutils: use gl_vtable for glDeleteTextures 2013-09-26 14:43:19 +0100 Julien Isorce * tests/check/libs/gstglcontext.c: [809/906] tests: port test_share to GLES2 Also add a deinit function to release fbo, tex and shader. 2013-09-03 22:03:03 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [808/906] x11: remove dead code 2013-09-03 21:49:18 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: [807/906] context: Move some window error enums to context 2013-08-30 00:28:04 +1000 Matthew Waters * gst-libs/gst/gl/egl/gstglcontext_egl.c: [806/906] egl: doesn't require the EGLConfig from the other context libEGL should give us the same or similar EGLConfig from the EGLDisplay we have. 2013-08-30 00:22:31 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [805/906] glfilter: rename external-opengl-context prop to other-context It now requires a GstGLContext instead of a handle 2013-08-30 15:53:41 +0100 Julien Isorce * gst-libs/gst/gl/gstglcontext.c: * gst/gl/gstopengl.c: [804/906] rpi: call bcm_host_init in plugin_init 2013-08-30 14:12:37 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/dispmanx/Makefile.am: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c: * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglwindow.c: [803/906] raspberrypi: add support for dispmanx See https://bugzilla.gnome.org/show_bug.cgi?id=703342 2013-08-29 20:12:27 +1000 Matthew Waters * tests/check/libs/gstglcontext.c: [802/906] add GstGLContext test that tests context sharing 2013-08-29 20:10:42 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/x11/gstglcontext_glx.c: [801/906] context: Reimplement GL context sharing https://bugzilla.gnome.org/show_bug.cgi?id=704806 2013-08-28 10:32:29 +0100 Julien Isorce * gst/gl/gstglimagesink.c: [800/906] glimagesink: avoid to draw texture while releasing stored buffer Spoted by generic/cube example with ClientDrawCallback set to returning TRUE (it means drawing as fast as possible) 2013-08-28 10:07:24 +0100 Julien Isorce * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [799/906] glimagesink: fix asynchrone drawing Simplify gst_glimage_sink_redisplay which is there only to ask the window for a redraw. Put a lock to make sure we are not realeasing the stored buffer while still drawing the corresponding texture 2013-08-22 00:29:36 +1000 Matthew Waters * gst-libs/gst/gl/glprototypes/Makefile.am: [798/906] build: install needed header 2013-08-21 15:40:52 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [797/906] x11: fix build for clang 2013-08-21 14:05:56 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/egl/gstglcontext_egl.c: * gst-libs/gst/gl/egl/gstglcontext_egl.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: [796/906] move egl into its own directory 2013-08-21 13:57:56 +1000 Matthew Waters * gst-libs/gst/gl/android/gstglwindow_android_egl.c: [795/906] android: port to GstGLContext not tested 2013-08-15 17:09:04 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstgl_cocoa_private.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.h: * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglcontext_wgl.c: * gst-libs/gst/gl/win32/gstglcontext_wgl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglcontext_glx.c: * gst-libs/gst/gl/x11/gstglcontext_glx.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [794/906] context: add subclasses for the different platforms (egl, glx, wgl, etc) - most code taken from the Window subclasses - tested combinations: xEGL, GLX, Wayland+EGL, Cocoa (under GNUStep), WGL (Wine) 2013-08-14 10:44:19 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglcontext.c: * gst-libs/gst/gl/gstglcontext.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [793/906] add a GstGLContext object that will be the basis of OpenGL contexts At the moment it just sits in between GstGLDisplay and GstGLWindow performing some of the stuff that GstGLWindow used to do. 2013-08-13 20:10:56 +1000 Matthew Waters * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: * gst/gl/Makefile.am: [792/906] build: use our own in tree headers before system ones allows us to develop against the tree rather than what may be installed 2013-08-16 16:29:12 +0100 Julien Isorce * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/x11_event_source.c: [791/906] glwindow/x11: remove X11EventSource as soon as the window is deleted gst_gl_window_x11_send_message do not use XSendEvent anymore 2013-08-16 15:26:28 +0100 Julien Isorce * gst/gl/gstglimagesink.c: [790/906] glimagesink: retrieve window only when clientDrawCallback return true 2013-08-07 17:11:59 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglegl.c: [789/906] egl: Create a window surface if necessary 2013-08-07 11:46:49 +0200 Tonu Jaansoo * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [788/906] osx: Fix compilation 2013-08-07 11:42:46 +0200 Tonu Jaansoo * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglupload.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgleffects.c: * gst/gl/gstglimagesink.c: [787/906] gl: The GLSL rectangle resampler does not always work with int tex coords Use floats instead. 2013-07-24 13:35:27 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/gles3opengl.h: [786/906] glprototypes: Add support for NV extensions for DrawBuffers and ReadBuffer 2013-07-24 13:34:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglegl.c: [785/906] egl: Use EGL_KHR_surfaceless_context instead of creating a useless surface if available 2013-07-22 19:00:42 +0100 Julien Isorce * gst/gl/gstgloverlay.h: [784/906] gloverlay: add G_BEGIN/END declaration 2013-07-19 16:28:20 +0200 Sebastian Dröge * gst/gl/gstglimagesink.c: [783/906] glimagesink: Fix format string warning 2013-07-19 10:07:54 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [782/906] gldownload: Use strlen() instead of sizeof(char*) gstgldownload.c:846:22: error: argument to 'sizeof' in 'memcpy' call is the same expression as the source; did you mean to provide an explicit length? [-Werror=sizeof-pointer-memaccess] 2013-07-19 16:48:03 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [781/906] download: propogate errors from the GL thread 2013-07-18 20:21:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [780/906] up/download: check return values So we fail properly 2013-07-18 19:37:32 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: [779/906] download: remove _thread variants of the API 2013-07-18 19:36:27 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [778/906] upload: remove _thread variants of the API 2013-07-18 19:17:18 +1000 Matthew Waters * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [777/906] upload: overhaul and addition of new video formats use the shaders from eglglessink (adapted for Desktop GL) error out properly 2013-07-17 21:17:03 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [776/906] download: fix compiler warning about missing string format 2013-07-19 09:20:09 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstglapi.h: [775/906] configure: Check for GLeglImageOES and others again https://bugzilla.gnome.org/show_bug.cgi?id=704498 2013-07-18 20:26:44 +0200 Sebastian Dröge * gst-libs/gst/gl/win32/gstglwindow_win32.c: [774/906] win32: Fix some compiler errors/warnings 2013-07-18 01:42:31 +0200 Mathieu Duponchelle * gst-libs/gst/gl/gstglfilter.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterreflectedscreen.c: [773/906] glfilters: Mark writable-only properties as readable as well https://bugzilla.gnome.org/show_bug.cgi?id=704429 2013-07-18 01:41:05 +0200 Mathieu Duponchelle * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglmosaic.c: * gst/gl/gstgloverlay.c: [772/906] glfilters: Mark them as Video filters in their classification It makes it possible for applications like pitivi to use them. https://bugzilla.gnome.org/show_bug.cgi?id=704429 2013-07-17 11:22:02 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * tests/examples/gtk/gstgtk.c: [771/906] gl: Some less long/ulong/gulong usage 2013-07-16 18:28:33 +0200 Mathieu Duponchelle * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/cluttershare.c: [770/906] tests/examples: port some of the examples. This commit is a first step, removes glupload, switch new-decoded-pad to pad-added, but these examples still fail for various reasons. 2013-07-16 18:27:07 +0200 Mathieu Duponchelle * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: * tests/examples/sdl/sdlshare.c: [769/906] tests/examples: fix and port some of the examples. Realize widgets, remove glupload element. 2013-07-16 16:17:11 +0200 Sebastian Dröge * gst/gl/gstgltestsrc.c: [768/906] gltestsrc: Fix usage of FBO API 2013-07-16 14:22:53 +0200 Sebastian Dröge * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [767/906] glimagesink: Remove GValue usage for fraction handling 2013-07-04 10:01:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglutils.c: [766/906] utils: generate a RGBA texture in all cases 2013-07-03 21:01:25 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [765/906] wayland: remove fullscreen 2013-07-03 14:37:13 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [764/906] filter: fix pad template caps upload is for the sink template download is form the src template 2013-07-03 14:13:00 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [763/906] memory: copy properly depending on where the most recent data is 2013-07-16 14:11:46 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [762/906] glimagesink: Fix some memory leaks and properly set up the buffer pool 2013-07-16 13:28:19 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: [761/906] x11: Protect event display connection with a mutex We use it from different threads and need to serialize the accesses to it. 2013-07-16 13:23:54 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: [760/906] x11: Always use the same display connection from the GL thread The other display connection might be used by async calls from elsewhere at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=704247 2013-07-15 21:44:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [759/906] gldownload: #ifdef some GLES2 specific code to fix compilation 2013-07-15 18:07:12 +0200 Sebastian Dröge * gst-libs/gst/gl/android/gstglwindow_android_egl.c: [758/906] android: Don't require a window to be set This allows the filters to be usable without a GL sink downstream. 2013-07-15 18:01:55 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglegl.c: [757/906] egl: Create an offscreen surface if no window was provided 2013-07-15 17:20:00 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [756/906] gldownload: Reset the viewport after download RGB via GLES2 2013-07-15 17:11:59 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [755/906] gldownload: Unbind framebuffer after downloading RGB with GLES2 2013-07-15 17:08:42 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: [754/906] gldownload: Add support for RGB reordering when using GLES2 2013-07-15 17:08:23 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: [753/906] gldisplay: Sending a message is synchronous, we can allocate the memory on the stack 2013-07-15 15:58:04 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst/gl/gstglimagesink.c: [752/906] glwindow: Add destroy notifies for the data of the callbacks And actually call the close callback when the window is closed. 2013-07-15 15:25:57 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldisplay.c: [751/906] gldisplay: Don't hold lock while sending a message to the GL thread https://bugzilla.gnome.org/show_bug.cgi?id=704247 2013-07-15 14:11:20 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [750/906] glupload: Add support for RGB reordering when using GLES2 2013-07-15 07:39:07 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshader.c: [749/906] glshader: Add some more debug output 2013-07-12 14:31:48 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: [748/906] glupload: GL_STENCIL_ATTACHMENT is needed for desktop GL, not GLES 2013-07-12 14:26:58 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: [747/906] gl: Constify YUV conversion shaders 2013-07-12 14:20:41 +0200 Sebastian Dröge * gst-libs/gst/gl/android/gstglwindow_android_egl.h: [746/906] android: Add comment to clarify the type of a variable 2013-07-12 14:20:05 +0200 Sebastian Dröge * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: [745/906] gl: Simplify and optimize YUV conversion shaders a bit 2013-07-12 11:35:52 +0200 Sebastian Dröge * gst-libs/gst/gl/gl.h: [744/906] gl: Use __GST_GL_H__ instead of __GL_H__ as a multi-include guard GL/gl.h might use the latter already. 2013-07-11 21:30:53 +0200 Sebastian Dröge * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: [743/906] win32: Allow setting window handle before creating the context 2013-07-11 21:22:57 +0200 Sebastian Dröge * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [742/906] cocoa: Allow setting window handle before creating the context 2013-07-11 21:17:42 +0200 Sebastian Dröge * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [741/906] wayland: Don't leak main context and loop 2013-07-11 21:15:41 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: [740/906] x11: Allow setting window handle before creating the context 2013-07-11 20:58:36 +0200 Sebastian Dröge * gst-libs/gst/gl/x11/gstglwindow_x11.c: [739/906] x11: Don't leak main context and main loop 2013-07-11 20:51:47 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglapi.h: [738/906] gl: Include glu.h after gl.h 2013-07-11 16:21:00 +0200 Sebastian Dröge * gst/gl/gstglimagesink.c: [737/906] glimagesink: Request and set the window handle much earlier 2013-07-11 16:05:48 +0200 Sebastian Dröge * gst/gl/gstopengl.c: [736/906] glimagesink: Give MARGINAL rank to be able to autoplug it if nothing else is available 2013-07-10 11:31:17 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/android/Makefile.am: * gst-libs/gst/gl/android/gstglwindow_android_egl.c: * gst-libs/gst/gl/android/gstglwindow_android_egl.h: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglwindow.c: [735/906] gl: Add support for Android https://bugzilla.gnome.org/show_bug.cgi?id=703340 2013-07-11 11:37:17 +0200 Sebastian Dröge * gst-libs/gst/gl/win32/Makefile.am: [734/906] win32: Make automake happy by using noinst_HEADERS 2013-07-11 11:03:31 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/glprototypes/Makefile.am: * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.h: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/x11_event_source.c: * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectlumatocurve.h: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gltestsrc.h: * gst/gl/gstglbumper.h: * gst/gl/gstglcolorscale.h: * gst/gl/gstgldeinterlace.h: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldifferencematte.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * gst/gl/gstglfilterapp.h: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterblur.h: * gst/gl/gstglfiltercube.h: * gst/gl/gstglfilterglass.h: * gst/gl/gstglfilterlaplacian.h: * gst/gl/gstglfilterreflectedscreen.h: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltershader.h: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglfiltersobel.h: * gst/gl/gstglimagesink.h: * gst/gl/gstglmosaic.h: * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: * gst/gl/gstgltestsrc.h: * gst/gl/gstopengl.c: [733/906] gl: Major header and include cleanup 2013-07-10 16:03:04 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gl.h: * gst-libs/gst/gl/gstgl_fwd.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst/gl/gstglimagesink.h: * gst/gl/gstgltestsrc.h: [732/906] build: fix repeated typedefs Write forward declarations in another way to avoid repeated typedefs "error: redefinition of typedef". Raised when using i686-apple-darwin11-llvm-gcc-4.2 It seems that C apple compiler does not support C11 feature. https://bugzilla.gnome.org/show_bug.cgi?id=703885 2013-07-10 15:47:23 +0100 Julien Isorce * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: [731/906] cocoa: fix build when GNUSTEP is not defined 2013-07-10 11:30:16 +0200 Sebastian Dröge * gst-libs/gst/gl/glprototypes/gstgl_compat.h: [730/906] glcompat: Properly check for GLchar and other types On Android for example these are no #defines but typedefs 2013-07-10 11:24:34 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglutils.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstglfiltershader.c: * tests/check/pipelines/simple-launch-lines.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/clutter/cluttershare.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: * tests/examples/gtk/gstgtk.c: * tests/examples/sdl/sdlshare.c: [729/906] gl: Include config.h everywhere 2013-07-03 14:13:56 +1000 Matthew Waters * gst/gl/gstglimagesink.c: [728/906] glimagesink: fix for gles2 https://bugzilla.gnome.org/show_bug.cgi?id=703508 2013-07-03 09:12:39 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglegl.c: * gst-libs/gst/gl/gstglegl.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: [727/906] egl: Refactor EGL logic into a helper object 2013-07-02 22:45:08 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/win32/gstglwindow_win32.c: [726/906] window: don't call a NULL destroy function 2013-07-02 22:06:03 +1000 Matthew Waters * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/x11_event_source.c: * gst-libs/gst/gl/x11/x11_event_source.h: [725/906] x11: use GMainContext/GMainLoop allows us to be reentrant https://bugzilla.gnome.org/show_bug.cgi?id=703445 2013-07-02 18:33:42 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [724/906] wayland: make reentrant https://bugzilla.gnome.org/show_bug.cgi?id=703445 2013-07-01 14:43:14 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.c: [723/906] gstglwindow: close has to be called in the glthread. Indeed 'glXMakeCurrent (window_x11->device, None, NULL);' has to be called in the thread where the glcontext is actually current. Otherwise glXDestroyContext may crash. 2013-07-01 01:36:35 +0400 Руслан Ижбулатов * gst-libs/gst/gl/gstglapi.h: [722/906] gl: Fix build on Win32 1) Need to include GL/glext.h on W32 to provide necessary macros 2) W32 macros that pre-processor has by default are different for different toolchains. Borland uses __WIN32__, everyone else has _WIN32, so check both. Side-note: glext.h is not supplied by mingw-w64 at the moment, but can be downloaded from http://www.opengl.org/registry/ https://bugzilla.gnome.org/show_bug.cgi?id=703364 2013-06-28 11:10:22 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglfilter.c: [721/906] glfilter: Use uint64 for the OpenGL context property ulong/long properties are deprecated and should not be used anymore for portability reasons. 2013-06-28 11:00:46 +0200 Sebastian Dröge * tests/examples/clutter/clutteractortee.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [720/906] examples: Stop using deprecated GLib thread API 2013-06-28 11:00:07 +0200 Sebastian Dröge * gst-libs/gst/gl/gstglshader.c: * gst/gl/gstgleffects.c: * gst/gl/gstglimagesink.c: [719/906] gl: Fix compilation with GLES2 2013-06-28 00:34:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglutils.c: * gst/gl/gstgleffects.c: [718/906] shader: make it possible to unref in the non-GL thread 2013-06-28 00:31:36 +1000 Matthew Waters * ext/libvisual/CMakeLists.txt: * gst-libs/gst/gl/CMakeLists.txt: * gst/gl/CMakeLists.txt: [717/906] remove outdated cmake build files 2013-06-17 19:45:27 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: [716/906] wayland: properly choose EGL_RENDERABLE_TYPE based on the gl api we chose 2013-06-16 20:47:05 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.h: [715/906] display: inherit from the right object class 2013-06-16 20:44:47 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglframebuffer.c: * gst-libs/gst/gl/gstglframebuffer.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [714/906] Add GstGLFramebuffer to replace _display_gen_fbo and friends This version is simply API compatible with _display_gen_fbo. The next version will likely revamp the API 2013-06-16 20:41:29 +1000 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [713/906] shader: make it possible to create the object in a non-GL thread 2013-06-16 20:38:27 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [712/906] wayland: shutdown properly We cannot use _finalize as this will be called before GstGLWindow's _finalize. This causes us to try and perform operations with the wayland server when the connection has been severed. 2013-06-16 20:37:06 +1000 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: [711/906] wayland: support choosing Desktop GL as the api 2013-06-16 20:34:15 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: [710/906] window: fail if the user specifies an GL api that we cannot work with It would've been caught later in an g_assert anyway. 2013-06-13 18:33:47 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [709/906] display: some more cleanups 2013-06-13 17:57:35 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.c: [708/906] display: a cleanup and removal of old code 2013-06-13 16:55:37 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [707/906] display: move error_message to utils 2013-06-13 16:31:38 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [706/906] display: move activate_context into utils 2013-06-13 16:04:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [705/906] x11: don't shutdown in _finalize The window's loop could be still running when _finalize is called and if we destroy the display connection it will never be closed. Add _open and _close vfuncs to GstGLWindow so that subclasses can start up and shutdown at the right time. 2013-06-13 14:36:41 +1000 Matthew Waters * ext/libvisual/visual-gl.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglwindow.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * tests/check/libs/gstglmemory.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/clutter/cluttershare.c: * tests/examples/sdl/sdlshare.c: [704/906] Use gst_object_[un]ref so we can get refcounts in the log 2013-06-13 14:18:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: [703/906] x11: don't segfault if destroy_cb is NULL 2013-06-12 23:21:16 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [702/906] x11: fix segfault if the x11 backend is instantiated but not used 2013-06-12 23:17:30 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/gltestsrc.c: * gst/gl/gstglbumper.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstgloverlay.c: * gst/gl/gstgltestsrc.c: [701/906] display: move context creation into window 2013-06-12 01:04:55 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglutils.c: * gst-libs/gst/gl/gstglutils.h: [700/906] display: move most of the code into utils for sorting later This contains a hack that essentially requires one GstGLDisplay per process. 2013-06-11 18:50:12 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [699/906] display: remove list of upload and download objects and only create an up/download object when needed. 2013-06-11 12:26:50 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [698/906] move sink-specific stuff from GstGLDisplay into glimagesink 2013-06-11 11:27:56 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [697/906] display: allow the user to try and choose the GL api we use via env variable GST_GL_API=opengl,opengl3,gles2,gles3 2013-06-11 11:26:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglapi.c: [696/906] glapi: fix memory leak from not freeing a string 2013-06-04 22:18:51 +1000 Matthew Waters * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/x11/Makefile.am: [695/906] build: remove libtool warning about -version-info not used in convenience libraries 2013-06-04 22:17:41 +1000 Matthew Waters * gst/gl/Makefile.am: [694/906] build: add support for static plugins 2013-06-04 22:16:00 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: [693/906] x11_glx: ask for a 3.0 GL Context (falling back if needed) 2013-06-03 18:15:45 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: [692/906] window_x11: add XError trapping some functions in GLX can fail if the implementation does not support certain features we ask for (i.e. GL 3) bringing down the entire application 2013-06-03 18:13:52 +1000 Matthew Waters * gst-libs/gst/gl/gstglfeature.h: [691/906] feature: make gst_gl_check_extension public prevents duplication of code of extension string parsing in GstGLWindow's 2013-06-02 21:47:17 +1000 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [690/906] windowx11glx: use fbconfigs if supported 2013-04-25 12:04:23 +1000 Matthew Waters * gst/gl/gstglbumper.c: [689/906] bumper: nicer error for no bumpmap file proveded 2013-04-24 14:25:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [688/906] display: properly shutdown if we error after context creation The _finalize() code checks to see if the context was created before attempting to destroy it. We never did say that we had created the context. 2013-04-24 14:24:27 +1000 Matthew Waters * gst/gl/gstglbumper.c: [687/906] bumper: error out properly if we cannot load the png file 2013-04-24 14:23:16 +1000 Matthew Waters * gst/gl/gstglfiltershader.c: [686/906] filtershader: fix string format compiler warnings 2013-04-24 14:22:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [685/906] filter: improve error handling 2013-04-24 12:18:14 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [684/906] display: lack of format-string causing a compiler warning 2013-04-24 12:17:36 +1000 Matthew Waters * gst-libs/gst/gl/gstglfeature.c: [683/906] feature: remove double free 2013-03-11 15:51:06 +1100 Matthew Waters * gst/gl/gstgloverlay.c: [682/906] overlay: fix video-top property 2013-06-02 07:52:30 +0000 Matthew Waters * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglshader.c: [681/906] win32: fix gl api calls on 32-bit win has the bright idea of having 5 different calling conventions. we should probably use the right one so we don't crash from stack corruption. 2013-03-10 13:37:48 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl.h: * gst/gl/gstgloverlay.c: [680/906] overlay: tentative port to new GstGLFuncs API 2013-03-10 13:34:15 +1100 Matthew Waters * gst/gl/gstopengl.c: [679/906] opengl: fix plugins not being registered when they should be 2013-03-09 23:36:36 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: [678/906] window_win32_wgl: implement wglGetProcAddress for extension functions 2013-03-09 22:53:41 +1100 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [677/906] memory: fix GSIZE printf format on win32 2013-03-09 22:53:09 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: [676/906] windwo_win32: port to new API 2013-03-09 22:47:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [675/906] upload: provide nicer debugging 2013-03-09 22:45:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglfeature.c: [674/906] feature: try and catch more GL extension functions if we don't find the extension in core GL, try the extension version anyway 2013-03-09 22:37:34 +1100 Matthew Waters * gst-libs/gst/gl/gstglfeature.h: [673/906] feature: add gstreamer license 2013-03-09 22:05:28 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [672/906] display: constify GstGLFuncs *gl 2013-03-09 21:59:02 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gstgl_compat.h: * gst-libs/gst/gl/gstglapi.h: [671/906] win32: #include GL/glext.h on windows also add some GL default variables if some GL types are not defined 2013-02-18 21:40:34 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [670/906] display: replace glib deprecated api 2013-02-12 23:48:36 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [669/906] window: seperate object creation and context creation 2013-02-04 21:30:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [668/906] shader: fix gles2 segfault 2013-02-04 21:29:33 +1100 Matthew Waters * gst/gl/gstglfiltercube.c: [667/906] filtercube: fix for gles2 compilation 2013-02-01 18:20:04 +1100 Matthew Waters * gst/gl/gstglfiltersobel.c: [666/906] sobel: port for non-glew 2013-02-01 00:08:28 +1100 Matthew Waters * gst/gl/gstglmosaic.c: [665/906] mosaic: fix a couple of assertions 2013-02-01 00:06:54 +1100 Matthew Waters * gst/gl/gstglfiltershader.c: [664/906] filtershader: improve error checking 2013-01-31 23:51:04 +1100 Matthew Waters * gst/gl/gstglfiltershader.c: [663/906] filtershader: port to non-glew 2013-01-31 23:46:37 +1100 Matthew Waters * gst/gl/gstglfilterlaplacian.c: [662/906] laplacian: port to non-glew 2013-01-31 23:43:52 +1100 Matthew Waters * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterglass.h: [661/906] glass: port to non-glew + shader matrices 2013-01-31 23:39:56 +1100 Matthew Waters * gst/gl/gstglfiltercube.c: [660/906] cube: port for non-glew 2013-01-31 23:34:42 +1100 Matthew Waters * gst/gl/gstglfilterblur.c: [659/906] blur: port for non-glew 2013-01-31 23:32:49 +1100 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [658/906] mixer: fix eos timestamp check 2013-01-31 23:31:09 +1100 Matthew Waters * gst/gl/gstglfilterapp.c: [657/906] filterapp: port to non-glew 2013-01-31 23:29:13 +1100 Matthew Waters * gst/gl/gstglbumper.c: [656/906] bumper: use DrawElements for semi-compatability with ES also GL_QUADS isn't available with ES contexts 2013-01-17 23:45:59 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [655/906] download: remove erronous ReadBuffer call - it was causing segfaults in mesa - we didn't set the readbuffer so we shouldn't reset it 2013-01-17 23:17:14 +1100 Matthew Waters * gst/gl/gstgldifferencematte.c: [654/906] differencematte: port to non-GLEW 2013-01-17 23:16:07 +1100 Matthew Waters * gst/gl/gstgldeinterlace.c: [653/906] deinterlace: port to non-GLEW + arrays 2013-01-17 23:14:49 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl.h: * gst/gl/gstglbumper.c: [652/906] bumper: port to non-GLEW + arrays 2013-01-17 23:12:35 +1100 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: [651/906] up/download: fix some typos when removing GLEW 2013-01-16 22:41:18 +1100 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: [650/906] filter: fix _draw_texture()'s wrong vertices 2013-01-16 22:27:10 +1100 Matthew Waters * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectsqueeze.c: [649/906] effects: fixes for mirror(1) and squeeze(2) producing black 2013-01-16 15:23:49 +1100 Matthew Waters * tests/examples/clutter/cluttershare.c: [648/906] tests/examples: remove dependency on glew 2013-01-16 15:21:44 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/gles3opengl.h: * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglupload.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstglbumper.c: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * gst/gl/gstglmosaic.c: [647/906] remove dependecy on glew 2013-01-13 00:09:33 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1gles2opengl.h: * gst-libs/gst/gl/glprototypes/gles1opengl.h: * gst-libs/gst/gl/glprototypes/gles2opengl.h: * gst-libs/gst/gl/glprototypes/opengl.h: [646/906] some gl header fixes/additions 2013-01-10 13:32:16 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [645/906] fix gles2 compilation 2013-01-10 10:57:11 +1100 Matthew Waters * gst-libs/gst/gl/.gitignore: [644/906] update .gitignore for some new files 2013-01-10 01:44:54 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [643/906] display: privatise most of the struct 2013-01-10 01:13:23 +1100 Matthew Waters * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gltestsrc.c: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstopengl.c: * tests/check/pipelines/simple-launch-lines.c: [642/906] add gstglconfig.h for apps to find out what our capabilites are ie libgstgl can be compiled with any combination of opengl/gles2 2013-01-10 00:30:03 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [641/906] display: feature check for GL extension functions 2013-01-10 00:25:06 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: [640/906] build: add missing file to built sources 2013-01-10 00:23:32 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: [639/906] add get_proc_address implementations for egl and glx 2013-01-08 17:40:39 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: [638/906] window: add get_proc_address + stub for retrieving gl functions 2013-01-08 17:38:40 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: [637/906] x11_egl: add prelim support for choosing opengl or gles 2013-01-08 17:36:18 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [636/906] window_x11: compact debug info 2013-01-07 14:08:39 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: [635/906] fixup compile errors 2012-12-19 14:54:21 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: [634/906] wayland egl: deactivate context before we destroy it avoids a segfault with dri drivers 2012-12-19 14:32:20 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [633/906] display: fail properly in context creation in order to minimize a race condition previously, on context creation, when we failed to get a valid context we would still atempt to run the window mainloop as well as setting an error on the display. This would cause the calling element to finalize the display and therefore attempt to quit the window mainloop. However the mainloop may not have started running. Thus when the window mainloop ran it would never a get a quit message and never end. 2012-12-18 18:31:00 +1100 Matthew Waters * gst/gl/gstgleffects.c: [632/906] remove stray ) The rest is indent stuff from the stray ) 2012-12-18 18:29:11 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.h: [631/906] remove redefinition warnings in compiling tests 2012-12-09 09:32:48 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglapi.c: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: [630/906] display: add gl api checking i.e. check for cases where the window wants a different API than what the library was compiled with 2012-12-09 09:30:48 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [629/906] window: add GError for error handling of context creation 2012-12-09 09:04:32 +1100 Matthew Waters * gst/gl/gstglfiltershader.c: [628/906] shader filter: don't do anything if we don't have a shader file 2012-12-07 13:32:28 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [627/906] shader: check for invalid objects 2012-12-07 00:20:58 +1100 Matthew Waters * gst/gl/gstgleffects.c: [626/906] fix build failure from undefined macro 2012-12-07 00:16:04 +1100 Matthew Waters * gst-libs/gst/gl/glprototypes/README: * gst-libs/gst/gl/glprototypes/all_functions.h: * gst-libs/gst/gl/glprototypes/gles1.h: * gst-libs/gst/gl/glprototypes/gles1_functions.h: * gst-libs/gst/gl/glprototypes/gles1gles2.h: * gst-libs/gst/gl/glprototypes/gles1gles2opengl.h: * gst-libs/gst/gl/glprototypes/gles1opengl.h: * gst-libs/gst/gl/glprototypes/gles2.h: * gst-libs/gst/gl/glprototypes/gles2_functions.h: * gst-libs/gst/gl/glprototypes/gles2opengl.h: * gst-libs/gst/gl/glprototypes/opengl.h: * gst-libs/gst/gl/glprototypes/opengl_functions.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglfeature.c: * gst-libs/gst/gl/gstglfeature.h: [625/906] add vtable for opengl functions The vtable provides the ability for one to compile (but not link) against both OpenGL and GL|ES and starts the move away from GLEW 2012-12-06 18:40:26 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gltestsrc.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfiltercube.h: * gst/gl/gstopengl.c: * tests/check/pipelines/simple-launch-lines.c: [624/906] OPENGL_ES2 => HAVE_GLES2 and add HAVE_OPENGL use GstGLAPI to determine which code paths to execute. perform some cleanups 2012-12-06 17:40:47 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [623/906] move GL includes into a single file 2012-12-05 17:23:21 +1100 Matthew Waters * gst-libs/gst/gl/gstgles2.h: [622/906] add missing GL_STENCIL_ATTACHMENT for gles2 compatability 2012-12-03 15:04:49 +1100 Matthew Waters * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglapi.h: * gst-libs/gst/gl/gstglrenderer.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [621/906] GstGLRendererAPI => GstGLAPI and get GstGLAPI from a window 2012-11-30 17:09:21 +1100 Matthew Waters * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: [620/906] wayland_egl: attempt at resizing the video 2012-11-29 13:06:24 +1100 Matthew Waters * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: [619/906] fix typo for win32 debug variables 2012-11-29 01:01:59 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/wayland/Makefile.am: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c: * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.h: * gst-libs/gst/gl/wayland/wayland_event_source.c: * gst-libs/gst/gl/wayland/wayland_event_source.h: [618/906] add wayland-egl window backend 2012-11-20 00:15:05 +1100 Matthew Waters * gst-libs/gst/gl/x11/gstglwindow_x11.c: [617/906] fix 'set but not used' compiler warnings 2012-11-19 22:54:19 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/cocoa/Makefile.am: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.h: * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/win32/Makefile.am: * gst-libs/gst/gl/win32/gstglwindow_win32.c: * gst-libs/gst/gl/win32/gstglwindow_win32.h: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_egl.h: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/win32/gstglwindow_win32_wgl.h: * gst-libs/gst/gl/x11/Makefile.am: * gst-libs/gst/gl/x11/gstglwindow_x11.c: * gst-libs/gst/gl/x11/gstglwindow_x11.h: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.c: * gst-libs/gst/gl/x11/gstglwindow_x11_egl.h: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.c: * gst-libs/gst/gl/x11/gstglwindow_x11_glx.h: [616/906] move window-specific code into seperate subfolders 2012-11-19 21:52:22 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_win32_egl.c: * gst-libs/gst/gl/gstglwindow_win32_egl.h: [615/906] preliminary support for Win32 EGL 2012-11-18 01:23:52 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_x11.c: [614/906] try GLX first when using ANY | OPENGL | OPENGL3 2012-11-18 01:16:44 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_cocoa.m: [613/906] window_cocoa: fix segfault with gst-launch-1.0 -e ... and sending SIGINT (Ctrl-C) GNUstep has a signal handler for SIGINT which runs in the main thread. However that thread has never been 'registered' with GNUstep so the autorelease magic of objective-c causes a segfault from accessing a null NSThread object somewhere deep in GNUstep. 2012-11-16 18:01:08 +1100 Matthew Waters * gst-libs/gst/gl/GNUmakefile.gnustep: * gst/gl/GNUmakefile.gnustep: * gst/gl/effects/GNUmakefile.gnustep: [612/906] remove GNUstep makefiles 2012-11-16 17:13:03 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow_cocoa.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: [611/906] cocoa port of determining gl platform at runtime 2012-11-15 21:46:21 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow_x11_egl.c: [610/906] WindowX11EGL: remove get_platform call 2012-11-15 13:17:59 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_win32.h: * gst-libs/gst/gl/gstglwindow_win32_wgl.c: * gst-libs/gst/gl/gstglwindow_win32_wgl.h: [609/906] win32 port of determining GL platform at runtime - add GstGLWindowWin32 and GstGLWindowWin32WGL along the same lines as the X11 variants 2012-11-14 20:39:38 +1100 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglrenderer.h: [608/906] add GST_GL_PLATFORM_ANY for choosing any platform 2012-11-14 20:36:16 +1100 Matthew Waters * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11.h: * gst-libs/gst/gl/gstglwindow_x11_egl.c: * gst-libs/gst/gl/gstglwindow_x11_glx.c: [607/906] remove get_platform and get_window_handle vfuncs - rename choose_visual() to choose_format() for later incorporating win32 changes and new GstGLPlatform for WGL, EGL, GLX, etc. 2012-11-13 22:12:20 +1100 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglrenderer.h: * gst-libs/gst/gl/gstglwindow.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11.h: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst-libs/gst/gl/gstglwindow_x11_egl.c: * gst-libs/gst/gl/gstglwindow_x11_egl.h: * gst-libs/gst/gl/gstglwindow_x11_glx.c: * gst-libs/gst/gl/gstglwindow_x11_glx.h: * gst/gl/Makefile.am: [606/906] determine the GL platform to use at runtime - Make GstGLWindow subclassablerather than specified at compile time. - Add GstGLWindowX11 for x11 windows and two subclasses, GstGLWindowX11GLX and GstGLWindwX11EGL for GLX and EGL repectively. (win32 and cocoa ports to come) - Also cleanup GL library detection in configure.ac 2012-12-02 14:58:14 +1100 Matthew Waters * gst-libs/gst/gl/gstglshader.c: [605/906] shader: move to gst debugging 2012-11-21 13:34:15 +1100 Matthew Waters * ext/libvisual/visual-gl.c: * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglmosaic.c: * gst/gl/gstgloverlay.c: * gst/gl/gstgltestsrc.c: [604/906] gst_element_class_set_details_simple() => gst_element_class_set_metadata() 2012-11-08 22:53:56 +1100 Matthew Waters * ext/libvisual/visual-gl.c: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglshadervariables.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectlumatocurve.h: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectscurves.h: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gltestsrc.c: * gst/gl/gltestsrc.h: * gst/gl/gstglbumper.c: * gst/gl/gstglbumper.h: * gst/gl/gstglcolorscale.c: * gst/gl/gstglcolorscale.h: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldeinterlace.h: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldifferencematte.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterapp.h: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterblur.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfiltercube.h: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterglass.h: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterlaplacian.h: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfilterreflectedscreen.h: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltershader.h: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglfiltersobel.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstglmosaic.c: * gst/gl/gstglmosaic.h: * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: * gst/gl/gstopengl.c: * tests/check/libs/gstglmemory.c: * tests/check/pipelines/simple-launch-lines.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/clutter/cluttershare.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: * tests/examples/gtk/gstgtk.c: * tests/examples/sdl/sdlshare.c: [603/906] update FSF address 2012-11-04 19:15:05 +1100 Matthew Waters * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/clutter/cluttershare.c: [602/906] hide deprecation warnings with newer clutter versions 2012-10-11 00:24:51 +1100 Matthew Waters * gst-libs/gst/gl/gstglupload.c: [601/906] fix typo causing shader compilation failure for uploading I420 2012-09-27 15:53:46 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [600/906] docs: add docs for new objects and expand on some existing ones 2012-09-26 07:18:53 +0000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstglupload.c: * tests/check/pipelines/simple-launch-lines.c: [599/906] GL|ES2: fix typos from recent changes and make downloading RGB formats work again 2012-09-25 19:26:17 +1000 Matthew Waters * tests/examples/clutter/cluttershare.c: [598/906] examples: fix compilation of cluttershare 2012-09-25 18:13:41 +1000 Matthew Waters * tests/check/pipelines/simple-launch-lines.c: [597/906] tests: add some simple pipeline tests to check 2012-09-25 18:07:23 +1000 Matthew Waters * gst/gl/gstglcolorscale.c: * gst/gl/gstglcolorscale.h: [596/906] colorscale: port over to filter base class 2012-09-25 18:06:14 +1000 Matthew Waters * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstgloverlay.c: [595/906] update for filter API change gleffects needed a similar change 2012-09-25 17:59:27 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [594/906] filter: update for up/download API changes and scaling fixes 2012-09-25 16:03:01 +1000 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [593/906] testsrc/imagesink: update for up/download API changes 2012-09-25 16:01:54 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [592/906] memory: update for up/download API changes 2012-09-25 16:00:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixerpad.h: [591/906] mixer: save the upload object instead of querying for it every frame 2012-09-25 15:20:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [590/906] up/download: fix scaling on transfer i.e. uploading from a 10x10 video frame to a 20x20 texture into another 30x30 videoframe 2012-09-20 23:45:26 +1000 Matthew Waters * gst/gl/gstglcolorscale.c: * gst/gl/gstglcolorscale.h: [589/906] Revert "GLColorscale: convert to a bin of glupload ! gldownload" The elements no longer exist so we have to do something different 2012-09-20 23:41:00 +1000 Matthew Waters * gst/gl/gstglmosaic.c: * gst/gl/gstglmosaic.h: [588/906] mosaic: update for mixer changes and convenience API 2012-09-20 23:27:00 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: [587/906] mixer: mirror the changes done for filter 2012-09-20 23:21:19 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglmemory.c: [586/906] fix up some debug statements to get them into the right categories 2012-09-20 23:20:00 +1000 Matthew Waters * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: [585/906] gltestsrc: update for new GLDownload in libs 2012-09-20 23:16:08 +1000 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [584/906] glimagesink: update for new GLUpload object in libs 2012-09-20 23:06:49 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldeinterlace.h: [583/906] deinterlace: change for new API also allow elements to call the _filter_texture vfunc if they want 2012-09-20 23:03:55 +1000 Matthew Waters * gst/gl/gstglbumper.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstgloverlay.c: [582/906] filters: changes for new API 2012-09-19 00:32:30 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [581/906] filter: add seperate filter function for operating on textures instead of buffers 2012-09-19 00:29:57 +1000 Matthew Waters * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: [580/906] bufferpool: remove obselete gl meta buffer pool options 2012-09-18 21:42:24 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: [579/906] download: fix YV12 format same as I420 but plane 1+2 swapped 2012-09-18 21:39:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [578/906] {up,down}load: add variants that can be called in the gl thread 2012-09-17 10:37:37 +1000 Matthew Waters * gst/gl/Makefile.am: [577/906] remove upload and download elements from the build system 2012-09-17 10:30:01 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglmeta.c: * gst-libs/gst/gl/gstglmeta.h: * gst-libs/gst/gl/gstglupload.h: [576/906] remove uneeded GstGLMeta (use GstVideoMeta) 2012-09-16 21:42:08 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [575/906] filter: port to new upload/download 2012-09-16 21:36:09 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: [574/906] memory: implement transperent upload/download for data (not async yet) 2012-09-16 21:23:09 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgldownload.c: * gst-libs/gst/gl/gstgldownload.h: * gst-libs/gst/gl/gstglupload.c: * gst-libs/gst/gl/gstglupload.h: [573/906] add upload and download library objects allows multiple upload pipelines that previously wasn't possible (i.e. upload RGB and I420 and ... on the same GstGLDisplay) 2012-09-16 21:11:46 +1000 Matthew Waters * gst/gl/gstgldownload.c: * gst/gl/gstgldownload.h: * gst/gl/gstglupload.c: * gst/gl/gstglupload.h: * gst/gl/gstopengl.c: [572/906] remove upload and download elements to be replaced by upload and download in memory 2012-09-05 14:58:38 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [571/906] mixer: fix deadlock on shutdown didn't reiterate over the sinkpad's displays and reactivate them causing a deadlock 2012-09-04 22:50:00 +1000 Matthew Waters * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglupload.c: [570/906] remove the requirement for VideoMeta to be present on non-GL buffers 2012-08-20 16:55:41 +1000 Matthew Waters * gst/gl/gstgldifferencematte.c: [569/906] differencematte: prevent double unref of shader and midtexture 2012-08-27 14:08:16 +0000 Matthew * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [568/906] window: fix public definitions 2012-08-27 14:07:31 +0000 Matthew * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglshadervariables.c: [567/906] fix OpenGL|ES2 ifdef'ed code 2012-08-20 13:27:50 +1000 Matthew Waters * gst/gl/effects/gstgleffectssources.c: [566/906] effects: avoid using tanh in sin_fragment It produces weird results on nouveau. Provide an alternative implementation with (1-sinh)*cosh 2012-08-20 13:06:27 +1000 Matthew Waters * gst/gl/effects/gstgleffectssources.c: [565/906] effects: fix shader compilation with mesa drivers 2012-08-15 21:37:01 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.h: [564/906] glmemory: remove unused typedef 2012-08-15 16:52:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [563/906] readd support for hanging GL pipelines e.g. ... ! gleffects ! fakesink 2012-08-15 15:35:46 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [562/906] gldisplay: fix download of YUV formats 2012-08-14 23:55:14 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [561/906] gldisplay: fix endianess issues on RGB download 2012-08-14 14:41:19 +1000 Matthew Waters * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/clutter/cluttershare.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [560/906] examples: update for bus api changes and glimagesink changes 2012-08-14 02:05:13 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [559/906] glmixer: pass the mixpad's display to the querying element 2012-08-12 19:03:48 +1000 Matthew Waters * gst/gl/Makefile.am: [558/906] add missing includes for _post_missing_element_message in glcolorspace 2012-08-10 16:41:12 +1000 Matthew Waters * gst/gl/gstopengl.c: [557/906] Fix plugin define and remove warning 2012-08-10 15:55:51 +1000 Matthew Waters * gst/gl/gstglcolorscale.c: * gst/gl/gstglcolorscale.h: [556/906] GLColorscale: convert to a bin of glupload ! gldownload 2012-08-10 15:31:20 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [555/906] Make the query for a GstGLDisplay a pad peer query Allows the query to pass through bin boundaries and makes it possible for arbitrary gl elements to be placed in bins. 2012-08-08 16:08:40 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * tests/check/libs/gstglmemory.c: [554/906] GstGLMemory: update for GstAllocator API changes 2012-07-16 23:31:31 +1000 Matthew Waters * gst/gl/gstglfiltershader.c: [553/906] GstGLFilterShader: update for GstGLMeta 2012-07-16 23:22:58 +1000 Matthew Waters * gst/gl/gstglfilterapp.c: [552/906] GstGLFilterApp: update for GstGLMeta 2012-07-16 22:40:15 +1000 Matthew Waters * gst/gl/gstgloverlay.c: [551/906] GstGLOverlay: fix loading of non-square overlays libjpeg complains about "Application read too {many,few} scan lines" in non-square images 2012-07-16 21:40:59 +1000 Matthew Waters * gst/gl/gstgloverlay.c: [550/906] GstGLOverlay: fix libPNG complaining about unsigned integer being out of range 2012-07-16 21:35:26 +1000 Matthew Waters * gst/gl/gstgloverlay.c: [549/906] GstGLOverlay: update for GstGLMeta 2012-07-16 15:06:50 +1000 Matthew Waters * gst/gl/gstgldifferencematte.c: [548/906] GstGLDifferenceMatte: update for GstGLMeta 2012-07-16 00:36:30 +1000 Matthew Waters * gst/gl/gstglbumper.c: [547/906] GstGLBumper: fix libPNG complaining about invalid png files We failed to inform libPNG that we had already read the header 2012-07-16 00:03:50 +1000 Matthew Waters * gst/gl/gstglfiltersobel.c: [546/906] GstGLFilterSobel: update for GstGLMeta 2012-07-13 01:07:37 +1000 Matthew Waters * gst/gl/gstglbumper.c: [545/906] GstGLBumper: update for GstGLMeta 2012-07-13 01:04:22 +1000 Matthew Waters * ext/libvisual/visual-gl.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [544/906] fix memory leaks from not g_free()ing string returned by gst_element_get_name 2012-07-12 18:22:01 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [543/906] GstGLDisplay: fix segfault from GST_PTR_FORMAT trying to expand the object 2012-07-12 18:19:44 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: [542/906] GstGLMixer: add allocation and bufferpool methods based off GstBaseTransform 2012-07-12 18:11:11 +1000 Matthew Waters * gst/gl/gstgltestsrc.c: [541/906] GstGLTestSrc: generate a GLBufferPool instead of a VideoBufferPool in decide_allocation 2012-07-12 18:09:57 +1000 Matthew Waters * gst/gl/gstglmosaic.c: * gst/gl/gstglmosaic.h: [540/906] GstGLMosaic: update for GstGLMeta 2012-07-12 18:07:34 +1000 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [539/906] GstGLImageSink: fold multiple fields into one and use VIDEO_SINK_* for window width/height replace the caps information with a GstVideoInfo place the window width/height information width VIDEO_SINK 2012-07-11 14:20:14 +1000 Matthew Waters * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldeinterlace.h: [538/906] GstGLDeinterlace: update for GstGLMeta 2012-07-11 13:55:55 +1000 Matthew Waters * gst/gl/gstglfilterreflectedscreen.c: [537/906] GstGLFilterReflectedScreen: update for GstGLMeta 2012-07-11 13:37:55 +1000 Matthew Waters * gst/gl/gstglfilterglass.c: [536/906] GstGLFilterGlass: update for GstGLMeta 2012-07-11 13:11:59 +1000 Matthew Waters * gst/gl/gstglfilterlaplacian.c: [535/906] GstGLFilterLaplacian: update for GstGLMeta 2012-07-11 01:25:03 +1000 Matthew Waters * gst/gl/gstglfiltercube.c: [534/906] GstGLFilterCube: Update for GstGLMeta 2012-07-11 01:10:43 +1000 Matthew Waters * gst/gl/gstglfilterblur.c: [533/906] GstGLFilterBlur: update for GstGLMeta 2012-07-09 22:27:48 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [532/906] GstGLFilter: implement allocation vfuncs 2012-07-09 22:26:12 +1000 Matthew Waters * gst/gl/gstgleffects.c: [531/906] GstGLEffects: update for GstGLMeta 2012-07-09 16:17:18 +1000 Matthew Waters * gst/gl/gstglupload.c: [530/906] GstGLUpload: fix video scaling and use GL_UPLOAD_CAPS 2012-07-09 16:15:28 +1000 Matthew Waters * gst/gl/gstgldownload.c: [529/906] GstGLDownload: fix video scaling and use GL_DOWNLOAD_CAPS 2012-07-09 16:13:39 +1000 Matthew Waters * gst-libs/gst/gl/gstglmeta.h: [528/906] GstGLMeta: seperate upload/download/normal GL caps video formats differentiate between upload, download and GL caps 2012-07-09 16:12:53 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [527/906] GstGLDisplay: add some trace debugging 2012-07-08 13:11:05 +1000 Matthew Waters * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: [526/906] GstGLTestSrc: update for 1.0 implement decide_allocation rename push_src_create to _fill use GstVideoInfo to convert times make use of GstGLMeta and friends 2012-07-08 01:50:41 +1000 Matthew Waters * gst/gl/gstgldownload.c: * gst/gl/gstgldownload.h: [525/906] GstGLDownload: add allocation methods and use GstGLMeta make GstGLDownload work with the new GstGLMeta and friends 2012-07-08 01:49:06 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [524/906] GstGLDisplay: rework the download code data paramaters now take GstVideoFrame remove redundant parameters 2012-07-08 01:11:56 +1000 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstglupload.c: [523/906] update for meta API changes 2012-07-08 01:10:40 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: [522/906] GstGLDisplay: add forgotten function definition 2012-07-08 01:09:56 +1000 Matthew Waters * gst-libs/gst/gl/gstglmemory.c: [521/906] GstGLMemory: update for GstAllocator changes 2012-07-07 22:56:33 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: [520/906] GstGLMixer: fix for GstChildProxy changes 2012-07-06 19:10:45 +1000 Matthew Waters * gst/gl/gstglupload.c: * gst/gl/gstglupload.h: [519/906] GstGLUpload: implement the allocation funcs and use GstGLMeta make use of the new GstGLMeta, GstGLMemory and GstGLBufferPool objects 2012-07-06 19:07:45 +1000 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [518/906] GstGLImageSink: add propose_allocation impl and use GstGLMeta make use of GstGLMeta and GstGLMemory 2012-07-06 19:05:03 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglbufferpool.c: * gst-libs/gst/gl/gstglbufferpool.h: [517/906] add GstGLBufferPool which adds GstGLMeta to buffers 2012-07-06 18:57:39 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglmeta.c: * gst-libs/gst/gl/gstglmeta.h: [516/906] add skeleton GstGLMeta the GstVideoMeta _map/unmap functions still need implementing 2012-07-06 18:51:02 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [515/906] GstGLDisplay: rework gen_texture and upload rename functions so that other code can create textures in the GL thread change upload functions to take a GstVideoFrame default to GLSL for upload conversion 2012-07-06 18:22:22 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglmemory.c: * gst-libs/gst/gl/gstglmemory.h: * tests/check/libs/gstglmemory.c: [514/906] add GstGLMemory and allocator implement custom GstMemory for GL textures currently map/unmap returns NULL although it might be favourable to upload/download/cache the image data 2012-06-19 18:40:28 +1000 Matthew Waters * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst/gl/gltestsrc.h: * gst/gl/gstglcolorscale.h: * gst/gl/gstgldownload.h: * gst/gl/gstglimagesink.h: * gst/gl/gstgltestsrc.h: * gst/gl/gstglupload.h: [513/906] Remove GstGLBuffer (to be replaced by GstGLMeta) 2012-06-19 15:54:24 +1000 Matthew Waters * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: [512/906] GstGLMixer: update for 1.0 based on the videomixer2 element in -good 2012-06-07 00:51:47 +1000 Matthew Waters * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/clutter/cluttershare.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: * tests/examples/gtk/gstgtk.c: * tests/examples/sdl/sdlshare.c: [511/906] tests: update for 1.0 2012-06-05 22:59:31 +1000 Matthew Waters * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [510/906] GstGLImageSink: update for 1.0 2012-06-05 19:10:19 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [509/906] GstGLDisplay: update for 1.0 2012-06-05 18:53:38 +1000 Matthew Waters * gst/gl/gstgldownload.c: [508/906] GstGLDownload: update for 1.0 2012-06-05 15:40:52 +1000 Matthew Waters * gst/gl/gltestsrc.c: * gst/gl/gltestsrc.h: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: [507/906] GstGLTestSrc: update for 1.0 2012-06-05 13:56:43 +1000 Matthew Waters * gst/gl/gstglupload.c: [506/906] GstGLUpload: update for 1.0 2012-06-04 18:44:56 +1000 Matthew Waters * gst/gl/gstglcolorscale.c: [505/906] GstGLColorscale: update for 1.0 2012-06-03 20:40:53 +1000 Matthew Waters * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [504/906] GstGLFilter: update for 1.0 -fix up function definitions -remove _prepare_output_buffer (functionality taken over by GstBufferPool). 2012-05-30 13:46:21 +1000 Matthew Waters * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglmosaic.c: * gst/gl/gstgloverlay.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [503/906] Rename GST_BOILERPLATE_* to G_DEFINE_TYPE_* and move _base_init into _class_init 2012-05-29 17:55:44 +1000 Matthew Waters * ext/libvisual/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: [502/906] Update versioning for gstreamer 1.0 Renames GST_MAJORMINOR to GST_API_VERSION in build files removes -lgstinterfaces from _LDADD flags 2012-05-20 18:45:06 +0300 Raimo Järvi * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [501/906] Fix building on 64 bit mingw-w64 https://bugzilla.gnome.org/show_bug.cgi?id=676428 2012-04-20 12:33:38 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [500/906] gldisplay: do not call glCheckFramebufferStatus if 0 is bound Indeed it may return GL_FRAMEBUFFER_UNDEFINED if there is no default framebuffer. It seems to be the case on MacOSX 2012-04-20 11:19:32 +0200 Julien Isorce * gst/gl/Makefile.am: [499/906] examples: fix build on MacOSX 2012-04-20 10:41:51 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [498/906] gldisplay: don't pass non-constant strings as printf format strings Fixes 'format not a string literal and no format arguments' on darwin 2012-04-20 10:32:23 +0200 Julien Isorce * gst-libs/gst/gl/gstglshadervariables.c: [497/906] filtershader: fix format compiler warnings 2012-04-20 10:26:30 +0200 Julien Isorce * gst/gl/CMakeLists.txt: [496/906] cmake build: add path to config.h on APPLE 2012-04-18 15:44:05 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [495/906] glES2.0: properly use glDeleteShader 2012-04-17 18:25:55 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst/gl/CMakeLists.txt: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstglupload.h: [494/906] cmake build: use config.h from win32/common and add some guidelines 2013-06-28 00:04:43 +0100 Tim-Philipp Müller * gst/gl/gstglfiltershader.c: [493/906] glfiltershader: fix crash when loading shader file Just use g_file_get_contents() instead of home-made file loading. Fixes two issues - one is that we should pass "r" to fopen and not O_RDONLY, the other is that an incorrect variable was used to read the file length, leading to an empty shader file. Spotted by: Wang Xin-yu (王昕宇) https://bugzilla.gnome.org/show_bug.cgi?id=702844 https://bugzilla.gnome.org/show_bug.cgi?id=702845 Conflicts: gst/gl/gstglfiltershader.c 2012-04-13 15:08:00 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [492/906] glwindow: properly fails if resource not found 2012-04-13 12:38:11 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/gstglimagesink.c: [491/906] glES2.0: properly fails if driver/kernel inconsistency 2012-04-11 10:44:23 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst/gl/gstgltestsrc.c: [490/906] gldisplay: error out instead of g_assert 2012-04-10 16:12:14 +0200 Julien Isorce * gst/gl/gstglimagesink.c: [489/906] glimagesink: pixel-aspect-ratio property now returns "1/1" by default Previously it was not set Fix bug #671734 (compatibility with Totem) 2012-04-04 16:22:40 +0200 Julien Isorce * ext/libvisual/visual-gl.c: * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstgleffects.c: [488/906] libvisual-gl: full compatibility with projectM-libvisual if libprojectM >= 2.0.1 Fix bug #310775 2012-03-06 14:31:05 +0100 Sebastian Dröge * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltershader.c: [487/906] gl: Fix compiler warnings 'if statement has empty body', which were real bugs and 'comparison of unsigned expression < 0 is always false', which was only an unneeded comparison. 2011-12-22 15:30:38 +0100 Julien Isorce * ext/libvisual/visual-gl.c: * gst-libs/gst/gl/gstgldisplay.c: [486/906] libvisual-gl: add minimal support to libvisual plugins that uses Framebuffer objects Fix bug #310775 gst-launch audiotestsrc ! libvisual_gl_projectM ! glimagesink is working but for now you cannot append any other opengl filters between libvisual_gl_projectM and glimagesink because our FBO is turned OFF. It would require that libvisual allows to split rendering between pass1,2,3... and final rendering. In order to unbind our FBO before the passN, and then rebind it just before the final libvisual rendering. 2011-12-15 18:13:00 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [485/906] gstgldisplay: turn off texture binding and read buffer when downloading rgb is done It fixes: (black image before) gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! ximagesink and gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! glimagesink 2011-12-15 18:08:48 +0100 Julien Isorce * ext/libvisual/visual-gl.c: [484/906] libvisual_gl: correctly setup depth and blend functions 2011-12-15 16:18:36 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst/gl/gstgldownload.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [483/906] glelements: do not leak parent when using gst_pad_get_parent 2011-11-25 16:51:59 +0100 Jonathan Matthew * ext/libvisual/CMakeLists.txt: * ext/libvisual/Makefile.am: * ext/libvisual/visual-gl.c: [482/906] ext: Add a libvisual plugin wrapping opengl libvisual Fix bug #202069 2011-11-24 16:02:32 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglmosaic.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [481/906] feature checking: error out instead of doing nothing if an OpenGL feature is not present Fix bug #572767 2011-11-21 16:46:51 +0100 Julien Isorce * gst-libs/gst/gl/gstglshadervariables.c: * gst/gl/gstglfiltershader.c: * gst/gl/gstgloverlay.c: [480/906] win32 builds: add glshader filter sources to vs9 and codeblocks Also fix some warnings from msvc9 and mingw-3.4.5 2011-11-21 15:04:16 +0100 Руслан Ижбулатов * gst-libs/gst/gl/gstglshadervariables.c: [479/906] gstglshadervariables: strtok_r is not multiplatform Fix bug #664367 2011-11-18 17:32:05 +0100 Wei Feng * gst-libs/gst/gl/gstgles2.h: [478/906] OpenGL ES 2.0: include glib.h to use G_BEGIN_DECLS in gstgles2.h Fix bug #631019 2011-11-18 17:27:45 +0100 Julien Isorce * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: [477/906] OpenGL ES 2.0: fix build since glfiltershader changes 2011-11-18 17:26:35 +0100 Antoni Silvestre * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: [476/906] OpenGL ES 2.0: fix build and disable some examples Fix bug #631019 2011-11-18 12:16:22 +0100 Julien Isorce * gst/gl/gstglmosaic.c: [475/906] docs: add glmosaic and glshader to docs 2011-11-18 11:52:10 +0100 Julien Isorce * gst/gl/Makefile.am: * gst/gl/gstopengl.c: [474/906] build: make libjpeg use conditional Disable gloverlay element if we do not hve libjpeg 2011-11-18 10:10:59 +0100 Julien Isorce * gst/gl/CMakeLists.txt: [473/906] cmake build: 2.8 is now required and add jpeg jpeg and png should be optional but our cmake build is still in pre-alpha 2011-11-18 08:08:18 +0100 Stefan Sauer * gst/gl/Makefile.am: * gst/gl/gstopengl.c: [472/906] linpng: make libpng use conditional Disable 3 elements if we don't have libpng. 2011-11-17 17:36:44 +0100 Luc Deschenaux * gst-libs/gst/gl/CMakeLists.txt: * gst-libs/gst/gl/GNUmakefile.gnustep: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglshadervariables.c: * gst-libs/gst/gl/gstglshadervariables.h: * gst/gl/CMakeLists.txt: * gst/gl/GNUmakefile.gnustep: * gst/gl/Makefile.am: * gst/gl/gstglfiltershader.c: * gst/gl/gstglfiltershader.h: * gst/gl/gstopengl.c: [471/906] glshader: add dynamic fragment shader filter Also add fragment shader parser Fix bug #600195 2011-11-17 15:22:06 +0100 Anthony Violo * gst/gl/Makefile.am: * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: [470/906] gloverlay: add jpeg support Fix bug #636070 2011-11-17 11:39:50 +0100 Anthony Violo * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: [469/906] gloverlay: manage ratio texture Fix bug #630525 2011-11-17 11:34:20 +0100 Julien Isorce * tests/examples/clutter/clutteractor.c: [468/906] tests: fix commentary in clutteractor example 2011-11-16 16:53:25 +0100 Julien Isorce * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow_x11.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/clutter/cluttershare.c: [467/906] tests: various build fixes - cmake could not find glib - put gtk variables at the beginning to avoid GL conflicts - update examples to clutter-1.8 - use const instead of deprecated G_CONST_RETURN - set max pending events to 0 to make cube example works again 2011-08-03 09:08:01 +0200 Sebastian Dröge * tests/examples/clutter/clutteractortee.c: [466/906] tests: Fix variable unused but set compiler warning 2011-08-03 09:07:49 +0200 Sebastian Dröge * gst/gl/gstglbumper.c: * gst/gl/gstgldownload.c: [465/906] gl: Fix variable unused but set compiler warnings 2011-05-25 11:21:19 +0300 Sreerenj Balachandran * gst/gl/gstglimagesink.c: [464/906] glimagesink: Interface query should return FALSE if the supplied interface is not GST_TYPE_X_OVERLAY 2010-12-14 23:56:55 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: [463/906] Add some more G_{BEGIN,END}_DECLS to public headers https://bugzilla.gnome.org/show_bug.cgi?id=637260 2010-10-19 18:00:33 +0300 Stefan Kost * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: * gst/gl/gstglbumper.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgloverlay.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [462/906] various: add missing G_PARAM_STATIC_STRINGS flags Canonicalize property names as needed. Includes some gst-indent changes as well :/ 2010-09-16 15:00:29 +0300 Stefan Kost * gst/gl/gstglimagesink.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/gtk/gstgtk.c: [461/906] xoverlay: require base from git and update to new API 2010-09-08 20:38:07 +0200 Edward Hervey * gst/gl/gstgleffects.c: [460/906] gstgleffects: Fix upper bound of an array iteration 10 is above NEEDED_TEXTURES (currently 5) and makes the code consistent with the rest of the usage in the file. 2010-08-11 00:47:42 +1000 Jan Schmidt * gst-libs/gst/gl/Makefile.am: [459/906] Fix distcheck. 2010-07-23 22:12:15 +0200 Julien Isorce * gst/gl/gstglfilterreflectedscreen.c: [458/906] glfilterreflectedscreen: fix some warnings from msvc9 2010-07-12 18:38:59 +0200 Julien Isorce * tests/examples/gtk/fxtest/pixbufdrop.c: [457/906] gtk examples: adapt code since the native-window changes from gtk Fixes bug #599885 2010-05-05 11:21:31 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [456/906] glfilter/glmixer/gltestsrc/glupload: throw an element error if no parent bin Fixes bug #602153 2010-05-04 11:37:38 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [455/906] glimagesink: handle pixel-aspect-ratio 2010-05-01 11:19:55 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [454/906] blur: fix gaussian kernel computation 2010-04-29 20:49:02 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldifferencematte.h: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterblur.h: [453/906] blur: give up some accuracy for speed Settle with 7x7 gaussian convolution kernels, maybe slightly less accurate than previous 9x9 but fast enough to be able to use it on i915. About a 20% percent speed gain (again, roughly measured with videotestsrc and glimagesink sync=false). No noticeable rendering difference with current effects. 2010-04-28 17:08:45 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [452/906] sin: get rid of hls conversion code Get rid of buggy and complicated hls conversion code for the sin effect. The only thing needed was hue anyway and it is easily calculated using Preucil formula for rgb to polar coordinates conversion. Now works on i915 (removed all the IF blocks). Still needs some tuning, I wonder if it will ever work properly. 2010-04-30 11:44:26 +0200 Roland Peffer * gst/gl/gstglupload.c: [451/906] glupload: par is already handled in fixate_caps function Fixes bug #593165 2010-04-30 11:42:41 +0200 Julien Isorce * gst/gl/gstglupload.c: [450/906] indent: gstglupload.c 2010-04-29 14:21:28 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: [449/906] sobel: drop unused single pass sobel shader Drop unused sobel shader, if anyone still needs it, git log is your friend. 2010-04-29 14:20:56 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectxray.c: [448/906] xray: increase edges visibility Some little fine tuning, still not completely satisfied yet. 2010-04-29 12:59:42 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstgleffects.h: [447/906] xray: port to the new separable sobel convolution Port xray effect to use the same sobel convolution just used in glfiltersobel. Now xray too works on i915 (a bit slow). 2010-04-29 10:57:38 +0200 Filippo Argiolas * gst/gl/gstglfilterblur.c: [446/906] blur: forgot to add all the changes in previous commit 2010-04-29 09:15:21 +0200 Filippo Argiolas * gst/gl/gstglfilterblur.c: [445/906] blur: use draw_texture from glfilter 2010-04-29 09:02:12 +0200 Filippo Argiolas * gst/gl/gstglfilterlaplacian.c: [444/906] laplacian: precalculate coordinates Precalculate coordinates to avoid unneeded texture indirections. Now laplacian works on i915. 2010-04-29 08:27:29 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglfiltersobel.c: [443/906] sobel: move some highly duplicated code into glfilter Add a new convenience function in GstGLFilter that just draws an input texture to a target texture using a simple shader with just a "tex" uniform sampler. Move draw_texture from glfiltersobel to glfilter. Still need to update other plugins to this. 2010-04-27 21:56:04 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [442/906] blur: optimize coordinates calculations Save 28 instructions on i915 (mainly redundant MOVs) and gain a 25% (roughly measured with videotestsrc and glimagesink sync=false) speed bump 2010-04-27 19:38:33 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglfiltersobel.h: [441/906] sobel: convolve only luma Rework Sobel a little bit again making it work as the old one: 1. desaturate input texture 2. calculate horizontal convolution for x gradient and vertical convolution for y gradient at the same time (halves the number of needed texture lookups) 3. store results in a single texture (red and green channel) 4. calculate remaining convolution (same as above switching vertical and horizontal) 5. calculate length of gradient using red and green as x and y components. Optimize wherever possible, store kernels as constants in the shaders, remove unneeded uniforms. Restore invert property carefully avoiding using IF. Still not sure if "full color" convolution will be needed, glfiltersobel is to be intended as a demo filter and xray, the only effect which uses sobel only needs edge intensity. Dropping it for now. 2010-04-27 09:08:22 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglfiltersobel.h: [440/906] sobel: implement sobel filter using separable kernels Reimplement sobel in a multipass fully separated convolution: - calculate x gradient map convolving first horizontally with blurring kernel and then vertically with differentiating kernel - calculate y gradient map convolving first vertically with blurring kernel and then horizonally with differentiating kernel - calculate length of the gradient vector Particular care was needed with normalization of the blurring kernel and with grey level offset of the differentiating one to prevent overflow of rgb values from the [0.0,1.0] range in intermediate passes. Now works on i915. 2010-04-26 13:20:38 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [439/906] sobel: get rid of #version 120 dependent array constructors 2010-04-27 11:07:04 +0200 Pierre Pouzol * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfilterreflectedscreen.h: [438/906] glfilterreflectedscreen: improve behavior and add some properties Fixes bug #612163 2010-04-26 23:48:15 +0200 Julien Isorce * gst/gl/gstglfilterreflectedscreen.c: [437/906] glfilterreflectedscreen: remove unused code (copied/pasted from glfilterglass) 2010-04-26 23:42:38 +0200 Julien Isorce * gst/gl/effects/gstgleffectssources.c: * gst/gl/gstglfilterreflectedscreen.c: [436/906] gleffectssources: fix some warnings from msvc9 2010-04-26 23:38:59 +0200 Julien Isorce * gst/gl/GNUmakefile.gnustep: [435/906] GNUStep build: add glfilterreflectedscreen sources 2010-04-26 14:41:17 +0200 Pierre Pouzol * gst/gl/gstglfilterreflectedscreen.c: * gst/gl/gstglfilterreflectedscreen.h: [434/906] glfilterreflectedscreen: forgot to add sources 2010-04-26 14:32:28 +0200 Pierre Pouzol * gst/gl/CMakeLists.txt: * gst/gl/Makefile.am: * gst/gl/gstopengl.c: [433/906] glfilterreflectedscreen: add new OpenGL Reflected Screen filter Fixes bug #612163 2010-04-26 14:11:28 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [432/906] GstGLDisplay: this is GL_DEPTH24_STENCIL8_EXT, not GL_DEPTH24_STENCIL8_EXT 2010-04-26 13:57:00 +0200 Pierre Pouzol * gst-libs/gst/gl/gstgldisplay.c: [431/906] GstGLDisplay: enable stencil buffer when using framebuffer objects. Fixes Bug #612159 2010-04-26 12:45:57 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [430/906] convolution: save some indirection grouping math and sampling Thanks to Eric Anholt I've finally understood (at least I hope) how to count texture indirections and save up some. Texture sampling dependent on the result of some math counts as an indirection phase. Grouped texture lookups with no math involved count as a single indirection. Math on the coordinates count as indirection. So the best thing is to group all the math involving coordinates and then do all the lookups. This saves enough indirections to make glfilterblur and glow effect work, albeit a bit slowly, on i915. 2010-04-25 10:55:43 +0200 Filippo Argiolas * gst/gl/gstglfilterlaplacian.c: [429/906] laplacian: remove unused norm_const and norm_offset uniforms Remove unused uniforms from the laplacian filter. Also remove if kernel[i] != 0 checks so that it compiles where IF is not available. Again, big thanks to Eric Anholt for the hints. 2010-04-13 16:20:02 -0700 Eric Anholt * gst/gl/gstglfilterlaplacian.c: [428/906] laplacian: Avoid using GLSL 1.20 features in a non-#versioned shader. Fixes compile on Mesa. 2010-04-25 10:31:01 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [427/906] rgb_to_curve: save up a texture indirection Apparently assigning gl_TexCoord to a temp count as an indirection. Using it directly avoids it and limits indirections to four not exceeding i915 limit. Now xpro effect works on i915. 2010-04-25 10:04:28 +0200 Vinson Lee * gst/gl/effects/gstgleffectssources.c: [426/906] multiply: fix a compilation error with Apple compiler Fix multiply_fragment_source to compile with Apple GLSL compiler. https://bugzilla.gnome.org/show_bug.cgi?id=616748 2010-04-24 21:11:35 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [425/906] twirl: get rid of polar coordinates conversion Get rid of polar coordinates in the twirl effect. The same can be done using a rotation matrix, saving alu instructions and, most of all, avoiding the use of the evil atan() function (which uses IF operators). Calculate rotation angle in a saner, understandable way. Works on i915! (Hope it still works elsewhere too as I'm not able to test at the moment) 2010-04-24 20:43:39 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [424/906] tunnel: get rid of polar coordinates conversion Get rid of polar coordinates in the tunnel effect as the same can easily be done just clamping the radius and multiplying. Remove the evil atan() call that uses branching and a lot of unneeded alu instructions. Now works on i915! 2010-04-23 20:06:48 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldifferencematte.h: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterblur.h: [423/906] convolution: generate gaussian kernel on the fly Generate a normalized gaussian kernel with given size and standard deviation on the fly. Remove "norm_const" uniform from convolution shaders and provide a normalized kernel instead. Remove norm_offset uniform as it was always zero, will reintroduce it if really needed in the future. Thanks to Eric Anholt for suggesting it. Save some ALU instruction calculating directly the coordinate for texture lookup instead of summing an offset. Still exceed maximum indirect texture lookups on i915, the only solution I see is using a 3x3 kernel. 2010-04-23 17:49:45 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [422/906] convolution: reduce the number of register used Reduce the number of register calculating texture lookup offset on the fly. It was just a simple sequence, no need to store it in a array. Fixes maximum number of registers exceeded error with i915. Still exceed maximum indirect texture lookups and maximum ALU instructions. Maybe we should gave up some blur goodness and use lightly more little kernels. 2010-04-23 17:37:21 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [421/906] convolution: don't check kernel[i] to be non zero Apparently saving up some texture lookup for zero kernel elements is definitely not worth the use of branching. This way convolution fragment programs also work where IF operator is not supported (tested on i915 and nouveau). See also discussion on bug #615696. Thanks to Eric Anholt for spotting this. 2010-04-23 17:30:45 +0200 Filippo Argiolas * gst/gl/gstglfilterblur.c: [420/906] blur: use common shader sources Port blur filter to use the common convolution shaders in gstgleffectssources.c. This reduces code duplication and, incidentally, the shaders in the common file were already updated to not use array constructor and to not depend on #version 120. First step towards bug #615696 fixing. 2010-04-23 17:19:50 +0200 Filippo Argiolas * gst/gl/gstglfilterblur.c: [419/906] blur: remove horizontal flip Apparently there was some stale horizontal flip function still there from my summer of code experiments. Remove it. 2010-04-23 17:14:59 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [418/906] effects: disable gst-indent in the sources Fix some crazy formatting caused by gst-indent previous runs and disable the script for this file. The best would be to move shaders into separate files and load them at runtime or hardcode them at compile time. 2010-03-31 12:40:12 +0200 Руслан Ижбулатов * gst/gl/gstglbumper.c: [417/906] glbumper: Use png_sig_cmp() instead of png_check_sig() Fixes bug #613186 2010-03-24 11:10:21 +0000 Tim-Philipp Müller * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglmosaic.c: * gst/gl/gstgloverlay.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [416/906] gl: use gst_element_class_set_details_simple() Fixes #613371. 2010-03-09 01:35:42 +0100 Nicholas Panayis * gst-libs/gst/gl/gstglwindow_win32.c: [415/906] gstglwindow_win32: share opengl context in correct order Allow to use the opengl context sharing feature if the original context has been used already. This is only possible on win32 with wglShareLists because on other backends, the sharing is made when a context is created. This new feature is only usefull when using external context because gst-gl internally makes sure that the orginal context is not already used when sharing it. Fix bug #611067 2010-03-09 01:24:06 +0100 David Hoyt * gst/gl/gstglbumper.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgloverlay.c: [414/906] glbumper/gldifferencematte/gloverlay: libpng 1.4.x compatible Fix bug #608643 2010-01-12 18:32:39 +0300 Руслан Ижбулатов * tests/examples/gtk/fxtest/pixbufdrop.c: [413/906] Fix Windows compiler warning in test/examples/gtk/fxtest/pixbufdrop.c 2010-01-06 00:13:46 +0100 Julien Isorce * gst-libs/gst/gl/GNUmakefile.gnustep: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst/gl/GNUmakefile.gnustep: * gst/gl/effects/GNUmakefile.gnustep: [412/906] Cocoa backend: improve support on GNUStep 2009-12-18 00:34:13 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: [411/906] gstglmixer: copy/past recent changes from gstvideomixer 2009-12-16 01:33:39 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: [410/906] gstglmixer: inactivate shared gl context before to release ours First, inactivate shared gl contexts known by each sink pad. Then, destroy the gl context known by the glmixer. Finally, re-activate shared gl contexts. This is to satisfy the fact that no shared gl context must be current when an opengl context is destroyed. Moreover the application may hang or crash without those steps. 2009-11-25 10:24:37 +0100 Julien Isorce * gst/gl/gstgleffects.c: [409/906] gleffects: indent and fix some warnings in ES 2.0 mode 2009-11-21 21:40:14 +0100 Julien Isorce * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * gst/gl/gstopengl.c: [408/906] gleffects: start to make it compatible with OpenGL ES 2.0 For now only identity, mirror and squeeze effects are available. Maybe some factorization is needed about compilation shader before to put the other effects since only a copy/past is needed, at least until effect number 9: heat. The effects from 10:sepia to 15:glow require more work. 2009-11-21 13:32:59 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_winCE.c: [407/906] winCE backend: fix build 2009-11-21 13:21:54 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterapp.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [406/906] glimagesink: add a client-data property Also add it to glfilterapp. Fixes #559131 2009-11-17 23:47:24 +0100 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * tests/examples/clutter/cluttershare.c: * tests/examples/sdl/sdlshare.c: [405/906] glfilter: add external-opengl-context property It repairs the cluttershare and sdlshare example 2009-11-17 22:54:39 +0100 Julien Isorce * gst/gl/gstglupload.c: [404/906] glupload: repair external_opengl_context property qglwtextureshare now works again. In this example, the pipeline is src ! glupload ! fakesink. So in this case the glupload element is a sink in terms of gl chain. But the problem is still there if the pipeline is src ! glupload ! glfilter ! fakesink (it's the case in sdlshare and cluttershare examples) because since recent changes about how the gstgldisplay is transmitted to the gl element, the context is usually created by the sink in terms of gl chain. A solution would be to also install this property on glfilter. 2009-11-17 02:16:01 +0000 Jan Schmidt * gst-libs/gst/gl/gstglmixer.c: [403/906] gstglmixer: Initialise the debug category Initialise the gstglmixer debug category before using it. 2009-11-17 01:08:09 +0100 Julien Isorce * gst/gl/gstgloverlay.c: [402/906] gloverlay: fix some warnings 2009-11-16 14:32:16 +0100 Anthony Violo * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: [401/906] gloverlay: Added rotate texture fix #601277 2009-11-05 14:53:35 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [400/906] gstgldisplay: no need the I420 work around if ATI Mobility fix #588653 2009-11-04 23:44:46 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: [399/906] glmixer: fix when no more gl elements after it For example: videotestsrc ! glupload ! ... ! glfiter ! ... ! glmosaic ! fakesink Usefull when using glmixer inside cluttershare or sdlshare cases. 2009-11-04 23:12:42 +0100 Julien Isorce * gst/gl/gstgldownload.c: [398/906] gldownload: do not forgot to create the gl context fix #600630 2009-11-04 23:11:54 +0100 Julien Isorce * gst/gl/gstglmosaic.c: [397/906] glmosaic: fix a comparison warning 2009-11-04 23:10:16 +0100 Julien Isorce * gst/gl/gstgldifferencematte.c: [396/906] gldifferencematte: fix some warnings from vc9 2009-10-28 10:41:53 +0100 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldifferencematte.h: [395/906] differencematte: fix regressions from gdkpixbuf to libpng migration The background image needs to be scaled to fit current texture size. Previously this was done by gdk_pixbuf_scale_simple but that's been removed. Create a texture from the background pixbuf with correct dimensions and use interpolation shader to scale it to the right size. Interpolation fragment shader doesn't have too much sense if all the textures don't have the same size so this seemed the most natural place to do the scaling. It could probably be done with some custom texture mapping outside the shader but it involved more code. Fixes bug #599883. 2009-10-27 17:02:23 +0100 Pratheesh Gangadhar * gst-libs/gst/gl/gstgldisplay.c: [394/906] gstgldisplay: use of GL_DEPTH_COMPONENT16 if OpenGL ES 2.0 glRenderbufferStorage does not accept GL_DEPTH_COMPONENT in OpenGL ES 2.0. Fix bug #593786 2009-10-27 15:27:14 +0100 Julien Isorce * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst/gl/gstglmosaic.c: * gst/gl/gstglmosaic.h: [393/906] glmosaic: for now it's a cube mosaic Also use GPtrArray instead of GArray in glmixer. And add a pipeline to tests/pieplines 2009-10-27 11:14:38 +0100 Julien Isorce * gst/gl/gstglmosaic.c: [392/906] glmosaic: desactivate shader when done 2009-10-26 11:44:35 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [391/906] Cocoa: fix backend since recent changes Before, the window size was given at its creation. Now, it's done at the drawing step because it's only relevant when there is a glimagesink element in the pipeline. 2009-10-23 20:53:32 +0200 Julien Isorce * gst/gl/gstgloverlay.c: [390/906] remove warnings from vs9 2009-10-23 20:52:32 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: [389/906] fix codeblocks build on win32 2009-10-23 10:52:39 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst/gl/CMakeLists.txt: * gst/gl/Makefile.am: * gst/gl/gstglbumper.c: [388/906] just fix builds and indent 2009-10-23 01:11:27 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglmixer.c: * gst-libs/gst/gl/gstglmixer.h: * gst-libs/gst/gl/gstglmixerpad.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglmosaic.c: * gst/gl/gstglmosaic.h: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [387/906] glmixer: add a glmixer base element glmixer can be seen as a glfilter except it handles N requested sink pads. Each sink pad and the src pad are video/x-raw-gl. glmixer is responsible for managing different framerates from inputs. It uses OpenGL context sharing. It means that each input is in its own OpenGL context shared together and shared with the OpenGL context of the ouput gl chain. Also add a glmosaic which is an example of implementation of glmixer. For now glmosaic is a cube but it will be fixed in the next commits. For now the glmixer has some weird behaviours in some configurations but it will be improved in the next commits. The autotools builds is temporarly broken since those changes have been made on win32. 2009-10-23 01:07:29 +0200 Julien Isorce * tests/examples/gtk/fxtest/pixbufdrop.c: [386/906] pixbufdrop: fix example on win32 2009-10-04 02:23:45 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglbumper.c: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [385/906] rewrite the way a gstgldisplay is transmited to the gl elements Before, a gstgldisplay was instancied by the gl src in terms of gl chain. And then the next element got it through the first gstglbuffer. Now, this is done though queries. All glelements get their ref on a gstgldisplay in READY state. This rewrite is mainly a first step to be able to share OpenGL context hold by the gstgldisplay using more complex glelements. For example, with a glvideomixer. The associated gstgldisplay of each gl chain of the sink pads will share their OpenGL context. 2009-10-16 18:08:11 +0300 Stefan Kost * gst-libs/gst/gl/gstgldisplay.c: [384/906] build: use / "stdio.h" 2009-10-16 17:29:08 +0300 Stefan Kost * gst-libs/gst/gl/gstgldisplay.c: [383/906] build: include when using printf & co. 2009-10-15 15:40:11 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgles2.h: * gst/gl/gstglfiltercube.c: [382/906] ES2.0: remove warnings Partially fix #593786 2009-10-15 14:59:08 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [381/906] EGL and GLX:: set a minimum depth size 2009-09-21 15:00:02 +0200 Anthony Violo * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: [380/906] gloverlay: can put video over png images Fix bug #595303 2009-09-21 10:51:47 +0200 Anthony Violo * gst/gl/gstgloverlay.c: [379/906] gloverlay: add support to use RGB png images Previously restricted to RGBA, now gloverlay can also handle a RGB image. 2009-09-19 14:31:28 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [378/906] gldisplay: avoid to request gl thread when deleting a texture A texture is not destroyed when when we are done with it. This texture is just added to the texture pool in order to be re-used. In this case no OpenGL code is executed so we do not need to request gl thread. 2009-09-19 14:16:25 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [377/906] gldisplay: avoid to request gl thread when generating a texture Thanks to the texture pool the gl textures are re-used. When re-using one, no opengl code is executed so do not need to request gl thread. 2009-09-01 15:21:39 +0300 Stefan Kost * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: [376/906] build: support openGLES on linux via autofoo. Partialy fixes #593786 Add a pkg-config check for opengl and if not found assume opengl-es. If user has none of both one still get build error later on (there is no pkg-config for opengl-es). Add more files to EXTRA dist and build the opengles variant if selected. Simmilar changes could be done for the winCE backend. 2009-09-02 10:06:36 +0200 Anthony Violo * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: [375/906] gloverlay: can control image size and position Fix bug #591591 2009-09-01 19:46:10 +0200 Julien Isorce * tests/examples/sdl/sdlshare.c: [374/906] sdlshare example: fix build on win32 2009-08-31 17:26:34 +0200 Julien Isorce * tests/examples/sdl/sdlshare.c: [373/906] sdlshare example: review includes order and fix closure 2009-08-31 17:18:01 +0200 Miquel Àngel Farré * tests/examples/sdl/sdlshare.c: [372/906] make sdlshare example work on linux. Fix bug #593486 2009-08-26 23:43:37 +0200 Julien Isorce * tests/examples/sdl/sdlshare.c: [371/906] tests: add sdlshare example It shows how to use gl textures that come from gst gl elements inside a SDL OpenGL scene 2009-08-17 15:48:09 +0100 Christian Schaller * gst/gl/Makefile.am: [370/906] Add missing header file to Makefile.am and update spec file to actually be for this package 2009-08-03 17:52:31 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [369/906] define missing glew macro on older versions 2009-08-03 10:13:02 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [368/906] Cocoa backend: fix crash when resizing Default implementation of NSOpenglView::update is not safe because it just calls update on the opengl context whereas we are not in the gl thread. Also fix the white flickering when resizing, because now we need to call the draw callback manually when resizing. 2009-07-31 18:17:55 +0300 Stefan Kost * gst/gl/gstglimagesink.c: [367/906] docs: fix GstXvImageSInk -> GstGLImageSink and reindent 2009-07-30 00:36:30 +0100 Tim-Philipp Müller * gst/gl/Makefile.am: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldifferencematte.h: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterblur.h: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglfiltersobel.h: * gst/gl/gstgloverlay.c: * gst/gl/gstgloverlay.h: [366/906] docs: make remaining elements show up in docs Split out declarations into header files and hook everything up so that five more elements show up in the plugin docs. Fixes #559135. 2009-07-27 09:58:20 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [365/906] Cocoa backend: make sure that nsapp is initialized gst-launch-0.10 videotestsrc ! tee name=t ! queue ! glimagesink t. ! queue ! glimagesink now works properly on MacOSX 2009-07-24 10:33:47 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: * gst/gl/CMakeLists.txt: [364/906] make the cmake build work on MacOSX We can now generate a Xcode project (or Unix Makfiles), see INSTALL file 2009-07-24 10:12:07 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [363/906] Cocoa backend: fix crash when closing - All gstglwindow members are now modified only in the gl thread to avoid thread concurrency - OpenGL context is now properly clean - fix a couple of things in implementation of xoverlay interface 2009-07-17 16:47:41 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [362/906] make cocoa backend work on MacOSX It works with both gst-launch and a cocoa app (non-embedded and embedded) But there is still some problems: - sometimes crash when closing - flickering when resizing - embedded mode not perfect I will first make the CMake build work with cocoa backend in order to generate a XCode project. Then it should be easier to fix those issues. 2009-07-14 20:36:13 +0200 Filippo Argiolas * tests/examples/gtk/gstgtk.c: [361/906] gstgtk: add missing license and copyright information 2009-07-14 20:25:28 +0200 Filippo Argiolas * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [360/906] examples: add missing copyright/license to my examples 2009-07-13 16:32:00 +0200 Sebastian Dröge * gst/gl/Makefile.am: [359/906] gl: Link with -lm and fix indention 2009-07-13 12:53:17 +0100 Jan Schmidt * gst-libs/gst/gl/gstgldisplay.c: [358/906] gstgldisplay: Close a small race starting the display thread Take the display lock before signalling the create-context cond to ensure the caller has dropped the lock and is therefore listening for the signal. 2009-07-13 12:52:31 +0100 Jan Schmidt * gst-libs/gst/gl/gstglwindow_x11.c: [357/906] x11: Don't crash when the X11 display is not available. Error out cleanly instead of crashing when the X11 display can't be contacted. 2009-07-13 12:08:11 +0100 Jan Schmidt * gst/gl/Makefile.am: [356/906] build: Fix typo: gstglbumber.h -> gstglbumper.h 2009-06-25 21:32:38 +0200 Julien Isorce * gst/gl/gstgldeinterlace.c: [355/906] same motion compensation 2009-06-25 01:30:44 +0200 Julien Isorce * gst/gl/CMakeLists.txt: * gst/gl/Makefile.am: * gst/gl/gstgldeinterlace.c: * gst/gl/gstopengl.c: [354/906] fix and add gldeinterlace filter to the builds 2009-06-24 17:58:35 +0200 julien * gst/gl/gstgldeinterlace.c: * gst/gl/gstgldeinterlace.h: [353/906] add a gldeinterlace filter Greedyh operation implemented using OpenGL Shading Language. We could add other operations later. Does some good results but still not as expected. That's why I do not add it yet to the build. 2009-06-12 11:33:02 +0100 Jan Schmidt * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglbumper.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: [352/906] fix typo Change GST_GL_DISPLAY_PROJECTION_PERSPECIVE to GST_GL_DISPLAY_PROJECTION_PERSPECTIVE. Re-indent a couple of files that needed it. 2009-06-09 20:35:26 +0200 Julien Isorce * gst/gl/gstglimagesink.c: [351/906] allow to switch xoverlay while being in paused state 2009-06-07 20:19:03 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [350/906] fix window position when using xoverlay x, y are the coordinates of the position inside the new parent window. Fixes #584877 2009-06-06 14:34:57 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [349/906] can switch xoverlays while playing Fixes bug #584877 Before this commit calling "gst_x_overlay_set_xwindow_id" more than one time, had no effect. It mainly affects the glimagesink implementation. But on win32 (and CE), some stuff has to be done to release the old parent. And add a switchxoverlay example where the user can click on left/right part of the main window to switch the xoverlay. 2009-06-04 09:50:52 +0200 LRN * gst/gl/Makefile.am: [348/906] Add gstvideo to glimagesink LIBADD. Fixes bug #584680 2009-06-04 00:27:44 +0200 LRN * gst-libs/gst/gl/gstglwindow_win32.c: [347/906] fix miscast of a pointer in SetWindowLongPtr GCC 4.4.0 complains error: cast from pointer to integer of different size Fixes #584678. 2009-05-12 11:41:19 +0200 Sebastian Dröge * gst-libs/gst/gl/Makefile.am: [346/906] Fix linking by providing libtool the correct --tag parameter 2009-05-11 18:06:18 +0200 julien * tests/examples/clutter/cluttershare.c: [345/906] change rotation center in cluttershare example 2009-05-09 21:30:30 +0200 Julien Isorce * tests/examples/clutter/cluttershare.c: [344/906] Use a more complex gst gl pipeline in the cluttershare example 2009-05-09 21:26:42 +0200 Julien Isorce * tests/examples/clutter/cluttershare.c: [343/906] Add a signal watch bus callback to check gst messages 2009-05-09 20:51:36 +0200 Julien Isorce * tests/examples/clutter/cluttershare.c: [342/906] Fix texture actor update due to a too strong thread locking. On linux, the GSource func attached to the clutter_threads_add_idle was not getting the cpu ressource periodically. Because the use of clutter_threads_enter/leave inside the fakesink callback seems to be too strong. So remove the use if clutter_threads_enter/leave in the fakesink callback. Then replace GQueue by GAsyncQueue to keep thread safe access to the communication queues between clutter and gst-gl. Call clutter_threads_add_idle with high priority. 2009-05-09 15:44:09 +0200 Julien Isorce * tests/examples/clutter/cluttershare.c: [341/906] Properly clean up pending gst gl buffers in cluttershare example 2009-05-08 21:43:56 +0200 Julien Isorce * tests/examples/clutter/cluttershare.c: [340/906] Fix cluttershare example. It requires at least clutter 0.8.6 since lower clutter versions are not compatible with GL_TEXTURE_RECTANGLE_ARB. Remove use of ClutterEffectTemplace since it does not exist in clutter 0.9. 2009-05-04 11:24:30 +0200 Sebastian Dröge * tests/examples/clutter/cluttershare.c: [339/906] Cast to a GstBuffer* before passing to gst_buffer_unref to fix compiler warning 2009-05-02 14:27:23 +0200 Julien Isorce * tests/examples/clutter/cluttershare.c: [338/906] Use GQueue in the cluttershare example 2009-04-30 23:40:38 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * tests/examples/clutter/cluttershare.c: [337/906] Improve cluttershare example Use clutter_threads_API. When just using glupload from rgb, we have to be sure that the upload texture is not in use in our gst gl context. 2009-04-20 18:17:54 -0400 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [336/906] [x11/x11ES] fix some pointer cast warnings 2009-04-20 23:55:51 +0200 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [335/906] [cocoa] update since interface changed 2009-04-20 23:48:15 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst/gl/gstglupload.c: * gst/gl/gstglupload.h: * tests/examples/clutter/cluttershare.c: [334/906] [win32/winCE] fix some pointer cast warnings with mingw And turn off deprecated Wp64 msvc compiler option. 2009-04-20 00:52:41 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: [333/906] add force-aspect-ratio support 2009-04-18 16:08:23 +0200 Julien Isorce * tests/examples/clutter/cluttershare.c: [332/906] just gst-indent and C90 on cluttershare example 2009-04-18 08:40:51 -0400 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst/gl/gstglupload.c: [331/906] indent and fix some compiler warnings 2009-04-18 13:57:44 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: * gst/gl/gstglupload.h: * tests/examples/clutter/cluttershare.c: [330/906] Can now share textures with an external gl context The external opengl context must be specify when creating our OpenGL context (glx) or just after (wgl). When calling glXCreateContext or wglShareLists, the external opengl context must not be current. Then our gl context can be current in the gl thread while the external gl context is current in an other thread. See tests/examples/clutter/cluttershare.c 2009-04-12 22:24:06 -0700 David Schleef * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: [329/906] Build for Cocoa on darwin, with various fixes 2009-04-12 20:03:30 -0700 David Schleef * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: * tests/examples/gtk/gstgtk.c: [328/906] Convert gtk examples to use helper library Helper lib implements gst-gtk glue on all platforms 2009-04-10 20:42:59 +0200 Julien * gst-libs/gst/gl/gstgldisplay.c: [327/906] fix init FBO's texture attachment on ES 2.0 2009-04-10 20:30:46 +0200 Julien * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst-libs/gst/gl/gstglwindow_x11ES2.c: [326/906] add X backend for OpenGL ES 2.0 2009-03-29 15:40:16 +0000 Filippo Argiolas * tests/examples/clutter/clutteractortee.c: [325/906] Restore glimagesink instead of ximagesink Partially revert previous commit. It's not an issue with glimagesink Xoverlay interface. It's always the same intel bug with direct rendering redirection (the one that affects each opengl application with compositing managers). It works fine with DRI2 and UXA acceleration. Still leaving effects disabled because I'm testing intel hardware that doesn't support FBOs. 2009-03-29 09:01:55 +0000 Filippo Argiolas * tests/examples/clutter/clutteractortee.c: [324/906] Temporary disable glimagesink in clutteractortee GLimagesink XOverlay interface doesn't seem to work with composite redirection on intel (and I believe ati too). Windows aren't redirected offscreen at all. This commit just shows that the example correcty works with ximagesink. The most evident difference I see is that glimagesink reparents the xoverlay window into its own while both x and xvimagesink destroy their window and render directly to the xoverlay one. 2009-03-29 08:51:16 +0000 Filippo Argiolas * tests/examples/clutter/clutteractortee.c: [323/906] Remove redundant XMoveWindow call Revert the "move windows" thing from commit 175f7a707bc922f3facc63e7d9b6d01f9bb6b1b0 Windows are offscreen who cares about their position? If you see the windows something is going wrong with composite redirection. 2009-03-18 22:46:56 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [322/906] [download YUY2/UYVY] fix a regression The call to glLoadIdentity was removed by mistake during OpenGL ES 2.0 integration. 2009-03-15 14:48:19 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstgles2.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_winCE.c: * gst/gl/gstgldownload.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfiltercube.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [321/906] add OpenGL ES 2.x support. In OpenGL 2.x for Embedded System, a lot of basic scene/draw functions have been removed. It means that everything is made using vertex and fragment shaders. I have also added a gstglwindow backend for winCE that uses EGL (Native Platform Graphics Intercace) (which is a full part of OpenGL ES specification). It remove the use of wgl/glx functions. 2009-03-07 03:13:38 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_cocoa.m: [320/906] fix position and content rect 2009-03-06 22:43:41 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: [319/906] [win32 backend] fix transmition message to the parent. The Qt mouvexoverlay example shows how to rotate the cube by moving (+click) the mouve over a qwidget using xoverlay interface. 2009-02-26 17:45:21 -0500 Julien Isorce * gst-libs/gst/gl/GNUmakefile.gnustep: * gst/gl/GNUmakefile.gnustep: * gst/gl/effects/GNUmakefile.gnustep: [318/906] rename GNUmakefile(s) to GNUmakefile(s).gnustep 2009-02-26 01:06:58 +0100 Julien Isorce * gst-libs/gst/gl/GNUmakefile: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_cocoa.m: * gst/gl/GNUmakefile: [317/906] implement gstglwindow for Cocoa (MacOS and GNUstep) 2009-02-25 00:39:48 +0100 Julien Isorce * gst/gl/CMakeLists.txt: [316/906] remove some unused HAVE_LIBPNG: libpng is a required package 2009-02-25 00:12:12 +0100 Julien Isorce * gst-libs/gst/gl/GNUmakefile: * gst/gl/CMakeLists.txt: * gst/gl/GNUmakefile: * gst/gl/effects/GNUmakefile: [315/906] add GNUstep build 2009-02-23 11:07:22 -0800 David Schleef * pkgconfig/gstreamer-gl-uninstalled.pc.in: [314/906] Add srcdir to includes for out-of-source builds When you use gstreamer uninstalled and build outside the source tree, the includes need to be specified for both the source tree and the build tree. 2009-02-23 13:39:29 +0200 Stefan Kost * gst/gl/gstglfiltercube.c: [313/906] indent: don't use tabs inside property descriptions 2009-02-23 13:35:48 +0200 Stefan Kost * gst/gl/gstglbumper.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgloverlay.c: [312/906] build: include stdlib.h when using free(). 2009-02-22 19:36:40 +0100 Sebastian Dröge * gst/gl/gstglcolorscale.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: [311/906] Cast GstBuffer subclasses to GstBuffer * before passing to gst_buffer_unref() 2009-02-10 22:39:14 -0800 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gltestsrc.c: * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgloverlay.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [310/906] Global reindent Indent parameters: INDENT_PARAMETERS="--braces-on-if-line \ --case-brace-indentation0 \ --case-indentation2 \ --braces-after-struct-decl-line \ --line-length80 \ --no-tabs \ --cuddle-else \ --dont-line-up-parentheses \ --honour-newlines \ --continuation-indentation4 \ --tab-size8 \ --indent-level2" 2009-02-03 18:58:00 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow_x11.c: [309/906] Replay: Fix callbacks passed over XEvents on 64 bit architectures Althought the XEvent's xclient.data.l array is an array of longs they will be constrained to 32 bit by the X11 protocol. On 64 bit architectures use two elements of the array to store one pointer. This fixes segfaults that happen at least for every example on startup. 2009-02-05 13:13:51 -0800 David Schleef * gst/gl/CMakeLists.txt: * gst/gl/Makefile.am: * gst/gl/gstgloverlay.c: * gst/gl/gstopengl.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [308/906] Rename glpixbufoverlay to gloverlay 2009-02-04 16:57:14 -0800 David Schleef * gst/gl/Makefile.am: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstopengl.c: [307/906] Remove conditionals on gdkpixbuf 2009-02-08 01:50:10 +0100 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: * gst/gl/CMakeLists.txt: [306/906] fix CMake build and frozen CodeBlocks build 2009-02-07 21:19:24 +0100 Julien Isorce * gst/gl/CMakeLists.txt: [305/906] CMake build now checks for libpng 2009-02-05 19:59:27 +0100 Julien Isorce * gst-libs/gst/gl/gstglshader.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstopengl.c: [304/906] only load RGBA files.png 2009-02-04 16:18:15 -0800 David Schleef * gst/gl/Makefile.am: [303/906] Add libpng dependency 2009-01-26 16:30:22 -0800 David Schleef * gst/gl/gstgldifferencematte.c: * gst/gl/gstglpixbufoverlay.c: [302/906] Fix some warnings 2009-01-23 02:04:23 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstglpixbufoverlay.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [301/906] depends on libpng instead of gdk_pixbuf 2009-01-22 02:19:31 +0100 Julien Isorce * gst/gl/gstglbumper.c: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstopengl.c: [300/906] use libpng in glpixbufoverlay filter. 2009-01-22 01:16:38 +0100 Julien Isorce * gst/gl/gstglbumper.c: * gst/gl/gstglbumper.h: [299/906] use libpng to load the normal map instead of using gdkpixbuf 2009-02-10 21:57:31 -0800 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gltestsrc.c: * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [298/906] Revert "Fix indention" This reverts commit 96e4ab18c2cf9876f6c031b9aba6282d0bd45a93. You should have asked first. And you would have been told "no", because it causes people on development branches to do a huge amount of extra work. 2009-02-10 21:57:08 -0800 David Schleef * gst-libs/gst/gl/gstglwindow_x11.c: [297/906] Revert "Fix callbacks passed over XEvents on 64 bit architectures" This reverts commit 280771d09b58617b27201027de0e1194da376e72. 2009-02-03 18:58:00 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow_x11.c: [296/906] Fix callbacks passed over XEvents on 64 bit architectures Althought the XEvent's xclient.data.l array is an array of longs they will be constrained to 32 bit by the X11 protocol. On 64 bit architectures use two elements of the array to store one pointer. This fixes segfaults that happen at least for every example on startup. 2009-02-03 18:33:36 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gltestsrc.c: * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [295/906] Fix indention 2009-02-03 11:23:06 +0100 Sebastian Dröge * gst-libs/gst/gl/gstglwindow_x11.c: [294/906] Fix format string compiler warnings by using G_GUINT64_FORMAT 2009-01-15 18:39:48 +0100 Julien Isorce * gst/gl/gstglbumper.c: * gst/gl/gstgldifferencematte.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfiltersobel.c: * gst/gl/gstglpixbufoverlay.c: [293/906] minimal gtk doc 2009-01-09 17:46:01 -0800 David Schleef * gst/gl/effects/gstgleffectssources.h: [292/906] Add 'extern' for data symbols in headers 2009-01-09 17:20:25 -0800 David Schleef * gst-libs/gst/gl/gstgldisplay.c: [291/906] Add check for GLEW_EXT_framebuffer_object 2009-01-08 19:18:47 -0800 David Schleef * gst-libs/gst/gl/Makefile.am: [290/906] Set GL_LIBS correctly in configure.ac This doesn't detect the existence of libraries, which needs to be fixed. 2009-01-07 19:11:01 -0800 David Schleef * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: [289/906] build fixes for Windows libraries 2008-12-14 12:06:06 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [288/906] add more debug ouputs about GLSL and mesa 2008-12-13 19:36:32 -0500 julien * gst-libs/gst/gl/gstglwindow_x11.c: [287/906] fix a regression about glXChooseVisual which failed when using mesa, so attributes must be less restrictives. 2008-12-13 00:50:16 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_win32.c: [286/906] [win32] Register window class in gst_gl_window_class_init 2008-12-07 03:25:59 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/gstglupload.c: * tests/examples/clutter/clutteractortee.c: [285/906] fix gl framerate in gst caps. Consider position in xoverlay. Fix inversion bettween COLS and ROWS, and move windows. 2008-11-29 22:16:44 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [284/906] workaround about the ATI shader compiler on linux (setlocale) 2008-11-25 01:01:01 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [283/906] better result in cube and doublecube example. And some clean up debug and comments 2008-11-23 16:14:26 +0100 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: [282/906] update CMake build 2008-11-23 16:04:27 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: [281/906] Make cube example work on x11. Finish TODO task 9. 2008-11-22 16:43:24 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/gstglimagesink.c: [280/906] Remove set_visible, because it's now automatically done when the first post redisplay comes. 2008-11-22 00:51:30 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [279/906] finish set_xwindow_id (gst_gl_window_set_external_win_id): child is resized at the same time as the parent is. 2008-11-21 20:51:48 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [278/906] Implement set_xwindow_id (gst_gl_window_set_external_window_id). 2008-11-21 19:37:21 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [277/906] open x client connection for sender only at start up 2008-11-21 19:11:11 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: [276/906] better deal with last pending custom cb and destroy_context_cb 2008-11-21 01:31:19 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow_x11.c: [275/906] Make sure the gl ressoures are destroyed before to destroy gl window 2008-11-20 01:24:10 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [274/906] add some other debug outputs and checks 2008-11-19 00:07:22 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/gstglimagesink.c: [273/906] add some debug outputs about Visual and XVisualInfo 2008-11-17 01:04:32 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [272/906] add a visible member to deal better with the first expose events 2008-11-16 16:57:00 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [271/906] revert last commit because the crash comes from libselinux 2008-11-15 23:32:04 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [270/906] fix use of different Display structures which point on the same display name 2008-11-15 18:51:44 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [269/906] Better deal with XNextEvent and XSendEvent 2008-11-15 02:24:07 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [268/906] Better deal with Atoms 2008-11-14 01:00:33 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [267/906] Get ride of calling sleep in gl thread X loop 2008-11-13 02:05:33 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [266/906] secure close when clicking on the cross 2008-11-13 01:29:10 +0100 Julien Isorce [265/906] CRLF -> LF 2008-11-13 01:23:51 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/gstglimagesink.c: [264/906] Rewrite gstglwindow_x11.c because X API is not thread safe. 2008-11-11 03:19:51 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [263/906] discard x custom messages which are of date 2008-11-09 23:23:30 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/Makefile.am: [262/906] Works on linux but still some bugs. Fix autotools build. 2008-11-09 22:14:29 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [261/906] implement quit x message loop 2008-11-09 02:44:25 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [260/906] try to make XSendEvent blocker (as win32 SendMessage is) 2008-11-06 23:41:11 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_x11.c: [259/906] continue x implementation (but still not tested) 2008-11-06 01:28:26 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow_x11.c: [258/906] setup x message loop 2008-11-05 02:06:33 +0100 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_x11.c: * gst/gl/gstglupload.c: [257/906] begin gstglwindow_x11.c implementation 2008-10-29 23:53:22 +0100 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: [256/906] fix CMake an CodeBlocks builds 2008-10-28 21:44:09 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_win32.c: [255/906] fix window closure when using gst xoverlay interface 2008-10-28 01:38:45 +0100 Julien Isorce * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [254/906] Better handle when the parent window is resizing, and cleanup some code 2008-10-28 00:22:27 +0100 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [253/906] win32: re-implement supports for gst xoverlay interface, on this branch 2008-10-25 16:18:23 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [252/906] avoid a dead lock on window closure 2008-10-25 02:03:16 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow_win32.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [251/906] Properly clean OpenGL contexts 2008-10-24 01:39:00 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglwindow_win32.c: [250/906] win32: basic stuffs are working now on this branch with this new deep design (gstglwindow) 2008-10-23 01:40:52 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglwindow.h: * gst-libs/gst/gl/gstglwindow_win32.c: [249/906] begin GstGLWindow in order to totally remove gstfreeglut 2008-10-16 23:47:01 +0200 Julien Isorce * gst/gl/CMakeLists.txt: * gst/gl/effects/gstgleffectxray.c: [248/906] fix msvc warnings and update CMake build, win32 CodeBlocks build and vs8 build 2008-10-15 16:18:22 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectscurves.h: * gst/gl/effects/gstgleffectxray.c: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * tests/examples/gtk/fxtest/fxtest.c: [247/906] Import xray effect Add xray effect. Maps luma to a negative, slightly cyan tinted, curve, applies some light gaussian blur and multiplies it with its sobel edges. Not sure about the name, likely to change. Probably still needs some tuning. 2008-10-15 16:14:52 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: [246/906] Add multiply fragment shader Add a fragment shader to blend two textures with multiply blend mode 2008-10-15 15:49:12 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/gstglfiltersobel.c: [245/906] Add invert property to sobel filter Add an invert property to sobel_fragment_source and Sobel filter. Useful to have dark edges with white background. 2008-10-15 12:50:07 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectlumatocurve.h: [244/906] Make luma_to_curve non-static Make luma_to_curve public so that it can be used as a step for more complex effects. 2008-10-15 12:42:29 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [243/906] Support for missing videoformats in glupload Add support for missing alpha channeled videoformats (RGBA, BGRA, ARGB, ABGR) in gst_gl_display_do_upload_fill. 2008-10-13 23:14:27 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: [242/906] Fix crash in filters when going to NULL with no display 2008-10-11 11:45:54 +0200 Julien Isorce * gst/gl/CMakeLists.txt: [241/906] fix CMake build 2008-10-04 22:34:07 +0300 Stefan Kost * gst/gl/gstglcolorscale.c: * gst/gl/gstgldownload.c: [240/906] Build gtk-docs for plugins. Add include to otherwise empty .types file to fix the scanner build. Edit Makefile.am, .sections, -docs.sgml to scan all plugins and include them in the master file. Fix xml errors in two sources (missing closing tag). 2008-09-29 23:45:10 +0200 Julien Isorce * gst/gl/gltestsrc.c: * gst/gl/gstglbumper.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldownload.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [239/906] start to write the gtk doc 2008-09-25 22:25:29 +0200 Julien Isorce * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilterglass.c: [238/906] fix glfilterglass (reason: videotestsrc rgb is by default bpp=32, depth=24, so alpha channel is 0) 2008-09-24 19:32:48 +0200 Julien Isorce * gst/gl/CMakeLists.txt: [237/906] update cmake build and the 2 frozen win32 builds (CodeBlocks, vs8) 2008-09-23 10:37:58 +0200 Filippo Argiolas * gst/gl/CMakeLists.txt: * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstglfiltersobel.c: * gst/gl/gstopengl.c: [236/906] import sobel edge detector from cvs branch 2008-09-24 02:07:41 +0200 Julien Isorce * gst/gl/gstglfilterglass.c: [235/906] can use several G_LOG_DOMAINs and GST_CATegories, with msvc8 2008-09-22 09:47:16 +0200 Filippo Argiolas * gst/gl/gstglpixbufoverlay.c: [234/906] use right blending function with pixbuf overlay 2008-09-21 10:58:13 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [233/906] no need to explicit set the debug category if default one is used 2008-09-21 10:04:49 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectrgbtocurve.c: [232/906] use texture1 for curve textures 2008-09-21 19:26:37 +0200 Julien Isorce * gst/gl/CMakeLists.txt: * gst/gl/Makefile.am: * gst/gl/gstglfilterglass.c: * gst/gl/gstglfilterglass.h: * gst/gl/gstopengl.c: [231/906] Add a glfilterglass inspired from http://www.mdk.org.pl/2007/11/17/gl-colorspace-conversions 2008-09-21 16:40:38 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglshader.c: [230/906] explicit check g_getenv return value to be not NULL 2008-09-20 15:44:24 +0200 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstgltestsrc.h: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [229/906] update authors from the CVS repository 2008-09-20 14:12:49 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglshader.c: [228/906] output shaders info log only if GST_GL_SHADER_DEBUG env variable is set. Should fix TODO task 18 2008-09-19 12:47:06 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectrgbtocurve.c: [227/906] explicitly bind the main texture and the curve one to separate units in rgb and luma to curve effects. This should solve the issue pointed in TODO item 21. 2008-09-18 22:50:05 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [226/906] check on win32 that every tests/pipelines and tests/examples (generic, gtk, qt) still work 2008-09-18 21:13:37 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [225/906] fix a regression that made the gltestsrc element not working 2008-09-16 02:10:31 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [224/906] fix a regression about MESA YCbCr colorspace conversion 2008-09-14 23:22:58 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [223/906] fix a regression (sometimes a FBO is needed even if the video source is rgb) 2008-09-14 19:56:50 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstgleffects.c: [222/906] Finish TODO task 17 2008-09-13 19:47:44 +0200 Julien * gst-libs/gst/gl/gstgldisplay.c: [221/906] fix g_int_hash -> g_direct_hash 2008-09-13 18:17:42 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [220/906] Use a better key for the pool of textures 2008-09-13 03:32:04 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: * gst/gl/gstglupload.c: [219/906] Use a gst debug category for GstGLDisplay instead of g_print, gst-launch-0.10 --gst-debug=gldisplay:3 videotestsrc ! glimagesink 2008-09-12 01:13:50 +0200 Julien * gst-libs/gst/gl/CMakeLists.txt: * gst/gl/Makefile.am: [218/906] The CMake build now works on my Kubuntu-KDE4.1.1 2008-09-11 02:07:12 +0200 Julien Isorce * gst-libs/gst/gl/CMakeLists.txt: * gst/gl/CMakeLists.txt: [217/906] Add cmake build http://www.cmake.org. See CMake install instructions in the INSTALL file. (I have not correctly configured yet the CMake build for unix, BE patient) 2008-09-07 17:44:42 +0200 Julien * gst/gl/gstopengl.c: [216/906] fix glbumper related gtk dependencies 2008-09-07 14:17:57 +0200 Julien Isorce * gst/gl/Makefile.am: * gst/gl/gstopengl.c: [215/906] glbumper is compiled only when having GdkPixBuf. And update win32 codeblocks build 2008-09-07 01:38:10 +0200 julien User * gst/gl/gstglbumper.c: [214/906] update codeblocks build on linux and fix a warning 2008-09-07 01:23:19 +0200 Julien Isorce * gst/gl/gstglbumper.c: * gst/gl/gstglbumper.h: [213/906] forgot to add the bumper files 2008-09-07 00:45:34 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst/gl/Makefile.am: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstopengl.c: [212/906] add a glbumper (bump mapping filter through GLSL) that exposes how to use both vertex and fragment shaders 2008-08-25 10:34:54 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [211/906] Fix upload AYUV and YV12 (a regression in last commits) 2008-08-24 16:33:26 +0200 julien User * gst-libs/gst/gl/gstgldisplay.c: [210/906] get ride of a wrong color on nvidia/linux when converting yv12 to rgb through GLSL 2008-08-24 15:39:14 +0200 julien User * gst-libs/gst/gl/gstgldisplay.c: [209/906] fix warnings 2008-08-24 04:24:29 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [208/906] fix upload AYUV, regression during the 2 last commits 2008-08-24 03:38:40 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [207/906] oups, fix my mistake on last commit 2008-08-24 03:12:12 +0200 unknown * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/BUGS: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglupload.c: [206/906] Do not use frame buffer object when "input video is RGB" or when "GLSL is not available and YCbCr is available". So frame buffer object is not a plugin requirement anymore. So I decreased the OpengGL version from 1.4 to 1.2 (maybe less?) 2008-08-21 11:12:42 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [205/906] use a GHash table instead of a GData for the texture pool 2008-08-20 15:47:51 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [204/906] get ride of a bug on ATI related to YV12 to rgb conversion through GLSL and add an example 2008-08-20 10:02:02 +0200 Filippo Argiolas * gst/gl/gstglpixbufoverlay.c: [203/906] use opengl for pixbuf resizing in glpixbufoverlay, start to work on properties 2008-08-20 09:26:46 +0200 Filippo Argiolas * gst/gl/gstglpixbufoverlay.c: [202/906] use fixed opengl pipeline for glpixbufoverlay (any drawback?) 2008-08-20 09:24:53 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [201/906] fix a signedness warning 2008-08-20 00:11:39 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [200/906] get ride of a ATI bug related to GLSL colorspace conversion for I420 and YV12 to rgb 2008-08-19 22:15:17 +0200 Julien Isorce * tests/examples/gtk/fxtest/pixbufdrop.c: [199/906] add pixbufdrop vs8 project 2008-08-19 21:04:29 +0200 Julien Isorce * gst/gl/gstgldifferencematte.c: * tests/examples/gtk/fxtest/fxtest.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [198/906] add fxtest vs8 project 2008-08-19 11:07:18 +0200 Julien Isorce * gst/gl/gstgleffects.c: [197/906] Shaders which are in the shaderstable are now released 2008-08-19 09:48:14 +0200 Filippo Argiolas * gst/gl/gstgldifferencematte.c: [196/906] fix a differencematte memory issue 2008-08-19 08:50:14 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/gstgldifferencematte.c: * tests/examples/gtk/fxtest/pixbufdrop.c: [195/906] fix gstgldifferencematte and add an example app to test it dragging an image over the video (works with pixbufoverlay too, see pixbufdrop --help) 2008-08-18 21:50:09 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/gstgldifferencematte.c: [194/906] another typo, restore old twirl fragment source 2008-08-18 21:43:02 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/gstgldifferencematte.c: [193/906] fix typos 2008-08-18 21:40:26 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgldifferencematte.c: [192/906] complete differencematte filter.. I did it quickly, probably still needs some work 2008-08-18 20:25:25 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgldifferencematte.c: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstopengl.c: [191/906] little cleanup. add first draft of gstgldifferencematte. still doesn't work 2008-08-18 18:53:13 +0200 Julien Isorce * gst/gl/gstglimagesink.c: [190/906] force calling glimagesink->stop() when going from PAUSED to READY 2008-08-18 17:19:06 +0200 unknown * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/gstgleffects.c: * gst/gl/gstglfilterblur.c: * gst/gl/gstglpixbufoverlay.c: [189/906] update vs8 build and fix some warnings that comes from vc8 2008-08-18 16:16:58 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/gstglpixbufoverlay.c: * gst/gl/gstopengl.c: [188/906] add first draft of a pixbuf overlay element. add macros to optionally build the latter if gdk-pixbuf is found 2008-08-18 11:48:47 +0200 Filippo Argiolas * tests/examples/clutter/clutteractortee.c: [187/906] remove expose event handling, it's map-unmap that is not behaving correctly, any idea? 2008-08-18 11:08:09 +0200 Filippo Argiolas * tests/examples/clutter/clutteractortee.c: [186/906] add expose event handling to clutteractortee 2008-08-18 10:50:37 +0200 Filippo Argiolas * tests/examples/clutter/clutteractor.c: * tests/examples/clutter/clutteractortee.c: [185/906] add clutteractortee example, a nice example about how clutter could be used to create a live preview widget for gleffects. It uses texture from pixmap, still needs some work regarding clean exit and expose event management. 2008-08-18 09:06:09 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [184/906] add a couple of macros to autotools to compile with uintrepid automake. remove array constructor so we don't have to depend on glsl #version 120. 2008-08-17 17:45:52 +0200 Filippo Argiolas * tests/examples/clutter/clutteractor.c: [183/906] add an example to use texture from pixmap to do some kind of x_overlay on a clutteractor. A better way would be to directly share gl handles between clutter and gstgl but still I cannot find a way to do it. 2008-08-17 12:21:49 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectscurves.h: [182/906] add a better sepia toning curve 2008-08-17 09:24:24 +0200 Filippo Argiolas * gst/gl/gstgltestsrc.c: [181/906] add a translatable string to testsrc to get rid of po dir errors after distclean and git clean 2008-08-16 17:36:10 +0200 Filippo Argiolas * tests/examples/gtk/fxtest/fxtest.c: [180/906] minor cleanup in fxtest 2008-08-16 12:37:36 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffectsdistortion.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: [179/906] distortion effect cleanup 2008-08-16 10:15:31 +0200 Filippo Argiolas * tests/examples/gtk/fxtest/fxtest.c: [178/906] improve fxtest command line option handling, default to videotestsrc if no source bin description is given 2008-08-16 09:40:54 +0200 Filippo Argiolas * gst/gl/gstgleffects.c: [177/906] fix gleffects memory issue (init resources on start and reset them on stop) 2008-08-16 09:17:14 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [176/906] fix a typo 2008-08-16 09:13:39 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectsin.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * tests/examples/gtk/fxtest/fxtest.c: [175/906] add sin effect (desaturate everything but red shades). still needs some tuning. 2008-08-14 22:28:19 +0200 Filippo Argiolas * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: [174/906] add a property to gleffects to switch video left to right, useful with webcams to resemble a mirror 2008-08-14 21:29:02 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectscurves.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: * tests/examples/gtk/fxtest/fxtest.c: [173/906] add lumaxpro (desaturate + cross process) effect. nothing too impressive but I like it. 2008-08-14 20:54:54 +0200 Filippo Argiolas * tests/examples/gtk/fxtest/fxtest.c: [172/906] add support for command line parsing to fxtest (try fxtest videotestsrc ! desired caps ! identity). report a new issue on BUGS. 2008-08-14 20:02:04 +0200 Filippo Argiolas * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/gstgleffects.c: * tests/examples/gtk/fxtest/fxtest.c: [171/906] import fxtest (little gtk app to easily test effects) from cvs branch, fixed rgbtocurve. 2008-08-14 17:03:21 +0200 Julien Isorce * gst/gl/gstopengl.c: [170/906] update codeblocks build 2008-08-14 14:08:23 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectbulge.c: * gst/gl/effects/gstgleffectfisheye.c: * gst/gl/effects/gstgleffectsdistortion.c: * gst/gl/effects/gstgleffectsquare.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/effects/gstgleffecttunnel.c: * gst/gl/effects/gstgleffecttwirl.c: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: [169/906] import remaining distortion effects from cvs branch (fisheye, twirl, bulge, tunnel, square) 2008-08-14 12:39:01 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectscurves.h: [168/906] cleanup curves header 2008-08-14 12:26:25 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectscurves.h: [167/906] better cross processing curve 2008-08-14 12:09:39 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectrgbtocurve.c: * gst/gl/effects/gstgleffectscurves.h: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: [166/906] add rgb_to_luma_fragment source and correspondent effect. use the latter for a cross processing effect. 2008-08-14 11:31:09 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectlumatocurve.c: * gst/gl/effects/gstgleffectscurves.h: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: [165/906] import luma_to_curve effects (Sepia, Heat) from cvs branch with better texture memory handling (teximage curves only once). Sepia curve still needs some love. 2008-08-14 09:39:55 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: [164/906] rename blend_fragment_source to sum_fragment_source and add uniform blending parameters 2008-08-14 09:26:23 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectglow.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: * gst/gl/gstgleffects.h: [163/906] import glow effect (maybe the most tricky) from cvs branch 2008-08-14 08:03:49 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffects.h: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/effects/gstgleffectstretch.c: * gst/gl/gstgleffects.c: [162/906] import stretch effect from cvs 2008-08-14 00:07:20 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffects.h: * gst/gl/effects/gstgleffectsqueeze.c: * gst/gl/effects/gstgleffectssources.c: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: [161/906] import squeeze effect from cvs 2008-08-13 22:42:48 +0200 Filippo Argiolas * gst/gl/effects/gstgleffectssources.c: [160/906] forgot to add a file 2008-08-13 22:36:13 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectidentity.c: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffects.h: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: [159/906] still some source tree reorganize, fixed some issue with headers and ifdefs, moved identity into effects dir 2008-08-13 20:58:49 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/effects/gstgleffectmirror.c: * gst/gl/effects/gstgleffects.h: * gst/gl/effects/gstgleffectssources.h: * gst/gl/gstgleffects.c: [158/906] still working on mergin gstgleffects, add mirror effect. reorganize source tree. 2008-08-13 17:59:09 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglcolorscale.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglupload.c: [157/906] move thread_do_upload_make from thread_do_upload to thread_init_upload 2008-08-13 17:16:17 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/BUGS: [156/906] fix a crash that could happens when using at least 2 gl context and when closing a window on linux 2008-08-13 16:01:21 +0200 Julien Isorce * gst/gl/BUGS: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldownload.c: * gst/gl/gstgleffects.c: [155/906] fix some errors and check all the pipelines listed in tests/pipelines 2008-08-12 11:09:37 +0200 Filippo Argiolas * gst/gl/Makefile.am: * gst/gl/gstgleffects.c: * gst/gl/gstopengl.c: [154/906] added first skeleton of gstgleffects, imported basic stuff from cvs branch. 2008-08-11 20:12:02 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglfilterblur.c: [153/906] Try to genereate textures within gstglfilterblur to see if the new thread_use_fbo works both with textures from the pool and custom ones 2008-08-11 20:01:41 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [152/906] remove an unneeded (really?) glTexImage 2008-08-11 19:08:22 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/Makefile.am: [151/906] ISO C90 2008-08-11 19:01:33 +0200 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilterblur.c: [150/906] glTexImage2D(w, h, NULL) is now called only one time (mem alloc) 2008-08-11 17:21:30 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [149/906] same as previous commit 2008-08-11 17:17:22 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [148/906] Fix rgb issue. Current program should always be set to 0 when a new texture is attached to a fbo. 2008-08-11 15:53:12 +0200 Julien Isorce * gst/gl/gstopengl.c: [147/906] oups forgot to add 2 files to the previous commit 2008-08-11 15:40:39 +0200 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: * gst/gl/gstglfilteredge.c: * gst/gl/gstglfilteredge.h: * gst/gl/gstglupload.c: [146/906] remove filteredge 2008-08-11 15:30:38 +0200 Julien Isorce * gst/gl/gstglfilterblur.c: [145/906] gen/del the middle texture only one time in the gstglfilterblur 2008-08-11 11:26:32 +0200 Filippo Argiolas * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterblur.h: * gst/gl/gstopengl.c: [144/906] remove gstglfilterblur.h, it's easier to have everything in the same file 2008-08-11 09:52:16 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglfilterblur.c: [143/906] Add init and reset callbacks in GstGLFilter to run arbitrary gl code at start and stop. Useful to init and cleanup custom gl resources. 2008-08-11 09:00:40 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilterblur.c: [142/906] Add a generic action to be able to execute arbitrary gl code within the gl thread with less pain 2008-08-10 11:22:34 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglfilterblur.c: [141/906] some steps towards simplification. added a convenience function to gstglfilter and some comment here and there 2008-08-05 10:15:07 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: [140/906] Fix GL_STACK_OVERFLOW 2008-08-04 12:13:29 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglfilterblur.c: [139/906] fix warnings when compiling upload/download shaders 2008-08-04 09:56:59 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [138/906] is that videoformat pointer really needed? 2008-08-04 09:46:14 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [137/906] Don't reallocate texture memory every time in upload_* functions. 2008-08-01 11:00:49 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: [136/906] reindent gstgldisplay with gstreamer-c-mode 2008-07-31 17:48:04 +0200 Julien Isorce * gst/gl/Makefile.am: * gst/gl/gstglfilterblur.c: * gst/gl/gstglfilterblur.h: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstopengl.c: [135/906] add and make the Filippo's gstglfilterblur works on the master branch (example of multiple step rendering) 2008-07-25 01:43:28 +0200 julien User * gst/gl/gstglimagesink.c: [134/906] fix makefiles list from configure.ac (tests have changes) and fix a warning 2008-07-21 00:24:48 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [133/906] finish todo task 4 2008-07-20 16:38:48 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [132/906] make the plugin properly shutdown when one of the check requirements failed 2008-07-19 08:32:38 +0200 Filippo Argiolas * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglfilteredge.c: [131/906] fix warnings (unused vars) 2008-07-19 03:00:26 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilteredge.c: * gst/gl/gstglfilteredge.h: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterlaplacian.h: [130/906] use GstGLShader in the GLSL colorspace conversion 2008-07-18 22:33:44 +0200 Filippo Argiolas * gst/gl/gstglfilterlaplacian.c: [129/906] fixed warning for unused variable (fatal with -Werror) 2008-07-18 21:55:00 +0200 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglfilterlaplacian.c: [128/906] add GstGLShader stuffs in the vs8 project, fix laplacian fragment code to make it compile on ATI, and fix check function about Opengl and Glew version 2008-07-18 10:49:34 +0200 Filippo Argiolas * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglshader.c: * gst-libs/gst/gl/gstglshader.h: * gst/gl/Makefile.am: * gst/gl/gstglfilterlaplacian.c: * gst/gl/gstglfilterlaplacian.h: * gst/gl/gstopengl.c: [127/906] Imported GstGLShader from cvs branch. Added a demo laplacian convolution filter to demonstrate how this can be integrated with minimum effort. 2008-07-16 15:23:36 -0700 David Schleef * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstgltestsrc.h: [126/906] Change some guints to GLuints because of warnings on OS/X. 2008-07-16 15:22:36 -0700 David Schleef * gst-libs/gst/gl/Makefile.am: [125/906] Add libraries as appropriate to fix compilation 2008-07-15 14:36:03 -0700 David Schleef [124/906] Global replace of CRLF line endings to LF 2008-07-12 14:18:47 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [123/906] X Specific: better implementation of the gst_gl_set_window_id 2008-07-12 13:24:30 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [122/906] better implementation of gst_gl_display_set_window_id for win32. (change the window of the current wglcontext instead of reinit everything, and so avoid some problems about opengl objects that could be init in the previous wglcontext and so no usable in the newer wglcontext, it what the case for the first texture) This newer implementation has not been made yet on linux 2008-07-12 01:13:08 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [121/906] avoid use of GLSL functions when fragment_shader is not available 2008-07-11 06:24:27 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [120/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@580 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-10 23:53:36 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilterapp.c: * gst/gl/gstglimagesink.c: [119/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@579 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-07 20:59:20 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglimagesink.c: [118/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@573 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-06 16:50:29 +0000 Julien Isorce * gst/gl/gstglimagesink.c: [117/906] up gtk example 2008-07-05 22:56:29 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfiltercube.h: * gst/gl/gstglfilteredge.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: [116/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@563 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-30 00:38:39 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldownload.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglupload.c: [115/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@556 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-29 17:27:43 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldownload.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilteredge.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [114/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@555 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-28 23:28:11 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglcolorscale.c: * gst/gl/gstgldownload.c: [113/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@554 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-28 15:38:41 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglcolorscale.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglupload.c: [112/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@552 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-24 22:28:03 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [111/906] up 2008-06-23 23:12:37 +0000 Julien Isorce * gst/gl/gstglfiltercube.c: [110/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@544 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-23 18:56:29 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglcolorscale.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterapp.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [109/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@543 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-21 21:38:42 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglcolorscale.c: * gst/gl/gstglcolorscale.h: * gst/gl/gstgldownload.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilteredge.c: * gst/gl/gstglimagesink.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: * gst/gl/gstglupload.c: * gst/gl/gstglupload.h: [108/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@540 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-06-19 23:38:36 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [107/906] fix opengl version checker 2008-06-16 23:12:48 +0000 Julien Isorce * gst/gl/gstglfilteredge.c: [106/906] up sobel algo 2008-06-15 18:31:12 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglfilteredge.c: [105/906] up Sobel filter and gl/glew version checker 2008-06-13 00:01:26 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/Makefile.am: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfilteredge.c: * gst/gl/gstglfilteredge.h: * gst/gl/gstopengl.c: [104/906] start to add a glfilteredge that proceeds edge detection using GLSL 2008-06-12 21:40:17 +0000 Julien Isorce * gst/gl/Makefile.am: * gst/gl/gstgldownload.c: * gst/gl/gstgldownload.h: * gst/gl/gstglupload.c: * gst/gl/gstglupload.h: * gst/gl/gstopengl.c: [103/906] rename glgraphicmaker -> glupload and glvideomaker -> gldownload 2008-06-11 23:43:41 +0000 Julien Isorce * gst/gl/gstglcolorscale.c: [102/906] up 2008-06-11 23:42:50 +0000 Julien Isorce * gst/gl/gstglfilterapp.c: [101/906] idem 2008-06-11 23:40:57 +0000 Julien Isorce * gst/gl/gstglfilterapp.c: [100/906] fix warnings linux-specific 2008-06-11 23:40:01 +0000 Julien Isorce * gst/gl/gstglfiltercube.c: [099/906] up (switching linux and win32) ... not fun editor ... 2008-06-11 23:38:33 +0000 Julien Isorce * gst/gl/Makefile.am: [098/906] up... 2008-06-11 23:36:25 +0000 Julien Isorce * gst/gl/gstglgraphicmaker.c: [097/906] fix warnings 2008-06-11 23:31:53 +0000 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: * gst/gl/gltestsrc.c: * gst/gl/gltestsrc.h: [096/906] up 2008-06-11 23:26:16 +0000 Julien Isorce * gst-libs/gst/gl/gltestsrc.c: * gst-libs/gst/gl/gltestsrc.h: [095/906] up 2008-06-11 23:23:12 +0000 Julien Isorce * gst-libs/gst/gl/gstglfilter.c: [094/906] up 2008-06-11 23:12:53 +0000 Julien Isorce * gst/gl/gstopengl.c: [093/906] remove 2 warnings 2008-06-11 23:04:52 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstgltestsrc.c: [092/906] Finish to revive the gltestsrc. Next step is to do some refactoring. 2008-06-11 18:33:53 +0000 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gltestsrc.c: * gst-libs/gst/gl/gltestsrc.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/Makefile.am: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: * gst/gl/gstopengl.c: [091/906] start to revive the gltestsrc 2008-06-10 23:00:39 +0000 Julien Isorce * gst/gl/Makefile.am: [090/906] up 2008-06-10 22:59:57 +0000 Julien Isorce * gst/gl/gstglcolorscale.c: * gst/gl/gstglcolorscale.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstopengl.c: [089/906] add a "glcolorscale" element equivalent to "ffmepgcolorspace ! videoscale ! ffmpegcolorspace" 2008-06-10 22:08:11 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst/gl/gstglfilter.c: * gst/gl/gstglgraphicmaker.c: * gst/gl/gstglgraphicmaker.h: * gst/gl/gstglimagesink.c: [088/906] fix some caps negociations those pipelines works fine : gst-launch-0.10 -v videotestsrc ! video/x-raw-yuv, width=320, height=240 ! glgraphicmaker ! video/x-raw-gl, width=720 , height=576 ! glfiltercube ! glimagesink and gst-launch-0.10 -v videotestsrc ! video/x-raw-yuv, width=320, height=240 ! glgraphicmaker ! video/x-raw-gl, width=720 , height=576 ! glimagesink 2008-06-10 19:07:43 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterapp.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglvideomaker.c: [087/906] glfilter can accept to have an input size different than the out put size : video/x-raw-gl, width=w1, height=w1 ! glfilter ! video/x-raw-gl, width=w2, height=w2 ! (fix every examples) 2008-06-08 22:11:36 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [086/906] up 2008-06-08 13:15:12 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfiltercube.h: * gst/gl/gstglvideomaker.c: [085/906] fix regressions about glvideomaker. 2008-06-08 02:19:43 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/Makefile.am: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: * gst/gl/gstglfilterapp.c: * gst/gl/gstglfilterapp.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstglgraphicmaker.c: * gst/gl/gstglgraphicmaker.h: * gst/gl/gstopengl.c: [084/906] add a glfilterapp which holds the client draw and reshape callbacks (some "wanted" regressions about the glvideomaker, have been done with this version. Will be fix in next commits) 2008-06-07 21:56:00 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfiltercube.c: * gst/gl/gstglgraphicmaker.c: * gst/gl/gstglimagesink.c: [083/906] finish to implement the glfilter: example : gst-launch-0.10 videotestsrc num_buffers = 100 ! glgraphicmaker ! glfiltercube ! glimagesink 2008-06-07 15:27:12 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstglimagesink.c: [082/906] glfilter can request, use and reject a FBO (step 1) 2008-06-07 00:01:18 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: * gst/gl/gstglfiltercube.c: * gst/gl/gstglfiltercube.h: * gst/gl/gstglgraphicmaker.c: * gst/gl/gstglimagesink.c: * gst/gl/gstopengl.c: [081/906] start to add a glfilter 2008-05-24 12:35:34 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [080/906] fix gstfreeglut linux implementation to correctly handle the gstxoverlay interface 2008-05-22 20:10:31 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [079/906] up 2008-05-21 22:49:21 +0000 Julien Isorce * gst/gl/gstglvideomaker.c: [078/906] up from kubuntu 2008-05-21 21:17:49 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [077/906] up 2008-05-21 21:15:47 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [076/906] check OpenGL and Glew versions 2008-05-20 17:40:20 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstglvideomaker.c: * gst/gl/gstglvideomaker.h: [075/906] indent 2008-05-19 23:06:07 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [074/906] up 2008-05-19 23:03:22 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [073/906] up 2008-05-19 21:36:59 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [072/906] up 2008-05-19 21:28:28 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: [071/906] remove all warnings 2008-05-19 18:45:46 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglimagesink.c: [070/906] implement and fix onClose: when a user click on the cross of an internal window (there is not this issue when using the gstxoverlay interface) 2008-05-19 16:57:39 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstglgraphicmaker.c: * gst/gl/gstglgraphicmaker.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstglvideomaker.c: * gst/gl/gstglvideomaker.h: * gst/gl/gstopengl.c: [069/906] add gstreamer license 2008-05-18 20:05:18 +0000 Julien Isorce * gst/gl/Makefile.am: [068/906] up 2008-05-18 19:58:49 +0000 Julien Isorce * gst/gl/Makefile.am: [067/906] up 2008-05-18 19:18:04 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/Makefile.am: * gst/gl/gstglgraphicmaker.c: * gst/gl/gstglimagesink.c: * gst/gl/gstglvideomaker.c: * gst/gl/gstglvideomaker.h: [066/906] up 2008-05-18 17:55:56 +0000 Julien Isorce * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstgldisplay.h: [065/906] up 2008-05-18 16:04:56 +0000 Julien Isorce * gst/gl/Makefile.am: * gst/gl/gstopengl.c: [064/906] up 2008-05-18 14:47:01 +0000 Julien Isorce * gst-libs/gst/gl/gstgldisplay.h: [063/906] up 2008-05-18 11:12:46 +0000 Julien Isorce * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/gstgl.c: * gst/gl/gstglgraphicmaker.c: * gst/gl/gstglgraphicmaker.h: * gst/gl/gstglimagesink.c: * gst/gl/gstglimagesink.h: * gst/gl/gstglvideomaker.c: * gst/gl/gstglvideomaker.h: [062/906] git-svn-id: svn://svn.wobow.com/GStreamer_playground/gst-plugins-gl@421 93df14bb-0f41-7a43-8087-d3e2a2f0e464 2008-07-15 14:16:53 -0700 David Schleef * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/.cvsignore: * gst/gl/BUGS: * gst/gl/Makefile.am: * gst/gl/color_matrix.c: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/gltestsrc.c: * gst/gl/gltestsrc.h: * gst/gl/gstglconvert.c: * gst/gl/gstgldownload.c: * gst/gl/gstglfilterexample.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [061/906] First SVN commit. This commit is a hack to make git-rebase work 2008-02-23 15:10:49 +0000 Tim-Philipp Müller * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstgldisplay.c: [060/906] * gst-libs/gst/gl/gstglbuffer.c: (gst_gl_buffer_format_from_video_format): Fix compiler warning if there are video format enums gstglbuffer doesn't know about yet. * gst-libs/gst/gl/gstgldisplay.c: (gst_gl_display_upload_texture_rectangle), (gst_gl_display_draw_texture): Fix printf format for 64-bit integers. 2008-01-31 23:40:13 +0000 David Schleef * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: * tests/check/pipelines/simple-launch-lines.c: [059/906] * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-gl-uninstalled.pc.in: * pkgconfig/gstreamer-gl.pc.in: * pkgconfig/gstreamer-plugins-gl-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-gl.pc.in: Rename pkgconfig files. And install them. * tests/check/Makefile.am: * tests/check/generic/states.c: * tests/check/pipelines/simple-launch-lines.c: Add some tests copied from -good. 2008-01-31 21:35:56 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: [058/906] * gst-libs/gst/gl/Makefile.am: The library needs to link against libgstvideo-0.10. * gst/gl/Makefile.am: The plugin does not (I think) need to link against GL or libgstvideo, since our new gstreamer GL library already does that, but it does need to link against our brand-new libgstgl-0.10. 2008-01-31 20:31:11 +0000 David Schleef * gst/gl/.cvsignore: * gst/gl/Makefile.am: [057/906] * gst/gl/.cvsignore: ingore some files * gst-libs/gst/Makefile.am: distcheck fixes * gst/gl/Makefile.am: distcheck fixes * win32/common/config.h: -good has this in CVS, so we will too. 2008-01-31 20:21:26 +0000 David Schleef * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/glimagesink.c: * gst/gl/gstopengl.c: [056/906] * configure.ac: Readd pre-pkgconfig OpenGL detection, since pkgconfig requires Mesa from git master. * gst/gl/glimagesink.c: * gst/gl/gstopengl.c: Move debug category initialization to element. * gst-libs/gst/gl/Makefile.am: * gst-libs/gst/gl/gstglfilter.c: * gst-libs/gst/gl/gstglfilter.h: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: Move glfilter to library. * pkgconfig/gstreamer-plugins-gl.pc.in: Add gstreamer-base-0.10 as a requirement. * po/en.po: Update. 2008-01-18 15:13:16 +0000 Tim-Philipp Müller * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: [055/906] * configure.ac: * docs/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: * tests/Makefile.am: Fix compilation in uninstalled setup and some distcheck-y bits (not all though). 2008-01-17 23:23:31 +0000 David Schleef * gst-libs/gst/gl/Makefile.am: * gst/gl/Makefile.am: * gst/gl/gstgltestsrc.c: [054/906] Fixes to make project compile. Probably still doesn't work. * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst/Makefile.am: * gst/gl/Makefile.am: * gst/gl/gstgltestsrc.c: * po/LINGUAS: * win32/MANIFEST: 2008-01-17 19:40:36 +0000 David Schleef * gst-libs/gst/gl/Makefile.am: [053/906] Add project infrastructure. Not complete, doesn't work. * .cvsignore: * AUTHORS: * COPYING: * COPYING.LIB: * INSTALL: * Makefile.am: * NEWS: * README: * RELEASE: * REQUIREMENTS: * autogen.sh: * configure.ac: * docs/.cvsignore: * docs/Makefile.am: * docs/libs/Makefile.am: * docs/plugins/Makefile.am: * docs/version.entities.in: * ext/Makefile.am: * gst-libs/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/gl/Makefile.am: * gst-plugins-gl.doap: * gst-plugins-gl.spec.in: * gst/Makefile.am: * m4/.cvsignore: * m4/Makefile.am: * pkgconfig/.cvsignore: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-gl-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-gl.pc.in: * sys/Makefile.am: * tests/Makefile.am: * tests/check/Makefile.am: * tests/examples/Makefile.am: * tests/icles/Makefile.am: * tools/Makefile.am: * win32/common/config.h.in: 2008-01-06 03:01:39 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/gstglupload.c: [052/906] * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstglupload.c: Handle xoverlay exposes correctly. This means glimagesink works correctly most of the time in totem (fullscreening being an execption). Doesn't handle expose events directly to the GL window. 2008-01-06 01:19:48 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/gstopengl.c: [051/906] * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstopengl.c: Reenable video/x-raw-rgb and x-raw-yuv for glimagesink. Enable vblank synchronization. Remove unused code. 2007-12-31 07:55:23 +0000 David Schleef * gst/gl/Makefile.am: [050/906] * configure.ac: * sys/glsink/Makefile.am: Switch to using pkgconfig to detect libGL. Since we use recent features added to Mesa, there's no point in adding a check for pre-pkgconfig versions. 2007-12-29 00:37:40 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/gstglconvert.c: * gst/gl/gstgldownload.c: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: * gst/gl/gstglfilterexample.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [049/906] * configure.ac: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Major cleanup of code. Convert glupload to BaseTransform. Handle caps negotiation mostly correctly. Reenable in build. 2007-12-27 05:26:05 +0000 David Schleef * gst/gl/glimagesink.c: * gst/gl/gstglupload.c: [048/906] * sys/glsink/glimagesink.c: * sys/glsink/gstglupload.c: Change glimagesink over to using GL buffers. This breaks glimagesink for normal operation, but should be fixed soon. 2007-12-27 04:15:26 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst/gl/gltestsrc.c: * gst/gl/gstgldownload.c: * gst/gl/gstglfilter.c: * gst/gl/gstglfilterexample.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: [047/906] * sys/glsink/gltestsrc.c: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Convert gldownload to BaseTransform. Make glfilterexample visually interesting. Add support for various formats to downloading. Fix a few places where we leak GL state to other elements (bad, but hard to prevent). 2007-12-27 00:52:22 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/BUGS: * gst/gl/Makefile.am: * gst/gl/color_matrix.c: * gst/gl/gstglconvert.c: * gst/gl/gstglfilter.c: * gst/gl/gstglfilter.h: * gst/gl/gstglfilterexample.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [046/906] * sys/glsink/BUGS: * sys/glsink/Makefile.am: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Remove code that handles non-texture buffers. Add a GstGLBufferFormat type that corresponds to how to use the texture, not the original video format. Convert gstflfilter.c into a base class, add glfilterexample and glconvert elements. * sys/glsink/color_matrix.c: Minor ramblings about color conversion matrices. 2007-12-25 00:34:13 +0000 David Schleef * gst-libs/gst/gl/gstgldisplay.c: * gst/gl/Makefile.am: * gst/gl/gltestsrc.c: * gst/gl/gltestsrc.h: * gst/gl/gstgldownload.c: * gst/gl/gstgltestsrc.c: * gst/gl/gstgltestsrc.h: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [045/906] * sys/glsink/Makefile.am: * sys/glsink/gltestsrc.c: * sys/glsink/gltestsrc.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstgltestsrc.h: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Add gltestsrc element, a duplicate of videotestsrc that uses GL rendering to create images. More cleanup. 2007-12-24 21:26:38 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst/gl/gstgldownload.c: * gst/gl/gstglfilter.c: [044/906] * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: Clean up code. Fix a few leaks. 2007-12-24 21:04:45 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst-libs/gst/gl/gstgldisplay.c: * gst-libs/gst/gl/gstgldisplay.h: * gst/gl/Makefile.am: * gst/gl/glimagesink.h: [043/906] * sys/glsink/Makefile.am: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: Rename glvideo.[ch] to gstgldisplay.[ch]. 2007-12-24 20:53:55 +0000 David Schleef * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/glvideo.c: * gst/gl/glvideo.h: * gst/gl/gstgldownload.c: * gst/gl/gstglfilter.c: * gst/gl/gstglupload.c: [042/906] * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: Rewrite a bunch of code to use textures as the intermediate instead of renderbuffers. upload, download, filtering all work. 2007-12-22 05:01:57 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: * gst/gl/glvideo.c: * gst/gl/glvideo.h: * gst/gl/gstgldownload.c: * gst/gl/gstglupload.c: [041/906] * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglupload.c: A careful read of the documentation reveals that I can't use renderbuffers as textures. Duh. Checkpoint because I'm about to rewrite a bunch of code. 2007-12-21 00:03:10 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst-libs/gst/gl/gstglbuffer.c: * gst-libs/gst/gl/gstglbuffer.h: * gst/gl/Makefile.am: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/glvideo.c: * gst/gl/glvideo.h: * gst/gl/gstgldownload.c: * gst/gl/gstglfilter.c: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: [040/906] * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Switch to using framebuffer_objects instead of GLXPixmaps, because that's what my driver supports. Remove GLDrawable, since GstGLDisplay now has a default drawable and context. 2007-12-18 01:25:57 +0000 David Schleef * gst/gl/Makefile.am: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/glvideo.c: * gst/gl/glvideo.h: * gst/gl/gstglupload.c: * gst/gl/gstopengl.c: * gst/gl/gstvideo-common.c: * gst/gl/gstvideo-common.h: [039/906] * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstopengl.c: * sys/glsink/gstglupload.c: Use new GstVideoFormat checked into -base. Add new glupload element to upload raw video into a GLXPixbuf. Untested. Will likely crash your motorcycle if you try it. * sys/glsink/gstvideo-common.c: * sys/glsink/gstvideo-common.h: Remove. 2007-12-16 22:57:21 +0000 David Schleef * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/glvideo.c: * gst/gl/glvideo.h: [038/906] * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: Rename GLVideo* to GstGL*. 2007-12-16 00:16:46 +0000 David Schleef * gst-libs/gst/gl/glextensions.c: * gst-libs/gst/gl/glextensions.h: * gst/gl/Makefile.am: * gst/gl/glvideo.c: [037/906] * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: Add vblank synchronization. Isn't really working on my driver. :( 2007-12-15 19:31:23 +0000 David Schleef * gst/gl/Makefile.am: * gst/gl/glimagesink.c: * gst/gl/glvideo.c: * gst/gl/glvideo.h: * gst/gl/gstvideo-common.c: * gst/gl/gstvideo-common.h: [036/906] * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstvideo-common.c: * sys/glsink/gstvideo-common.h: Add support for xRGB, xBGR, and AYUV. Re-add support for power-of-2 textures. 2007-12-15 06:33:36 +0000 David Schleef * gst/gl/Makefile.am: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: * gst/gl/glvideo.c: * gst/gl/glvideo.h: * gst/gl/gstopengl.c: * gst/gl/gstvideo-common.c: * gst/gl/gstvideo-common.h: [035/906] * sys/glsink/gstvideo-common.c: * sys/glsink/gstvideo-common.h: Pull together some common raw video functions into one location. This should eventually move to -base. * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstopengl.c: Use the new video-common.h stuff. Readd support for RGB video. 2007-12-14 16:23:06 +0000 Christian Schaller * gst/gl/Makefile.am: [034/906] update spec file and add two missing files for disting 2007-12-12 02:33:12 +0000 David Schleef * gst/gl/Makefile.am: * gst/gl/glimagesink.c: * gst/gl/glvideo.c: * gst/gl/glvideo.h: [033/906] * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: Split out gl-related code into a separate file with a sensible API. Major cleanup. Still crashes occasionally due to different threads touching bits at the same time. 2007-06-06 15:58:31 +0000 Jan Schmidt * gst/gl/glimagesink.c: [032/906] * sys/glsink/glimagesink.c: (gst_glimage_sink_stop), (gst_glimage_sink_create_window), (gst_glimage_sink_init_display): Sprinkle in some XSync calls to avoid raciness with broken drivers (ATI) when re-using a single glimagesink. 2007-05-18 12:39:49 +0000 Jan Schmidt * gst/gl/glimagesink.c: [031/906] * sys/glsink/glimagesink.c: (gst_glimage_sink_init_display): Update the cached caps after opening the display so that we report only the supported caps formats, not just the template caps. Fixes: #439405 2007-04-03 22:36:47 +0000 David Schleef * gst/gl/glimagesink.c: [030/906] * sys/glsink/glimagesink.c: Fix handling of video/x-raw-yuv. Add overlay handling. 2006-09-23 00:28:35 +0000 David Schleef * gst/gl/glimagesink.c: [029/906] * sys/glsink/glimagesink.c: Fix problems when the element cannot open the display. (fixes #357212) 2006-09-22 15:59:59 +0000 Tim-Philipp Müller * gst/gl/glimagesink.c: [028/906] * ext/directfb/dfbvideosink.c: (plugin_init): Lower rank from SECONDARY to MARGINAL. Plugins in -bad that might be autoplugged shouldn't trump plugins in -base, -good or -ugly (in this case ximagesink). * sys/glsink/glimagesink.c: (plugin_init): Set rank to NONE to prevent it from being autoplugged until errors are handled properly (see #357212). 2006-08-15 19:29:58 +0000 Tim-Philipp Müller * gst/gl/glimagesink.c: [027/906] * ext/libfame/gstlibfame.c: (gst_fameenc_get_property): * sys/glsink/glimagesink.c: (gst_glimage_sink_get_property): Fix leaks (#351502). 2006-06-23 09:09:44 +0000 Tim-Philipp Müller * gst/gl/glimagesink.c: [026/906] * ext/directfb/dfbvideosink.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/theora/theoradec.c: * gst/freeze/gstfreeze.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * sys/glsink/glimagesink.c: Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro. 2006-04-25 21:56:38 +0000 Stefan Kost * gst/gl/glimagesink.c: [025/906] * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cdaudio/gstcdaudio.c: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init): * ext/faac/gstfaac.c: (gst_faac_base_init): * ext/faad/gstfaad.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbisfile.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: (gst_mms_base_init): * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init): * ext/nas/nassink.c: (gst_nassink_base_init): * ext/neon/gstneonhttpsrc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.c: * ext/swfdec/gstswfdec.c: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkinenc.c: * ext/theora/theoradec.c: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init): * gst/chart/gstchart.c: * gst/colorspace/gstcolorspace.c: * gst/deinterlace/gstdeinterlace.c: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init): * gst/festival/gstfestival.c: * gst/filter/gstbpwsinc.c: * gst/filter/gstiir.c: * gst/filter/gstlpwsinc.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: (gst_puzzle_base_init): * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg2sub/gstmpeg2subt.c: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/multifilesink/gstmultifilesink.c: * gst/overlay/gstoverlay.c: * gst/passthrough/gstpassthrough.c: * gst/playondemand/gstplayondemand.c: * gst/qtdemux/qtdemux.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/smooth/gstsmooth.c: * gst/smoothwave/gstsmoothwave.c: * gst/spectrum/gstspectrum.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/switch/gstswitch.c: * gst/tta/gstttadec.c: (gst_tta_dec_base_init): * gst/tta/gstttaparse.c: (gst_tta_parse_base_init): * gst/vbidec/gstvbidec.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/virtualdub/gstxsharpen.c: * gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init): * gst/y4m/gsty4mencode.c: * sys/cdrom/gstcdplayer.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsink.c: * sys/glsink/glimagesink.c: * sys/qcam/gstqcamsrc.c: * sys/v4l2/gstv4l2src.c: * sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init): * sys/ximagesrc/ximagesrc.c: Define GstElementDetails as const and also static (when defined as global) 2006-04-01 10:09:11 +0000 Thomas Vander Stichele * gst/gl/glimagesink.c: [024/906] rework build; add translations for v4l2 2006-02-25 21:40:08 +0000 Julien Moutte [023/906] 2006-02-25 Julien MOUTTE * sys/glsink/glimagesink.c: It doesn't seem we need GLU.h 2006-02-22 14:37:20 +0000 Jan Schmidt * gst/gl/Makefile.am: * gst/gl/glimagesink.c: [022/906] * configure.ac: * sys/glsink/Makefile.am: Merge patch from #317048 for building on Cygwin. Patch by Cygwin Ports maintainer. * sys/glsink/glimagesink.c: (gst_glimage_sink_init_display): Move normal debug output to LOG level not ERROR. 2006-02-14 11:36:30 +0000 Andy Wingo [021/906] 2006-02-14 Andy Wingo * sys/glsink/glimagesink.c (gst_glimage_sink_init): Come on schleef, don't break me gst-inspect -a. 2006-01-30 15:47:47 +0000 Andy Wingo * gst/gl/Makefile.am: [020/906] 2006-01-30 Andy Wingo * sys/glsink/Makefile.am (libgstglimagesink_la_LIBADD) (libgstglimagesink_la_CFLAGS): Add PLUGINS_BASE cflags and libs. 2006-01-28 12:45:54 +0000 Edward Hervey * gst/gl/Makefile.am: [019/906] * sys/glsink/Makefile.am: glimagesink.h is dead, long live glimagesink.h 2006-01-28 04:39:18 +0000 David Schleef * gst/gl/Makefile.am: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: [018/906] * configure.ac: * sys/Makefile.am: * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: revival of glimagesink. Kind of works. 2005-11-21 14:33:11 +0000 Jan Schmidt * gst/gl/glimagesink.c: [017/906] * ext/audioresample/gstaudioresample.c: * ext/polyp/polypsink.c: (gst_polypsink_sink_fixate): * gst/librfb/gstrfbsrc.c: (gst_rfbsrc_fixate): * gst/modplug/gstmodplug.cc: * sys/glsink/glimagesink.c: (gst_glimagesink_fixate): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_fixate): Rename gst_caps_structure_fixate_* to gst_structure_fixate_* (#322027) 2005-10-12 14:29:55 +0000 Stefan Kost * gst/gl/glimagesink.c: [016/906] * examples/indexing/indexmpeg.c: (main): * ext/artsd/gstartsdsink.c: (gst_artsdsink_open_audio), (gst_artsdsink_close_audio), (gst_artsdsink_change_state): * ext/artsd/gstartsdsink.h: * ext/audiofile/gstafparse.c: (gst_afparse_open_file), (gst_afparse_close_file): * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.c: (gst_afsink_open_file), (gst_afsink_close_file), (gst_afsink_chain), (gst_afsink_change_state): * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.c: (gst_afsrc_open_file), (gst_afsrc_close_file), (gst_afsrc_change_state): * ext/audiofile/gstafsrc.h: * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_init): * ext/directfb/directfbvideosink.c: (gst_directfbvideosink_init): * ext/dts/gstdtsdec.c: (gst_dtsdec_init): * ext/jack/gstjack.h: * ext/jack/gstjackbin.c: (gst_jack_bin_init), (gst_jack_bin_change_state): * ext/musepack/gstmusepackdec.c: (gst_musepackdec_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_init): * ext/nas/nassink.c: (gst_nassink_open_audio), (gst_nassink_close_audio), (gst_nassink_change_state): * ext/nas/nassink.h: * ext/polyp/polypsink.c: (gst_polypsink_init): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_change_state): * ext/sdl/sdlvideosink.h: * ext/smoothwave/gstsmoothwave.c: (gst_smoothwave_init): * ext/sndfile/gstsf.c: (gst_sf_set_property), (gst_sf_change_state), (gst_sf_release_request_pad), (gst_sf_open_file), (gst_sf_close_file), (gst_sf_loop): * ext/sndfile/gstsf.h: * ext/swfdec/gstswfdec.c: (gst_swfdec_init): * ext/tarkin/gsttarkindec.c: (gst_tarkindec_init): * gst/apetag/apedemux.c: (gst_ape_demux_init): * gst/cdxaparse/gstcdxaparse.c: (gst_cdxaparse_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_init): * gst/festival/gstfestival.c: (gst_festival_change_state): * gst/festival/gstfestival.h: * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_init): * gst/multifilesink/gstmultifilesink.c: (gst_multifilesink_init), (gst_multifilesink_set_location), (gst_multifilesink_open_file), (gst_multifilesink_close_file), (gst_multifilesink_next_file), (gst_multifilesink_pad_query), (gst_multifilesink_handle_event), (gst_multifilesink_chain), (gst_multifilesink_change_state): * gst/multifilesink/gstmultifilesink.h: * gst/videodrop/gstvideodrop.c: (gst_videodrop_init): * sys/cdrom/gstcdplayer.c: (cdplayer_init): * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_init), (dxr3audiosink_open), (dxr3audiosink_close), (dxr3audiosink_chain_pcm), (dxr3audiosink_chain_ac3), (dxr3audiosink_change_state): * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.c: (dxr3spusink_init), (dxr3spusink_open), (dxr3spusink_close), (dxr3spusink_chain), (dxr3spusink_change_state): * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.c: (dxr3videosink_init), (dxr3videosink_open), (dxr3videosink_close), (dxr3videosink_write_data), (dxr3videosink_change_state): * sys/dxr3/dxr3videosink.h: * sys/glsink/glimagesink.c: (gst_glimagesink_init): * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_change_state), (gst_qcamsrc_open), (gst_qcamsrc_close): * sys/qcam/gstqcamsrc.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_init): * sys/vcd/vcdsrc.c: (gst_vcdsrc_set_property), (gst_vcdsrc_get), (gst_vcdsrc_open_file), (gst_vcdsrc_close_file), (gst_vcdsrc_change_state), (gst_vcdsrc_recalculate): * sys/vcd/vcdsrc.h: renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition 2005-09-05 17:20:28 +0000 Jan Schmidt * gst/gl/glimagesink.c: [015/906] Fix up all the state change functions. 2004-11-01 14:43:38 +0000 Jan Schmidt * gst/gl/glimagesink.c: [014/906] * ext/alsa/gstalsa.c: (gst_alsa_class_init), (gst_alsa_dispose), (gst_alsa_finalize): * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init), (gst_cdaudio_finalize): * ext/cdparanoia/gstcdparanoia.c: (cdparanoia_class_init), (cdparanoia_finalize): * ext/divx/gstdivxdec.c: (gst_divxdec_dispose): * ext/divx/gstdivxenc.c: (gst_divxenc_dispose): * ext/dvdread/dvdreadsrc.c: (dvdreadsrc_class_init), (dvdreadsrc_finalize): * ext/flac/gstflacdec.c: (gst_flacdec_class_init), (gst_flacdec_finalize): * ext/flac/gstflacenc.c: (gst_flacenc_class_init), (gst_flacenc_finalize): * ext/gnomevfs/gstgnomevfssink.c: (gst_gnomevfssink_class_init), (gst_gnomevfssink_finalize): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnomevfssrc_class_init), (gst_gnomevfssrc_finalize): * ext/libfame/gstlibfame.c: (gst_fameenc_class_init), (gst_fameenc_finalize): * ext/nas/nassink.c: (gst_nassink_class_init), (gst_nassink_finalize): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_finalize), (gst_sdlvideosink_class_init): * ext/sndfile/gstsf.c: (gst_sf_dispose): * gst-libs/gst/mixer/mixertrack.c: (gst_mixer_track_dispose): * gst-libs/gst/tuner/tunerchannel.c: (gst_tuner_channel_dispose): * gst-libs/gst/tuner/tunernorm.c: (gst_tuner_norm_dispose): * gst-libs/gst/xwindowlistener/xwindowlistener.c: (gst_x_window_listener_dispose): * gst/audioscale/gstaudioscale.c: * gst/playondemand/gstplayondemand.c: (play_on_demand_class_init), (play_on_demand_finalize): * gst/videofilter/gstvideobalance.c: (gst_videobalance_dispose): * gst/videoscale/gstvideoscale.c: (gst_videoscale_chain): * sys/cdrom/gstcdplayer.c: (cdplayer_class_init), (cdplayer_finalize): * sys/glsink/glimagesink.c: (gst_glimagesink_finalize), (gst_glimagesink_class_init): * sys/oss/gstosselement.c: (gst_osselement_class_init), (gst_osselement_finalize): * sys/oss/gstosssink.c: (gst_osssink_dispose): * sys/oss/gstosssrc.c: (gst_osssrc_dispose): * sys/v4l/gstv4lelement.c: (gst_v4lelement_dispose): Fixes a bunch of problems with finalize and dispose functions, either assumptions that dispose is only called once, or not calling the parent class dispose/finalize function 2004-08-27 19:18:24 +0000 David Schleef * gst/gl/glimagesink.c: [013/906] * sys/glsink/glimagesink.c: (gst_glimagesink_ximage_put), (gst_glimagesink_xwindow_new), (gst_glimagesink_xcontext_get), (gst_glimagesink_fixate): Move local variable declarations to make gcc-2.95 happy. 2004-08-09 20:16:48 +0000 David Schleef * gst/gl/ARB_multitexture.h: * gst/gl/EXT_paletted_texture.h: * gst/gl/NV_register_combiners.h: * gst/gl/gstgl_nvimage.c: * gst/gl/gstgl_pdrimage.c: * gst/gl/gstgl_rgbimage.c: * gst/gl/gstglsink.c: * gst/gl/gstglsink.h: * gst/gl/gstglxwindow.c: * gst/gl/regcomb_yuvrgb.c: [012/906] * sys/glsink/ARB_multitexture.h: Remove old files. * sys/glsink/EXT_paletted_texture.h: * sys/glsink/NV_register_combiners.h: * sys/glsink/gstgl_nvimage.c: * sys/glsink/gstgl_pdrimage.c: * sys/glsink/gstgl_rgbimage.c: * sys/glsink/gstglsink.c: * sys/glsink/gstglsink.h: * sys/glsink/gstglxwindow.c: * sys/glsink/regcomb_yuvrgb.c: 2004-08-09 20:14:51 +0000 David Schleef * gst/gl/Makefile.am: * gst/gl/glimagesink.c: * gst/gl/glimagesink.h: [011/906] Patch from Gernot Ziegler rewriting the GL sink plugin. (Bug #147302) * configure.ac: Test for OpenGL * sys/Makefile.am: Use test for OpenGL * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: rewrite * sys/glsink/glimagesink.h: rewrite 2004-03-15 19:32:26 +0000 Thomas Vander Stichele * gst/gl/gstgl_nvimage.c: * gst/gl/gstgl_pdrimage.c: * gst/gl/gstgl_rgbimage.c: * gst/gl/gstglsink.c: * gst/gl/gstglxwindow.c: * gst/gl/regcomb_yuvrgb.c: [010/906] don't mix tabs and spaces 2004-03-15 16:32:53 +0000 Johan Dahlin * gst/gl/ARB_multitexture.h: * gst/gl/EXT_paletted_texture.h: * gst/gl/NV_register_combiners.h: * gst/gl/gstglsink.h: [009/906] * *.h: Revert indenting 2004-03-14 22:34:32 +0000 Thomas Vander Stichele * gst/gl/ARB_multitexture.h: * gst/gl/EXT_paletted_texture.h: * gst/gl/NV_register_combiners.h: * gst/gl/gstgl_nvimage.c: * gst/gl/gstgl_pdrimage.c: * gst/gl/gstgl_rgbimage.c: * gst/gl/gstglsink.c: * gst/gl/gstglsink.h: * gst/gl/gstglxwindow.c: * gst/gl/regcomb_yuvrgb.c: [008/906] gst-indent 2004-01-12 04:15:47 +0000 David Schleef * gst/gl/gstgl_nvimage.c: * gst/gl/gstgl_pdrimage.c: * gst/gl/gstglsink.c: [007/906] * ext/ffmpeg/gstffmpeg.c: * ext/ffmpeg/gstffmpegcodecmap.c: * ext/ffmpeg/gstffmpegdec.c: * ext/ffmpeg/gstffmpegenc.c: * ext/ffmpeg/gstffmpegprotocol.c: * ext/gdk_pixbuf/gstgdkanimation.c: * ext/jpeg/gstjpeg.c: * ext/libpng/gstpng.c: * ext/mpeg2dec/perftest.c: * ext/speex/gstspeex.c: * gst-libs/gst/resample/dtos.c: * gst/intfloat/gstintfloatconvert.c: * gst/oneton/gstoneton.c: * gst/rtjpeg/RTjpeg.c: * gst/rtp/gstrtp.c: * sys/dxr3/dxr3init.c: * sys/glsink/gstgl_nvimage.c: * sys/glsink/gstgl_pdrimage.c: * sys/glsink/gstglsink.c: * testsuite/gst-lint: Make sure everybody wraps #include "config.h" in #ifdef HAVE_CONFIG_H 2003-12-22 01:47:08 +0000 David Schleef * gst/gl/gstglsink.c: [006/906] Merge CAPS branch 2003-12-04 10:37:36 +0000 Andy Wingo * gst/gl/gstglsink.c: [005/906] remove copyright field from plugins 2003-11-07 12:46:52 +0000 Ronald S. Bultje * gst/gl/gstgl_rgbimage.c: * gst/gl/gstglxwindow.c: * gst/gl/regcomb_yuvrgb.c: [004/906] Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files 2003-11-06 00:27:03 +0000 madmac * gst/gl/gstglsink.c: [003/906] updates to glsink 2003-10-31 16:40:20 +0000 madmac * gst/gl/ARB_multitexture.h: * gst/gl/gstgl_nvimage.c: * gst/gl/gstgl_rgbimage.c: * gst/gl/gstglsink.c: * gst/gl/gstglxwindow.c: * gst/gl/regcomb_yuvrgb.c: [002/906] glsink with correct threading support 2003-10-28 18:54:20 +0000 madmac * gst/gl/ARB_multitexture.h: * gst/gl/EXT_paletted_texture.h: * gst/gl/Makefile.am: * gst/gl/NV_register_combiners.h: * gst/gl/gstgl_nvimage.c: * gst/gl/gstgl_pdrimage.c: * gst/gl/gstgl_rgbimage.c: * gst/gl/gstglsink.c: * gst/gl/gstglsink.h: * gst/gl/gstglxwindow.c: * gst/gl/regcomb_yuvrgb.c: [001/906] welcome to glsink for 0.7.x :) 2014-03-14 18:23:51 +0100 Andoni Morales Alastruey * configure.ac: * sys/winks/Makefile.am: * sys/winks/gstksclock.c: * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideosrc.c: * sys/winks/gstksvideosrc.h: * sys/winks/kshelpers.c: * sys/winks/ksvideohelpers.c: winks: port to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=702041 2014-03-15 15:17:43 +0100 Nicolas Dufresne * gst/y4m/gsty4mdec.c: y4mdec: check for VIDEO meta instead of CROP meta This element only need stride support, but checks for CROP_META, which is a bit too much, even though this works as CROP imply having VIDEO meta. https://bugzilla.gnome.org/show_bug.cgi?id=726255 2014-03-04 13:19:55 +0100 Stefan Ringel * docs/plugins/gst-plugins-bad-plugins.args: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: mpegts: change bandwidth to DVBv5 values Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=725463 2013-10-31 14:27:10 +0100 Jesper Larsen * tests/examples/mpegts/ts-parser.c: examples: ts-parser: Add table_id_name function https://bugzilla.gnome.org/show_bug.cgi?id=721682 2013-11-19 11:36:14 +0100 Jesper Larsen * tests/examples/mpegts/ts-parser.c: examples: ts-parser: Add DVB teletext/subtitling https://bugzilla.gnome.org/show_bug.cgi?id=721682 2014-03-03 13:07:47 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Support Bluray DTS/DTS-HD and AC3+/TrueHD streams Apart from just adding detection of the proper stream type, we also need to only output the first substream (0x71) which contains the core substream. While this does not provide *full* DTS-HD support (since it will miss the complementary substreams), it will still work in the way legacy (non-DTS-HD) bluray players would work. https://bugzilla.gnome.org/show_bug.cgi?id=725563 2014-03-13 14:41:06 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Fix string order in warning message 2014-03-09 18:41:28 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Always calculate the current download rate Also take into account the last download rate when calculating it. 2014-03-11 10:32:46 +0100 Aurélien Zanelli * ext/sbc/gstsbcenc.c: sbcenc: Allow user to set channel-mode Don't return error when channel-mode is already set, just check that it is coherent with number of channels. https://bugzilla.gnome.org/show_bug.cgi?id=726098 2014-03-10 11:19:46 +0200 Sreerenj Balachandran * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Differentiate the mpeg-2 stream from mpeg-1 based on pic_ext Presence of picture extension header identifies the stream as mpeg2. We are supposed to set the mpegversion to 2 if there is a picextension instead of blindly setting the version to 1 https://bugzilla.gnome.org/show_bug.cgi?id=726028 2014-03-11 22:36:01 +0100 Stefan Sauer * gst/audiomixer/gstaudiomixer.c: audiomixer: set a group-id on the stream-start event Set a default group-id to fix a warning printed by the sink. 2014-03-10 22:48:04 +0100 Mathieu Duponchelle * gst/frei0r/gstfrei0rfilter.c: frei0rfilter: fix memory corruption on sink caps changes. When the input size changed, the frei0r filters didn't take it into account and ended up corrupting memory. Fixes #726069 2014-03-11 15:30:19 +0100 Sebastian Dröge * sys/applemedia/atdec.c: atdec: Add some more debug output 2014-03-11 14:47:04 +0100 Sebastian Dröge * sys/applemedia/atdec.c: * sys/applemedia/atdec.h: atdec: Implement draining properly 2014-03-11 14:37:49 +0100 Sebastian Dröge * sys/applemedia/atdec.c: atdec: First dequeue a buffer before enqueueing anything from the queue Required for offline rendering according to the docs. wtf. 2014-03-11 14:32:12 +0100 Sebastian Dröge * sys/applemedia/atdec.c: * sys/applemedia/atdec.h: atdec: Keep track of the current position It's required to set a valid sample time for decoding on iOS. 2014-03-11 14:24:59 +0100 Sebastian Dröge * sys/applemedia/atdec.c: * sys/applemedia/atdec.h: atdec: Always try to pull one decoded frame out of the queue ... instead of doing magic calculations with the buffer duration. 2014-03-11 14:22:57 +0100 Sebastian Dröge * sys/applemedia/atdec.c: atdec: Handle errors in handle_frame() properly 2014-03-11 14:14:23 +0100 Sebastian Dröge * sys/applemedia/atdec.c: atdec: Call AudioQueueReset() for flushing AudioQueueFlush() is for draining all remaining data. 2014-03-11 11:18:22 +0100 Sebastian Dröge * sys/applemedia/atdec.c: * sys/applemedia/coremediabuffer.c: * sys/applemedia/vtutil.c: atdec: Set correct number of frames for MP3 2014-03-11 11:18:11 +0100 Sebastian Dröge * sys/applemedia/atdec.c: atdec: Initialize the audio description with zeroes 2014-03-11 11:14:21 +0100 Sebastian Dröge * sys/applemedia/atdec.c: atdec: Set the correct layer depending on the MP3 caps 2014-03-11 10:26:34 +0100 Wim Taymans * configure.ac: configure: videosignal was ported almost a year ago 2014-03-09 19:38:39 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Fix comparison in bitrate selection 2014-03-07 12:11:59 +0000 Matthieu Bouron * gst/dvdspu/gstdvdspu.c: dvdspu: set proxy allocation flag on the video sink pad https://bugzilla.gnome.org/show_bug.cgi?id=725893 2014-03-07 16:22:50 +0100 Sebastian Dröge * ext/hls/m3u8.c: m3u8: Fix off-by-one in the download range end 2014-03-07 16:22:10 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gstfragment.c: * gst-libs/gst/uridownloader/gsturidownloader.c: uridownload: Handle no buffers before EOS as error instead of crashing 2014-03-06 23:14:10 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Implement proper segment handling https://bugzilla.gnome.org/show_bug.cgi?id=695846 https://bugzilla.gnome.org/show_bug.cgi?id=723268 2014-03-05 10:47:01 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: * gst-libs/gst/uridownloader/gstfragment.c: hlsdemux: Implement handling of byte ranges 2014-02-27 10:54:10 +0100 Zallesov * ext/hls/gsthlsdemux.c: hlsdemux: Fix seeking further than track duration Don't fail the seek but instead send an EOS event from the streaming thread. 2014-03-05 16:02:16 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Switch playlists after pushing the fragment Makes sure we properly set the discont flag for the next buffer, not the current one. 2014-01-10 17:38:09 +0000 Matthieu Bouron * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: handle video/x-raw(ANY) if downstream supports the GstVideoOverlayCompositionMeta API https://bugzilla.gnome.org/show_bug.cgi?id=721950 2014-03-04 17:25:23 +0200 Andres Gomez * sys/wininet/gstwininetsrc.c: wininet: "iradio-mode" property defaults to TRUE As per discussed in bug #725383, it doesn't make much sense to default to FALSE in the "iradio-mode" property. Better, let's sent the header by default and just ignore headers that are not understood, if so. https://bugzilla.gnome.org/show_bug.cgi?id=725659 2014-03-05 00:51:04 +0000 Tim-Philipp Müller * tests/check/elements/mpg123audiodec.c: tests: fix mpg123audiodec test for big-endian architectures 2014-03-05 11:20:27 +0100 Thijs Vermeir * gst/rawparse/gstvideoparse.c: rawparse: increase framerate to maxint 2014-03-05 10:54:47 +0100 Thijs Vermeir * gst/rawparse/gstvideoparse.c: rawparse: increase maximum framerate 2014-03-02 05:25:48 +0100 Sebastian Rasmussen * .gitignore: .gitignore: Ignore gcov intermediate files https://bugzilla.gnome.org/show_bug.cgi?id=725481 2014-03-01 17:13:58 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Implement proper handling of discontinuities It's not really correct yet for seeks but better than what we had before. See https://bugzilla.gnome.org/show_bug.cgi?id=695846 2014-02-28 11:16:27 -0800 Aleix Conchillo Flaqué * ext/srtp/gstsrtpenc.c: srtpenc: unref caps after gst_query_set_caps_result https://bugzilla.gnome.org/show_bug.cgi?id=725412 2014-02-25 11:45:46 +0000 Alex Ashley * ext/hls/m3u8.c: hlsdemux: Segfaults if playlist has no media files hlsdemux causes a null pointer dereference if the media playlist does not contain any media files. The gst_m3u8_client_get_duration function assumes that demux->client->current->files is valid when computing duration. gst_m3u8_client_update needed to be modified to check for the case of downloading an M3U8 file that doesn't contain any media files, and returning an error to gsthlsdemux.c This bug can be reproduced by creating a master m3u8 file that contains one media playlist that points back to the master m3u8 file. For example create a file called bug725134.m3u8: #EXTM3U #EXT-X-VERSION:4 #EXT-X-STREAM-INF:PROGRAM-ID=1, BANDWIDTH=1251135, CODECS="avc1.42001f mp4a.40.2", RESOLUTION=640x352 bug725134.m3u8 https://bugzilla.gnome.org/show_bug.cgi?id=725134 2014-02-28 09:34:59 +0100 Sebastian Dröge * common: Automatic update of common submodule From fe1672e to bcb1518 2014-02-27 22:28:16 +0100 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Don't write after the end of the psm array when initialising it 2014-02-27 21:45:34 +0100 Sebastian Dröge * ext/openal/gstopenalsrc.c: openalsrc: Remove unused function to fix compiler warning 2014-02-27 21:41:53 +0100 Sebastian Dröge * gst/id3tag/id3tag.c: id3tag: Remove unused function to fix compiler warning 2014-02-27 15:49:20 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Init and clear a mutex GLib initialises automatically for us for some reason... but of course does not clear the mutex once the demuxer is destroyed. 2014-02-27 15:41:30 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Unref seek events before returning from the seek handler Otherwise we leak them all. 2014-02-27 12:02:19 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Fix debug output to describe the new reality 2014-02-27 11:53:12 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Warning messages are not fatal Also they need to be parsed with gst_message_parse_warning(), gst_message_parse_error() does not work on them. 2014-02-26 22:26:48 +0100 Stefan Ringel * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: docs: mpegts: add missed docs Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=725278 2014-02-26 21:08:23 +0100 Stefan Ringel * docs/plugins/gst-plugins-bad-plugins.args: docs: dvbsrc: add missed args Signed-off-by: Stefan Ringel https://bugzilla.gnome.org/show_bug.cgi?id=725278 2014-02-26 22:12:23 +0100 Stefan Sauer * common: Automatic update of common submodule From 1a07da9 to fe1672e 2014-02-26 19:18:54 +0100 Stefan Sauer * docs/Makefile.am: docs: remove stray ( in Makefile.am 2014-02-24 22:53:14 -0300 Thiago Santos * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: forward tags that have global scope Instead of dropping all tag events https://bugzilla.gnome.org/show_bug.cgi?id=644395 2014-02-24 22:43:56 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: store global tags to push later Keep a list of current global tags around and push them whenever a new stream is started. Also convert all stream specific tags to global as they are stream specific for the container, so they are global for the streams from within that container. https://bugzilla.gnome.org/show_bug.cgi?id=644395 2014-02-26 11:32:01 +0100 Stefan Sauer * docs/Makefile.am: docs: install prebuilt plugin docs if gtk-doc is disabled Sync to the Makefile.am from gst-plugin-base where it is done right. Fixes #725034 2014-02-21 09:36:51 +0000 Alex Ashley * ext/hls/m3u8.c: hlsdemux: Fix parsing of CODECS and RESOLUTION hlsdemux does not check for the '"' character in #EXT-X-STREAM-INF attributes. The CODECS parameter is an example of an attribute that might use the '"' symbol and might contain a ',' character inside this quoted string. For example: CODECS="avc1.77.30, mp4a.40.2" hlsdemux does not correctly parse the RESOLUTION attribute, it assumes that an '=' character is used to delineate the width and height values, but the HLS RFC states that a 'x' character must be used as the delimiter between width and height. https://bugzilla.gnome.org/show_bug.cgi?id=725140 2014-02-21 09:30:49 +0000 Alex Ashley * ext/hls/m3u8.c: hlsdemux: Fix for URLs that contain a '/' in the query parameter If the URL for the master manifest files contains a '/' character in the query parameter (for example http://example.net/1054559_h264_1500k.mp4/master.m3u8?acl=/*1054559_h264_1500k.mp4), hlsdemux is incorrectly converting the relative URLs of the media playlists in to absolute URLs. It is incorrectly using the last '/' it finds in the URL. According to RFC3986 the '/' character is allowed in the query part of the URL. https://bugzilla.gnome.org/show_bug.cgi?id=725137 2013-12-02 10:01:12 +0000 Julien Isorce * ext/eglgles/gsteglglessink.c: * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: eglglessink: move GstEGLImageBufferPool to gstegl lib https://bugzilla.gnome.org/show_bug.cgi?id=706054 2014-02-25 12:17:20 +0100 Jesper Larsen * tests/check/libs/mpegts.c: test: mpegts: Add check for SDT https://bugzilla.gnome.org/show_bug.cgi?id=724981 2014-02-22 16:46:31 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add constructor for dvb service descriptor https://bugzilla.gnome.org/show_bug.cgi?id=724981 2014-02-25 10:28:38 +0100 Jesper Larsen * docs/libs/gst-plugins-bad-libs-sections.txt: docs: mpegts: Add new SDT API https://bugzilla.gnome.org/show_bug.cgi?id=724981 2014-02-22 16:47:57 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: mpegts: Add support for creation of SDT https://bugzilla.gnome.org/show_bug.cgi?id=724981 2014-02-22 16:41:22 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: mpegts: Add transport_stream_id to GstMpegTsSDT The transport_stream_id is contained in the subtable extension. Introduce a variable for readability. https://bugzilla.gnome.org/show_bug.cgi?id=724981 2014-02-25 11:29:06 +0100 Edward Hervey * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: Initialize PSM fully Some gaps were missed in the previous version. Instead just initialize the whole table to -1 first and then fill what needs to be specified. 2014-02-24 15:52:53 +0100 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Fix descriptor checks Only use g_return_val_if_fail on provided direct arguments. The others get checked all the time. https://bugzilla.gnome.org/show_bug.cgi?id=724464 2014-02-24 14:56:03 -0500 Kipp Cannon * gst/debugutils/debugutilsbad.c: debugutilsbad.c fails gst-indent check this patch is "gst-indent debugutilsbad.c" https://bugzilla.gnome.org/show_bug.cgi?id=725090 2014-02-22 18:22:26 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: network_name: Check converted length Check the length of the name argument after it has been converted. https://bugzilla.gnome.org/show_bug.cgi?id=723953 2014-02-08 22:47:20 +0100 Jesper Larsen * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/mpegts.c: tests: Add test for mpegts library Tests for PAT, PMT, and NIT Creates a new table, and populates it with descriptors. Parses the newly created tables, and checks the data. Creates a GstMpegTsSection from the tables, and packetize the sections. The packetized section data is byte-wise compared to a static byte array https://bugzilla.gnome.org/show_bug.cgi?id=723953 2014-02-24 11:06:28 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: examples: gst-camerabin2-test: new 1.x raw caps format Remove -yuv and -rgb from video/x-raw as those are from the old 0.10 version 2014-02-23 15:18:22 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Keep track of timestamps by adding them up during playback ...instead of adding them from the start of playlist every time. This among other things fixes timestamps for live streams, where the playlist is some kind of ringbuffer of fragments and thus adding from the beginning of the playlist will miss the past fragments. https://bugzilla.gnome.org/show_bug.cgi?id=724983 2014-02-23 11:01:57 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Deprecate fragments-cache property The buffering/caching is handling completely different now and outside of hlsdemux. 2014-02-18 19:16:35 -0600 Brendan Long * ext/kate/gstkatedec.c: * ext/kate/gstkateutil.c: * ext/kate/gstkateutil.h: katedec: Merge new tags with existing tags to prevent overwriting demuxer tags https://bugzilla.gnome.org/show_bug.cgi?id=724699 2014-02-20 15:09:36 +0100 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/hls/gsthlsdemux.c: * ext/smoothstreaming/gstmssdemux.c: ext: Use Codec/Demuxer/Adaptive for the adaptive streaming demuxers 2014-02-17 09:19:32 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Refactor threading and downloading We now download fragments as fast as possible and push them downstream while another thread is just responsible for updating live playlists every now and then. This simplifies the code a lot and together with the new buffering mode for adaptive streams in multiqueue makes streams start much faster. Also simplify threading a bit and hopefully make the GstTask usage safer. 2014-02-19 09:35:45 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Only switch pads if the caps are changing 2014-02-21 12:33:42 +0000 Chris Bass * ext/dash/gstdashdemux.c: dashdemux: ensure segments aren't fetched before they're available Incorrect time scaling in gst_dash_demux_wait_for_fragment_to_be_available() means that media segments are fetched before their availablity time. This patch fixes this. https://bugzilla.gnome.org/show_bug.cgi?id=724875 2014-02-21 14:06:24 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Uncomment PAT clearup in _reset The PAT is related to the stream, we therefore want it cleared along with anything stream related. This commented section was from the (old) mpegtsparse and *might* have been related to speeding up DVB start-up. But we have another plan for that. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724716 2014-02-18 10:19:52 +0000 Chris Bass * ext/dash/gstdashdemux.c: dashdemux: initialise demux->last_manifest_update demux->last_manifest_update is not initialised at startup, with the effect that live manifests are reloaded immediately after the download loop begins. This patch fixes this. https://bugzilla.gnome.org/show_bug.cgi?id=724790 2013-12-29 16:00:01 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix ts_to_offset beyond last observed PCR The requested TS might be beyond the last observed PCR. In order to calculate a coherent offset, we need to use the last and previous-to-last groups. https://bugzilla.gnome.org/show_bug.cgi?id=721035 2014-02-12 18:15:44 -0600 Brendan Long * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: Add gst_mpegts_section_get_data, to allow us to get the original binary section data. https://bugzilla.gnome.org/show_bug.cgi?id=724255 2014-02-20 19:08:33 +0100 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Add size guards for descriptors where neeeded Fixes https://bugzilla.gnome.org/show_bug.cgi?id=724464 2014-02-20 18:14:51 +0100 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtssection.c: mpeg-ts: Rename private function Calling it _desc_checks when it was in fact used for sections was a tad confusing ... 2014-02-16 10:45:21 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add support for content descriptor https://bugzilla.gnome.org/show_bug.cgi?id=724034 2014-02-16 10:44:55 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: mpegts: Add support for component descriptor https://bugzilla.gnome.org/show_bug.cgi?id=724034 2014-02-16 10:43:52 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add support for extended event desriptor https://bugzilla.gnome.org/show_bug.cgi?id=724034 2014-02-10 21:52:28 +0100 Stefan Ringel * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add support for DVB terrestrial delivery system descriptor https://bugzilla.gnome.org/show_bug.cgi?id=724069 2014-02-16 10:09:18 +0100 Sebastian Dröge * configure.ac: * sys/Makefile.am: * sys/winks/Makefile.am: configure: Rename all variables related to the winks plugin It does not make sense to call them after directshow if they are for the winks plugin only. https://bugzilla.gnome.org/show_bug.cgi?id=724100 2013-04-08 14:04:10 +0200 Andoni Morales Alastruey * ext/hls/gsthlsdemux.c: hlsdemux: fix update interval with respect of the spec 2014-02-14 12:39:06 +0100 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: amcaudiodec: Calculate number of samples per frame for MP3 and use that Some audio decoders (at least the MP3 decoder on MTK based devices) outputs raw audio in batches of multiple audio frames. We need to handle that properly, otherwise the base class will be kind of unhappy. 2014-02-14 12:33:08 +0100 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: amcaudiodec: Error out if we get an invalid raw audio buffer size 2014-02-14 12:32:31 +0100 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Store return value of gst_caps_merge_structure() The inputs are both invalid afterwards. 2014-02-14 12:31:29 +0100 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Release buffer to Android if allocating output failed 2014-02-14 12:28:50 +0100 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: amcaudiodec: Release buffer back to Android if allocating output fails 2014-02-13 10:21:15 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Keep alive connections if the source supports that 2014-02-13 10:06:48 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Re-use old source element if possible Allows to implement keep-alive handling in the source element. 2014-02-12 18:49:13 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Ignore empty lines in the playlist Based on a patch by Andoni Morales. 2014-02-12 18:47:45 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Make sure to ignore \r in line endings in every case 2014-02-12 18:27:21 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Give a proper name to the srcpads and remove it when resetting the element 2014-02-12 18:06:43 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Fix potential deadlock The streaming thread might use our lock, so shutting down the element while holding that lock calls for problems. 2014-02-12 17:59:45 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Shutdown the source element before unlinking it Otherwise we might get warnings about pushing to unlinked pads. Based on a patch by Andoni Morales. 2014-02-12 16:46:31 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Stop leaking GErrors in some error paths 2012-05-11 13:58:28 +0200 Gil Pedersen * ext/hls/gsthlsdemux.c: hlsdemux: don't pause task when it is stopped This fixes a potential dead-lock situation from GstTask https://bugzilla.gnome.org/show_bug.cgi?id=675869 2014-02-12 16:01:05 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Wait for the update task to finish when shutting down 2014-02-12 15:33:06 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Prevent rounding errors due to division by using gst_util_uint64_scale() 2013-07-25 19:36:48 +0200 Arnaud Vrac * ext/hls/gsthlsdemux.c: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: schedule next update based on the fragment duration 2014-02-12 15:16:23 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Properly error out if caps can't be typefind instead of using NULL caps 2013-07-29 18:00:31 +0200 Arnaud Vrac * ext/hls/gsthlsdemux.c: hlsdemux: log fragment timestamp 2014-02-12 14:10:02 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Use g_ascii_xdigit_value() instead of our own version of it 2014-02-12 13:40:41 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Error out if the key is not 16 bytes large 2014-02-12 13:13:30 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Download playlists with compression, keys and fragments without 2014-02-12 13:11:38 +0100 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: mssdemux: Download the manifest with compression, the fragments without 2014-02-12 13:10:50 +0100 Sebastian Dröge * ext/dash/gstdashdemux.c: dashdemux: Download MPD with compression, the fragments without 2014-02-12 13:08:29 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: Add support for compressed downloads Very useful for playlists, less useful for media files. 2014-02-12 11:26:04 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Don't set the element private data on the srcpads It's not used anyway. 2014-02-12 11:25:41 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Use gst_pad_use_fixed_caps() on the srcpads 2014-02-12 10:59:38 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Cache the key fragment instead of downloading it over and over again 2014-02-12 10:58:45 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Fix cleanup when decryption fails First unmap buffers, then unref them. And also unref the key fragment. 2014-02-11 15:20:58 +0100 Lihua Liu * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: Include timezone information in mail header https://bugzilla.gnome.org/show_bug.cgi?id=724125 2014-02-11 18:15:45 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Don't try decryption if an unsupported method is found 2014-02-11 18:15:07 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Properly parse IV from the playlist Without this every fragment's first 16 bytes will be corrupted if not the fallback IV is used by the playlist. 2014-02-11 15:26:01 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Reset cancelled state after fetching an URI Otherwise it will never ever be able to fetch anything after an error until the user resets it manually. 2014-02-11 14:57:16 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Propagate download errors properly and post error messages if they're fatal 2014-02-11 14:18:32 +0100 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/hls/gsthlsdemux.c: * ext/smoothstreaming/gstmssdemux.c: ext: Update for GstUriDownloader API changes 2014-02-11 14:13:30 +0100 Sebastian Dröge * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: Provide some more details about errors if downloading fails 2014-02-11 09:20:45 +0100 Sebastian Dröge * configure.ac: configure: The winks plugin is not ported to 1.0 yet https://bugzilla.gnome.org/show_bug.cgi?id=724100 2014-02-10 15:38:08 -0800 Aleix Conchillo Flaqué * sys/shm/shmpipe.c: shm: call close() after shutdown() shutdown() doesn't close the file descriptor so we leak sockets if we don't call close(). https://bugzilla.gnome.org/show_bug.cgi?id=724077 2014-02-10 14:33:49 -0800 Aleix Conchillo Flaqué * sys/shm/shmpipe.c: shm: use shutdown() instead of close() we make sure both ends get notified when the socket is closed by using shutdown() instead of close(). https://bugzilla.gnome.org/show_bug.cgi?id=724077 2014-02-10 18:29:23 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Start downloading the next fragment immediately after caching the initial fragments And only afterwards wait until a fragment was played. Otherwise we're keeping our cache most of the time at "fragments-cache" fragments minus one. Also allow setting "fragments-cache" to 1 now to start playback even faster. 2014-02-10 18:27:58 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Start fetching new fragments whenever we have less fragments cached than given by the fragments-cache property Waiting until our cache is empty before starting to fetch the next fragment kind of defeats the purpose of caching multiple fragments. 2014-02-10 18:21:38 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Fix bitrate calculation g_get_monotonic_time() returns microseconds, not nanoseconds. 2014-02-10 17:26:27 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Actually store doubles as such and don't truncate them to ints Fixes broken duration reporting. 2014-02-10 17:25:57 +0100 Sebastian Dröge * ext/hls/m3u8.c: hlsdemux: Use locale-independent int/float parsing functions from GLib 2014-02-10 14:34:40 +0100 Wim Taymans * ext/fluidsynth/gstfluiddec.c: fluiddec: add more soundfont search paths Fedora installs the soundfonts in /usr/share/soundfonts/ so make sure we look there as well. 2014-02-10 08:19:52 +0000 Руслан Ижбулатов * ext/fluidsynth/gstfluiddec.c: Change soundfont file search path for fluiddec Use glib to get a list of system "share" directories, then go through that list, appending 'sounds/sf2/' to each directory to get a soundfont directory, and looking for .sf2 files there. This way fluiddec is able to load sf2 files on W32, because otherwise the path '/usr/share/sounds/sf2' makes no sense there. Fixes #724013 2014-02-10 08:21:04 +0000 Руслан Ижбулатов * configure.ac: Fix winks configure test Fixes #723995 2014-02-10 08:22:05 +0000 Руслан Ижбулатов * sys/winks/Makefile.am: winks: Make headers known to automake Fixes #724003 2014-02-09 18:49:49 +0100 Sebastian Dröge * configure.ac: * ext/hls/Makefile.am: * ext/hls/gsthlsdemux.c: hlsdemux: Prefer to use nettle for decryption but fall-back to libgcrypt nettle is used by newer versions of gnutls, while older versions of gnutls used libgcrypt. Support both for now as not every distro has nettle yet. nettle is preferred as it is more efficient to use and much smaller. 2014-02-09 18:19:33 +0100 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: hlsdemux: Update to non-deprecated GLib thread API 2014-02-09 18:09:36 +0100 Sebastian Dröge * configure.ac: * ext/hls/Makefile.am: * ext/hls/gsthlsdemux.c: * m4/libgcrypt.m4: hlsdemux: Use libgcrypt directly instead of going through gnutls gnutls is also just wrapping gcrypt, but we don't need any of the TLS related functionality. We just need to be able to decrypt AES128-CBC. 2014-02-08 20:08:29 +0100 Sebastian Dröge * tests/check/elements/opus.c: opus: Remove unused variable from unit test 2014-02-08 20:07:57 +0100 Sebastian Dröge * tests/check/elements/kate.c: kate: Remove unused variable from unit test 2014-02-08 20:07:16 +0100 Sebastian Dröge * tests/check/elements/assrender.c: assrender: Fix compiler warning in test error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces] 2014-02-08 19:59:43 +0100 Sebastian Dröge * ext/srtp/gstsrtpdec.c: srtpdec: Fix comparison compiler warning error: comparison of constant -1 with expression of type 'GstSrtpCipherType' is always false 2014-02-08 19:29:33 +0100 Sebastian Dröge * ext/opencv/MotionCells.h: motioncells: Remove unused private fields 2014-02-08 19:28:26 +0100 Sebastian Dröge * ext/opencv/gstsegmentation.cpp: segmentation: Fix integer underflow check error: comparison of unsigned expression < 0 is always false [-Werror,-Wtautological-compare] 2014-02-08 18:58:38 +0100 Sebastian Dröge * ext/directfb/dfbvideosink.c: dfbvideosink: Fix unitialized variable compiler warning 2014-02-08 18:57:30 +0100 Sebastian Dröge * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.h: bz2: Fix typo in header include guards 2014-02-08 18:56:06 +0100 Sebastian Dröge * sys/vdpau/gstvdpvideobufferpool.c: vdpau: Fix comparison compiler warning error: comparison of constant -1 with expression of type 'const GstVideoFormat' is always false 2014-02-08 18:54:58 +0100 Sebastian Dröge * sys/uvch264/gstuvch264_src.c: uvch264src: Fix unitialized variable compiler warnings 2014-02-08 18:48:42 +0100 Sebastian Dröge * gst/id3tag/id3tag.c: id3tag: Fix uninitialized variable compiler warning error: variable 'image_type' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized] 2014-02-08 18:45:10 +0100 Sebastian Dröge * gst/dvdspu/gstdvdspu.c: dvdspu: Remove unused variable 2014-02-08 18:20:22 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: pmt: Detect descriptor length correct 2014-02-08 17:43:03 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: Correctly check for PAT,PMT,CAT,TSDT 2014-02-08 13:08:02 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: Fix some packetizing bugs - Length of NIT stream descriptors was not detected correct - Reserved bits was not set according to EN 300 468, ISO/IEC 13818-1 - Also set output data size if the section was previously packetized https://bugzilla.gnome.org/show_bug.cgi?id=723892 2014-02-07 11:54:07 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Remove or move variable assignments To where they're needed 2014-02-07 11:53:38 +0100 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: dvb-descriptor: Remove unneeded increment 2014-02-07 11:42:51 +0100 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: dvb-descriptor: Fix comparision we want to stop if one OR the other is NULL. 2014-02-06 13:53:49 +0100 Jesper Larsen * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Updated docs with new API 2013-11-19 12:21:31 +0100 Jesper Larsen * gst/mpegtsmux/tsmux/Makefile.am: * gst/mpegtsmux/tsmux/crc.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: Use mpeg-ts lib for PAT/PMT sections Rewrite of the PAT/PMT section handling to use the mpeg-ts library 2013-11-20 11:14:46 +0100 Jesper Larsen * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/Makefile.am: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: mpegtsmux: Add support for muxing SI tables The muxer is now able to include DVB sections in the transport stream. The si-interval property will determine how often the SI tables are muxed into the stream. The section is handled by the mpeg-ts library. Below is a small example that will include a Netork Information Table with a Network Name descriptor in the stream. GstMpegTsNIT *nit; GstMpegTsDescriptor *descriptor; GstMpegTsSection *section; GstElement *mpegtsmux; gst_mpegts_initialize (); nit = gst_mpegts_section_nit_new (); nit->actual_network = TRUE; descriptor = gst_mpegts_descriptor_from_dvb_network_name ("Network name"); g_ptr_array_add (nit->descriptors, descriptor); section = gst_mpegts_section_from_nit (nit); // mpegtsmux should be retrieved from the pipeline gst_mpegts_section_send_event (section, mpegtsmux); gst_mpegts_section_unref (section); 2013-11-19 11:30:33 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegts: Support registration and custom descriptor Support for registration descriptor (0x05) Add function to create a descriptor with custom tag and data 2013-11-19 11:15:52 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add creation of DVB Subtitling descriptor Descriptor tag is 0x59 2013-11-19 10:50:30 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Support parsing of DVB Teletext descriptor Descriptor tag is 0x56 2013-11-20 11:06:03 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: Add support for creating PAT/PMT 2013-11-20 11:04:58 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: Add program_number to GstMpegTsPMT 2013-10-28 14:49:08 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add network name descriptor construction Add function to create a Network Name DVB descriptor. 2013-10-28 14:48:13 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: mpegts: Add support for creating a NIT section Functions that will enable user to create Network Information Tables. 2013-10-28 14:26:39 +0100 Jesper Larsen * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: mpegts: Add network_id to GstMpegTsNIT The network_id is stored in the subtable extension. Make a field in the GstMpegTsNIT for better code readability 2013-10-31 13:47:23 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: Add functions to send sections as events Added function that enables the user to send a GstMpegTsSection as an event to a GstElement. (i.e. mpegtsmux) 2013-10-28 14:44:13 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: mpegts: Add functions to packetize section Sections needs to be packetized for use in i.e. mpegtsmux. These functions handles the generic common parts of a GstMpegTsSection 2013-10-28 14:39:49 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: Add init functions for descriptor/section 2013-10-30 10:43:21 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Add function to encode UTF8 strings This can be used to create descriptors with appropriate character maps 2013-10-30 10:42:07 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Use big endian UCS-2 coding Parsing of control codes requires a big endian character map 2013-10-30 10:33:18 +0100 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Add support for two-way iconv conversions To use in conversions from UTF-8 to another character map 2014-02-06 16:17:39 +0100 Edward Hervey * sys/applemedia-nonpublic/Makefile.am: * sys/applemedia/Makefile.am: applemedia: Fix libtool usage --tag=CC is needed for static build 2014-02-06 14:21:52 +0100 Edward Hervey * gst/mpegtsdemux/gsttsdemux.c: mpegtsdemux: Update plugin license field The original code (old mpegtsparse) from which this plugin was based on was dual-licensed. This allowed usage of the code under any of the licenses (which including LGPL): """ * Alternatively, the contents of this file may be used under the terms of * the GNU Lesser General Public License Version 2 or later (the "LGPL"), * in which case the provisions of the LGPL are applicable instead * of those above. If you wish to allow use of your version of this file only * under the terms of the LGPL, and not to allow others to * use your version of this file under the terms of the MPL, indicate your * decision by deleting the provisions above and replace them with the notice * and other provisions required by the LGPL. If you do not delete * the provisions above, a recipient may use your version of this file under * the terms of the MPL or the LGPL. """ When refactored (leading to the creation of this new plugin), I chose all new code to be LGPL-only (which was allowed for pre-existing code) by removing the MPL sections. The headers were all updated, but not the plugin license field. This commit fixes this. 2014-02-04 14:15:40 -0300 Thiago Santos * tests/check/libs/insertbin.c: tests: insertbin: update tests to 1.x scenario The thread that calls the success/failure callback can be the same that is adding/removing the element as the IDLE probe can happen instantly if the pad is not 'busy'. This required moving some checks for the callback counter around as well as removing some pad pushes from the main test thread as they were made useless after the IDLE pad probe was fixed in core by commit 0324358ebc8122a41ab499a3ef7973b61c3e621b 2014-02-03 23:39:35 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: avoid warning if test is failing In case the test fails the message won't be returned and it will lead to an assertion that might be misleading to those debugging the issue. 2014-02-03 23:10:03 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: stop source to do internal reconfiguration safely In order to be able to change the caps on multiple capsfilters the source element needs to be stopped, otherwise it will get a few reconfigure events and might try to renegotiate while the bin is still transitioning its caps, leading to a not-negotiated failure and the image capture won't happen because the source will be unusable. The solution is to keep the source in paused while the caps are being changed in the bin, and then bring the element back to playing once it is done. Unfortunately this increases the image capture latency, but it should always work. A possible improvement to reduce the latency is to add another signal to be called before 'start-capture': 'prepare-capture'. At this step the camera source should set all caps it needs and get the source ready for doing the capture as soon as 'start-capture' is called. This can be done on a future commit 2014-02-03 23:09:28 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: remove unused variable Probably a left over from 0.10 -> 1.x porting 2014-02-04 17:22:27 +0100 Carlos Rafael Giani * ext/mpg123/gstmpg123audiodec.c: mpg123: improved error report and checks Signed-off-by: Carlos Rafael Giani 2014-02-04 12:52:25 +0100 Duncan Palmer * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Fix race condition between EOS handling and downloading a range https://bugzilla.gnome.org/show_bug.cgi?id=723134 2014-02-04 05:46:16 -0500 Vincent Penquerc'h * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: aiffparse: adaptive buffer size Copied from wavparse, helps with CPU usage on high bitrate files. 2014-02-02 18:17:06 -0800 Dan Kegel * configure.ac: Since b1a756fd, applemedia fails to build on osx 10.7, which lacks VideoToolbox.h... so disable it on OSX if that header is missing. https://bugzilla.gnome.org/show_bug.cgi?id=723508 2014-02-02 13:50:53 +0000 Vincent Penquerc'h * gst/aiff/aiffparse.c: aiffparse: fix data start offset calculation not counting COMM size In particular, this fixes seeking back to the start reading data out of sync with sample start granularity, yielding swapped channels. 2014-01-31 23:43:32 -0300 Thiago Santos * tests/check/elements/gdpdepay.c: tests: gdpdepay: update to 1.x events Tests needed stream start at beginning and segment after the caps event 2014-01-31 18:38:44 -0300 Thiago Santos * gst/gdp/dataprotocol.c: * gst/gdp/dp-private.h: gdp: add DTS to headers 2014-01-31 12:15:49 -0300 Thiago Santos * gst/gdp/gstgdppay.c: * gst/gdp/gstgdppay.h: * tests/check/elements/gdppay.c: gdppay: update to 1.x reality * stream-start-id is mandatory at the beginning, so add that to the gdp headers * caps must be sent before new segment, invert the order from legacy 0.10 code And fix the tests as a ref is now kept for those buffers that compose the header 2014-01-31 16:58:16 -0500 Colin Macdonald * gst/geometrictransform/gstfisheye.c: fisheye: Fix documentation https://bugzilla.gnome.org/show_bug.cgi?id=723398 2014-01-29 16:32:30 +0100 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Default framerate to 0/1 when no informations found It is not perfect but it allows us to be sure that the mandatory 'framerate' field is present in the caps. As soon as some information is found in the stream, that will be updated. https://bugzilla.gnome.org/show_bug.cgi?id=723243 2014-01-30 19:45:08 -0300 Thiago Santos * tests/check/elements/gdppay.c: tests: gdppay: refactor and add missing bits Most of the tests weren't updated after the sticky events order and stream start. Fix that and refactor those tests check that are the same to some common functions. Those functions still don't actually test the content but at least now they are in a single place and can be improved without replication 2014-01-30 18:17:33 -0300 Thiago Santos * tests/check/elements/gdppay.c: tests: gdppay: Do not forget to send stream-start event on test Even if we don't want to push the caps event, a stream-start must be present before any data in 1.x 2014-01-30 18:09:13 -0300 Thiago Santos * gst/gdp/gstgdppay.c: gdppay: push the stream-start event instead of just swallowing upstream's stream-start into its payload, push it as elements expect a stream-start before data 2014-01-30 20:28:04 +0100 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: We do not support the SKIP seek flag but that is not a problem 2014-01-30 10:44:18 +0100 Edward Hervey * common: Automatic update of common submodule From d48bed3 to 1a07da9 2014-01-30 03:28:45 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: improve preview handling in tests Always erase the preview image data to allow the next check for it to operate properly 2014-01-29 20:38:57 +0100 Duncan Palmer * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Always release the object lock in gst_uri_downloader_fetch_uri_with_range() even if downloader->priv->urisrc is not set. This avoids deadlock under some some conditions on cancel. https://bugzilla.gnome.org/show_bug.cgi?id=723127 2014-01-29 13:25:37 +0100 Nicola Murino * configure.ac: opencv: The plugin works with 2.4.8 too https://bugzilla.gnome.org/show_bug.cgi?id=723230 2014-01-29 10:50:40 +0100 Edward Hervey * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/codecparsers/nalutils.h: codecparsers: Don't use gst_ as prefix for private symbols Otherwise they get exposed/accessible in the resulting .so And make check-exports will complain 2014-01-27 23:55:57 -0300 Amaury Medeiros * gst/mpegtsdemux/pesparse.c: tsdemux: Fix flags comparison operator precedence Fix operator precedence, so the whole operation is negated instead of only flags variable. https://bugzilla.gnome.org/show_bug.cgi?id=722096 2014-01-26 14:42:52 +0100 Mark Nauwelaerts * gst-libs/gst/mpegts/Makefile.am: mpegts: install but nodist for generated header 2014-01-25 17:40:46 +0100 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: Don't handle FLUSHING or NOT_LINKED as error And also just stop the task for FLUSHING. 2014-01-24 21:41:25 +0100 Sjoerd Simons * gst/mxf/mxfdemux.c: mxfdemux: Don't go into pull mode when the sequential flag is set When the scheduling query results has GST_SCHEDULING_FLAG_SEQUENTIAL set in its flags don't go into pull mode to prevent over-eager seeking. https://bugzilla.gnome.org/show_bug.cgi?id=722934 2014-01-24 12:36:59 -0300 Thiago Santos * tests/check/elements/h264parse.c: tests: h264parse: fix tests after leading 0x00 removal Commit 6af387cd5ab2c946025e5499903e75ee87b063a9 made h264parse strip a leading 0x00 byte from some output scenarios. This broke tests as bs_to_nal test expects one more byte on the output. Fix this by comparing the output with the expected stripped version, too. 2014-01-24 01:07:45 -0300 Thiago Santos * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/nalutils.c: * gst-libs/gst/codecparsers/nalutils.h: codecparsers: refactor common nal parsing to nalutils Moves common code from h264 and h265 to a separate file 2014-01-03 09:44:28 +0100 Aurélien Zanelli * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: h264parse: Fix multiple SEI messages in one SEI RBSP parsing. An SEI RBSP could contains more than one SEI message as specified in 7.4.2.3.1. This commit change the parser API: the gst_h264_parser_parse_sei() function now create and fill a GArray containing GstH264SEIMessage. https://bugzilla.gnome.org/show_bug.cgi?id=721715 2014-01-22 10:26:32 -0300 Thiago Santos * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: remove trailling 0x00 bytes as the spec doesn't allow them Just like h264, the spec doesn't allow the last bytes of a NAL to be 0x00. So remove it as it is probably just padding. This is related to https://bugzilla.gnome.org/show_bug.cgi?id=721384 2014-01-20 17:24:54 -0300 Thiago Santos * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: remove trailling 0x00 bytes as the spec doesn't allow them The spec states that the last byte of a NAL 'shall not' be 0x00 and it is allowed for byte-stream format to add padding 0x00 for alignment. So our parser should strip any trailling 0x00. https://bugzilla.gnome.org/show_bug.cgi?id=721384 2014-01-21 23:42:58 +0900 Justin Joy * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: don't leak pad name when treating events https://bugzilla.gnome.org/show_bug.cgi?id=722699 2014-01-21 10:27:20 +0100 Wim Taymans * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: update last_ts to mux correctly We use last_ts to decide what buffer to mux next so make sure that it always contains the last known valid timestamp. 2014-01-21 10:58:35 +0900 duhui.lee * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Initialize pointer correctly that is never assigned but freed in error cases Fixes crash on broken streams. https://bugzilla.gnome.org/show_bug.cgi?id=722669 2014-01-21 09:44:00 +0100 Alexey Chernov <4ernov@gmail.com> * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: First destroy the window, then unregister the class It's impossible to create another pipeline with d3dvideosink after disposing the previous one due to some problem in d3dvideosink. The message is: "Unable to register Direct3D hidden window class". I've evaluated the problem and it's that UnregisterClass() in working thread is called before DestroyWindow() and UnregisterClass() does nothing. https://bugzilla.gnome.org/show_bug.cgi?id=722622 2014-01-20 16:25:51 +0100 Wim Taymans * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: fix timestamp handling If the first buffer that we handle for a stream has no timestamp, we would never consider this pad again for muxing which causes queues to fill up and pipelines to stall. Instead, try to mux pads with -1 timestamps as soon as possible. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=722330 2014-01-20 16:23:49 +0100 Wim Taymans * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: return GST_FLOW_EOS when we pushed EOS Return GST_FLOW_EOS from the collected function when we pushed EOS or else it simply keeps on calling our collected function. 2014-01-20 10:38:16 +0100 Sebastian Dröge * sys/applemedia/Makefile.am: applemedia: Actually the enc/decbins are not used anywhere currently Code is commented out. 2014-01-20 10:34:57 +0100 Sebastian Dröge * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: applemedia: Fix build on iOS and probably also on OSX The video toolbox is not available on iOS, and also on OSX we should probably build all source files that are used for it. https://bugzilla.gnome.org/show_bug.cgi?id=722590 2014-01-20 15:21:42 +0900 duhui.lee * gst/videoparsers/gsth265parse.c: h265parse: Update caps when receive VPS/SPS/PPS https://bugzilla.gnome.org/show_bug.cgi?id=722240 2014-01-20 17:03:09 +0900 duhui.lee * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Fix segfault when parsing HRD parameter https://bugzilla.gnome.org/show_bug.cgi?id=722240 2014-01-18 13:56:28 +0100 Sebastian Dröge * ext/openexr/gstopenexrdec.cpp: openexrdec: Don't start scanning for the header from the start again each time This will be incredible slow if the upstream block size is very small. Instead continue scanning for the header where we previously stopped. For the standard filesrc block-size this made decoding a file about 3 times faster. https://bugzilla.gnome.org/show_bug.cgi?id=719890 2014-01-18 13:06:29 +0100 Sebastian Dröge * ext/sndfile/gstsfdec.c: sfdec: This is a decoder, not a demuxer Don't confuse autopluggers! https://bugzilla.gnome.org/show_bug.cgi?id=722316 2014-01-18 01:19:36 +0200 Andrey Utkin * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: Fix leak of PCROffsetGroup https://bugzilla.gnome.org/show_bug.cgi?id=722462 2014-01-16 12:18:45 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Remove some useless assignments and skip the current part of the buffer if the pad is muted 2014-01-16 20:16:47 +1100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: * ext/resindvd/gstpesfilter.c: resindvd: Merge changes across from master mpegdemux Merge various changes and fixes from the master mpegdemux Performance improvement from the way streams are organised, return flow combining, language tag event generation, adjustments and fixes in debug output, and things like that. 2014-01-16 20:14:48 +1100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: Merge some changes from the resindvd copy One bug fix, some debug changes and other inconsequential changes just to reduce the diff between the 2 copies a bit. 2014-01-15 23:30:28 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Fix and simplify overlap calculation 2014-01-14 23:55:53 +0000 Tim-Philipp Müller * ext/resindvd/resindvdsrc.c: resindvdsrc: fix minor memory leak when creating title info message 2013-10-09 17:49:06 +0200 Jorge Zapata * sys/androidmedia/gstamcvideodec.c: amcvideodec: Add the divx variant for mpeg4 video Looks like all the mpeg4 video decoders also accept the divx variants. So we better add those caps too https://bugzilla.gnome.org/show_bug.cgi?id=711163 2014-01-14 17:08:36 +0000 Vincent Penquerc'h * configure.ac: configure: fix (again) check for DB API: 5.4 is Not Recent Enough Maybe testing the version is clearer, but testing for < 5 is not enough, my version is 5.4 and does not yet have those new enums. If you git blame to this and have a version > 5.4 that does not either, please feel free to join along and bump the version. 2014-01-14 23:21:25 +0900 duhui.lee * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: h265parser: Fix segfault when parsing VPS https://bugzilla.gnome.org/show_bug.cgi?id=722081 2014-01-14 10:38:37 +0100 Sebastian Dröge * ext/opencv/gstfaceblur.c: faceblur: set maximum feature size to 0x0 Previously faces would only be detected if they were at least 30x30 pixels large and at most 32x32 pixels. We keep the minimum setting (maybe needs a property as in facedetect) but disable the maximum feature size. See https://bugzilla.gnome.org/show_bug.cgi?id=722158 2014-01-14 01:06:02 -0500 Kipp Cannon * ext/opencv/gstfacedetect.c: facedetect: set maximum feature size to 0x0 This disables the "max feature size" feature. The current configuration is totally busted: The max feature size is hard-coded to 2 pixels more than the user-supplied min feature size which pretty much means you need to guess the size of the person's face to within a few pixels to get the code to find it. https://bugzilla.gnome.org/show_bug.cgi?id=722158 2014-01-14 02:19:12 +0200 Andrey Utkin * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: fix memleak of PCROffsetCurrent https://bugzilla.gnome.org/show_bug.cgi?id=722145 2014-01-13 21:50:16 +0900 Justin Joy * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: prevent to overrun chroma_weight_l0_flag The index of elements cannot exceed or equal to the size of elements. https://bugzilla.gnome.org/show_bug.cgi?id=722101 2014-01-13 10:01:43 +0000 Vincent Penquerc'h * ext/schroedinger/gstschroenc.c: schroenc: set buffer offset to buffer timestamp oggmux expects this to order incoming buffers https://bugzilla.gnome.org/show_bug.cgi?id=722078 2014-01-10 08:58:27 +0100 Edward Hervey * configure.ac: dvb: Use DVB_API_VERSION to know if we have recent enough version We end up with the same end-result but it's more comprehensible 2014-01-09 16:38:13 +0100 Stefan Sauer * configure.ac: configure: check for good enough dvb kernel headers Recent changes are using new dvb api. Don't built the plugin, if we can't. Fixes #721869 2014-01-09 08:18:07 +0100 Stefan Sauer * gst/aiff/aiffparse.c: aiffparse: misc code cleanups Fix the launch examples for 1.0. Turn more logging into _OBJECT variants. 2014-01-09 09:13:48 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: remove unnecessary variable Instead of using 2 indexes that were actually the same, use only one. Saves a variable. 2014-01-09 09:11:23 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: fix seeking when the mpd uses a segment template Remove the dashdemux seeking function to use the one implemented in mpdparser as it is more complete. This also makes dashdemux not crash when seeking on streams that use segment templates. 2014-01-08 16:33:05 -0300 Thiago Santos * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: do not lose DISCONT flag if buffer isn't pushed mpeg4videoparse might not push buffers while parsing. If those buffers contain the DISCONT flag, it gets lost and downstream won't get any buffer with the flag. Fix it by adding the DISCONT to the next pushed buffer. This makes backwards playback work. 2014-01-06 22:15:24 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sfdec: skip '\0' strings for metadata libsndfile does not filter empty strings. We get a warning from gstreamer when setting this as a tag. 2014-01-06 15:15:27 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sfdec: break long method Extract taglist creation into separate funtion. 2014-01-06 15:01:22 +0000 Tim-Philipp Müller * gst-libs/gst/mpegts/gst-atsc-section.h: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/mpegts.h: mpegts: make headers usable with c++ compiler Add G_BEGIN_DECLS G_END_DECLS https://bugzilla.gnome.org/show_bug.cgi?id=671136 2014-01-06 15:02:30 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sfdec: remove left over property-id enum 2014-01-06 14:52:54 +0100 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Allows hvc1 version 0 and fix reading of NAL count in codec_data 2014-01-06 14:48:26 +0100 Sebastian Dröge * gst/videoparsers/gsth265parse.c: h265parse: Fix some more debug output And don't access invalid memory 2014-01-06 14:47:43 +0100 Sebastian Dröge * gst-libs/gst/codecparsers/gsth265parser.c: h265parser: Fix debug output 2014-01-06 13:51:01 +0100 Sebastian Dröge * gst-libs/gst/mpegts/gstmpegtssection.h: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add HEVC / h265 support 2014-01-05 23:44:36 +0100 Stefan Sauer * gst/aiff/aiffparse.c: aiffparse: typo fix in comment 2014-01-05 23:43:25 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sfdec: the read functions already return frames_read Fixes choppy output. 2014-01-05 23:41:26 +0100 Stefan Sauer * ext/sndfile/gstsf.c: sndfile: enable rf64 format 2014-01-02 21:02:27 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sfdec: add date to taglist 2014-01-03 11:18:06 -0500 Olivier Crête * sys/shm/gstshmsink.c: shmsink: Document that socket-path may change 2014-01-03 11:16:42 -0500 Olivier Crête * sys/shm/gstshmsink.c: shmsink: Change default shm size to 64 MiB The original size of 256k was too small for anything where one would want to use shm. If the buffer's size needs to be limit, it is better to use buffer-time in most cases anyway. 2013-10-10 18:25:46 +0200 Stefan Ringel * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: Add dvb-s2, dvb-t2 support https://bugzilla.gnome.org/show_bug.cgi?id=709414 2013-10-10 18:23:20 +0200 Stefan Ringel * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: Change from deprecated frontend type field to DTV_ENUM_DELSYS -add delsys property -add delivery system capability to the gstreamer adapter structure -ready for add new delivery systems Application must ask the adapter structure to know which delivery systems are avaible. The property delsys must be set. https://bugzilla.gnome.org/show_bug.cgi?id=709414 2014-01-03 09:59:34 +0100 Miguel París Díaz * ext/srtp/gstsrtpdec.c: srtpdec: Fix GstCaps memory leak https://bugzilla.gnome.org/show_bug.cgi?id=721382 2013-12-31 22:38:03 +0100 Piotr Drąg * po/POTFILES.in: po: update POTFILES https://bugzilla.gnome.org/show_bug.cgi?id=721293 2013-12-31 23:18:54 +1100 Jan Schmidt * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: androidmedia: Add new color format, and enhance debug output Add a new color format seen on my Galaxy S3 (OMX_SEC_COLOR_FormatNV12Tiled = 0x7fc00002) to the table, but don't actually implement it - the decoder doesn't choose it. Remove an assert that makes the plugin fail noisily and take the app down if it sees a color format it doesn't recognise (just skip the codec instead) Modify the debug output when plugin scanning to print color format info to make this sort of thing easier in the future. 2013-12-19 23:00:12 +1100 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: Don't disrupt buffer state in the clip function Collectpads assumes that it can pass any buffer to the clip function for adjustment, some of which are artificially injected - so don't adjust global timestamp tracking there. Instead, only adjust the buffer timestamps and use them directly in the collection function. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=698748 2013-12-30 15:49:57 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sndfile: emit midi-base-note tag Query instrument data. Use both 'loop_info' and 'instrument' to inform about the basenote. 2013-12-30 13:28:52 +0100 Edward Hervey * gst/jpegformat/gstjpegparse.c: jpegparse: Remove unneeded call 'parse' is already provided by the parent variable 2013-12-29 13:31:53 +0100 Sebastian Dröge * configure.ac: opencv: The plugin works with 2.4.7 too Reported by kwm on IRC. 2013-12-28 12:39:25 +0100 Sebastian Dröge * ext/opus/gstopusparse.c: opusparse: Don't send caps in GstBaseParse::start() This is too early and will confuse the event order. The other code that sets the caps is at the right position and does it properly already. 2013-12-24 23:15:28 +0000 Víctor Manuel Jáquez Leal * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: fix input dequeue for odroid https://bugzilla.gnome.org/show_bug.cgi?id=721027 2013-12-27 14:29:46 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: increase max payload size to 4000 bytes 1275 is the maximum size of a frame, but the encoder may return up to 3 frames, and we need a few extra bytes for TOC, etc. We use 4000, which is a bit more, and suggested in the libopus docs. 2013-12-27 10:25:30 +0000 Tim-Philipp Müller * gst-libs/gst/mpegts/gst-dvb-section.h: mpegts: fix g-i annotations and gtk-doc markup 2013-12-20 10:05:22 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: remove stream loop thread Download and push from the same task, makes code a lot simpler to maintain. Also pushing from separate threads avoids deadlocking when gst_pad_push blocks due to downstream queues being full. 2013-12-20 19:42:52 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: fix deadlock near EOS A deadlock can happen when the source sends EOS when being put to NULL as the object lock is being held by the thread that sets the element to NULL and is needed by the event handler. 2013-12-20 19:39:16 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: detect EOS when segments are generated by template Use the Period duration do know when to end the stream 2013-12-13 17:26:10 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: do not try to access buffer after losing the ref For obvious reasons 2013-12-13 17:25:37 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: use a separate GstUriDownloader per stream Avoids one download having to wait for another to finish before starting 2013-12-09 13:55:20 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: store GstActiveStream to avoid getting it every time GstActiveStream is used everywhere to operate on the MPD client, better store it in the GstDashDemuxStream to avoid getting it everytime 2013-12-09 13:33:53 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: simplify locking for streams Use a single lock for all streams instead of having separate locks. This makes maintenance easier and at most points we would need a single lock before iterating on all streams data. So not much is gained from individual locks. 2013-12-09 11:28:25 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: fix multiple period mpd playback Make dash playlists with multiple periods work again by waiting to switch the periods when all streams have reached the end of the current period. The stream_loop is responsible for advancing the period, but the download loops will already start downloading data for the next period as soon as possible. 2013-12-05 02:53:18 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: add combine flows function Use a flow combination function to decide the result from the stream_loop 2013-12-04 11:30:22 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: handle multiple languages Handle multiple languages by using the not-linked return to stop the download task for that stream. It can be reactivated when a reconfigure event is received. Stopping the unused streams is relevant to save network bandwidth 2013-12-03 16:16:09 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Use 1 download task per stream Instead of having a single download task for all streams, this commit makes each stream have its own download loop, allowing parallel download of fragments. 2013-12-03 00:12:08 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: refactor fragment fetching into smaller functions Makes it easier to maintain and extend. This is a first step into adding multi language support to dashdemux 2013-12-02 17:41:01 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: run gst-indent Lots of indentation issues making it very annoying to commit because of the indent hook. Fix this for once. 2013-12-02 17:31:41 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: expose all streams always expose all streams instead of only exposing one of each type. This is more aligned with gstreamer's way of working. Allows the user to select the stream that it wants to use by linking its pad and leaving the unused ones as unlinked. 2013-12-24 11:51:16 +0100 Sebastian Dröge * ext/eglgles/gstegladaptation_eagl.m: eglglessink: Properly clean up renderbuffers and EAGL context 2013-12-23 15:33:42 +0100 Sebastian Dröge * gst/adpcmenc/adpcmenc.c: adpcmenc: Properly set output format Otherwise this will just error out if we only set caps on the srcpad. 2013-12-22 22:33:51 +0000 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From dbedaa0 to d48bed3 2013-12-22 21:56:03 +0000 Tim-Philipp Müller * po/Makevars: po: set gettext domain in Makevars so we don't have to patch the generated Makefile.in.in https://bugzilla.gnome.org/show_bug.cgi?id=705455 2013-12-22 17:46:40 +0100 Alessandro Decina * sys/applemedia/corevideobuffer.c: applemedia: vtdec: set the correct stride in the video meta 2013-12-22 17:44:01 +0100 Alessandro Decina * sys/applemedia/atdec.c: applemedia: atdec: fix aac decoding on Mavericks 2013-12-20 18:12:53 +0100 Stefan Sauer * ext/modplug/gstmodplug.cc: modplug: small seeking code reshuffle Put the code that checks stop values together. Don't clamp a cur value of -1 to 0 (should not happen right now). 2013-12-20 18:10:14 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sfdec: make _stop() non fatal when we have an error already Having no open file in _stop() is okay. Just reset state. 2013-12-20 18:08:33 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: * ext/sndfile/gstsfdec.h: sfdec: add event function and seeking support 2013-12-18 08:12:07 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: sfdec: add taglist support Map the metadata strings and a bunch of info-fields to GStreamer tags. 2013-12-17 22:25:03 +0100 Stefan Sauer * ext/sndfile/gstsfdec.c: * ext/sndfile/gstsfdec.h: sfdec: add query implementation for position and duration 2013-12-17 17:56:32 +0100 Stefan Sauer * configure.ac: * ext/sndfile/Makefile.am: * ext/sndfile/gstsf.c: * ext/sndfile/gstsf.h: * ext/sndfile/gstsfdec.c: * ext/sndfile/gstsfdec.h: sndfile: rewrite sndfile for 1.0 Add a sfdec for a start. Instead of a source plugin, this is a demuxer/decoder combination. This makes it work with auto-plugging. 2013-12-20 00:39:34 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: updating docs explaining how it works mssdemux changed a lot and the docs were not correct anymore. Also adds the 'Adaptive' category to its details 2013-12-19 14:30:13 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: do not push event holding object lock Can lead to deadlocks as the push might block downstream in serialized event cases. 2013-12-19 14:29:42 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: lock around 'cancelled' flag Prevents race conditions when pipeline is seeking near eos 2013-12-19 21:59:09 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Also resync timestamps on the RESYNC flag 2013-12-19 21:36:50 +0100 Sebastian Dröge * ext/eglgles/gstegladaptation_eagl.m: eglglessink: Don't set the EAGLContext of the main thread and don't reuse it either ... instead create a new context for every sink instance. https://bugzilla.gnome.org/show_bug.cgi?id=720421 2013-12-19 08:57:41 +0100 Alessandro Decina * sys/applemedia/corevideobuffer.c: applemedia: corevideobuffer: fix for planar formats 2013-12-19 07:54:07 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: remove silly stride requirement This is legacy from the 0.10 times, and it isn't clear how it was useful back then also.' 2013-12-19 11:11:28 +1100 Jan Schmidt * ext/directfb/dfb-example.c: directfb: Add hack to fix compile with broken DirectFB define Compilation breaks because some versions of DirectFB redefine __no_instrument_function__, which is used in the G_GNUC_NO_INSTRUMENT macro. 2013-12-17 17:55:58 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix segfault when trying to access codec_data Check if codec_data was obtained before trying to use it to prevent a segfault 2013-12-17 17:54:31 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: also generate caps from audiotag attribute Some audio will have its audio format defined by the AudioTag instead of the Fourcc. Fallback to using AudioTag if Fourcc isn't available 2013-12-17 16:31:52 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: make sure streams stop properly on cancelled specially when the gst_task_join is waiting for the task to go stop and the task itself sets its back to paused, causing a deadlock on exit. 2013-12-17 13:16:58 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: track segments per stream As streams now flow independently, the GstSegment needs to be put on each stream so they can track the position of each one correctly instead of being mixed in a single segment 2013-11-14 15:23:42 +0100 Guillaume Desmottes * ext/smoothstreaming/gstmssdemux.c: mssdemux: push language code tag https://bugzilla.gnome.org/show_bug.cgi?id=712358 2013-11-14 15:14:18 +0100 Guillaume Desmottes * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssmanifest: store the language of the stream https://bugzilla.gnome.org/show_bug.cgi?id=712358 2013-12-16 16:14:24 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: remove the stream loop task Download and push from the same task, makes code a lot simpler to maintain. Also pushing from separate threads avoids deadlocking when gst_pad_push blocks due to downstream queues being full 2013-12-13 17:31:11 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: Improve logging Show the stream's pad on log messages to make easier to debug issues in the multiple threads 2013-12-10 18:08:40 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: improve flow return handling Handle different flow returns both from the streaming and the downloading loops 2013-12-10 15:41:00 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: remove stream locks Simplify the locking by using a single lock instead of having one lock per stream. This still works and is simpler to maintain. 2013-11-12 09:58:31 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: avoid downloading not-linked streams When a stream gets a not-linked return, it will be marked as so and won't download any more new fragments until a reconfigure event is received. This will make mssdemux expose all pads, but only download fragments for the streams that are actually being used. Relying on the pads being linked/unlinked isn't enough in this scenario as there might be an input-selector downstream that is actually discarding buffers for a given linked pad. When streams are switching, the old active stream can be blocked because input-selector will block not-linked streams. In case the mssdemux's stream loop is blocked pushing a buffer to a full queue downstream it will never unblock as the queue will not drain (input-selector is blocking). In this scenario, stream switching will deadlock as input-selector is waiting for the newly active stream data and the stream_loop that would push this data is blocked waiting for input-selector. To solve this issue, whenever an stream is reactivated on a reconfigure it will enter into the 'catch up mode', in this mode it can push buffers from its download thread until it reaches the currrent GstSegment's position. This works because this timestamp will always be behind or equal to the maximum timestamp pushed for all streams, after pushing data for this timestamp, the stream will go back to default and be pushed sequentially from the main streaming thread. By this time, the input-selector should have already released the thread. https://bugzilla.gnome.org/show_bug.cgi?id=711849 2013-12-18 16:26:17 -0500 Luis de Bethencourt * gst-libs/gst/codecparsers/gstmpegvideoparser.h: mpegvideoparse: Fix documentation of GstMpegVideoSequenceScalableMode 2013-12-18 13:48:54 +0100 Sebastian Dröge * pkgconfig/gstreamer-plugins-bad.pc.in: pkgconfig: Don't include libraries in the generic gst-plugins-bad pc file 2013-12-18 13:45:22 +0100 Mariusz Buras * gst-libs/gst/mpegts/Makefile.am: * pkgconfig/gstreamer-plugins-bad.pc.in: mpegts: Install generated headers https://bugzilla.gnome.org/show_bug.cgi?id=720673 2013-12-17 10:01:42 +0100 Davide Bertola * sys/applemedia/vtdec.c: applemedia: vtdec: Enable hardware accelerated decoding on 10.9 2013-12-17 12:17:51 +0100 Sebastian Dröge * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlsmtpsink.c: curl: Fix indention 2013-12-17 12:06:13 +0100 Haridass Selvaraj * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlftpsink.h: * tests/check/elements/curlftpsink.c: curlftpsink: Optionally create a temporary file during FTP transfer/upload https://bugzilla.gnome.org/show_bug.cgi?id=711620 2013-12-17 10:23:15 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Give preference to the order of the filter caps when querying caps 2013-12-17 10:21:26 +0100 Sebastian Dröge * sys/decklink/gstdecklinksink.cpp: decklinksink: Only intersect with the filter caps if there actually is a filter 2013-12-15 21:05:31 -0800 Todd Agulnick * gst/videoparsers/gstvc1parse.c: vc1parse: Some compiler warning fixes to satisfy XCode compiler https://bugzilla.gnome.org/show_bug.cgi?id=720513 2013-12-16 16:07:44 +0100 Sebastian Dröge * gst/id3tag/id3tag.c: id3tag: Read image-description from the info structure, not the caps 2013-12-16 11:14:29 +0100 Aurélien Zanelli * configure.ac: configure.ac: Fix typo in bz2 check https://bugzilla.gnome.org/show_bug.cgi?id=720532 2013-12-16 11:51:00 +0100 Sebastian Dröge * gst/id3tag/id3tag.c: id3tag: Write image-type into the APIC tag 2013-12-16 10:25:22 +0100 Sebastian Dröge * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvc1parse.h: vc1parse: Post VIDEO_CODEC tag 2013-12-16 10:24:28 +0100 Sebastian Dröge * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstpngparse.h: pngparse: Post VIDEO_CODEC tag 2013-12-16 10:22:24 +0100 Sebastian Dröge * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Use pbutils API to create the VIDEO_CODEC tag string 2013-12-16 10:21:00 +0100 Sebastian Dröge * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: Post VIDEO_CODEC tag 2013-12-16 10:19:36 +0100 Sebastian Dröge * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: h265parse: Post VIDEO_CODEC tag 2013-12-16 10:18:23 +0100 Sebastian Dröge * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Post VIDEO_CODEC tag 2013-12-16 10:16:14 +0100 Sebastian Dröge * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth263parse.h: h263parse: Post VIDEO_CODEC tag 2013-12-16 10:13:36 +0100 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gstdiracparse.h: diracparse: Post VIDEO_CODEC tag 2013-12-14 18:12:53 -0500 Todd Agulnick * sys/decklink/gstdecklinksrc.cpp: decklinksrc: Process EOS even when there are no incoming video frames. https://bugzilla.gnome.org/show_bug.cgi?id=680700 2013-12-14 15:55:42 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: handle level 3 in get_dpb_max_mb_s_from_level. oops. 2013-12-14 15:55:22 +0100 Alessandro Decina * sys/applemedia/atdec.c: applemedia: atdec: fix mp3 caps 2013-12-14 18:42:11 +0100 Sebastian Dröge * sys/decklink/gstdecklinksrc.cpp: decklinksrc: Set GST_ELEMENT_FLAG_SOURCE on the source As it does not inherit from basesrc, this flag is not automatically set and e.g. gst_bin_iterate_sources() and other code does not consider this element a source. https://bugzilla.gnome.org/show_bug.cgi?id=680700 2013-12-14 13:32:26 +0100 Alessandro Decina * configure.ac: configure.ac: add missing AM_CONDITIONAL for OPENEXR and SBC Makes my automake (1.14) happier. 2013-12-14 13:30:01 +0100 Alessandro Decina * sys/applemedia/plugin.m: applemedia: always include Fixes compilation with newest xcode. 2013-12-12 17:49:24 +0100 Matej Knopp * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: not all startcodes should have 3-byte 0 prefix The parser assumes that every time there is a 0 before the startcode, it is part of the startcode. But that's not true. From the specification Byte stream NAL unit syntax zero_byte is a single byte equal to 0x00. When any of the following conditions are fulfilled, the zero_byte syntax element shall be present. – the nal_unit_type within the nal_unit( ) is equal to 7 (sequence parameter set) or 8 (picture parameter set) – the byte stream NAL unit syntax structure contains the first NAL unit of an access unit in decoding order, as specified by subclause 7.4.1.2.3. The problem with doing this for all startcodes is that a trailing zero can mess up timestamps. The trailing zero gets prepended to the startcode, which will carry the PTS and DTS of previous buffer. https://bugzilla.gnome.org/show_bug.cgi?id=664443 2013-12-10 11:27:52 -0300 Thiago Santos * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/asfmux/gstasfparse.c: asfparse: add timestamps to packets re-enable the code that adds timestamps to packets after baseparse's port 2013-12-10 10:34:02 -0300 Thiago Santos * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstasfparse.h: asfparse: port to baseparse asfparse was not really functional after the port to 1.0 Now porting it to baseparse to get it working again 2013-12-13 11:49:52 +0100 Benjamin Gaignard * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: fix reading of display window in display definition segment From ETSI EN 300 743 V1.3.1 (2006-11) 7.2.1 Display definition segment specifictations the parameters of display window are in this order: Xmin, Xmax, Ymin, Ymax. Signed-off-by: Benjamin Gaignard Signed-off-by: Pierre-Yves Mordret https://bugzilla.gnome.org/show_bug.cgi?id=720382 2013-12-13 14:16:49 -0800 Aleix Conchillo Flaqué srtp: add 256-bit key support * ext/srtp/gstsrtp.[ch]: added GST_SRTP_CIPHER_AES_256_ICM to GstSrtpCipherType and new function cipher_key_size. * ext/srtp/gstsrtpenc.c: maximum key size is now 46 characters (14 for the salt plus the key). If different ciphers are chosen for RTP and RTCP the maximum needed key size is expected. * ext/srtp/gstsrtpdec.c: minor documentation updates. https://bugzilla.gnome.org/show_bug.cgi?id=720434 2013-12-12 13:21:15 +0000 Tim-Philipp Müller * ext/gsm/gstgsmdec.c: gsmdec: process all available input frames in one go Instead of parsing, decoding and sending out lots os little 20ms audio buffers one by one. 2013-12-11 18:52:53 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix compiler warning (uninitialized variable) 2013-12-11 08:11:50 +0100 Alessandro Decina * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: vtdec: rename reorder_queue_frame_delay to reorder_queue_length 2013-12-11 08:10:19 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: report latency 2013-12-11 07:58:23 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: set reorder queue length to the max DPB length Set reorder_queue_frame_delay from the DPB size (in frames). Still not optimal, as the DPB size is larger than the max bframe forward prediction length, but I don't know how to compute the latter without parsing every group of pictures. 2013-12-10 23:06:53 +1100 Jan Schmidt * ext/soundtouch/gstbpmdetect.cc: soundtouch: Call default event handler for basetransform Make pipeline end properly at EOS and not leak by passing events to the default event handler. 2013-12-06 00:45:50 +1100 Jan Schmidt * ext/resindvd/resindvdbin.c: resindvd: Remove racy glib warning. Sometimes, the pad probes can be called twice - for OOB events travelling downstream. Clear out the pad block id, so it only gets removed once. 2013-12-06 00:22:20 +0000 Tim-Philipp Müller * ext/gsm/gstgsmdec.c: gsmdec: fix decoding of audio/ms-gsm variant Alternates between 33 and 32 byte frames, but must start with a 33 byte frame. This has been broken for ages since the element was ported to the audio decoder base class. https://bugzilla.gnome.org/show_bug.cgi?id=709416 2013-12-10 11:10:54 +0100 Alessandro Decina * sys/applemedia/corevideobuffer.c: * sys/applemedia/vtdec.c: applemedia: vtdec: set the correct video format in the video meta Fixes all kinds of weird bugs when videoconvert is used with the decoder. 2013-04-17 10:44:48 +0800 Cong Zhong * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix picture level scaling lists derivation (rule B). Fix picture level scaling lists derivation from fall-back rule set B, as specified in 7.4.2.2. More precisely, the sequence level scaling lists need to be used but intra and inter lists arguments were swapped. This fixes FRExt/freh5.264 from conformance testing. https://bugzilla.gnome.org/show_bug.cgi?id=720099 Signed-off-by: Gwenole Beauchesne 2013-12-08 16:46:58 +0100 Alessandro Decina * sys/applemedia/corevideobuffer.c: applemedia: corevideobuffer: set the correct stride for packed formats 2013-12-08 15:31:09 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fix mpeg2 video support 2013-12-08 15:25:27 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: make jpeg decoding actually work 2013-12-08 15:24:58 +0100 Alessandro Decina * sys/applemedia/vtdec.c: applemedia: vtdec: fail gracefully when not negotiated 2013-12-07 23:55:13 +0100 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: rewrite VideoToolbox decoder based on GstVideoDecoder 2013-12-06 21:11:32 -0500 Olivier Crête * gst/vmnc/Makefile.am: * gst/vmnc/vmncdec.c: * gst/vmnc/vmncdec.h: vmcndec: Add missing header file Forgot to add header file to previou commit 2013-12-06 20:58:48 -0500 Olivier Crête * configure.ac: * gst/vmnc/Makefile.am: * gst/vmnc/vmncdec.c: vmncdec: Port to GStreamer 1.0 API 2013-12-06 17:58:13 -0500 Olivier Crête * configure.ac: * gst/stereo/gststereo.c: stereo: Port to GStreamer 1.0 API 2013-12-06 17:10:39 -0500 Olivier Crête * configure.ac: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jp2kdecimator/gstjp2kdecimator.h: * gst/jp2kdecimator/jp2kcodestream.c: jp2kdecimator: Port to GStreamer 1.0 API 2013-12-05 16:50:27 -0500 Olivier Crête * gst/asfmux/gstrtpasfpay.c: rtpasfpay: Use GstRTPBasePayload method to push buffer This way the event is also pushed. https://bugzilla.gnome.org/show_bug.cgi?id=719553 2013-12-05 12:05:30 +0100 Sebastian Dröge * ext/sbc/gstsbcdec.c: sbcdec: Require caps to be set before any data processing 2013-12-05 12:05:21 +0100 Sebastian Dröge * gst/adpcmdec/adpcmdec.c: adpcmdec: Require caps to be set before any data processing 2013-12-05 12:05:09 +0100 Sebastian Dröge * gst/siren/gstsirendec.c: sirendec: Require caps to be set before any data processing 2013-12-05 12:04:59 +0100 Sebastian Dröge * ext/opus/gstopusdec.c: opusdec: Require caps to be set before any data processing 2013-12-05 12:04:39 +0100 Sebastian Dröge * ext/mpg123/gstmpg123audiodec.c: mpg123audiodec: Require caps to be set before any data processing 2013-12-05 12:04:23 +0100 Sebastian Dröge * ext/gsm/gstgsmdec.c: gsmdec: Require caps to be set before any data processing 2013-12-05 11:49:41 +0100 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Use new gst_video_decoder_set_needs_format() API 2013-12-05 11:49:31 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfcdec: Use new gst_video_decoder_set_needs_format() API 2013-12-05 11:49:14 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Use new gst_video_decoder_set_needs_format() API 2013-12-05 11:45:36 +0100 Sebastian Dröge * ext/daala/gstdaaladec.c: daaladec: Use new gst_video_decoder_set_needs_format() API 2013-12-04 17:31:27 -0500 Olivier Crête * gst-libs/gst/codecparsers/gstmpegvideoparser.c: mpegvideoparser: Also initialize debug category in parse_sequence_header Also remove the useless initialized flag, this is already done by the macro https://bugzilla.gnome.org/show_bug.cgi?id=719657 2013-12-04 22:38:20 +0100 Sebastian Dröge * ext/openexr/gstopenexrdec.cpp: openexrdec: Instead of trying to parse the bitstream, just look for the next header This should be more robust and allows us to handle new versions of the file format if the library supports it. 2013-12-04 09:13:31 +0100 Wim Taymans * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstvc1parse.c: videoparsers: use ACCEPT_INTERSECT We can also accept caps with missing fields. 2013-12-04 09:03:45 +0100 Wim Taymans * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstvc1parse.c: videoparsers: remove fields from filter Don't filter out the caps properties we can convert between when proxying the getcaps query to the downstream peer pad. 2013-12-04 09:00:43 +0100 Wim Taymans * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstvc1parse.c: videoparsers: refactor remove_fields in getcaps 2013-12-03 14:53:24 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Check color format 2013-12-03 14:47:32 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Add support for the video meta 2013-12-03 14:46:25 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: * ext/openni2/gstopenni2src.h: openni2src: Use GstVideoFrame API for better handling of strides And do proper stride conversion. 2013-12-03 14:35:57 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Fix buffer handling to actually work and properly timestamp buffers 2013-12-03 14:35:42 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Don't shut down library when finalizing an element instance 2013-12-03 14:35:21 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Fix negotiation and creation of a video buffer pool 2013-12-03 14:34:56 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Use debug category properly 2013-12-02 17:03:46 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Classification of the element should be Source/Video 2013-12-02 17:01:36 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Use GstVideoInfo to create caps and don't leak them 2013-12-02 16:59:14 +0100 Sebastian Dröge * ext/openni2/gstopenni2src.cpp: openni2src: Some random cleanup and minor fixes 2013-12-02 11:17:02 +0100 Miguel Casas-Sanchez * configure.ac: * docs/plugins/Makefile.am: * ext/Makefile.am: * ext/openni2/Makefile.am: * ext/openni2/gstopenni2.cpp: * ext/openni2/gstopenni2src.cpp: * ext/openni2/gstopenni2src.h: openni: Add OpenNNI2 plugin https://bugzilla.gnome.org/show_bug.cgi?id=708914 2013-12-02 10:28:28 +0100 Sebastian Dröge * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstperspective.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: geometrictransform: G_DEFINE_TYPE() already calls g_type_class_peek_parent() for us 2013-12-02 10:25:57 +0100 Sebastian Dröge * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstcirclegeometrictransform.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstperspective.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: geometrictransform: Remove empty GObject::finalize() implementations Also don't use GST_DEBUG_FUNCPTR for GObject vfuncs 2013-10-20 22:04:38 +0200 Antonio Ospite * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstperspective.c: * gst/geometrictransform/gstperspective.h: * gst/geometrictransform/plugin.c: geometrictransform: Add a 2D perspective transform plugin The perspective plugin applies a 2D perspective (also called projective) transform to the frame buffer. A perspective transform can be used for instance to perform keystone correction when playing the content with a video projector. https://bugzilla.gnome.org/show_bug.cgi?id=710810 2013-12-01 23:31:25 +0000 Tim-Philipp Müller * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: avoid list for one single value in template caps 2013-12-01 22:32:09 +0000 Tim-Philipp Müller * gst/asfmux/gstasfmux.c: asfmux: microoptimisation: avoid unnecessary gst_buffer_get_size() calls 2013-11-29 13:23:40 +0000 Tim-Philipp Müller * gst/asfmux/gstrtpasfpay.c: rtpasfpay: init rtp buffer fixing rtp packet creation https://bugzilla.gnome.org/show_bug.cgi?id=719553 2013-11-29 13:22:56 +0000 Tim-Philipp Müller * gst/asfmux/gstasfmux.c: asfmux: don't use buffer after giving away ownership https://bugzilla.gnome.org/show_bug.cgi?id=719553 2013-11-29 10:14:43 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update spec file with latest changes 2013-11-25 16:57:00 +0000 Lubosz Sarnecki * gst/videoparsers/gstpngparse.c: pngparse: Don't try to set framerate if not from upstream https://bugzilla.gnome.org/show_bug.cgi?id=715166 2013-11-28 15:10:16 +0100 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Fix splitting of multiple NALU per buffer Conversion to byte-stream/nal crashes without that because the baseparse frame of all NALUs is finished for the first NALU, then used again for parsing the second NALU. Just that now the buffer of the frame is already gone. Instead we create temporary frames for every NALU. 2013-10-31 17:16:14 +0100 Antonio Ospite * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix setting codec_data when using WaveFormatEx When using WaveFormatEx the actual codec private data is at the end of the wav header structure, after the cbSize field, see for example the notes at http://wiki.multimedia.cx/index.php?title=WAVEFORMATEX The previous code was erroneously passing the whole WAVEFORMATEX structure as codec_data. The smoothstreaming specifications[1,2,3] always mention WAVEFORMATEX and never smaller structures like WAVEFORMAT or PCMWAVEFORMAT, so the buffer can assumed to be at least 18 bytes and always consuming the wav header gives the (possibly empty) codec private data. [1] http://web.archive.org/web/20120907004742/http://www.iis.net/community/files/media/smoothspecs/%5BMS-SMTH%5D.pdf [2] http://download.microsoft.com/download/B/0/B/B0B199DB-41E6-400F-90CD-C350D0C14A53/%5BMS-SSTR%5D.pdf [3] http://download.microsoft.com/download/9/5/E/95EF66AF-9026-4BB0-A41D-A4F81802D92C/%5BMS-SSTR%5D.pdf https://bugzilla.gnome.org/show_bug.cgi?id=699924 2013-10-31 15:58:27 +0100 Antonio Ospite * ext/smoothstreaming/gstmssmanifest.c: mssdemux: use mssdemux_debug debug category for gstmssmanifest.c too 2013-10-16 16:22:36 +0200 Antonio Ospite * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix coding style 2013-11-25 15:17:33 +1100 Jan Schmidt * gst/dvdspu/gstspu-vobsub.c: dvdspu: Don't unmap an unreffed buffer gst_dvd_spu_finish_spu_buf drops the reference to the current buffer, so make sure to call gst_buffer_unmap before it. 2013-11-23 19:11:42 +0100 Sebastian Dröge * ext/openexr/gstopenexrdec.cpp: openexrdec: Consider the pixel aspect ratio stored in the file 2013-11-23 18:37:00 +0100 Sebastian Dröge * ext/openexr/Makefile.am: * ext/openexr/gstopenexr.c: * ext/openexr/gstopenexrdec.cpp: * ext/openexr/gstopenexrdec.h: openexr: Add OpenEXR decoder element This currently converts from ARGB64_F16 (16 bit float per component) to ARGB64 by clipping. We should add support for the F16 format and implement a conversion filter element that can apply gamma curves, change exposure, etc. 2013-11-23 11:29:08 +0100 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/openexr/Makefile.am: * ext/openexr/gstopenexr.c: * ext/openexr/gstopenexr.h: * ext/openexr/gstopenexrdec.cpp: * ext/openexr/gstopenexrdec.h: openexr: Add OpenEXR plugin See http://www.openexr.com 2013-11-23 11:35:35 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: openjpeg: Fix names of debug categories 2013-11-23 14:35:06 +0100 Mark Nauwelaerts * gst/dvdspu/gstspu-vobsub.c: dvdspu: pop new packet when invalid next command block ... to prevent staying stuck on current command block and busy looping. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=712219 2013-11-23 11:23:35 +0100 Mark Nauwelaerts * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: accept VideoObjectLayer as start of frame and config ... which it deserves as much as VideoObject. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=667564 2013-11-21 15:54:32 +0000 Tim-Philipp Müller * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/imagedescription.c: * sys/qtwrapper/videodecoders.c: qtwrapper: g_memmove() is deprecated Just use plain memmove(), g_memmove() is deprecated in recent GLib versions. https://bugzilla.gnome.org/show_bug.cgi?id=712811 2013-11-20 12:46:23 +1100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Handle vobsub packets smaller than 4 bytes In particular, handle the case of an empty packet with size 0 bytes. Partially fixes: #712643 2013-11-19 20:18:48 -0500 Olivier Crête * ext/srtp/gstsrtpenc.c: srtpenc: Set the first session flag to false once one is create Otherwise it always thinks it's the first session. https://bugzilla.gnome.org/show_bug.cgi?id=711495 2013-11-19 20:12:54 -0500 Olivier Crête * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: srtpdec: Make sure that stream-id/caps/segment are sent before buffers It may be possible that only one of the two sink pads is linked in that case, the events need to be created from the other pad. 2013-11-19 19:10:06 -0500 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Pass is_rtcp to setcaps function 2013-04-04 17:59:01 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtp: Implement SRTCP demultiplexing Separate multiplexed RTP and RTCP if they arrive on the rtp_sink pad. 2013-11-19 00:38:33 +0100 Sebastian Dröge * ext/daala/gstdaaladec.c: * ext/daala/gstdaalaenc.c: daala: Fix compilation 2013-11-13 22:25:59 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: do not try to deinit the downloadrate while it is used This can cause an assertion or deadlocks. 2013-11-11 16:35:35 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: also consider /manifest The spec says /Manifest, but /manifest is easily found on some services, so handle that, too. https://bugzilla.gnome.org/show_bug.cgi?id=710223 2013-11-14 09:02:35 -0300 Thibault Saunier * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Fix compilation when debug is disabled 2013-11-13 18:59:48 -0300 Reynaldo H. Verdejo Pinochet * gst-libs/gst/codecparsers/Makefile.am: codecparsers: Add -lm needed by H.265 parser 2013-11-13 17:16:04 -0300 Thibault Saunier * gst/videoparsers/gstpngparse.c: pngparse: Proxy upstream framerate on srcpad if avalaible If the user sets it himself with capsfilter, the information should be kept and transmitted downstream. 2013-11-12 18:36:04 -0300 Thibault Saunier * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: Properly add subtitle descriptor for DVb subpicture subtitles We were adding an empty descriptor for them and it was not possible to actually use them on muxed streams. 2013-11-13 14:28:30 +0000 Matthieu Bouron * ext/eglgles/gsteglglessink.c: eglglessink: fix non-egl display context query 2013-11-11 16:15:00 +0100 Mark Nauwelaerts * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: look beyond start code before leaping In case more data than a start code alone is needed to decide whether it ends a frame, arrange for more input data and decide when available. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=711627 2013-11-11 13:24:08 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: declare missing instance variables Fixes build on 32-bit system. https://bugzilla.gnome.org/show_bug.cgi?id=711844 2013-11-10 12:17:18 +0100 Mark Nauwelaerts * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: tweak extension handling 2013-11-10 12:15:33 +0100 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpgegdemux: do not use pushed buffer in debug message 2013-11-09 13:32:21 +0100 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: check for same TSN only for interlaced streams (fixes unit test) https://bugzilla.gnome.org/show_bug.cgi?id=711721 2013-11-09 12:18:02 +0100 Sebastian Dröge * tests/check/Makefile.am: audiomixer: Add test for the ORC code 2013-11-09 09:43:56 +0100 Sebastian Dröge * gst/videoparsers/gstmpegvideoparse.c: Revert "mpegvparse: Fix last start code position when input buffer is empty" This reverts commit 7c23a6f23c185330d74ae4ccce79c3641a2fabac. The fix was not complete, see discussion in https://bugzilla.gnome.org/show_bug.cgi?id=711627 2013-11-08 20:23:27 +0100 Sebastian Dröge * gst-libs/gst/mpegts/gst-dvb-section.h: mpegts: Add some more element-type annotations for g-i 2013-11-07 21:37:29 +0100 Andoni Morales Alastruey * sys/applemedia/coremediabuffer.c: coremediabuffer: keep an extra ref to the image and data buffer 2013-11-07 10:57:22 -0700 Greg Rutz * gst/videoparsers/gstmpegvideoparse.c: mpegvparse: Fix last start code position when input buffer is empty When the input buffer is empty and we need more data to determine whether or not to terminate the previous frame, the last start code location needs to be set to 4 bytes before the the current position (size of start_code is 32-bits) https://bugzilla.gnome.org/show_bug.cgi?id=711627 2013-11-07 14:39:26 +0100 Aurélien Zanelli * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: Fix bad condition in h264 parser https://bugzilla.gnome.org/show_bug.cgi?id=711615 2013-11-07 12:29:48 +0000 Matthieu Bouron * sys/applemedia/coremediabuffer.c: applemedia: coremediabuffer: use correct retain/release functions on CMSampleBufferRef buffer Fixes a crash while releasing the sample buffer after the image buffer it contains. Also fixes a minor coding style error. https://bugzilla.gnome.org/show_bug.cgi?id=711606 2013-11-07 14:26:22 +0000 Matthieu Bouron * sys/applemedia/plugin.m: qtkitvideosrc: lower rank to GST_RANK_SECONDARY Makes avfvideosrc be prefered over qtkitvideosrc since it is deprecated with OS X 10.9. https://bugzilla.gnome.org/show_bug.cgi?id=711614 2013-11-07 13:33:36 +0000 Matthieu Bouron * sys/applemedia/plugin.m: avfvideosrc: set rank to GST_RANK_PRIMARY Makes avfvideosrc to be used with autodetection. https://bugzilla.gnome.org/show_bug.cgi?id=711614 2013-11-07 12:47:51 -0300 Thiago Santos * ext/hls/gsthlssink.c: hlssink: do not lose ref to the multifilesink It is needed to update location properties and it was being lost on state changes, causing issues if the pipeline was to be reused 2013-11-07 12:35:55 -0300 Thiago Santos * ext/hls/gsthlssink.c: hlssink: make sure it is handled as a sink It only gets the sink flag set when it adds the multifilesink, that happens in null->ready and it might be too late. Set the flag explicitly on the constructor. https://bugzilla.gnome.org/show_bug.cgi?id=711086 2013-11-07 13:05:08 +0100 Andoni Morales Alastruey * sys/applemedia/atdec.c: avfvideosrc: fix compiler warning in iOS 2013-11-07 12:29:34 +0100 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: fix build in iOS with isEqualTo doesn't exists 2013-11-07 12:20:31 +0100 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: fix build with older SDK not supporting AVDeviceFormat AVDeviceFormat and AVFrameRateRange are available in iOS since 7.0 so we need a more dynamic approach to support compilation with older SDK's. We use a NSObject to avoid referencing those types and key-value coding or preformSelector to access properties. 2013-11-07 01:38:20 +0100 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: fix checks for HAVE_IOS 2013-11-07 01:37:38 +0100 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: include config.h 2013-11-06 18:53:25 +0100 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: add more debug 2013-11-06 18:50:46 +0100 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: fix compilation with gcc The synthesize block needs to be moved to fix a compiler error 2013-11-06 18:49:35 +0100 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: sort caps with the highest resolution first When started without any caps filter we prefer the highest supported resolution. 2013-11-04 11:14:35 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: support screen capture on OSX https://bugzilla.gnome.org/show_bug.cgi?id=711432 2013-10-31 13:05:40 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: minor cosmetic 2013-10-31 13:03:58 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: use input device formats to set/get caps if available https://bugzilla.gnome.org/show_bug.cgi?id=711211 2013-10-29 15:37:16 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: update caps if frame size has changed On OSX, setting the pixel format on the output reset the capture device to its native resolution, so we need to update the caps if the output frame size has changed before a proper solution is found. 2013-10-29 15:36:06 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: check if low preset is available 2013-10-28 18:22:13 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: use a dedicated queue for AVFoundation calls Replace the main queue with a dedicated queue for AVFoundation calls so the execution on this queue won't block if the main queue is not running. 2013-10-29 17:33:11 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: remove trailing space 2013-10-30 14:51:50 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: dispatch AVFoundation calls synchronously in the main queue 2013-10-30 12:40:01 +0000 Matthieu Bouron * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: applemedia: enable avfvideosrc if AVFoundation is present 2013-10-30 12:39:24 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: only enable 1920x1080 preset on iOS 2013-10-28 11:20:27 +0000 Matthieu Bouron * configure.ac: configure.ac: detect presence of AVFoundation 2013-10-28 11:53:26 +0000 Matthieu Bouron * sys/applemedia/avfvideosrc.m: * sys/applemedia/plugin.m: applemedia: port avfvideosrc to 1.0 2013-11-07 14:12:17 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add unit test for handling unaligned buffers That is, buffers that start or end in the middle of an output block. 2013-11-07 14:12:00 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Fix EOS handling if we have some pending data 2013-11-07 13:57:35 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add test for the discont handling 2013-11-07 13:55:32 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Refactor sync test to be more reusable 2013-11-07 13:48:06 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Remove some racy-ness from the unit test We might already be EOS when we start the mainloop, so only set the pipeline to PLAYING from the main loop. 2013-11-07 09:54:40 +0100 Sebastian Dröge * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: Remove some unused functions 2013-11-06 22:13:13 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: Make sure video-done is post only when file is closed Force filesink to null before posting video-done to make sure the file was closed. Had to do it from a separate thread to avoid calling state_change from a sync message handler. https://bugzilla.gnome.org/show_bug.cgi?id=709373 2013-11-06 23:11:14 +0000 Tim-Philipp Müller * win32/common/libgstcodecparsers.def: win32: add new codecparser API to .def file 2013-10-09 10:54:14 +0300 Sreerenj Balachandran * gst/videoparsers/Makefile.am: * gst/videoparsers/gsth265parse.c: * gst/videoparsers/gsth265parse.h: * gst/videoparsers/plugin.c: videoparsers: add H.265 HEVC video parser element https://bugzilla.gnome.org/show_bug.cgi?id=708438 2013-10-01 13:39:41 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gsth265parser.c: * gst-libs/gst/codecparsers/gsth265parser.h: codecparsers: add H.265 HEVC bitstream parser https://bugzilla.gnome.org/show_bug.cgi?id=708438 2013-11-05 12:43:44 +0100 Wim Taymans * gst/aiff/aiffparse.c: aiffparse: fix seeking in push mode 2013-11-06 15:50:08 +0100 Sebastian Dröge * gst/audiomixer/gstaudiomixer.c: audiomixer: Don't take channel mask in consideration in mono or stereo This could cause negotiation to fail. https://bugzilla.gnome.org/show_bug.cgi?id=708633 2013-11-06 15:31:31 +0100 Sebastian Dröge * tests/check/elements/.gitignore: audiomixer: Add test to the .gitignore file 2013-11-06 15:18:58 +0100 Sebastian Dröge * tests/check/elements/audiomixer.c: audiomixer: Add simply synchronization test 2013-11-06 15:18:50 +0100 Sebastian Dröge * configure.ac: * gst/audiomixer/Makefile.am: * gst/audiomixer/gstaudiomixer.c: * gst/audiomixer/gstaudiomixer.h: * gst/audiomixer/gstaudiomixerorc-dist.c: * gst/audiomixer/gstaudiomixerorc-dist.h: * gst/audiomixer/gstaudiomixerorc.orc: * tests/check/Makefile.am: * tests/check/elements/audiomixer.c: audiomixer: Add new element based on adder that does synchronized audio mixing 2013-11-05 11:19:37 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 865aa20 to dbedaa0 2013-11-04 19:58:35 +0100 Sebastian Dröge * ext/eglgles/gstegladaptation_egl.c: eglglessink: Query upstream first to get a EGLDisplay 2013-11-04 10:04:59 +0100 Sebastian Dröge * sys/applemedia-nonpublic/Makefile.am: applemedia-nonpublic: Link with gmodule for g_module_open() and others 2013-11-04 10:04:42 +0100 Sebastian Dröge * sys/applemedia/Makefile.am: applemedia: Link with gmodule for g_module_open() and others 2013-11-01 22:32:32 +0100 Sebastian Dröge * configure.ac: configure: Always define AM_CONDITIONAL USE_EGLGLES 2013-10-04 12:48:10 +0200 L. Sorin * configure.ac: * ext/curl/Makefile.am: * ext/curl/gstcurl.c: * ext/curl/gstcurlsftpsink.c: * ext/curl/gstcurlsftpsink.h: * ext/curl/gstcurlsshsink.c: * ext/curl/gstcurlsshsink.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/curlsftpsink.c: curl: curlsftpsink - new libcurl-based sink element for SFTP Note: SFTP = SSH File Transfer Protocol The sink acts as a client and uploads data to the SFTP server. https://bugzilla.gnome.org/show_bug.cgi?id=709795 2013-10-31 13:36:25 -0700 Reynaldo H. Verdejo Pinochet * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * ext/Makefile.am: * ext/cdaudio/Makefile.am: * ext/cdaudio/gstcdaudio.c: * tests/check/Makefile.am: * win32/common/config.h: cdaudio: Remove cdaudio plugin This element is being removed due to it been considered obsolete and the functionaily it provides no longer needed. Details on the decision can be found here: https://bugzilla.gnome.org/show_bug.cgi?id=711223 Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=711232 2013-11-01 10:41:16 +0100 Sebastian Dröge * gst/yadif/yadif.c: yadif: Fix compiler warning caused by specifying const twice yadif.c:49:24: warning: duplicate 'const' declaration specifier [-Wduplicate-decl-specifier] DECLARE_ASM_CONST (16, const xmm_reg, pb_1) = { ^ yadif.c:33:50: note: expanded from macro 'DECLARE_ASM_CONST' #define DECLARE_ASM_CONST(n,t,v) static const t __attribute__((used)) __attribute__ ((aligned (n))) v ^ yadif.c:52:24: warning: duplicate 'const' declaration specifier [-Wduplicate-decl-specifier] DECLARE_ASM_CONST (16, const xmm_reg, pw_1) = { ^ yadif.c:33:50: note: expanded from macro 'DECLARE_ASM_CONST' #define DECLARE_ASM_CONST(n,t,v) static const t __attribute__((used)) __attribute__ ((aligned (n))) 2013-11-01 10:40:06 +0100 Sebastian Dröge * gst/yadif/yadif.c: yadif: Fix build with XCode https://bugzilla.gnome.org/show_bug.cgi?id=710451 2013-10-28 15:04:16 +0200 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: Remove the explicit PAR calculation based on VUI headers The PAR calculation based on VUI headers is already doing by the h264 codecparser and we does't need to duplicate those code. https://bugzilla.gnome.org//show_bug.cgi?id=711009 2013-10-17 12:05:44 +0200 Antonio Ospite * docs/plugins/gst-plugins-bad-plugins.args: * gst/geometrictransform/gstrotate.c: rotate: Fix angle property help text The help text of the angle property was probably copied from the circle plugin, fix it to mention the rotation determined by the angle. https://bugzilla.gnome.org/show_bug.cgi?id=710391 2013-10-30 18:48:08 -0700 Reynaldo H. Verdejo Pinochet * configure.ac: * ext/cdaudio/gstcdaudio.c: cdaudio: port to 1.X https://bugzilla.gnome.org/show_bug.cgi?id=711223 2013-10-30 18:25:50 +0100 Andoni Morales Alastruey * sys/androidmedia/gstamc.c: androidmedia: fix rank for more software decoders In Galaxy S4 the codecs list contains some OMX.SEC.foo.sw.dec as software decoders https://bugzilla.gnome.org/show_bug.cgi?id=711214 2013-10-17 12:53:31 +0200 Antonio Ospite * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: Fix setting black background for AYUV buffers When the frame buffer is AYUV writing all zeros does not set it to black, in YUV colorspace 0x10 is the black level for luminance and 0x80 is the black level for chrominance. Fix setting the background to black when the out_frame format is AYUV; in all the other supported formats zeroing the data with memset is still the right thing to do. https://bugzilla.gnome.org/show_bug.cgi?id=710392 2013-10-23 23:34:27 +0100 Matthieu Bouron * sys/applemedia-nonpublic/plugin.m: applemedia-nonpublic: fix plugin name https://bugzilla.gnome.org/show_bug.cgi?id=711135 2013-10-23 17:22:16 +0100 Matthieu Bouron * sys/applemedia/vtenc.c: vtenc: use proper release callback type in CVPixelBufferCreateWithPlanarBytes https://bugzilla.gnome.org/show_bug.cgi?id=711140 2013-09-21 00:20:36 +0100 Matthieu Bouron * sys/applemedia/avfvideosrc.m: avfvideosrc: fix truncated line https://bugzilla.gnome.org/show_bug.cgi?id=710657 2013-10-30 16:20:56 +0100 Andoni Morales Alastruey * ext/eglgles/gstegladaptation_eagl.m: eglglessink: remove unused functions in the eagl backend https://bugzilla.gnome.org/show_bug.cgi?id=711159 2013-10-18 11:54:12 +0200 Andoni Morales Alastruey * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: fix access to invalid buffers in the decoding loop Flushing the decoder invalidates all buffers, so it should be done after quiting the decoding loop. Otherwise we can jump into "failed_release" and stop everything https://bugzilla.gnome.org/show_bug.cgi?id=711156 2013-10-28 09:33:47 +0100 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Unify value setting the initial par_n = par_d = 0; was always overwritten since the switch/case handles all values And remove the 0 case (it's the same handling as default) 2013-10-28 09:33:16 +0100 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Avoid ending up with undefined values If caps aren't fixed, we'd end up with undefined values for format and align. 2013-10-11 11:23:16 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Demote GST_ERROR to GST_WARNING discontinuities are not errors per-se and we handle them correctly. 2013-10-25 11:11:30 +0100 Alex Ashley * ext/hls/gsthlsdemux.c: hlsdemux: fix memory leak in gst_hls_demux_get_next_fragment This patch fixes three memory leaks in hlsdemux, one that occurs during normal operation and two that occur during error conditions. The gst_hls_demux_get_next_fragment function calls gst_fragment_get_buffer which increments the reference count on the buffer but gst_hls_demux_get_next_fragment never calls unref on the buffer. This means that the reference count for each downloaded fragment never gets to zero and so its memory is never released. This patch adds a call to gst_buffer_unref after the flags have been updated on the buffer. There is a leak-on-error in gst_hls_demux_decrypt_fragment if it fails to download the key file. If the key fails to download, null is returned without doing an unref on the encrypted fragment. The semantics of gst_hls_demux_decrypt_fragment is that it takes ownership of the encrypted fragment and releases it before returning. There is a leak-on-error in gst_hls_src_buf_to_utf8_playlist in the unlikely event that the gst_buffer_map fails. In the "happy path" operation of gst_hls_src_buf_to_utf8_playlist the buffer gets an unref before the function returns, therefore the error condition must do the same. https://bugzilla.gnome.org/show_bug.cgi?id=710881 2013-10-23 17:11:20 +0100 Matthieu Bouron * gst/mpegtsmux/mpegtsmux_ttxt.c: mpegtsmux: fix uninitialized variable warning https://bugzilla.gnome.org/show_bug.cgi?id=710759 2013-10-23 16:58:49 +0100 Matthieu Bouron * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: fix uninitialized variable warning https://bugzilla.gnome.org/show_bug.cgi?id=710759 2013-10-18 10:12:56 +0800 Chen Jie * sys/androidmedia/gstamc.c: androidmedia: make gst_amc_avc_profile_from_string recognize alt name https://bugzilla.gnome.org/show_bug.cgi?id=710433 2013-10-12 16:04:25 -0400 Olivier Crête * ext/soundtouch/gstpitch.cc: pitch: Fix inverted condition in setcaps 2013-10-11 10:32:52 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Skip packets with corrupted length This is similar to what we do for packets with payload 2013-10-11 10:29:20 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Refactor language tag extraction subtitling descriptor needs to be used with a different method to extract language codes. 2013-10-11 10:21:25 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: mpegts: Add support for parsing DVB Subtitling descriptor (0x59) Essentially works in the same vein as the iso639 descriptor code 2013-10-10 22:46:48 +0200 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegts: Fix assertion fault in ISO 639 parsing https://bugzilla.gnome.org/show_bug.cgi?id=709180 2013-10-09 17:18:41 +0200 Sebastian Dröge * gst/speed/gstspeed.c: speed: Fix some bytes-per-frame vs. bytes-per-sample mixups Otherwise we will crash when handling multiple channels and miscalculate timestamps. https://bugzilla.gnome.org/show_bug.cgi?id=709734 2013-10-08 11:10:49 +0200 Sebastian Dröge * configure.ac: configure: Make sure to try window-system-agnostic EGL if nothing was auto-detected 2013-10-08 07:56:11 +0200 Stefan Sauer * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: log time format as name instead of the number 2013-10-06 17:37:38 +0200 Gilles Dartiguelongue * configure.ac: egl: Allow disabling gstreamer-egl library https://bugzilla.gnome.org/show_bug.cgi?id=709531 2013-10-05 14:45:33 +0200 Jesper Larsen * gst/mpegtsdemux/tsdemux.c: tsdemux: Use mpegts-lib for ISO 639 language tags https://bugzilla.gnome.org/show_bug.cgi?id=709180 2013-10-05 14:45:32 +0200 Jesper Larsen * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Return descriptor in get_descriptor https://bugzilla.gnome.org/show_bug.cgi?id=709180 2013-10-05 14:45:31 +0200 Jesper Larsen * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: mpegts: Add ISO 639 parsing functions https://bugzilla.gnome.org/show_bug.cgi?id=709180 2013-10-05 00:00:52 +0200 Matej Knopp * gst/dvdspu/gstdvdspu.c: dvdspu: handle sticky dvd events palette-changed events are now sticky. https://bugzilla.gnome.org/show_bug.cgi?id=709454 2013-10-03 07:57:17 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: Small improvement on always valid if condition No need to check for !cancelled as the above if guarantees it to be true 2013-10-03 07:56:21 -0300 Thiago Santos * ext/hls/gsthlsdemux.c: hlsdemux: Do not call _stop holding the updates lock It will cause a deadlock and the calers for _get_next_fragment will already call _stop if required when _get_next_fragment fails. Fixes #690148 2013-06-12 10:50:51 -0600 Greg Rutz * ext/dash/gstdashdemux.c: dashdemux: Improve if cause readability Fixed up the error-handling code when downloading fragments. Modifed the error-handling code to use positive logic when testing for cancellation of the download loop. https://bugzilla.gnome.org/show_bug.cgi?id=701404 2013-09-26 17:05:24 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: actually return true on latency query Do not forget to set the return for latency query 2013-09-26 16:13:33 -0300 Alex Ashley * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: stop fetching live fragments that don't yet exist There is an issue for live streams where download_loop will keep downloading segments until it gets a 404 error for a segment that has not yet been published. This is a problem because this request for a segment that doesn't exist will propagate all the way back to the origin server(s). This means that dashdemux causes extra load on the origin server(s) for segments that aren't yet available. This patch uses availabilityStartTime, period and the host's idea of UTC to decide if a fragment is available to be requested from an HTTP server and filter out requests for fragments that are not yet available. https://bugzilla.gnome.org/show_bug.cgi?id=701404 2013-10-03 13:26:06 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Fix conversion to AVC if a SPS/PPS not from the first indizes is used https://bugzilla.gnome.org/show_bug.cgi?id=707974 2013-10-02 10:55:30 +0200 Sebastian Dröge * configure.ac: * ext/openjpeg/Makefile.am: * ext/openjpeg/gstopenjpeg.h: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/gstopenjpegenc.h: openjpeg: Port OpenJPEG plugin to the 2.0 API 2013-10-02 05:49:43 +0300 Dominik Röttsches * sys/applemedia/vtenc.c: vtenc: Add support for I420 https://bugzilla.gnome.org/show_bug.cgi?id=709241 2013-10-02 05:49:34 +0300 Dominik Röttsches * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: Use correct strides, etc from the GstVideoFrame https://bugzilla.gnome.org/show_bug.cgi?id=706211 2013-08-20 17:03:38 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: store quantization matrices in zig-zag order Quantizer matrices are encoded in zigzag scan order in the bitstream, so always parse it as it is. https://bugzilla.gnome.org/show_bug.cgi?id=708629 2013-10-02 11:40:05 +0300 Sreerenj Balachandran * win32/common/libgstcodecparsers.def: win32: update with the new file libgstcodecparsers.def https://bugzilla.gnome.org/show_bug.cgi?id=708629 2013-10-02 11:24:58 +0300 Sreerenj Balachandran * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: add helpers to convert quantization matrices Add utility functions to convert quantization matrices from zig-zag scan order into raster scan order and vice-versa https://bugzilla.gnome.org/show_bug.cgi?id=708629 2013-09-30 15:32:55 -0600 Brendan Long * configure.ac: * gst-plugins-bad.spec.in: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-mpegts-uninstalled.pc.in: * pkgconfig/gstreamer-mpegts.pc.in: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: Add gstreamer-mpegts pkg-config file. https://bugzilla.gnome.org/show_bug.cgi?id=709145 2013-09-29 23:43:23 +0100 Tim-Philipp Müller * ext/opencv/gstdisparity.cpp: opencv: don't unref NULL caps in finalize Fixes gst-inspect-1.0 -a and generic states unit test. 2013-09-26 13:37:09 +0200 Sebastian Dröge * sys/applemedia/Makefile.am: * sys/applemedia/iosassetsrc.h: * sys/applemedia/iosassetsrc.m: iosassetsrc: Port to 1.0 and fix some bugs on the way 2013-09-26 13:21:59 +0200 Andoni Morales Alastruey * sys/applemedia/Makefile.am: * sys/applemedia/iosassetsrc.h: * sys/applemedia/iosassetsrc.m: * sys/applemedia/plugin.m: iosassetsrc: Add new element from the GStreamer SDK project 2013-09-23 14:36:40 +0200 Sebastian Dröge * ext/eglgles/Makefile.am: * ext/eglgles/gstegladaptation.c: * ext/eglgles/gstegladaptation.h: * ext/eglgles/gstegladaptation_eagl.m: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Port iOS part to 1.0 2013-09-23 13:20:46 +0200 Sebastian Dröge * configure.ac: configure: Fix iOS check for eglglessink 2013-09-23 11:35:56 +0200 Sebastian Dröge * sys/applemedia-nonpublic/Makefile.am: * sys/applemedia-nonpublic/coremediactx.c: * sys/applemedia-nonpublic/plugin.m: * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: applemedia: avfvideosrc is not ported to 1.0 yet 2013-09-18 17:51:26 +0200 Michael Olbrich * gst/liveadder/liveadder.c: liveadder: round when calculation length from duration liveadder sometimes calculates the offsets incorrectly before adding. The resulting errors can easily be heard when mixing silence with a sine. I'm not sure what the exact conditions are to trigger this, but it definitively happens when the buffers of two streams have a different duration and buffer length and duration don't match exactly for one stream because of rounding errors (e.g. duration=0:00:00.021333333) I have to admit, I got lost in the math somewhere but it seems that not rounding in gst_live_adder_length_from_duration() causes 1 sample overlaps in consecutive buffers from the same stream. When using gst_util_uint64_scale_int_round() instead of just truncating the sine sound correctly again. https://bugzilla.gnome.org/show_bug.cgi?id=708345 2013-09-25 15:22:12 +0100 Javier Jardón * ext/hls/gstm3u8playlist.c: hlssink: Use floats for the EXTINF duration values https://bugzilla.gnome.org/show_bug.cgi?id=708851 2013-09-25 15:18:39 +0100 Javier Jardón * ext/hls/gstm3u8playlist.c: hlssink: Write EXT-X-VERSION tag in the playlist file https://bugzilla.gnome.org/show_bug.cgi?id=708851 2013-09-19 14:53:46 +0200 Edward Hervey * tests/check/elements/uvch264demux.c: check: Update uvch264demux for behaviour change Since 006e7a3428bd097fc6e6c648332bff583dd434f9 we no longer error out on incomplete aux segment. 2013-09-27 14:45:00 +0000 Steve Maynard * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-scte-section.h: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/mpegts.h: * gst-plugins-bad.spec.in: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/mpegtsbase.c: mpegts: Add SCTE/EISS sections and table types https://bugzilla.gnome.org/show_bug.cgi?id=708688 2013-07-29 08:10:07 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Wait for valid PCR/offset obvervations It is quite possible that we might get PTS/DTS before the first PCR/Offset observation. In order to end up with valid timestamp we wait until at least one stream was able to get a proper running-time for any PTS/DTS. Until then, we queue up the pending buffers to push out. Once we see a first valid timestamp, we re-evaluate the amount of running-time elapsed (based on returned inital running-time and amount of data/DTS queued up) for any given stream. Taking the biggest amount of elapsed time, we set that on the packetizer as the initial offset and recalculate all pending buffers running-time PTS/DTS. Note: The buffer queueing system can also be used later on for the dvb fast start proposal (where we queue up all stream packets before seeing PAT/PMT and then push them once we know if they belong to the chosen program). 2013-07-07 15:04:18 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Add descriptor dumping 2013-07-26 07:54:30 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtsdemux: New PCR<=>Offset estimation code This allows: * Better duration estimation * More accurate PCR location * Overall more accurate running-time location and calculation Location and values of PCR are recorded in groups (PCROffsetGroup) with notable PCR/Offset observations in them (when bitrate changed for example). PCR and offset are stored as 32bit values to reduce memory usage (they are differences against that group's first_{pcr|offset}. Those groups each contain a global PCR offset (pcr_offset) which indicates how far in the stream that group is. Whenever new PCR values are observed, we store them in a sliding window estimator (PCROffsetGroupCurrent). When a reset/wrapover/gap is detected, we close the current group with current values and start a new one (the pcr_offset of that new group is also calculated). When a notable change in bitrate is observed (+/- 10%), we record new values in the current group. This is a compromise between storing all PCR/offset observations and none, while at the same time providing better information for running-time<=>offset calculation in VBR streams. Whenever a new non-contiguous group is start (due to seeking for example) we re-evaluate the pcr_offset of each groups. This allows detecting as quickly as possible PCR wrapover/reset. When wanting to find the offset of a certain running-time, one can iterate the groups by looking at the pcr_offset (which in essence *is* the running-time of that group in the overall stream). Once a group (or neighbouring groups if the running-time is between two groups) is found, once can use the recorded values to find the most accurate offset. Right now this code is only used in pull-mode , but could also be activated later on for any seekable stream, like live timeshift with queue2. Future improvements: * some heuristics to "compress" the stored values in groups so as to keep the memory usage down while still keeping a decent amount of notable points. * After a seek compare expected and obtained PCR/Offset and if the difference is too big, re-calculate position with newly observed values and seek to that more accurate position. Note that this code will *not* provide keyframe-accurate seeking, but will allow a much more accurate PCR/running-time/offset location on any random stream. For past (observed) values it will be as accurate as can be. For future values it will be better than the current situation. Finally the more you seek, the more accurate your positioning will be. 2013-07-05 17:11:46 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: No longer use a private struct These are not public headers, it just adds complexity for no reason 2013-09-26 16:51:25 +0100 Alex Ashley * ext/hls/gsthlsdemux.c: hlsdemux: Fix dereferencing of NULL pointer On some live HLS streams, gst_hls_demux_switch_playlist causes assertion failures because it tried to dereference a NULL fragment. This is because g_queue_peek_tail sometimes was returning NULL and this case was not being checked. This patch does two things: * move the g_queue_peek_tail inside the semaphore protection * check if q_queue_peek_tail returns NULL https://bugzilla.gnome.org/show_bug.cgi?id=708849 2013-09-27 16:10:54 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: mpegtsparse: Queue buffers until we have enough to know the caps https://bugzilla.gnome.org/show_bug.cgi?id=708222 2013-09-16 11:46:27 +0200 Arnaud Vrac * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: rework TS packet sync and extraction The previous code could enter an infinite loop because the adapter state could get out of sync with its mapped data state after sync was lost. The code was pretty confusing so it's been rewritten to be clearer. The easiest way to reproduce the infinite loop is to use the breakmydata element before tsdemux to trigger a resync. https://bugzilla.gnome.org/show_bug.cgi?id=708161 2013-09-16 11:42:48 +0200 Arnaud Vrac * gst/mpegtsdemux/tsdemux.c: tsdemux: fix buffer overflow This can happen with a corrupt TS file, found with breakmydata element plugged before tsdemux. https://bugzilla.gnome.org/show_bug.cgi?id=708161 2013-09-25 23:57:42 +0100 Tim-Philipp Müller * configure.ac: configure: remove AS_SCRUB_INCLUDE Shouldn't be needed any more. https://bugzilla.gnome.org/show_bug.cgi?id=707658 2013-09-25 20:25:03 +0200 Sebastian Dröge * sys/bluez/gstavdtputil.c: bluez: Fix compilation on big endian systems 2013-09-24 18:31:10 +0100 Tim-Philipp Müller * README: * common: Automatic update of common submodule From 6b03ba7 to 865aa20 2013-09-24 15:05:28 +0200 Sebastian Dröge * configure.ac: configure: Actually use 1.3.0.1 as version to make configure happy 2013-09-24 15:00:27 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.2.0 === 2013-09-24 14:37:58 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-eglglessink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.2.0 2013-09-24 14:37:29 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-09-23 16:18:43 +0200 Sebastian Dröge * gst/sdp/gstsdpelem.c: sdpdemux: Change rank to NONE until it can be autoplugged properly https://bugzilla.gnome.org/show_bug.cgi?id=702495 2013-09-20 16:17:14 +0200 Edward Hervey * common: Automatic update of common submodule From b613661 to 6b03ba7 2013-09-19 20:17:01 +0200 Sebastian Dröge * gst/audiofxbad/gstaudiofxbad.c: audiofxbad: Change plugin name to audiofxbad from audiochannelmix 2013-09-19 20:09:26 +0200 Sebastian Dröge * ext/dash/gstplugin.c: * ext/smoothstreaming/gstsmoothstreaming-plugin.c: dash/smoothstreaming: Remove unused debug category with the same name It caused static linking to fail. 2013-09-19 18:43:28 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 74a6857 to b613661 2013-09-19 17:36:03 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From 098c0d7 to 74a6857 2013-09-19 16:44:48 +0200 Sebastian Dröge * ext/eglgles/Makefile.am: eglglessink: Fix static linking for Android by passing --tag=CC to libtool 2013-09-19 11:35:01 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.90 === 2013-09-19 10:50:47 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-eglglessink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.1.90 2013-09-19 10:46:27 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-09-19 09:46:34 +0200 Sebastian Dröge * po/cs.po: * po/nl.po: * po/pl.po: * po/ru.po: * po/uk.po: * po/vi.po: po: Update translations 2013-09-18 22:36:51 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation.c: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: eglglessink: Update for new GstContext API 2013-09-18 22:24:07 +0200 Sebastian Dröge * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Update for new GstContext API 2013-09-17 17:41:39 -0400 Olivier Crête * ext/hls/gsthlsdemux.c: hlsdemux: Reset GstUriDownloader cancellation when restarting to play 2013-09-15 17:09:16 +0530 Sudip Jain * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Correct condition check for current next indicator https://bugzilla.gnome.org/show_bug.cgi?id=708106 2013-09-12 12:03:45 +0200 Wim Taymans * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: rawparse: fix event order Delay forwarding the segment event until we pushed caps. Send STREAM_START in pull mode. 2013-09-12 13:21:37 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Don't put the level restrictions on the sinkpad caps They tend to be inaccurate and having them in the sinkpad caps prevents playback of files that would otherwise play fine. 2013-09-10 18:51:52 -0300 Thiago Santos * gst/mpegtsdemux/mpegtsbase.c: tsdemux: respect seqnums on seeks Pass the seqnum to other events that are consequence of the original seek event 2013-09-10 11:37:55 +0200 Sebastian Dröge * configure.ac: opencv: We also work with OpenCV 2.4.6.1 2013-09-10 08:48:32 +0000 Iain Lane * ext/modplug/gstmodplug.cc: modplug: Specify directory when including stdafx.h modplug stopped exposing their directory in their pcfile, meaining consumers accessing the headers directly fail to build. http://sourceforge.net/p/modplug-xmms/git/ci/75e9b166982ed637b59ef7cbc1835a09f768923e/ 2013-09-09 13:14:13 -0400 Olivier Crête * sys/uvch264/gstuvch264_src.c: uvch264src: Fix small mem leak 2013-09-07 23:09:31 +0200 Matej Knopp * gst/videoparsers/gsth264parse.c: h264parse: don't update src caps if only codec_data differs https://bugzilla.gnome.org/show_bug.cgi?id=705333 2013-09-05 19:23:10 -0400 Olivier Crête * sys/uvch264/gstuvch264_src.c: uvch264src: Let the caps be NULL if there is no peer 2013-09-05 19:22:51 -0400 Olivier Crête * sys/uvch264/gstuvch264_src.c: uvch264src: No need to drop segment events In 1.0, segment events are sticky and not additive, no need to prevent their accumulation. 2013-09-05 19:10:31 +0100 Tim-Philipp Müller * sys/decklink/gstdecklinksrc.cpp: decklinksrc: send caps event before segment 2013-09-04 10:58:24 +0100 Julien Isorce * ext/eglgles/gsteglglessink.c: eglglessink: change pool->sink->last_buffer to pool->last_buffer So that GstEGLImageBufferPool does not depend on GstEglGlesSink The goal is still to move it into gstegl lib 2013-09-04 10:56:12 +0100 Julien Isorce * ext/eglgles/gsteglglessink.c: eglglessink: buffer pool does not need to maintain a ref on the display Because it does not use it and also it may not know it when we create the pool 2013-09-04 10:52:51 +0100 Julien Isorce * ext/eglgles/gsteglglessink.c: eglglessink: add GstEGLImageBufferPoolSendBlockingAllocate callback The goal here is to prepare GstEGLBufferPool to be moved into gstegl lib. So it has to not depend on 'gst_eglglessink_queue_object' 2013-09-04 10:48:34 +0100 Julien Isorce * ext/eglgles/gstegladaptation.h: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: eglglessink: prepare gst_egl_adaptation_allocate_eglimage to be moved into gstegl lib or splited between gstegl lib and gstgl lib because it both depends on egl and gl So it has to not depend on GstEglAdaptationContext 2013-08-30 13:54:40 +0100 Alex Ashley * gst/videoparsers/gsth264parse.c: * tests/check/elements/h264parse.c: h264parse: Add support for stream-format=avc3 When outputting in AVC3 stream format, the codec_data should not contain any SPS or PPS, because they are embedded inside the stream. In case of avc->bytestream h264parse will push the SPS and PPS from codec_data downstream at the start of the stream, at intervals controlled by "config-interval" and when there is a codec_data change. In the case of avc3->bytstream h264parse detects that there is already SPS/PPS in the stream and sets h264parse->push_codec to FALSE. Therefore avc3->bytstream was already supported, except for the stream type. In the case of bystream->avc h264parse will generate codec_data caps from the parsed SPS/PPS in the stream. However it does not remove these SPS/PPS from the stream. bytestream->avc3 is the same as bytestream->avc except that the codec_data must not have any SPS/PPS in it. |--------------+-------------+-------------------| |stream-format | SPS in-band | SPS in codec_data | |--------------+-------------+-------------------| | avc | maybe | always | |--------------+-------------+-------------------| | avc3 | always | never | |--------------+-------------+-------------------| Amendment 2 of ISO/IEC 14496-15 (AVC file format) is defining a new structure for fragmented MP4 called "avc3". The principal difference between AVC1 and AVC3 is the location of the codec initialisation data (e.g. SPS, PPS). In AVC1 this data is placed in the initial MOOV box (moov.trak.mdia.minf.stbl.stsd.avc1) but in AVC3 this data goes in the first sample of every fragment. https://bugzilla.gnome.org/show_bug.cgi?id=702004 2013-09-03 17:36:08 +0200 Sebastian Dröge * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: soundtouch: Fix compilation with soundtouch 1.4.0 It used FLOAT_SAMPLES/INTEGER_SAMPLES #defines instead of ones properly prefixed with a namespace. https://bugzilla.gnome.org/show_bug.cgi?id=707390 2013-09-03 11:14:43 +0100 Tim-Philipp Müller * .gitignore: .gitignore: ignore new win32 config.h-new 2013-09-03 11:05:02 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Port tiled NV12 conversion to 1.0 2013-09-03 10:56:46 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Add FIXME comment 2013-08-12 10:16:16 +0000 Jorge Luis Zapata * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: add support for a new qualcomm colorspace 2013-09-02 23:28:38 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: minor clean-up 2013-09-02 22:54:32 +0200 Matej Knopp * gst/mpegdemux/gstmpegdemux.c: mpegdemux: send events on pads that are not linked Someone might be waiting for certain events with a probe. https://bugzilla.gnome.org/show_bug.cgi?id=707317 2013-08-28 20:07:48 +0200 Andoni Morales Alastruey * sys/d3dvideosink/Makefile.am: * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: disable buffer pools On a device lost, all the surfaces allocated in the device need to be released before resetting the device, which can't be done for the allocated buffers. https://bugzilla.gnome.org/show_bug.cgi?id=706566 2013-09-02 13:40:37 +0100 Tim-Philipp Müller * Makefile.am: * configure.ac: * win32/MANIFEST: * win32/common/config.h.in: Change how win32/common/config.h is updated Generate win32/common/config.h-new directly from config.h.in, using shell variables in configure and some hard-coded information. Change top-level makefile so that 'make win32-update' copies the generated file to win32/common/config.h, which we keep in source control. It's kept in source control so that the git tree is buildable from VS. This change is similar to the one recently applied to GStreamer and gst-plugins-good. The previous config.h file in -bad was in pretty bad shape, so unlike core and base, I didn't attempt to leave it strictly the same, but fixed it as necessary. Needs testing I cannot do myself. https://bugzilla.gnome.org/show_bug.cgi?id=569015 2013-09-02 12:19:12 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: tests: ignore new aiffparse test binary 2013-09-02 10:29:08 +0200 Sebastian Dröge * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: * ext/soundtouch/gstpitch.hh: soundtouch: Allow compilation against float and integer version of the library https://bugzilla.gnome.org/show_bug.cgi?id=707270 2013-08-30 21:52:35 +0200 Josep Torra * ext/dash/gstdashdemux.c: dashdemux: Fix warnings when building in OS X Snow Leopard gstdashdemux.c:1753: warning: format '%llu' expects type 'long long unsigned int', but argument 8 has type 'long unsigned int' gstdashdemux.c:2224: warning: format '%llu' expects type 'long long unsigned int', but argument 9 has type 'guint64' gstdashdemux.c:2224: warning: format '%llu' expects type 'long long unsigned int', but argument 10 has type 'guint64' 2013-08-30 21:36:19 +0200 Josep Torra * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Fix warnings when building in OS X Snow Leopard gstmpdparser.h:530: warning: type qualifiers ignored on function return type gstmpdparser.c:4177: warning: type qualifiers ignored on function return type 2013-08-30 09:05:43 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Use codecparsers macros note: I/SI also covers the S_I/S_SI variants 2013-08-29 11:02:37 -0700 Kerrick Staley * tests/examples/directfb/gstdfb.c: examples: port directfb example to 1.0 gst_pad_get_negotiated_caps was removed from 1.0; gst_pad_get_current_caps should be used instead. See http://cgit.freedesktop.org/gstreamer/gstreamer/tree/docs/random /porting-to-1.0.txt https://bugzilla.gnome.org/show_bug.cgi?id=707074 2013-08-29 15:55:08 +0100 Tim-Philipp Müller * win32/common/config.h: win32: update config.h 2013-08-29 15:46:14 +0100 Tim-Philipp Müller * ext/directfb/dfbvideosink.c: dfbvideosink: make "layer-mode" property an enum https://bugzilla.gnome.org/show_bug.cgi?id=703520 2013-08-29 14:48:28 +0100 Tim-Philipp Müller * ext/directfb/dfbvideosink.c: dfbvideosink: don't use deprecated GLib thread API https://bugzilla.gnome.org/show_bug.cgi?id=703520 2013-06-26 11:07:14 +0900 Kazunori Kobayashi * configure.ac: * ext/directfb/dfbvideosink.c: * ext/directfb/dfbvideosink.h: dfbvideosink: port to 1.0 including the following supports and fixes: * Create DirectFB surfaces from GstBufferPool * Add NV12 pixel format support * Don't use the cursor in the exclusive mode - EnableCusor() can be only used when the administrative mode is set in DirectFB 1.6.0 and later. * Support multiple plane rendering for planar color formats - This accommodates the chroma plane offsets of the framebuffer in planar formats. * Invoke SetConfiguration regardless of video mode setting in setcaps() - SetConfiguration() method should be invoked regardless of the result of gst_dfbvideosink_get_best_vmode(), since the two are unrelated. * Disable DirectFB signal handler - "--dfb:no-sighandler" option is passed to DirectFBInit(). This prevents DirectFB from trying to kill the process and allows GStreamer's termination sequence to proceed normally. https://bugzilla.gnome.org/show_bug.cgi?id=703520 2013-08-29 10:20:56 +0200 Sebastian Dröge * sys/bluez/gstavdtputil.c: avdtputil: Some minor cleanup and leak fixes 2013-08-28 14:26:04 +0200 Bernhard Miller * sys/bluez/a2dp-codecs.h: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtputil.c: bluez: support aac in avdtpsrc Signed-off-by: Bernhard Miller 2013-08-28 13:26:56 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.4 === 2013-08-28 13:07:27 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-eglglessink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * gst/bayer/gstbayerorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * win32/common/config.h: Release 1.1.4 2013-08-28 13:07:24 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-08-28 12:33:17 +0200 Sebastian Dröge * po/pt_BR.po: po: update translations 2013-08-28 11:13:14 +0100 Tim-Philipp Müller * gst-libs/gst/mpegts/mpegts.h: mpegts: mark as unstable API 2013-08-27 17:05:44 +0100 Tim-Philipp Müller * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: fix possible read beyond end of buffer when resyncing 2013-08-27 11:27:04 +0100 Matthieu Bouron * gst/videoparsers/gsth264parse.c: h264parse: only update src CAPS when it's necessary https://bugzilla.gnome.org/show_bug.cgi?id=705452 2013-08-20 11:59:34 +0100 Matthieu Bouron * gst/videoparsers/gsth264parse.c: h264parse: do not set CAPS and passthrough mode if SPS/PPS have not been parsed https://bugzilla.gnome.org/show_bug.cgi?id=705452 2013-08-26 13:48:02 +0200 Sebastian Dröge * configure.ac: configure.ac: Don't set BZ2_LIBS if bz2 is not found 2013-08-26 10:22:06 +0200 Sebastian Dröge * ext/webp/gstwebpdec.c: webpdec: Some cleanup and minor fixes 2013-08-24 00:46:38 +0300 Sreerenj Balachandran * configure.ac: * ext/Makefile.am: * ext/webp/Makefile.am: * ext/webp/gstwebp.c: * ext/webp/gstwebpdec.c: * ext/webp/gstwebpdec.h: webp: Add WebP image decoder plugin https://bugzilla.gnome.org/show_bug.cgi?id=706285 2012-09-01 20:46:43 +0200 Nicola Murino * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: facedetect: new property to control bus messages updates https://bugzilla.gnome.org/show_bug.cgi?id=655622 2013-08-23 12:01:32 +0200 Sebastian Dröge * ext/opencv/gstopencvutils.c: * ext/opencv/gstsegmentation.cpp: opencv: Fix indention 2013-08-23 12:01:07 +0200 Sebastian Dröge * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: opencv: Port to non-deprecated GMutex/GCond API 2013-08-23 11:38:04 +0200 Miguel Casas-Sanchez * ext/opencv/Makefile.am: * ext/opencv/gstdisparity.cpp: * ext/opencv/gstdisparity.h: * ext/opencv/gstopencv.c: opencv: Add disparity-map calculation element https://bugzilla.gnome.org/show_bug.cgi?id=704760 2013-08-22 17:32:17 +0200 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Remove unused variable 2013-08-22 16:07:58 +0200 Sebastian Dröge * configure.ac: configure: Update opencv dependency, 2.4.5 works too. 2013-08-22 13:45:59 +0200 Kishore Arepalli * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Add 'device-name' property for selecting a audio device https://bugzilla.gnome.org/show_bug.cgi?id=706574 2013-08-22 14:56:05 +0200 Sebastian Dröge * configure.ac: configure: Fix bz2 configure check for Windows Due to function decorations on Windows AC_CHECK_LIB can't be used to check for bz2. https://bugzilla.gnome.org/show_bug.cgi?id=465924 2013-08-21 14:44:38 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Refuse negative rates which we don't support yet And remove a check which was done before 2013-03-10 17:02:18 +0100 Jesper Larsen * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: Set the program number from prog-map The prog-map property of mpegtsmux only allows you to group pids together in a program. The program number set in the PAT/PMT tables cannot be set explicitly. This patch will set the program number according to the prog-map. If a program id of 0 is given, the first vacant program number starting from 1 will be used. https://bugzilla.gnome.org/show_bug.cgi?id=697239 2013-08-21 08:58:52 +0200 Edward Hervey * sys/dvb/camutils.c: * sys/dvb/dvbbasebin.c: dvb: Adapt for latest mpegts lib changes 2013-08-21 08:58:23 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Adapt for latest mpegts lib changes 2013-08-21 08:40:16 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * tests/examples/mpegts/ts-parser.c: mpegts: ABI/API break: Use GPtrArray instead of GArray While it was a great idea, various g-i based bindings don't support GArray with entries greater than sizeof(gpointer) :( So let's just make everybody happy by just using GPtrArray. And since we're breaking the API, also rename the various descriptor fields to no longer have the descriptor_ prefix. It does cost a bit more in terms of memory/cpu usage, but makes it usable from bindings. 2013-08-19 15:31:51 -0400 Robert Krakora * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264src: don't error out on incomplete aux data segment It appears that the Logitech C920 sometimes drops the next to last segment of RAW aux data contained within the MJPEG container. H264 data that is multiplexed with in the same container does not appear to be affected. This appears to be a bug in the Logitech C920 firmware and uvch264src should not error out in this case. Sometimes it can take 24 hours of continuous streaming for the problem to occur, but sometimes it takes only a couple of hours. https://bugzilla.gnome.org/show_bug.cgi?id=706276 2013-08-20 16:01:47 +0200 Edward Hervey * gst/ivtc/gstivtc.c: ivtc: Use input framerate when possible if input is 30000/1001 ... use 24000/1001 as the output fixated framerate 2013-08-15 11:45:34 +0100 Matthieu Bouron * gst/id3tag/id3tag.c: id3mux: handle publisher, interpreted-by and musical-key tags https://bugzilla.gnome.org/show_bug.cgi?id=705999 2013-08-20 13:29:14 +0200 Sebastian Dröge * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Fix switch statement in level detection code Properly fall through the cases without re-assigning the level to the wrong value. https://bugzilla.gnome.org/show_bug.cgi?id=706369 2013-08-19 17:23:28 +0200 Edward Hervey * gst/jpegformat/gstjpegparse.c: jpegparse: Forward segment event after caps Store it until we know what our caps are. 2013-08-20 00:26:06 +0100 Tim-Philipp Müller * tests/check/elements/aiffparse.c: test: fix compiler warning in aiffparse test on 32-bit x86 2013-08-19 09:25:20 +0000 Matthieu Bouron * tests/check/elements/aiffparse.c: aiffparse: fix copyright 2013-08-17 00:22:44 +0100 Tim-Philipp Müller * tests/check/elements/aiffparse.c: tests: fix some leaks in aiffparse unit test 2013-08-17 00:09:18 +0100 Tim-Philipp Müller * tests/check/elements/aiffparse.c: tests: fix state change order in aiffparse test Do state changes from sink to src. Fixes race condition in pull mode test where the source will start up and push buffers to queue/identity or aiffparse before the main thread has managed to set them to playing yet. 2013-08-12 18:33:39 +0100 Matthieu Bouron * tests/check/Makefile.am: * tests/check/elements/aiffparse.c: * tests/files/Makefile.am: * tests/files/s16be-id3v2.aiff: aiffparse: add tests https://bugzilla.gnome.org/show_bug.cgi?id=705993 2013-08-17 00:23:08 +0100 Tim-Philipp Müller * gst/aiff/aiffparse.c: aiffparse: don't leak adapter 2013-08-15 13:58:48 +0100 Matthieu Bouron * gst/aiff/aiffparse.c: aiffparse: s/newsegment/segment/ https://bugzilla.gnome.org/show_bug.cgi?id=705993 2013-08-13 18:42:55 +0100 Matthieu Bouron * gst/aiff/aiffparse.c: aiffparse: fix push mode Fix push mode by handling sink events (CAPS, SEGMENT) properly. https://bugzilla.gnome.org/show_bug.cgi?id=705993 2013-08-16 15:41:48 -0400 Olivier Crête * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: Reparse the config if the size changed Also only re-issue the caps update if the part of the config that changed is one we care about. 2013-08-16 19:48:03 +0100 Tim-Philipp Müller * ext/srtp/gstsrtpdec.c: srtpdec: fix buffers being dropped due to shadowed variable Spotted by gstblub@gmail.com. https://bugzilla.gnome.org/show_bug.cgi?id=706091 2013-08-08 11:19:00 +0100 Chris Bass * ext/dash/gstmpdparser.c: dashdemux: offset segment numbers by startNumber For SegmentTemplate elements containing a startNumber attribute, the `number' member of GstMediaSegments should be offset by the value of startNumber; however, this is not currently the case. As a result, the first URI(s) requested by the download loop will be wrong. This commit ensures that segment numbers will be offset by startNumber when one is present in a SegmentTemplate element. https://bugzilla.gnome.org/show_bug.cgi?id=705661 2013-08-08 15:19:15 +0100 Chris Bass * ext/dash/gstmpdparser.c: dashdemux: remove incorrect timestamp scaling. When using a SegmentTemplate element, the timestamps of the buffers output by dashdemux are incorrect, causing problems downstream. The reason is that GstMediaSegment start times are calculated (in gst_mpdparser_get_chunk_by_index) by multiplying segment index by segment duration and then scaling the result according the `timebase' attribute from the MPD. However, the segment duration is already a GstClockTime (i.e., it has already been scaled according to the timebase from the MPD and converted to a nanosecond value), so multiplying it by the segment index will give the correct timestamp without the need for any further scaling. https://bugzilla.gnome.org/show_bug.cgi?id=705679 2013-08-15 20:12:42 +0100 Tim-Philipp Müller * tests/examples/stats/Makefile.am: * tests/examples/stats/mp2ogg.c: examples: remove another obsolete example 2013-08-15 15:46:58 +0200 Sebastian Dröge * ext/daala/gstdaaladec.c: * ext/daala/gstdaalaenc.c: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgdec.h: * ext/schroedinger/gstschrodec.c: * sys/androidmedia/gstamcvideodec.c: * sys/mfc/gstmfcdec.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: ext: Use new flush vfunc of video codec base classes and remove reset implementations 2013-08-14 19:12:16 +0100 Tim-Philipp Müller * tests/examples/capsfilter/Makefile.am: * tests/examples/capsfilter/capsfilter1.c: * tests/examples/gstplay/.gitignore: * tests/examples/gstplay/Makefile.am: * tests/examples/gstplay/player.c: * tests/examples/indexing/.gitignore: * tests/examples/indexing/Makefile.am: * tests/examples/indexing/indexmpeg.c: * tests/examples/level/Makefile.am: * tests/examples/level/README: * tests/examples/level/demo.c: * tests/examples/level/plot.c: examples: remove prehistoric examples 2013-08-14 18:17:51 +0100 Tim-Philipp Müller * gst/inter/gstinteraudiosrc.c: * gst/inter/gstinteraudiosrc.h: interaudiosrc: make silence memory actually contain silence instead of random data. Reported by Marco Micheletti on gstreamer-devel. 2013-08-14 13:27:03 +0100 Tim-Philipp Müller * sys/dvb/dvbbasebin.c: dvbbasebin: fix criticals when trying to cast a GstPad to a GstElement message->src might be a GstPad. Observed during gst-inspect-1.0 -a 2013-08-14 13:59:27 +0200 Edward Hervey * .gitignore: * gst-libs/gst/mpegts/.gitignore: .gitignore: Update for new files to ignore 2013-08-14 13:41:37 +0200 Edward Hervey * gst/mpegtsdemux/pesparse.c: * gst/mpegtsdemux/pesparse.h: pesparse: Refactory secondary PES extension handling Some streams had wrong values for the stream_id_extension, make sure we only remember the valid ones. For streams with PES_extension_field_length == 0, assume there's nothing else. For streams that state they have a TREF extension but don't have enough data to store it, just assume it was produced by a non-compliant muxer and skip the remaining data. Only store remaining data in stream_id_extension_data instead of storing data we already parse. 2013-08-14 10:47:31 +0200 Zaheer Abbas Merali * gst/pcapparse/gstpcapparse.c: pcapparse: Remove unneeded unref and only set pad caps if we have caps Fixes crashes due to invalid unrefs. https://bugzilla.gnome.org/show_bug.cgi?id=705957 2013-08-14 10:39:46 +0200 Edward Hervey * gst/mpegtsdemux/pesparse.c: pesparse: Fix pes extension data length check And remove length/data updates (we use the header size just below to properly set them). Based on feedback from Stas Sergeev https://bugzilla.gnome.org/show_bug.cgi?id=657343 2013-08-14 10:33:14 +0200 Edward Hervey * gst/mpegtsdemux/pesparse.c: * gst/mpegtsdemux/pesparse.h: * gst/mpegtsdemux/tsdemux.c: pesparse: Remove unused argument We always provided 0 as the offset and never used the returned value. Based on feedback from Stas Sergeev https://bugzilla.gnome.org/show_bug.cgi?id=657343 2013-08-13 17:47:14 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: mpegvideoparse: turn internal consistency check into a g_assert() We only check input from the API user with g_return_*_if_fail(). Internal sanity checks should use g_assert() instead, which is disabled by default for releases. 2013-08-13 17:45:51 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideoparser: minor doc fixes 2013-08-13 12:41:28 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: use gst_data_queue_push_force for adding events to queue This prevents locking on startup when a stream only has a single buffer for one of the streams and mssdemux decides to push an EOS event right after it. 2013-08-08 13:32:02 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: use push_force when adding events to the dataqueue This prevents deadlocks on startup on files that have only a very large buffer for a stream and the queue is filled and will lock on the eos event that is pushed after the buffer. As no buffers have yet been pushed to other streams, the pipeline locks on preroll 2013-07-30 15:17:23 +0200 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: support field encoding for interlaced video https://bugzilla.gnome.org/show_bug.cgi?id=705144 2013-08-12 01:02:51 -0400 Alexandre Rostovtsev * configure.ac: neonhttpsrc: allow building with neon-0.30 https://bugzilla.gnome.org/show_bug.cgi?id=705812 2013-08-12 12:27:33 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: srtp: Let packets through without touching them if no crypto or auth is set 2013-08-12 12:27:16 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Refactor code a bit Simplify the error handling case and get the packet push out of the if() 2013-08-12 11:56:27 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Don't error on invalid packet, just drop it 2013-08-07 15:01:33 +0300 Sreerenj Balachandran * gst/videoparsers/gstvc1parse.c: vc1parse: Fix the SequenceLayer handling for advanced profile. The Sequence Header Data Structure STRUCT_C for Advanced Profile has only a one valid field which is the profile indicator. Don't use the reserved fields for fps update like Simple/Main profile. https://bugzilla.gnome.org/show_bug.cgi?id=705667 2013-08-07 14:52:43 +0300 Sreerenj Balachandran * gst/videoparsers/gstvc1parse.c: vc1parse: Fix seq hdr STRUCT_A handling for advanced profile. The Sequence Header Data Structure STRUCT_A for advanced profile may be eight consecutive zero bytes.Don't try to override the width and height values in this case. https://bugzilla.gnome.org/show_bug.cgi?id=705667 2013-08-07 10:14:20 +0100 Matthieu Bouron * gst/aiff/aiffparse.c: aiffparse: fix SSND data size AIFF chunk size does not include the chunk header size (8 bytes), so the SSND data size is equal to the chunk size minus the SSND header size (8 bytes). https://bugzilla.gnome.org/show_bug.cgi?id=705675 2013-07-13 02:50:52 +0200 Andoni Morales Alastruey * ext/hls/gsthlsdemux.c: hlsdemux: add support for redirections 2013-08-02 20:37:30 +0200 Arnaud Vrac * gst/mpegdemux/Makefile.am: * gst/mpegdemux/gstmpegdemux.c: mpegdemux: send codec tag for each stream 2013-08-10 21:34:10 +0100 Tim-Philipp Müller * tests/check/elements/uvch264demux.c: tests: uvch264demux: send stream-start events and fix event order 2013-08-10 21:33:36 +0100 Tim-Philipp Müller * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264mjpgdemux: fix event ordering 2013-08-10 20:02:01 +0100 Tim-Philipp Müller * tests/check/elements/mplex.c: tests: mplex: fix 'Got data flow before stream-start event' failure 2013-08-10 19:54:57 +0100 Tim-Philipp Müller * tests/check/elements/mpeg2enc.c: tests: mpeg2enc: fix 'Got data flow before stream-start event' failure 2013-08-10 19:44:15 +0100 Tim-Philipp Müller * gst/aiff/aiffparse.c: aiffparse: fix CAPS query Was causing criticals in decodebin/playbin because the caps query done when exposing pads would return ANY caps. 2013-08-10 19:43:41 +0100 Tim-Philipp Müller * gst/aiff/aiffparse.c: aiffparse: don't unref NULL buffer 2013-08-07 19:08:33 +0100 Matthieu Bouron * gst/aiff/aiffparse.c: aiffparse: set missing layout field in srcpad caps https://bugzilla.gnome.org/show_bug.cgi?id=705674 2013-08-07 17:28:29 +0100 Matthieu Bouron * gst/aiff/aiffparse.c: aiffparse: send start stream event https://bugzilla.gnome.org/show_bug.cgi?id=705674 2013-08-06 16:53:37 +0100 Matthieu Bouron * gst/aiff/aiffparse.c: aiffparse: fix buffers initialisation https://bugzilla.gnome.org/show_bug.cgi?id=705674 2013-08-02 14:11:01 +0200 Lubosz Sarnecki * configure.ac: build: add subdir-objects to AM_INIT_AUTOMAKE Fixes warnings with automake 1.14. https://bugzilla.gnome.org/show_bug.cgi?id=705350 2013-08-09 20:12:09 +0100 David Schleef * configure.ac: * tests/check/Makefile.am: tests: create/remove orc directory at proper time Before automake creates .deps directories, and during distclean. https://bugzilla.gnome.org/show_bug.cgi?id=705350 2013-08-09 20:10:35 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/baseaudiovisualizer.c: tests: fix build of baseaudiovisualizer test with subdir-objects option https://bugzilla.gnome.org/show_bug.cgi?id=705350 2013-08-07 09:04:39 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Use slice type to determine if frame is keyframe This is the same behaviour as pre-baseparse-refactoring https://bugzilla.gnome.org/show_bug.cgi?id=705598 2013-08-03 14:20:47 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Do not trigger caps update if we only have PPS updates Updating caps results in downstream elements potentially reconfiguring themselves (such as decoders). If we do this in the middle of keyframes, we would result in those elements being reconfigured and handling garbage until the next keyframe. Instead of this only send (potentially) new codec_data when we have *both* SPS and PPS. https://bugzilla.gnome.org/show_bug.cgi?id=705333 2013-07-31 11:56:39 -0700 David Schleef * gst/ivtc/gstivtc.c: ivtc: quiet FIXME when it's not relevant 2013-07-31 11:54:06 -0700 David Schleef * gst/ivtc/gstivtc.c: ivtc: implement new edge-directed upsampling 2013-08-03 18:07:30 +0100 Tim-Philipp Müller * sys/dvb/gstdvbsrc.c: dvbsrc: remove use of _XOPEN_SOURCE Which causes problems when used with _GNU_SOURCE apparently, and it seems it was only set because of usleep(), which we can just replace with g_usleep() until we get rid of those entirely. https://bugzilla.gnome.org/show_bug.cgi?id=705208 2013-08-02 15:12:17 +0200 Bernhard Miller * sys/bluez/gstavdtpsrc.c: bluez: return GST_FLOW_EOS in avdtpsrc create when stream is EOF Signed-off-by: Bernhard Miller https://bugzilla.gnome.org/show_bug.cgi?id=705349 2013-08-01 11:01:03 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Look harder for next sync position If ever we lose sync, we were just checking for the next 0x47 marker ... which might actually happen within a mpeg-ts packet. Instead check for 3 repeating 0x47 at the expected packet size interval, which the same logic we use when we initially look for the packet size. 2013-08-01 10:58:23 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix PCR LUT table We were only resetting the first 512 values of the lookup table instead of the whole 8192. This resulted in any PCR PID over 0x0200 ... ending up taking the first PCR table around :( 2013-07-30 22:06:38 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: properly error out when manifest has no streams Post an error message when the manifest is parsed and no valid streams are found be activated and used. Fixes #704308 2013-07-30 16:08:17 +0100 Tim-Philipp Müller * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/mpegtsmux.c: mpegts: private/teletext -> application/x-teletext 2013-07-29 21:25:14 +0100 Tim-Philipp Müller * win32/common/config.h: win32: update 2013-07-29 21:24:51 +0100 Tim-Philipp Müller * .gitignore: tests: ignore new example binaries 2013-07-29 21:23:48 +0100 Tim-Philipp Müller * po/LINGUAS: * po/el.po: * po/hr.po: * po/hu.po: * po/nb.po: * po/nl.po: * po/sv.po: * po/vi.po: po: update translations 2013-07-29 14:48:02 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.3 === 2013-07-29 13:52:29 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-eglglessink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.1.3 2013-07-29 13:52:24 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-07-29 12:17:57 +0200 Sebastian Dröge * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst/midi/midiparse.c: midi: Fix handling of the SEGMENT query 2013-07-29 12:14:08 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/tsdemux.c: * gst/mxf/mxfdemux.c: gst: Don't swap start/stop for negative rates in the SEGMENT query 2013-07-29 11:02:34 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Implement SEGMENT query 2013-07-29 11:01:09 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Implement SEGMENT query 2013-07-29 11:00:14 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Implement SEGMENT query 2013-07-29 09:35:08 +0200 Edward Hervey * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: * ext/faac/gstfaac.c: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdesc.c: * ext/resindvd/gstpesfilter.c: * ext/rsvg/gstrsvgdec.c: * ext/smoothstreaming/gstmssdemux.c: * ext/wayland/gstwaylandsink.c: * gst-libs/gst/codecparsers/gsth264parser.c: * gst/audiofxbad/gstaudiochannelmix.c: * gst/debugutils/gstwatchdog.c: * gst/dvdspu/gstdvdspu.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosrc.c: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstivtc.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstpesfilter.c: * gst/mpegtsmux/mpegtsmux.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstzebrastripe.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/h263parse.c: * sys/androidmedia/gstamc.c: * sys/dvb/camapplicationinfo.c: * sys/dvb/camconditionalaccess.c: * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpvideomemory.c: all: Fix for GST_DISABLE_GST_DEBUG Where applicable, remove methods that don't do anything different than the default implementation. 2013-07-29 08:46:39 +0200 Edward Hervey * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-celt.xml: * gst-plugins-bad.spec.in: docs/spec: Really remove all mentions of CELT plugin 2013-07-29 08:29:34 +0200 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Show NALU string type in debug messages If you know the NALU type by heart I tip my hat to you, for the rest of us mere mortals this is a bit more helpful 2013-07-29 08:28:17 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Remove unused macros 2013-07-29 08:23:30 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add more AC3 detection cases ATSC ac3 streams are always guaranteed to be AC3 if EAC3 descriptor is not present If stream registration id is 'AC-3' then it's also guaranteed to be AC3. Finally if AC3 descriptor is present it's guaranteed to be AC3. Only silences a warning, but still. 2013-07-29 08:20:10 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Flush out pending data on EOS Ensures downstream elements (like decoders) really get all the data 2013-07-29 08:18:24 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: More AFC flags I should have put those in a previous commit. sorry :( 2013-07-29 08:14:57 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: mpegdefs: Simplify PCR/PTS/DTS => GST conversion macros We know we will not overflow 64 bits, therefore just use direct multiplication/division instead of the scale method (trims usage from 50 instruction calls to 2/3). 2013-07-28 20:14:55 +0200 Matej Knopp * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: artifacts when rendering clipped spu https://bugzilla.gnome.org/show_bug.cgi?id=705039 2013-07-28 18:28:30 +0200 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: do not update caps when bitrate changes https://bugzilla.gnome.org/show_bug.cgi?id=705035 2013-07-28 14:22:38 -0700 David Schleef * REQUIREMENTS: Fix URIs in REQUIREMENTS 2013-07-28 13:12:32 -0700 David Schleef * configure.ac: * ext/Makefile.am: * ext/celt/Makefile.am: * ext/celt/gstcelt.c: * ext/celt/gstceltdec.c: * ext/celt/gstceltdec.h: * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: celt: remove, replaced by opus. 2013-07-28 17:29:32 +0200 Olivier Crête * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264_mjpgdemux: Remove duplicated variables 2013-07-28 17:25:10 +0200 Olivier Crête * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264_mjpgdemux: Don't unmap/unref buffer if it's pushed out as-is 2013-07-26 18:33:00 +0000 Robert Krakora * sys/uvch264/gstuvch264_mjpgdemux.c: uvcv4l2_mjpegdemux: Unmap buffer https://bugzilla.gnome.org/show_bug.cgi?id=699517 2013-07-28 15:46:33 +0200 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update spec file to be current 2013-07-27 12:17:34 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: HDV only has mpeg 1 audio layer 2 Set that accordingly on the caps 2013-07-26 17:31:22 +0200 Edward Hervey * gst/asfmux/gstasfmux.c: asfmux: Various debug argument fixes mainly G_GUINT16_FORMAT to ... the right type (guint32 or guint8) 2013-07-26 17:25:42 +0200 Edward Hervey * ext/mpg123/gstmpg123audiodec.c: mpg123: Remove dead assignment harder ? :) 2013-07-26 13:20:27 -0700 David Schleef * ext/ladspa/gstladspa.c: ladspa: initialize debug category earlier You know, before it's used. 2013-07-26 07:53:06 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/pesparse.c: mpegtsdemux: Add more flag debugging for PES and TS packets Helps with debugging issues. And also remove unused variable (opcr) This will also allow us in the future to properly detect: * random-access location (to enable keyframe observation and potentially seeking * discont location (to properly handle resets) * splice location (to properly handle new stream changes) 2013-07-24 17:49:59 +0200 Edward Hervey * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparser: Make warnings more meaningful By stating whether we don't have enough data or it's a corrupted packet 2013-07-24 17:49:23 +0200 Edward Hervey * gst/mpegtsdemux/pesparse.c: pesparse: Demote a Warning We actually now know what to do ... have a log message :) 2013-07-25 15:06:12 +0100 Vincent Penquerc'h * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: avoid using clipped out buffers If a buffer was entirely clipped out (ie, it's out of the segment entirely), we'll end up with a NULL buffer, which we don't want to process/dereference. 2013-07-24 15:50:14 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Remember requested seek rate and use it The new seek handling re-creates the segment time information once it has enough information after a seek. The problem was that we'd completely ignore the requested rate. So store that and use it in the newly created segment. https://bugzilla.gnome.org/show_bug.cgi?id=694369 2013-07-24 09:18:43 +0200 Alessandro Decina * sys/applemedia/atdec.c: applemedia: atdec: destroy the queue if set_format fails 2013-07-24 09:15:49 +0200 Alessandro Decina * sys/applemedia/atdec.c: applemedia: atdec: remove c++ style comments 2013-07-24 09:11:59 +0200 Alessandro Decina * sys/applemedia/atdec.c: * sys/applemedia/atdec.h: applemedia: atdec: 1st round of fixes 2013-07-23 10:10:13 +0200 Edward Hervey * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Fix codec_data handling Set to sequence_offset so that _process_config accepts it. (btw: seq_offset usage throughout this plugin is really dodgy) https://bugzilla.gnome.org/show_bug.cgi?id=702806 2013-06-14 07:28:29 +0200 Edward Hervey * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/tsdemux.c: tsdemux: Create and send codec tag Helps with applications that rely on presence of that tag for user-facing information. https://bugzilla.gnome.org/show_bug.cgi?id=702216 2013-07-23 13:29:18 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: hlsdemux: Implement pkcs7 unpadding Every encrypted fragment will be a multiple of 128 bits, the last byte contains the number of bytes that were added as padding in the end and should be removed. https://bugzilla.gnome.org/show_bug.cgi?id=701673 2013-07-23 10:30:39 +0200 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/atdec.c: * sys/applemedia/atdec.h: * sys/applemedia/plugin.m: applemedia: add AudioToolbox based audio decoder 2013-07-23 10:33:21 +0200 Sebastian Dröge * sys/decklink/gstdecklinksrc.cpp: decklink: Add support for group-id in the stream-start event 2013-07-23 10:31:27 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Add support for group-id in the stream-start event 2013-07-23 10:24:22 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Add support for group-id in the stream-start event 2013-07-23 10:21:26 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: tsparse: Add support for group-id in the stream-start event 2013-07-23 10:15:58 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: Add support for group-id in the stream-start event 2013-07-23 10:14:01 +0200 Sebastian Dröge * gst/midi/midiparse.c: * gst/midi/midiparse.h: midiparse: Add support for group-id in the stream-start event 2013-07-23 10:11:49 +0200 Sebastian Dröge * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: Add support for group-id in the stream-start event 2013-07-23 10:09:38 +0200 Sebastian Dröge * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: resindvd: Add support for group-id in the stream-start event 2013-07-23 10:07:24 +0200 Sebastian Dröge * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: hlsdemux: Add support for group-id in the stream-start event 2013-07-23 10:04:42 +0200 Sebastian Dröge * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dash: Add support for group-id in the stream-start event 2013-07-22 17:30:31 +0100 Tim-Philipp Müller * gst/interlace/gstinterlace.c: interlace: fix negotiation if filter caps are passed to query_caps Make videotestsrc ! interlace ! $anything work again. Problem was that upstream filter caps were passed which contained interlace-mode=progressive, which doesn't intersect too well with interlace's source pad template caps, leading to not-negotiated errors. 2013-07-22 14:56:32 +0200 Olivier Crête * gst/videoparsers/gsth264parse.c: h264parse: Don't abort on invalid streams Just return an error 2013-07-19 15:30:42 +0100 Alex Ashley * ext/hls/Makefile.am: * ext/hls/gstfragment.c: * ext/hls/gstfragment.h: hls: fix for assert failure when using encrypted HLS streams When using an HLS encrypted stream, an assertion failure is thrown: (gst-launch-1.0:31028): GLib-GObject-WARNING **: cannot register existing type `GstFragment' (gst-launch-1.0:31028): GLib-CRITICAL **: g_once_init_leave: assertion `result != 0' failed Eventually tracked this down to the call gst_fragment_new() in function gst_hls_demux_decrypt_fragment. The GstFragment class is defined in ext/hls/gstfragment.c and in gst-libs/gst/uridownloader/gstfragment.c. Having two class definitions with the same name causes the assert failure when trying to allocate GstFragment. Deleting the version from hls and editing the Makefile.am solves this assert failure. https://bugzilla.gnome.org/show_bug.cgi?id=704555 2013-07-19 23:42:12 +0200 Youri Westerman * sys/decklink/gstdecklink.cpp: decklink: actually enable decklinksink https://bugzilla.gnome.org/show_bug.cgi?id=704505 2013-07-19 20:09:28 +0200 Youri Westerman * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: add "device-number" to select from multiple devices https://bugzilla.gnome.org/show_bug.cgi?id=704505 2013-07-22 10:46:23 +0200 Edward Hervey * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Only map input buffer once Instead of constantly map/unmapping it a bit everywhere, we pass along to all functions the GstMapInfo. Makes mpeg video frame parsing 6% faster https://bugzilla.gnome.org/show_bug.cgi?id=702330 2013-03-10 12:07:40 +1300 Douglas Bagnall * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: disentangle requested program number from active program number The program_number attribute was overloaded, trying to indicate both the currently playing program, and the program requested via the "program-number" property. The end result was that setting the property didn't work (see #690934). I added a new requested_program_number field rather than reviving the current_program_number field because it seemed this would result in fewer changes overall and be less confusing. It breaks symmetry with the "program-number" property, but it retains parallels with the likes of program->program_number. Because gst_ts_demux_reset is called after the properties have been parsed, requested_program_number is initialised in gst_ts_demux_init. Whether this is exactly the right place, I don't know. 2013-03-06 12:15:47 +0100 Jesper Larsen * gst/mpegtsdemux/tsdemux.c: tsdemux: fix program-number functionality Setting the program-number property does not affect which program is actually being demuxed. Moving the initialization of the program_number from gst_ts_demux_reset to gst_ts_demux_init seems to fix this issue. https://bugzilla.gnome.org/show_bug.cgi?id=690934 2013-07-22 09:18:32 +0200 Sebastian Dröge * ext/resindvd/gstmpegdemux.c: resindvd: Send stream-start event before anything else on the mpeg demuxer srcpads 2013-07-17 17:12:59 +0200 Arnaud Vrac * gst/mpegdemux/gstmpegdemux.c: mpegdemux: do not push discont buffers if they aren't discont Explicitly unset discont flag when it shouldn't be set. https://bugzilla.gnome.org/show_bug.cgi?id=682110 2013-07-17 11:28:28 +0200 Miguel Casas-Sanchez * ext/opencv/Makefile.am: * ext/opencv/gstfacedetect.c: * ext/opencv/gstgrabcut.cpp: * ext/opencv/gstgrabcut.h: * ext/opencv/gstopencv.c: grabcut: Add GrabCut segmentation element https://bugzilla.gnome.org/show_bug.cgi?id=702722 2013-07-15 23:01:31 +0100 Tim-Philipp Müller * gst/videoparsers/h263parse.c: h263parse: fix height extraction for H263p 2013-07-15 22:57:06 +0100 Tim-Philipp Müller * gst/videoparsers/gsth263parse.c: * gst/videoparsers/h263parse.c: * gst/videoparsers/h263parse.h: h263parse: add pixel-aspect-ratio if upstream doesn't provide one 2013-07-09 12:49:55 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: fix typo in check_queue_full function It should return True when the queue IS full Fixes #704226 2013-07-15 11:15:11 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Remember seek sequence number * Avoids handling twice the same seek (can happen with playbin and files with subtitles) * Set the sequence number of the segment event to the sequence number of the seek event that generated it (-1 for the initial one). 2013-05-24 18:18:35 +0200 Arnaud Vrac * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: implement seeking in push mode 2013-05-28 16:14:42 +0200 Arnaud Vrac * gst/mpegtsdemux/tsdemux.c: tsdemux: recalculate new segment after byte seek The seeking start time is approximated from the seek offset in bytes using the accumulated PCR observations, so on a VBR stream there might be a big difference between the actual PCR and the estimated one after the seek. This might result in a long wait to skip all out of segments packets. Instead we just recalculate the new segment to start at the first PTS after the seek, so that playback starts immediatly. 2013-07-13 23:49:44 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Update docs and win32 config.h to development version 2013-07-12 15:58:33 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-openal.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: docs: add newly-ported elements to docs 2013-07-11 17:46:37 +0300 Sreerenj Balachandran * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Use sequence_display_extension values to update the src caps The caps should always represent what the user is supposed to see. So if there is a sequence_display_extension associated with the stream then use the display_horizontal_size/display_vertical_size to update the src caps (if they are less than the values provided by sequence header). https://bugzilla.gnome.org/show_bug.cgi?id=704009 2013-07-12 09:45:38 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-eglglessink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * gst/bayer/gstbayerorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * win32/common/config.h: Release 1.1.2 Oops... should've been part of 1.1.2 tag already :( 2013-07-11 16:57:20 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.2 === 2013-07-11 16:31:22 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-07-10 12:28:38 +0200 Sebastian Dröge * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: Send stream-start event before any data 2013-07-08 08:44:43 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: Avoid parsing section without enough data This is actually a workaround (we'll be skipping the upcoming section) This will only happen for sections where the beginning is located within the last 8 bytes of a packet (which is the minimum we need to properly identify any section beginning). Later we should figure out a way to store those bytes and mark that some analysis needs to happen. The probability of this happening is too low for me to care right now and do that fix. There is a good chance that section will eventually be repeated and won't end up on such border. 2013-07-08 08:43:50 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Add BAT support to mpegts example 2013-07-08 08:42:18 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: Unify section checks and add BAT parsing * Avoid repeating code everywhere, and instead provide all parsing information in one go. * Add BAT support * Refine BAT/CAT identification (by adding PID checks) 2013-07-07 11:42:50 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Avoid vmethod calls Depending on usage, tsparse and tsdemux might not need to be called when new section/pes-data is available. 2013-07-07 10:25:27 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: mpegtsdemux: Remove unneeded variables * packet.origts is no longer used since the PCR refactoring done ages ago * known_packet_size is a duplicate of packet_size != 0 * caps was never used outside of the packetizer 2013-07-09 11:39:46 +0200 Gwenole Beauchesne * gst/videoparsers/gsth264parse.c: h264parser: fix size caps to report cropped dimensions. Restore the original h264parser behaviour to report cropped dimensions in size caps. https://bugzilla.gnome.org/show_bug.cgi?id=694068 Signed-off-by: Gwenole Beauchesne 2013-07-08 18:44:24 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix calculation of the frame cropping rectangle. Fix calculation of the frame cropping rectangle, and more precisely the actual cropped height. The frame_crop_top_offset subtraction was not scaled up with SubHeightC. Also clean-up variables to align more with (7-18) to (7-21). Signed-off-by: Gwenole Beauchesne 2013-02-15 14:18:49 +0200 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: h264parser: Parse the cropping-rectangle separately. Assign the un-cropped width/height to sps->width/sps->height during sps header parsing. Added new fields to SPS header structure to provide the crop-rectangle dimensions. https://bugzilla.gnome.org/show_bug.cgi?id=694068 2013-07-03 16:38:33 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: implement queue full check function Checks if the queue is full according to max buffering time set by the user https://bugzilla.gnome.org/show_bug.cgi?id=701404 2013-07-09 00:47:07 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: minor refactor Split one very large function into 2 smaller but still large functions. Also change the if conditions to positive checks to improve readability. 2013-07-08 23:24:28 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: handle live playback resync During a live stream it is possible for dashdemux to lag behind on a slow connection or to rush ahead of the connection os too fast. For the first case it is necessary to jump some segments ahead to be able to continue playback as old segments are usually deleted from the server. For the later, dashdemux should wait a little before attempting another download do give time to the server to produce a new segment 2013-07-05 13:22:17 -0300 Thiago Santos * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: fix template based segment generation When using a template based segment list, do not try to contruct a finite segment list for the limits of the available periods. We might not know when the period ends (for live streams) and we can always create the segment on demand when requested by dashdemux, avoiding use of some memory and cpu when re-creating this list. 2013-07-04 23:42:23 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: use more appropriate data structures for parsing Replaces the 2 likely larger lists with more appropriate structures to improve performance. Replaces S nodes GList for a GQueue, this reduces latency to startup because of traversing the list just append an element. Replaces the processed media segments GList for a GPtrArray as it is constantly acessed by index during playback. 2013-07-04 15:14:00 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: answer to latency queries Set live if stream is live and also add to the max latency the max internal buffering 2013-07-08 22:01:58 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: fix crash when download is null Do no try to unref a NULL download attribute 2013-07-08 22:00:48 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: do not set cancelled unless explicitly called by user Cancelled is a 'permanent' state of the uridownloader and is only removed by a call to _reset. When a download fails we just want to return NULL on the fetch function and leave the downloader ready for another fetch, otherwise the user has to call _reset after failed downloader, even when it didn't call _cancel. 2013-07-07 08:35:02 +0200 Edward Hervey * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: Avoid false-positives in section type detection Due to the variety of section types out there, we need to add some checks when identifying section types. We check here that the PID is also consistent with the table_id. 2013-07-07 08:29:37 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtsdemux: Fix multiple-SI detection/parsing We had two issues with the previous code: 1) We were badly handling PUSI-flagged packets. We were discarding the initial data (if pointer != 0) whereas we should have been accumulating it with the previous data (if there was a continuity of course). => First series of information loss 2) We were not checking whether there were more sections after the end of one (i.e. when the following byte was not a stuff byte). This fixes those two issues. Fixes #677443 https://bugzilla.gnome.org/show_bug.cgi?id=677443 2013-07-07 07:21:46 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Fix switch/case typo Ended up trying to analyze PMT ... with a PAT :( 2013-07-06 14:50:52 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Handle private section streams Until now we simply ignored those streams (since we couldn't do anything with it anyway). Now that we have the mpegts library and we offload the section handling to the application side we can properly identify and extract them. By default it is disabled for tsparse and enabled for tsdemux, but there is a property to change that. This should open the way to properly handle all private section streams, including: * DSM-CC * MHEG * Carousel data * Metadata streams (though I haven't seen any of those in the wild) * ... And all other specs/protocols making use of those Partially fixes #560631 2013-07-06 12:39:49 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-section.c: * tests/examples/mpegts/ts-parser.c: mpegts: Properly handle UTC time in sections * don't unref inexistant GstDateTime * Fine-tune hour/min/sec BCD reading code * Update example code accordingly 2013-07-06 10:59:08 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Registration descriptor support And output the length of the descriptors 2013-07-06 10:38:26 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-section.c: mpegts: Fix NIT parsing The size checks were wrong. The smallest size for a NIT is 16 bytes (12 for the smallest content + 4 for crc) and the smallest size for a inner stream loop is 6 bytes (without any descriptors). Also remove FIXME that has already moved elsewhere 2013-07-06 10:36:33 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Handle registration descriptor for programs and streams * Allows us to simplify some code and prepare for future cleanups. * Remove useless casts * Add some FIXME regarding VC1 2013-07-05 21:49:48 +0200 Piotr Drąg * po/POTFILES.in: * po/POTFILES.skip: po: update POTFILES https://bugzilla.gnome.org/show_bug.cgi?id=703683 2013-07-05 11:20:49 -0600 Brendan Long * gst/subenc/gstwebvttenc.c: webvttenc: Separate cues with two line breaks instead of one. See http://dev.w3.org/html5/webvtt/#syntax https://bugzilla.gnome.org/show_bug.cgi?id=703673 2013-07-05 18:33:42 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: mpeg2: fix video packet header size checks. Fix video packet header size checks for: - Sequence Header: 64 bits ; - Sequence Scalable Extension: 10 bits ; - Slice Header: 6 bits. https://bugzilla.gnome.org/show_bug.cgi?id=703668 Signed-off-by: Gwenole Beauchesne 2013-07-05 14:58:25 +0200 Gwenole Beauchesne * docs/libs/gst-plugins-bad-libs-sections.txt: codecparsers: mpeg2: add missing gtk-doc entries. The following functions were missing gtk-doc entries: - gst_mpeg_video_parse_sequence_display_extension - gst_mpeg_video_finalise_mpeg2_sequence_header - gst_mpeg_video_quant_matrix_get_raster_from_zigzag - gst_mpeg_video_quant_matrix_get_zigzag_from_raster https://bugzilla.gnome.org/show_bug.cgi?id=703667 Signed-off-by: Gwenole Beauchesne 2013-01-31 11:57:54 +0100 Gwenole Beauchesne * tests/check/libs/mpegvideoparser.c: codecparsers: mpeg2: update test program with new GstMpegVideoPacket API. This is the lost hunk from: https://bugzilla.gnome.org/show_bug.cgi?id=692933 Signed-off-by: Gwenole Beauchesne 2013-01-30 16:56:15 +0200 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpeg2: add slice header parsing API. Add API to parse the Slice header. This also calculates the macroblock position as specified in 6.3.16. https://bugzilla.gnome.org/show_bug.cgi?id=664274 Signed-off-by: Sreerenj Balachandran Signed-off-by: Gwenole Beauchesne 2013-01-25 15:48:58 +0200 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpeg2: add sequence scalable extension parsing API. Add API to parse the Sequence Scalable Extension header. https://bugzilla.gnome.org/show_bug.cgi?id=664274 Signed-off-by: Sreerenj Balachandran Signed-off-by: Gwenole Beauchesne 2013-07-04 14:22:14 +0200 Gwenole Beauchesne * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: cope with new parser API. Migrate the code to use the new parser API based on GstMpegVideoPacket. Also try to optimize gst_mpegv_parse_process_config() by using more of GstMpegVideoPacket and determining the extension_start_code_identifier prior to calling the parser function for that extension packet. Signed-off-by: Gwenole Beauchesne 2013-01-31 11:57:54 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpeg2: add new API that takes GstMpegVideoPacket arguments. Add new interface to MPEG-2 video parser that takes GstMpegVideoPacket arguments instead of data, size, and offset. New functions are called after gst_mpeg_video_packet_*() and provide the default implementation. Older API is moved to the deprecated namespace and uses the new functions. https://bugzilla.gnome.org/show_bug.cgi?id=692933 Signed-off-by: Gwenole Beauchesne 2013-07-05 16:46:42 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Remove no-longer needed code Since we now send all sections to the packetizer, we no longer need to do anymore in-depth checks for the validity of a section. The choice boils down to: 1) Is it from a known PES pid ? If so pass it on (which might be just pushing downstream in the case of tsparse, or accumulating PES data for tsdemux) 2) Is it from a known SI pid ? If so pass it to the section packetizer 2013-07-05 13:53:06 +0200 Edward Hervey * sys/dvb/dvbbasebin.c: dvb: Fix PMT handling Was using an older (temporary) version of the mpegts library API. 2013-07-05 10:57:34 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: Fix compilation with debugging disabling We previously weren't using that variable ... 2013-07-04 08:43:37 +0200 Edward Hervey * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gst-dvb-section.c: * gst-libs/gst/mpegts/gst-dvb-section.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: mpegts: Improve documentation * Add a base page for the library * Add pages for the base MPEG-TS section and descriptors * Add pages for the known variants * Add documentation on more fields/sections/types * Remove some fixmes that were ... fixed 2013-07-04 07:49:37 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Switch to using GstMpegTsStreamType We still have some other stream types which haven't been ported, but we will do so once we have defined the enums in the mpegts library. Also add some FIXMEs regarding items discovered during analysis 2013-07-04 07:48:10 +0200 Edward Hervey * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: mpegtsdescriptor: Fix handling of unknown stream encodings If we cannot identify the encoding used for a string, return a NULL string instead of garbage and add a FIXME so we can detect and later fix it. 2013-07-04 07:45:12 +0200 Edward Hervey * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/mpegts/gstmpegtssection.h: * tests/examples/mpegts/ts-parser.c: mpegts: Add registered mpeg-ts stream types These are the values officially registered in the base specification (H.222.0/13818-1). Later on we can add other enums for other variants Note that the enum is not used in the structure fields (such as a pmt stream stream_type field) since it can contain values from other variants. 2013-07-04 02:12:30 -0300 Thiago Santos * tests/examples/camerabin2/Makefile.am: camerabin: examples: add missing lib to makefile Fixes initialization of sample application 2013-07-03 19:11:45 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: prevent assertion when duration is unknown Duration from segment being unknown is a issue from the MPD and not a programming issue, so the assert isn't useful here. Instead check and return an error code so the caller can fallback to alternatives 2013-07-03 19:11:11 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: Fix event leak when parsing manifest fails Always remember to unref the event before proceeding, in both success and failure cases 2013-07-03 12:30:28 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: various cleanups Removing unused function, replacing // comments with /* */ and replacing some GST_WARNING with GST_INFO/_DEBUG as they are meant to be 2013-06-11 14:28:53 +0100 Alex Ashley * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Change first fragment selection for live streams When dashdemux selects its first fragment, it always selects the first fragment listed in the manifest. For on-demand content, this is the correct behaviour. However for live content, this behaviour is undesirable because the first fragment listed in the manifest might be some considerable time behind "now". The commit uses the host's idea of UTC and tries to find the oldest fragment that contains samples for this time of day. https://bugzilla.gnome.org/show_bug.cgi?id=701509 2013-07-03 18:52:18 +0200 Edward Hervey * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gst-dvb-descriptor.c: * gst-libs/gst/mpegts/gst-dvb-descriptor.h: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/mpegts.h: mpegts: split dvb descriptors/enums into a separate file We will do the same once we have ATSC/ISDB/... descriptor parsing 2013-07-03 18:44:54 +0200 Edward Hervey * gst-libs/gst/mpegts/gst-dvb-section.c: * tests/examples/mpegts/ts-parser.c: mpegts: Fix TOT section parsing And use it in example 2013-07-03 18:00:55 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: Fix a leak 2013-07-03 17:59:02 +0200 Edward Hervey mpegts: Split files and implement free functions * In order to avoid future clashing between table_id for the various mpeg-ts variants, use different enums. * In order to keep everything clean(ish) and allow for cleaner growth, split into different files (will need the same for descriptors later) * Also ... implement free functions for all table types :) 2013-07-03 15:30:01 +0200 Edward Hervey * win32/common/config.h: win32: back to feature development 2013-07-03 10:16:29 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: only generate index segment uri if there is a template Simple fix to avoid an assertion. 2013-06-21 17:09:30 -0600 Greg Rutz * ext/dash/gstmpdparser.c: dashdemux: Implement inheritance for certain MPD elements According to the MPEG-DASH spec, certain elements (i.e. SegmentBase, SegmentTemplate, and SegmentList) should inherit attributes from the same elements in the containing AdaptationSet or Period. Updated the SegmentBase, SegmentTemplate, and SegmentList parsers to properly inherit attributes from the corresponding elements in AdaptationSet and/or Period. https://bugzilla.gnome.org/show_bug.cgi?id=702677 2013-06-21 15:51:46 -0600 Greg Rutz * ext/dash/gstmpdparser.c: dashdemux: Properly detect presence of xml attributes Convert all xml attribute/content parsing functions to return a boolean value indicating whether or not the attribute/content was present. We need this finer-grained control in order to properly implement the inheritance policies described in the spec Also fixed several memory leak conditions when handling errors in the xml attribute/content parsing functions. https://bugzilla.gnome.org/show_bug.cgi?id=702677 2013-07-02 21:31:48 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: change debug message from warning to info It isn't a warning/issue. 2013-07-02 21:28:26 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: protect from access to empty list data Check if the list has elements before trying to access the last one and causing a segfault 2013-07-02 23:16:59 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: Simplify locking to fix deadlocks Use object lock to protect variables from concurrent access and use download_lock to only allow one download running 2013-07-02 16:04:45 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: protect against failed header downloads Avoids criticals when downloaded fragment is NULL 2013-07-03 13:59:04 +0200 Edward Hervey * tests/examples/mpegts/ts-parser.c: examples: GstMpegTS => GstMpegTs 2013-07-03 13:57:57 +0200 Edward Hervey * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camutils.c: * sys/dvb/camutils.h: * sys/dvb/dvbbasebin.c: dvb: GstMpegTS => GstMpegTs 2013-07-03 13:57:38 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: GstMpegTS => GstMpegTs 2013-07-03 13:56:22 +0200 Edward Hervey * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: libs/mpegts: Rename GstMpegTS => GstMpegTs Sorry for this :( But this makes it more in sync with expected type naming in gobject (i.e. CamelCase and not CamelMAYBECase). Also split descriptor type enums into the different variants: * ISO H.222.0 / 13818-1 (i.e. standard mpeg-ts) * DVB * ATSC * ISDB * miscellaneous This will avoid future clashes when specs use the same descriptor type 2013-07-01 08:35:26 +0200 Edward Hervey * configure.ac: * tests/examples/Makefile.am: * tests/examples/mpegts/Makefile.am: * tests/examples/mpegts/ts-parser.c: examples: Add an example of a mpeg-ts SI extractor Serves as an example of usage of the new mpegts library from an application. Will parse/dump all sections received on a bus. Usage is ./tsparse Examples: ./tsparse file:///some/mpegtsfile ! tsparse ! fakesink ./tsparse dvb://CHANNEL ! tsparse ! fakesink ./tsparse playbin uri=dvb://CHANNEL ./tsparse playbin uri=file:///some/mpegtsfile ... https://bugzilla.gnome.org/show_bug.cgi?id=702724 2013-06-23 08:44:08 +0200 Edward Hervey * sys/dvb/Makefile.am: * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camutils.c: * sys/dvb/camutils.h: * sys/dvb/dvbbasebin.c: dvb: Switch to MPEG-TS SI library Also serves as an example of using mpegts library from a plugin https://bugzilla.gnome.org/show_bug.cgi?id=702724 2013-06-23 08:43:23 +0200 Edward Hervey * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/gstmpegdesc.c: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/gsttsdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/pesparse.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Switch to MPEG-TS SI library * Only mpeg-ts section packetization remains. * Improve code to detect duplicated sections as early as possible * Add FIXME for various issues that need fixing (but are not regressions) https://bugzilla.gnome.org/show_bug.cgi?id=702724 2013-06-23 08:41:12 +0200 Edward Hervey * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/Makefile.am: * gst-libs/gst/mpegts/Makefile.am: * gst-libs/gst/mpegts/gstmpegts-private.h: * gst-libs/gst/mpegts/gstmpegtsdescriptor.c: * gst-libs/gst/mpegts/gstmpegtsdescriptor.h: * gst-libs/gst/mpegts/gstmpegtssection.c: * gst-libs/gst/mpegts/gstmpegtssection.h: * gst-libs/gst/mpegts/mpegts.h: gst-libs: New Mpeg-TS support library Exposes various MPEG-TS (ISO/IEC 13818-1) and DVB (EN 300 468) Section Information as well as descriptors for usage by plugins and applications. This replaces entirely the old GstStructure-based system for conveying mpeg-ts information to applications and other plugins. Parsing and validation is done on a "when-needed" basis. This ensures the minimal overhead for elements and applications creating and using sections and descriptors. Since all information is made available, this also allows applications to parse custom sections and descriptors. Right now the library is targeted towards parsing, but the structures could be used in the future to allow applications to create and inject sections and descriptors (for usage by various mpeg-ts elements). https://bugzilla.gnome.org/show_bug.cgi?id=702724 2013-06-10 18:01:14 -0400 Olivier Crête * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: Handle case without an initialization segment If no initialization segment is defined, then don't print a critical or a warning, just ignore it. https://bugzilla.gnome.org/show_bug.cgi?id=701961 2013-07-01 18:22:46 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: save 1 or 2 string copies when getting fragment uris Only create new string if required, saving maybe 1 or 2 str copies per fragment. 2013-07-01 18:15:43 -0300 Thiago Santos * docs/libs/Makefile.am: docs: add uridownloader lib to gtk-doc libs fixes runtime linking error on windows 2013-07-01 17:50:37 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: each fragment can have its own index Return index URI/range to dashdemux from the mpdparser to be able to download and deliver them downstream for playback. 2013-07-01 13:19:15 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: handle top-level index urls Parse and provide access to top-level index segments if available. dashdemux should push those whenever a header is pushed. Fixes #700489 2013-05-06 17:08:54 -0400 Arthur Shipkowski * ext/dash/gstmpdparser.c: dashdemux: Fix critical error output when Initialization has no URL Issue evinced by http://yt-dash-mse-test.commondatastorage.googleapis.com/car-20120827-manifest.mpd which produces output like ** (gst-launch-1.0:8060): CRITICAL **: gst_mpdparser_get_initializationURL: assertion `InitializationURL->sourceURL != NULL' failed https://bugzilla.gnome.org/show_bug.cgi?id=700489 2013-07-01 14:35:02 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: prevent crash by checking if the segment node is present Do not try to access range data if there is no segment node 2013-06-25 18:34:13 -0300 Thiago Santos * ext/dash/Makefile.am: * ext/dash/gstdash_debug.h: * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dash: use same debug category for dashdemux and the mpd parser Makes debugging easier 2013-06-20 03:52:31 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: add support for range based segments Use the mediaRange information and pass it to the uridownloader to correctly download only the segment ranges indicated in the MPD https://bugzilla.gnome.org/show_bug.cgi?id=702206 2013-06-19 18:28:15 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: add support for range based downloads Adds a new API gst_uri_downloader_fetch_uri_with_range that allows downloading only a byte range from an URI. It uses a seek event sent to the source to signal the range to be downloaded. https://bugzilla.gnome.org/show_bug.cgi?id=702206 2013-03-09 01:49:23 +0200 Sreerenj Balachandran * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Fix the return value type for the SEI palyload parsing methods. The return value type of SEI payload parsing functions are GstH264ParserResult. https://bugzilla.gnome.org/show_bug.cgi?id=695475 2013-06-28 20:15:08 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: srtp: Don't require a key if both auth and cipher are null 2013-06-28 20:32:36 -0400 Olivier Crête * ext/srtp/Makefile.am: * ext/srtp/gstsrtp.c: * ext/srtp/gstsrtp.h: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.h: srtp: Move the enums to the common header The types are used in both the encoder and decoder 2013-06-28 20:13:38 -0400 Olivier Crête * ext/srtp/gstsrtpenc.c: srtp: Remove unused code 2013-06-28 12:25:59 +0200 Andoni Morales Alastruey * gst/frei0r/gstfrei0r.c: frei0r: add the build prefix path in the search dirs 2013-06-25 10:26:24 -0600 Greg Rutz * ext/dash/gstmpdparser.c: dashdemux: Cleanup memory allocation/deallocation Ensure that g_free/xmlFree is used correctly based on how the memory was allocated. When deallocating GLists, there were many places that were using g_list_foreach and g_list_free. Converted these occurrences to call g_list_free_full. Add NULL checks to all xmlFree calls since the documentation does not guarantee that passing NULL is safe In places where we are strdup'ing memory allocated by libxml2, changed those calls to use xmlMemStrdup(). There were several places where we were missing g_slice_free when deallocating a top-level node structure. https://bugzilla.gnome.org/show_bug.cgi?id=702837 2013-06-24 13:02:40 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.h: mpegdesc: Extend list of known descriptors Add the various ATSC ones 2013-06-24 08:24:58 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Only warn for added streams when needed We use add_stream(stream_type:-1) to ensure a programs' PCR Stream is also taken into account. For most programs this will re-use an existing ES stream. So only warn that we are re-adding a stream if it was already present AND it is not to ensure the PCR stream is taken into account. 2013-06-23 15:12:58 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Speed up section parsing Only create subtables when needed. It was previously creating one every single time ... to check if one was present. And speed up code to detect whether a subtable was already present or not. Overall makes section pushing 2 times faster. 2013-06-24 07:40:20 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.h: mpegdesc: Extend list of known descriptors From ITU-T H222.0 (06/2012). Freely available from itu.int 2013-06-23 15:26:14 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: mpegtspacketizer: Speedup packet parsing Avoid using bitshifting where not needed. Speeds up packet parsing by 3% (this is *the* hotspot of mpeg-ts elements). 2013-06-22 08:57:12 +0200 Edward Hervey * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: Fix gtk-doc Detected by initial pre-run of gi-scanner. 2013-06-23 11:29:23 +0200 Sebastian Dröge * ext/daala/gstdaala.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaaladec.h: daaladec: Add decoder element 2013-06-23 10:04:29 +0200 Sebastian Dröge * configure.ac: * ext/daala/gstdaala.c: * ext/daala/gstdaalaenc.c: * ext/daala/gstdaalaenc.h: daalaenc: Add encoder element 2013-06-22 11:27:37 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/daala/Makefile.am: * ext/daala/gstdaala.c: * ext/daala/gstdaaladec.c: * ext/daala/gstdaaladec.h: * ext/daala/gstdaalaenc.c: * ext/daala/gstdaalaenc.h: daala: Initial version of a Daala plugin 2013-06-23 09:05:29 +0200 Edward Hervey * ext/srtp/Makefile.am: srtp: Fix dist The enums should not be dist-ed and instead be re-generated when compiling. 2013-06-19 20:39:54 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Better detect already seen section In some cases (NIT on highly-populated DVB-C operator for example), there will be more than one section emitted for the same subtable and version number. In order not to lose those updates for the same version number, we checked against the CRC of the previous section we parsed. The problem is that, while it made sure we didn't lose any information, it also meant that if the same section came back (same version, same CRC) later on we would re-process it, re-parse it and re-emit it. This version improves on that by keeping a list of previously observed CRC for identical PID/subtable/version-number and will only process sections if they really were never seen in the past (as opposed to just before). On a 30s clip, this brings down the number of NIT section parsing from 4541 down to 663. https://bugzilla.gnome.org/show_bug.cgi?id=614479 2013-06-20 22:12:11 +0200 Sebastian Dröge * configure.ac: * sys/Makefile.am: * sys/winscreencap/Makefile.am: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstdx9screencapsrc.h: * sys/winscreencap/gstgdiscreencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.h: * sys/winscreencap/gstwinscreencap.h: winscreencap: Initial port to 1.0 2013-06-20 09:52:31 +0200 Xavi Artigas * sys/androidmedia/gstamcvideodec.c: androidmedia: Fix copying of raw video frames on Samsung Galaxy S3 with Exynos 4 SOC 2013-06-19 12:52:52 -0700 Aleix Conchillo Flaque * sys/shm/gstshmsink.c: shmsink: unref buffer if no clients are connected If no client has received the command, unref the buffer. This will make sure that the shared memory area does not get filled with buffers no one knows about. https://bugzilla.gnome.org/show_bug.cgi?id=702684 2013-06-19 19:29:27 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Speed up NIT parsing Avoid duplicating the delivery structure, and instead give it to the receiving container. 2013-06-07 12:53:08 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: simplify code We don't need generic methods for push/flush since we know all the subclass that we control 2013-06-05 15:51:58 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Fix for compiling without GST_DEBUG Protect debug-only variables/usage, and in one case remove a useless variable. 2013-06-17 08:15:54 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: tsparse: Ensure initial events are sent in the right order First send stream-start, then caps, then segment. The segment we push is from upstream in push-mode. If we work in pull-mode then we initialize the base segment to BYTES. https://bugzilla.gnome.org/show_bug.cgi?id=702422 2013-06-18 12:29:41 -0700 Aleix Conchillo Flaque * sys/shm/gstshmsink.c: shmsink: propagate events to basesink class https://bugzilla.gnome.org/show_bug.cgi?id=702597 2013-06-18 13:47:54 +0200 Benjamin Gaignard * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/waylandpool.c: wayland: Add support for RGBx and RGBA formats Wayland interface could offer two buffers pixels formats: WL_SHM_FORMAT_XRGB8888 and WL_SHM_FORMAT_ARGB8888. Update waylandsink to support them and check if the format is really available. https://bugzilla.gnome.org/show_bug.cgi?id=702112 2013-06-18 12:46:07 +0100 Tim-Philipp Müller * ext/opencv/Makefile.am: opencv: fix CFLAGS order and add plugins base libs includes to CXXFLAGS https://bugzilla.gnome.org/show_bug.cgi?id=702297 2013-06-15 00:12:18 +0200 Alban Browaeys * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: opencv: fixes build by moving the c++ header to gstsegmentation.cpp Fixes: In file included from gstsegmentation.h:51:0, from gstopencv.c:42: /usr/include/opencv2/video/background_segm.hpp:47:16: fatal error: list: No such file or directory #include ^ compilation terminated. https://bugzilla.gnome.org/show_bug.cgi?id=702297 2013-06-18 13:33:14 +0200 Andoni Morales Alastruey * sys/applemedia/vtdec.c: applemedia: fix release of null pointer 2013-06-18 13:17:52 +0200 Thiago Santos * sys/applemedia/coremediabuffer.c: applemedia: coremediabuffer: fix leaking of apple media structs remember to release the apple's api buffers to avoid huge leaking 2013-06-18 13:02:42 +0200 Andoni Morales Alastruey * sys/applemedia/Makefile.am: applemedia: move defines to CPPFLAGS for obj-c files 2013-06-11 11:54:41 +0200 Andoni Morales Alastruey * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: dshowaudiosrc: fix audiocapture producing silence Configure the capture latency using the IAMBufferNegotiation interface and try to respect the configured latency-time and buffer-time 2013-06-14 14:52:07 +0200 Sebastian Dröge * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Make sure the buffer is writable before we add the MPEG video meta https://bugzilla.gnome.org/show_bug.cgi?id=702174 2013-06-13 13:34:37 +0200 Sebastian Dröge * sys/applemedia-nonpublic/Makefile.am: * tests/examples/camerabin2/Makefile.am: build: Fix some automake warnings 2013-05-27 22:22:32 +0200 Arnaud Vrac * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: fix M2TS stream resync Sync byte scan is incorrect for M2TS streams because the timestamp 4 bytes were not included in the flush size. This can result in an infinite loop. Rework the scan code to be clearer and work in all cases. 2013-05-24 10:59:55 +0200 Arnaud Vrac * gst/mpegtsdemux/tsdemux.c: tsdemux: move some debug prints at the log level 2013-05-24 10:59:59 +0200 Josep Torra * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: fixes seeking in pull mode Preserve the current segment and observations in pull mode seeks with flushing. https://bugzilla.gnome.org/show_bug.cgi?id=698050 2013-06-11 19:45:31 +0200 Patricia Muscalu * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: removed an incorrect assert https://bugzilla.gnome.org/show_bug.cgi?id=702036 2013-06-11 14:32:43 +0200 Miguel Casas-Sanchez * ext/opencv/Makefile.am: * ext/opencv/gstopencv.c: * ext/opencv/gstsegmentation.cpp: * ext/opencv/gstsegmentation.h: opencv: add foreground/background segmentation element Add an element to the opencv plugin for foregroung/background image sequence segmentation, using one out of 3 algorithms. https://bugzilla.gnome.org/show_bug.cgi?id=701421 2013-06-10 17:00:42 +0200 Hans de Goede * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Add video-source-filter during construction By adding the video-source-filter during construction time, rather then patching it in later (*), we can greatly reduce the amount of caps involved in negotation, speeding up pipeline creation. I wrote this while working on speeding up the startup of cheese. My cheese has been modified to add a capsfilter, filtering for only the configured resolution, with that cheese patch + this patch, the pipeline creation time goes from aprox 1.1 seconds to aprox 350ms. This is with a Logitech 9000 pro camera, which supports lots of different resolutions at many different framerates per resolution, causing a caps "explosion" if not filtered. *) Note the code for this is left in, as it is still necessary if the video-source-filter is changed between a stop + re-start. https://bugzilla.gnome.org/show_bug.cgi?id=701953 2013-06-10 18:00:13 -0400 Olivier Crête * ext/dash/gstdashdemux.c: dashdemux: Make gst-indent happy 2013-06-10 10:05:56 +0200 Hans de Goede * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Don't unset the video-source property on pipeline start check_and_replace_src() was setting self->app_vid_src to NULL, which means that an app setting the video-source property, and then starting, stopping and re-starting the pipeline (ie to make changes to the video-source-filter property) would after the restart no longer have a video-source. This patch fixes this by making gst_camerabin_setup_default_element return a ref to the passed in user_element, rather then returning the user_element as is, so that that ref can be passed on to the bin, and the app_vid_src ref stays valid. https://bugzilla.gnome.org/show_bug.cgi?id=701915 2013-06-08 14:48:03 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation_egl.c: eglglessink: Remove workaround for a bug in the RPi EGL implementation It's fixed in the latest firmware since a few weeks. 2013-05-06 16:56:01 -0400 Arthur Shipkowski * ext/dash/gstdashdemux.c: dashdemux: Fix issue with get returning a value for max-buffering-time It was not properly divided by GST_SECONDS. Also fix issue with max-buffering-time being multiplied by GST_SECONDS every time the property is retrieved. https://bugzilla.gnome.org/show_bug.cgi?id=700487 2013-06-07 15:18:15 +0200 Sebastian Dröge * gst/librfb/Makefile.am: rfb: Link with libgstbase for GstPushSrc 2013-06-07 14:01:46 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: androidmedia: Fix string comparison 2013-04-04 18:22:52 +0200 Alban Browaeys * gst/mpegdemux/gstpesfilter.c: mpegdemux: accept ID_PRIVATE_STREAM_1 to avoid loosing sync Current fallback to lost_sync seems to impede a delay to restore sync. Let the parser parse and skip the private stream. Here it contains the digital camera brand (in 2010 bytes) and is repeated twice. https://bugzilla.gnome.org/show_bug.cgi?id=697283 2013-06-07 12:10:08 +0200 Ilya Smelykh * gst/videoparsers/gsth264parse.c: h264parse: Wait until SPS/PPS before outputting any data https://bugzilla.gnome.org/show_bug.cgi?id=646327 2013-06-07 14:06:56 +0800 Chen Jie * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: Hacks for HuaweiMediaPad which reports wrong color format COLOR_FormatYCbYCr is reported but it is actually COLOR_TI_FormatYUV420PackedSemiPlanar. 2013-06-05 16:16:36 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: mpegvideoparser: Fix the pixel-aspect-ratio calculation Ignore the display_extension values if they are greater than the width/height values provided by seqhdr and calculate the PAR based on the seqhdr values.T his is what DVD players are doing. Thanks to "David Schleef " https://bugzilla.gnome.org/show_bug.cgi?id=685103 2013-06-05 18:36:40 +0200 Sebastian Dröge * configure.ac: Back to development === release 1.1.1 === 2013-06-05 18:10:29 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-eglglessink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * gst/bayer/gstbayerorc-dist.c: * gst/bayer/gstbayerorc-dist.h: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.h: * gst/gaudieffects/gstgaudieffectsorc-dist.c: * gst/gaudieffects/gstgaudieffectsorc-dist.h: * win32/common/config.h: Release 1.1.1 2013-06-05 18:28:17 +0200 Sebastian Dröge * sys/vdpau/Makefile.am: vdpau: Add some missing headers to dist 2013-06-05 18:01:10 +0200 Sebastian Dröge * ext/Makefile.am: dash: Add to Makefile.am for make dist 2013-06-05 17:49:59 +0200 Sebastian Dröge * sys/Makefile.am: applemedia-nonpublic: Add to the Makefile.am for dist 2013-06-05 16:54:57 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2013-06-05 15:20:52 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix leak Since we were manually setting GValue to the GValueArray, we also need to specify how many were set, otherwise all values in the array will be leaked. 2013-06-05 15:15:06 +0200 Sebastian Dröge * common: Automatic update of common submodule From 098c0d7 to 01a7a46 2013-06-05 13:39:14 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Speedup TDT/TOT parsing Use quarks where needed, makes it 2.5 times faster 2013-06-05 13:21:29 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix string leak The description/text get copied in the structure. 2013-06-05 12:49:09 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Speed up descriptor parsing/packing descriptors are stored as a GValueArray of GString. The downside is that there is no way to "pass" ownership of a GValue to a GValueArray which previously resulted in expensive copy/free of the (already expensive) GString. Here we estimate first the size of the GValueArray, then create it, then directly use the GValue of that array. Speeds up total SI parsing by ~30% 2013-06-05 11:21:21 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Use gst_value_list_append_and_take_value Avoids doing the expensive copy of structures/arrays/... Speeds up parsing SI by about 50% 2013-06-05 11:20:49 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Avoid copying GValueArray Just give the GValueArray to the container GValue. 2013-05-29 09:25:23 +0200 Sebastian Dröge * Makefile.am: cruft: Add signalprocessor directory 2013-05-29 08:37:19 +0200 Branko Subasic * docs/libs/Makefile.am: docs: removed signalprocessor from docs/libs/Makefile.am 2013-05-28 15:54:33 +0200 Sebastian Dröge * gst/midi/midiparse.c: midiparse: In pull mode drop SEGMENT, CAPS and STREAM_START events We create and send our own later from another thread. 2013-05-28 15:53:07 +0200 Sebastian Dröge * gst/midi/midiparse.c: midiparse: Push stream-start event before anything else 2013-05-28 08:08:42 +0200 Stefan Sauer * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/signalprocessor/.gitignore: * gst-libs/gst/signalprocessor/Makefile.am: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: signalprocessor: ladspa is not using this anymore When we port lv2, we'll go the same route as the new ladspa plugin. 2013-05-28 07:53:37 +0200 Stefan Sauer * ext/ladspa/gstladspa.c: ladspa: fix typos in launch examples 2013-05-27 23:07:16 +0200 Stefan Sauer * ext/ladspa/gstladspa.c: * ext/ladspa/gstladspa.h: * ext/ladspa/gstladspafilter.c: * ext/ladspa/gstladspafilter.h: * ext/ladspa/gstladspasink.c: * ext/ladspa/gstladspasink.h: * ext/ladspa/gstladspasource.c: * ext/ladspa/gstladspasource.h: * ext/ladspa/gstladspautils.c: * ext/ladspa/gstladspautils.h: ladspa: use the registry cache for plugin details Split the introspection and registration part. This way we only need to open all plugins when updating the registry. When reading the registry we can register the elements entierly from the cache. 2013-05-27 11:20:07 +0200 Miguel Casas-Sanchez * ext/opencv/Makefile.am: * ext/opencv/gstopencv.c: * ext/opencv/gstretinex.c: * ext/opencv/gstretinex.h: opencv: Add colour image enhancement element based on Retinex algorithm Add colour image enhancement element based on Retinex algorithm. Two types exist, namely basic and multiscale; both are described in this article: Rahman, Zia-ur, Daniel J. Jobson, and Glenn A. Woodell. "Multi-scale retinex for color image enhancement." Image Processing, 1996. Proceedings., International Conference on. Vol. 3. IEEE, 1996 Visually speaking the result looks a bit funny, but is pretty invariable to lightning changes, which is good for some applications, like image segmentation. https://bugzilla.gnome.org/show_bug.cgi?id=700977 2013-05-26 14:29:54 +0200 Stefan Sauer * gst/audiofxbad/gstaudiochannelmix.h: audiochannelmix: fill in the author template The copyright header still contained the author template. 2013-05-25 15:25:56 +0200 Michael Rubinstein * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: Free memory behind GString if we don't use it https://bugzilla.gnome.org/show_bug.cgi?id=700903 2013-05-23 14:32:07 +0200 Patricia Muscalu * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsmtpsink.h: curlsmtpsink: terminate transfer thread properly If no EOS has been sent, the curl readfunc callback will return ABORT. The media file in that case will not be properly finalized. https://bugzilla.gnome.org/show_bug.cgi?id=700886 2013-04-08 14:59:54 +0000 Andoni Morales Alastruey * sys/directdraw/gstdirectdrawsink.c: directdrawsink: update window width/height when it's not done in WndProc 2013-04-05 17:59:41 +0000 Andoni Morales Alastruey * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: directdrwasink: call previous WndProc if any 2013-04-05 17:26:57 +0000 Andoni Morales Alastruey * sys/directdraw/gstdirectdrawsink.c: directdrawsink: respect PAR with coordinates 2013-04-25 15:35:50 +0000 Andoni Morales Alastruey * sys/applemedia-nonpublic/Makefile.am: applemedia-nonpublic: fix symbols redefinition for objc files 2013-04-24 15:55:12 +0000 Andoni Morales Alastruey * sys/applemedia/Makefile.am: applemedia: fix duplicated symbols with applemedia 2013-05-23 14:57:49 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Post an error message when EOS'ing without source pads This ensures we don't "hang" when files can't be decoded, or contain no valid streams. 2013-05-23 14:56:40 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Demote a warning to debug level We will get it for virtually every first packets. 2013-05-01 16:37:54 +0200 Edward Hervey * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: Actually store mpeg video bitrate value And use the extension also (higher 12 bits) 2013-05-23 11:04:57 +0200 Miguel Casas-Sanchez * ext/opencv/Makefile.am: * ext/opencv/gstopencv.c: * ext/opencv/gstskindetect.c: * ext/opencv/gstskindetect.h: opencv: Add skin color detection element https://bugzilla.gnome.org/show_bug.cgi?id=700654 2013-05-07 21:45:54 +0200 Andoni Morales Alastruey * sys/applemedia/vtdec.c: vtdec: simplify caps setting 2013-04-26 17:47:26 +0200 Andoni Morales Alastruey * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: fix H264 streams with b-frames The decoder output frames in DTS order, even with the flag kVTDecodeFrame_EnableTemporalProcessing. We store a internal queue of the decoded frames and push them PTS order. 2013-04-26 17:45:31 +0200 Andoni Morales Alastruey * sys/applemedia/vtdec.c: applemedia: fix segfault with dropped frames 2013-04-26 17:40:00 +0200 Andoni Morales Alastruey * sys/applemedia/vtapi.c: * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: improve usage of the VT API Add timing information to CV samples and pass the GstBuffer as extra data in the decode function 2013-04-26 13:26:03 +0200 Andoni Morales Alastruey * sys/applemedia/vtdec.c: applemedia: add support for MPEG-1 too 2013-04-25 11:30:07 +0200 Andoni Morales Alastruey * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: applemedia: add support for MPEG-2 decoding 2013-04-25 11:27:13 +0200 Andoni Morales Alastruey * sys/applemedia/vtdec.c: applemedia: use the best colorformat on each platform This saves a colorspace conversion before the sink in OS X 2013-04-25 11:17:16 +0200 Andoni Morales Alastruey * sys/applemedia/vtdec.c: * sys/applemedia/vtutil.c: * sys/applemedia/vtutil.h: applemedia: replace private function with its public variant FigVideoFormatDescriptionCreateWithSampleDescriptionExtensionAtom is an un-documented private function which might change its signature as it already did in the past. Replace it with CMVideoFormatDescriptionCreate and the also un-documented Extensions dictionary. 2013-04-24 22:22:28 +0200 Andoni Morales Alastruey * sys/applemedia/Makefile.am: * sys/applemedia/avfvideosrc.m: * sys/applemedia/bufferfactory.h: * sys/applemedia/bufferfactory.m: * sys/applemedia/qtkitvideosrc.m: applemedia: remove the unneeded buffer factory 2013-04-24 22:15:01 +0200 Andoni Morales Alastruey * sys/applemedia/Makefile.am: * sys/applemedia/cmapi.c: * sys/applemedia/cmapi.h: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/coremediactx.c: * sys/applemedia/coremediactx.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/cvapi.c: * sys/applemedia/cvapi.h: * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: don't use the dynamic API for public frameworks Public frameworks don't need to build the API dynamically, we instead use the framework directly. The exception is for VideoToolbox which went public in the 10.8 SDK, but it's still private in older version of the SDK and iOS. This allow building the plugin against SDK's where it's not a public framework. 2013-04-24 18:53:11 +0200 Andoni Morales Alastruey * configure.ac: * sys/Makefile.am: * sys/applemedia-nonpublic/Makefile.am: * sys/applemedia-nonpublic/bufferfactory.h: * sys/applemedia-nonpublic/bufferfactory.m: * sys/applemedia-nonpublic/celapi.c: * sys/applemedia-nonpublic/celapi.h: * sys/applemedia-nonpublic/celvideosrc.c: * sys/applemedia-nonpublic/celvideosrc.h: * sys/applemedia-nonpublic/cmapi.c: * sys/applemedia-nonpublic/cmapi.h: * sys/applemedia-nonpublic/coremediabuffer.c: * sys/applemedia-nonpublic/coremediabuffer.h: * sys/applemedia-nonpublic/coremediactx.c: * sys/applemedia-nonpublic/coremediactx.h: * sys/applemedia-nonpublic/corevideobuffer.c: * sys/applemedia-nonpublic/corevideobuffer.h: * sys/applemedia-nonpublic/cvapi.c: * sys/applemedia-nonpublic/cvapi.h: * sys/applemedia-nonpublic/dynapi-internal.h: * sys/applemedia-nonpublic/dynapi.c: * sys/applemedia-nonpublic/dynapi.h: * sys/applemedia-nonpublic/mioapi.c: * sys/applemedia-nonpublic/mioapi.h: * sys/applemedia-nonpublic/miovideodevice.c: * sys/applemedia-nonpublic/miovideodevice.h: * sys/applemedia-nonpublic/miovideosrc.c: * sys/applemedia-nonpublic/miovideosrc.h: * sys/applemedia-nonpublic/mtapi.c: * sys/applemedia-nonpublic/mtapi.h: * sys/applemedia-nonpublic/plugin.m: * sys/applemedia/Makefile.am: * sys/applemedia/coremediactx.c: * sys/applemedia/coremediactx.h: * sys/applemedia/plugin.m: applemedia: move plugins using private frameworks to applemedia-nonpublic 2013-05-20 13:24:07 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: Fix indention 2013-05-17 20:17:31 +0800 Chen Jie * sys/androidmedia/gstamcvideodec.c: androidmedia: fix a minor error in COLOR_FormatYUV420Planar converting https://bugzilla.gnome.org/show_bug.cgi?id=700521 2013-05-18 14:01:22 -0700 David Schleef * tools/element-templates/audiofilter: element-maker: Add transform functions to audiofilter 2013-05-18 13:57:11 -0700 David Schleef * configure.ac: * gst/audiofxbad/Makefile.am: * gst/audiofxbad/gstaudiochannelmix.c: * gst/audiofxbad/gstaudiochannelmix.h: * gst/audiofxbad/gstaudiofxbad.c: audiofx: Add plugin, add audiochannelmix 2013-05-18 13:56:18 -0700 David Schleef * ext/flite/gstflitetestsrc.c: flitetestsrc: audio format is "S16" not "s16" 2013-05-18 11:58:14 +0100 Tim-Philipp Müller * gst/videosignal/Makefile.am: videosignal: fix CFLAGS order 2013-05-17 21:23:55 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: send stream start event Removes warnings about strict sticky events ordering 2013-05-17 12:08:10 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix wma pro caps creation WmaPro is actually wmaversion 3, and can also be found by the WMAP fourcc. Some manifests also contain the block_align field as "PacketSize" in the audio track description, the libav decoders require it to be present in caps. Fixes #699921 2013-05-17 11:37:30 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: fix assertions when a stream caps can't be created Fixes two assertions related to cleanup for a pad that couldn't be exposed because the caps couldn't be identified from the Manifest Fixes #699921 2013-05-15 11:49:22 -0300 Thiago Santos * ext/eglgles/gstegladaptation_eagl.m: * ext/eglgles/gsteglglessink.c: eagl: fix handling of surface dimension changes Detect when the eagl surface changed its dimension (when the user rotates the device for example) and adapt the egl internals to draw to that, preventing that ios resizes the image again when drawing. This is particularly harmful when eagl would scale down a image to draw and the ios screen would scale it back up because the surface is now bigger than when the element was configured. 2013-05-15 00:48:53 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: parse block_align, channels and rate from waveformatex if possible wma v2 expects block_align, channels and rate fields set to its caps. This isn't present direclty on the manifests, so mssdemux should parse it from the waveformatex structure https://bugzilla.gnome.org/show_bug.cgi?id=699924 2013-05-14 22:04:19 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: add bitrate info to audio streams bitrate info is always present on the QualityLevel xml node as part of the adaptive selection processing, put it into caps as some decoders require it (avdec_wmav2 for example) https://bugzilla.gnome.org/show_bug.cgi?id=699924 2013-05-14 16:37:16 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: send stream id and newsegment before pushing data Fixes sticky events ordering warnings when data is pushed https://bugzilla.gnome.org/show_bug.cgi?id=699924 2013-05-15 22:24:29 -0400 Olivier Crête * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: Announce correct mpegts caps 2013-05-15 20:03:30 -0400 Olivier Crête * gst-libs/gst/insertbin/gstinsertbin.c: insertbin: Annotate callback scopes 2013-05-15 19:23:08 -0400 Nicolas Dufresne * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: mimic: Ensure segment is sent before caps and buffer https://bugzilla.gnome.org/show_bug.cgi?id=700420 2013-05-15 11:57:07 -0600 Brendan Long * configure.ac: openal: require OpenAL >= 1.14 to build the OpenAL plugin For AL_FORMAT_MONO_ALAW_EXT and AL_FORMAT_STEREO_ALAW_EXT. https://bugzilla.gnome.org/show_bug.cgi?id=700402 2013-05-15 11:38:35 +0200 Sebastian Dröge * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Push stream-start event before anything else 2013-05-15 11:37:14 +0200 Sebastian Dröge * tests/check/elements/mpegtsmux.c: mpegtsmux: Fix event handling in unit test 2013-05-15 11:31:14 +0200 Sebastian Dröge * tests/check/elements/mxfdemux.c: mxfdemux: Fix event handling in unit test 2013-05-15 11:28:04 +0200 Sebastian Dröge * tests/check/libs/insertbin.c: insertbin: Fix event handling in unit test 2013-05-15 11:26:25 +0200 Sebastian Dröge * tests/check/elements/schroenc.c: schroenc: Fix event handling in unit test 2013-05-15 11:25:07 +0200 Sebastian Dröge * tests/check/elements/mpg123audiodec.c: mpg123audiodec: Fix event handling in unit test 2013-05-15 11:15:24 +0200 Sebastian Dröge * tests/check/elements/parser.c: parser: Fix event handling in unit tests 2013-05-15 11:09:08 +0200 Sebastian Dröge * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: gdp: Fix event handling in unit test gdp elements still needs to be fixed for all the event related changes and generally properly ported to 1.0. 2013-05-15 11:04:23 +0200 Sebastian Dröge * tests/check/elements/baseaudiovisualizer.c: baseaudiovisualizer: Fix event handling in unit test 2013-05-15 11:02:29 +0200 Sebastian Dröge * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: Enable GLib deprecation warnings again 2013-05-15 11:00:46 +0200 Sebastian Dröge * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: Negotiate as soon as possible when getting the sinkpad caps 2013-05-15 10:54:56 +0200 Sebastian Dröge * tests/check/elements/asfmux.c: asfmux: Fix event handling in unit test 2013-05-15 10:54:46 +0200 Sebastian Dröge * gst/asfmux/gstasfmux.c: asfmux: Send stream-start event 2013-05-15 10:51:54 +0200 Sebastian Dröge * common: Automatic update of common submodule From 5edcd85 to 098c0d7 2013-05-15 10:23:49 +0200 Sebastian Dröge * tests/check/elements/autoconvert.c: autoconvert: Fix event handling in unit test 2013-05-15 10:22:44 +0200 Sebastian Dröge * tests/check/elements/shm.c: shm: Fix event handling in unit test 2013-05-15 10:19:24 +0200 Sebastian Dröge * tests/check/elements/curlfilesink.c: curlfilesink: Fix event handling in unit test 2013-05-15 10:18:01 +0200 Sebastian Dröge * tests/check/elements/opus.c: opus: Fix event handling in unit test 2013-05-15 10:14:33 +0200 Sebastian Dröge * tests/check/elements/kate.c: kate: Fix event handling in unit test 2013-05-15 10:12:09 +0200 Sebastian Dröge * ext/kate/gstkateenc.c: * ext/kate/gstkateenc.h: kateenc: Delay segment event until we have caps 2013-05-15 10:02:29 +0200 Sebastian Dröge * ext/kate/gstkateutil.c: katedec/tiger: Don't queue sticky events that would come before CAPS 2013-05-15 09:47:21 +0200 Sebastian Dröge * ext/kate/gstkateparse.c: kateparse: Fix event handling Internal state should only be reset on FLUSH_STOP, not FLUSH_START. Also forward pre-caps events immediately and don't queue them. 2013-05-15 09:42:58 +0200 Sebastian Dröge * tests/check/elements/voaacenc.c: * tests/check/elements/voamrwbenc.c: vo{amr,aac}enc: Fix event handling in unit test 2013-05-15 09:41:54 +0200 Sebastian Dröge * tests/check/elements/faac.c: * tests/check/elements/faad.c: faad/faac: Fix event handling in unit test 2013-05-15 09:20:45 +0200 Sebastian Dröge * ext/hls/Makefile.am: * ext/hls/gsthlsdemux.h: * ext/hls/gsturidownloader.c: * ext/hls/gsturidownloader.h: hls: Use GstURIDownloader from the library for now to keep everything in a usable state 2013-05-14 14:32:19 -0400 Nicolas Dufresne * ext/ladspa/gstladspautils.c: ladspa: Fix compilation issue when lrdf is enabled https://bugzilla.gnome.org/show_bug.cgi?id=700328 2013-05-14 00:14:34 +0100 Tim-Philipp Müller * Android.mk: * configure.ac: * gst/nsf/Makefile.am: * gst/nsf/dis6502.h: * gst/nsf/fds_snd.c: * gst/nsf/fds_snd.h: * gst/nsf/fmopl.c: * gst/nsf/fmopl.h: * gst/nsf/gstnsf.c: * gst/nsf/gstnsf.h: * gst/nsf/log.c: * gst/nsf/log.h: * gst/nsf/mmc5_snd.c: * gst/nsf/mmc5_snd.h: * gst/nsf/nes6502.c: * gst/nsf/nes6502.h: * gst/nsf/nes_apu.c: * gst/nsf/nes_apu.h: * gst/nsf/nsf.c: * gst/nsf/nsf.h: * gst/nsf/osd.h: * gst/nsf/types.h: * gst/nsf/vrc7_snd.c: * gst/nsf/vrc7_snd.h: * gst/nsf/vrcvisnd.c: * gst/nsf/vrcvisnd.h: nsf: remove nsf plugin, replaced by gme plugin https://bugzilla.gnome.org/show_bug.cgi?id=648021 2013-04-17 02:18:58 +0200 Juan Manuel Borges Caño * configure.ac: * ext/openal/gstopenal.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsink.h: * ext/openal/gstopenalsrc.c: * ext/openal/gstopenalsrc.h: openal: improved port to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=698013 2013-05-13 00:08:42 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: blacklist some more tests from the generic state change test 2013-05-13 00:06:10 +0100 Tim-Philipp Müller * sys/bluez/bluez-plugin.c: * sys/bluez/gstavdtputil.c: bluez: add debug category for avdtp utils 2013-05-12 23:51:32 +0100 Tim-Philipp Müller * REQUIREMENTS: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-dirac.xml: * ext/Makefile.am: * ext/dirac/Makefile.am: * ext/dirac/gstdirac.cc: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracdec.h: * ext/dirac/gstdiracenc.cc: * gst-plugins-bad.spec.in: dirac: remove old dirac-research library based codec It's not developed any more and replaced by the libschroedinger-based elements in gst-plugins-good. (The libschroedinger 1.0.9 release notes state "This is an exciting release: most of the encoding tools in dirac-research have been ported over to Schrödinger, so now schro has the same or better compression efficiency as dirac-research.") 2013-05-12 22:41:32 +0100 Tim-Philipp Müller * configure.ac: * ext/ofa/Makefile.am: * ext/ofa/gstofa.c: * ext/ofa/gstofa.h: * tests/check/elements/ofa.c: ofa: port to 1.0 2013-05-12 20:32:23 +0100 Tim-Philipp Müller * LICENSE_readme: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/musicbrainz/gsttrm.c: * ext/musicbrainz/gsttrm.h: musicbrainz: remove trm element which is not useful any more TRM IDs are MusicBrainz' old audio fingerprinting system from Relatable, they were phased out in favour of MusicIPs PUIDs. https://wiki.musicbrainz.org/History:TRM 2013-05-12 18:51:52 +0100 Tim-Philipp Müller * ext/neon/gstneonhttpsrc.c: neonhttpsrc: add support for SCHEDULING query 2013-05-12 18:47:32 +0100 Tim-Philipp Müller * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: neonhttpsrc: add iradio-mode property and post icy metadata as tags 2013-05-12 18:28:18 +0100 Tim-Philipp Müller * configure.ac: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: neonhttpsrc: port to 1.0 2013-05-11 12:07:03 -0700 David Schleef * gst/inter/gstintervideosrc.c: intervideosrc: Fix timestamp generation 2013-05-11 19:41:22 +0100 Tim-Philipp Müller * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: post error messages on errors 2013-05-10 17:30:48 -0700 David Schleef * gst/videofilters/Makefile.am: * gst/videofilters/gstvideodiff.c: * gst/videofilters/gstvideodiff.h: * gst/videofilters/gstvideofiltersbad.c: videofilters: Add videodiff element 2013-04-27 11:56:48 -0700 David Schleef * gst/y4m/gsty4mdec.c: y4mdec: set timestamps when restriding buffer 2013-04-15 00:24:23 -0700 David Schleef * gst/videosignal/Makefile.am: * gst/videosignal/gstsimplevideomark.c: * gst/videosignal/gstsimplevideomark.h: * gst/videosignal/gstsimplevideomarkdetect.c: * gst/videosignal/gstsimplevideomarkdetect.h: * gst/videosignal/gstvideosignal.c: videomark/detect: rename to simplevideomark[detect] 2013-04-13 15:16:04 -0700 David Schleef * gst/videosignal/Makefile.am: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideodetect.h: * gst/videosignal/gstvideomark.c: * gst/videosignal/gstvideomark.h: * gst/videosignal/gstvideosignal.c: videomark/detect: port to 1.0 2013-05-11 00:36:06 +0100 Tim-Philipp Müller * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: rfbsrc: fix rfbdecoder new/free asymetry and wrong free in error case If rfb_decoder_new() allocates the decoder sructure, rfb_decoder_free() should free the structure. We should not free the decoder when an error occurs during connection - it holds lots of configuration/state and will be freed later in finalize. 2013-05-11 00:29:40 +0100 Tim-Philipp Müller * gst/librfb/d3des.c: * gst/librfb/d3des.h: * gst/librfb/rfbdecoder.c: rfbsrc: make authentication handshake safe for multiple instances Move DES key into context struct. 2013-05-10 23:09:30 +0100 Tim-Philipp Müller * gst/librfb/Makefile.am: * gst/librfb/rfbdecoder.c: * gst/librfb/vncauth.c: * gst/librfb/vncauth.h: rfbsrc: remove GPL-licensed source file and replace the 1% of it that we need with new code, so we don't have to change the runtime license of rfbsrc to GPL. 2013-05-10 09:49:46 -0700 Aleix Conchillo Flaque * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: use glib gio sockets for network access https://bugzilla.gnome.org/show_bug.cgi?id=700038 2013-05-09 16:41:32 -0700 Aleix Conchillo Flaque * configure.ac: * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: rfbsrc: port to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=700038 2013-05-10 12:49:06 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation_egl.c: * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Add destroy notify instead of always calling eglTerminate() on the display In some scenarios, for example in QtWebKit, might be difficult to obtain full control on the egl display and it might be only accessible indirectly via eglGetCurrentDisplay(). https://bugzilla.gnome.org/show_bug.cgi?id=700058 2013-05-10 11:48:46 +0200 Josep Torra * gst-libs/gst/egl/egl.h: egl: Allow being used in C++ code 2013-05-08 23:17:08 +0100 Tim-Philipp Müller * ext/dash/gstdashdemux.c: dashdemux: rename src template from src%d to src_%u 2013-05-08 18:22:39 -0300 Thiago Santos * ext/dash/AUTHORS: * ext/dash/COPYING: dash: remove superfluous files Authors and license are at the top of the source files 2013-05-02 14:11:54 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dash: do not use deprecated glib mutex API 2013-04-23 12:08:07 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: fixing compiler warnings about print formats 2013-05-08 11:14:15 -0300 Thiago Santos * configure.ac: * ext/Makefile.am: dash: enable in configure/makefiles It was intentionally disabled up to this point to prevent compile failures as dashdemux development commits were all for 0.10 up to here 2013-04-18 07:41:09 -0300 Thiago Santos * ext/dash/Makefile.am: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstdownloadrate.c: * ext/dash/gstdownloadrate.h: * ext/dash/gstplugin.c: dashdemux: port to 1.0 2013-04-11 09:12:26 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: Fix another wrong assertion Also adds a couple log messages for easier debugging 2013-04-10 18:09:19 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: remove wrong asserts Those asserts should be the contrary that they are. And also the surround functions should already check that. Removing them. 2013-03-13 15:55:03 +0100 Wim Taymans * ext/dash/gstdashdemux.c: dashdemux: only start timestamp from 0 for live stream We only want to adjust the timestamps so that they start from 0 for live streams. Non-live streams already start from 0 and after a seek we actually want to timestamp to be the position we seek to. 2013-03-08 15:04:48 +0100 Wim Taymans * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: make timestamps start from 0 Non-live streams should timestamp buffers with a running-time starting from 0. Since we already push a 0 -> -1 segment, bring the timestamps to 0 by subtracting the initial timestamp. 2013-03-08 14:59:59 +0100 Wim Taymans * ext/dash/gstdashdemux.c: dashdemux: also send newsegment on startup 2013-03-08 14:57:39 +0100 Wim Taymans * ext/dash/gstdashdemux.c: dashdemux: small cleanup 2013-02-22 17:00:27 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: live stream playback crashfix 2013-02-22 16:46:22 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: mpdparser: do not cleanup xml lib too early The xmlCleanupParser function seems to cleanup all statically allocated libxml variables, making it unusable. We can't guarantee that dashdemux won't need it anymore, so better not call it. 2013-02-22 16:40:36 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: reimplementing live streams manifest updates Manifest updates should be done periodically for live streams, this patch makes the demuxer create a new manifest client for the new version and transfers the stream position to the new one, discarding the old one afterwards. 2013-02-20 12:49:25 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: mpdparser: allow periods without start time for live streams Live streams can have undefined start times for the periods and mpdparser can let that pass instead of erroring out 2013-02-19 19:35:34 -0300 Thiago Santos * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dash: mpdparser: use guint64 for timestamps The timestamps can be pretty big, so use guint64 for them 2013-02-19 01:26:25 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dashdemux: mpd parsing: fix query parameter parsing Try harder to detect URL parameters and split them to accomodate the fragment url in the concat: base-url + fragment-url + url-parameters 2013-02-18 14:02:48 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: plug some leaks Add some missing free/unrefs spotted by valgrind 2013-02-18 14:01:27 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: remove unused mutexes 2013-02-14 17:39:35 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: properly reset stream status after a flush The stream eos/end of period status must also be reset after a flushing seek. This makes seeking after EOS work. 2013-02-13 02:13:23 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: keep a list of streams periods Keep a list of streams per period so that the download loop can keep downloading while the stream loop is still pushing old period's data. 2013-02-12 22:54:32 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: Properly parse base uri from mpd. 2013-02-12 22:53:16 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Remove unused members. 2013-02-12 18:50:51 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Only send newsegment on seek. 2013-02-08 02:55:05 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: send segments that overwrite previous ones This is only done for seeks, so it is fine 2013-02-07 21:58:37 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: dashdemux: switch bitrates without switching pads 2013-02-07 16:22:13 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: dashdemux: Remove unusued method. 2013-02-07 14:09:44 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: dashdemux: Set stream need_header after seek and has_data_queued to FALSE when flushing stream. 2013-02-07 03:09:28 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: do not pause/start the stream loop on playing/paused changes The demuxer shouldn't care about paused/playing, it should act the same in both states 2013-02-06 13:31:18 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: remove property that isn't used anymore Remove some pieces of code that are from an old property that isn't used anymore 2013-02-05 17:38:06 -0300 Thiago Santos * ext/dash/Makefile.am: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstdownloadrate.c: * ext/dash/gstdownloadrate.h: dashdemux: add a downloadrate utility A small struct that keeps a short history of fragment download bitrates to have an average measure of N last fragments instead of using only the last downloaded bitrate 2013-02-05 14:24:45 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: sprinkling some more log 2013-02-05 14:22:51 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: change bitrates based on the stream bitrate Do not use a global bitrate as the sizes of the fragments matter when calculating the download rate as the connection setup time is also being taken into the download duration, a smaller fragment will have a lower bitrate than a larger one. This avoids switching the bitrates for streams frequently because of bitrate mismatches 2013-02-05 00:45:06 -0300 Thiago Santos * ext/dash/Makefile.am: * ext/dash/gstdashdemux.h: * ext/dash/gstfragment.c: * ext/dash/gstfragment.h: * ext/dash/gstfragmented.h: * ext/dash/gstmpdparser.c: * ext/dash/gstplugin.c: * ext/dash/gsturidownloader.c: * ext/dash/gsturidownloader.h: dashdemux: refactor to use the uridownloader lib instead of internal copy 2013-02-05 01:29:28 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: dashdemux: Make sure switch_pads won't leak any pad. 2013-02-04 22:58:32 -0200 Andre Moreira Magalhaes (andrunko) * ext/dash/gstdashdemux.c: * ext/dash/gsturidownloader.c: * ext/dash/gsturidownloader.h: dashdemux: Properly stop download and stream tasks where appropriate. 2013-02-01 02:12:25 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: avoid an assertion when stopping the pipeline Avoids asserting when dataqueues are setting to flushing due to a pipeline stop during a pad switch. 2013-02-01 02:10:15 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: download the next fragment with smaller timestamp Instead of downloading 1 fragment per stream per download loop, select the stream with the earlier timestamp and get a fragment only for that one. The old algorithm would lead to problems when the fragment durations were too different for streams. 2013-02-01 00:37:33 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: track segments in the demuxer Use a GstSegment to track the current segment information in the demuxer. 2013-02-01 00:33:00 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: remove buffering message emission from dashdemux dashdemux shouldn't emit the buffering message as that can pause the pipeline. It has no proper knowledge of the downstream buffering status so it can pause the pipeline when it isn't necessary. It should have an internal buffer for downloading the streams ahead of playback, but that shouldn't make it able to stop the pipeline for buffering. A particular case in which this is bad is when a pad switch happens (changing bitrates for example), the new pads dashdemux creates will get linked to demuxers and new queues will be created, these queues are initially empty and dashdemux will quickly drain its buffers by pushing them to those queues. So it would have no more buffers internally and would emit a buffering message with a low ratio, causing the pipeline to pause when it wouldn't be necessary. 2013-01-30 17:31:04 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: removing unused code Cleaning up by removing unused code and variables 2013-01-30 17:27:47 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: re-enable and fix adaptive switching It is still unstable, but at least it works when the switches aren't happening after every fragment 2013-01-29 15:58:50 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: correctly signal EOS on manifest end Put EOS on the streams queues after the last fragment from the last period for each stream. This way we keep it serialized with the buffers and it will work when streams have different ending times 2013-01-29 13:08:27 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: detect end-of-period correctly Detect end of period when there are no more buffers on any of the streams 2013-01-29 13:04:01 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: Use the smallest queue value to define buffering state The smallest queue should be used to prevent blocking the download thread when a stream has too much data buffered, leaving the other streams starving from fragments 2013-01-29 11:22:52 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: fix parsing of streams to get correct fragment durations Use the current stream base time instead of the 0th stream base time to get default duration for fragments. 2013-01-29 01:06:52 -0300 Thiago Santos * ext/dash/gstdashdemux.c: dashdemux: block waiting for buffers instead of busy wait Make the streaming loop block waiting for buffers on the queues instead of busy waiting eating cpu continuously on a queue length check 2013-01-28 19:43:46 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: fix seeking on multiple streams Each stream has its own durations and timestamps, the fragment number is different for each stream when seeking, so the seek has to be done for all streams, rather than on a single stream and propagated to others 2013-01-28 18:52:04 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstfragment.c: * ext/dash/gstfragment.h: * ext/dash/gstmpdparser.c: dashdemux: Replace GQueue by GstDataQueue GstDataQueue has proper locking and provides functions to limit the size of the queue. Also has blocking calls that are useful to our multithread scenario in Dash. 2013-01-28 12:28:29 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: move the buffers queues to the streams Store the buffers separately for each stream, this is clearer than having a queue with a list of buffers. It also allows easier selection of buffers to push in later refactors 2013-01-28 10:46:27 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: refactor streams data to its own struct Keeps code more organized and similar to what other demuxers usually do 2013-01-25 13:04:15 -0300 Thiago Santos * ext/dash/gstmpdparser.c: dash: do not try to print a pointer as a string 2013-01-25 12:45:18 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: Remove timing code that delays pushing of fragments Fragments should be pushed ASAP as downstream should be responsible for doing the syncrhonization and proper buffering. This has the great side effect of fixing most of the seeking A/V sync issues. 2013-01-25 09:36:35 -0300 Thiago Santos * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * ext/dash/gsturidownloader.c: dash: fixing build warnings Also running through gst-indent 2013-01-23 16:43:12 -0500 Louis-Francis Ratté-Boulianne * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: gstdashdemux: add need_header member to know whether the initialization fragment should be pushed 2013-01-23 13:20:25 -0500 Louis-Francis Ratté-Boulianne * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: dashdemux: don't wait for the whole duration of a fragment when seeking 2013-01-23 13:19:21 -0500 Louis-Francis Ratté-Boulianne * ext/dash/gstdashdemux.c: dashdemux: switch pads and send header file when a newsegment event is sent 2013-01-16 13:58:52 -0500 Louis-Francis Ratté-Boulianne * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: various fixes 2012-12-20 09:04:28 +0100 David Corvoysier * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: Applied gst-indent 2012-12-18 11:21:22 +0100 David Corvoysier * ext/dash/README: Replaced URL pointing to obsolete Klagenfurt MPD by a new one 2012-12-17 15:46:32 +0100 Gianluca Gennari * ext/dash/gstmpdparser.c: mpdparser: fix escape sequence in URL template resolving 2012-12-17 15:39:10 +0100 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: do not switch pads when bitstreamSwitching = true 2012-12-17 15:19:33 +0100 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: complete support for manifest file updates 2012-12-17 15:12:58 +0100 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: dashdemux: add support for manifest file updates - the MPD file is updated in the download loop (only if we have a "dynamic" MPD and minimumUpdatePeriod is valid); - properly LOCK/UNLOCK the GstMpdClient; 2012-12-17 15:04:45 +0100 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: new API to set/get segment index and period index TODO: rework segment selection to support Representations or Adaptation Sets with segments not aligned 2012-12-17 15:00:52 +0100 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: new API to load the stream Period with a given index this avoids to fiddle with stream internals in the code 2012-12-17 14:54:42 +0100 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: implement seeking across Periods 2012-11-21 14:14:34 +0100 David Corvoysier * ext/dash/gstdashdemux.c: Applied gst-indent 2012-11-21 14:14:21 +0100 David Corvoysier * ext/dash/gstdashdemux.c: By default, do not forward pad queries upstream, because it may have unforessen side-effects (forwarding the new 1.0 GST_CAPS query would prevent pad linking for instance) 2012-11-12 10:54:35 +0100 Olivier Blin * ext/dash/gstplugin.c: plugin: register as dashdemux instead of fragmented This fixes conflicts with the HLS plugin, which is also named fragmented. When building its registry, gstreamer was picking one or the other between hls and dashdemux. 2012-10-25 17:55:02 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: check if we have received the MPD file in the proper way 2012-10-25 17:53:53 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: mpdparser: silence warning 2012-10-25 17:15:09 +0200 Olivier Blin * ext/dash/gstdashdemux.c: dashdemux: fix printing buffering time and download rate/size This was broken on armv7. 2012-10-25 17:17:35 +0200 Olivier Blin * ext/dash/gstdashdemux.c: dashdemux: fix unused-but-set variable 2012-10-25 16:49:21 +0200 Olivier Blin * ext/dash/gstdashdemux.c: dashdemux: use new gst_mpd_client_get_next_fragment_duration API This fixes build that has been broken by commit fb9aeac6552021b176a4c4bd07265e02a0b70e0f. gst_mpd_client_get_target_duration has been removed, and gst_mpd_client_get_next_fragment_duration should be used instead. 2012-10-24 17:28:40 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: remove FIXME comment pad switching across multiple periods works perfectly fine now and it is done only when there is a change in the CAPS 2012-10-24 16:55:20 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: send new-segment events to all pads 2012-10-24 16:30:01 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: reworked the API to retrieve fragment timestamp, fragment duration and media presentation duration This was necessary to support variable-duration Fragments. in the new API: - gst_mpd_client_get_current_position returns the timestamp of the NEXT fragment to download; - gst_mpd_client_get_next_fragment_duration returns the duration of the next fragment to download; - gst_mpd_client_get_media_presentation_duration returns the mediaPresentationDuration from the MPD file; also there is a new internal parser function: - gst_mpd_client_get_segment_duration extracts the constant segment duration from the MPD file (only used when there is no SegmentTimeline syntax element in the current representation) In gst_mpd_client_get_next_fragment, we set the timestamp/duration of the fragment just downloaded copying the values from the corresponding GstMediaSegment. TODO: rework SEEKING to support seeking across different Periods. 2012-10-24 14:50:54 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: use effective segment duration to reschedule the streaming task do not assume segment duration is constant Conflicts: ext/dash/gstdashdemux.c 2012-10-24 14:24:05 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: reworked gst_dash_demux_get_buffering_time() to return the effective buffering time do not assume the Fragment duration is constant 2012-10-24 11:49:51 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: complete support for Media Presentations with several Periods - Periods are played in sequence, from PeriodStart to PeriodEnd - seamless switching from one Period to the next one works fine; - the 'new-segment' generation is broken, so if we need to switch pads for a new Period there is a crash; 2012-10-22 18:12:30 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: initial support for Media Presentations made of several Periods - build a list of the available Periods with their start and duration time - add the list of GstStreamPeriod in the GstMpdClient data struct - remove cur_period from GstMpdClient and introduce an API to get the current GstStreamPeriod - several API clean-ups 2012-10-24 18:10:47 +0200 Olivier Blin * ext/dash/gstmpdparser.c: mpdparser: support BaseURL for SegmentURL using mediaRange This is used in big_buck_bunny_CappedVBR_Multirate_4s_0_AudioVideo_MainProfile.mpd 2012-10-24 18:04:07 +0200 Olivier Blin * ext/dash/gstmpdparser.c: mpdparser: factorize adding range parameter to URL 2012-10-19 20:12:09 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: dashdemux: reworked caps detection also reworked the API to extract audio/video parameters from the manifest file (mimeType, width, height, rate, num channels) 2012-10-19 19:03:41 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: do not send bogus duration messages when mediaPresentationDuration is unknown 2012-10-19 18:45:30 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: mpdparser: support SegmentTimeline syntax also for list-based media segment generation 2012-10-19 17:47:51 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: add support for SegmentTimeline syntax elements build the list of segments to be played using the SegmentTimeline syntax, if present bugfixes: - for dynamic MPD files, when mediaPresentationDuration is not present use minimumUpdatePeriod instead - do not add a spurious '$' when building an URL from a template like "$Bandwidth$/init.mp4v" - introduce gst_mpd_client_add_media_segment() to avoid code duplication 2012-10-19 15:42:51 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Fixed wrong index in fragments 2012-10-19 12:01:03 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: fix memory leak in gst_mpd_client_get_next_fragment_set() we have to free next_fragment_uri 2012-10-19 10:50:16 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Removed unused function 2012-10-19 10:43:49 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Seek event handling cleanup 2012-10-18 18:49:53 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: dashdemux: fix playing of single-segment media streams other fixes: - fixed a buffering bug: now we stop buffering when we reach the end of manifest - now gst_mpd_client_get_target_duration() always returns a valid duration (in case of single-segment streams, we return either Period duration or mediaPresentation duration) TODO: support SegmentTimeline 2012-10-17 18:46:22 +0200 Gianluca Gennari * ext/dash/gsturidownloader.h: uridownloader: deleted useless declaration of gst_uri_downloader_free() 2012-10-17 18:45:25 +0200 Gianluca Gennari * ext/dash/gsturidownloader.c: uridownloader: when possible, reuse existing element to download a new URI previously a new element was allocated for each media segment, and it was never freed 2012-10-17 18:43:26 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: unref caps in function need_add_header() 2012-10-17 18:42:02 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: dashdemux: fix extraction of SegmentTemplate->initialization in gst_mpd_client_get_next_header() now the following MPD files are properly supported: http://dash.edgesuite.net/adobe/hdworld_dash/HDWorld-1600.mpd http://dash.edgesuite.net/adobe/hdworld_dash/HDWorld.mpd 2012-10-17 18:40:02 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: dashdemux: fix memory leak in gst_dash_demux_get_next_header() 2012-10-17 15:52:19 +0200 David Corvoysier * ext/dash/gstdashdemux.c: We now only accept actual manifest files, and not any XML file 2012-10-17 15:50:33 +0200 David Corvoysier * ext/dash/Makefile.am: * ext/dash/gstplugin.c: Added a typefind helper for DASH: this commit should be reverted as soon as a proper patch has been submitted to gst-plugins-base 2012-10-17 10:02:39 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Fixed state machine (again) 2012-10-16 16:46:17 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Code refactoring 2012-10-16 16:34:10 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Fixed state machine 2012-10-16 13:43:39 +0200 David Corvoysier * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: Improve consistency of the tasks shutdown code 2012-10-16 12:51:44 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Added missing g_list_free 2012-10-16 11:44:26 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Do not answer to URI queries 2012-10-16 11:39:18 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Try queries upstream if we cannot process them 2012-10-16 11:26:03 +0200 David Corvoysier * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: Renamed demux->next_stream in demux->next_push 2012-10-16 11:23:26 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Inlined one-line utility funciton that was called only once 2012-10-16 09:10:00 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Fixed regression after the introduction of the multi-screen support, preventing the pipeline from stopping properly 2012-10-15 16:41:28 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Modified log level of shutdown message 2012-10-15 15:08:53 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Comments: We don't select a single representation, but a representation for each stream Code: cleanup of gst_get_next_fragment (also renamed in gst_get_next_fragment_set) 2012-10-15 14:25:27 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Removed debug trace 2012-10-15 14:14:53 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Added introduction and general design notes 2012-10-15 13:54:17 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Fixed wrong comment 2012-10-15 13:52:31 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Documented gst_dash_demux_download_loop 2012-10-15 13:35:15 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Commented gst_dash_demux_stream_loop 2012-10-15 13:17:12 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Commented needs_pad_switch 2012-10-15 13:09:49 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Documented the representation switch mechanism 2012-10-15 11:40:55 +0200 David Corvoysier * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: Replaced references to playlist (HLS) by references to manifest (DASH) 2012-10-15 11:33:58 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Renamed gst_dash_demux_switch_playlist to gst_dash_demux_select_representation and added comments 2012-10-15 11:19:29 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Removed obsolete comment 2012-10-15 11:18:25 +0200 David Corvoysier * ext/dash/gstdashdemux.c: Applied gst-indent 2012-10-11 12:54:50 +0200 David Corvoysier * ext/dash/README: Updated README 2012-10-09 13:24:23 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: mpdparser: support MPD files with SegmentBase elements encoded inside a SegmentList element also properly support MPD files without any Initialization segment 2012-10-08 17:43:14 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser/dashdemux: fixed get_width, get_height, get_audio_rate, get_num_audio_channels API functions the actual values now can be extracted also from the AdaptationSet element; checking NULL structs for better robustness; 2012-10-08 16:59:21 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: mpdparser: added support for single-segment streams with the URL encoded in the baseURL syntax element 2012-10-08 15:26:48 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: added lang attribute to ProgramInformation node 2012-10-08 11:47:45 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: added support for Accessibility, Role, Rating, Viewpoint elements to AdaptationSet node those are DescriptorType elements, so they are just parsed and dumped for now; 2012-10-08 11:30:40 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: support multiple ProgramInformation nodes now we keep a list of ProgramInformation nodes for each Period node 2012-10-08 11:16:09 +0200 Gianluca Gennari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser: fixed parsing of SegmentList syntax element, and eliminated Represention node list from Period node SegmentList nodes are allowed into Period, AdaptationSet or Representation nodes and there is at most 1 element, so no need to keep a list; Period nodes cannot have any Represention elements, as AdaptationSet nodes are mandatory; this breaks compatibility with some legacy DASH test sequences. 2012-10-08 10:29:04 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: mpdparser: fixed return with no value gstmpdparser.c: In function ‘gst_mpdparser_get_list_and_nb_of_audio_language’: gstmpdparser.c:2891: warning: ‘return’ with no value, in function returning non-void 2012-10-08 10:24:29 +0200 Gianluca Gennari * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: mpdparser.c/.h: changed license from dual MIT/LGPL 2.0 to LGPL 2.1 uniformed licencinsing to the other libraries in the dashdemux project 2012-10-02 02:28:58 +0200 hzakari * ext/dash/gstdashdemux.c: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: Optimize the two functions that return the number and the list of languages in a single function 2012-09-29 05:27:51 +0200 Hamid ZAKARI * ext/dash/gstdashdemux.c: Add the headers to the adaptationsets segments if any one of these changed representation 2012-09-29 03:13:29 +0200 Hamid ZAKARI * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: Support Multi languages (need a decodebin2 patch) 2012-09-29 02:41:13 +0200 Hamid ZAKARI * ext/dash/gstdashdemux.c: Remove the "TODO" comment 2012-09-28 12:55:27 +0200 David Corvoysier * ext/dash/COPYING: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: Renamed LICENSE into COPYING 2012-09-28 11:46:00 +0200 David Corvoysier * ext/dash/AUTHORS: Updated authors 2013-05-08 11:13:32 -0300 David Corvoysier * ext/dash/AUTHORS: * ext/dash/LICENSE: * ext/dash/Makefile.am: * ext/dash/README: * ext/dash/gstdashdemux.c: * ext/dash/gstdashdemux.h: * ext/dash/gstfragment.c: * ext/dash/gstfragment.h: * ext/dash/gstfragmented.h: * ext/dash/gstmpdparser.c: * ext/dash/gstmpdparser.h: * ext/dash/gstplugin.c: * ext/dash/gsturidownloader.c: * ext/dash/gsturidownloader.h: Initial import of gstdashdemux sources 2012-10-26 18:00:02 +0200 Sebastian Pölsterl * sys/dvb/gstdvbsrc.c: Use DVB API v5 aka S2API instead of obsolete v3 API Patch is based on work of Tony Houghton https://bugzilla.gnome.org/show_bug.cgi?id=654479 2013-05-08 15:42:01 +0100 Tim-Philipp Müller * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: pass width, height, channels and rate as integer g_ascii_strtoull() returns a long long integer, but we need to pass a normal int to gst_structure_set() for fields of G_TYPE_INT, so cast appropriately. 2013-05-08 12:45:20 +0300 Sreerenj Balachandran * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpvideomemory.h: vdpau: Add VdpVideoSurface caps feature 2013-05-08 10:55:16 +0100 Tim-Philipp Müller * ext/smoothstreaming/gstmssmanifest.c: smoothstreaming: fix WMV caps Makes this show at least a picture: http://playready.directtaps.net/smoothstreaming/TTLSS720VC1/To_The_Limit_720.ism/Manifest 2013-04-23 12:08:38 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: fixing compiler warnings about print formats 2013-04-16 19:35:03 -0300 Thiago Santos * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstdownloadrate.c: * ext/smoothstreaming/gstdownloadrate.h: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: * ext/smoothstreaming/gstsmoothstreaming-plugin.c: smoothstreaming: port to 1.0 2013-04-12 15:59:04 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: remove already fixed TODO comment 2013-04-12 15:58:17 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: replace gst_value_deserialize with simpler function The deserialization was only used to convert hex strings into GstBuffers. Replace gst_value_deserialize with a simpler, direct function. 2013-04-12 15:56:35 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: fix newsegment event leak 2013-04-12 15:55:23 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: replace unused parameter The buffer parameter wasn't being used, it was only to signal if a buffer was downloaded and advance to the next fragment in the manifest. Replace the buffer with a boolean that has the same effect and is safer 2013-03-11 10:09:40 +0100 Wim Taymans * ext/smoothstreaming/gstmssmanifest.c: mss: avoid GValue leak 2013-02-22 17:00:30 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstdownloadrate.c: mssdemux: fix a small memory leak 2013-02-19 13:17:53 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: avoid streaming to fail when download is cancelled When download was failing repeatedly, it was causing streaming to fail even though it was cancelled on purpose (stopping tasks). 2013-02-08 02:01:46 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: removing unused functions 2013-02-08 01:51:30 -0200 Thiago Santos * ext/smoothstreaming/gstdownloadrate.c: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: switch bitrates without switching pads 2013-02-07 16:26:46 -0200 Andre Moreira Magalhaes (andrunko) * ext/smoothstreaming/gstmssdemux.c: mssdemux: Check if pads are valid before removing. 2013-02-07 03:10:46 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: add a maximum error count for downloads mssdemux will tolerate a few download errors before emitting an error message to the bus 2013-02-06 08:48:55 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: use streams bitrate individually connection setup times seem to matter when measuring the download rate of different streams. Streams with longer fragments have a *relatively* lower connection setup time and achieve higher bitrates. Using the average seems unfair here, so use each stream's measured bitrate to select its best quality option. 2013-02-05 17:48:42 -0300 Thiago Santos * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstdownloadrate.c: * ext/smoothstreaming/gstdownloadrate.h: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: use downloadbitrate utility for measuring bitrate downloadbitrate keeps a short history of bitrates and helps tracking the current average download bitrate for mssdemux 2013-02-05 04:01:04 -0200 Andre Moreira Magalhaes (andrunko) * ext/smoothstreaming/gstmssdemux.c: mssdemux: Properly compute new bitrate and use bitrate_limit. 2013-02-05 03:27:51 -0200 Andre Moreira Magalhaes (andrunko) * ext/smoothstreaming/gstmssdemux.c: mssdemux: Avoid a possible division by zero 2013-02-05 03:27:22 -0200 Andre Moreira Magalhaes (andrunko) * ext/smoothstreaming/gstmssdemux.c: mssdemux: Add missing object param to GST_DEBUG|INFO_OBJECT calls 2013-02-05 00:28:19 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: add bitrate-limit property It allows the plugin to use its own downloading bitrate measures as a feedback to select the best streams bitrate for the current network scenario 2013-02-04 21:58:09 -0300 Thiago Santos * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssdemux.h: mssdemux: use the shared uridownloader lib instead of an internal copy 2013-02-04 02:20:51 -0200 Andre Moreira Magalhaes (andrunko) * ext/smoothstreaming/gstmssdemux.c: mssdemux: Do not block on reset. We need to cancel the downloader for each stream before joining the main download task, otherwise the download task will block until all the stream tasks finish. 2013-02-01 17:44:04 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssdemux.c: mssdemux: handle FLUSH events by resetting the demuxer state 2013-02-01 17:43:46 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssmanifest.c: mssdemux: add conditions to prevent some crashes 2013-02-01 17:29:58 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssmanifest.c: mssdemux: use standard glib methods 2013-02-01 17:27:19 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix some memory leaks and use right free function 2013-02-01 17:12:41 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssdemux.c: mssdemux: don't stop a task from inside the loop Only pause the task 2013-01-31 16:14:37 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssdemux.c: mssdemux: log manifest content for debugging 2013-01-30 00:22:50 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssmanifest.c: mssdemux: make codec private data from manifest attributes with AAC-LC When the codec is AAC-LC, some server implementation (e.g. Microsoft IIS) doesn't add the CodecPrivateData attribute. The element needs to re-create the codec data from the Quality Level attributes (channels and sampling rate). 2013-01-29 22:57:36 -0500 Louis-Francis Ratté-Boulianne * ext/smoothstreaming/gstmssdemux.c: mssdemux: only try to reload the manifest for live streams There is no way to know if a live stream is really finished, so try to reload the manifest and check if there are more fragments to download. Else just let know it's the EOS. 2013-01-25 21:24:56 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: add some documentation Adds a little bit of docs explaning the internals of mssdemux 2013-01-22 17:33:41 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: add max-queue-size-buffers property Indicates how much buffering should be done internally in mssdemux 2013-01-21 18:05:59 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: stop tasks faster Issue a cancel to the downloaders so they stop earlier 2013-01-17 16:20:10 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: implement live streams handling Live streams force the demuxer to keep reloading the Manifest from time to time, as the new fragments are being added as they are recorded. The demuxer should also try to keep up and detect when it had to skip fragments, marking the discont flag when that happens. Curiously, the spec doesn't seem to mention when/how a live stream is supposed to end, so keep trying downloads until the demuxer errors out. 2013-01-17 16:19:54 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: do not leak fragments 2013-01-17 13:48:13 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: fix issue on fragment timestamping parsing Use guint64 as the fragments can start at very high numbers, specially on live streams 2013-01-16 15:28:19 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: error out when upstream doesn't implement URI query Error out when upstream doesn't answer to URI query and mssdemux doesn't know the URI to fetch the fragments from 2013-01-15 17:31:25 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: push newsegments with same start time on bitrate switches This keeps sinks working in sync after a bitrate switch 2013-01-14 13:21:10 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: rewriting pad tasks so that buffers are pushed by ts order Use pad tasks to download data and an extra task that gets the earlier buffer (with the smallest timestamp) and pushes on the corresponding pad. This prevents that the audio stream rushes ahead on buffers as its fragments should be smaller 2013-01-11 15:01:33 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: some fixes to bitrate switching Removes a possible deadlock from bitrate switching when the pad that requested the switch blocks on its pad-push 2013-01-10 16:26:48 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: refactoring fragment download to its own function Makes code clearer and helps changing the download part of the code to its own thread 2013-01-10 15:16:36 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: implement bitrate switching When connection-speed changes, signal that we might need a bitrate switch. During the switch, a new pad group is added and the old one is drained and removed. New pads also need to push newsegments before starting to stream 2013-01-08 18:01:17 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: add connection-speed property This speed limits the maximum bitrate of streams. Currently it is only read when starting the pipeline, but it should be used for switching bitrates during playback to adapt to network changes. 2013-01-08 17:55:49 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: add an 'active' flag to manifest stream mssdemux should set the streams it has exposed as active so that the manifest won't use the non-active streams to compute total bitrates or providing fragments 2013-01-08 17:54:57 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: signal no-more-pads when finished exposing pads This makes decodebin/playbin mechanism know it can start playing when buffering is finished 2013-01-08 11:08:39 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssmanifest: Keep the stream qualities list sorted by bitrate This will help making adaptive streaming chose the best rate for a particular connection speed 2013-01-08 10:16:23 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: also consider fourcc AVC1 as H264 H264 can be represented by both fourccs H264 and AVC1, use both. 2013-01-04 17:01:34 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssmanifest: add support for VC-1 and WmaPro formats parsing VC-1 should map to WMV3 and WmaPro to WMA2 2013-01-04 17:00:34 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: do not try to expose unknown streams When the stream can't have its caps detected, better not to expose it. If no streams are known, signal an error about no playable streams to the application 2013-01-04 15:49:43 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssmanifest: do not set codec_data when it is empty Some manifests contain empty codec datas, better not set them 2013-01-04 15:49:02 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: set timestamp and duration to fragment buffers We can get those from the manifest and helps downstream to know the fragment start time after a seeking operation 2012-12-28 00:49:24 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssmanifest: fix typo Fix typo that was making the advance fragment function return a wrong flow return in case it was already EOS 2012-12-28 00:48:33 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: initial implementation of seek event handling Adds basic handling for seek in time events. Needs to cooperate with the downstream qtdemux so that it forwards the seeks and the corresponding newsegments 2012-12-26 16:19:14 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: handle src pad queries fir duration and latency Add a src pad query handler to get the duration from the manifest and report it upstream. Also adds a simple handler for latency queries 2012-12-21 16:42:11 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: add some more error handling Post error in some more scenarios: * when the manifest has no streams * when getting the fragment url fails 2012-12-21 15:37:45 -0300 Thiago Santos * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: ensure the debug category is properly initialized The user of the library might not need to create a NalParser, so the debug category needs to be initialized from other functions as well if required. 2012-12-20 15:30:06 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: add timescale to the caps This is important for downstream to properly timestamp the samples The default value is 10000000, but this can be set in the stream or at the top-level manifest entry 2012-12-20 14:27:58 -0300 Thiago Santos * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssmanifest.c: mssdemux: parse the fps from h264 codec data if possible Use h264 codec parsing lib to extract the fps from the manifest's codec data as it doesn't seem to provide it anywhere else 2012-12-20 01:09:05 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: correctly add h264 codec data to caps Need to construct an avcc atom from the codecdata read from MSS manifests to make h264 decoders/parsers accept it 2012-12-20 01:07:18 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: add the correct caps to the outgoing stream mssdemux outputs a quicktime variant, named mss-fragment 2012-11-25 01:57:36 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: set caps to buffers before pushing Also update to the latest gstfragment API that provides the fragment as a whole buffer. 2012-11-22 13:01:09 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: improve state changing Keep a ref on pad to prevent it being unreffed while the mssdemux streams are still using it. Also reset the element when going to ready instead of when going to null. 2012-11-22 12:28:56 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: mssdemux: adds mininum error handling This should care for basic scenarios of errors and EOS to allow the pipeline to stop correctly 2012-11-22 12:28:20 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: mssdemux: mssmanifest: prevent accessing null stream fragment Move the access to the stream fragment data after the check if the fragment exists to prevent a segfault 2012-11-19 17:53:16 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: smoothstreaming: refactor structure names and implement url fetching Use shorter names for the MSS manifest helper structure and functions. Also continues the implementation of the stream fetching and pushing loop. Now it uses the base url correctly and already fetches and pushes the fragments downstream 2012-11-16 17:30:12 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: mssdemux: initial implementation of the pad loop The loop will fetch a new fragment and push on its srcpad. Each stream has its own loop 2012-11-16 17:29:38 -0300 Thiago Santos * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: more manifest parsing and helper functions Now the mss manifest is able to generate the files urls 2012-11-14 17:19:35 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: pad exposing initial implementation Does some basic parsing of the stream caps and adds a pad for each stream detected in the manifest 2012-11-09 16:47:54 -0300 Thiago Santos * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: mssdemux: add manifest parsing Continued implementing: 1) parse the manifest with libxml2 2) detect stream types 2012-11-08 16:06:44 -0300 Thiago Santos * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstmssdemux.c: * ext/smoothstreaming/gstmssdemux.h: * ext/smoothstreaming/gstmssmanifest.c: * ext/smoothstreaming/gstmssmanifest.h: * ext/smoothstreaming/gstsmoothstreaming-plugin.c: smoothstreaming: stubs for mssdemux Just the stubs for mssdemux element. Also add some useful code from hlsdemux that we intend to reuse 2012-11-08 15:42:39 -0300 Thiago Santos * configure.ac: * ext/Makefile.am: * ext/smoothstreaming/Makefile.am: * ext/smoothstreaming/gstsmoothstreaming-plugin.c: smoothstreaming: build directory stubs for new plugin Initial build structure for MS' Smooth Streaming plugin Conflicts: ext/Makefile.am 2013-02-19 13:01:37 -0500 Louis-Francis Ratté-Boulianne * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: unlock mutex when switching urisrc state to NULL to avoid deadlock When chain method was called after gst_uri_downloader_stop and before state has been changed to NULL, execution was blocking on g_mutex_lock. Conflicts: gst-libs/gst/uridownloader/gsturidownloader.c 2013-02-07 00:28:15 -0300 Thiago Santos * gst-libs/gst/uridownloader/gsturidownloader.c: uridownloader: properly unref the urisrc between downloads This prevents leaking the element. Also sets the bus to flushing to completely reset the downloader state 2013-04-16 17:23:02 -0300 Andre Moreira Magalhaes (andrunko) * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: uridownloader: make cancelled state 'permanent' until a reset When downloading and cancelling quickly the uridownloader object and the element using it could miss the cancelled window and the uridownloader would fetch the wrong URI and block on subsequent fetches. This was also problematic when stopping elements, while one task would call the cancel, another element thread could issue a new fetch_uri. As the cancel state isn't 'permanent' this fetch_uri would block and prevent the whole element from stopping and going to NULL. This patch makes the 'cancelled' state permanent until a gst_uri_downloader_reset is called. This way the element knows the window where the uridownloader isn't active and only reactivate it when ready. 2013-04-16 19:47:02 -0300 Thiago Santos * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/uridownloader/Makefile.am: * gst-libs/gst/uridownloader/gstfragment.c: * gst-libs/gst/uridownloader/gstfragment.h: * gst-libs/gst/uridownloader/gsturidownloader.c: * gst-libs/gst/uridownloader/gsturidownloader.h: * gst-libs/gst/uridownloader/gsturidownloader_debug.h: uridownloader: refactor gsturidownloader to its own lib gsturidownloader can be reused by other plugins, better have it into its own lib 2013-05-07 08:26:03 -0600 Greg Rutz * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Fix memory leak when using prepare_func prepare_func will allocate a new buffer to replace the original one. Instead of using gst_buffer_replace (which causes an extra refcount increment on the new buffer), we just unref the original buffer. https://bugzilla.gnome.org/show_bug.cgi?id=699786 2013-05-07 14:22:10 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideometa.h: mpegvideometa: Fix typo in comment https://bugzilla.gnome.org/show_bug.cgi?id=699827 2013-05-03 21:46:08 +0200 Stefan Sauer * ext/ladspa/gstladspafilter.c: * ext/ladspa/gstladspasink.c: ladspa: sync controlled parames in filters and sinks 2013-05-03 16:55:00 +0200 Sebastian Dröge * ext/ladspa/Makefile.am: ladspa: Add $(GMODULE_NO_EXPORT_LIBS) for gmodule 2013-05-01 17:19:07 +0200 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: don't compare buffer size when checking whether to update caps https://bugzilla.gnome.org/show_bug.cgi?id=699398 2013-05-03 11:34:34 +0200 Juan Manuel Borges Caño * configure.ac: * ext/ladspa/Makefile.am: * ext/ladspa/gstladspa.c: * ext/ladspa/gstladspa.h: * ext/ladspa/gstladspafilter.c: * ext/ladspa/gstladspafilter.h: * ext/ladspa/gstladspasink.c: * ext/ladspa/gstladspasink.h: * ext/ladspa/gstladspasource.c: * ext/ladspa/gstladspasource.h: * ext/ladspa/gstladspautils.c: * ext/ladspa/gstladspautils.h: ladspa: improved port to gstreamer 1.0 Fixes: #698927 2013-05-01 17:36:47 +0100 Tim-Philipp Müller * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: don't announce incomplete source caps Don't send any source caps yet if we're still in drop-buffers-until-we-get-a-sequence-header mode. Fixes transmuxing of many MPEG-TS/PS streams into formats which require things like width, height or codec_data on the input caps. Also fixes issues when using playbin with decoder sinks that want width/height etc. https://bugzilla.gnome.org/show_bug.cgi?id=695879 2013-04-27 12:28:42 +0100 Tim-Philipp Müller * ext/kate/gstkatetag.c: kate: fix buffer leak in katetag Makes unit test valgrind clean. https://bugzilla.gnome.org/show_bug.cgi?id=697071 2013-04-27 12:06:53 +0100 Tim-Philipp Müller * tests/check/elements/kate.c: tests: fix some leaks in kate unit test 2013-04-27 12:06:28 +0100 Tim-Philipp Müller * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: kate: minor cleanup 2013-04-26 15:33:18 -0400 Olivier Crête * gst/liveadder/liveadder.c: liveadder: Document that the latency is in milliseconds Bug #698896 2013-04-26 15:39:30 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: convert packet PTS/DTS as soon as possible We let the mpegtspacketizer deal with pcr wraparound/resets. https://bugzilla.gnome.org/show_bug.cgi?id=674536 2013-04-26 12:18:20 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: mpegtsdemux: header cleanups/updates 2013-04-26 14:32:14 +0200 Rico Tzschichholz * docs/plugins/Makefile.am: docs: Drop obsolete references to videosignal headers In addition to 8552396c362c20adb6aa9129a453ff81ecdcf656 2013-04-26 10:38:36 +0200 Josep Torra * gst/videoparsers/gsth264parse.c: h264parse: Update src pad caps when it was explicitly signaled Fixes src pad caps aren't updated when converting from AVC to bytestream and new caps had been received in the sink pad. https://bugzilla.gnome.org/show_bug.cgi?id=698679 2013-04-23 15:19:14 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix caps string leak 2013-04-24 09:40:24 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation_egl.c: eglglessink: Use gst_egl_display_get() instead of passing a GstEGLDisplay to EGL functions 2013-03-28 16:52:26 +0100 Sebastian Dröge * sys/wasapi/Makefile.am: * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapisrc: Port to GstAudioSrc 2013-03-27 10:10:21 +0100 Sebastian Dröge * sys/wasapi/Makefile.am: * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Port wasapisink to GstAudioSink 2013-04-23 01:17:56 +0100 Tim-Philipp Müller * ext/kate/gstkateutil.c: * tests/check/elements/kate.c: tests: fix remaining kate tests https://bugzilla.gnome.org/show_bug.cgi?id=697071 2013-04-15 17:06:57 -0600 Brendan Long * tests/check/elements/kate.c: tests: port Kate tests to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=697071 2013-04-22 23:52:20 +0100 Tim-Philipp Müller * MAINTAINERS: * README: * README.static-linking: * common: Automatic update of common submodule From 3cb3d3c to 5edcd85 2013-04-21 18:28:52 +0100 Tim-Philipp Müller * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvb.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: * sys/dvb/parsechannels.h: dvbbasebin: better error reporting https://bugzilla.gnome.org/show_bug.cgi?id=678892 2013-04-21 14:13:45 +0100 Tim-Philipp Müller * sys/dvb/dvbbasebin.c: * sys/dvb/parsechannels.c: dvbbasebin: log channel parsing into dvbbasebin debug category as well 2013-04-21 14:04:11 +0100 Tim-Philipp Müller * sys/dvb/parsechannels.c: dvbbasebin: fix path where to look for the dvb-channels.conf Construct path based on the API version, not $major.$minor version. 2013-04-18 20:26:15 +0000 Thiago Santos * ext/eglgles/gstegladaptation_eagl.m: eglglessink: eagl: fix eagl reuse by not releasing the context It seems EAGL expects the application to simply ignore unused EAGL contexts as the resources for it would be released when a new context is set as the current one. Also move the egl extensions querying to after a context is set to prevent crashes. This makes the EAGL version of eglglessink reusable. 2013-04-18 17:18:12 +0200 Wim Taymans * configure.ac: * gst/aiff/Makefile.am: * gst/aiff/aiffmux.c: * gst/aiff/aiffmux.h: * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: aiff: port to 1.0 2013-04-18 16:11:26 +0200 Sebastian Dröge * gst-libs/gst/egl/egl.c: egl: Use gst_context_writable_structure() 2013-04-18 15:26:31 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Give only SECONDARY rank If available we still prefer xvimagesink. 2013-04-18 12:54:31 +0200 Josep Torra * ext/eglgles/gstegladaptation_egl.c: eglglessink: fixes 'makes integer from pointer without a cast' warning 2013-04-18 12:24:18 +0200 Josep Torra * ext/eglgles/gstegladaptation.h: * ext/eglgles/gsteglglessink.c: * ext/eglgles/video_platform_wrapper.c: eglglessink: silence warnings building for RPI related to 'vcos_*' 2013-04-18 12:27:28 +0200 Josep Torra * ext/eglgles/gsteglglessink.c: eglglessink: fix warnings building on the RPI 2013-04-18 12:16:17 +0200 Josep Torra * gst-libs/gst/egl/egl.c: egl: silence warnings building for RPI related to 'vcos_*' 2013-04-17 14:45:19 -0600 Greg Rutz * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add support for Motorola DigiCipher II MPEG2 video Since there is a conflict between the DCII stream type and BluRay stream types, moved the processing of BluRay-specific stream types to the beginning of the function. Only if a BluRay stream type IS NOT found do we proceed to check the rest of the stream type identifiers Previous code was also "sort-of" handling a similar conflict between BluRay AC3 audio and standard AC3 audio. Moved the special case BluRay AC3 handling in the main switch statement to the new BluRay-specific switch. https://bugzilla.gnome.org/show_bug.cgi?id=697892 2013-04-18 09:07:29 +0200 Sebastian Dröge * configure.ac: configure: The quicktime wrapper plugin is not ported yet either 2013-04-18 08:56:36 +0200 Sebastian Dröge * configure.ac: configure: The osxvideosrc plugin is called osx_video 2013-04-18 07:54:38 +0200 Sebastian Dröge * configure.ac: osxvideosrc: It's not ported to 1.0 yet 2013-04-17 13:48:28 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix GstContext refcounting some more 2013-04-17 13:16:27 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation_egl.c: eglglessink: Fix GstContext refcounting 2013-04-17 10:48:31 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation.c: * ext/eglgles/gstegladaptation.h: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Update for GLTextureUploadMeta and EGL API changes 2013-04-17 10:40:48 +0200 Sebastian Dröge * gst-libs/gst/egl/Makefile.am: * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Use new types from libgstvideo instead of defining our own 2013-03-25 18:30:18 -0400 Youness Alaoui * gst/videoparsers/gsth264parse.c: h264parse: Do not check for VUI parameters if they were not present in the SPS 2013-04-16 22:51:02 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation.c: eglglessink: Reorder surface queries Otherwise wrong values can be returned. 2013-04-16 22:25:19 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation.c: * ext/eglgles/gstegladaptation.h: * ext/eglgles/gstegladaptation_eagl.m: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: eglglessink: Properly set a debug category for the adaption layers 2013-04-16 22:25:02 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Get the EGL/GLES extensions at the right position 2013-04-16 22:14:09 +0200 Sebastian Dröge * ext/eglgles/gstegladaptation_egl.c: eglglessink: Fix compiler warning gstegladaptation_egl.c: In function 'gst_egl_adaptation_create_native_window': gstegladaptation_egl.c:868:3: error: format '%p' expects argument of type 'void *', but argument 8 has type 'EGLNativeWindowType' [-Werror=format=] GST_DEBUG_OBJECT (ctx->element, "Using window handle %p", window); ^ 2013-04-10 17:27:27 -0300 Thiago Santos * ext/eglgles/Makefile.am: * ext/eglgles/gstegladaptation.c: * ext/eglgles/gstegladaptation.h: * ext/eglgles/gstegladaptation_eagl.m: * ext/eglgles/gstegladaptation_egl.c: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: refactor to allow eagl support Put EGL specific code to a separate file and create the same functions for EAGL, the Apple's specific EGL implementaton. At this point, the EAGL version wasn't compiled or tested as there isn't any simple documented way to build 1.0 for iOS. This code for the EAGL version is still the 0.10 version, some updates should be made when 1.0 is buildable for iOS. 2013-04-15 17:43:56 -0300 Thiago Santos * configure.ac: eagl: add ios window system option for eglgles configure 2013-04-15 18:40:09 -0300 Thiago Santos * configure.ac: ios: unconditionally check if we are building for iOS Instead of only checking if applemedia is going to be built 2013-04-10 14:53:48 -0300 Thiago Santos * ext/eglgles/Makefile.am: * ext/eglgles/gstegladaptation.c: * ext/eglgles/gstegladaptation.h: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: refactor egl functions/data to a separate file This is part of the changes required to make eglglessink work with both EGL and Apple's EAGL 2013-04-16 16:30:08 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Print EGL/GLES extensions after we are actually initialized enough 2013-04-16 16:23:46 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: amcaudiodec: Properly set output format instead of just setting caps 2013-04-16 16:17:50 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: Set parent class in class_init 2013-04-16 16:00:30 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: Handle refcounts of pad templates correctly gst_pad_template_new() does not take ownership of caps anymore and gst_element_class_add_pad_template() does take ownership of the pad template now. 2013-04-16 15:32:01 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: amcaudiodec: Use 1.0-style raw audio caps 2013-04-16 15:31:34 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: androidmedia: Properly set subclasses metadata/pad templates in base_init 2013-04-15 16:01:29 -0700 David Schleef * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: check value before using as denominator 2013-04-15 18:19:38 +0300 Anton Belka * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264: printf format fix gstuvch264_mjpgdemux.c:437:5: error: format '%lu' expects argument of type 'long unsigned int', but argument 8 has type 'GstClockTime' 2012-10-24 12:16:39 +0200 Sebastian Dröge * configure.ac: * ext/apexsink/Makefile.am: * ext/assrender/Makefile.am: * ext/audiofile/Makefile.am: * ext/bz2/Makefile.am: * ext/cdaudio/Makefile.am: * ext/celt/Makefile.am: * ext/chromaprint/Makefile.am: * ext/curl/Makefile.am: * ext/dc1394/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/flite/Makefile.am: * ext/fluidsynth/Makefile.am: * ext/gme/Makefile.am: * ext/gsettings/Makefile.am: * ext/gsm/Makefile.am: * ext/hls/Makefile.am: * ext/kate/Makefile.am: * ext/ladspa/Makefile.am: * ext/libfame/Makefile.am: * ext/libmms/Makefile.am: * ext/lv2/Makefile.am: * ext/mimic/Makefile.am: * ext/modplug/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mpg123/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/mythtv/Makefile.am: * ext/nas/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/openal/Makefile.am: * ext/opencv/Makefile.am: * ext/openjpeg/Makefile.am: * ext/opus/Makefile.am: * ext/resindvd/Makefile.am: * ext/rsvg/Makefile.am: * ext/rtmp/Makefile.am: * ext/sbc/Makefile.am: * ext/schroedinger/Makefile.am: * ext/sdl/Makefile.am: * ext/snapshot/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spandsp/Makefile.am: * ext/spc/Makefile.am: * ext/srtp/Makefile.am: * ext/teletextdec/Makefile.am: * ext/timidity/Makefile.am: * ext/voaacenc/Makefile.am: * ext/voamrwbenc/Makefile.am: * ext/wayland/Makefile.am: * ext/xvid/Makefile.am: * ext/zbar/Makefile.am: * gst/accurip/Makefile.am: * gst/adpcmdec/Makefile.am: * gst/adpcmenc/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/autoconvert/Makefile.am: * gst/bayer/Makefile.am: * gst/camerabin2/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/coloreffects/Makefile.am: * gst/dataurisrc/Makefile.am: * gst/dccp/Makefile.am: * gst/debugutils/Makefile.am: * gst/dvbsuboverlay/Makefile.am: * gst/dvdspu/Makefile.am: * gst/faceoverlay/Makefile.am: * gst/festival/Makefile.am: * gst/fieldanalysis/Makefile.am: * gst/freeverb/Makefile.am: * gst/frei0r/Makefile.am: * gst/games/Makefile.am: * gst/gaudieffects/Makefile.am: * gst/gdp/Makefile.am: * gst/geometrictransform/Makefile.am: * gst/hdvparse/Makefile.am: * gst/id3tag/Makefile.am: * gst/inter/Makefile.am: * gst/interlace/Makefile.am: * gst/ivfparse/Makefile.am: * gst/ivtc/Makefile.am: * gst/jp2kdecimator/Makefile.am: * gst/jpegformat/Makefile.am: * gst/librfb/Makefile.am: * gst/liveadder/Makefile.am: * gst/midi/Makefile.am: * gst/mixmatrix/Makefile.am: * gst/mpeg1sys/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegpsmux/Makefile.am: * gst/mpegtsdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mve/Makefile.am: * gst/mxf/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/overlay/Makefile.am: * gst/patchdetect/Makefile.am: * gst/pcapparse/Makefile.am: * gst/pnm/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/removesilence/Makefile.am: * gst/rtjpeg/Makefile.am: * gst/sdi/Makefile.am: * gst/sdp/Makefile.am: * gst/segmentclip/Makefile.am: * gst/siren/Makefile.am: * gst/smooth/Makefile.am: * gst/speed/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/vbidec/Makefile.am: * gst/videofilters/Makefile.am: * gst/videomeasure/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videosignal/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * gst/yadif/Makefile.am: * sys/acmenc/Makefile.am: * sys/acmmp3dec/Makefile.am: * sys/applemedia/Makefile.am: * sys/avc/Makefile.am: * sys/bluez/Makefile.am: * sys/cdrom/Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/decklink/Makefile.am: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * sys/fbdev/Makefile.am: * sys/linsys/Makefile.am: * sys/mfc/Makefile.am: * sys/osxvideo/Makefile.am: * sys/pvr2d/Makefile.am: * sys/qcam/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/shm/Makefile.am: * sys/uvch264/Makefile.am: * sys/vcd/Makefile.am: * sys/vdpau/Makefile.am: * sys/wasapi/Makefile.am: * sys/wininet/Makefile.am: * sys/winks/Makefile.am: * sys/winscreencap/Makefile.am: * tools/gst-project-maker: gst: Add better support for static plugins 2013-04-15 15:13:40 +0200 Sebastian Dröge * Makefile.am: cruft: Add camerabin directory to the cruft directories 2013-04-15 09:01:55 +0200 Wim Taymans * gst/sdp/gstsdpdemux.c: sdpdemux: fix timeout value Timeout on udpsrc is in nanoseconds in 1.0 2013-04-15 00:22:39 -0700 David Schleef * ext/mpg123/gstmpg123audiodec.c: mpg123: Add conditional on API version for new enum 2013-04-04 15:59:09 +0000 Andoni Morales Alastruey * sys/applemedia/avfvideosrc.m: avfvideosrc: fix deadlock draining queue from the same thread 2011-08-10 12:13:34 +0000 Fabricio Costa Alisedo * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowsrcwrapper: Added Graph Builder and Capture Builder to correctly create upstream needed filters by Analog TV Capture Devices. 2012-12-01 16:24:22 +0000 Andoni Morales Alastruey * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowsrcwrapper: Add support for UYVY 2013-04-15 08:48:19 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix compiler warnings gsteglglessink.c: In function 'gst_eglglessink_fill_texture': gsteglglessink.c:1815:3: error: format '%d' expects argument of type 'int', but argument 11 has type 'gsize' [-Werror=format] gsteglglessink.c: In function 'gst_eglglessink_configure_caps': gsteglglessink.c:2850:3: error: format '%p' expects argument of type 'void *', but argument 8 has type 'EGLNativeWindowType' [-Werror=format] 2013-04-15 00:48:36 +0100 Tim-Philipp Müller * ext/kate/gstkatedec.c: * ext/kate/gstkatedec.h: kate: only send decoder output caps once or when the format changes and not for every single buffer. And also send a caps event for spu output. https://bugzilla.gnome.org/show_bug.cgi?id=697071 2013-04-14 23:22:40 +0100 Tim-Philipp Müller * ext/kate/gstkatedec.c: * ext/kate/gstkateutil.c: kate: fix decoder output caps It's either pango-markup or utf8, never both at the same time. https://bugzilla.gnome.org/show_bug.cgi?id=697071 2013-04-14 23:19:44 +0100 Tim-Philipp Müller * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkateutil.c: kate: mark header buffers as such 2013-04-14 23:08:40 +0100 Tim-Philipp Müller * ext/kate/gstkateenc.c: * ext/kate/gstkateenc.h: * ext/kate/gstkateutil.h: kateenc: save current input format in setcaps 2013-04-14 21:28:51 +0100 Tim-Philipp Müller * ext/kate/Makefile.am: * ext/kate/gstkate.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatespu.c: * ext/kate/gstkatetag.c: * ext/kate/gstkateutil.c: kate: fix printf format strings and disable tiger element 2013-04-01 12:47:13 -0600 Brendan Long * configure.ac: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatespu.c: * ext/kate/gstkatetag.c: * ext/kate/gstkateutil.c: * ext/kate/gstkateutil.h: kate: port Kate subtitles to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=697071 2013-04-14 17:55:28 +0100 Tim-Philipp Müller * autogen.sh: * common: Automatic update of common submodule From aed87ae to 3cb3d3c 2013-04-12 17:01:38 +0200 Alexander Olsson * gst/jpegformat/gstjpegparse.c: jpegparse: accept any jpeg input - parsed, unparsed or unmarked The src element may not include information about whether the data is parsed or not. Hence do not require parsed=false. Fixes multipartdemux ! jpegparse ! ... https://bugzilla.gnome.org/show_bug.cgi?id=697884 2013-04-12 14:09:24 -0700 David Schleef * tools/element-templates/videofilter: element-template: add start/stop to videofilter 2013-04-12 14:08:15 -0700 David Schleef * tools/element-templates/sinkpad-template-video: * tools/element-templates/srcpad-template-video: element-templates: avoid using PadTemplates 2013-04-12 14:07:31 -0700 David Schleef * tools/element-templates/basetransform: element-templates: Add helper code to transform_caps 2013-04-12 13:56:25 -0700 David Schleef * gst/videosignal/Makefile.am: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideoanalyse.h: * gst/videosignal/gstvideosignal.c: videoanalyse: port to 1.0 2013-04-05 21:31:18 -0700 David Schleef * configure.ac: * gst/videofilters/Makefile.am: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstscenechange.h: * gst/videofilters/gstvideofilter2.c: * gst/videofilters/gstvideofilter2.h: * gst/videofilters/gstzebrastripe.c: * gst/videofilters/gstzebrastripe.h: videofiltersbad: port to 1.0 2013-04-11 22:15:07 +0200 Matej Knopp * gst/mpegdemux/gstmpegdemux.c: mpegdemux: decrease log priority for repeating messages https://bugzilla.gnome.org/show_bug.cgi?id=697834 2013-04-11 13:34:13 +0200 Sebastian Dröge * Makefile.am: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstsurfaceconverter.c: * gst-libs/gst/video/gstsurfaceconverter.h: * gst-libs/gst/video/gstsurfacemeta.c: * gst-libs/gst/video/gstsurfacemeta.h: * gst-libs/gst/video/videocontext.c: * gst-libs/gst/video/videocontext.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-basevideo-uninstalled.pc.in: * pkgconfig/gstreamer-basevideo.pc.in: video: Remove video library from -bad This only contained API that now has replacements in core and base. 2013-04-11 13:08:57 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Check the continuity counter for non-section packets too And if we detect a discontinuity there (like... when losing packets or having MPEGTS over raw UDP with out-of-order packets) we just drop the corresponding packet. A future version could try to implement a re-ordering algorithm based on that, similar to what rtpjitterbuffer does. 2013-04-11 10:06:23 +0200 Stefan Sauer * gst/mxf/mxfdemux.c: mfxdemus: update todo (ther eis a muxer) 2013-04-10 16:19:00 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Call ::program_stopped after removing all streams Subclasses want to access the program while removing the streams and will currently crash because of dereferencing NULL in some cases. 2013-04-10 11:06:52 +0200 Alexander Schrab * gst/debugutils/gstwatchdog.c: watchdog: race between g_main_loop_run/_quit fixed https://bugzilla.gnome.org/show_bug.cgi?id=697694 2013-04-09 21:32:07 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Don't stop on invalid buffer 2013-04-09 21:31:55 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: srtpdec: Cleaner stream cleanup 2013-04-09 21:31:24 -0400 Olivier Crête * ext/srtp/gstsrtp.c: * ext/srtp/gstsrtpdec.c: srtpdec: Don't crash on invalid cipher 2013-03-27 16:49:05 -0700 David Schleef * gst/debugutils/gstwatchdog.c: watchdog: fix event handling 2013-04-01 15:52:17 -0700 David Schleef * gst/yadif/gstyadif.c: yadif: remove extra template code 2013-04-01 15:47:54 -0700 David Schleef * gst/ivtc/gstivtc.c: ivtc: remove transform_size, it's not needed 2013-04-01 20:13:41 -0700 David Schleef * tools/element-templates/videoencoder: element-maker: fix return value in videoencoder 2013-04-01 20:12:57 -0700 David Schleef * tools/gst-element-maker: gst-element-maker: create better element name when using --prefix 2013-04-01 20:03:59 -0700 David Schleef * gst/inter/gstinteraudiosink.c: interaudiosink: fix leak when not connected 2013-04-09 21:00:28 +0200 Stefan Sauer * common: Automatic update of common submodule From 04c7a1e to aed87ae 2013-04-08 17:40:14 +0100 Tim-Philipp Müller * ext/fluidsynth/gstfluiddec.c: * ext/mimic/gstmimenc.c: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: ext: printf format fixes in debug and error messages 2013-04-08 17:34:41 +0100 Tim-Philipp Müller * sys/bluez/gstavdtpsink.c: * sys/dvb/parsechannels.c: * sys/mfc/gstmfcdec.c: * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpvideomemory.c: sys: print format fixes in debug messages 2013-04-07 18:41:38 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Add support for TrueHD audio 2013-04-05 09:41:26 +0100 Todd Agulnick * ext/opencv/gsthanddetect.c: * ext/opencv/gsthanddetect.h: handdetect: fix build on OS/X gsthanddetect.h:84: error: expected specifier-qualifier-list before 'uint' https://bugzilla.gnome.org/show_bug.cgi?id=697305 2013-04-05 00:49:46 +0100 Tim-Philipp Müller * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: shaders assume 32bpp Backport fix for crashes and invalid writes in totem from libvisual in -base, to minimise differences to version in -base and to make sure the bug doesn't sneak back in later when the base class is made public. The shader code looks like it makes assumptions that are not necessarily always true, even if they're true for now for the existing elements, namly that pixel stride is 4, for example. See https://bugzilla.gnome.org/show_bug.cgi?id=683527 2013-03-14 11:15:29 +1100 Matthew Waters * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: handle non-existant pool in the default allocation query gst_query_set_nth_allocation_pool() requires there to be a pool in the query already. This is not always the case when we get the query from upstream. Use gst_query_add_allocation_pool() instead in such case. https://bugzilla.gnome.org/show_bug.cgi?id=681719 2013-01-29 10:18:06 +0100 Wim Taymans * gst/audiovisualizers/gstaudiovisualizer.c: * gst/audiovisualizers/gstaudiovisualizer.h: audiovisualizer: improve allocation Based on patch by Matthew Waters Add private data Add decide_allocation vmethod Refactor bufferpool negotiation Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681719 2013-04-03 16:12:01 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: use bilinear filter as much as possible Use the bilinear scalling filter when the magnifier or the minifier filters are avaible. Some graphics cards do not provide minifier filters but we want to use it for upscalling if it's available https://bugzilla.gnome.org/show_bug.cgi?id=697176 2013-04-03 14:55:52 +0200 Edward Hervey * configure.ac: * ext/rsvg/gstrsvg.c: * ext/rsvg/gstrsvgdec.h: * ext/rsvg/gstrsvgoverlay.h: rsvg: Bump minimum requirement to 2.36.0 And handle header changes in 2.36.2 2013-04-02 23:33:54 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstmpegvideometa.c: * gst-libs/gst/codecparsers/gstmpegvideometa.h: docs: add since markers to new codecparsers video meta API https://bugzilla.gnome.org/show_bug.cgi?id=691712 2013-04-01 19:49:00 -0700 David Schleef * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Implement basesrc->unlock() This fixes ->NULL transition problems if librtmp is stuck in a recv or send call that never returns. 2013-03-30 15:07:45 -0700 David Schleef * tools/element-templates/basetransform: element-maker: call up in basetransform template More templates should be doing this: function implementations should call up to the default implementation in the base class. 2013-04-01 22:38:52 +0100 Tim-Philipp Müller * configure.ac: configure: also check for bluez for bluetooth/bluetooth.h Fixes build on machines where bluez headers are not available. 2013-04-01 21:49:49 +0100 Tim-Philipp Müller * configure.ac: bluez: enable bluez plugin Seems to mostly work now. https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-04-01 21:48:01 +0100 Tim-Philipp Müller * configure.ac: Bump soft liborc requirement to 0.4.17 To match -base and -good. Also fixes potential crash when a fallback function has to be used. 2013-04-01 10:20:33 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Use the EGLImage and GstVideoGLTextureUploadMeta caps features 2013-04-01 10:20:14 +0200 Sebastian Dröge * gst-libs/gst/egl/egl.h: egl: Add a #define for the EGLImage memory caps feature 2013-04-01 09:13:16 +0200 Edward Hervey * ext/rsvg/gstrsvgdec.h: * ext/rsvg/gstrsvgoverlay.h: rsvg: Don't include rsvg-cairo.h directly Including it directly is now deprecated 2013-04-01 09:10:53 +0200 Edward Hervey * sys/vdpau/gstvdpdevice.c: vdpau: Don't use deprecated GMutex methods 2013-03-29 17:57:12 +0100 Luciana Fujii Pontello * configure.ac: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgdec.h: * ext/rsvg/gstrsvgoverlay.c: * ext/rsvg/gstrsvgoverlay.h: rsvg: Port to 1.0 Also port the decoder to the GstVideoDecoder 2012-09-20 19:03:11 +0200 Edward Hervey * configure.ac: * sys/Makefile.am: * sys/vdpau/Makefile.am: * sys/vdpau/basevideodecoder/Makefile.am: * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/basevideodecoder/gstbasevideoutils.h: * sys/vdpau/basevideodecoder/gstvideoframe.c: * sys/vdpau/basevideodecoder/gstvideoframe.h: * sys/vdpau/gstvdp/Makefile.am: * sys/vdpau/gstvdp/gstvdp.c: * sys/vdpau/gstvdp/gstvdp.h: * sys/vdpau/gstvdp/gstvdpbuffer.c: * sys/vdpau/gstvdp/gstvdpbuffer.h: * sys/vdpau/gstvdp/gstvdpbufferpool.c: * sys/vdpau/gstvdp/gstvdpbufferpool.h: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.h: * sys/vdpau/gstvdp/gstvdputils.c: * sys/vdpau/gstvdp/gstvdpvideobuffer.c: * sys/vdpau/gstvdp/gstvdpvideobuffer.h: * sys/vdpau/gstvdp/gstvdpvideobufferpool.c: * sys/vdpau/gstvdp/gstvdpvideobufferpool.h: * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdp/gstvdpvideosrcpad.h: * sys/vdpau/gstvdpau.c: * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpdecoder.h: * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpoutputbuffer.c: * sys/vdpau/gstvdpoutputbuffer.h: * sys/vdpau/gstvdpoutputbufferpool.c: * sys/vdpau/gstvdpoutputbufferpool.h: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideobufferpool.c: * sys/vdpau/gstvdpvideobufferpool.h: * sys/vdpau/gstvdpvideomemory.c: * sys/vdpau/gstvdpvideomemory.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gsth264frame.c: * sys/vdpau/h264/gsth264frame.h: * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gsth264parser.h: * sys/vdpau/h264/gstnalreader.c: * sys/vdpau/h264/gstnalreader.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegdec.h: * sys/vdpau/mpeg/gstvdpmpegframe.c: * sys/vdpau/mpeg/gstvdpmpegframe.h: * sys/vdpau/mpeg/mpegutil.c: * sys/vdpau/mpeg/mpegutil.h: * sys/vdpau/mpeg4/gstmpeg4frame.h: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.h: vdpau: Port to 1.0 New base class for vdpau decoders * mpeg2 ported and activated * h264 ported but deactivated * Uses GstMpegVideo meta 2012-12-23 01:54:52 +0100 Edward Hervey * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: Only add meta if downstream needs it It's not perfect, because in the cases where upstream doesn't initiate an allocation query, we won't know. 2012-09-20 18:27:11 +0200 Edward Hervey * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: Store information in GstMpegVideo12Meta FIXME : Only do so if we know downstream will need it 2012-09-20 18:03:59 +0200 Edward Hervey * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstmpegvideometa.c: * gst-libs/gst/codecparsers/gstmpegvideometa.h: codecparsers: Add Mpeg Video GstMeta This can be used by parsers to provide pre-parsed information to downstream elements that would require it (so they can avoid having to parse the bitstream again). 2012-12-26 13:16:27 +0100 Edward Hervey * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparser: Fix picture packet extension size check It is at least 34 bit big (5 bytes with byte padding) 2013-03-31 12:11:48 +0200 Edward Hervey * sys/dvb/dvbbasebin.c: * sys/dvb/dvbbasebin.h: dvb: Move CAM handling to a separate GstTask * No longer blocks in READY=>PAUSED (faster startup) * No longer requires a pad probe 2013-03-31 11:46:28 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Use gst_element_get_context() wherever possible 2013-03-30 13:40:21 +0100 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: We output time segments Fixes #690949 2013-03-30 13:39:49 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: tsparse: Ensure segment events are forwarded We skip them for tsdemux though (recreated later) Fixes #690949 2013-03-30 10:25:24 +0100 Wim Taymans * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: push stream start event 2013-03-30 10:57:08 +0100 Josep Torra * gst/midi/midiparse.c: midiparser: ensure variable is initialized and fix debug message access 2013-03-30 09:52:45 +0100 Josep Torra * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparser: Fix a compiler warning about uninitialised variable use 2013-03-28 17:48:04 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: eglglessink: Implement GstContext handling 2013-03-29 16:11:56 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Use a separate texture for the custom textures 2013-03-29 16:05:01 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * ext/eglgles/video_platform_wrapper.c: eglglessink: Add support for GstVideoGLTextureUploadMeta 2013-03-29 10:33:10 +0100 Josep Torra * gst-libs/gst/egl/egl.c: egl: check on the proper display and indent some lines 2013-03-28 14:36:16 -0400 Olivier Crête * sys/shm/shmpipe.c: shm: Make sure the zero-sized array is always last in the struct https://bugzilla.gnome.org/show_bug.cgi?id=696681 2013-03-25 14:18:24 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: srtp: Update example pipelines 2013-03-28 17:36:07 +0000 Arun Raghavan * sys/bluez/Makefile.am: * sys/bluez/bluez-plugin.c: * sys/bluez/gsta2dpsrc.c: * sys/bluez/gsta2dpsrc.h: bluez: Remove a2dpsrc bin This element isn't really useful. The original plan was to use this to eventually allow dynamically picking a format based on what we can support while negotiating with the source device. We can just plug in a decodebin downstream and it'll handle RTP depayloading and decoding of whatever format we negotiated with the source device. 2013-03-14 18:04:55 +0530 Arun Raghavan * sys/bluez/gsta2dpsrc.c: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtputil.c: bluez: Compile fixes for avdtpsrc/a2dpsrc code against 1.x 2013-03-14 13:09:15 +0530 Arun Raghavan * sys/bluez/Makefile.am: * sys/bluez/bluez-plugin.c: bluez: Add avdtpsrc/a2dpsrc to build 2013-03-14 12:58:16 +0530 Arun Raghavan * sys/bluez/gstavdtpsink.c: bluez: Fix up some problems that came in with cherry-pick 2013-01-08 10:19:06 +0100 Wim Taymans * sys/bluez/gstavdtpsrc.c: bluez: We work in TIME format with avdtpsrc 2012-10-29 16:45:44 +0530 Wim Taymans * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: bluez: Fix depreacation warnings on g_mutex_* 2012-10-29 16:45:25 +0530 Wim Taymans * sys/bluez/gsta2dpsrc.c: * sys/bluez/gsta2dpsrc.h: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtpsrc.h: bluez: Fix a number of compiler warnings 2012-10-29 15:49:02 +0530 Arun Raghavan * sys/bluez/gstavdtputil.c: * sys/bluez/gstavdtputil.h: bluez: Fix some warnings in gstavdtputil.c 2012-10-12 18:52:24 +0530 Arun Raghavan * sys/bluez/gstavdtputil.c: bluez: Fix typo in resetting the D-Bus connection No real effect since FALSE and NULL are both 0 2012-10-11 15:48:56 +0530 Arun Raghavan * sys/bluez/gstavdtpsrc.c: bluez: Handle EOF in avdtpsrc correctly 2012-10-11 08:57:01 +0530 Arun Raghavan * sys/bluez/gstavdtpsrc.c: bluez: Fix avdtpsrc getcaps() function This is now a proper subset of the template caps. 2012-10-11 08:38:16 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsrc.c: * sys/bluez/gsta2dpsrc.h: * sys/bluez/gstavdtputil.h: bluez: Add an a2dpsrc bin element This wraps avdtpsrc + rtpsbcdepay into a single element. when more formats are supported in avdtpsrc, payloader selection will need to be done dynamically. This could also be extended to accept a device, connect to it, and provide avdtpsrc a transport (instead of passing through a transport as it does now). 2012-10-11 08:24:06 +0530 Arun Raghavan * sys/bluez/gstavdtpsrc.c: bluez: Fix avdtpsrc classification 2012-10-10 21:38:46 +0530 Arun Raghavan * sys/bluez/gstavdtputil.c: bluez: Bump up priority for sockets in AVDTP elements This is based on the code in PulseAudio. 2012-10-10 19:49:32 +0530 Arun Raghavan * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: * sys/bluez/gstavdtpsrc.c: * sys/bluez/gstavdtpsrc.h: * sys/bluez/gstavdtputil.c: * sys/bluez/gstavdtputil.h: bluez: Add an avdtpsrc element Source element that connects to a given transport and reads audio over AVDTP. Does not provide a clock but uses the system clock to timestamp incoming packets. Only SBC is currently supported. 2013-03-28 16:51:51 +0100 Sebastian Dröge * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Add a boxed type for GstEGLDisplay 2013-03-28 13:18:59 +0000 Tim-Philipp Müller * configure.ac: sbc: actually enable plugin if libsbc is available 2013-03-27 13:11:11 +0000 Tim-Philipp Müller * ext/sbc/Makefile.am: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: port encoder to GstAudioEncoder https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-03-26 13:55:32 +0000 Tim-Philipp Müller * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/sbc-plugin.c: sbc: port decoder to GstAudioDecoder https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-01-16 11:36:25 +0000 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/sbc/Makefile.am: * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: * ext/sbc/sbc-plugin.c: sbc: import sbc decoder/encoder from bluez and port to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-03-27 22:24:03 +0000 Tim-Philipp Müller Merge SBC decoder and encoder from bluez https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-03-26 16:50:42 -0700 David Schleef * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstwatchdog.c: * gst/debugutils/gstwatchdog.h: watchdog: new element 2013-03-27 00:56:31 +0000 Tim-Philipp Müller * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: sbc: remove parser in favour of new GstBaseParse-based sbcparse in -good 2013-01-08 10:19:39 +0100 Wim Taymans * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: sbc: sbcdec: make decoder more performant Use an adapter to accumulate input buffers. Decode all input in one output buffer when possible to reduce the amount of push operations. 2012-10-30 18:41:56 +0000 Wim Taymans * ext/sbc/gstsbcdec.c: sbc: sbcdec: skip the frame on decoding error 2012-10-29 17:22:28 +0000 Wim Taymans * ext/sbc/gstsbcdec.c: sbc: sbcdec: set DISCONT on outgoing buffers. 2012-10-29 17:19:50 +0000 Wim Taymans * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: sbc: sbcdec: handle DISCONT and timestamps Reset state on discont. Interpollate timestamps. 2012-10-03 12:47:14 +0530 Arun Raghavan * ext/sbc/gstsbcdec.c: sbc: audio: Make the sbcdec element copy buffer metadata Makes sure we don't lose timestamps, etc. 2012-10-29 12:49:53 +0000 Wim Taymans * ext/sbc/gstsbcenc.c: sbc: enc: sbc_get_frame_duration is in milliseconds 2012-10-29 12:37:09 +0000 Wim Taymans * ext/sbc/gstsbcdec.c: sbc: dec: chain up to parent before downward state change 2012-10-12 18:53:16 +0530 Arun Raghavan * ext/sbc/gstsbcdec.c: sbc: audio: Fix a leak in sbcdec 2012-09-26 09:54:01 +0800 Arun Raghavan * ext/sbc/gstsbcparse.c: sbc: audio: Initialise SBC data before use in sbcparse element 2012-08-21 11:49:24 -0400 Anderson Lizardo * ext/sbc/gstsbcutil.h: sbc: Fix trivial coding style issues on pointer declarations and casting Avoid using C++ style pointer declarations like "char* ptr", as most BlueZ code uses "char *ptr". 2012-04-12 20:33:06 +0530 Syam Sidhardhan * ext/sbc/gstsbcutil.h: sbc: audio: Fix newline before EOF 2011-07-02 12:32:40 -0300 Lucas De Marchi * ext/sbc/gstsbcutil.c: sbc: Fix common misspelled words Accounting of misspelled words, as detected by codespell: acording 2 ancilliary 1 appropiate 1 atribute 1 cant 1 comming 2 gracefull 1 lenght 1 mispelled 1 occured 1 occurences 1 ocurred 3 prefered 1 presense 1 reponse 1 seperate 1 succesful 1 successully 1 sucessfull 1 sucessfully 1 2011-02-13 17:51:45 -0800 Marcel Holtmann * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.h: sbc: audio: Remove workaround for compiler warnings 2010-05-19 16:59:30 +0200 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcparse.c: sbc: Add pragma based workaround for GStreamer warnings 2010-01-01 17:08:17 -0800 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Update copyright information 2009-04-01 10:45:30 -0300 Luiz Augusto von Dentz * ext/sbc/gstsbcparse.c: sbc: Remove unused variable. 2009-04-01 10:29:31 -0300 Luiz Augusto von Dentz * ext/sbc/gstsbcdec.c: sbc: Remove unused variable. 2009-01-30 00:31:15 +0100 Marcel Holtmann * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcutil.c: sbc: Fix signed/unsigned comparison issue within GStreamer plugin 2009-01-19 10:26:28 +0200 Siarhei Siamashka * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: sbc: Use native byte order for audio in GStreamer and ALSA plugins This fixes endianness inconsistency between default SBC configuration and GStreamer/ALSA. 2009-01-01 19:33:20 +0100 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Update copyright information 2008-12-23 05:25:50 +0100 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: * ext/sbc/gstsbcutil.h: sbc: First attempt in fixing compiler warnings (still needs cleanup) 2008-12-23 04:21:57 +0100 Marcel Holtmann * ext/sbc/gstsbcutil.c: sbc: Assign variables after declarations 2008-12-20 21:42:49 +0200 Johan Hedberg * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcparse.c: sbc: More coding style fixes 2008-02-20 13:37:00 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcparse.c: sbc: Fix runtime warnings of gstreamer plugin. 2008-02-19 19:49:24 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Update gstreamer plugin to use new sbc API. 2008-02-14 21:22:38 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcutil.c: sbc: Make use of parameters selected in alsa plugin and fix auto selection. 2008-02-02 03:37:05 +0000 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Update copyright information 2008-02-01 19:28:37 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Add bitpool property and others fixes for gstreamer plugin. 2008-01-30 17:30:27 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: sbc: Enable gstreamer plugin to use autoconnect flag. 2008-01-30 14:21:43 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcutil.c: sbc: Fixes gstreamer caps and code cleanup. 2008-01-24 14:25:29 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcutil.c: sbc: Fix gtreamer payloader sending fragmented frames. 2008-01-23 13:19:32 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Add mp3 support for gstreamer plugin. 2008-01-23 13:14:02 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Make a2dpsink to act like a bin and split the payloader. 2007-11-23 17:00:13 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: sbc: Code cleanup. 2007-11-21 20:24:11 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Integrate new ipc API implementation. 2007-11-13 20:04:12 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: sbc: Add sbc_reinit. 2007-11-12 22:21:45 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: sbc: Fix bug in sbcenc when changing encoder parameters. 2007-11-12 18:15:59 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: sbc: Make sbc codec to write directly in application buffers and so avoiding memcpys. 2007-11-01 19:45:00 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Fix sbc negotiation and improves buffer handling by using GstAdapter. 2007-11-01 13:56:51 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: sbc: Fix buffers timestamps in sbcenc. 2007-10-29 15:02:26 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Add bitpool capability. 2007-10-24 21:51:37 +0000 Marcel Holtmann * ext/sbc/gstsbcparse.c: sbc: Some more coding style changes 2007-10-24 21:36:29 +0000 Marcel Holtmann * ext/sbc/gstsbcutil.c: sbc: Don't forget to include the config options 2007-10-24 21:33:18 +0000 Marcel Holtmann * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Fix coding style issues 2007-10-18 22:46:12 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcparse.c: sbc: Fix coding style issues. 2007-10-18 21:47:53 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcparse.c: sbc: Fixes sbcparser element. 2007-10-18 21:46:49 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: * ext/sbc/gstsbcutil.c: sbc: Fixes for gstsbcenc. 2007-10-18 21:45:14 +0000 Luiz Augusto von Dentz * ext/sbc/gstsbcutil.c: * ext/sbc/gstsbcutil.h: sbc: Add gstsbcutil.c and gstsbcutil.h. 2007-08-27 14:10:00 +0000 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcparse.c: sbc: Force LITTLE_ENDIAN instead of BYTE_ORDER for now 2007-08-26 13:59:05 +0000 Marcel Holtmann * ext/sbc/gstsbcparse.c: * ext/sbc/gstsbcparse.h: sbc: Implement full parsing support 2007-08-26 13:12:47 +0000 Marcel Holtmann * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: sbc: Add mode property to the encoder 2007-08-25 19:32:03 +0000 Marcel Holtmann * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: sbc: Implement full encoding support 2007-08-25 18:50:28 +0000 Marcel Holtmann * ext/sbc/gstsbcdec.c: sbc: Fix class variable naming 2007-08-25 17:37:05 +0000 Marcel Holtmann * ext/sbc/gstsbcdec.c: sbc: Limit the supported output rates 2007-08-25 17:03:03 +0000 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: sbc: Implement full decoding support 2007-08-23 19:12:23 +0000 Marcel Holtmann * ext/sbc/gstsbcdec.c: * ext/sbc/gstsbcdec.h: * ext/sbc/gstsbcenc.c: * ext/sbc/gstsbcenc.h: sbc: Add SBC encoder and decoder skeletons for GStreamer 2013-03-27 09:08:40 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Make sure that all buffers in our pool contain our own memory 2013-03-26 15:22:16 +0100 Sebastian Dröge * configure.ac: * sys/wasapi/Makefile.am: * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: wasapi: Initial port to 1.0 This should really use GstAudioSink and GstAudioSrc. 2013-03-26 15:01:08 +0100 Sebastian Dröge * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapiutil.c: wasapi: Include config.h before anything else 2013-03-26 14:15:41 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Add support for crop meta 2013-03-26 13:22:22 +0000 Tim-Philipp Müller * configure.ac: build: we need a recent-enough gnutls for hls https://bugzilla.gnome.org/show_bug.cgi?id=696597 2012-12-22 21:59:03 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Implement a buffer pool that shares D3D surfaces with upstream 2012-12-22 19:12:34 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Allocate a new offscreen surface for every buffer This is a preparation for implementing a buffer pool. 2013-03-25 18:04:09 -0700 David Schleef * gst/mxf/mxfdemux.c: mxfdemux: Use %03u for format in gst_pad_create_stream_id_printf() 2013-03-25 13:48:20 -0400 Olivier Crête * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpenc.c: srtp: Fix filter handling in caps negotiation to keep filter content 2013-03-25 09:45:30 -0300 Thiago Santos * sys/applemedia/Makefile.am: applemedia: fix build for objc The obj-c api version option is required to get applemedia to build for ios, otherwise it won't find some symbols during linking 2013-03-25 10:10:28 +0100 Wim Taymans * gst/interlace/gstinterlace.c: interlaced: set both DTS and PTS Handle both dts and pts on output buffers. 2013-03-10 12:17:05 +1300 Douglas Bagnall * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: remove unused current_program_number field https://bugzilla.gnome.org/show_bug.cgi?id=690934 2013-03-22 19:40:58 +0000 Tim-Philipp Müller * gst/rawparse/gstrawparse.c: rawparse: send segment event in time format also in push mode When converting the incoming segment from byte to time format, don't just convert the start/stop/time values, but also change the segment format to TIME. https://bugzilla.gnome.org/show_bug.cgi?id=696361 2013-03-22 15:30:32 +0000 Tim-Philipp Müller * configure.ac: configure: fix build if gnutls is not present Skip build of hls plugin if gnutls headers can't be found. https://bugzilla.gnome.org/show_bug.cgi?id=696392 2013-03-22 15:49:18 +0100 Sebastian Dröge * gst/y4m/gsty4mdec.c: * gst/y4m/gsty4mdec.h: y4mdec: Use the correct strides as used by y4m and convert to GStreamer strides if necessary https://bugzilla.gnome.org/show_bug.cgi?id=696361 2013-03-22 15:19:32 +0100 Wim Taymans * ext/fluidsynth/Makefile.am: * ext/fluidsynth/gstfluiddec.c: * ext/fluidsynth/gstfluiddec.h: fluidsynth: rename to fluiddec Rename the fluidsynth plugin to fluidsynthmidi and the decoder to fluiddec to avoid conflicts with buzztard. 2013-03-22 14:52:54 +0100 Sebastian Dröge * gst/y4m/gsty4mdec.c: y4mdec: Use the default event/query handlers for the default handling Especially don't forward caps events from the sinkpad to the srcpad. https://bugzilla.gnome.org/show_bug.cgi?id=696282 2013-03-22 14:37:37 +0100 Sebastian Dröge * gst/y4m/gsty4mdec.c: y4mdec: Properly handle segment and time values of -1 2013-03-22 14:48:52 +0100 Wim Taymans * gst/midi/midi.c: midi: set midi parser rank primary Now that it supports seeking and all, mark it primary 2013-03-22 13:49:49 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: always seek back to beginning We always need to seek back to the beginning because when we do a flushing seek, we might have lost events downstream. 2013-03-22 13:48:26 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: fluidsynth: fix debug of segment structure 2013-03-22 13:48:03 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: * ext/fluidsynth/gstfluidsynth.h: fluidsynth: handle discont 2013-03-22 12:25:16 +0100 Wim Taymans * gst/midi/midiparse.c: * gst/midi/midiparse.h: midiparse: implement seeking Seek back to 0 for backward seeking and let things run and clip for forwards seeking. 2013-03-22 12:16:45 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: fluidsynth: reset on flush and state change 2013-03-22 11:04:10 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: * ext/fluidsynth/gstfluidsynth.h: fluidsynth: add properties Add properties. Try to find a good default soundfont when not specified. 2013-03-22 08:54:54 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: fluidsynth: log midi tick event 2013-03-22 08:54:32 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: fluidsynth: redirect logging to gst logging functions 2013-03-21 18:18:29 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: simplify the callbacks We only need one callback to send bytes out. 2013-03-21 18:17:40 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: fluidsynth: improve debug 2013-03-21 17:25:32 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: clean up tracks 2013-03-21 17:16:24 +0100 Wim Taymans * gst/midi/midiparse.c: * gst/midi/midiparse.h: midiparse: don't leak midi data 2013-03-21 17:05:36 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: * ext/fluidsynth/gstfluidsynth.h: fluidsynth: produce more accurate timestamps 2013-03-21 16:05:41 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: small cleanups in error paths 2013-03-21 16:05:00 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: duration is max of all track durations 2013-03-21 16:04:32 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: fix klass 2013-03-21 15:43:12 +0100 Sebastian Dröge * sys/opensles/openslesringbuffer.c: opensles: Include string.h for memcpy() 2013-03-21 15:00:16 +0100 Wim Taymans * gst/midi/midiparse.c: * gst/midi/midiparse.h: midiparse: Update duration Rework things a bit so that we can run over the midi events and fire callbacks for each of them. We can then use that for calculating the duration and also for doing playback. Only parse as many tracks as specified in the header. Fix default tempo; Send MIDI tick events every 10ms 2013-03-21 14:57:43 +0100 Wim Taymans * ext/fluidsynth/gstfluidsynth.c: fluidsynth: add more debug 2013-03-21 09:30:41 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: handle midi in RIFF 2013-03-21 07:21:00 +0100 Wim Taymans * gst/midi/midiparse.c: midiparse: small fixes 2013-03-21 07:07:29 +0100 Wim Taymans * gst/midi/midi.c: midi: set rank as marginal Set the mark to marginal until we implement more features. 2013-03-21 07:05:54 +0100 Wim Taymans * configure.ac: * ext/Makefile.am: * ext/fluidsynth/Makefile.am: * ext/fluidsynth/gstfluidsynth.c: * ext/fluidsynth/gstfluidsynth.h: fluidsynth: add fluidsynth midi renderer Add a fluidsynth element that converts midi events into raw float samples. 2013-03-21 06:50:52 +0100 Wim Taymans * configure.ac: * gst/midi/Makefile.am: * gst/midi/midi.c: * gst/midi/midiparse.c: * gst/midi/midiparse.h: midiparse: add basic midi parser Parses midi files and outputs buffers with midi events. 2013-03-20 15:29:51 +0000 Tim-Philipp Müller * gst/ivtc/Makefile.am: ivtc: fix make dist 2013-03-20 15:25:55 +0000 Tim-Philipp Müller * ext/Makefile.am: Dist hls as well 2013-03-20 15:19:15 +0000 Tim-Philipp Müller * configure.ac: configure: actually build hls plugin 2013-03-20 10:49:04 +0000 Tim-Philipp Müller * sys/decklink/gstdecklinksink.cpp: decklinksink: fix some compiler warnings 2013-03-19 16:39:03 -0700 David Schleef * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstcombdetect.h: * gst/ivtc/gstivtc.c: * gst/ivtc/gstivtc.h: combdetect,ivtc: code cleanup 2013-03-19 17:28:16 -0700 David Schleef * tools/element-templates/sinkpad-audio: * tools/element-templates/sinkpad-simple: * tools/element-templates/sinkpad-template-video: * tools/element-templates/srcpad-audio: * tools/element-templates/srcpad-simple: * tools/element-templates/srcpad-template-video: * tools/gst-element-maker: element-maker: remove sinkpad/srcpad fields Information is in the base class anyway, plus pad creation was done incorrectly. 2013-03-19 12:19:27 -0700 David Schleef * gst/ivtc/gstcombdetect.c: combdetect: output progressive video 2013-03-18 16:22:55 -0700 David Schleef * gst/ivtc/gstcombdetect.c: combdetect: code cleanup 2013-03-12 17:47:52 -0700 David Schleef * gst/ivtc/gstcombdetect.c: combdetect: switch to zebra striping 2013-03-08 17:02:14 -0800 David Schleef * gst/ivtc/gstivtc.c: ivtc: drop early fields 2013-02-20 15:32:15 -0800 David Schleef * configure.ac: * gst/ivtc/Makefile.am: * gst/ivtc/gstcombdetect.c: * gst/ivtc/gstcombdetect.h: * gst/ivtc/gstivtc.c: * gst/ivtc/gstivtc.h: ivtc: new inverse telecine filter This filter converts interlaced content that was originally telecine'd from 24 fps (or similar) progressive content. It works approximately like videorate, but with awareness of interlacing. It merges neighboring fields in the input interlaced stream with the goal of minimizing combing artifacts, while keeping the output framerate constant. If it cannot avoid combing artifacts, it will reconstruct the image from a single field. Note that this filter does not autodetect the framerate, but will automatically fixate at 24 fps. 2013-03-19 14:31:14 +0100 Sebastian Dröge * gst-libs/gst/egl/egl.c: egl: Fix some return values in g_return_val_if_fail() 2013-03-19 13:54:00 +0100 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: fix event and query handler Call the default implementation for unknown events and queries. Fix event leak. 2013-03-19 10:47:25 +0100 Alessandro Decina * Makefile.am: * configure.ac: * ext/Makefile.am: * ext/hls/Makefile.am: * ext/hls/gstfragment.c: * ext/hls/gstfragment.h: * ext/hls/gstfragmented.h: * ext/hls/gstfragmentedplugin.c: * ext/hls/gsthlsdemux.c: * ext/hls/gsthlsdemux.h: * ext/hls/gsthlssink.c: * ext/hls/gsthlssink.h: * ext/hls/gstm3u8playlist.c: * ext/hls/gstm3u8playlist.h: * ext/hls/gsturidownloader.c: * ext/hls/gsturidownloader.h: * ext/hls/m3u8.c: * ext/hls/m3u8.h: Make the hls plugin depend on gnutls and move to ext/hls/ gnutls is used to implement AES decryption 2013-03-19 10:26:14 +0100 Alessandro Decina * gst/hls/gsthlsdemux.c: hlsdemux: use gnutls instead of openssl 2013-03-19 08:49:21 +0100 Alessandro Decina * gst/hls/gsthlsdemux.c: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: support encrypted streams 2013-03-19 10:14:05 +0100 Wim Taymans * configure.ac: * ext/timidity/gstwildmidi.c: port wildmidi Fixes https://bugzilla.gnome.org/show_bug.cgi?id=696041 2013-03-18 21:12:00 +0100 Mark Nauwelaerts * sys/decklink/gstdecklinksink.cpp: decklinksink: obtain class from object 2013-03-18 21:01:59 +0100 Alessandro Decina * gst/hls/m3u8.c: hlsdemux: fix invalid free() introduced by last commit 2013-03-07 22:19:15 +0000 Kevin Thornberry * gst/mpegtsmux/mpegtsmux_aac.c: mpegtsmux: fix creation of ADTS header for AAC audio in MPEG-TS https://bugzilla.gnome.org/show_bug.cgi?id=695412 2013-03-18 07:34:13 +0100 Alessandro Decina * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: parse #EXT-X-KEY tags 2013-03-18 07:22:36 +0100 Alessandro Decina * gst/hls/m3u8.c: hlsdemux: factor out URI joining utility 2013-03-18 07:02:54 +0100 Alessandro Decina * gst/hls/m3u8.c: hlsdemux: fix URI parsing for absolute fragment paths 2013-03-16 23:32:12 +0000 Tim-Philipp Müller * sys/decklink/gstdecklinksrc.cpp: decklinksrc: set discont flag on first audio buffer too 2013-03-16 23:29:35 +0000 Tim-Philipp Müller * sys/decklink/gstdecklinksrc.cpp: decklinksrc: aggregate audio and video flow returns And pause task in some more cases where we should pause the task. 2013-03-16 21:39:20 +0000 Tim-Philipp Müller * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklinksrc: add send_event handler so application can inject EOS event This is needed to shut down a recording pipeline cleanly. https://bugzilla.gnome.org/show_bug.cgi?id=680700 2013-03-16 21:34:57 +0000 Tim-Philipp Müller * sys/decklink/gstdecklinksrc.cpp: decklinksrc: pause streaming thread and send EOS event on error Instead of just posting an EOS message and continuing, actually pause the thread. 2013-03-16 13:13:14 -0400 Jean-François Fortin Tam * gst/frei0r/gstfrei0r.c: frei0r: improve readability of RGB and XY property nickname strings Also fix the Y prop nickname string being incorrect. https://bugzilla.gnome.org/show_bug.cgi?id=695884 2013-03-16 13:07:25 -0400 Jean-François Fortin Tam * gst/frei0r/gstfrei0r.c: frei0r: fix nicknames for color and position properties https://bugzilla.gnome.org/show_bug.cgi?id=695884 2013-03-15 20:21:47 -0700 David Schleef * configure.ac: configure: Mark decklink as ported 2013-03-15 00:25:43 -0700 David Schleef * tools/element-templates/sinkpad-template: * tools/element-templates/sinkpad-template-video: * tools/element-templates/srcpad-template: * tools/element-templates/srcpad-template-video: element-maker: clean up bits from previous commit Files that were supposed to be in the previous element-maker commit. This is what happens when cherry-pick doesn't work. 2013-03-15 17:47:23 +0100 Rico Tzschichholz * tools/Makefile.am: tools: Fix make dist Missing bits of b45a1df5deadb029dcbe4522f0116d34f1cd2f1e 2013-03-15 09:29:42 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtpenc.c: srtp: fix compilation warning returning NULL in case of error https://bugzilla.gnome.org/show_bug.cgi?id=695897 2013-03-15 09:27:36 +0100 Jose Antonio Santos Cadenas * ext/srtp/gstsrtp.c: srtp: use constant AES_128_ICM instead of AES_ICM that is not found https://bugzilla.gnome.org/show_bug.cgi?id=695897 2013-03-01 16:52:41 -0800 David Schleef * gst/segmentclip/gstvideosegmentclip.c: videosegmentclip: Don't leak buffers after segment 2013-03-12 17:32:51 -0700 David Schleef * gst/videosignal/gstvideosignal.c: videosignal: add FIXME for future revival 2013-03-14 23:57:06 -0700 David Schleef * tools/element-templates/audiodecoder: * tools/element-templates/audioencoder: * tools/element-templates/audiofilter: * tools/element-templates/audiosink: * tools/element-templates/audiosrc: * tools/element-templates/base: * tools/element-templates/baseaudiosink: * tools/element-templates/baseaudiosrc: * tools/element-templates/baseparse: * tools/element-templates/basertpdepayload: * tools/element-templates/basertppayload: * tools/element-templates/basesink: * tools/element-templates/basesrc: * tools/element-templates/basetransform: * tools/element-templates/cddabasesrc: * tools/element-templates/element: * tools/element-templates/gobject: * tools/element-templates/pushsrc: * tools/element-templates/sinkpad-audio: * tools/element-templates/srcpad-audio: * tools/element-templates/tagdemux: * tools/element-templates/videodecoder: * tools/element-templates/videoencoder: * tools/element-templates/videofilter: * tools/element-templates/videofilter2: * tools/element-templates/videosink: * tools/gst-element-maker: element-maker: Update templates for 1.0 This are (almost) completely autogenerated from the documentation. 2013-02-05 16:34:20 -0800 David Schleef * gst/mxf/mxfaes-bwf.c: mxfdemux: Add a second MXF UL for uncompressed audio 2013-02-05 15:58:53 -0800 David Schleef * gst/mxf/mxfmetadata.c: mxfdemux: Ignore missing metadata descriptors 2013-03-14 12:09:49 +0100 Wim Taymans * gst/hls/gsthlsdemux.c: hlsdemux: don't stop tasks in paused A non-live element is supposed to continue streaming in the paused state so don't stop the tasks when going to paused. We also always want to start the update task after we prerolled enough data, not only in the playing state. 2013-03-14 12:08:35 +0100 Wim Taymans * gst/hls/gsthlsdemux.c: hlsdemux: add more debug 2013-03-13 12:50:44 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Add support for different EGLImage orientations 2013-03-13 11:29:45 +0100 Sebastian Dröge * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Add support for different orientations of the EGLImage The content of the EGLImages can be at least in GStreamer orientation, meaning top line first in memory, or OpenGL orientation, meaning bottom line first in memory. 2013-03-13 11:09:36 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add RGBA to the caps again 2013-03-13 00:25:48 +0000 Tim-Philipp Müller * tests/check/elements/mpegtsmux.c: tests: fix up mpegtsmux unit test after collectpads change It was passing expected flow returns (which might be negative) in the buffer timestamp field, which was maybe not the best idea. 2013-03-11 21:55:28 -0600 Greg Rutz * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: fix improper video frame clear operation The current code is memsetting the GstVideoFrame.data address to 0s (which causes a segfault). This member is actually an array of data buffers (one for each plane). This fix iterates over each data plane to clear them all. https://bugzilla.gnome.org/show_bug.cgi?id=695655 2013-03-12 19:47:51 -0400 Olivier Crête * configure.ac: * ext/Makefile.am: * ext/srtp/.gitignore: * ext/srtp/Makefile.am: * ext/srtp/gstsrtp.c: * ext/srtp/gstsrtp.h: * ext/srtp/gstsrtpdec.c: * ext/srtp/gstsrtpdec.h: * ext/srtp/gstsrtpenc.c: * ext/srtp/gstsrtpenc.h: srtp: Add SRTP plugin based on libsrtp In large part the work of Gabriel Millaire 2013-03-12 19:36:12 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Make sure the buffer is released to the pool if it's the last used one 2013-03-10 22:06:31 +0100 Josep Torra * sys/applemedia/miovideosrc.c: applemedia: suppress warnings for deprecated glib API 2013-03-10 21:21:17 +0100 Josep Torra * sys/shm/gstshmsink.c: shmsink: Use correct print format specifiers to fix compiler warnings 2013-03-09 01:06:31 +0000 Tim-Philipp Müller * Android.mk: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-dtmf.xml: * gst-plugins-bad.spec.in: * gst/dtmf/Makefile.am: * gst/dtmf/gstdtmf.c: * gst/dtmf/gstdtmfcommon.h: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dtmf.c: Remove DTMF plugin, moved to -good https://bugzilla.gnome.org/show_bug.cgi?id=687416 2013-03-09 00:17:45 +0000 Tim-Philipp Müller * configure.ac: * sys/fbdev/Makefile.am: * sys/fbdev/gstfbdevsink.c: * sys/fbdev/gstfbdevsink.h: fbdev: port fbdevsink to 1.0 2013-03-07 11:58:25 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: There are only two GLSL programs, not three 2013-03-07 11:50:00 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: gst_buffer_pool_config_get_allocator() does *not* return a new reference to the allocator Different to gst_query_get_n_allocation_params() which does 2013-03-07 00:01:34 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From ae05558 to 04c7a1e 2013-03-06 17:53:18 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix allocation of RGBA textures 2013-03-06 10:53:59 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Make sure to set the NO_SHARE flag on the EGLImage memories See https://bugzilla.gnome.org/show_bug.cgi?id=695203 2013-03-05 12:47:07 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Always use an RGBA configuration 2013-02-27 13:15:54 +0100 Sebastian Dröge * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: pkg-config: Add egl library to the generic pkg-config file 2013-02-25 13:43:28 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Properly negotiate an allocator 2013-02-25 13:31:00 +0100 Sebastian Dröge * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Rename gst_egl_image_memory_can_map() to is_mappable() 2013-02-25 13:25:58 +0100 Sebastian Dröge * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Remove buffer pool option This should be done differently via the allocators in the allocation query. 2013-02-22 13:07:07 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: egl: Mark memory as not mappable if it isn't 2013-02-22 12:48:30 +0100 Sebastian Dröge * gst-libs/gst/egl/egl.c: egl: Implement sharing of memory 2013-02-22 11:23:16 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Store a reference to the last_buffer if using EGLImages 2013-02-22 10:58:19 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix compiler warning on RPi 2013-02-21 17:43:49 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * ext/eglgles/video_platform_wrapper.c: * ext/eglgles/video_platform_wrapper.h: eglglessink: Port to new EGL library 2013-02-21 14:40:02 +0100 Sebastian Dröge * configure.ac: * ext/eglgles/Makefile.am: egl: Move configure checks around and re-use for eglglessink plugin 2013-02-21 13:39:28 +0100 Sebastian Dröge * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/egl/Makefile.am: * gst-libs/gst/egl/egl.c: * gst-libs/gst/egl/egl.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-egl-uninstalled.pc.in: * pkgconfig/gstreamer-egl.pc.in: egl: Add infrastructure for EGLImage handling 2013-03-03 12:30:44 +0100 Sebastian Dröge * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.h: * sys/opensles/openslessrc.h: opensles: Only include 2013-03-03 12:30:32 +0100 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/pesparse.c: mpegtsdemux: Fix various compiler warnings 2013-03-03 12:30:21 +0100 Sebastian Dröge * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: Use correct type specifiers for format strings to fix compiler warnings 2013-03-03 12:29:42 +0100 Sebastian Dröge * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: Use correct type specifiers for format strings to fix compiler warnings 2013-03-03 12:29:24 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix GST_ERROR_OBJECT() parameters 2013-03-03 10:54:10 +0100 Sebastian Dröge * gst/freeverb/gstfreeverb.c: freeverb: Fix compiler warning caused by wrong format specifier 2013-03-01 15:58:40 -0500 Olivier Crête * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/shm.c: tests: Add unit tests for shmsink/shmsrc 2013-03-01 00:10:46 +0000 Tim-Philipp Müller * configure.ac: * ext/opencv/Makefile.am: * ext/opencv/gsthanddetect.c: opencv: use pkgdatadir locally to construct path for custom haar cascades https://bugzilla.gnome.org/show_bug.cgi?id=685655 2013-01-30 14:37:18 +0200 Sreerenj Balachandran * configure.ac: * ext/opencv/Makefile.am: * ext/opencv/gsthanddetect.c: * ext/opencv/gsthanddetect.h: * ext/opencv/gstopencv.c: * tests/examples/opencv/Makefile.am: * tests/examples/opencv/gsthanddetect_test.c: opencv: port handdetect element to 1.0 and add to build https://bugzilla.gnome.org/show_bug.cgi?id=685655 2013-01-27 19:05:27 +0200 Andol Li * ext/opencv/fist.xml: * ext/opencv/gsthanddetect.c: * ext/opencv/gsthanddetect.h: * ext/opencv/palm.xml: * tests/examples/opencv/gsthanddetect_test.c: opencv: add handdetect plugin, initial implementation The handdetect plugin is for detecting hand gestures using opencv. It was created in the course of the Google Summer of Code. https://bugzilla.gnome.org/show_bug.cgi?id=685655 2012-09-26 16:00:39 -0400 Olivier Crête * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: * sys/shm/gstshmsrc.c: * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shmsink: Add custom allocator to allow for zero-copy shared memory use 2013-02-28 18:13:44 -0500 Olivier Crête * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: shm: Don't leak socket path 2013-02-28 20:22:50 +0000 Tim-Philipp Müller * .gitignore: examples: ignore new test-uvch264 binary 2013-02-28 20:11:38 +0000 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/camerabin.c: tests: camerabin: report element creation failures better and fix up LIBS 2013-02-28 20:09:29 +0000 Tim-Philipp Müller * tests/check/elements/mxfmux.c: * tests/check/pipelines/mxf.c: tests: update some element names for 1.0 2013-02-28 20:02:16 +0000 Tim-Philipp Müller * common: * configure.ac: * tests/check/Makefile.am: tests: find uninstalled gst-libav plugins for unit tests 2013-02-28 18:54:15 +0000 Tim-Philipp Müller * sys/decklink/Makefile.am: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: decklinksink: port to 1.0 Compiles, not tested yet. 2013-02-28 18:53:54 +0000 Tim-Philipp Müller * sys/decklink/gstdecklinksrc.cpp: decklinksrc: add layout=interleaved to audio caps 2012-11-08 13:22:41 -0800 Blake Tregre * sys/shm/shmpipe.c: shm: use O_CLOEXEC where appropriate in shmpipe https://bugzilla.gnome.org/show_bug.cgi?id=684339 2013-02-28 16:55:05 +0000 Vincent Penquerc'h * gst/rawparse/gstrawparse.c: rawparse: fix caps leak 2013-02-28 13:25:06 +0100 Jonas Holmberg * tests/check/elements/dtmf.c: tests: use relative include for out-of-tree builds in dtmf test 2013-02-28 12:04:50 +0100 Sebastian Dröge * ext/eglgles/video_platform_wrapper.c: eglglessink: gst_video_sink_center_rect() takes the structs itself instead of pointers as first parameters 2013-02-28 11:27:44 +0100 Sebastian Dröge * ext/eglgles/video_platform_wrapper.c: eglglessink: Fix aspect-ratio issues caused by scaling on RPi 2013-02-27 21:05:38 -0500 Olivier Crête * sys/shm/gstshmsink.c: * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shmsink: Error out if memory area is smaller than buffer 2013-02-27 20:57:56 -0500 Olivier Crête * sys/shm/shmalloc.c: shm: Make sure to not allocate blocks larger than the shared mem area Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681359 2013-02-27 18:56:50 -0500 Olivier Crête * tests/check/elements/dtmf.c: tests: Add tests for dtmfsrc 2013-02-27 23:27:20 +0000 Tim-Philipp Müller * sys/decklink/Makefile.am: * sys/decklink/capture.cpp: * sys/decklink/capture.h: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklinksrc: port to 1.0 Compiles, not tested yet. A great number of superfluous custom pad functions may have been harmed in the making of this port. 2013-02-27 16:15:27 -0500 Olivier Crête * tests/check/elements/dtmf.c: tests: Fix ref leak in dtmf test 2013-02-27 13:14:15 +0100 Sebastian Dröge * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-bad.pc.in: pkg-config: Make the generic pkg-config file more useful 2013-02-23 09:11:53 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfcdec: Use new GST_MEMORY_FLAG_CONTIGUOUS instead of requiring a specific memory type 2013-02-19 13:00:01 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: add all supported video formats to template caps We now use gst_video_overlay_composition_blend(), so can support all video formats supported by that, not just I420. 2013-02-19 11:24:55 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: proxy the allocation query Pass allocation query downstream. 2013-02-19 11:14:11 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: don't forward CAPS event from subtitle pad May results in not-negotiated flow errors otherwise. 2013-02-16 02:44:19 +0100 Ole André Vadla Ravnås * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: * sys/applemedia/bufferfactory.h: * sys/applemedia/bufferfactory.m: * sys/applemedia/celapi.c: * sys/applemedia/celapi.h: * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: * sys/applemedia/cmapi.c: * sys/applemedia/cmapi.h: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/coremediactx.c: * sys/applemedia/coremediactx.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/cvapi.c: * sys/applemedia/cvapi.h: * sys/applemedia/dynapi-internal.h: * sys/applemedia/dynapi.c: * sys/applemedia/dynapi.h: * sys/applemedia/mioapi.c: * sys/applemedia/mioapi.h: * sys/applemedia/miovideodevice.c: * sys/applemedia/miovideodevice.h: * sys/applemedia/miovideosrc.c: * sys/applemedia/miovideosrc.h: * sys/applemedia/mtapi.c: * sys/applemedia/mtapi.h: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.h: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtapi.c: * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264decbin.h: * sys/applemedia/vth264encbin.c: * sys/applemedia/vth264encbin.h: * sys/applemedia/vtutil.c: * sys/applemedia/vtutil.h: applemedia: update contact information 2013-02-16 02:38:36 +0100 Ole André Vadla Ravnås * sys/applemedia/coremediabuffer.h: applemedia: fix gst_buffer_get_core_media_meta macro 2013-02-16 02:37:11 +0100 Ole André Vadla Ravnås * sys/applemedia/Makefile.am: * sys/applemedia/plugin.m: * sys/applemedia/vtenc.c: applemedia: port vtenc to 1.0 2013-02-16 02:31:28 +0100 Ole André Vadla Ravnås * sys/applemedia/vtdec.c: applemedia: replace usage of deprecated gst_pad_set_caps() in vtdec 2013-02-16 02:26:51 +0100 Ole André Vadla Ravnås * sys/applemedia/vtapi.c: * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: port vtapi to run on OS X 10.8 2013-02-15 08:20:59 +0100 Stefan Sauer * gst/freeverb/gstfreeverb.c: freeverb: remove channel-mask from caps The channel-mask is only needed for channels>2 which we don't do. 2013-02-14 10:43:42 +0000 Tim-Philipp Müller * tests/check/elements/mpegtsmux.c: tests: fix h264 caps in mpegtsmux test Needs to be stream-format=byte-stream, not format=byte-stream. 2013-02-14 10:40:36 +0000 Tim-Philipp Müller * tests/check/elements/faad.c: tests: fix faad unit test for gst_caps_is_subset() fix in core Need to specify the stream-format. 2013-02-14 09:40:08 +0000 Tim-Philipp Müller * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: Revert "mpeg4videoparse: set 0 duration when vop_coded is 0" This reverts commit d3219a261a5a7b7340b63c80010009a73b032759. vop_coded 0 means that the previous frame should be repeated, so it should have valid duration after all. https://bugzilla.gnome.org/show_bug.cgi?id=683169 2013-02-14 09:03:28 +0000 Tim-Philipp Müller * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/insertbin/gstinsertbin.h: insertbin: mark as unstable API 2013-02-14 09:02:53 +0000 Tim-Philipp Müller * gst-libs/gst/insertbin/gstinsertbin.c: insertbin: fix up gtk-doc chunk and add since markers 2013-02-13 15:00:09 +0000 Tim-Philipp Müller * tests/check/elements/uvch264demux.c: tests: port uvch264 test to 1.0 Fixes 'make check' build. 2013-02-13 15:20:39 +0100 Sebastian Dröge * ext/eglgles/video_platform_wrapper.c: eglglessink: Close the dispman display on RPi after usage 2013-02-13 15:09:35 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: For RPi, initialize bcm_host in plugin_init() 2013-02-13 15:06:48 +0100 Sebastian Dröge * configure.ac: eglglessink: Also check for all the required libraries and headers for RPi 2013-02-13 12:51:58 +0100 Sebastian Dröge * tests/check/elements/h263parse.c: * tests/check/elements/mpeg4videoparse.c: * tests/check/elements/mpegvideoparse.c: videoparsers: Use complete and valid caps in the tests 2013-02-12 18:36:10 +0100 Julian Scheel * configure.ac: * ext/eglgles/gsteglglessink.c: * ext/eglgles/video_platform_wrapper.c: eglglessink: Add bcm/Raspberry Pi support. This adds a video platform backend for the dispmanx display manager used by broadcom and the Raspberry Pi. Signed-off-by: Julian Scheel 2013-02-12 18:11:34 -0500 Olivier Crête * gst/videoparsers/gstpngparse.c: pngparse: Declare the width/height outside the loop Also initialize them to make gcc happy 2013-01-28 22:42:44 -0500 Olivier Crête * gst/videoparsers/Makefile.am: * gst/videoparsers/gstpngparse.c: * gst/videoparsers/gstpngparse.h: * gst/videoparsers/plugin.c: videoparsers: Add png file parser https://bugzilla.gnome.org/show_bug.cgi?id=690639 2013-02-11 16:35:48 -0800 David Schleef * configure.ac: * gst/videoparsers/gstmpegvideoparse.c: Unrevert: mpegvideoparse: set timestamp based on pic offset API is now in baseparse in gstreamer. Timestamps in MPEG-TS streams are based on the last timestamp before the start code of the picture. GstBaseParse sets the timestamp based on the beginning of the sequence header, if one exists before the picture. This fixes the case where the timestamp occurs in the MPEG-TS stream between the seq header and picture start code. 2013-02-07 15:42:54 -0800 David Schleef * gst/yadif/gstyadif.c: * gst/yadif/gstyadif.h: yadif: Add mode property Copy mode from deinterlace element. Isn't actually implemented in yadif, every frame is deinterlaced, so effectively mode=1. 2013-02-12 11:47:50 -0800 David Schleef * gst/yadif/vf_yadif.c: * gst/yadif/yadif.c: yadif: Fix non-x86_64 builds 2013-02-12 11:24:44 -0800 David Schleef * gst/mpegdemux/gstmpegdemux.c: mpegdemux: add parsed=false to mpeg2 caps 2013-02-12 10:39:44 +0000 Tim-Philipp Müller * gst-libs/gst/glib-compat-private.h: glib-compat-private.h: remove old GStaticRecMutex stuff Breaks the build with newer GLibs ("unknown type GStaticRecMutex") and is not needed any more. 2013-02-12 09:38:35 +0000 Tim-Philipp Müller * configure.ac: * gst/videoparsers/gstmpegvideoparse.c: Revert "mpegvideoparse: set timestamp based on pic offset" This reverts commit 63718da919b6a3daa04a66da1be4db54e0778898. The required baseparse API addition has not been pushed yet, which breaks the build. 2013-02-11 17:58:31 -0800 David Schleef * gst-libs/gst/codecparsers/gstmpegvideoparser.c: mpegvideoparser: increase min size for picture coding ext This could use additional work. The parsing code overruns the end of buffers during normal operation, triggering GST_WARNINGs. 2013-02-11 17:39:24 -0800 David Schleef * sys/mfc/gstmfc.c: * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: quiet debugging when mfc device doesn't exist Avoid registering the element if the mfc device doesn't work, but allow plugin loading to succeed. 2013-02-11 16:35:48 -0800 David Schleef * configure.ac: * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: set timestamp based on pic offset Timestamps in MPEG-TS streams are based on the last timestamp before the start code of the picture. GstBaseParse sets the timestamp based on the beginning of the sequence header, if one exists before the picture. This fixes the case where the timestamp occurs in the MPEG-TS stream between the seq header and picture start code. 2013-02-11 23:46:27 +0000 Tim-Philipp Müller * gst/yadif/Makefile.am: yadif: fix distcheck 2013-02-11 23:29:59 +0000 Tim-Philipp Müller * LICENSE_readme: * Makefile.am: * REQUIREMENTS: * configure.ac: * ext/Makefile.am: * ext/swfdec/Makefile.am: * ext/swfdec/gstswfdec.c: * ext/swfdec/gstswfdec.h: swfdec: remove The swfdec project is dead, and this plugin was never really useful because of the way swf works. Remove it before someone accidentally ports it. 2013-02-11 22:50:15 +0000 Tim-Philipp Müller * Makefile.am: * ext/Makefile.am: * ext/cog/.gitignore: * ext/cog/gstcogorc.orc: * gst-plugins-bad.spec.in: * tests/check/Makefile.am: * tests/icles/.gitignore: Add cog to cruft list and remove some more leftover files 2013-02-11 22:40:35 +0000 Tim-Philipp Müller * gst/yadif/Makefile.am: yadif: fix build in uninstalled setup 2013-02-03 14:32:27 +0100 Sjoerd Simons * tests/examples/uvch264/window.glade: uvch264 test: Use string instead of fourcc in glade caps 2013-02-03 14:31:50 +0100 Sjoerd Simons * sys/uvch264/gstuvch264_src.c: uvch264: Remove custom renegotiate event 2013-02-03 14:31:13 +0100 Sjoerd Simons * sys/uvch264/gstuvch264_src.c: uvch264: Add image/jpg to vfsrc and vidsrc caps 2013-02-03 14:30:36 +0100 Sjoerd Simons * sys/uvch264/gstuvch264_mjpgdemux.c: uvch264: Fix NV21 vs NV12 typo 2013-02-02 14:16:40 +0100 Sjoerd Simons * sys/uvch264/gstuvch264_src.c: uvch264: Pass through the filter on the caps query 2013-01-18 23:23:56 +0100 Sjoerd Simons * sys/uvch264/gstuvch264.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: * tests/check/elements/uvch264demux.c: * tests/examples/uvch264/test-uvch264.c: * tests/examples/uvch264/window.glade: uvch264: Remove the _ from the element names Rename uvch264_src to uvch264src and uvch264_mjpgdemux to uvch264mjpgdemux 2013-01-18 23:16:31 +0100 Sjoerd Simons * configure.ac: configure: Mark uvch264 as ported 2013-01-18 23:14:27 +0100 Sjoerd Simons * tests/examples/uvch264/Makefile.am: * tests/examples/uvch264/test-uvch264.c: * tests/examples/uvch264/window.glade: uvch264: Port test to gstreamer 1.0 2013-01-18 22:49:19 +0100 Sjoerd Simons * sys/uvch264/Makefile.am: * sys/uvch264/gstuvch264.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: uvch264src: Port to gstreamer 1.0 2012-05-03 20:36:27 -0400 Youness Alaoui * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: basecamerabinsrc: Add auto-start property to basecamerabin 2013-02-11 12:51:04 -0800 David Schleef * configure.ac: * tests/check/Makefile.am: * tests/check/elements/logoinsert.c: cog: remove last remnants 2013-02-07 15:09:51 -0800 David Schleef * configure.ac: * gst/yadif/Makefile.am: * gst/yadif/gstyadif.c: * gst/yadif/gstyadif.h: * gst/yadif/vf_yadif.c: * gst/yadif/yadif.c: * gst/yadif/yadif_template.c: yadif: Add YADIF deinterlacing filter Code copied from Libav, commit 26e4f0c70. Will eventually be moved to -ugly because underlying code is GPL. 2013-02-07 14:33:24 -0800 David Schleef * gst/fieldanalysis/gstfieldanalysis.c: fieldanalysis: Add Y42B and Y444 formats 2013-02-07 11:15:01 -0800 David Schleef * tools/gst-app-maker: * tools/gst-project-maker: gst-app-maker/gst-element-maker: 1.0 updates 2013-02-11 12:25:05 -0800 David Schleef * configure.ac: * ext/Makefile.am: * ext/cog/Makefile.am: * ext/cog/cog.h: * ext/cog/cogframe.c: * ext/cog/cogframe.h: * ext/cog/cogtables.c: * ext/cog/cogutils.h: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/generate_tables.c: * ext/cog/gstcms.c: * ext/cog/gstcms.h: * ext/cog/gstcog.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * ext/cog/gstcogscale.c: * ext/cog/gstcogutils.c: * ext/cog/gstcogutils.h: cog: remove cog plugin Everything has been merged into other elements. 2013-02-11 20:24:14 +0000 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: fix taglist leak Don't leak demuxer tag list. 2013-02-11 20:17:58 +0000 Tim-Philipp Müller * tests/check/elements/mxfdemux.c: tests: fix mxfdemux pull unit test hanging forever Our test source pad needs to answer SCHEDULING queries properly for mxfdemux to activate in pull mode. https://bugzilla.gnome.org/show_bug.cgi?id=691843 2013-02-11 19:53:39 +0000 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: fix push mode unit test failure In the sink event handler we end up sending multiple EOS events per pad. Don't return FALSE when sending the second EOS on an already-EOS pad fails. Not sure if there was a reason for sending a second EOS, so leaving the code in there for now, but assume all went fine if there are source pads, which is slightly less wrong than before. This function needs work. 2013-02-11 12:34:47 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix compilation of dtmf test in uninstalled setup 2013-02-11 12:34:24 +0000 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: actually log generic dataprotocol stuff to gdp category 2013-02-09 20:22:09 +0000 Tim-Philipp Müller * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintersurface.c: * gst/inter/gstintersurface.h: * gst/inter/gstintertest.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: inter: don't use deprecated GLib threading API 2013-02-09 19:53:51 +0000 Tim-Philipp Müller * gst/liveadder/liveadder.c: * gst/liveadder/liveadder.h: liveadder: don't use deprecated GLib threading API 2013-02-09 19:49:08 +0000 Tim-Philipp Müller * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: shm: don't use deprecated threading API 2013-02-11 11:06:32 +0100 Wim Taymans * ext/opus/gstopusdec.c: opusdec: clear the state of the decoder Set the channels and rate back to their default values in _stop because they are used to renegotiate when needed. See https://bugzilla.gnome.org/show_bug.cgi?id=692950 2013-02-07 11:52:23 +0100 Marc Leeman * ext/rsvg/gstrsvgoverlay.c: * ext/rsvg/gstrsvgoverlay.h: rsvgoverlay: deprecated GStaticMutex -> GMutex Element needs porting though. https://bugzilla.gnome.org/show_bug.cgi?id=693322 2013-02-09 18:46:48 +0000 Tim-Philipp Müller * sys/mfc/fimc/fimc.c: mfc: fix compilation with newer GLib versions that don't include pthread.h any more from public headers. We could just fix this by including pthread.h ourselves, but we may just as well use atomic ops for this and simplify the code a little. https://bugzilla.gnome.org/show_bug.cgi?id=693322 2013-02-07 11:54:38 +0100 Marc Leeman * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: deprecated GStaticRWLock -> GRWLock https://bugzilla.gnome.org/show_bug.cgi?id=693322 2013-02-07 11:54:06 +0100 Marc Leeman * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstchromahold.h: chromahold: deprecated GStaticMutex -> GMutex https://bugzilla.gnome.org/show_bug.cgi?id=693322 2013-02-07 10:52:57 -0800 David Schleef * tools/gst-app-maker: gst-app-maker: convert to 1.0 2013-02-08 00:06:16 +1100 Tim 'mithro' Ansell * gst/gdp/gstgdppay.c: gdppay: fix buffer leak when new caps are same as old caps The leak occurs when you got a message with identical caps to the ones you already had. https://bugzilla.gnome.org/show_bug.cgi?id=693324 2012-10-02 11:02:32 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: add profile enums. Add all useful profiles from AVC, MVC and SVC specifications. https://bugzilla.gnome.org/show_bug.cgi?id=693140 Signed-off-by: Gwenole Beauchesne 2013-02-07 22:26:15 +1100 Jan Schmidt * gst/dvdspu/gstdvdspu-render.c: dvdspu: Fix the rendering of PGS windows with left != 0 When rendering a PGS window area where the left edge is not at pixel 0, the chroma was being rendered in the wrong place since commit 4dc648d3430b67592cf1413ccef415f70889d71e 2013-02-07 11:31:12 +0000 Tim Ansell * gst/inter/gstintertest.c: inter: fix leaks in test https://bugzilla.gnome.org/show_bug.cgi?id=693300 2013-02-07 08:41:25 +0100 Stefan Sauer * configure.ac: * gst/freeverb/Makefile.am: * gst/freeverb/gstfreeverb.c: * gst/freeverb/gstfreeverb.h: freeverb: port to 1.0 2013-01-09 13:31:47 +0100 Stefan Sauer * gst/audiovisualizers/README: audiovisualizers: add comments for monoscope porting 2013-02-06 15:48:06 -0800 David Schleef * gst/interlace/gstinterlace.c: interlace: fix negotiation for true interlaced modes 2013-02-06 12:35:36 -0800 David Schleef * tools/element-templates/basetransform: * tools/element-templates/gobject: * tools/element-templates/sinkpad-simple: * tools/element-templates/srcpad-simple: * tools/gst-element-maker: element-maker: Update somewhat for 1.0 Only converted basetransform for the moment. It's probably easier to write templates from scratch from the documentation. 2013-02-05 11:56:46 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpeg2: add helpers to convert quantization matrices. Add utility functions to convert quantization matrices from zigzag scan order (as encoded in the bitstream) into raster scan order. Also provide another function to reverse the operation. https://bugzilla.gnome.org/show_bug.cgi?id=693000 Signed-off-by: Gwenole Beauchesne 2013-01-31 16:13:22 +0800 Cong Zhong * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpeg2: store quantization matrices in zigzag scan order. Quantizer matrices are encoded in zigzag scan order in the bitstream, but they are stored in raster scan order when they are parsed. However, default matrices were also prepared in zigzag scan order, hence the mismatch. i.e. the matrices were presented either in raster scan order if they are explicitly present in the bitstream, or they were presented in zigzag scan order if the default definitions were to be used instead. One way to solve this problem is to always expose the quantization matrices in zigzag scan order, since this is the role of the parser to not build up stories from the source bitstream and just present what is in there. Utility functions will be provided to convert quantization matrices in either scan order. https://bugzilla.gnome.org/show_bug.cgi?id=693000 Signed-off-by: Cong Zhong Signed-off-by: Gwenole Beauchesne 2013-02-05 23:07:12 +0100 Josep Torra * gst/mpegtsdemux/tsdemux.c: tsdemux: expose VC1 streams with missing descriptor. Fixes playback of VC1 streams when the descriptor is missing. 2013-02-05 17:34:28 +0100 Wim Taymans * sys/dvb/gstdvbsrc.c: dvbsrc: handle EINTR from poll Fixes https://bugzilla.gnome.org/show_bug.cgi?id=693212 2010-12-27 23:21:10 +0100 Robert Swain * gst/interlace/gstinterlace.c: interlace: Add support for more telecine patterns 2011-01-10 10:36:43 +0100 Robert Swain * gst/interlace/gstinterlace.c: interlace: Add more verbose hints about field patterns 2013-02-04 18:07:17 -0800 David Schleef * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add descriptors for SMPTE 302m audio 2013-02-02 18:44:11 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: separate fields for distinct functional uses of codec_data field Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692789 2013-01-31 12:30:49 +0100 Wim Taymans * ext/opus/gstrtpopuspay.c: opuspay: fix timestamps Copy timestamps to payloaded buffer. Avoid input buffer memory leak. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=692929 2013-01-30 09:33:49 +0100 Benjamin Gaignard * autogen.sh: autogen.sh: allow calling from out-of-tree Signed-off-by: Benjamin Gaignard https://bugzilla.gnome.org/show_bug.cgi?id=692859 2013-01-28 20:42:49 +0100 Stefan Sauer * common: Automatic update of common submodule From a942293 to 2de221c 2013-01-28 14:12:56 +0000 Tim-Philipp Müller * ext/opus/gstopusenc.c: opusenc: fix crash when setting "cbr" property when encoder is not running yet https://bugzilla.gnome.org/show_bug.cgi?id=692698 2013-01-26 22:58:29 +0000 Tim-Philipp Müller * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: fix compiler warning gstrtpdtmfsrc.c: In function 'gst_dtmf_src_prepare_message.isra.1': gstrtpdtmfsrc.c:669:3: error: 's' may be used uninitialized in this function 2013-01-25 21:06:05 -0500 Olivier Crête * gst/dtmf/gstrtpdtmfdepay.c: rtpdtmfdepay: Fix missing work in doc 2013-01-24 21:00:08 -0500 Olivier Crête * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dtmf.c: tests: Add test for rtpdtmfdepay and rtpdtmfsrc 2013-01-25 20:39:33 -0500 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Post the messages after the clock wait This way, the messages will be closer in time to when the packets are sent out 2013-01-25 20:37:53 -0500 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Only set the duration when starting to send The duration depends on the clock rate, which could change due to renegotiation 2013-01-25 20:37:09 -0500 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: remove "ssrc" from caps ssrc is uint and we don't have a uint range type 2013-01-25 15:44:39 +0000 Tim-Philipp Müller * configure.ac: build: fix insertbin build in uninstalled setup Make sure pkg-config in gst-libs/gst/insertbin/ can find the uninstalled core/base properly. Fixes build of insertbin in uninstalled setup if there arn't any installed gir files to fall back to. 2013-01-25 12:24:55 +0000 Tim-Philipp Müller * gst-libs/gst/insertbin/gstinsertbin.c: * tests/check/elements/autoconvert.c: insertbin, tests: fix printf format compiler warnings 2013-01-24 18:14:28 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix bitplanes decoding (DIFF6 or NORM6 residual bytes). Fix parsing of residual bytes. This is a two-step process. First, remaining colums of full vertical resolution () need to be processed. Next, remaining bytes in the first row can be processed, while taking into account the fact that we may have filled in the first columns already. So, this is not full horizontal resolution. The following figure helps in understanding the expected order of operations, for a 8x5 MBs bitplane. 5 5 6 6 6 6 6 6 5 5 1 1 1 2 2 2 5 5 1 1 1 2 2 2 5 5 3 3 3 4 4 4 5 5 3 3 3 4 4 4 So, after tiles 1 to 4 are decoded, vertical tile 5 needs to be processed (2x5 MBs) and then the horizontal tile 6 (6x1 MBs). https://bugzilla.gnome.org/show_bug.cgi?id=692461 Signed-off-by: Gwenole Beauchesne 2013-01-24 17:28:22 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix bitplanes decoding (DIFF6 or NORM6). Fix decoding of DIFF6 or NORM6 bitplanes with an odd number of lines (3x2 "horizontal" tiles). In this case, we have to skip the first line of macroblocks but number of bytes was used to do so, instead of the actual size. This fixes decoding for the video sample attached to: https://bugzilla.gnome.org/show_bug.cgi?id=668565 https://bugzilla.gnome.org/show_bug.cgi?id=692461 Signed-off-by: Gwenole Beauchesne 2012-03-15 14:12:21 -0400 Olivier Crête * .gitignore: * Android.mk: * configure.ac: * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/Makefile.am: * gst-libs/gst/insertbin/Makefile.am: * gst-libs/gst/insertbin/gstinsertbin.c: * gst-libs/gst/insertbin/gstinsertbin.h: * gst-plugins-bad.spec.in: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-insertbin-uninstalled.pc.in: * pkgconfig/gstreamer-insertbin.pc.in: * tests/check/Makefile.am: * tests/check/libs/.gitignore: * tests/check/libs/insertbin.c: insertbin: Add bin to dynamically insert elements in a running pipeline This element automatically links in any element added using it's action signals. These elements must have a single source pad and a single sink pad. 2013-01-23 14:47:58 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: vc1: add API to parse slice headers. Add gst_vc1_parse_slice_header() function to parse slice headers as described in 7.1.2. Slice layers are optional and allowed in advanced profile mode only. Picture header, if available (PIC_HEADER_FLAG), is parsed but not recorded because it shall be the same as that was previously parsed with gst_vc1_parse_frame_header(). This fixes SA00049.vc1 conformance test. https://bugzilla.gnome.org/show_bug.cgi?id=692388 Signed-off-by: Gwenole Beauchesne 2013-01-22 18:01:24 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix bitplanes decoding. Fix decoding of DIFF2 or NORM2 bitplanes with an odd number of macroblocks. In particular, account for the first bit that was already parsed so that to avoid a buffer overflow after all pairs are parsed. This fixes SA00040.vc1 conformance test. https://bugzilla.gnome.org/show_bug.cgi?id=692312 Signed-off-by: Gwenole Beauchesne 2013-01-22 19:31:02 +0100 Mark Nauwelaerts * configure.ac: configure.ac: disable MFC if some v4l2 PIX_FMT missing 2013-01-22 11:42:49 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: vc1: simplify GstVC1VopDquant structure. Rename dqsbedge to dqbedge. The intent is that we can only have a single boundary edge selector, depending on the value of dqprofile. So, dqbedge represents DQSBEDGE if dqprofile == GST_VC1_DQPROFILE_SINGLE_EDGE, or DQDBEDGE if dqprofile == GST_VC1_DQPROFILE_DOUBLE_EDGE. The former dqbedge field is marked as unused and can be removed on the next gst-plugins-bad version that allows ABI changes. https://bugzilla.gnome.org/show_bug.cgi?id=692272 Signed-off-by: Gwenole Beauchesne 2013-01-18 14:55:40 +0100 Patricia Muscalu * ext/curl/gstcurltlssink.c: curltlssink: set correct level of SSL for the transfer https://bugzilla.gnome.org/show_bug.cgi?id=692010 2013-01-22 10:48:39 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix VOPDQUANT parser for DQUANT == 2. Fix parsing of VOPDQUANT when DQUANT == 2. In particular, DQUANTFRM is not present in the bitstream in this case and it shall be derived to the default value of zero (7.1.1.31.1). https://bugzilla.gnome.org/show_bug.cgi?id=692271 Signed-off-by: Gwenole Beauchesne 2013-01-22 10:38:20 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix calculation of ALTPQUANT. Fix calculation of ALTPQUANT when DQUANT == 1. PQDIFF alters ALTPQUANT in any case. See 7.1.1.31.6. https://bugzilla.gnome.org/show_bug.cgi?id=692270 Signed-off-by: Gwenole Beauchesne 2013-01-22 10:11:34 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix parser for DQPROFILE in VOPDQUANT. Fix parse_vopdquant() to correctly parse DQPROFILE, which is 2 bits instead of a single bit. https://bugzilla.gnome.org/show_bug.cgi?id=692267 Signed-off-by: Gwenole Beauchesne 2013-01-06 18:54:52 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: add inferred value for slice_beta_offset_div2. The standard specifies that when slice_beta_offset_div2 is not present in the slice header, then the value of slice_beta_offset_div2 shall be inferred to be equal to 0. https://bugzilla.gnome.org/show_bug.cgi?id=692265 Signed-off-by: Gwenole Beauchesne 2013-01-17 19:02:48 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: * tests/check/elements/assrender.c: assrender: reenable unit tests and up rank to primary again 2013-01-18 16:14:03 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: use overlay composition to blit subtitles on video frames Re-uses existing blitting code and also means we can support a lot more video formats out of the box, hence avoid unnecessary pixel format or colour space conversions. https://bugzilla.gnome.org/show_bug.cgi?id=692012 2013-01-17 18:48:12 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: render overlay composition if supported downstream This allows rendering ASS subtitles on top of video when using hardware-accelerated video decoders based on e.g. VA-API or VDPAU. https://bugzilla.gnome.org/show_bug.cgi?id=678389 https://bugzilla.gnome.org/show_bug.cgi?id=692012 2013-01-21 10:35:49 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: add wait-text property This is the same property as in the pango element, to allow waiting for text on the text pad before rendering the video. https://bugzilla.gnome.org/show_bug.cgi?id=692012 2013-01-18 15:25:48 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: fix some subtitles being ignored https://bugzilla.gnome.org/show_bug.cgi?id=692012 2013-01-17 18:33:11 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: assrender: refactor code to avoid duplication https://bugzilla.gnome.org/show_bug.cgi?id=692012 2013-01-17 18:26:08 +0100 Arnaud Vrac * ext/assrender/gstassrender.c: assrender: proxy allocations on video pad Forward allocation queries on video sink pad instead of discarding them. This allows the upstream elements to use the allocation parameters or pools from the downstream elements like videosink. https://bugzilla.gnome.org/show_bug.cgi?id=692012 2013-01-20 17:43:13 +0000 Tim-Philipp Müller * sys/bluez/gstavdtpsink.c: bluez: clean up GValue handling a little Allocate GValues on the stack, and unset/free them properly, fixing a few leaks in the process. Also use gst_structure_take_value() where appropriate to avoid unnecessary list copies. 2013-01-20 17:17:27 +0000 Tim-Philipp Müller * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: bluez: update SBC caps for renamed fields mode -> channel-mode allocation -> allocation-method 2013-01-17 19:29:31 -0500 Olivier Crête * sys/shm/shmpipe.c: shm: Initialize shm_area_buf to invalid value 2013-01-07 13:32:06 +0100 Roland Elek * sys/shm/shmpipe.c: shm: apply shm area permissions to shmpipe control socket Apply shared memory area permissions to the control socket (more precisely, the path it is bound to) as well. https://bugzilla.gnome.org/show_bug.cgi?id=682775 2013-01-16 14:40:11 -0500 Youness Alaoui * sys/uvch264/gstuvch264_src.c: uvch264: Define LIBUSB_CLASS_VIDEO if using an old version of libusb 2013-01-16 14:48:46 -0500 Olivier Crête * sys/uvch264/gstuvch264_src.c: uvch264: Prevent temporary elements from going to playing 2013-01-16 14:42:38 -0500 Youness Alaoui * sys/uvch264/gstuvch264_src.c: uvch264: do not double-unref if transform_caps fails 2013-01-16 14:41:08 -0500 Youness Alaoui * sys/uvch264/gstuvch264_src.c: uvch264: Add a fakesink to the transform_caps Some version of basetransform will return the template caps if the src pad is not linked, so the capsfilter will return ANY. Linking it to fakesink allows us to return the right caps in the capsfilter and have them transformed by the colorspace converter. 2013-01-15 15:02:37 +0100 Martin Pitt * tests/check/Makefile.am: tests: use _1_0 variants for the various registry variables These override the variants without version suffix. Makes 'make check' work properly in environments that set the suffixed variant for 1.0, such as jhbuild. 2013-01-12 13:15:02 +0100 Mark Nauwelaerts * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: zero-initialize SPS VUI parameters ... so all 'present' flags indicate no presence of optional parts in case VUI parameters end up not being parsed. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681818 2013-01-15 15:05:54 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From a72faea to a942293 2013-01-12 18:10:35 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Add two latest plugins to spec file 2013-01-09 19:59:16 -0500 Olivier Crête * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/spandsp/Makefile.am: * ext/spandsp/gstdtmfdetect.c: * ext/spandsp/gstdtmfdetect.h: * ext/spandsp/gstspandsp.c: * gst/dtmf/Makefile.am: * gst/dtmf/gstdtmf.c: * gst/dtmf/tone_detect.c: * gst/dtmf/tone_detect.h: dtmf/spandsp: Move dtmfdetect to use libspandsp Remove our copy of the tone_detect.c file and use the original from libspandsp. Also move the element to the spandsp plugin. 2013-01-10 00:31:25 +0000 Tim-Philipp Müller * sys/bluez/a2dp-codecs.h: bluez: use GLib defines to check for byte order 2013-01-09 18:10:30 +0000 Tim-Philipp Müller * configure.ac: * sys/Makefile.am: * sys/bluez/Makefile.am: * sys/bluez/bluez-plugin.c: bluez: add new plugin to build system, but disable for now Disable until it has been tested and works. https://bugzilla.gnome.org/show_bug.cgi?id=690582 2013-01-09 18:02:11 +0000 Tim-Philipp Müller * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: make bluez elements compile with 1.0 Builds, but very likely doesn't work yet at all. Some things are still commented out. https://bugzilla.gnome.org/show_bug.cgi?id=690582 2012-10-09 20:35:45 +0900 Chan-yeol Park * sys/bluez/a2dp-codecs.h: bluez: avinfo: Replace definitions with a2dp-codecs.h's 2012-10-09 20:35:44 +0900 Chan-yeol Park * sys/bluez/a2dp-codecs.h: bluez: audio: Add check for vendor specific A2DP codec This patch adds checks(vendor ID, vendor specific codec ID) to make sure of vendor specific A2DP codec selection. 2012-09-14 21:40:10 +0530 Syam Sidhardhan * sys/bluez/gstavdtpsink.c: bluez: gstavdtpsink: Free the D-Bus error on reply failure If D-Bus error is set we should free it. 2012-08-21 11:49:24 -0400 Anderson Lizardo * sys/bluez/gstavdtpsink.h: bluez: Fix trivial coding style issues on pointer declarations and casting Avoid using C++ style pointer declarations like "char* ptr", as most BlueZ code uses "char *ptr". 2012-06-25 12:06:17 +0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: audio: Remove internal audio IPC With unix socket and ALSA removed there is no longer any use for the internal IPC. 2012-05-30 17:16:19 -0400 Anderson Lizardo * sys/bluez/gstavdtpsink.c: bluez: Remove compatibility check for DBUS_TYPE_UNIX_FD Since commit c89b589a586e97ad875fbdd1d41f03979157ebb0, D-Bus >= 1.4.0 is required. This version already contains Unix FD passing support, therefore code that checks for DBUS_TYPE_UNIX_FD definition is unnecessary. 2012-05-18 09:46:29 -0400 Anderson Lizardo * sys/bluez/gstavdtpsink.c: bluez: avdtp: Fix incorrect gchar buffer allocation The code was allocating an array of gchar pointers, where an array of gchar is expected. 2012-04-16 11:59:59 +0900 Chan-yeol Park * sys/bluez/gstavdtpsink.c: bluez: audio: Add SBC NULL check for GST AVDTP signaling Due to RF condition or headset malfunctioning, gst audio plug-in could not get SBC (mandatory codec) information. 2012-04-12 20:33:06 +0530 Syam Sidhardhan bluez: audio: Fix newline before EOF 2012-04-12 20:32:55 +0530 Syam Sidhardhan * sys/bluez/gstavdtpsink.c: bluez: gstavdtpsink: Fix D-Bus memory leak in audio 2011-11-17 13:29:06 -0400 Anderson Lizardo * sys/bluez/gstavdtpsink.c: bluez: AVDTP: Fix closing invalid FD on error In gst_avdtp_sink_start(), if bt_audio_service_open() failed, there was an attempt to close an invalid file descriptor (through bt_audio_service_close()). 2011-11-16 09:20:04 -0400 Anderson Lizardo * sys/bluez/gstavdtpsink.c: bluez: Fix return value check for bt_audio_service_open() Only negative values (namely -1) are errors for this function. 2011-11-16 09:19:49 -0400 Anderson Lizardo * sys/bluez/gstavdtpsink.c: bluez: AVDTP: Fix errno handling convention Variables which are assigned to the errno variable (usually called "err") should be negative, and "-err" should be used where a positive value is needed. 2011-08-26 11:18:54 -0700 Marcel Holtmann * sys/bluez/a2dp-codecs.h: bluez: audio: Update license for shared header files The header files with constants and structures for audio specific interaction with Pulseaudio are suppose to be under LGPL license. For some odd reason a2dp-codecs.h ended up being under GPL license which is against the intention of this being shared and re-used by non-GPL programs. Fix this now to avoid any future confusion. 2011-07-02 12:32:40 -0300 Lucas De Marchi * sys/bluez/gstavdtpsink.c: bluez: Fix common misspelled words Accounting of misspelled words, as detected by codespell: acording 2 ancilliary 1 appropiate 1 atribute 1 cant 1 comming 2 gracefull 1 lenght 1 mispelled 1 occured 1 occurences 1 ocurred 3 prefered 1 presense 1 reponse 1 seperate 1 succesful 1 successully 1 sucessfull 1 sucessfully 1 2011-05-09 15:26:07 +0200 Szymon Janc * sys/bluez/gstavdtpsink.c: bluez: Fix garbage return value in gst_avdtp_sink_audioservice_recv 2011-02-13 17:51:45 -0800 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.h: bluez: audio: Remove workaround for compiler warnings 2011-01-20 11:29:41 +0200 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Update a2dpsink to use new Acquire API 2011-01-19 10:04:49 +0200 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Fix use of deprecated glib on audio plugin 2010-05-06 17:14:14 +0300 Luiz Augusto von Dentz * sys/bluez/a2dp-codecs.h: * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: Add support for media transport in gstreamer plugin 2010-09-13 15:40:11 +0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Fix crash on gstreamer plugin if device doesn't support sbc 2010-05-19 16:59:30 +0200 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: bluez: Add pragma based workaround for GStreamer warnings 2010-05-19 16:10:26 +0200 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.h: bluez: Revert "Fix build issues with latest GStreamer updates" 2010-05-17 22:31:28 +0200 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.h: bluez: Fix build issues with latest GStreamer updates 2010-01-01 17:08:17 -0800 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: Update copyright information 2009-10-05 22:51:14 +0200 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Fix codec selection on gstream plugin. 2009-10-02 10:58:54 +0200 Johan Hedberg * sys/bluez/gsta2dpsink.c: bluez: Fix unnecessary NULL checks 2009-07-15 16:51:08 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Remove useless instruction. 2009-07-01 13:15:57 +0200 Filippo Giunchedi * sys/bluez/gsta2dpsink.c: bluez: Register the a2dp gst sink as marginal Avoid taking over as default gst sink by registering as GST_RANK_MARGINAL 2009-03-25 18:05:43 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Add specific codec types. Add specific codec types for a2dp sources and sinks so clients are able to differ between them. 2009-03-18 15:58:53 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Remove unnecessary memset. 2009-03-19 16:16:19 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Add lock flag for capabilities. lock flag permits the unix client to detect if there is someone holding the lock so it can prevent useless attempt of setting a new configuration. 2009-03-18 11:20:31 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Introduce BT_OPEN command to audio ipc. BT_OPEN make it possible to lock a given seid which is automacally release if the client disconnects from the unix socket. 2009-03-19 11:50:26 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Add source and destination fields to audio ipc messages. 2009-02-19 15:58:15 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Make use of g_io_channel_shutdown instead of deprecated g_io_channel_close. 2009-01-01 19:33:20 +0100 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: Update copyright information 2008-12-23 05:25:50 +0100 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.h: bluez: First attempt in fixing compiler warnings (still needs cleanup) 2008-12-20 21:42:49 +0200 Johan Hedberg * sys/bluez/gstavdtpsink.c: bluez: More coding style fixes 2008-12-20 21:04:44 +0200 Johan Hedberg * sys/bluez/gstavdtpsink.c: bluez: Coding style fixes 2008-12-20 18:27:30 +0200 Johan Hedberg * sys/bluez/gstavdtpsink.c: bluez: Fix length header values in messages 2008-12-16 17:09:57 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Fix gstreamer plugin to reflect the ipc changes. 2008-10-07 12:07:14 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Fix channel mode string from dual to dual-channel. 2008-10-07 11:55:58 -0300 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Fix channel mode string to joint-stereo. 2008-02-20 13:37:00 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Fix runtime warnings of gstreamer plugin. 2008-02-19 19:49:24 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: bluez: Update gstreamer plugin to use new sbc API. 2008-02-14 21:22:38 +0000 Luiz Augusto von Dentz * sys/bluez/gstavdtpsink.c: bluez: Make use of parameters selected in alsa plugin and fix auto selection. 2008-02-02 03:37:05 +0000 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: Update copyright information 2008-02-01 19:28:37 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Add bitpool property and others fixes for gstreamer plugin. 2008-01-30 17:30:27 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: Enable gstreamer plugin to use autoconnect flag. 2008-01-30 14:21:43 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: Fixes gstreamer caps and code cleanup. 2008-01-23 19:17:33 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Fix use of gstreamer plugin with rhythmbox and banshee and rtp timestamps. 2008-01-23 15:18:15 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: * sys/bluez/gstavdtpsink.c: * sys/bluez/gstavdtpsink.h: bluez: Rename a2dpsendersink to avdtpsink. 2008-01-23 13:23:01 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Bug fixes for gstreamer plugin. 2008-01-23 13:19:32 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Add mp3 support for gstreamer plugin. 2008-01-23 13:14:02 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Make a2dpsink to act like a bin and split the payloader. 2007-12-04 19:42:00 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Fix error messages. (thanks to fchevalier for the patch) 2007-12-03 22:41:29 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Handle new ipc messages properly and adapt the plugins. 2007-11-23 17:00:13 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Code cleanup. 2007-11-21 20:24:11 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Integrate new ipc API implementation. 2007-11-01 19:45:00 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Fix sbc negotiation and improves buffer handling by using GstAdapter. 2007-10-29 15:02:26 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Add bitpool capability. 2007-10-26 18:48:42 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Remove dependency of sbc library from a2dpsink element. 2007-10-25 21:07:50 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Fix buffer usage. 2007-10-24 21:40:35 +0000 Marcel Holtmann * sys/bluez/gsta2dpsink.c: bluez: Some more coding style fixes 2007-10-24 21:33:22 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Fix coding style. 2007-10-24 21:13:12 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Fix a2dpsink coding style problems and improve compatibility with some players. 2007-10-18 23:02:24 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Add rtp header. 2007-10-18 22:46:12 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: bluez: Fix coding style issues. 2007-10-18 21:50:00 +0000 Luiz Augusto von Dentz * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Fixes a2dpsink element. 2007-08-26 14:14:34 +0000 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Add possible capabilities and connect to audio server 2007-08-23 19:12:23 +0000 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Add SBC encoder and decoder skeletons for GStreamer 2007-08-22 21:50:59 +0000 Marcel Holtmann * sys/bluez/gsta2dpsink.c: * sys/bluez/gsta2dpsink.h: bluez: Add skeleton for an A2DP sink element 2013-01-07 10:37:53 +0000 Tim-Philipp Müller * ext/resindvd/Makefile.am: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: handle non-utf8 dvd disc titles better Maybe something based on the code in bug #688367 and the language encodings would work even better though (now it will try things based on the locale). https://bugzilla.gnome.org/show_bug.cgi?id=690097 2013-01-07 10:36:45 +0000 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/jasper/Makefile.am: * ext/jasper/gstjasper.c: * ext/jasper/gstjasperdec.c: * ext/jasper/gstjasperdec.h: * ext/jasper/gstjasperenc.c: * ext/jasper/gstjasperenc.h: * gst-plugins-bad.spec.in: jasper: remove jasper jpeg2000 plugin, replaced by openjpeg plugin libjasper isn't really maintained any longer, we probably don't want to port this. 2013-01-07 00:49:10 +0000 Tim-Philipp Müller * configure.ac: configure: allow compilation against opencv 2.4.3 as well 2012-12-06 11:55:45 -0500 Victor Gottardi * gst/hls/gsthlssink.c: hlssink: don't forward multifilesink messages to application These messages are usually only needed internally. https://bugzilla.gnome.org/show_bug.cgi?id=689822 2012-11-06 10:17:19 -0500 Victor Gottardi * gst/hls/gstm3u8playlist.c: hlssink: m3u8 add EXT-X-ALLOW-CACHE https://bugzilla.gnome.org/show_bug.cgi?id=689822 2012-12-05 10:06:38 -0500 Victor Gottardi * gst/hls/gstm3u8playlist.c: hlssink: round segment duration to nearest number of seconds E.g. for 1s period, duration can be 0.99s, rounds down to 0, results in invalid playlist https://bugzilla.gnome.org/show_bug.cgi?id=689822 2013-01-06 22:19:04 +0000 Tim-Philipp Müller * gst/hls/gstm3u8playlist.c: * gst/hls/gstm3u8playlist.h: hlssink: don't leak old playlist entries when using max-files Based on patch by: Victor Gottardi https://bugzilla.gnome.org/show_bug.cgi?id=689822 2013-01-05 18:56:26 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: * sys/mfc/fimc/fimc.h: * sys/mfc/gstmfcdec.c: mfc: Add support for RGB 2013-01-04 15:38:58 -0500 Olivier Crête * sys/shm/gstshmsink.c: shm: Actually get the permissions on get_property 2013-01-04 17:19:25 +0000 Tim-Philipp Müller * gst/inter/gstintersurface.c: inter: don't use deprecated GStaticMutex API 2013-01-03 17:28:49 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Don't return EGLImages that we just rendered from the buffer pool Mapping them will fail because they're still internally used. 2013-01-03 15:22:38 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/video_platform_wrapper.c: * ext/eglgles/video_platform_wrapper.h: eglglessink: Handle copying of GstMemory properly We have to use the default video meta mapping functions. 2013-01-03 12:09:15 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Set variables to NULL to prevent usage after free/unref 2013-01-03 12:08:39 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/video_platform_wrapper.c: eglglessink: Make sure to always use the correct GstMemory for buffers from our pool 2013-01-03 11:03:38 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Don't forget to call the platform specific EGLImage free function 2013-01-03 10:53:01 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: Fix leak of input/output buffer storage in the MFC decoder library 2013-01-03 10:40:34 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Make sure to wait for the right object to be dequeued 2013-01-03 10:10:57 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Fix typo 2013-01-02 17:23:51 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Only add crop metadata if required 2013-01-02 16:53:19 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: fimc: Do STREAMON/STREAMOFF only once and not once per buffer 2013-01-02 16:38:47 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: Require one more output buffer than returned by the driver 2013-01-02 16:10:20 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Remove packed YUV support This will not allow zero-copy because the same EGLImage would need to be used for two different textures with a different format. 2013-01-02 16:09:15 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Prefer NV12 over I420/YV12 2013-01-02 15:40:10 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: The first frame produces output in our case 2013-01-02 14:32:32 +0100 Sebastian Dröge * sys/mfc/gstmfc.c: * sys/mfc/gstmfcdec.c: * sys/mfc/mfc_decoder/mfc_decoder.c: * sys/mfc/mfc_decoder/mfc_decoder.h: mfc: Request input buffers explicitely 2013-01-02 14:27:53 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: Don't STREAMOFF if no STREAMON happened yet 2013-01-02 14:23:22 +0100 Sebastian Dröge * sys/mfc/gstmfc.c: mfc: Check if the MFC hardware exists before registering the element 2013-01-02 14:16:06 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: Check device capabilities before doing anything else 2013-01-02 12:33:42 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Include codec_data in the buffer with the next frame 2013-01-02 11:44:06 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Set format field of the instance struct 2013-01-02 11:00:34 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Implement support for crop metadata 2013-01-02 10:26:04 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Check if the hardware is available in GstVideoDecoder::open() 2013-01-01 11:56:16 +0000 Tim-Philipp Müller * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: mpegpsmux: use DTS in addition to PTS And refactor choose_best_stream() a little. videotestsrc pattern=ball ! x264enc ! mpegpsmux ! ... plays much nicer now. 2013-01-01 12:05:03 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Log in the performance category if we map/copy EGLImages to normal memory 2013-01-01 11:05:24 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Add support for h263 and MPEG1/2 2013-01-01 10:48:19 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Catch errors from glEGLImageTargetTexture2DOES() 2013-01-01 10:44:45 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Upload textures in GstBaseSink::prepare() already This gives more time for the texture to be uploaded as it happens before syncing to the running time. When the running time is reached only eglSwapBuffers() is necessary. 2012-12-31 19:45:54 +0000 Tim-Philipp Müller * gst/mpegpsmux/psmux.c: * gst/mpegpsmux/psmuxcommon.h: * gst/mpegpsmux/psmuxstream.c: mpegpsmux: use gstreamer debug logging system everywhere 2012-12-31 19:42:03 +0000 Tim-Philipp Müller * configure.ac: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux_aac.c: * gst/mpegpsmux/mpegpsmux_h264.c: * gst/mpegpsmux/psmux.c: * gst/mpegpsmux/psmuxstream.c: * gst/mpegpsmux/psmuxstream.h: mpegpsmux: port to 0.11 Naive port. Barely tested. 2012-12-31 12:42:31 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Don't reconfigure if we get compatible caps 2012-12-31 12:33:53 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Only create the MFC context in ::set_format() 2012-12-31 11:56:51 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Recreate fimc context if settings change 2012-12-31 11:02:48 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Some refactoring 2012-12-31 09:47:01 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Do zerocopy if we get EGLImage buffers 2012-12-30 16:45:31 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Some minor fixes 2012-12-26 13:30:23 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Fix double-unmap of the codec data 2012-12-26 13:27:50 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Pass codec_data to the codec if there's some 2012-12-26 13:18:09 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: * sys/mfc/fimc/fimc.h: * sys/mfc/gstmfcdec.c: mfc: Refactor fimc code a bit 2012-12-26 12:38:32 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: mfc: Downgrade an error to debug output 2012-12-26 11:51:46 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: mfc: Some fimc cleanup 2012-12-26 09:56:23 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Add profile/level and width/height constraints 2012-12-24 16:23:55 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: mfc: Don't leak buffers when setting new dest settings for a direct buffer 2012-12-24 16:02:45 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Add initial MPEG4 support 2012-12-24 15:44:54 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Add some more debug output 2012-12-24 15:34:49 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: * sys/mfc/mfc_decoder/mfc_decoder.c: * sys/mfc/mfc_decoder/mfc_decoder.h: mfc: Implement tracking of frames using the v4l2_buffer timestamp 2012-12-24 14:48:25 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Reset some more variables on ::reset() 2012-12-24 14:36:34 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Also add support for YV12 2012-12-24 13:41:08 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Add support for video meta 2012-12-24 13:39:36 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Implement negotiation to NV12 or I420 based on downstream caps 2012-12-24 12:31:09 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: mfc: Workaround for wrongly reported strides by FIMC 2012-12-24 12:18:23 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: * sys/mfc/mfc_decoder/mfc_decoder.c: * sys/mfc/mfc_decoder/mfc_decoder.h: mfc: Add proper support for MFC decoder strides 2012-12-24 12:10:24 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Try with I420 for now, it's easier to debug 2012-12-24 11:57:43 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Add some more debug output 2012-12-24 11:54:47 +0100 Sebastian Dröge * sys/mfc/fimc/fimc.c: mfc: Don't require stride to be set on src parameters 2012-12-24 11:49:42 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: * sys/mfc/mfc_decoder/mfc_decoder.h: mfc: The mfc decoder library is dual licensed too Apache License 2.0 and LGPL2+ 2012-12-23 12:25:06 +0100 Sebastian Dröge * sys/mfc/Makefile.am: * sys/mfc/fimc/fimc.c: * sys/mfc/fimc/fimc.h: * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Use CAMIF/FIMC for hardware color format conversion and de-tiling 2012-12-23 13:46:07 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: mfc: Only unref the outbuf if it doesn't belong to the frame 2012-12-23 12:04:48 +0100 Sebastian Dröge * sys/mfc/Makefile.am: * sys/mfc/gstmfc.c: * sys/mfc/gstmfcdec.c: mfc: Port to GStreamer 1.0 2012-12-23 11:47:50 +0100 Sebastian Dröge * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Add initial decoder element implementation This does not copy the output to any output buffers yet. Other than that should be basically functional already. 2012-12-23 10:23:16 +0100 Sebastian Dröge * configure.ac: * sys/Makefile.am: * sys/mfc/Makefile.am: * sys/mfc/gstmfc.c: * sys/mfc/gstmfcdec.c: * sys/mfc/gstmfcdec.h: mfc: Add plugin and decoder skeleton 2012-12-23 10:05:49 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: * sys/mfc/mfc_decoder/mfc_decoder.h: mfc: Make mfc_decoder library compile and fix some compiler warnings 2012-12-23 09:56:03 +0100 Sebastian Dröge * sys/mfc/mfc_decoder/mfc_decoder.c: * sys/mfc/mfc_decoder/mfc_decoder.h: mfc: Add mfc_decoder library from FXI 2012-12-31 11:38:23 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Downgrade a GST_ERROR to a GST_DEBUG 2012-12-30 14:22:43 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Make last_flow handling more threadsafe 2012-12-28 12:27:43 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * ext/eglgles/video_platform_wrapper.c: * ext/eglgles/video_platform_wrapper.h: eglglessink: Add support for allocating EGLImages on Mali This allows to decoders and other upstream elements to do zero-copy to the sink. 2012-12-31 00:16:42 +0000 Tim-Philipp Müller * configure.ac: configure: replace deprecated AM_CONFIG_HEADER with AC_CONFIG_HEADERS AM_CONFIG_HEADER has been removed in the just-released automake 1.13: https://lists.gnu.org/archive/html/automake/2012-12/msg00038.html https://bugzilla.gnome.org/show_bug.cgi?id=690881 2012-12-30 11:32:29 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/video_platform_wrapper.c: eglglessink: Fix indention 2012-12-30 11:32:02 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Return the last_flow immediately if it wasn't GST_FLOW_OK 2012-12-30 11:29:49 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix copy&paste mistake 2012-12-30 10:45:57 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Improve EGL/GL error handling a bit 2012-12-30 10:43:33 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Don't access the video frame data if not necessary 2012-12-30 10:18:05 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Configure caps from the setcaps function already 2012-07-26 20:38:28 +0200 Matthias Hardt * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: extract ISO 639 language codes for subtitles into taglists https://bugzilla.gnome.org/show_bug.cgi?id=680200 2012-12-28 19:36:30 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Bind the OpenGL ES API in the render thread too 2012-12-28 14:05:56 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Some refactoring as preparation for platform specific rendering 2012-12-28 13:08:12 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.h: eglglessink: Add some more comments 2012-12-28 12:40:14 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Only use the GstVideoFrame if we have a buffer 2012-12-27 10:51:02 +0100 Sebastian Dröge * configure.ac: * ext/eglgles/Makefile.am: * ext/eglgles/video_platform_wrapper.c: eglglessink: Add configure parameter to chose the EGL window system Only needed for creating native windows. 2012-12-26 17:35:46 +0100 Sebastian Dröge * configure.ac: * ext/eglgles/video_platform_wrapper.c: eglglessink: Add support for Mali fbdev EGL driver 2012-12-27 14:09:03 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.h: d3dvideosink: Add compatibility #defines for older mingw headers These were removed recently but these mingw headers are still out there. 2012-12-21 07:35:13 -0500 Youness Alaoui * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: decklink: remove useless and uninitialized list causing a crash in the device probe 2012-12-26 17:25:36 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Add support for video meta and arbitrary strides 2012-12-26 15:58:55 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix width/height swap in last commit 2012-12-26 15:46:40 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Remove debug function call from previous commit 2012-12-26 14:39:03 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * ext/eglgles/video_platform_wrapper.c: eglglessink: Fix handling of GstVideoOverlay::set_render_rect() and crop metadata 2012-12-26 10:54:38 +0100 Sebastian Dröge * ext/eglgles/video_platform_wrapper.c: eglglessink: Add a cast from EGLNativeWindowType to Window to fix a compiler warning 2012-12-26 10:39:52 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix a crash on GstVideoOverlay::expose() 2012-12-26 10:34:21 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * ext/eglgles/video_platform_wrapper.c: * ext/eglgles/video_platform_wrapper.h: eglglessink: Fix crash when closing internal X11 window 2012-12-26 10:20:21 +0100 Sebastian Dröge * configure.ac: * ext/eglgles/video_platform_wrapper.c: eglglessink: Add proper check for X11 2012-12-18 09:53:16 -0800 Joe Konno * ext/wayland/gstwaylandsink.c: waylandsink: do not default to a fullscreen canvas Defer certain canvas particulars to the player (or the Wayland compositor). Before this change, a fullscreen canvas was always requested. This may not be desirable in all cases. https://bugzilla.gnome.org/show_bug.cgi?id=690442 2012-12-23 09:51:42 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Only use 10 bit YUV formats for exactly 10 bit images, not <= 16 bit And use the generic converter to AYUV64 for everything else. 2012-12-22 18:43:37 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Remove scary "while (object.refcount > 0) release (object);" code If there is a memory leak, this isn't the way how it should be fixed. 2012-12-22 18:17:45 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Don't forget to return a value from ::propose_allocation() 2012-12-22 18:17:04 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Add support for the video meta 2012-12-22 18:12:42 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Don't use "class" as variable name and don't use C99 comments 2012-12-22 18:04:42 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Only open system resources in in NULL->READY, not on object instantiation 2012-12-22 17:55:08 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Properly copy frames to D3D with the right strides and everything And only support color formats that are actually supported by the driver, this allows proper zero-copy handling later and simplifies the code a lot. Also simplify some other places, like the format mapping code. 2012-12-22 16:26:52 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Remove non-sense display PAR handling This has to be implemented properly at some point 2012-12-22 16:18:14 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Fix caps leak 2012-12-22 12:09:30 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Fix duplicated format entry in the template caps 2012-12-22 12:05:14 +0100 Sebastian Dröge * configure.ac: * sys/d3dvideosink/Makefile.am: d3dvideosink: Fix linking 2012-12-22 11:58:21 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: d3dvideosink: Fix some more compiler warnings 2012-12-22 11:50:08 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Port remaining bits to new GLib threading API 2012-12-22 11:45:27 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: And remove the right declaration 2012-12-22 11:44:32 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Remove unused static declaration 2012-12-22 11:43:21 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Remove unused variables 2012-12-22 11:42:52 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Update to new GLib threading API 2012-12-22 11:38:28 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: Rename keep_aspect_ratio to force_aspect_ratio in the header too 2012-12-22 11:35:55 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Use G_PARAM_STATIC_STRINGS 2012-12-22 11:34:43 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Rename keep-aspect-ratio to force-aspect-ratio and default to TRUE For consistency with other video sinks. 2012-12-22 11:30:08 +0100 Sebastian Dröge * sys/d3dvideosink/d3dhelpers.c: * sys/d3dvideosink/d3dhelpers.h: d3dvideosink: Add files that had to be included in the last commit 2012-12-22 11:28:19 +0100 Sebastian Dröge * sys/d3dvideosink/Makefile.am: d3dvideosink: Add $(GST_PLUGINS_BASE_CFLAGS) to CFLAGS 2012-12-22 11:24:28 +0100 Roland Krikava * sys/d3dvideosink/Makefile.am: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: * sys/d3dvideosink/directx/directx.h: * sys/d3dvideosink/directx/directx10/dx10.c: * sys/d3dvideosink/directx/directx10/dx10.h: * sys/d3dvideosink/directx/directx10/dx10_d3d.c: * sys/d3dvideosink/directx/directx10/dx10_d3d.h: * sys/d3dvideosink/directx/directx11/dx11.c: * sys/d3dvideosink/directx/directx11/dx11.h: * sys/d3dvideosink/directx/directx11/dx11_d3d.c: * sys/d3dvideosink/directx/directx11/dx11_d3d.h: * sys/d3dvideosink/directx/directx9/dx9.c: * sys/d3dvideosink/directx/directx9/dx9.h: * sys/d3dvideosink/directx/directx9/dx9_d3d.c: * sys/d3dvideosink/directx/directx9/dx9_d3d.h: * sys/d3dvideosink/directx/directx_d3d.c: * sys/d3dvideosink/directx/directx_d3d.h: * sys/d3dvideosink/directx/dx.c: * sys/d3dvideosink/directx/dx.h: d3dvideosink: Various improvements * XOverlay set_render_rectangle support (Useful for rendering in QT QML) * Video format negotiation (with preference ordering) * Using Direct3D9 (No benefit to using newer D3D versions) 2012-12-21 16:11:10 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Only include formats that are actually working 2012-12-21 15:23:42 +0100 Sebastian Dröge * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Add the actually supported color formats to the template caps 2012-12-18 22:23:42 +0100 Sebastian Rasmussen * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: openjpegenc/-dec: print openjpeg logs for debug tracing 2012-12-18 16:56:28 +0100 Thijs Vermeir * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/opus/gstopusparse.c: opus: use appropriate printf format for gsize 2012-12-18 16:52:26 +0100 Thijs Vermeir * gst/videoparsers/gstvc1parse.c: videoparsers: use appropriate printf format for gsize 2012-12-18 16:50:37 +0100 Thijs Vermeir * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: mxf: use appropriate printf format for gsize 2012-12-18 16:40:59 +0100 Thijs Vermeir * gst/jpegformat/gstjifmux.c: jpeg: use appropriate printf format for gsize 2012-12-18 16:20:08 +0100 Thijs Vermeir * gst/inter/gstinteraudiosink.c: inter: use appropriate printf format for gsize 2012-12-18 15:44:56 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegenc.c: openjpegenc: Add some properties 2012-12-18 15:43:37 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Don't crash if colorspace is not provided on the caps g_str_equal() is *not* NULL-safe 2012-12-17 17:19:54 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Improve robustness against formats with different settings per component 2012-12-17 17:13:22 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Properties won't be needed in the decoder 2012-12-17 17:11:50 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegenc.c: openjpegenc: Fix data pointer incrementing 2012-12-17 17:06:29 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegenc.c: openjpegenc: Optimize image filling functions a bit 2012-12-17 17:02:47 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Add missing shifts 2012-12-17 16:57:14 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: openjpegdec: Optimize frame filling functions a bit 2012-12-17 15:16:48 +0100 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: Make sure the caps are actually writable before changing them 2012-12-17 15:04:44 +0100 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: Use the peer caps for restrictions instead of the srcpad allowed caps Otherwise we will intersect with the srcpad template caps and add all the caps fields that the parser will ever set, no matter if downstream restricts this field or not. This requires upstream to set this field on the caps to successfully negotiate. https://bugzilla.gnome.org/show_bug.cgi?id=690184 2012-12-16 20:05:46 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegenc.c: openjpeg: Correct template caps a bit 2012-12-16 20:02:27 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: openjpeg: Handle the num-components field in the caps 2012-12-15 11:25:36 +0100 Sebastian Dröge * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: openjpeg: Add support for the colorspace field in the caps 2012-12-14 20:08:27 +0000 Sebastian Dröge * ext/openjpeg/gstopenjpeg.c: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/gstopenjpegenc.h: openjpeg: Add JPEG2000 encoder element 2012-12-14 14:38:45 +0000 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/openjpeg/Makefile.am: * ext/openjpeg/gstopenjpeg.c: * ext/openjpeg/gstopenjpegdec.c: * ext/openjpeg/gstopenjpegdec.h: * ext/openjpeg/gstopenjpegenc.c: * ext/openjpeg/gstopenjpegenc.h: openjpeg: Add OpenJPEG based JPEG2000 decoder 2012-12-16 17:44:57 +0000 Tim-Philipp Müller * Makefile.am: build: add removed rtpmux bits to cruft check 2012-12-16 17:35:07 +0000 Tim-Philipp Müller * Android.mk: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-rtpmux.xml: * gst-plugins-bad.spec.in: * gst/rtpmux/Makefile.am: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: * gst/rtpmux/gstrtpmuxer.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rtpmux.c: rtpmux: remove rtpmux plugin, moved to -good Move rtpmux and rtpdtmfmux into rtpmanager plugin in -good. https://bugzilla.gnome.org/show_bug.cgi?id=629117 2012-12-14 14:51:19 +0000 Tim-Philipp Müller * Android.mk: * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-scaletempo.xml: * gst-plugins-bad.spec.in: * gst/scaletempo/Makefile.am: * gst/scaletempo/gstscaletempo.c: * gst/scaletempo/gstscaletempo.h: * gst/scaletempo/gstscaletempoplugin.c: * tests/examples/Makefile.am: * tests/examples/scaletempo/.gitignore: * tests/examples/scaletempo/Makefile.am: * tests/examples/scaletempo/demo-gui.c: * tests/examples/scaletempo/demo-gui.h: * tests/examples/scaletempo/demo-main.c: * tests/examples/scaletempo/demo-player.c: * tests/examples/scaletempo/demo-player.h: scaletempo: remove scaletempo plugin, moved to -good https://bugzilla.gnome.org/show_bug.cgi?id=687262 2012-12-14 18:09:06 +0000 Tim-Philipp Müller * gst/autoconvert/gstautovideoconvert.c: autoconvert: don't use deprecated threading API 2012-12-13 14:12:52 +0100 Wim Taymans * gst/videoparsers/gsth264parse.c: h264parse: use upstream width/height when given The upstream width and height should override the dimension detected in the file. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683142 2012-12-13 11:47:57 +0100 Arnaud Vrac * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: export number of sprite warping points in caps This allows filtering out videos for hardware decoders that do not support GMC at all or only support a limited number of sprite warping points (usually 1). 2012-12-13 11:43:09 +0100 Arnaud Vrac * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: handle divx caps DivX 4/5 are MPEG4 part 2 videos, so they can be parsed by this plugin. 2012-12-13 01:57:21 +0400 Руслан Ижбулатов * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsound: fix compilation errors caused by circular includes https://bugzilla.gnome.org/show_bug.cgi?id=690128 2012-12-12 18:50:09 +0000 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: printf format fixes for debug messages 2012-12-12 00:40:20 +0000 Tim-Philipp Müller * gst/hls/Makefile.am: hls: minor Makefile clean-up Remove superfluous SOUP_CFLAGS and SOUP_LIBS. 2012-12-11 21:09:02 +0000 Michael Esemplare * gst/hls/Makefile.am: hls: link to the right gst-plugins-base libs and fix libs order https://bugzilla.gnome.org/show_bug.cgi?id=690030 2012-12-11 20:58:42 +0000 Michael Esemplare * sys/d3dvideosink/Makefile.am: d3dvideosink: fix compiler and linker flags https://bugzilla.gnome.org/show_bug.cgi?id=690031 2012-12-11 15:00:15 +0000 Sebastian Dröge * configure.ac: configure: Use AC_LANG_PROGRAM to make autoconf happy 2012-12-11 14:19:41 +0000 Sebastian Dröge * configure.ac: * sys/winscreencap/Makefile.am: winscreencap: Fix configure check and compilation 2012-12-11 10:58:54 +0000 Sebastian Dröge * ext/libmms/gstmms.c: mms: Fix format string for off_t/goffset Fixes bug #690033. 2012-12-06 10:06:02 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't allow any wrapping other than frame wrapping Bad things will happen otherwise, like reading a complete, multiple GB large video track into a single buffer. Conflicts: gst/mxf/mxfdemux.c 2012-12-05 15:27:02 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfd10.c: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfessence.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: mxfdemux: Add function to get the essence track wrapping 2012-12-05 12:23:29 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfquark.c: * gst/mxf/mxfquark.h: mxf: Add support for parsing filler structural components This does not add support for actually producing filler data if there's a filler component in a timeline. 2012-12-05 12:08:25 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxf: Improve debug output during metadata resolval 2012-12-01 17:05:38 +0100 Alessandro Decina * ext/rtmp/gstrtmpsrc.c: rtmpsrc: disable seeking if the configured url specifies live=true Disable seeking when live=true is set in the location URL (eg: "rtmp://example.net/stream live=true") 2012-11-30 20:01:16 +0000 Tim-Philipp Müller * configure.ac: * ext/resindvd/Makefile.am: * gst/frei0r/Makefile.am: resindvd, frei0r: link to libgmodule-2.0 in plugins that use g_module_* API Probably needed for other plugins as well. 2012-11-30 19:54:11 +0000 Tim-Philipp Müller * configure.ac: configure: sprinkle some AC_LANG_PROGRAM in wasapi check So autogen.sh stops moaning. 2012-11-30 15:10:43 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxf: Add more support for RP2008 (AVC in the MPEG mapping) Conflicts: gst/mxf/mxfmpeg.c 2012-11-30 11:44:51 +0100 Sebastian Dröge * sys/wasapi/Makefile.am: wasapi: make the build happy without the static plugins patch 2012-11-30 11:40:47 +0100 Sebastian Dröge * configure.ac: configure: Add wasapi to the unported plugins 2012-11-30 11:37:37 +0100 Sebastian Dröge * configure.ac: * sys/Makefile.am: * sys/wasapi/Makefile.am: wasapi: Integrate into the autotools build system Patch based on a patch by Fabrizio Ciavatta 2012-11-28 13:10:47 +0100 Sebastian Dröge * configure.ac: * sys/shm/Makefile.am: shm: Fix configure check and clean up Makefile 2012-11-27 15:34:19 -0500 Emmanuel Durand * configure.ac: * sys/shm/Makefile.am: * sys/shm/shmpipe.c: shm: Fix compilation of shm on OSX https://bugzilla.gnome.org/show_bug.cgi?id=689183 2012-11-26 19:21:03 +0000 Krzysztof Konopko * gst/mpegtsmux/mpegtsmux.c: * tests/check/elements/mpegtsmux.c: mpegtsmux: crashes when trying to re-use the element A crash occured after pushing buffers and changing mpegtsmux state to NULL/READ and then back to PLAYING/PAUSED. The crash was caused by holding a dangling pointer in the MpegTsMux program table. Additionally stream headers were leaked when resetting the element: mux->streamheader set to NULL in mpegtsmux_reset() before it's released later in the same function. Added a unit test: test_multiple_state_change https://bugzilla.gnome.org/show_bug.cgi?id=689107 2012-11-23 12:26:43 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Add latest ported plugins etc. 2012-11-22 10:57:25 +0000 Krzysztof Konopko * gst/mpegtsmux/mpegtsmux.c: * tests/check/elements/mpegtsmux.c: mpegtsmux: propagate flow returns And add a unit test. https://bugzilla.gnome.org/show_bug.cgi?id=688870 2012-11-21 10:21:50 +0100 Sebastian Dröge * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: * sys/winks/Makefile.am: windows: Put the DirectX LDFLAGS in the correct place and reorder libraries 2012-11-20 23:20:38 +0000 Tim-Philipp Müller * gst/hls/gsthlssink.c: hlssink: add doc chunk with example command line 2012-11-20 12:05:17 +0100 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: fix redefinition of DECLARE_INTERFACE_IID https://bugzilla.gnome.org/show_bug.cgi?id=688510 2012-11-19 19:29:48 -0500 Youness Alaoui * gst-libs/gst/interfaces/photography.h: GstPhotography: Add new enum values to match android's parameters https://bugzilla.gnome.org/show_bug.cgi?id=688486 2012-11-19 10:32:57 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix PTYPE for interlaced frames. Coverity found missing break in parse_frame_header_advanced() when determining PTYPE from FPTYPE for interlaced streams. https://bugzilla.gnome.org/show_bug.cgi?id=688626 Signed-off-by: Gwenole Beauchesne 2012-09-21 18:23:21 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix error code for invalid size parsed in SPS. gst_h264_parse_sps() returned FALSE if it parsed invalid (negative) size components. Now make it gracefully return GST_H264_PARSER_ERROR instead of GST_H264_PARSER_OK (FALSE). https://bugzilla.gnome.org/show_bug.cgi?id=684568 2012-11-19 11:26:27 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From b497c4f to a72faea 2012-11-15 11:37:12 -0300 Thibault Saunier * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: Fix nitpick 2012-11-15 10:14:34 -0300 Thibault Saunier * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: Make sure pad template caps are not fixed from the begging Right now decodebin will concider the pad template caps as fixed and if a decoder has restriction on for example height/width it won't be autoplugged because gst_caps_is_subset fails as those fields are missing from the pad template caps. We fix the issue here making sure that the pad caps are fixed using data from the stream. 2012-11-13 22:40:25 +0100 Josep Torra * gst/mpegtsdemux/tsdemux.c: tsdemux: forward upstream time segments after flushes Also reset segment info and drop the segment event when demuxer is flushed. Restore demuxer segment with the info stored in base when demuxer is going to push data again if needed. Drop code to recover the segment info from base in the initial program becauses it's superseded by the new code. 2012-11-14 12:41:27 +0000 Tim-Philipp Müller * gst/audiovisualizers/gstaudiovisualizer.c: * gst/mpegtsmux/mpegtsmux.c: gst_adapter_prev_timestamp -> gst_adapter_prev_pts 2012-11-14 11:35:23 +0000 Tim-Philipp Müller * gst/hls/Makefile.am: hls: dist all header files needed to build 2012-11-14 10:46:55 +0000 Tim-Philipp Müller * gst/accurip/Makefile.am: accurip: fix linker flags Spotted by Rico Tzschichholz. 2012-11-11 12:46:43 +0100 Josep Torra * gst/mpegtsdemux/tsdemux.c: tsdemux: reset the stream some more in the flushes Now that we handle flushing in the FLUSH_STOP event we need to make the streams ready if they were flushing. 2012-11-11 12:45:03 +0100 Josep Torra * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: flush observations too Flush the previous observations when the packetizer is flushed. Also don't leak them in the dispose. 2012-11-10 20:44:44 +0100 Josep Torra * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: fix double unref of seek event 2012-11-10 20:30:13 +0100 Josep Torra * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: flush in FLUSH_STOP to avoid race conditions Ensure the chain is not running before reset the state to avoid race conditions and random corruptions downstream. Also fixes segfaults in the packetizer due wrong available values that causes gst_adapter_map to return a NULL pointer. 2012-11-12 14:56:25 +0100 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: amcvideodec: Fix refcount problem with frames being dropped because of decoder bugs 2012-11-12 11:48:38 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Use new GType for GThread instead of just G_TYPE_POINTER 2012-11-12 11:32:44 +0100 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: androidmedia: Update to new GLib thread API 2012-11-10 19:52:46 +0100 Josep Torra * gst/mpegtsdemux/mpegtspacketizer.c: Revert "tspacketizer: ensure that a null pointer isn't accessed" This reverts commit 6efd611b8c6f43f67a2f93f8445c189e24961abd. Also this extra check won't be needed if it's fixed the race by moving flush actions to FLUSH_STOP. 2012-11-10 19:46:40 +0100 Josep Torra * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: Revert "tsbase: add a guard with an atomic boolean when flushing" This reverts commit e14e310f7178aa8c020f593e3f71ec92ca2531f7. Would be better move the packetizer flushing to FLUSH_STOP and avoid the race that way. Without introducing a memory barrier that could have impact in the performance. 2012-11-10 14:43:17 +0100 Alessandro Decina * gst/hls/.gsthlsdemux.c.swp: * gst/hls/.gsthlssink.c.swp: hlssink: remove vim .swp files that I just committed accidentally... 2012-11-10 14:26:46 +0100 Alessandro Decina * gst/hls/.gsthlsdemux.c.swp: * gst/hls/.gsthlssink.c.swp: * gst/hls/Makefile.am: * gst/hls/gstfragmentedplugin.c: hlssink: port to 1.0 2012-10-28 21:29:31 +0100 Alessandro Decina * gst/hls/gsthlssink.c: * gst/hls/gsthlssink.h: hlssink: cut segments using the running-time 2012-09-09 21:56:43 +0200 Alessandro Decina * gst/hls/gsthlssink.c: hlssink: don't unref ->multifilesink. We gst_bin_add it to ourself so no need to unref in _dispose. 2012-09-09 21:56:22 +0200 Alessandro Decina * gst/hls/gsthlssink.c: hlssink: rework _reset a bit 2012-11-10 00:08:35 +0100 Josep Torra * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: tsbase: add a guard with an atomic boolean when flushing 2012-11-09 22:17:11 +0100 Josep Torra * gst/mpegtsdemux/mpegtspacketizer.c: tspacketizer: ensure that a null pointer isn't accessed Mitigates segfault due race condition in FLUSH_START handling and mpegts_base_chain. 2012-11-08 17:15:26 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: mpegts: Only use timestamp-based PCR/PTS estimation when needed When dealing with non-time based push-mode streams, we need to revert to using the offset-based PCR/PTS estimation logic of packetizer. This solves uses cases such as: pushfile:// ! tsdemux src ! queue ! tsdemux https://bugzilla.gnome.org/show_bug.cgi?id=687178 2012-11-08 12:12:59 +0100 Sebastian Dröge * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-eglglessink.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-opus.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: docs: Add missing plugin inspection files Fixes bug #687840. 2012-11-07 20:50:25 +0000 Tim-Philipp Müller * configure.ac: configure.ac: update courtesy of autoupdate 2012-11-07 20:48:37 +0000 Tim-Philipp Müller * common: * configure.ac: configure: let AG_GST_PLUGIN_DOCS check for python And update common for move from AS_PATH_PYTHON to AM_PATH_PYTHON, which as a side-effect should pick up newer python versions as well. https://bugzilla.gnome.org/show_bug.cgi?id=563903 2012-11-06 20:51:10 +0000 Kevin Thornberry * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix DTS value being used for PTS https://bugzilla.gnome.org/show_bug.cgi?id=687806 2012-11-06 12:40:05 -0300 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: don't rewind to the NAL length size in bytewriter if the format is bytestream Fixes https://bugzilla.gnome.org/show_bug.cgi?id=687548 Signed-off-by: Kevin Thornberry 2012-11-06 11:54:39 -0300 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Actually add PPS data to the output buffer 2012-09-28 12:36:55 -0400 Will Thompson * gst/hls/gsthlssink.c: * gst/hls/gsthlssink.h: hlssink: add a playlist-length property Probably not particularly useful in general, but handy to cut down the latency on a stream. https://bugzilla.gnome.org/show_bug.cgi?id=687133 2012-10-29 13:24:25 +0000 Luciana Fujii Pontello * gst/hls/gsthlssink.c: hlssink: reset when going to NULL state https://bugzilla.gnome.org/show_bug.cgi?id=687133 2012-08-21 23:22:19 -0300 Luciana Fujii Pontello * gst/hls/gsthlssink.c: hlssink: Fix segment names on playlist When the playlist-root is not set, the segment name must not be appended by the path. https://bugzilla.gnome.org/show_bug.cgi?id=687133 2012-11-03 20:38:00 +0000 Tim-Philipp Müller * docs/random/LICENSE: * ext/apexsink/gstapexplugin.c: * ext/apexsink/gstapexraop.c: * ext/apexsink/gstapexraop.h: * ext/apexsink/gstapexsink.c: * ext/apexsink/gstapexsink.h: * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: * ext/audiofile/gstaf.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.c: * ext/audiofile/gstafsrc.h: * ext/bz2/gstbz2.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.c: * ext/bz2/gstbz2enc.h: * ext/cdaudio/gstcdaudio.c: * ext/celt/gstcelt.c: * ext/celt/gstceltdec.c: * ext/celt/gstceltdec.h: * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: * ext/chromaprint/gstchromaprint.c: * ext/chromaprint/gstchromaprint.h: * ext/cog/gstcms.c: * ext/cog/gstcms.h: * ext/cog/gstcog.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/cog/gstcogutils.c: * ext/cog/gstcogutils.h: * ext/curl/gstcurl.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlfilesink.h: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlftpsink.h: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlhttpsink.h: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsmtpsink.h: * ext/curl/gstcurltlssink.c: * ext/curl/gstcurltlssink.h: * ext/dc1394/gstdc1394.c: * ext/dc1394/gstdc1394.h: * ext/dirac/gstdirac.cc: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracdec.h: * ext/dirac/gstdiracenc.cc: * ext/directfb/dfbvideosink.c: * ext/directfb/dfbvideosink.h: * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: * ext/eglgles/video_platform_wrapper.c: * ext/eglgles/video_platform_wrapper.h: * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: * ext/flite/gstflite.c: * ext/flite/gstflitetestsrc.c: * ext/gme/gstgme.c: * ext/gme/gstgme.h: * ext/gsettings/gstgsettings.h: * ext/gsettings/gstgsettingsaudiosink.c: * ext/gsettings/gstgsettingsaudiosink.h: * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsaudiosrc.h: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosink.h: * ext/gsettings/gstgsettingsvideosrc.c: * ext/gsettings/gstgsettingsvideosrc.h: * ext/gsettings/gstswitchsink.c: * ext/gsettings/gstswitchsink.h: * ext/gsettings/gstswitchsrc.c: * ext/gsettings/gstswitchsrc.h: * ext/gsettings/plugin.c: * ext/gsm/gstgsm.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.c: * ext/gsm/gstgsmenc.h: * ext/jasper/gstjasper.c: * ext/jasper/gstjasperdec.c: * ext/jasper/gstjasperdec.h: * ext/jasper/gstjasperenc.c: * ext/jasper/gstjasperenc.h: * ext/kate/gstkate.c: * ext/kate/gstkate.h: * ext/kate/gstkatedec.c: * ext/kate/gstkatedec.h: * ext/kate/gstkateenc.c: * ext/kate/gstkateenc.h: * ext/kate/gstkateparse.c: * ext/kate/gstkateparse.h: * ext/kate/gstkatespu.c: * ext/kate/gstkatespu.h: * ext/kate/gstkatetag.c: * ext/kate/gstkatetag.h: * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: * ext/kate/gstkateutil.c: * ext/kate/gstkateutil.h: * ext/ladspa/gstladspa.c: * ext/ladspa/gstladspa.h: * ext/libfame/gstlibfame.c: * ext/libfame/gstlibfame.h: * ext/libmms/gstmms.c: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: * ext/mimic/gstmimic.c: * ext/modplug/gstmodplug.cc: * ext/modplug/gstmodplug.h: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2enc.hh: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encoder.hh: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mpeg2enc/gstmpeg2encoptions.hh: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.hh: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.hh: * ext/mplex/gstmplex.cc: * ext/mplex/gstmplex.hh: * ext/mplex/gstmplexibitstream.cc: * ext/mplex/gstmplexibitstream.hh: * ext/mplex/gstmplexjob.cc: * ext/mplex/gstmplexjob.hh: * ext/mplex/gstmplexoutputstream.cc: * ext/mplex/gstmplexoutputstream.hh: * ext/musepack/gstmusepackdec.c: * ext/musepack/gstmusepackdec.h: * ext/musepack/gstmusepackreader.c: * ext/musepack/gstmusepackreader.h: * ext/musicbrainz/gsttrm.c: * ext/musicbrainz/gsttrm.h: * ext/mythtv/gstmythtvsrc.c: * ext/mythtv/gstmythtvsrc.h: * ext/nas/nassink.c: * ext/nas/nassink.h: * ext/openal/gstopenal.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsink.h: * ext/openal/gstopenalsrc.c: * ext/openal/gstopenalsrc.h: * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: * ext/opencv/gstcvdilate.c: * ext/opencv/gstcvdilate.h: * ext/opencv/gstcvdilateerode.c: * ext/opencv/gstcvdilateerode.h: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcvequalizehist.h: * ext/opencv/gstcverode.c: * ext/opencv/gstcverode.h: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsmooth.h: * ext/opencv/gstcvsobel.c: * ext/opencv/gstcvsobel.h: * ext/opencv/gstedgedetect.c: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: * ext/opencv/gstmotioncells.c: * ext/opencv/gstmotioncells.h: * ext/opencv/gstopencv.c: * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvutils.h: * ext/opencv/gstopencvvideofilter.c: * ext/opencv/gstopencvvideofilter.h: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gstpyramidsegment.h: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextoverlay.c: * ext/opencv/gsttextoverlay.h: * ext/opencv/motioncells_wrapper.cpp: * ext/opencv/motioncells_wrapper.h: * ext/opus/gstopus.c: * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopusdepay.h: * ext/opus/gstrtpopuspay.c: * ext/opus/gstrtpopuspay.h: * ext/resindvd/gstmpegdemux.h: * ext/resindvd/gstpesfilter.c: * ext/resindvd/gstpesfilter.h: * ext/resindvd/plugin.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: * ext/resindvd/rsndec.c: * ext/resindvd/rsndec.h: * ext/resindvd/rsninputselector.c: * ext/resindvd/rsninputselector.h: * ext/rsvg/gstrsvg.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgdec.h: * ext/rsvg/gstrsvgoverlay.c: * ext/rsvg/gstrsvgoverlay.h: * ext/rtmp/gstrtmp.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsink.h: * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: * ext/sdl/sdlvideosink.c: * ext/sdl/sdlvideosink.h: * ext/snapshot/gstsnapshot.c: * ext/snapshot/gstsnapshot.h: * ext/sndfile/gstsf.c: * ext/sndfile/gstsf.h: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsink.h: * ext/sndfile/gstsfsrc.c: * ext/sndfile/gstsfsrc.h: * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstbpmdetect.hh: * ext/spandsp/gstspandsp.c: * ext/spandsp/gstspanplc.c: * ext/spandsp/gstspanplc.h: * ext/spc/gstspc.c: * ext/spc/gstspc.h: * ext/spc/tag.c: * ext/spc/tag.h: * ext/swfdec/gstswfdec.c: * ext/swfdec/gstswfdec.h: * ext/timidity/gsttimidity.c: * ext/timidity/gsttimidity.h: * ext/timidity/gstwildmidi.c: * ext/timidity/gstwildmidi.h: * ext/voaacenc/gstvoaac.c: * ext/voaacenc/gstvoaacenc.c: * ext/voaacenc/gstvoaacenc.h: * ext/voamrwbenc/gstvoamrwb.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/voamrwbenc/gstvoamrwbenc.h: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: * ext/xvid/gstxvid.c: * ext/xvid/gstxvid.h: * ext/xvid/gstxviddec.c: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.c: * ext/xvid/gstxvidenc.h: * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.c: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: * gst-libs/gst/codecparsers/parserutils.c: * gst-libs/gst/codecparsers/parserutils.h: * gst-libs/gst/gettext.h: * gst-libs/gst/glib-compat-private.h: * gst-libs/gst/gst-i18n-plugin.h: * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: * gst-libs/gst/video/gstsurfaceconverter.c: * gst-libs/gst/video/gstsurfaceconverter.h: * gst-libs/gst/video/gstsurfacemeta.c: * gst-libs/gst/video/gstsurfacemeta.h: * gst-libs/gst/video/videocontext.c: * gst-libs/gst/video/videocontext.h: * gst/accurip/gstaccurip.c: * gst/accurip/gstaccurip.h: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiff.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffmux.h: * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: * gst/asfmux/gstasf.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstasfparse.h: * gst/asfmux/gstrtpasfpay.c: * gst/asfmux/gstrtpasfpay.h: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiovisualizers/gstaudiovisualizer.c: * gst/audiovisualizers/gstaudiovisualizer.h: * gst/audiovisualizers/gstdrawhelpers.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstspectrascope.h: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstsynaescope.h: * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: * gst/audiovisualizers/plugin.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: * gst/autoconvert/gstautovideoconvert.c: * gst/autoconvert/gstautovideoconvert.h: * gst/autoconvert/plugin.c: * gst/bayer/gstbayer.c: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: * gst/bayer/gstrgb2bayer.h: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstplugin.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstviewfinderbin.h: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstvcdparse.c: * gst/cdxaparse/gstvcdparse.h: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstchromahold.h: * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstcoloreffects.h: * gst/coloreffects/gstplugin.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dataurisrc/gstdataurisrc.h: * gst/dccp/gstdccp.c: * gst/dccp/gstdccp.h: * gst/dccp/gstdccp_common.h: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsink.h: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpclientsrc.h: * gst/dccp/gstdccpplugin.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversink.h: * gst/dccp/gstdccpserversrc.c: * gst/dccp/gstdccpserversrc.h: * gst/debugutils/debugutilsbad.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchecksumsink.h: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstchopmydata.h: * gst/debugutils/gstcompare.c: * gst/debugutils/gstcompare.h: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gstdebugspy.h: * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfdetect.h: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: * gst/dvdspu/gstdvdspu-render.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/dvdspu/gstspu-common.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-pgs.h: * gst/dvdspu/gstspu-vobsub-render.c: * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: * gst/festival/gstfestival.c: * gst/festival/gstfestival.h: * gst/fieldanalysis/gstfieldanalysis.c: * gst/fieldanalysis/gstfieldanalysis.h: * gst/freeverb/gstfreeverb.c: * gst/freeverb/gstfreeverb.h: * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0r.h: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rfilter.h: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rmixer.h: * gst/frei0r/gstfrei0rsrc.c: * gst/frei0r/gstfrei0rsrc.h: * gst/games/gstpuzzle.c: * gst/games/gstvideoimage.c: * gst/games/gstvideoimage.h: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstdodge.h: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstgaussblur.h: * gst/gaudieffects/gstplugin.c: * gst/gaudieffects/gstplugin.h: * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/dp-private.h: * gst/gdp/gstgdp.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: * gst/gdp/gstgdppay.h: * gst/geometrictransform/geometricmath.c: * gst/geometrictransform/geometricmath.h: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstbulge.h: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstcircle.h: * gst/geometrictransform/gstcirclegeometrictransform.c: * gst/geometrictransform/gstcirclegeometrictransform.h: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstdiffuse.h: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstfisheye.h: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstkaleidoscope.h: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmarble.h: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstmirror.h: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstpinch.h: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstrotate.h: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsphere.h: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gstsquare.h: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gststretch.h: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttunnel.h: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gsttwirl.h: * gst/geometrictransform/gstwaterripple.c: * gst/geometrictransform/gstwaterripple.h: * gst/geometrictransform/plugin.c: * gst/hdvparse/gsthdvparse.c: * gst/hdvparse/gsthdvparse.h: * gst/hls/gstfragment.c: * gst/hls/gstfragment.h: * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: * gst/hls/gsthlssink.c: * gst/hls/gsthlssink.h: * gst/hls/gstm3u8playlist.c: * gst/hls/gstm3u8playlist.h: * gst/hls/gsturidownloader.c: * gst/hls/gsturidownloader.h: * gst/hls/m3u8.c: * gst/hls/m3u8.h: * gst/id3tag/gstid3mux.c: * gst/id3tag/gstid3mux.h: * gst/id3tag/id3tag.c: * gst/id3tag/id3tag.h: * gst/inter/gstinteraudiosink.h: * gst/inter/gstinteraudiosrc.h: * gst/inter/gstintersubsink.h: * gst/inter/gstintersubsrc.h: * gst/inter/gstintersurface.h: * gst/inter/gstintervideosink.h: * gst/inter/gstintervideosrc.h: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jp2kdecimator/gstjp2kdecimator.h: * gst/jp2kdecimator/jp2kcodestream.c: * gst/jp2kdecimator/jp2kcodestream.h: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjifmux.h: * gst/jpegformat/gstjpegformat.c: * gst/jpegformat/gstjpegformat.h: * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: * gst/librfb/vncauth.c: * gst/librfb/vncauth.h: * gst/liveadder/liveadder.h: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/buffer.c: * gst/mpeg1sys/buffer.h: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/gstpesfilter.c: * gst/mpegdemux/gstpesfilter.h: * gst/mpegdemux/plugin.c: * gst/mpegpsmux/crc.h: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: * gst/mpegpsmux/mpegpsmux_aac.c: * gst/mpegpsmux/mpegpsmux_aac.h: * gst/mpegpsmux/mpegpsmux_h264.c: * gst/mpegpsmux/mpegpsmux_h264.h: * gst/mpegpsmux/psmux.c: * gst/mpegpsmux/psmux.h: * gst/mpegpsmux/psmuxcommon.h: * gst/mpegpsmux/psmuxstream.c: * gst/mpegpsmux/psmuxstream.h: * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/gstmpegdesc.c: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/gsttsdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: * gst/mpegtsdemux/pesparse.c: * gst/mpegtsdemux/pesparse.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/mpegtsmux_aac.c: * gst/mpegtsmux/mpegtsmux_aac.h: * gst/mpegtsmux/mpegtsmux_ttxt.c: * gst/mpegtsmux/mpegtsmux_ttxt.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: * gst/mve/gstmve.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvedemux.h: * gst/mve/gstmvemux.c: * gst/mve/gstmvemux.h: * gst/mve/mve.h: * gst/mve/mveaudioenc.c: * gst/mve/mvevideoenc16.c: * gst/mve/mvevideoenc8.c: * gst/mxf/mxf.c: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfalaw.c: * gst/mxf/mxfalaw.h: * gst/mxf/mxfd10.c: * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdms1.h: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfdv-dif.h: * gst/mxf/mxfessence.c: * gst/mxf/mxfessence.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfmpeg.h: * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: * gst/mxf/mxfquark.c: * gst/mxf/mxfquark.h: * gst/mxf/mxftypes.c: * gst/mxf/mxftypes.h: * gst/mxf/mxful.c: * gst/mxf/mxful.h: * gst/mxf/mxfup.c: * gst/mxf/mxfup.h: * gst/mxf/mxfvc3.c: * gst/mxf/mxfvc3.h: * gst/nsf/dis6502.h: * gst/nsf/fds_snd.c: * gst/nsf/fds_snd.h: * gst/nsf/gstnsf.c: * gst/nsf/gstnsf.h: * gst/nsf/log.c: * gst/nsf/log.h: * gst/nsf/mmc5_snd.c: * gst/nsf/mmc5_snd.h: * gst/nsf/nes6502.c: * gst/nsf/nes6502.h: * gst/nsf/nes_apu.c: * gst/nsf/nes_apu.h: * gst/nsf/nsf.c: * gst/nsf/nsf.h: * gst/nsf/osd.h: * gst/nsf/types.h: * gst/nsf/vrc7_snd.c: * gst/nsf/vrc7_snd.h: * gst/nsf/vrcvisnd.c: * gst/nsf/vrcvisnd.h: * gst/nuvdemux/gstnuvdemux.c: * gst/nuvdemux/gstnuvdemux.h: * gst/overlay/gstoverlay.c: * gst/overlay/gstoverlay.h: * gst/patchdetect/gstpatchdetect.h: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstirtspparse.h: * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: * gst/pcapparse/plugin.c: * gst/pnm/gstpnm.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmenc.h: * gst/pnm/gstpnmutils.c: * gst/pnm/gstpnmutils.h: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: * gst/real/gstreal.c: * gst/real/gstreal.h: * gst/real/gstrealaudiodec.c: * gst/real/gstrealaudiodec.h: * gst/real/gstrealvideodec.c: * gst/real/gstrealvideodec.h: * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: * gst/removesilence/vad_private.c: * gst/removesilence/vad_private.h: * gst/rtjpeg/gstrtjpeg.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.c: * gst/rtjpeg/gstrtjpegenc.h: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: * gst/rtpmux/gstrtpmuxer.c: * gst/scaletempo/gstscaletempo.c: * gst/scaletempo/gstscaletempo.h: * gst/scaletempo/gstscaletempoplugin.c: * gst/sdi/gstsdi.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdidemux.h: * gst/sdi/gstsdimux.c: * gst/sdi/gstsdimux.h: * gst/sdp/gstsdpdemux.c: * gst/sdp/gstsdpdemux.h: * gst/sdp/gstsdpelem.c: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstaudiosegmentclip.h: * gst/segmentclip/gstsegmentclip.c: * gst/segmentclip/gstsegmentclip.h: * gst/segmentclip/gstvideosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.h: * gst/segmentclip/plugin.c: * gst/siren/common.c: * gst/siren/common.h: * gst/siren/dct4.c: * gst/siren/dct4.h: * gst/siren/decoder.c: * gst/siren/decoder.h: * gst/siren/encoder.c: * gst/siren/encoder.h: * gst/siren/gstsiren.c: * gst/siren/gstsiren.h: * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: * gst/siren/huffman.c: * gst/siren/huffman.h: * gst/siren/huffman_consts.h: * gst/siren/rmlt.c: * gst/siren/rmlt.h: * gst/siren/siren7.h: * gst/smooth/gstsmooth.c: * gst/smooth/gstsmooth.h: * gst/speed/demo-mp3.c: * gst/speed/gstspeed.c: * gst/speed/gstspeed.h: * gst/stereo/gststereo.c: * gst/stereo/gststereo.h: * gst/subenc/gstsrtenc.c: * gst/subenc/gstsrtenc.h: * gst/subenc/gstsubenc.c: * gst/subenc/gstwebvttenc.c: * gst/subenc/gstwebvttenc.h: * gst/tta/crc32.h: * gst/tta/gsttta.c: * gst/tta/gstttadec.c: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.c: * gst/tta/gstttaparse.h: * gst/tta/ttadec.h: * gst/vbidec/gstvbidec.c: * gst/vbidec/gstvbidec.h: * gst/videofilters/gstscenechange.h: * gst/videofilters/gstvideofilter2.h: * gst/videofilters/gstzebrastripe.h: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gstdiracparse.h: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth263parse.h: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: * gst/videoparsers/h263parse.c: * gst/videoparsers/h263parse.h: * gst/videoparsers/plugin.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideoanalyse.h: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideodetect.h: * gst/videosignal/gstvideomark.c: * gst/videosignal/gstvideomark.h: * gst/videosignal/gstvideosignal.c: * gst/videosignal/gstvideosignal.h: * gst/vmnc/vmncdec.c: * gst/y4m/gsty4mdec.c: * gst/y4m/gsty4mdec.h: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: * sys/applemedia/bufferfactory.h: * sys/applemedia/bufferfactory.m: * sys/applemedia/celapi.c: * sys/applemedia/celapi.h: * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: * sys/applemedia/cmapi.c: * sys/applemedia/cmapi.h: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/coremediactx.c: * sys/applemedia/coremediactx.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/cvapi.c: * sys/applemedia/cvapi.h: * sys/applemedia/dynapi-internal.h: * sys/applemedia/dynapi.c: * sys/applemedia/dynapi.h: * sys/applemedia/mioapi.c: * sys/applemedia/mioapi.h: * sys/applemedia/miovideodevice.c: * sys/applemedia/miovideodevice.h: * sys/applemedia/miovideosrc.c: * sys/applemedia/miovideosrc.h: * sys/applemedia/mtapi.c: * sys/applemedia/mtapi.h: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.h: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtapi.c: * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264decbin.h: * sys/applemedia/vth264encbin.c: * sys/applemedia/vth264encbin.h: * sys/applemedia/vtutil.c: * sys/applemedia/vtutil.h: * sys/avc/gstavcsrc.h: * sys/cdrom/gstcdplayer.c: * sys/cdrom/gstcdplayer.h: * sys/cdrom/gstcdplayer_ioctl.c: * sys/cdrom/gstcdplayer_ioctl.h: * sys/cdrom/gstcdplayer_ioctl_bsd.h: * sys/cdrom/gstcdplayer_ioctl_irix.h: * sys/cdrom/gstcdplayer_ioctl_solaris.h: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: * sys/d3dvideosink/directx/directx.h: * sys/d3dvideosink/directx/directx10/dx10.c: * sys/d3dvideosink/directx/directx10/dx10.h: * sys/d3dvideosink/directx/directx10/dx10_d3d.c: * sys/d3dvideosink/directx/directx10/dx10_d3d.h: * sys/d3dvideosink/directx/directx11/dx11.c: * sys/d3dvideosink/directx/directx11/dx11.h: * sys/d3dvideosink/directx/directx11/dx11_d3d.c: * sys/d3dvideosink/directx/directx11/dx11_d3d.h: * sys/d3dvideosink/directx/directx9/dx9.c: * sys/d3dvideosink/directx/directx9/dx9.h: * sys/d3dvideosink/directx/directx9/dx9_d3d.c: * sys/d3dvideosink/directx/directx9/dx9_d3d.h: * sys/d3dvideosink/directx/directx_d3d.c: * sys/d3dvideosink/directx/directx_d3d.h: * sys/d3dvideosink/directx/dx.c: * sys/d3dvideosink/directx/dx.h: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.h: * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowdecwrapper.cpp: * sys/dshowdecwrapper/gstdshowdecwrapper.h: * sys/dshowdecwrapper/gstdshowfakesrc.cpp: * sys/dshowdecwrapper/gstdshowfakesrc.h: * sys/dshowdecwrapper/gstdshowutil.cpp: * sys/dshowdecwrapper/gstdshowutil.h: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.h: * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: * sys/dshowvideosink/dshowvideofakesrc.cpp: * sys/dshowvideosink/dshowvideofakesrc.h: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: * sys/dvb/cam.c: * sys/dvb/cam.h: * sys/dvb/camapplication.c: * sys/dvb/camapplication.h: * sys/dvb/camapplicationinfo.c: * sys/dvb/camapplicationinfo.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camresourcemanager.c: * sys/dvb/camresourcemanager.h: * sys/dvb/camsession.c: * sys/dvb/camsession.h: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camtransport.c: * sys/dvb/camtransport.h: * sys/dvb/camutils.c: * sys/dvb/camutils.h: * sys/dvb/dvbbasebin.c: * sys/dvb/dvbbasebin.h: * sys/dvb/gstdvb.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: * sys/dvb/parsechannels.h: * sys/dxr3/ac3_padder.c: * sys/dxr3/ac3_padder.h: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3common.h: * sys/dxr3/dxr3init.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.c: * sys/dxr3/dxr3videosink.h: * sys/fbdev/gstfbdevsink.c: * sys/fbdev/gstfbdevsink.h: * sys/linsys/gstlinsys.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisink.h: * sys/linsys/gstlinsyssdisrc.c: * sys/linsys/gstlinsyssdisrc.h: * sys/opensles/opensles.c: * sys/opensles/opensles.h: * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: * sys/opensles/openslessrc.c: * sys/opensles/openslessrc.h: * sys/osxvideo/osxvideoplugin.c: * sys/osxvideo/osxvideosrc.c: * sys/osxvideo/osxvideosrc.h: * sys/pvr2d/gstpvrvideosink.c: * sys/pvr2d/gstpvrvideosink.h: * sys/qcam/gstqcamsrc.c: * sys/qcam/gstqcamsrc.h: * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/codecmapping.c: * sys/qtwrapper/codecmapping.h: * sys/qtwrapper/imagedescription.c: * sys/qtwrapper/imagedescription.h: * sys/qtwrapper/qtutils.c: * sys/qtwrapper/qtutils.h: * sys/qtwrapper/qtwrapper.c: * sys/qtwrapper/qtwrapper.h: * sys/qtwrapper/videodecoders.c: * sys/shm/gstshm.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: * sys/shm/gstshmsrc.c: * sys/shm/gstshmsrc.h: * sys/uvch264/gstuvch264.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_mjpgdemux.h: * sys/uvch264/gstuvch264_src.c: * sys/uvch264/gstuvch264_src.h: * sys/uvch264/uvc_h264.c: * sys/vcd/vcdsrc.c: * sys/vcd/vcdsrc.h: * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/basevideodecoder/gstbasevideoutils.h: * sys/vdpau/basevideodecoder/gstvideoframe.c: * sys/vdpau/basevideodecoder/gstvideoframe.h: * sys/vdpau/gstvdp/gstvdp.c: * sys/vdpau/gstvdp/gstvdp.h: * sys/vdpau/gstvdp/gstvdpbuffer.c: * sys/vdpau/gstvdp/gstvdpbuffer.h: * sys/vdpau/gstvdp/gstvdpbufferpool.c: * sys/vdpau/gstvdp/gstvdpbufferpool.h: * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdp/gstvdpdecoder.h: * sys/vdpau/gstvdp/gstvdpdevice.c: * sys/vdpau/gstvdp/gstvdpdevice.h: * sys/vdpau/gstvdp/gstvdpoutputbuffer.c: * sys/vdpau/gstvdp/gstvdpoutputbuffer.h: * sys/vdpau/gstvdp/gstvdpoutputbufferpool.c: * sys/vdpau/gstvdp/gstvdpoutputbufferpool.h: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.h: * sys/vdpau/gstvdp/gstvdputils.c: * sys/vdpau/gstvdp/gstvdputils.h: * sys/vdpau/gstvdp/gstvdpvideobuffer.c: * sys/vdpau/gstvdp/gstvdpvideobuffer.h: * sys/vdpau/gstvdp/gstvdpvideobufferpool.c: * sys/vdpau/gstvdp/gstvdpvideobufferpool.h: * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdp/gstvdpvideosrcpad.h: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gsth264frame.c: * sys/vdpau/h264/gsth264frame.h: * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gsth264parser.h: * sys/vdpau/h264/gstnalreader.c: * sys/vdpau/h264/gstnalreader.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegdec.h: * sys/vdpau/mpeg/gstvdpmpegframe.c: * sys/vdpau/mpeg/gstvdpmpegframe.h: * sys/vdpau/mpeg/mpegutil.c: * sys/vdpau/mpeg/mpegutil.h: * sys/vdpau/mpeg4/gstmpeg4frame.c: * sys/vdpau/mpeg4/gstmpeg4frame.h: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.h: * sys/vdpau/mpeg4/mpeg4util.c: * sys/vdpau/mpeg4/mpeg4util.h: * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: * sys/wininet/gstwininetsrc.c: * sys/wininet/gstwininetsrc.h: * sys/winks/gstksclock.c: * sys/winks/gstksclock.h: * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: * sys/winks/gstksvideosrc.h: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstdx9screencapsrc.h: * sys/winscreencap/gstgdiscreencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.h: * sys/winscreencap/gstwinscreencap.c: * sys/winscreencap/gstwinscreencap.h: * tests/check/elements/asfmux.c: * tests/check/elements/assrender.c: * tests/check/elements/autoconvert.c: * tests/check/elements/autovideoconvert.c: * tests/check/elements/baseaudiovisualizer.c: * tests/check/elements/camerabin.c: * tests/check/elements/dataurisrc.c: * tests/check/elements/faac.c: * tests/check/elements/faad.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/elements/h263parse.c: * tests/check/elements/h264parse.c: * tests/check/elements/id3mux.c: * tests/check/elements/jifmux.c: * tests/check/elements/jpegparse.c: * tests/check/elements/kate.c: * tests/check/elements/logoinsert.c: * tests/check/elements/mpeg2enc.c: * tests/check/elements/mpeg4videoparse.c: * tests/check/elements/mpegtsmux.c: * tests/check/elements/mpegvideoparse.c: * tests/check/elements/mpg123audiodec.c: * tests/check/elements/mplex.c: * tests/check/elements/mxfdemux.c: * tests/check/elements/mxfmux.c: * tests/check/elements/neonhttpsrc.c: * tests/check/elements/ofa.c: * tests/check/elements/opus.c: * tests/check/elements/parser.c: * tests/check/elements/parser.h: * tests/check/elements/rtpmux.c: * tests/check/elements/schroenc.c: * tests/check/elements/timidity.c: * tests/check/elements/uvch264demux.c: * tests/check/elements/viewfinderbin.c: * tests/check/elements/voaacenc.c: * tests/check/elements/voamrwbenc.c: * tests/check/elements/zbar.c: * tests/check/generic/states.c: * tests/check/libs/h264parser.c: * tests/check/libs/mpegvideoparser.c: * tests/check/libs/vc1parser.c: * tests/check/pipelines/colorspace.c: * tests/check/pipelines/mimic.c: * tests/check/pipelines/mxf.c: * tests/check/pipelines/streamheader.c: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camera2.h: * tests/examples/camerabin2/gst-camerabin2-test.c: * tests/examples/gstplay/player.c: * tests/examples/indexing/indexmpeg.c: * tests/examples/level/demo.c: * tests/examples/level/plot.c: * tests/examples/mxf/mxfdemux-structure.c: * tests/examples/stats/mp2ogg.c: * tests/icles/dccp/call/DCCPClient.c: * tests/icles/dccp/call/DCCPServer.c: * tests/icles/dccp/file/DCCPClientSaveFile.c: * tests/icles/dccp/file/DCCPServerSendFile.c: * tests/icles/dccp/mic/DCCPClientPlayMic.c: * tests/icles/dccp/mic/DCCPServerMic.c: * tests/icles/dccp/mp3/DCCPClientPlayMP3.c: * tests/icles/dccp/mp3/DCCPServerSendMP3.c: * tests/icles/dccp/mp3Speex/DCCPClientPlaySpeexMP3.c: * tests/icles/dccp/mp3Speex/DCCPServerSendSpeexMP3.c: * tests/icles/dccp/mp3Stream/DCCPClientPlayMP3Stream.c: * tests/icles/dccp/mp3Stream/DCCPServerSendMP3Stream.c: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.h: * tests/icles/pitch-test.c: * tools/element-templates/base: * tools/gst-element-maker: * tools/gst-project-maker: Fix FSF address https://bugzilla.gnome.org/show_bug.cgi?id=687520 2012-11-03 13:51:12 +0000 Tim-Philipp Müller * ext/opencv/gstpyramidsegment.h: opencv: fix warnings and build against opencv 2.4.x gstpyramidsegment.c: In function 'gst_pyramid_segment_chain': gstpyramidsegment.c:307:3: error: implicit declaration of function 'cvPyrSegmentation' [-Werror=implicit-function-declaration] gstpyramidsegment.c:307:3: error: nested extern declaration of 'cvPyrSegmentation' [-Werror=nested-externs] https://bugzilla.gnome.org/show_bug.cgi?id=687237 2012-11-02 13:44:02 +0100 Sebastian Dröge * gst/scaletempo/Makefile.am: scaletempo: Use a better plugin filename 2012-11-02 11:29:54 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Use more constants instead of hardcoding values 2012-11-02 11:24:37 +0100 Sebastian Dröge * sys/opensles/openslesringbuffer.c: opensles: Fix compilation with debugging enabled 2012-11-01 20:50:56 +0000 Tim-Philipp Müller * Android.mk: * Makefile.am: * configure.ac: * docs/plugins/inspect/plugin-rtpvp8.xml: * gst-plugins-bad.spec.in: * gst/rtpvp8/Makefile.am: * gst/rtpvp8/dboolhuff.LICENSE: * gst/rtpvp8/dboolhuff.c: * gst/rtpvp8/dboolhuff.h: * gst/rtpvp8/gstrtpvp8.c: * gst/rtpvp8/gstrtpvp8depay.c: * gst/rtpvp8/gstrtpvp8depay.h: * gst/rtpvp8/gstrtpvp8pay.c: * gst/rtpvp8/gstrtpvp8pay.h: rtpvp8: remove and move to -good https://bugzilla.gnome.org/show_bug.cgi?id=687263 2012-11-01 15:36:10 +0100 Sebastian Dröge * sys/opensles/openslesringbuffer.c: opensles: Remove unused variable 2012-11-01 15:35:17 +0100 Sebastian Dröge * sys/opensles/opensles.c: * sys/opensles/opensles.h: * sys/opensles/openslesringbuffer.c: * sys/opensles/openslessink.c: opensles: Make sure to only ever create a single engine object The OpenSL ES spec defines: An implementation shall enable creation of at least one such object, but attempting to create more instances (either by a single application or by several different applications) may fail. 2012-10-31 20:00:54 +0100 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Skip Aricent codecs for now The HTC One X claims to have one (but doesn't) and loading the library for it hangs forever. 2012-11-01 13:51:09 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Post stream-status messages for our render thread 2012-10-31 13:54:28 +0100 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: If pushing an item on the queue fails, free it Otherwise we're going to leak the item. 2012-10-31 11:38:32 +0000 Tim-Philipp Müller * configure.ac: configure: opencv plugin builds with newer versions up to 2.4.2 as well https://bugzilla.gnome.org/show_bug.cgi?id=687237 2012-10-30 19:30:38 +0100 Olivier Crête * sys/applemedia/avfvideosrc.m: avfvideosrc: Negotiate format, also support more resolutions This should enable supprt for old and new iPhones with the same code. 2012-10-30 09:27:24 +0100 Carlos Rafael Giani * ext/mpg123/gstmpg123audiodec.c: mpg123: removed unnecessary finalize function https://bugzilla.gnome.org/show_bug.cgi?id=687176 2012-10-30 10:20:09 +1100 Jan Schmidt * ext/mpg123/gstmpg123audiodec.c: mpg123: Fix leaks from not chaining up in the finalize function 2012-10-22 12:36:28 +1100 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: tsmux: Slightly reflow collected buffer handler for clarity. 2012-10-26 18:29:32 +0200 Sebastian Pölsterl * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: Fix name of CAT GstStructure The structure previously was assigned the name "pat". https://bugzilla.gnome.org/show_bug.cgi?id=686948 2012-10-28 16:41:15 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-accurip.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * gst/accurip/gstaccurip.c: docs: add new accurip element to docs https://bugzilla.gnome.org/show_bug.cgi?id=685163 2012-10-28 16:36:01 +0000 Christophe Fergeau * configure.ac: * gst/accurip/Makefile.am: * gst/accurip/gstaccurip.c: * gst/accurip/gstaccurip.h: accuraterip: new element for AccurateRip calculation https://bugzilla.gnome.org/show_bug.cgi?id=685163 2012-10-26 13:48:06 -0700 Michael Smith * configure.ac: * gst/mxf/Makefile.am: * gst/mxf/mxf.c: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfd10.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfessence.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfmux.c: * gst/mxf/mxftypes.c: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: mxf: Port mxfdemux to 1.0 Also ports mxfmux to 1.0 to the extent that it compiles, but is 100% untested, so remains disabled. Conflicts: gst/mxf/mxfdemux.c gst/mxf/mxfmux.c 2012-10-25 19:10:40 +0400 Руслан Ижбулатов * sys/directsound/Makefile.am: * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Fix a number of warnings/errors in directsoundsrc * Don't use deprecated glib mutex functions * Don't declare useless variables * Don't link to non-existing libgstinterfaces Fixes #686871 2012-10-25 17:50:52 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: use parsed or upstream fps to set some baseparse parameters 2012-10-25 18:02:23 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: extract structure from correct caps ... which are known != NULL. 2012-10-25 11:31:41 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: preserve upstream fps and par Fixes https://bugzilla.gnome.org/show_bug.cgi?id=660866 2012-10-25 14:28:49 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Stop using deprecated GLib thread API 2012-10-25 12:06:15 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Handle GAP events 2012-10-18 16:23:49 +0200 Sebastian Dröge * configure.ac: * sys/opensles/Makefile.am: * sys/opensles/opensles.c: * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: * sys/opensles/openslessrc.c: * sys/opensles/openslessrc.h: opensles: Port to 1.0 2012-10-22 11:41:44 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Add support for crop metadata 2012-10-22 11:18:39 +0200 Sebastian Dröge * configure.ac: * ext/eglgles/Makefile.am: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Port to 1.0 2012-10-22 13:21:12 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: androidmedia: Remember and use input state 2012-10-18 16:41:07 +0200 Sebastian Dröge * configure.ac: * sys/androidmedia/Makefile.am: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: androidmedia: Port to 1.0 2012-10-23 12:10:14 +0200 Sebastian Dröge * gst/videoparsers/plugin.c: vc1parse: Give vc1parse a rank of NONE for now 2012-10-15 09:12:05 +0200 Sebastian Dröge * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvc1parse.h: vc1parse: Port to 1.0 2012-02-23 13:48:57 +0100 Alessandro Decina * gst/videoparsers/gstvc1parse.c: vc1parse: disable BDU parsing until it's more mature Parsing and splitting BDUs seems to trigger a few bugs in downstream decoders so disable it for now. 2012-10-14 11:39:55 +0200 Alessandro Decina * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvc1parse.h: vc1parse: set duration on output buffers This has the nice side effect of avoiding hanging at EOS with truncated asf clips. Conflicts: gst/videoparsers/gstvc1parse.c 2012-01-31 11:03:45 +0100 Alessandro Decina * gst/videoparsers/gstvc1parse.c: vc1parse: workaround for simple/main codec_data being 5 bytes long Sometimes the codec_data buffer for simple/main pushed by asfdemux is 5 bytes instead of 4. When that happens, codec_data is still valid but it seems to have one 0x00 trailing byte. Might be a bug in the demuxer, needs more investigation. 2012-01-31 11:02:10 +0100 Alessandro Decina * gst/videoparsers/gstvc1parse.c: vc1parse: remove stub stream conversion code 2012-01-31 11:00:55 +0100 Alessandro Decina * gst/videoparsers/gstvc1parse.c: vc1parse: add some more debugging to _renegotiate 2012-01-31 10:58:23 +0100 Sebastian Dröge * gst/videoparsers/Makefile.am: * gst/videoparsers/gstvc1parse.c: * gst/videoparsers/gstvc1parse.h: * gst/videoparsers/plugin.c: vc1parse: Add VC1 parser plugin 2012-10-25 12:46:04 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Back to feature development === release 1.0.2 === 2012-10-25 01:44:35 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.0.2 2012-10-24 23:40:20 +0200 Carlos Rafael Giani * ext/opus/gstopusdec.c: opusdec: fixed buffer unmapping bug When the decoder received a NULL buffer, it tried to unmap a not mapped buffer. https://bugzilla.gnome.org/show_bug.cgi?id=686829 2012-10-24 14:23:26 +0100 Tim-Philipp Müller * configure.ac: configure: require wayland >= 1.0.0 We have an API stable release now, require that. 2012-10-24 13:41:00 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/mpg123audiodec.c: * tests/files/Makefile.am: tests: fix up mpg123 test a little - dist input files - fix sample leak - simplify check for elements - only run mpg123 test if mpg123 is available and selected - fix build in uninstalled setup https://bugzilla.gnome.org/show_bug.cgi?id=686595 2012-10-24 12:30:10 +0200 Carlos Rafael Giani * tests/check/Makefile.am: * tests/check/elements/mpg123audiodec.c: * tests/files/cbr_stream.mp3: * tests/files/stream.mp2: * tests/files/vbr_stream.mp3: tets: add unit test for mpg123audiodec https://bugzilla.gnome.org/show_bug.cgi?id=686595 2012-10-24 00:36:42 +0200 Carlos Rafael Giani * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/mpg123/gstmpg123audiodec.c: mpg123: added gtkdoc section https://bugzilla.gnome.org/show_bug.cgi?id=686595 2012-10-24 00:22:05 +0200 Carlos Rafael Giani * ext/mpg123/gstmpg123audiodec.c: mpg123: fixed bug with last frame, disabled internal resampler & chatter * The last MP3 frame wasn't being pushed when base class was draining * Made sure mpg123 cannot ever use its (crude) internal resampler * Disabled mpg123 stderr output https://bugzilla.gnome.org/show_bug.cgi?id=686595 2012-10-24 00:21:45 +0200 Carlos Rafael Giani * ext/mpg123/gstmpg123audiodec.c: mpg123: cleaned up comments, formatting, and logging lines also replaced mpg123decoder->handle != NULL checks with asserts https://bugzilla.gnome.org/show_bug.cgi?id=686595 2012-10-24 11:34:32 +0200 Sebastian Rasmussen * ext/curl/gstcurlsmtpsink.c: curlsmtpsink: add comment describing function Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686774 2010-07-02 15:28:41 +0200 Thijs Vermeir * gst/mpegdemux/gstmpegdemux.c: mpegdemux: check base_time before calculating new_start https://bugzilla.gnome.org/show_bug.cgi?id=623387 2012-10-23 14:33:21 +0200 Sebastian Dröge * gst/scaletempo/gstscaletempo.c: scaletempo: Fix event leak 2012-10-23 14:32:24 +0200 Sebastian Dröge * gst/scaletempo/gstscaletempo.c: scaletempo: Fix timestamp tracking 2012-10-23 14:06:37 +0200 Sebastian Dröge * gst/scaletempo/gstscaletempo.c: scaletempo: Implement LATENCY query 2012-10-23 13:39:17 +0200 Sebastian Dröge * gst/scaletempo/gstscaletempo.c: * gst/scaletempo/gstscaletempo.h: scaletempo: Store instance private data in the instance struct Getting it over and over again via G_TYPE_INSTANCE_GET_PRIVATE() is really slow. 2012-10-23 10:07:01 +0200 Sebastian Dröge * gst/hls/Makefile.am: hls: Link to $(LIBM) for isfinite() 2012-10-22 21:41:20 +0100 Tim-Philipp Müller * ext/soundtouch/gstpitch.cc: pitch: fix for start times > 0 Fixes buffering and playback of streams that start with a non-0 timestamp in totem (which has a 'pitch' element before pulsesink). Example URI: http://lobostv.lobocast.org.es:8004/lobostv.ogg Still breaks with chained oggs, on second chain. https://bugzilla.gnome.org/show_bug.cgi?id=686391 2012-10-22 12:08:41 +0200 Wim Taymans * ext/opus/gstrtpopuspay.c: opuspay: remove pointless caps serialization Remove the caps serialization in the rtp caps. the spec nor the receiver does anything with it. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=686547 2012-10-22 10:45:17 +0100 Tim-Philipp Müller * configure.ac: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: subenc: port to 1.0 2012-10-22 01:39:13 +1100 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: Don't make the same buffer writable twice. Fixes Bug 686327 - mpegtsmux: fix refcount issue with input buffers 2012-10-20 14:55:41 +0300 Sreerenj Balachandran * configure.ac: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: wayland: update to wayland-protocol 0.99 https://bugzilla.gnome.org/show_bug.cgi?id=686520 2012-10-18 22:23:07 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: forward non-processed dvd events ... such as notably dvd-spu-clut-change. 2012-10-18 22:22:12 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: segment event should be sent before gap event 2012-10-19 09:59:10 +0000 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Don't try to render expose() if no caps are known yet 2012-10-18 15:12:21 +0000 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix expose 2012-10-19 01:03:51 +0100 Tim-Philipp Müller * gst/mpegtsdemux/pesparse.c: tsdemux: fix program packet sequence counter parsing in PES header 2012-10-19 00:47:45 +0100 Tim-Philipp Müller * gst/mpegtsdemux/pesparse.c: tsdemux: fix some inconsequential PES header parsing issues additional_copy_info: need to get rid of the highest bit, not the lowest one program_packet_sequence_counter: also need to get rid of the highest bit instead of multiplying with a random value original_stuff_length: want to AND 0x3f to extract the lowest 6 bits, not multiply by it. None of these fields are actually used though, so these should not have caused any issues. 2012-10-17 15:54:32 +0300 Raimo Järvi * gst/mpegtsdemux/pesparse.c: tsdemux: Fix parsing P-STD_buffer in PES header https://bugzilla.gnome.org/show_bug.cgi?id=686294 2012-10-18 18:56:33 +0100 Tim-Philipp Müller * configure.ac: wayland: don't try to build against 0.99 or later The plugin needs updating for some API changes since 0.95. 2012-10-18 01:47:57 +0200 Andoni Morales Alastruey * gst/mpegtsdemux/tsdemux.c: tsdemux: fix potential crash dereferencing NULL program pointer https://bugzilla.gnome.org/show_bug.cgi?id=686358 2012-10-18 15:06:37 +0200 Sebastian Dröge * configure.ac: opensles: Only check for the main opensles header 2012-10-18 14:38:01 +0200 Sebastian Dröge * configure.ac: eglglessink: Put into the not-ported plugins list 2012-10-18 14:25:05 +0200 Reynaldo H. Verdejo Pinochet * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: eglglessink: Documentation: Hook eglglessink documentation in 2012-10-18 14:09:25 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Make compilable on desktop Linux with MESA too 2012-10-18 14:07:07 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/eglgles/Makefile.am: eglglessink: Integrate into the build system Conflicts: ext/Makefile.am 2012-10-18 10:49:44 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix debug output 2012-10-18 10:32:47 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Also clear the surface once when the buffer content is preserved 2012-10-18 10:20:26 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Only draw black borders if the default swap behaviour of the surface is to destroy the buffer 2012-10-18 09:37:56 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Remove unused label 2012-10-18 02:26:17 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Factor display region reset to its own func 2012-10-18 01:45:51 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Always Reset display_region.* at EGL/GLES ctx wipe 2012-10-18 01:36:49 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Factor ELG/GLES context cleanup into its own func 2012-10-18 00:33:26 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Drop drafted fast rendering path logic 2012-10-17 15:50:08 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.h: eglglessink: Also update header file 2012-10-17 15:37:53 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Provide the texture positions to the shader on every frame too 2012-10-17 15:04:11 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Draw black borders and also use a single GL buffer for all vertices Fixes weird artifacts outside the video frame on Qualcomm Snapdragon chipsets and should be faster than glClear() on the complete area all the time. 2012-10-17 12:49:44 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix memory leak 2012-10-17 10:47:14 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Remove useless debug output added for debugging earlier 2012-10-17 10:08:10 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Make window setting/handling a bit more threadsafe 2012-10-17 09:59:05 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Print window handle after setting it 2012-10-16 17:50:03 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Move DAR query & store to surface init The DAR (display's pixel aspect ratio) should remain a constant at runtime so there's no point on repeatedly query and store this value. Doing it at surface setup should be enough. As an added bonus this change should make rendering a bit faster. 2012-10-16 17:35:18 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Don't signal the GCond too often 2012-10-16 17:05:02 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Add myself as author 2012-10-16 16:25:05 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Make sure to always reset the display region in start() 2012-10-16 16:23:02 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.h: eglglessink: Also commit missing changes to the header file 2012-10-16 16:18:01 +0200 Sebastian Dröge * ext/eglgles/Makefile.am: eglglessink: Also include $(GST_BASE_CFLAGS) 2012-10-16 16:12:48 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix race condition 2012-10-16 15:40:11 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Refactor rendering and all context specific GL things into a separate thread Also fixes some threading related problems. 2012-10-16 14:39:43 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Re-add accidentially reverted commit 2012-10-16 14:15:58 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Remove unneeded flow_lock Use the object lock in the few places necessary, everything else is protected by other things already. Also store the context directly inside the instance struct instead of allocating some memory for it. 2012-10-16 11:53:08 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix debug output and constant names 2012-10-16 11:51:13 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: start()/stop() is called in READY<->NULL in basesink But this should be called in PAUSED<->READY. 2012-10-15 13:44:29 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix for outbound DAR reported by EGL Some EGL implementations don't honor the spec requirement of returning DAR values as w/h * EGL_DISPLAY_SCALING. This changeset: - Fixes rendering on the Samsung Galaxy III - Fixes wrong check on required 1.2 EGL version - Reorders the code a bit. 2012-10-15 13:38:15 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix crashes if there are no EGL or GLES extensions 2012-10-10 12:42:47 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.h: eglglessink: Fix crash at element instantiation 2012-10-10 12:26:04 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: GLSL: Save one extra texture lookup 2012-10-10 12:22:24 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: GLSL: Minor named index access tweak xyz -> rgb 2012-10-10 12:18:27 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: GLSL: Assorted fixes to optimized code - Don't copy over opos as it's already a vec2 - Fix index order access at frag_YUY2_YVYU_UYVY_prog 2012-10-10 11:50:28 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: GLSL: Planar YUV converters optimization - Use consts for the transform's offset and cofficients values - Use dot product instead of mult and add - Avoid unneeded texture lookups 2012-10-10 11:05:04 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: Geglglessink: LSL: Optimize frag_YUY2_YVYU_UYVY_prog - Avoid repeatedly performing the texture lookup - Use consts for the transform's offset and cofficients values - Use the dot product instead of the explicit mult and add 2012-10-10 03:02:21 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: GLSL: Drop unneded nxy vec2 2012-10-10 02:16:35 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix missing double quotation mark in GLSL code 2012-10-10 02:04:18 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: GLSL: Optimize frag_AYUV_prog - Avoid repeatedly performing the texture lookup - Use consts for the transform's offset and cofficients values - Use the dot product instead of the explicit mult and add 2012-10-09 23:35:22 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.h: eglglessink: Documentation: GstEglGlesSink struct 2012-10-09 23:04:05 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.h: eglglessink: Documentation: GstEglGlesBuffer struct (DRAFT) 2012-10-09 22:54:48 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.h: eglglessink: Documentation: GstEglGlesImageFmt struct 2012-10-09 22:40:19 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.h: eglglessink: Documentation: GstEglGlesRenderContext struct 2012-10-09 17:00:52 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Assorted doc and reordering fixes 2012-10-09 16:25:46 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Documentation: Element properties Brief explanatory comments plus some reordering to group default setting of properties and runtime flags values. 2012-10-09 17:20:12 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add support for YVYU 2012-10-09 11:48:09 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Documentation: GLSL Shaders Brief explanatory comments plus some rerdering to group packed/planar converters. 2012-10-09 11:00:24 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Documentation: Element overview 2012-10-08 12:10:25 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Refactor REORDER shader. Avoid unneededly calling texture2D() 3 consecutive times. 2012-10-04 15:47:54 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix handling of caps changes by only releasing what needs to be released And not terminating the display connection 2012-10-04 02:15:24 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Move display_region reset to locked section 2012-10-04 01:56:10 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Reset display_region dims at caps renego 2012-10-04 01:33:31 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Cosmetics 2012-10-04 01:29:40 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Don't access local value from struct 2012-10-03 23:41:52 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Terminate display connection at caps renego 2012-10-02 17:56:14 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Cosmetics 2012-10-03 12:32:38 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Only attach the context once to the streaming thread 2012-10-03 10:53:25 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Make the context current for the thread and unbind it again around every use This fixes some crashes and leaking of our context into other OpenGL code on the same thread. 2012-10-02 17:29:26 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Improve cleanup 2012-10-02 15:46:03 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Remove unused label 2012-10-02 15:42:02 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Allow setting a NULL handle 2012-10-02 09:48:15 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Revert "Do not update_surface_dims() once per frame" This reverts commit 82103376ede2bc7c63dd699f5982168660f67852. We have to update the surface dimensions on every frame to make sure that we get notified about updates. This happens for example if the Android window gets re-layouted because a widget takes more space than before. 2012-10-02 01:43:35 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Do not update_surface_dims() once per frame And.. Upgrade debug message to warging on weird DAR. Correct fix to avoid spaming with this message once per each frame is avoid calling update_surface_dims() at render_and_display(). This is handled at egl surface init. 2012-10-01 16:36:14 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: And downgrade another warning too 2012-10-01 16:14:39 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Downgrade GST_WARNING to GST_DEBUG 2012-10-01 09:44:23 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add some {} to if statements make them work as expected 2012-09-30 23:07:48 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Drop stale defines for max frame size 2012-09-30 23:06:19 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Small commentary fixes here an there 2012-09-28 11:48:23 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Avoid setting height or width twice 2012-09-27 01:18:37 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Use PAR/DAR to set viewport 2012-09-27 14:28:05 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Correctly resize if the surface dimensions change 2012-09-27 14:08:22 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Update surface dimensions on every buffer 2012-09-27 14:02:17 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: More consistent naming of shader related variables 2012-09-27 13:57:14 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Some variable name cleanup 2012-09-27 13:53:59 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Remove default-width/height properties These are completely unneeded 2012-09-25 13:32:40 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix double free() 2012-09-25 09:06:04 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Don't leak EGL/ES render context 2012-09-25 01:39:21 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Put EGL/GLES context vars on their own struct 2012-09-24 11:19:32 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/TODO: eglglessink: Small TODO reformatting 2012-09-24 10:23:28 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/TODO: eglglessink: Add TODO file 2012-09-24 14:43:50 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Correctly implement ::expose() We don't need the past buffer for this, the old one is still available as texture and we just need to draw our rectangle again. 2012-09-24 13:48:19 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Allow setting another window for the next time we reconfigure everything 2012-09-24 12:36:12 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Also unref current caps after usage 2012-09-24 12:32:16 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Implement support for caps changes 2012-09-24 12:27:28 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: More cleanup and making the element reusable 2012-09-24 12:05:22 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Properly init/release resources when going from NULL->READY and the other way around 2012-09-24 11:48:59 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Generate the sink caps exactly once 2012-09-24 11:17:25 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix code style a bit to stop confusing indent 2012-09-24 11:15:02 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix support for YUY2 and UYVY 2012-09-24 11:01:17 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Some property cleanup 2012-09-24 10:45:07 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add support for the remaining RGB formats 2012-09-24 10:23:07 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add support for Y444, Y42B and Y41B, just because it's so easy 2012-09-24 10:02:28 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add some simple TODOs 2012-09-24 01:08:22 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Lock while altering display region coords 2012-09-24 00:27:23 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix _get_compat_format_from_caps() logic It's a getter so it shouldn't messing with the sink context. Adding insult to injury it was setting selected_fmt without locking. The associated changes to the buffer functions are merely make-it build fixes. Those functions are barely drafted and in WIP state. 2012-09-23 23:07:29 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Drop unneded initial set to NULL 2012-09-23 22:33:58 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Minor formatting and comment fixes 2012-09-21 12:12:24 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Clean-up gl/egl allocations at _stop() Also, conditionaly destroy window if the sink created its own. 2012-09-21 17:08:44 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add support for NV12 and NV21 Also YUY2 and UYVY but this is disabled for now as it doesn't work completely yet. Something is wrong with the chroma. 2012-09-21 15:44:07 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Add support for I420 and YV12 color formats 2012-09-21 14:05:43 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Preparations for supporting multiple textures for more YUV formats 2012-09-21 13:42:41 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Use the attrib locations as really used inside the shader 2012-09-21 12:53:00 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Really decouple vertex and texture positions in the shader 2012-09-21 12:45:29 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Decouple texture and vertex positions 2012-09-21 12:14:20 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Reorder vertex value order to make a bit more sense 2012-09-21 01:09:11 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Handle frame scaling to fill surface 2012-09-21 00:09:06 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Draft set_render_rectangle() from the xOverlay interface 2012-09-20 22:50:31 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Remove stale comment 2012-09-20 22:41:10 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Move VBO setup to setcaps 2012-09-20 22:11:08 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Don't do context ops at render We don't need to repeatedly call eglMakeCurrent() while using the same context anyway. 2012-09-20 22:01:20 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Don't clear surface color at render 2012-09-20 17:22:13 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Rename shader variables to make more sense 2012-09-20 17:14:21 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add support for AYUV 2012-09-20 17:02:03 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Reorder caps a bit to make more sense 2012-09-20 16:50:40 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Set rank to PRIMARY 2012-09-20 16:25:33 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add support for RGBA 2012-09-20 16:21:55 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Correctly generated caps for the supported formats 2012-09-20 16:08:28 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Add ::get_caps() vfunc that returns the actually supported caps 2012-09-20 15:56:56 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Also require a configuration with EGL_SURFACE_TYPE containing EGL_WINDOW_BIT 2012-09-20 14:50:23 +0200 Sebastian Dröge * ext/eglgles/gsteglglessink.c: eglglessink: Fix compiler warnings 2012-09-19 19:26:54 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Clear surface to black by default 2012-09-19 19:23:50 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Make sure we get a config we can use with GLES2 2012-09-19 19:12:30 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: set_window_handle() has been tested to work now 2012-09-19 12:29:13 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Avoid autoscaling by default 2012-09-18 14:58:43 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Avoid repeatedly setting 2D resizing params Moved to initial texture setup so it hapens just once while on the same context. 2012-09-18 12:04:20 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Avoid initializing EGL at _set_window_handle() _start() should take care of that. This change asumes _setcaps() will happen always after _start() is done. 2012-09-18 10:43:38 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Don't ask for a window if we already have one 2012-09-18 10:31:26 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Fix EGL attribs var naming 2012-09-18 02:32:25 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix slow path rendering on Android Specify missing and mandatory params for npot Before calling glTexImage2D. In particular, _WRAP_T and _WRAP_S need to be set to GL_CLAMP_TO_EDGE to avoid all-black rendering with npot sized frames. 2012-09-18 00:51:36 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Add test on usable eglconfigs returned 2012-09-17 23:05:29 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Drop stale error_locked label 2012-09-17 23:04:05 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Cleanup stale code comments 2012-09-17 18:00:16 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: GlViewPort() should use actual surface size 2012-09-17 17:21:26 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Avoid reiniting EGL after the first time 2012-09-17 13:44:09 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Use correct template caps 2012-09-17 12:54:05 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix missing texture setup bits 2012-09-17 11:57:24 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Add error checking on eglSwapBuffers 2012-09-17 11:40:49 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix stale&wrong 0.5 alpha blend 2012-09-17 10:56:14 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Add float precision specifier to fragment shader This is required by GLES and fixes compilation of fragment shader prog. 2012-09-17 10:47:39 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Add log reporting at shader compilation failure 2012-09-16 22:43:38 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Add some missing checks on shader ops - Check whether there is shader compiler support and bail out otherwise. - Add checks on compile and linking ops 2012-09-14 20:49:48 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Fix setup chain logic Mostly a procedural reordering. Idea is to avoid trying to setup a surface without a display.This change relies on the asumption that: 1.- set_window_handle() can happen at any time 2.- setcaps will never get called before _start() is done. If both conditions are meet the new procedure should work as expected. 2012-09-14 15:59:05 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: WIP: Reorder locking 2012-09-13 23:23:08 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix xOverlay logic Several fixes dealing with correct window creation and set_handle() ops. Tested on X11/mesa with internal window creation. 2012-09-13 00:55:33 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Actually test EGL configs before claiming support 2012-09-13 00:11:49 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Caps nego EGL fixes - Fix alloc lol on format list: Asked for 2 slices and used 3. - Reordered display & context init logic to prepare for actual config checking before claiming support for a given format. Change deals basically with setting up EGL display at start() and choose an EGL config only at setcaps time. 2012-09-12 22:11:39 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Caps nego. Start extending RGB support to a set. 2012-09-12 16:19:33 +0200 Sebastian Dröge * ext/eglgles/Makefile.am: * ext/eglgles/gsteglglessink.c: eglglessink: Fix build of static plugin 2012-09-12 09:28:22 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Drop wrong format test on _setcaps (draft leftover) 2012-09-11 13:54:09 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Support RGB24 by default 2012-09-11 13:51:25 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Instrument EGL error reporting 2012-09-11 12:04:30 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Correctly return GstFlowReturn from render_and_display() 2012-09-11 11:51:28 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Move VBO setup to it's own function 2012-09-11 10:20:16 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix render_and_display logic Switch procedure according to enabled rendering path 2012-09-10 22:59:57 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: eglglessink: Fix sample launch line with disabled window creation 2012-09-10 22:41:52 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Rename stale android leftover 2012-09-10 20:22:22 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/Makefile.am: * ext/eglgles/gsteglglessink.c: * ext/eglgles/gsteglglessink.h: eglglessink: Move eglgles Sink to ext/ #2 2012-09-10 20:00:57 -0300 Reynaldo H. Verdejo Pinochet * ext/eglgles/Android.mk: * ext/eglgles/Makefile.am: * ext/eglgles/gstvidroidsink.c: * ext/eglgles/gstvidroidsink.h: * ext/eglgles/video_platform_wrapper.c: * ext/eglgles/video_platform_wrapper.h: eglglessink: Move eglgles Sink to ext/ 2012-10-18 14:03:33 +0200 Sebastian Dröge * configure.ac: opensles: Add the opensles plugin to the list of not ported plugins 2012-10-18 13:56:55 +0200 Sebastian Dröge * configure.ac: * sys/Makefile.am: * sys/opensles/Makefile.am: opensles: Integrate into build system 2012-10-12 10:08:59 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: openslessink: Return 0 delay if the player object is in PAUSED state 2012-10-01 12:54:15 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: fixes noise on seekeing 2012-10-01 11:46:50 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: chain up on _clear_all 2012-10-01 11:14:24 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: implement the ringbuffer clear_all vmethod too 2012-10-01 10:59:08 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslessrc.c: opensles: initial attempt to reduce the src latency 2012-09-29 19:00:13 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessrc.c: opensles: sprinkle comments and cosmetic fixes 2012-09-28 15:10:19 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: check for device outputs in the mixer 2012-09-28 14:39:01 +0200 Josep Torra * sys/opensles/openslessink.c: opensles: drop 48kHz sample rate OpenSL ES implementation in Android is just a 'facade' API on top of AudioFlinger which will downsample 48kHz into 44.1kHz before delivering the audio to the underlaying hardware. We found that it suffer some sort of underrun when the downsample enters in action so relay on our good resampler to take care of that and fix the clicks issue. And get an extra bonus of a lower latency. 2012-09-27 19:24:50 +0200 Josep Torra * sys/opensles/openslessink.c: opensles: change the defaults to use 20 ms ringbuffer segments In my nexus7 seems that the internal min buffer size is 20 ms so make our segments match. 2012-09-27 18:33:09 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: ensure that we register the callback only in STOPPED Fixes the error registering the callback on the PLAYING -> PAUSE -> PLAYING state change sequence. 2012-09-27 17:46:27 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: cap queue size Just in case we want to tweak the sink behaviour with buffer-time and latency-time properties cap the queue size to something reasonable. 2012-09-27 17:32:14 +0200 Josep Torra * sys/opensles/openslessink.c: opensles: sink to provide the audioclock by default 2012-09-27 17:27:24 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: only drain half ringbuffer on start At start drain half ringbuffer into the OpenSL so the writting/reading pointers will start at half ringbuffer distance. 2012-09-27 14:52:59 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: monitor some player events 2012-09-27 07:22:47 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: rework around the _delay function 2012-09-27 05:40:46 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: implement _delay function 2012-09-27 04:00:28 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: refactor to behave more like other sinks Reflect the queue in our own data buffer. Drop the _commit hook that wasn't usefull. Don't mess with the segsize/segtotal. 2012-09-26 14:01:17 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: read player position and show it in the log 2012-09-26 12:50:42 +0200 Josep Torra * sys/opensles/openslessink.c: opensles: do not provide a clock in the sink element. 2012-09-26 12:32:44 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: rework on start/stop operations and callback function handling 2012-09-26 12:09:04 +0200 Josep Torra * sys/opensles/openslessink.c: opensles: fixes 8 bit format which is unsigned on android. 2012-09-25 19:25:01 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: attempt to reduce playback latency 2012-09-25 18:04:27 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: drop _buffer_clear calls and refactor to a shared _enqueue_cb 2012-09-21 17:04:14 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: use 0.25s segments in the sink to lower latency 2012-09-21 16:11:42 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslessrc.c: opensles: finish remaining bits for source element. 2012-09-21 14:15:12 +0200 Josep Torra * sys/opensles/openslessink.c: opensles: attempt to query device for capabilities 2012-09-20 18:41:50 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: * sys/opensles/openslessrc.c: opensles: add the mute property and handle volume/mute changes on the fly 2012-09-20 18:04:29 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: opensles: make the volume property actually work 2012-09-20 14:16:25 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: opensles: rework on the ringbufffer to properly clear segments Make the segments bigger (1 second) as it seems to be the minimum size we need to not introduce noise. Sink works in my nexus 7 with rates from 8000 to 44100 and some noise can be noticed on higger sample rates. 2012-09-20 11:50:50 +0200 Josep Torra * sys/opensles/opensles.c: * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: * sys/opensles/openslessrc.c: * sys/opensles/openslessrc.h: opensles: fixes the license headers 2012-09-20 10:41:50 +0200 Josep Torra * sys/opensles/openslesringbuffer.c: opensles: produces expected output until ringbuffer wraps Add some log messages. Fixed a bit the _player_cb function and properly advance reding in the ringbuffer. Still produces noise when the ringbuffer wraps. 2012-09-19 18:11:54 +0200 Josep Torra * sys/opensles/Makefile.am: * sys/opensles/opensles.c: * sys/opensles/openslesringbuffer.c: * sys/opensles/openslesringbuffer.h: * sys/opensles/openslessink.c: * sys/opensles/openslessink.h: * sys/opensles/openslessrc.c: * sys/opensles/openslessrc.h: opensles: Add initial draft implementation of OpenSL ES plugin. Initial draft implementation for a OpenSL ES based plugin for Android that provides audio src and sink. 2012-10-18 09:24:29 +0200 Sebastian Dröge * sys/Makefile.am: androidmedia: Use correct variable name in Makefile.am 2012-10-17 22:54:28 +0300 Raimo Järvi * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Fix compiler warning https://bugzilla.gnome.org/show_bug.cgi?id=673414 2012-10-17 17:34:26 +0100 Tim-Philipp Müller * ext/apexsink/gstapexsink.c: * ext/assrender/gstassrender.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cdaudio/gstcdaudio.c: * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: * ext/chromaprint/gstchromaprint.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurltlssink.c: * ext/dc1394/gstdc1394.c: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracenc.cc: * ext/directfb/dfbvideosink.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflitetestsrc.c: * ext/gme/gstgme.c: * ext/gsettings/gstgsettingsaudiosink.c: * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosrc.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/jasper/gstjasperdec.c: * ext/jasper/gstjasperenc.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/ofa/gstofa.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opencv/gstcvdilate.c: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcverode.c: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsobel.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: * ext/opencv/gstmotioncells.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttextoverlay.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/opus/gstopusparse.c: * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopuspay.c: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsnparsetter.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosrc.c: * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: * ext/spandsp/gstspanplc.c: * ext/spc/gstspc.c: * ext/swfdec/gstswfdec.c: * ext/teletextdec/gstteletextdec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/wayland/gstwaylandsink.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautovideoconvert.c: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstvcdparse.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstdebugspy.c: * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/faceoverlay/gstfaceoverlay.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/games/gstpuzzle.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: * gst/hdvparse/gsthdvparse.c: * gst/hls/gsthlsdemux.c: * gst/hls/gsthlssink.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/librfb/gstrfbsrc.c: * gst/liveadder/liveadder.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvemux.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/nsf/gstnsf.c: * gst/nuvdemux/gstnuvdemux.c: * gst/overlay/gstoverlay.c: * gst/patchdetect/gstpatchdetect.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstvideoparse.c: * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: * gst/removesilence/gstremovesilence.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/rtpvp8/gstrtpvp8depay.c: * gst/rtpvp8/gstrtpvp8pay.c: * gst/scaletempo/gstscaletempo.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdimux.c: * gst/sdp/gstsdpdemux.c: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/smooth/gstsmooth.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: * gst/vbidec/gstvbidec.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstzebrastripe.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * gst/vmnc/vmncdec.c: * gst/y4m/gsty4mdec.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/avc/gstavcsrc.cpp: * sys/cdrom/gstcdplayer.c: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/directdraw/gstdirectdrawsink.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/fbdev/gstfbdevsink.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisrc.c: * sys/osxvideo/osxvideosrc.c: * sys/pvr2d/gstpvrvideosink.c: * sys/qcam/gstqcamsrc.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: * sys/vcd/vcdsrc.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wininet/gstwininetsrc.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: * tests/check/elements/baseaudiovisualizer.c: * tests/check/elements/camerabin.c: * tools/gst-element-maker: Use gst_element_class_set_static_metadata() where possible. Avoids some string copies. Also re-indent some stuff. Also some indent fixes here and there. 2012-04-03 12:09:19 +0300 Raimo Järvi * configure.ac: * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: port to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=673414 2012-10-16 11:38:08 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Fix unitialized variable compiler warning 2012-10-16 11:34:04 +0200 Sebastian Dröge * configure.ac: Revert "configure: fix build" This reverts commit 5c1c35290d7f72a4bc016e8aef276d8c1bdcf37b. 2012-10-16 11:31:41 +0200 Sebastian Dröge * sys/androidmedia/Makefile.am: androidmedia: Add missing file 2012-10-16 11:32:00 +0200 Wim Taymans * configure.ac: configure: fix build 2012-10-15 16:35:57 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: androidmedia: Rename plugin 2012-10-15 16:29:00 +0200 Sebastian Dröge * configure.ac: androidmedia: Add to the not yet ported plugins 2012-10-15 16:05:39 +0200 Sebastian Dröge * configure.ac: * sys/androidmedia/gstamcvideodec.h: androidmedia: Make everything buildable 2012-10-15 14:36:55 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Don't try to use the NVidia DRM codecs 2012-10-09 10:56:30 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Try to handle format changes more gracefully And make stop() faster and more robust 2012-10-09 10:27:36 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: Add workaround for Google MP3 decoder outputting garbage in first output buffer And assume one decoded input frame per output buffer to fix timestamp handling by the base class. 2012-10-09 10:14:50 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Also add some more output format checks to the audio decoder 2012-10-09 10:13:32 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Check output format metadata some more And implement workaround for NVidia Tegra 3 not setting the slice_height. Thanks to Josep Torra for debugging this issue. 2012-10-05 15:09:17 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Add some more default channel layouts, these should be good for AAC at least 2012-10-05 14:56:22 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Don't set timestamps, the baseclass handles this for us anyway 2012-10-03 10:06:02 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: List profiles in reverse to minimize caps 2012-10-03 09:56:50 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Iterate levels in reverse order to minimize caps 2012-10-03 09:51:04 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Merge structures into caps instead of appending them 2012-09-25 10:32:26 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Use orc_memcpy() instead of memcpy() as it should be faster for larger memory areas 2012-09-24 15:32:44 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Add support for audio/mpeg-L2 for the Nexus 7 2012-09-24 15:14:09 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Add support for MPEG1/2 video 2012-09-19 14:52:27 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Ignore the *law and Vorbis decoders They are broken unfortunately. 2012-09-19 11:20:20 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Add FIXME comment for not handling odd widths/height with the TI hardware decoders Must likely an issue with the codec itself though. 2012-09-19 09:47:47 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Fix handling of I420 buffers with odd width 2012-09-18 15:38:25 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Only mpegversion=4 is supported for AAC 2012-09-18 15:28:31 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Remove some obsolete FIXMEs 2012-09-17 13:46:15 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Fix flushing logic to unbreak handling of flushing seeks 2012-09-17 12:24:30 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Fix chroma stride for I420 stride/crop conversion 2012-09-17 11:28:58 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Fix Vorbis decoding 2012-09-14 16:17:51 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Wait at most 100ms for dequeueing a buffer, and retry after that Some codecs don't fail the dequeueing if the codec is flushed, causing deadlocks when shutting down the element. 2012-09-14 16:11:33 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Release output buffers a bit earlier 2012-09-14 16:11:04 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Keep another reference of the input buffer in handle_frame() It might be unreffed in the meantime by the other thread due to finish_frame(). 2012-09-14 16:10:29 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Pass -1 as number of frames to the base class This will automatically do the right thing if timestamps are good enough 2012-09-14 16:09:48 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Use correct buffer variable 2012-09-14 14:43:31 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcvideodec.c: Always pass 1 as number of frames to finish_frame() 2012-09-14 14:42:55 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Correctly remember number of channels and samplerate 2012-09-14 14:42:36 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Don't unref input buffer from handle_frame(), it's owned by the baseclass 2012-09-14 13:31:21 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Remove invalid GST_ERROR() call 2012-09-14 13:27:33 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Only try to get the channel-mask if it is set 2012-09-14 13:25:36 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Add support for FLAC 2012-09-14 13:24:14 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Fix src template caps 2012-09-14 13:16:41 +0200 Sebastian Dröge * sys/androidmedia/gstamcaudiodec.c: Fix plugin initialization 2012-09-14 13:05:15 +0200 Sebastian Dröge * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcaudiodec.c: * sys/androidmedia/gstamcaudiodec.h: Add support for audio decoders, completely untested so far 2012-09-14 12:07:18 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Only set the SYNC_FRAME flag on the first buffer if we need to split the input 2012-09-12 14:30:40 +0200 Sebastian Dröge * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: Ignore codecs with unknown color formats for stability purposes They can be registered nonetheless if an environment variable or compile-time #define is set. 2012-09-12 13:48:01 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Implement cropping and correctly handle the different color formats 2012-09-11 16:30:00 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Really implement stride conversion for NV12 too 2012-09-11 16:24:49 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Implement stride-conversion for I420 and NV12 2012-09-11 15:56:00 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Fix typo in previous commit 2012-09-11 15:49:13 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Don't allow using non-Google codecs if we started the Java VM ourselves Hardware codecs, e.g. the TI ones, only work in processes that had their Java VM started via the non-public AndroidRuntime class. 2012-09-11 14:30:15 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Rename to amc from androidmediacodec everywhere 2012-09-11 13:08:48 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Improve debug output 2012-09-11 12:39:11 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcvideodec.c: Print the MediaFormats we get in the debug logs 2012-09-10 15:31:04 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Improve debug output 2012-09-10 15:30:55 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: * sys/androidmedia/gstamcvideodec.c: Improve level/profile handling 2012-09-10 13:39:17 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Allow registering as static plugin with the GStreamer SDK API 2012-09-10 13:30:01 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: If the buffer sizes are the same, just memcpy() to the output buffers 2012-09-10 12:56:04 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Correctly convert timestamps between us and ns 2012-09-07 16:11:26 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Set SYNC_FRAME flag on buffers if required 2012-09-07 14:22:54 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Improve flushing 2012-09-07 13:44:19 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Wait at most 0.5 seconds for getting an input buffer for EOS 2012-09-07 13:42:45 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Correctly check for flushing 2012-09-06 17:24:04 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Retry for negative return values when dequeueing buffers 2012-09-06 17:07:49 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Fix refcount bug 2012-09-06 17:07:12 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: The MediaCodec API is apparently not threadsafe between stop() and release() So we don't call release() and just hope for the GC to release the codec in time. 2012-09-06 15:44:06 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Fix plugin cache creation 2012-08-24 04:35:44 -0700 Sebastian Dröge * sys/androidmedia/gstamc.c: Cache the codec informations inside the registry Otherwise we would always load all codecs during plugin initialization which can take quite some time (because of hardware) and also loads lots of shared libraries (which number is limited by 64 in Android). 2012-08-24 09:20:26 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Properly attach and detach the current threads to the Java VM Attaching a thread after it was detached will cause segfaults, as such we use a pthread_key_t to keep track of the JNIEnv* of the attached threads and in the destructor (i.e. when the thread exits) we detach the thread. 2012-08-23 17:31:40 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Don't get the output format from the codec before it is ready Apparently things are crashing otherwise. 2012-08-23 17:31:14 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Get the input buffers from the codec 2012-08-23 17:30:45 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Fix JNI method call signatures 2012-08-23 17:30:12 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Initialize the VM will full debugging for now 2012-08-23 13:53:37 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Use NewStringUTF() instead of our own method for that 2012-08-23 12:30:23 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Add the TI format to the mapping table too 2012-08-23 12:29:40 +0200 Sebastian Dröge * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: Add another TI specific OpenMAX color format 2012-08-22 19:30:59 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideodec.c: Fixes to element/elementfactory creation 2012-08-22 19:12:23 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Some bugfixes to the codec scanning code Also it's not possible to attach a thread after it was detached once. As such we simply never detach any thread at all now. 2012-08-22 18:35:36 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: Fix some compilation errors 2012-08-20 14:13:30 +0200 Sebastian Dröge * sys/androidmedia/gstamcvideodec.c: Add important FIXME 2012-08-20 13:45:53 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamcvideodec.c: * sys/androidmedia/gstamcvideodec.h: Add video decoder element 2012-08-20 13:45:20 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: Add some more JNI wrapping 2012-08-20 13:42:24 +0200 Sebastian Dröge * sys/androidmedia/gstamc-constants.h: Add some missing color format constants 2012-08-16 15:18:19 +0200 Sebastian Dröge * sys/androidmedia/gstamc-constants.h: * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: Implement basic wrapper around MediaCodec API Ideally nothing else will be needed from the elements later. 2012-08-15 18:23:34 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: Some more WIP Scanning all codecs now and have data structures for holding codec information and codec contexts. Also function declarations for working with them. 2012-08-14 13:20:14 +0200 Sebastian Dröge * sys/androidmedia/gstamc.c: * sys/androidmedia/gstamc.h: Initial commit 2012-10-15 15:53:12 +0200 Sebastian Dröge * configure.ac: * sys/Makefile.am: androidmedia: Add androidmedia plugin 2012-10-15 11:45:04 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: And fix another deadlock caused by the update thread not correctly shutting down Conflicts: gst/hls/gsthlsdemux.c 2012-10-15 11:02:02 +0200 Sebastian Dröge * gst/hls/gsturidownloader.c: hlsdemux: Also hold the mutex before signalling the condition variable Conflicts: gst/hls/gsturidownloader.c 2012-10-15 10:53:58 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Also cancel the downloader before stopping the playlist update task 2012-10-15 10:38:16 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Only lock the mutex when it's not locked already Conflicts: gst/hls/gsthlsdemux.c 2012-10-15 10:32:47 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Fix another race condition by holding the mutex that the condition variable uses Conflicts: gst/hls/gsthlsdemux.c 2012-10-15 09:47:35 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Port some things from the last commits 2012-10-15 09:35:16 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Never ever stop a task from the task function This will deadlock. Also make sure to always post an error message if required before pausing tasks from the task function. Should fix another bunch of deadlocks. Conflicts: gst/hls/gsthlsdemux.c 2012-10-15 09:24:01 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Fix lots of deadlocks caused by race conditions in the task state handling 2012-10-12 10:57:44 +0400 Sergey N. Gorshkov * ext/rtmp/gstrtmpsink.c: rtmpsink: handle RTMP_Write() return value correctly Error might also be negative (-1). Unclear if 0 should be fatal as well though. https://bugzilla.gnome.org/show_bug.cgi?id=681111 https://bugzilla.gnome.org/show_bug.cgi?id=686009 2012-10-12 23:09:06 +0100 David Régade * ext/rtmp/gstrtmpsink.c: rtmpsink: fix memory leak from URI verification via RTMP_ParseURL() In gst_rtmp_sink_uri_set_uri(), a test is performed in order to be sure uri is correct for librtmp. This test calls RTMP_ParseURL with 3 AVal pointers as parameters: host, playpath and app. AVal is a struct with a char* + int. After RTMP_ParseURL call, host.av_val and app.av_val both refer a substring of "uri". But playpath.av_val may be the result of a malloc so it needs to be freed. https://bugzilla.gnome.org/show_bug.cgi?id=681459 2012-10-12 22:33:45 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: advance stream time when sending GAP event 2012-10-12 22:33:27 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: send language info downstream if available ... as extracted from dvd event. 2012-10-12 22:31:53 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: remove obsolete struct field 2012-10-12 12:28:44 -0700 Michael Smith * gst/rawparse/gstaudioparse.c: audioparse: Set framesize and properties correctly when taking format from caps. 2012-10-12 17:51:51 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: tweak flow return aggregation 2012-10-12 15:44:03 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: handle upstream TIME segments 2012-10-12 15:07:21 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: handle and combine downstream flow return 2012-10-12 14:50:34 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: handle new style dvd event 2012-10-11 15:29:36 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: do not add pad after no-more-pads 2012-10-11 15:27:12 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: clean up segment sending ... to use the src_segment as a basis for the sent segment, thereby properly conveying accumulated base_time etc. Also ensure src_segment is only adjusted once, so that all downstream segments are identical to avoid stream misalignment. 2012-10-11 12:07:46 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: send GAP event rather than segment updates 2012-10-11 11:51:50 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: refactor segment sending 2012-10-11 11:30:44 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: refactor init and reset 2012-10-11 11:04:33 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: no more segment closing in 1.0 2012-10-11 11:03:21 +0200 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: mpegdemux: clean up some debug statements 2012-10-11 15:31:04 +0200 Mark Nauwelaerts * ext/dts/gstdtsdec.c: dtsdec: fix buffer parsing ... to avoid feeding empty buffers to decoder. 2012-10-12 15:26:20 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: First push EOS, then destroy all programs And also properly remove the program from the subclass 2012-10-12 15:09:07 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Fix invalid read 2012-10-10 18:18:03 +0300 Sreerenj Balachandran * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: signal interlacing properly in video caps The field is called "interlace-mode" mode now and is a string. https://bugzilla.gnome.org/show_bug.cgi?id=685895 2012-10-10 14:11:43 +0200 Wim Taymans * ext/apexsink/gstapexsink.c: * gst/debugutils/fpsdisplaysink.c: * gst/inter/gstintertest.c: * tests/check/elements/dataurisrc.c: * tools/gst-app-maker: replace some playbin2 -> playbin 2012-10-10 09:58:39 +0200 Mark Nauwelaerts * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: reset frame parser after parsing caps codec data ... so as to arrange for a proper fresh state upon first frame. 2012-10-10 09:48:58 +0200 Sebastian Dröge * common: common: Update to the right commit again Was accidentially reverted to an older version in the last commit. 2012-10-09 23:00:14 -0700 Michael Smith * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: audioparse: add a mode where the caps are taken from the sink pad, and thus audioparse is only performing timestamping. 2012-10-09 21:19:15 -0700 Michael Smith * common: * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: reset frame parser after parsing codec_data buffer in caps, to avoid not correctly parsing the full first frame. 2012-10-09 13:53:19 +0200 Mark Nauwelaerts * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: properly mark config data presence ... which we allow to start at VisualObjectSequence or at VideoObject. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685709 2012-10-08 12:38:20 +0200 Sebastian Dröge * gst/fieldanalysis/gstfieldanalysis.c: fieldanalysis: Fix unitiailized variable compiler warning And also use the pad's default event function instead of just pushing to the peerpad. This makes sure any default handling of events is called. 2012-10-08 12:23:20 +0200 Sebastian Dröge * configure.ac: fieldanalysis: Remove from the NONPORTED plugins list It's supposed to be ported in 1.0.1 already. 2012-10-07 17:06:39 +0100 Tim-Philipp Müller * docs/Makefile.am: docs: add 'make upload' target for docs/ for new-release script 2012-10-07 17:03:45 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Back to development (bug fixing) === release 1.0.1 === 2012-10-07 15:57:03 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.0.1 2012-10-06 14:57:54 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 6c0b52c to 6bb6951 2012-10-03 11:05:06 -0700 Michael Smith * ext/directfb/dfbvideosink.c: * ext/wayland/waylandpool.c: * gst-libs/gst/video/gstsurfacemeta.c: * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: * sys/pvr2d/gstpvrbufferpool.c: meta info: register thread-safely. 2012-10-03 17:23:01 +0200 Sebastian Dröge * gst/rtpvp8/Makefile.am: rtpvp8: Also commit remaining uncommitted changes... 2012-10-03 09:39:28 +0000 Andoni Morales Alastruey * gst/rtpvp8/Makefile.am: rtpvp8: redifine vp8_norm to avoid duplicated symbols in static links with libvpx 2012-10-03 09:49:39 +0000 Andoni Morales Alastruey * gst/videoparsers/Makefile.am: videoparsers: fix duplicated symbols for static links with libschroedinger 2011-12-26 22:04:04 -0600 Rob Clark * gst/dvdspu/gstdvdspu-render.c: * gst/dvdspu/gstdvdspu.c: dvdspu: add YV12 and NV12 support https://bugzilla.gnome.org/show_bug.cgi?id=667220 Conflicts: gst/dvdspu/gstdvdspu.c gst/dvdspu/gstdvdspu.h gst/dvdspu/gstspu-pgs.c gst/dvdspu/gstspu-vobsub-render.c 2012-10-02 22:20:20 +1000 Jan Schmidt * ext/resindvd/rsnparsetter.c: * ext/resindvd/rsnparsetter.h: resindvd: Remove caps lock from parsetter element. All the members it used to protect in 0.10 are protected by the stream lock now. 2012-10-01 23:43:47 +1000 Jan Schmidt * ext/resindvd/rsnparsetter.c: resindvd: Update overridden caps when the DAR changes Send a new caps event downstream when we receive new orders from the VM, if there are existing caps. 2012-10-01 23:21:12 +1000 Jan Schmidt * ext/resindvd/Makefile.am: * ext/resindvd/resindvdbin.c: * ext/resindvd/rsnparsetter.c: * ext/resindvd/rsnparsetter.h: * ext/resindvd/rsnwrappedbuffer.c: * ext/resindvd/rsnwrappedbuffer.h: resindvd: Port parsetter element Port the DVD element which overrides the MPEG encoded pixel-aspect-ratio to match that requested by the DVD VM. 2012-10-01 13:52:35 +0200 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: update for latest changes 2012-09-30 20:52:30 +0200 Christophe Fergeau * ext/chromaprint/gstchromaprint.c: chromaprint: Missing unmap buffer in transform_ip When no samples have to be processed, transform_ip exits early, but the buffer it uses was not properly unmapped. https://bugzilla.gnome.org/show_bug.cgi?id=685159 2012-09-30 03:49:17 +1000 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdsrc.c: resindvd: Fiddle with segment handling for DVD. Clarify some of the terms used, and make sure to extend the stop time when the position moves past the end of the current segment (as for still frames, for example). Also, make sure to reset the position value of the segment the demuxer outputs when collecting a seamless segment. 2012-09-29 13:21:18 +0100 Tim-Philipp Müller * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: frei0r: fix plugin loading for frei0r elements that have no info.explanation We don't allow empty descriptions for elements any more. 2012-09-29 12:36:08 +0100 Tim-Philipp Müller * ext/directfb/Makefile.am: * ext/dts/gstdtsdec.c: * ext/wayland/Makefile.am: Remove some liboil references https://bugzilla.gnome.org/show_bug.cgi?id=673285 2012-09-29 12:30:20 +0100 Tim-Philipp Müller * ext/cog/Makefile.am: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: cog: remove some old elements so they don't get ported accidentally They are replaced by videoconvert and gdkpixbufoverlay 2012-09-28 22:30:39 +0400 Руслан Ижбулатов * ext/curl/gstcurlbasesink.c: curl: fix compiler warning with setsockopt() on windows The optval argument is of type const char * on windows. https://bugzilla.gnome.org/show_bug.cgi?id=685065 2012-09-28 11:59:57 -0400 Nicolas Dufresne * configure.ac: * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rmixer.h: * gst/frei0r/gstfrei0rsrc.c: * gst/frei0r/gstfrei0rsrc.h: frei0r: Port to 1.0 https://bugzilla.gnome.org/show_bug.cgi?id=681678 2012-09-26 08:20:49 +0400 Руслан Ижбулатов * configure.ac: * ext/curl/Makefile.am: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurltlssink.c: curl: fix build on win32 https://bugzilla.gnome.org/show_bug.cgi?id=684847 2012-09-28 00:06:45 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: change video-source if the user requested When going from null to ready, check if the user requested to use a new source and replace the current one. Fixes #681562 2012-09-27 23:22:37 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: pad probe ids are gulong Change variable to the correct type 2012-09-27 19:40:36 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: use correct element name when replacing the video filter The name was updated on the 0.10 -> 1.0 transition, but the gst_bin_remove was still using the old name, causing an assertion when replacing video-source-filter https://bugzilla.gnome.org/show_bug.cgi?id=681564 2012-09-26 14:50:04 +1000 Jan Schmidt * ext/soundtouch/gstpitch.cc: soundtouch: Transform timestamps properly after a seek. The segment is transformed to match the pitch conversion being applied, so make sure the timestamps being output match the configured downstream segment accordingly, and adjust the downstream segment position to match the stream time ratio also. 2012-09-18 01:13:36 +1000 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Don't send spurious 'close segment' events. Make a single segment With the new 1.0 segment semantics, there's no need to close the previous segment before sending out a new one, so don't do it. Also, adjust the outgoing segment to just be one contiguous timeline, with a base of 0. Fixes some repeating timestamps when segments change. 2012-09-24 17:25:25 +0200 Robert Swain * gst/fieldanalysis/gstfieldanalysis.c: * gst/fieldanalysis/gstfieldanalysis.h: fieldanalysis: Port to 1.0 I was also vaguely forced to overhaul some bits and pieces and mess with the data structures. This was mostly due to caps not being part of buffers and so I had to switch to using GstVideoFrame and GstVideoInfo. 2012-09-24 16:11:32 -0500 Yaakov Selkowitz * ext/chromaprint/Makefile.am: chromaprint: link against libgstbase Calls to gst_base_transform_get_type and gst_base_transform_set_passthrough require linking with libgstbase. https://bugzilla.gnome.org/show_bug.cgi?id=684740 2012-09-24 16:59:24 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Back to development (bug fixing) === release 1.0.0 === 2012-09-24 14:42:25 +0100 Tim-Philipp Müller * NEWS: * RELEASE: * configure.ac: * gst-plugins-bad.doap: * win32/common/config.h: Release 1.0.0 2012-09-24 14:42:12 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update 2012-09-23 13:15:20 -0700 David Schleef * sys/decklink/capture.cpp: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: change device instance lifecycle The decklink driver eventually crashes after repeated creation/deletion of device, input, output, and configuration objects. Change to create these at the outset and keep them around forever. 2012-09-22 13:56:57 -0700 David Schleef * sys/decklink/gstdecklinksrc.cpp: decklinksrc: Fix memory leaks Buffers now hold on to a reference for the input, so the input object doesn't get freed (and carry the buffers with it) before all the buffers are freed. 2012-09-23 21:08:57 +0100 Tim-Philipp Müller * tests/check/elements/assrender.c: tests: disable assrender unit test Doesn't work, needs fixing. 2012-09-23 21:07:07 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: disable for autoplugging until it works https://bugzilla.gnome.org/show_bug.cgi?id=683192 https://bugzilla.gnome.org/show_bug.cgi?id=684683 2012-09-22 15:00:27 -0400 Olivier Crête * gst/dtmf/gstrtpdtmfdepay.c: rtpdtmfdepay: Use 1.0-style caps negotiation and audio/x-raw 2012-09-20 18:42:50 -0400 Olivier Crête * ext/opus/gstopus.c: opusenc: Rank as Primary 2012-09-20 18:41:24 -0400 Olivier Crête * ext/opus/gstrtpopuspay.c: rtpopuspay: Allocate the rtp buffer correctly Use the right functions to allocate the rtp buffer 2012-09-22 16:08:39 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 4f962f7 to 6c0b52c 2012-09-20 00:08:56 +0100 Tim-Philipp Müller * gst/inter/gstintersubsrc.c: intersubsrc: disable timestamping code that doesn't make sense and which breaks the states check because we end up trying to divide by 0. 2012-09-18 13:17:55 +0200 Mark Nauwelaerts * sys/applemedia/corevideobuffer.c: * sys/applemedia/vtdec.c: applemedia: init videoinfo 2012-09-18 13:17:27 +0200 Mark Nauwelaerts * gst/y4m/gsty4mdec.c: y4mdec: init videoinfo 2012-09-18 00:12:52 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: docs: remove one more old include === release 0.11.99 === 2012-09-17 18:04:51 +0100 Tim-Philipp Müller * configure.ac: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.11.99 2012-09-17 17:52:27 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-directdraw.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-linsys.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-lv2.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegpsdemux.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpg123.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-patchdetect.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdi.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spandsp.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-swfdec.xml: * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-video3d.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-voamrwbenc.xml: * docs/plugins/inspect/plugin-waylandsink.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update 2012-09-17 17:13:45 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-freeze.xml: * gst/freeze/Makefile.am: * gst/freeze/gstfreeze.c: * gst/freeze/gstfreeze.h: freeze: remove freeze element, was replaced by imagefreeze in -good years ago 2012-09-17 23:59:34 +1000 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdbin.c: resindvd: Fix segment handling in the demuxer. Transfer the incoming segment base time to the src segment the demuxer sends downstream. Add some (disabled) debug to the bin for tracking outgoing timestamps. 2012-09-17 00:05:19 +0200 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Remove vp8 plugin from spec after move to good 2012-09-16 15:48:02 +0200 Sebastian Dröge * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-vp8.xml: * ext/Makefile.am: * ext/vp8/GstVP8Enc.prs: * ext/vp8/Makefile.am: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8dec.h: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: * ext/vp8/gstvp8utils.c: * ext/vp8/gstvp8utils.h: * ext/vp8/plugin.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/vp8dec.c: * tests/check/elements/vp8enc.c: vp8: Remove plugin, moved to gst-plugins-good 2012-09-16 15:25:08 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Unref input/output states when stopping the decoder 2012-09-16 15:18:20 +0200 Sebastian Dröge * ext/vp8/GstVP8Enc.prs: vp8enc: Update realtime profile to the new properties 2012-09-16 11:00:53 +0200 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update and fix spec with latest changes and F18 name scheeme 2012-09-16 10:56:07 +0200 Sebastian Dröge * configure.ac: * ext/vp8/gstvp8dec.c: vp8: Require latest libvpx release (1.1.0 from May 2012) Fixes bug #684116 and simplifies configure checks. 2012-09-15 20:23:13 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Use a string field for the profile in the caps Just for consistency with all the other codecs. 2012-09-15 19:08:33 +0200 Mark Nauwelaerts * ext/resindvd/rsndec.c: * gst/autoconvert/gstautovideoconvert.c: * tests/examples/opencv/gst_element_print_properties.c: use gst_element_factory_get_metadata to replace obsolete API 2012-09-15 00:04:07 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Correctly set profile in caps 2012-09-14 23:41:48 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: vp8: Update copyright and authors 2012-09-14 23:40:18 +0200 Sebastian Dröge * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: Update plugin docs 2012-09-08 15:38:40 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: Rework encoder properties to be more in line with the libvpx tools and API Also add all available properties. 2012-09-14 17:55:05 +0200 Mark Nauwelaerts * gst/jp2kdecimator/gstjp2kdecimator.c: * sys/decklink/gstdecklinksrc.cpp: replace _get_caps_reffed with _get_caps 2012-09-14 17:08:49 +0200 Mark Nauwelaerts * ext/apexsink/gstapexsink.c: * ext/assrender/gstassrender.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cdaudio/gstcdaudio.c: * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: * ext/chromaprint/gstchromaprint.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurltlssink.c: * ext/dc1394/gstdc1394.c: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracenc.cc: * ext/directfb/dfbvideosink.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflitetestsrc.c: * ext/gme/gstgme.c: * ext/gsettings/gstgsettingsaudiosink.c: * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosrc.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/jasper/gstjasperdec.c: * ext/jasper/gstjasperenc.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/ladspa/gstladspa.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: * ext/lv2/gstlv2.c: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/ofa/gstofa.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opencv/gstcvdilate.c: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcverode.c: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsobel.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: * ext/opencv/gstmotioncells.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttextoverlay.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/opus/gstopusparse.c: * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopuspay.c: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsnparsetter.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosrc.c: * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: * ext/spandsp/gstspanplc.c: * ext/spc/gstspc.c: * ext/swfdec/gstswfdec.c: * ext/teletextdec/gstteletextdec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/wayland/gstwaylandsink.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautovideoconvert.c: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstvcdparse.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstdebugspy.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/faceoverlay/gstfaceoverlay.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/freeze/gstfreeze.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: * gst/games/gstpuzzle.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: * gst/hdvparse/gsthdvparse.c: * gst/hls/gsthlsdemux.c: * gst/hls/gsthlssink.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/librfb/gstrfbsrc.c: * gst/liveadder/liveadder.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvemux.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/nsf/gstnsf.c: * gst/nuvdemux/gstnuvdemux.c: * gst/overlay/gstoverlay.c: * gst/patchdetect/gstpatchdetect.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstvideoparse.c: * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: * gst/removesilence/gstremovesilence.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/rtpvp8/gstrtpvp8pay.c: * gst/scaletempo/gstscaletempo.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdimux.c: * gst/sdp/gstsdpdemux.c: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/smooth/gstsmooth.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: * gst/vbidec/gstvbidec.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstzebrastripe.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * gst/vmnc/vmncdec.c: * gst/y4m/gsty4mdec.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/applemedia/avfvideosrc.m: * sys/applemedia/celvideosrc.c: * sys/applemedia/miovideosrc.c: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtenc.c: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264encbin.c: * sys/avc/gstavcsrc.cpp: * sys/cdrom/gstcdplayer.c: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsrc.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/fbdev/gstfbdevsink.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisrc.c: * sys/osxvideo/osxvideosrc.c: * sys/pvr2d/gstpvrvideosink.c: * sys/qcam/gstqcamsrc.c: * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/videodecoders.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_src.c: * sys/vcd/vcdsrc.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wininet/gstwininetsrc.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: * tests/check/elements/baseaudiovisualizer.c: * tests/check/elements/camerabin.c: * tools/gst-element-maker: replace gst_element_class_set_details_simple with gst_element_class_set_metadata 2012-09-14 12:06:23 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: init pps and sps structures before parsing ... which arranges for a valid fallback id, and allows to continue best effort processing even when sps/pps parsing fails. 2012-09-03 13:58:22 +0200 Peter Seiderer * gst/videoparsers/gsth264parse.c: gsth264parse: add comment where return should be checked. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683264 2012-09-03 13:43:03 +0200 Peter Seiderer * gst-libs/gst/codecparsers/gsth264parser.c: gsth264parser: fix Coverity found not initialized sps/pps valid member. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683264 2012-09-03 13:09:29 +0200 Peter Seiderer * gst-libs/gst/codecparsers/gsth264parser.c: gsth264parser: fix Coverity detected off by one at call to READ_UE_ALLOWED. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683263 2012-09-14 16:49:24 +0200 Wim Taymans * gst/gaudieffects/blur-example.py: * gst/gaudieffects/burn-example.py: rename some caps 2012-09-14 16:45:34 +0200 Wim Taymans * ext/assrender/gstassrender.c: * ext/cog/gstcogscale.c: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosrc.c: * ext/kate/gstkatetiger.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gsttemplatematch.c: * ext/resindvd/resin-play: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/teletextdec/gstteletextdec.c: * ext/zbar/gstzbar.c: * gst/asfmux/gstasfmux.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/faceoverlay/gstfaceoverlay.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeze/gstfreeze.c: * gst/gaudieffects/blur-example.py: * gst/gaudieffects/burn-example.py: * gst/hls/gsthlsdemux.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/nuvdemux/gstnuvdemux.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/scaletempo/gstscaletempo.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * sys/uvch264/gstuvch264_src.c: * tests/examples/capsfilter/capsfilter1.c: * tests/examples/directfb/gstdfb.c: * tests/examples/opencv/gstmotioncells_dynamic_test.c: * tests/icles/metadata_editor.c: ffmpegcolorspace is no more 2012-09-14 16:29:23 +0200 Wim Taymans * ext/opencv/gstfacedetect.c: * ext/opencv/gstmotioncells.c: * gst/asfmux/gstasfmux.c: * gst/autoconvert/gstautovideoconvert.c: * gst/interlace/gstinterlace.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/README: * win32/common/config.h: rename some caps and elements in examples 2012-09-02 20:17:14 +0200 Arnaud Vrac * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: use previously parsed visual object when parsing VOL https://bugzilla.gnome.org/show_bug.cgi?id=683254 2012-09-02 20:19:17 +0200 Arnaud Vrac * gst-libs/gst/codecparsers/gstmpeg4parser.c: mpeg4parser: parse complexity estimation header in video object layer https://bugzilla.gnome.org/show_bug.cgi?id=683254 2012-09-02 20:18:32 +0200 Arnaud Vrac * gst-libs/gst/codecparsers/gstmpeg4parser.c: mpeg4parser: fix some issues related to video object layer parsing https://bugzilla.gnome.org/show_bug.cgi?id=683254 2012-09-02 18:21:16 +0200 Arnaud Vrac * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: do not skip user data User data was skipped until now, so the user data was included when parsing the previous packet and in the config buffer. https://bugzilla.gnome.org/show_bug.cgi?id=683254 2012-09-14 02:59:08 +0100 Tim-Philipp Müller * configure.ac: Back to development === release 0.11.94 === 2012-09-14 02:50:44 +0100 Tim-Philipp Müller * ChangeLog: * configure.ac: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.11.94 2012-09-14 02:06:48 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update docs 2012-09-13 13:44:05 -0700 Jan Schmidt * tests/check/elements/parser.c: check: Verify the DTS emerging from the parser, not PTS PTS doesn't increment linearly in parsers with frame re-ordering, but DTS does. Verify that instead. 2012-09-13 13:34:16 -0700 Jan Schmidt * tests/check/libs/mpegvideoparser.c: check: Fix mpegvideoparser PAR expectation The parser (correctly) now interprets the test header using MPEG-1 semantics, so fix the test expectation. 2012-09-13 15:51:02 -0400 Olivier Crête * gst/inter/gstintervideosrc.c: interaudiosrc: Make caps writable in fixate 2012-09-13 15:06:52 -0400 Olivier Crête * configure.ac: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsrc.c: * gst/inter/gstintertest.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: inter: Port to 1.0 API Also remove a lot of empty, non-implemented methods 2012-09-12 22:58:04 -0700 Jan Schmidt * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: Disable PTS interpolation in the base parse class All these formats have re-ordered PTS which the base class gets wrong. It's better to leave them blank and let the decoder sort it out. Better yet would be to track and interpolate the timestamps in the subclasses (FIXME) 2012-09-09 16:40:00 -0700 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Advance video stream with gap events. Handle Gap events the way we used to handle segment updates and advance/fill in the video stream accordingly. Fixes 'still' menus which aren't DVD still frames, but are just a single frame with accompanying audio. 2012-09-09 16:29:52 -0700 Jan Schmidt * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: resindvd: Start with a larger subpicture queue for preroll. Shrink the queue once we're prerolled. Fixes the Fringe S1 DVD. Also, ensure we only fire no_more_pads once. 2012-09-08 19:21:47 -0700 Jan Schmidt * ext/resindvd/resindvdbin.c: resindvd: Disable input-selector syncing Until segments are better worked out. Also, use internal input-selector for audio as well 2012-09-03 09:47:30 -0700 Jan Schmidt * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: Handle Sequence Display Extension Change the way the pixel-aspect-ratio is computed by interpreting the sequence header aspect ratio info as MPEG-1 values until a sequence extension or sequence display extension is seen, and then updating the sequence header struct accordingly. Fixes incorrect anamorphic display on some MPEG-2 (DVD) sequences. 2012-09-13 01:40:42 +0100 Tim-Philipp Müller * tests/check/pipelines/mxf.c: tests: disable yet another mxf tests until the elements are ported 2012-09-13 01:34:45 +0100 Tim-Philipp Müller * ext/flite/gstflitetestsrc.c: flitetestsrc: fix caps fixation Make caps writable before changing them. 2012-09-13 01:26:28 +0100 Tim-Philipp Müller * gst/segmentclip/gstsegmentclip.c: segmentclip: fix wrong pad template unref Blows up when trying to instantiate a second clip element of the same type, like in the generic/states unit test. 2012-09-13 01:07:46 +0100 Tim-Philipp Müller * ext/wayland/gstwaylandsink.c: waylandsink: fail gracefully with an error message if we can't connect to wayland g_return_val_if_fail() is not for error handling, it's for catching programming errors in public API. Fixes problem with generic/states unit test. 2012-09-13 00:59:33 +0100 Tim-Philipp Müller * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: siren: init debug category before logging anything 2012-09-13 00:55:28 +0100 Tim-Philipp Müller * tests/check/elements/mxfdemux.c: * tests/check/elements/mxfmux.c: tests: skip mxf tests while elements haven't been ported yet 2012-09-13 00:50:04 +0100 Tim-Philipp Müller * ext/schroedinger/gstschroenc.c: schroenc: remove GST_ERROR statement that was committed by accident 2012-09-13 00:40:44 +0100 Tim-Philipp Müller * tests/check/elements/jifmux.c: tests: fix jifmux test Need to pass a GstSample now for GST_TAG_APPLICATION_DATA instead of a GstBuffer. 2012-09-12 18:34:03 -0400 Olivier Crête * configure.ac: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmenc.h: pnm: Port to 1.0 API 2012-09-12 17:34:03 -0400 Olivier Crête * gst/freeze/gstfreeze.c: * gst/freeze/gstfreeze.h: freeze: Use a GPtrArray instead of a GQueue This way, the most common function (changing buffers) becomes O(1) instead of O(n) 2012-09-12 17:24:26 -0400 Olivier Crête * configure.ac: * gst/freeze/gstfreeze.c: * gst/freeze/gstfreeze.h: freeze: Port to 1.0 API 2012-09-12 16:23:47 -0400 Olivier Crête * gst/speed/gstspeed.c: * gst/speed/gstspeed.h: speed: Various 1.0 style additions Use GstAudioInfo everywhere, etc 2012-09-10 17:16:07 +0300 Sreerenj Balachandran * configure.ac: * gst/speed/Makefile.am: * gst/speed/gstspeed.c: speed: port to 0.11 https://bugzilla.gnome.org/show_bug.cgi?id=683727 2012-09-12 16:03:06 -0400 Olivier Crête * configure.ac: * gst/liveadder/liveadder.c: * gst/liveadder/liveadder.h: liveadder: port to 1.0 API 2012-09-12 21:13:35 +0200 Stefan Sauer * gst/asfmux/gstasfmux.c: * gst/debugutils/gstcompare.c: * gst/frei0r/gstfrei0rmixer.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mxf/mxfmux.c: * gst/videomeasure/gstvideomeasure_ssim.c: collectpads: remove gst_collect_pads_add_pad_full Rename gst_collect_pads_add_pad_full() to gst_collect_pads_add_pad() and fix all invocations. 2012-09-12 12:14:53 -0400 Olivier Crête * configure.ac: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: siren: Port to 1.0 API 2012-09-12 15:08:01 +0200 Edward Hervey * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Use default query handlers where needed And fixup getcaps handler while I'm at it 2012-09-12 09:42:09 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: port tagsetter mode setting code Check directly with GST_IS_TAG_SETTER instead of using the deprecated GstImplementsInterface Fixes the image tag setting unit test 2012-09-12 13:03:28 +0100 Tim-Philipp Müller * tests/check/pipelines/streamheader.c: tests: fix win32 build even more 2012-09-12 13:17:03 +0200 Mark Nauwelaerts * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: port to the new GLib thread API 2012-09-12 11:08:25 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix aspect ratio calculation. ASPECT_HORIZ_SIZE and ASPECT_VERT_SIZE are syntax elements that hold binary encodings of sizes ranging from 1 to 256. Thus, the calculated pixel-aspect-ratio was off by one. Signed-off-by: Gwenole Beauchesne https://bugzilla.gnome.org/show_bug.cgi?id=683858 2012-09-12 11:01:34 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst/videoparsers/gsth264parse.c: codecparsers: h264parse: don't use anonymous unions. Anonymous union is an ISO C (2011) feature that is not exposed in compilers strictly conforming to the previous standard. Signed-off-by: Gwenole Beauchesne 2012-09-12 11:21:41 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: compute pixel aspect ratio. Signed-off-by: Simon Farnsworth Signed-off-by: Gwenole Beauchesne 2012-09-12 09:48:47 +0100 Tim-Philipp Müller * tests/check/pipelines/streamheader.c: tests: attempt to get disabled streamheader test to compile on win32 Though it probably won't work, but then it's disabled. 2012-09-12 09:10:35 +0200 Peter Korsgaard * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * gst/jpegformat/gstjpegparse.c: opus + jpegformat: unbreak non-debug build opus + jpegformat plugin builds fail when gstreamer is configured with --disable-gst-debug as they are checking the GST_DISABLE_DEBUG symbol instead of GST_DISABLE_GST_DEBUG. Signed-off-by: Peter Korsgaard https://bugzilla.gnome.org/show_bug.cgi?id=683850 2012-09-12 01:35:42 +0100 Tim-Philipp Müller * gst/jpegformat/Makefile.am: jpegformat: don't link to libgstinterfaces which doesn't exist any longer 2012-09-11 20:30:55 -0400 Olivier Crête * ext/spandsp/gstspanplc.c: spanplc: Don't unref too much, don't forward gap event 2012-09-11 20:19:48 -0400 Olivier Crête * configure.ac: * ext/spandsp/gstspanplc.c: * ext/spandsp/gstspanplc.h: spanplc: Port to 1.0 API 2012-09-11 19:41:31 -0400 Olivier Crête * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: Don't try to sync controller values to invalid timestamp 2012-09-11 19:36:24 -0400 Olivier Crête * configure.ac: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * tests/check/elements/jpegparse.c: jpegparse: Finish port to 1.0 API 2012-09-11 18:55:11 -0400 Olivier Crête * tests/check/elements/autoconvert.c: test: Simplify autoconvert test 2012-09-11 18:53:43 -0400 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Look at all possibilities for accept-caps even if there is a selected subelement If the accept-caps succeeds with a different subelement, then the subsequent caps event will change the current subelement. 2012-09-11 18:02:28 -0400 Olivier Crête * tests/check/elements/opus.c: test: Flush opus encoder between tests 2012-09-11 18:01:58 -0400 Olivier Crête * tests/check/elements/opus.c: test: Flush opus encoder between tests 2012-09-10 18:20:48 -0400 Youness Alaoui * configure.ac: * sys/uvch264/gstuvch264_src.c: * sys/uvch264/gstuvch264_src.h: uvch264: Make gudev/libusb a hard dependency and remove XU_FIND_UNIT ioctl support Conflicts: sys/uvch264/gstuvch264_src.c 2012-09-11 17:47:16 +0200 Mark Nauwelaerts * ext/modplug/gstmodplug.cc: * ext/resindvd/gstmpegdemux.c: * gst/asfmux/gstasfparse.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/rawparse/gstrawparse.c: ext, gst: only activate in pull mode if upstream is seekable 2012-09-11 15:07:02 +0100 Tim-Philipp Müller * gst/festival/gstfestival.c: festival: timed text is text/x-raw now 2012-09-11 15:02:00 +0200 Mark Nauwelaerts * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: * sys/d3dvideosink/directx/dx.c: d3dvideosink: port to the new GLib thread API 2012-09-11 14:32:04 +0200 Mark Nauwelaerts * tests/check/elements/mpeg2enc.c: * tests/check/elements/mplex.c: tests: mpeg2enc, mplex: port to the new GLib thread API 2012-09-11 14:31:49 +0200 Mark Nauwelaerts * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: port to the new GLib thread API 2012-09-11 01:52:46 +0100 Tim-Philipp Müller * configure.ac: * tests/check/Makefile.am: * tests/check/pipelines/.gitignore: gdp: move gdp plugin here from -base Needs some reworking. 2012-09-09 18:05:55 +0100 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: dump bytes into debug log using GST_MEMDUMP Instead of home-grown solution. 2012-07-27 15:21:51 +0200 Wim Taymans * gst/gdp/dataprotocol.c: update for new variable names 2012-07-02 12:52:17 +0100 Tim-Philipp Müller * tests/check/pipelines/streamheader.c: tests: use multifdsink for streamheader test Use multifdsink for pipes instead of multisocketsink, to avoid "creating GSocket from fd 9: Socket operation on non-socket "criticals from Gio. Test still fails, but it fails in a different way now. 2012-04-25 18:07:21 +0200 Mark Nauwelaerts * gst/gdp/gstgdppay.c: gdppay: plug buffer leak 2012-04-19 14:41:40 +0200 Stefan Sauer * tests/check/pipelines/streamheader.c: tests: initialize variables 2012-04-10 00:45:16 +0100 Tim-Philipp Müller * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: Use new gst_element_class_set_static_metadata() 2012-04-05 15:11:05 +0200 Sebastian Dröge * gst/gdp/gstgdp.c: gst: Update for GST_PLUGIN_DEFINE() API change 2012-04-01 18:11:23 +0200 Wim Taymans * gst/gdp/gstgdppay.c: Improve buffer allocation of wrapped memory 2012-03-30 18:12:39 +0200 Wim Taymans * gst/gdp/gstgdppay.c: update for buffer api change 2012-03-28 12:48:55 +0200 Wim Taymans * gst/gdp/gstgdppay.c: update for buffer changes 2012-03-15 13:32:08 +0100 Wim Taymans * gst/gdp/dataprotocol.c: update for memory api changes 2012-02-22 02:05:24 +0100 Wim Taymans * gst/gdp/gstgdppay.c: update for new memory api 2012-02-03 11:38:55 +0100 Wim Taymans * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: gdp: fixup unit tests 2012-02-03 11:38:15 +0100 Wim Taymans * gst/gdp/gstgdppay.c: gdppay: fixup for changed caps Try to send the streamheader after the first buffer. 2012-02-03 11:37:21 +0100 Wim Taymans * gst/gdp/dataprotocol.c: dataprotocol: don't define default Category Since we now include this into the unit tests directly, don't define the default category macro because it conflicts with check. 2012-01-30 17:16:17 +0100 Wim Taymans * gst/gdp/dataprotocol.c: * gst/gdp/gstgdppay.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/pipelines/streamheader.c: update for HEADER flag changes 2012-01-20 16:11:54 +0100 Wim Taymans * gst/gdp/dataprotocol.c: * gst/gdp/gstgdpdepay.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/pipelines/streamheader.c: port to new map API 2012-01-19 15:32:52 +0100 Wim Taymans * tests/check/pipelines/streamheader.c: tests: fix some tests 2012-01-04 16:41:53 +0100 Wim Taymans * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: * tests/check/pipelines/streamheader.c: tests: port and enable more unit tests 2011-12-25 23:19:57 +0000 Tim-Philipp Müller * gst/gdp/Makefile.am: * gst/gdp/dataprotocol.c: * gst/gdp/dp-private.h: * gst/gdp/gstgdp.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: gdp: move dataprotocol library into gdp plugin and make private We have removed things like protocol=gdp in the tcp elements in favour of explicit gdppay/depay elements, so there's no need to keep a public API and library for now. We can still add it back later. Someone needs to think hard about 0.11 and gdp anyway one of these days. 2011-11-11 17:17:43 +0100 Wim Taymans * gst/gdp/dataprotocol.h: gdp: fix header files Ensure correct indentation and retab Make sure all structure have padding 2011-08-16 17:32:20 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: rename buffer PREROLL -> LIVE flag Rename the GST_BUFFER_FLAG_PREROLL to GST_BUFFER_FLAG_LIVE and give the new flag a meaning. The old PREROLL flag never had a clear meaning. 2011-06-10 13:40:57 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: make new _buffer_allocate method Make a new method to allocate a buffer + memory that takes the allocator and the alignment as parameters. Provide a macro for the old method but prefer to use the new method to encourage plugins to negotiate the allocator properly. 2011-05-13 18:07:24 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: Rework GstSegment handling Improve GstSegment, rename some fields. The idea is to have the GstSegment structure represent the timing structure of the buffers as they are generated by the source or demuxer element. gst_segment_set_seek() -> gst_segment_do_seek() Rename the NEWSEGMENT event to SEGMENT. Make parsing of the SEGMENT event into a GstSegment structure. Pass a GstSegment structure when making a new SEGMENT event. This allows us to pass the timing info directly to the next element. No accumulation is needed in the receiving element, all the info is inside the element. Remove gst_segment_set_newsegment(): This function as used to accumulate segments received from upstream, which is now not needed anymore because the segment event contains the complete timing information. 2011-05-10 11:50:16 +0200 Wim Taymans * gst/gdp/dataprotocol.c: gdp: Hide the GstStructure in GstEvent Hide the GstStructure of the event in the implementation specific part so that we can change it. Add methods to check and make the event writable. Add a new method to get a writable GstStructure of the element. Avoid directly accising the event structure. 2011-05-02 16:00:52 +0300 Stefan Kost * gst/gdp/dataprotocol.h: gdp: add docs for GstDPPacketizer 2011-03-21 18:13:55 +0100 Wim Taymans * gst/gdp/dataprotocol.c: gdp: port code to new buffer data API 2010-12-06 19:40:03 +0100 Wim Taymans * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: gdp: remove deprecated code 2010-10-08 09:34:47 +0100 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: make public enum _get_type() functions thread-safe Not that it is likely to matter in practice, but since these are public API they should probably be thread-safe. 2010-10-08 00:38:39 +0100 Tim-Philipp Müller * gst/gdp/dataprotocol.c: gdp: dataprotocol, lfocontrolsource: fix enum value name in enums that are public API So run-time bindings can introspect the names correctly (we abuse this field as description field only in elements, not for public API (where the description belongs into the gtk-doc chunk). https://bugzilla.gnome.org/show_bug.cgi?id=629946 2010-03-02 22:58:06 +0100 Benjamin Otte * gst/gdp/dataprotocol.c: gdp: Fixes for -Wmissing-declarations -Wmissing-prototypes Also adds those flags to the configure warning flags https://bugzilla.gnome.org/show_bug.cgi?id=611692 2010-03-02 23:51:18 +0100 Benjamin Otte * gst/gdp/dp-private.h: gdp: Make code safe for -Wredundant-decls Adds that warning to configure.ac Includes a tiny change of the GST_BOILERPLATE_FULL() macro: The get_type() function is no longer declared before being defined. https://bugzilla.gnome.org/show_bug.cgi?id=611692 2009-11-27 16:39:37 +0200 Stefan Kost * gst/gdp/dataprotocol.c: gdp: fix broken xrefs in docs 2008-06-30 09:38:45 +0000 Sebastian Dröge gdp: Don't write to the same region of memory as a uint64 and uint16 as this breaks ... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: Don't write to the same region of memory as a uint64 and uint16 as this breaks strict aliasing rules and apparantly breaks on PPC and s390. Thanks to Sjoerd Simons for analysing. Fixes bug #348114. 2008-03-27 15:23:55 +0000 Michael Smith gdp: When calculating GDP body CRC, use the correct pointer. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event_1_0): When calculating GDP body CRC, use the correct pointer. Fixes part of #522401. 2008-02-29 12:41:33 +0000 Sebastian Dröge gdp: Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static... Original commit message from CVS: * gst/gstconfig.h.in: * libs/gst/base/gstcollectpads.c: (gst_collect_pads_read_buffer): * libs/gst/check/gstcheck.c: (gst_check_log_message_func), (gst_check_log_critical_func), (gst_check_drop_buffers), (gst_check_element_push_buffer_list): * libs/gst/controller/gstcontroller.c: (gst_controller_get), (gst_controller_get_type): * libs/gst/controller/gsthelper.c: (gst_object_control_properties), (gst_object_get_controller), (gst_object_get_control_source): * libs/gst/controller/gstinterpolationcontrolsource.c: (gst_interpolation_control_source_new): * libs/gst/controller/gstlfocontrolsource.c: (gst_lfo_control_source_new): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_event_from_packet_0_2): * plugins/elements/gstfdsrc.c: * plugins/elements/gstmultiqueue.c: * plugins/elements/gsttee.c: * plugins/elements/gsttypefindelement.c: * plugins/indexers/gstfileindex.c: (_file_index_id_save_xml), (gst_file_index_add_association): * plugins/indexers/gstmemindex.c: * tests/benchmarks/gstpollstress.c: (mess_some_more): * tests/check/elements/queue.c: (setup_queue): * tests/check/gst/gstpipeline.c: * tests/check/libs/collectpads.c: (setup), (teardown), (gst_collect_pads_suite): * tests/examples/adapter/adapter_test.c: * tests/examples/metadata/read-metadata.c: (make_pipeline): * tests/examples/xml/createxml.c: * tests/examples/xml/runxml.c: * tools/gst-inspect.c: * tools/gst-run.c: Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static, using NULL instead of 0 for pointers, not using variable sized arrays on the stack, moving variable declarations to the beginning of a block and using "foo (void)" instead of "foo ()" for declarations. 2008-01-08 02:07:38 +0000 Damien Lespiau gdp: Fix empty prototypes. Fixes bug #507957. Original commit message from CVS: Patch by: Damien Lespiau * libs/gst/controller/gstcontroller.h: * libs/gst/controller/gstcontrolsource.h: * libs/gst/controller/gstinterpolationcontrolsource.h: * libs/gst/controller/gstlfocontrolsource.h: * libs/gst/dataprotocol/dataprotocol.h: Fix empty prototypes. Fixes bug #507957. 2007-11-01 21:50:05 +0000 Tim-Philipp Müller gdp: g_type_class_ref() other types as well, see #349410 and #64764. Original commit message from CVS: * gst/gst.c: (init_post): * gst/gstevent.c: (_gst_event_initialize): * gst/gstquery.c: (_gst_query_initialize): * libs/gst/dataprotocol/dataprotocol.c (gst_dp_init): g_type_class_ref() other types as well, see #349410 and #64764. * gst/gstbuffer.c: (_gst_buffer_initialize): * gst/gstmessage.c: (_gst_message_initialize): Simplify existing g_type_class_ref(). 2006-10-05 14:26:08 +0000 Tim-Philipp Müller gdp: Printf fixes. Original commit message from CVS: * gst/gstpad.c: (pre_activate): * gst/gstregistry.c: (gst_registry_scan_path_level): * gst/gstregistryxml.c: (load_plugin): * libs/gst/controller/gstcontroller.c: (gst_controlled_property_set_interpolation_mode): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event_1_0): * libs/gst/net/gstnetclientclock.c: (gst_net_client_clock_observe_times): * plugins/elements/gstfdsrc.c: (gst_fd_src_create): Printf fixes. 2006-08-11 15:26:33 +0000 Andy Wingo gdp: GST_DISABLE_DEPRECATED is only for users of API that don't want to see deprecated functions in the headers; people th... Original commit message from CVS: 2006-08-11 Andy Wingo * configure.ac: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new): * tests/check/libs/gdp.c: (gst_dp_suite): GST_DISABLE_DEPRECATED is only for users of API that don't want to see deprecated functions in the headers; people that want to compile out deprecated code should pass -DGST_REMOVE_DEPRECATED into the CFLAGS. Fixes the build of multifdsink, or will soon.. 2006-08-10 19:46:14 +0000 Stefan Kost gdp: add gst_object_{s,g}et_control_rate(), add private data section, fix docs Original commit message from CVS: * docs/libs/gstreamer-libs-sections.txt: * libs/gst/controller/gstcontroller.c: (_gst_controller_get_property), (_gst_controller_set_property), (_gst_controller_init), (_gst_controller_class_init): * libs/gst/controller/gstcontroller.h: * libs/gst/controller/gsthelper.c: (gst_object_get_control_rate), (gst_object_set_control_rate): API: add gst_object_{s,g}et_control_rate(), add private data section, fix docs * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packetizer_new): * libs/gst/dataprotocol/dataprotocol.h: add deprecation guards to make gtk-doc happy and allow disabling cruft 2006-08-02 15:19:30 +0000 Wim Taymans gdp: Make debug category static Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any), (gst_dp_crc), (gst_dp_header_payload_length), (gst_dp_header_payload_type), (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0), (gst_dp_buffer_from_header), (gst_dp_caps_from_packet), (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet), (gst_dp_validate_header), (gst_dp_validate_payload): Make debug category static Constify the crc table. Do some more arg checking in public functions. Fix some docs and do some small cleanups. * tests/check/libs/gdp.c: (GST_START_TEST), (gst_dp_suite): Add some more checks to see if GDP deals with bogus input. 2006-07-13 14:02:16 +0000 Thomas Vander Stichele gdp: fix failure to deserialize event packets with empty payload (only ev... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_event_from_packet_1_0): Fixes #347337: failure to deserialize event packets with empty payload (only event type) 2006-06-13 19:24:34 +0000 Thomas Vander Stichele gdp: add a gdp image to the docs Original commit message from CVS: * docs/README: * docs/images/gdp-header.svg: add a gdp image * docs/libs/Makefile.am: * docs/libs/gdp-header.png: * libs/gst/dataprotocol/dataprotocol.c: add it to the API docs * docs/manual/intro-motivation.xml: fix typo 2006-06-06 14:29:54 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: add note to docs about GDP versioning; remove tmpl file Original commit message from CVS: add note to docs about GDP versioning; remove tmpl file 2006-06-06 14:24:00 +0000 Thomas Vander Stichele gdp: add a GstDPPacketizer object, and create/free functions Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer_any), (gst_dp_packet_from_caps_any), (gst_dp_version_get_type), (gst_dp_init), (gst_dp_header_from_buffer), (gst_dp_header_from_buffer_1_0), (gst_dp_packet_from_caps), (gst_dp_packet_from_caps_1_0), (gst_dp_packet_from_event), (gst_dp_packet_from_event_1_0), (gst_dp_event_from_packet_0_2), (gst_dp_event_from_packet_1_0), (gst_dp_event_from_packet), (gst_dp_packetizer_new), (gst_dp_packetizer_free): * libs/gst/dataprotocol/dataprotocol.h: API: add a GstDPPacketizer object, and create/free functions API: add GstDPVersion enum Add 1.0 event function that uses the string serialization Serialize more useful buffer flags Fixes #343988 2006-06-02 16:46:19 +0000 Thomas Vander Stichele gdp: factor out CRC code Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer), (gst_dp_packet_from_caps), (gst_dp_packet_from_event): factor out CRC code 2006-06-02 10:58:47 +0000 Thomas Vander Stichele gdp: factor out some common header init code Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer), (gst_dp_packet_from_caps), (gst_dp_packet_from_event): factor out some common header init code 2006-06-02 10:08:31 +0000 Thomas Vander Stichele gdp: make gst_dp_crc() public Original commit message from CVS: * docs/libs/gstreamer-libs-sections.txt: * docs/libs/tmpl/gstdataprotocol.sgml: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc): * libs/gst/dataprotocol/dataprotocol.h: API: make gst_dp_crc() public 2006-06-01 11:13:44 +0000 Thomas Vander Stichele gdp: make sure we zero the whole ABI-compatible area Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer): make sure we zero the whole ABI-compatible area 2006-05-08 15:53:12 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: whitespace, comment, doc fixup Original commit message from CVS: whitespace, comment, doc fixup 2006-04-28 13:40:15 +0000 Michael Smith gdp: Fixes in reading/writing events over GDP (not currently used?) - dereferencing ... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event), (gst_dp_event_from_packet): Fixes in reading/writing events over GDP (not currently used?) - dereferencing NULL events for unknown/invalid event types, memory leak, and change g_warning to GST_WARNING. 2006-03-10 15:30:27 +0000 Michael Smith gdp: Fix docs for dataprocotol to not get the return types completely wrong for a fe... Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: Fix docs for dataprocotol to not get the return types completely wrong for a few functions. 2005-12-18 16:04:41 +0000 Wim Taymans gdp: Documentation updates. Original commit message from CVS: * libs/gst/base/gstadapter.c: * libs/gst/base/gstadapter.h: * libs/gst/base/gstbasesink.c: (gst_base_sink_class_init), (gst_base_sink_get_position): * libs/gst/base/gstbasesink.h: * libs/gst/base/gstbasesrc.c: (gst_base_src_class_init), (gst_base_src_default_query), (gst_base_src_default_do_seek), (gst_base_src_do_seek), (gst_base_src_perform_seek), (gst_base_src_send_event), (gst_base_src_update_length), (gst_base_src_get_range), (gst_base_src_loop), (gst_base_src_start): * libs/gst/base/gstbasesrc.h: * libs/gst/base/gstbasetransform.h: * libs/gst/base/gstcollectpads.h: * libs/gst/base/gstpushsrc.c: * libs/gst/base/gstpushsrc.h: * libs/gst/dataprotocol/dataprotocol.c: * libs/gst/dataprotocol/dataprotocol.h: * libs/gst/net/gstnetclientclock.h: * libs/gst/net/gstnettimeprovider.h: Documentation updates. 2005-10-13 16:26:12 +0000 Andy Wingo gdp: Fix Timmeke Waymans bug. Original commit message from CVS: 2005-10-13 Andy Wingo * libs/gst/dataprotocol/dataprotocol.c (gst_dp_packet_from_caps): Fix Timmeke Waymans bug. (gst_dp_caps_from_packet): Make sure we pass a NUL-terminated string of the proper length to gst_caps_from_string. There's a potential for, before this fix, that this could cause someone connecting over the network to cause a segfault if the payload is not NUL-terminated. 2005-10-10 23:55:39 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: fix more valgrind warnings before turning up the heat Original commit message from CVS: fix more valgrind warnings before turning up the heat 2005-10-08 17:17:25 +0000 Wim Taymans gdp: It's about time we bump the version number. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer), (gst_dp_packet_from_caps), (gst_dp_packet_from_event): * libs/gst/dataprotocol/dataprotocol.h: * libs/gst/dataprotocol/dp-private.h: It's about time we bump the version number. Since event types don't fit in the guint8 anymore describing the payload type, make payload type 16 bits wide. 2005-09-27 16:30:26 +0000 Andy Wingo gdp: Fix error-checking return values. Original commit message from CVS: 2005-09-27 Andy Wingo * libs/gst/dataprotocol/dataprotocol.c: Fix error-checking return values. 2005-07-27 19:00:36 +0000 Wim Taymans gdp: Fix serialization of seek events. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event), (gst_dp_event_from_packet): Fix serialization of seek events. 2005-07-27 18:33:03 +0000 Wim Taymans gdp: Some docs updates Original commit message from CVS: * CHANGES-0.9: * docs/design/part-TODO.txt: * docs/design/part-events.txt: Some docs updates * gst/base/gstbasesink.c: (gst_base_sink_handle_object), (gst_base_sink_event), (gst_base_sink_do_sync), (gst_base_sink_activate_push), (gst_base_sink_activate_pull): * gst/base/gstbasesrc.c: (gst_base_src_send_discont), (gst_base_src_do_seek), (gst_base_src_event_handler), (gst_base_src_loop): * gst/base/gstbasetransform.c: (gst_base_transform_transform_caps), (gst_base_transform_configure_caps), (gst_base_transform_setcaps), (gst_base_transform_get_size), (gst_base_transform_buffer_alloc), (gst_base_transform_event), (gst_base_transform_handle_buffer), (gst_base_transform_set_passthrough), (gst_base_transform_is_passthrough): * gst/elements/gstfakesink.c: (gst_fake_sink_event): * gst/elements/gstfilesink.c: (gst_file_sink_event): Event updates. * gst/gstbuffer.h: Use faster casts. * gst/gstelement.c: (gst_element_seek): * gst/gstelement.h: Update gst_element_seek. * gst/gstevent.c: (gst_event_finalize), (_gst_event_copy), (gst_event_new), (gst_event_new_custom), (gst_event_get_structure), (gst_event_new_flush_start), (gst_event_new_flush_stop), (gst_event_new_eos), (gst_event_new_newsegment), (gst_event_parse_newsegment), (gst_event_new_tag), (gst_event_parse_tag), (gst_event_new_filler), (gst_event_new_qos), (gst_event_parse_qos), (gst_event_new_seek), (gst_event_parse_seek), (gst_event_new_navigation): * gst/gstevent.h: Make GstEvent use GstStructure. Add parsing code, make sure the API is sufficiently generic. Mark possible directions of events and serialization. * gst/gstmessage.c: (gst_message_init), (gst_message_finalize), (_gst_message_copy), (gst_message_new_segment_start), (gst_message_new_segment_done), (gst_message_new_custom), (gst_message_parse_segment_start), (gst_message_parse_segment_done): Small cleanups. * gst/gstpad.c: (gst_pad_get_caps_unlocked), (gst_pad_accept_caps), (gst_pad_set_caps), (gst_pad_send_event): Update for new events. Catch events sent in wrong directions. * gst/gstqueue.c: (gst_queue_link_src), (gst_queue_handle_sink_event), (gst_queue_chain), (gst_queue_loop), (gst_queue_handle_src_query): Event updates. * gst/gsttag.c: * gst/gsttag.h: Remove event code from this file. * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_event), (gst_dp_event_from_packet): Event updates. 2005-07-05 10:20:14 +0000 Wim Taymans gdp: Ported dataprotol to 0.9. Original commit message from CVS: * configure.ac: * libs/gst/dataprotocol/Makefile.am: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_validate_packet): * libs/gst/dataprotocol/dataprotocol.h: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in: * pkgconfig/gstreamer-dataprotocol.pc.in: Ported dataprotol to 0.9. Added pkgconfig files. 2005-05-16 20:21:55 +0000 David Schleef gdp: remove GstData checks Original commit message from CVS: * check/Makefile.am: remove GstData checks * check/gst-libs/gdp.c: (START_TEST): fix for API changes * gst/Makefile.am: add miniobject, remove data * gst/gst.h: add miniobject, remove data * gst/gstdata.c: remove * gst/gstdata.h: remove * gst/gstdata_private.h: remove * gst/gsttypes.h: remove GstEvent and GstMessage * gst/gstelement.c: (gst_element_post_message): fix for API changes * gst/gstmarshal.list: change BOXED -> OBJECT Implement GstMiniObject. * gst/gstminiobject.c: * gst/gstminiobject.h: Modify to be subclasses of GstMiniObject. * gst/gstbuffer.c: (_gst_buffer_initialize), (gst_buffer_get_type), (gst_buffer_class_init), (gst_buffer_finalize), (_gst_buffer_copy), (gst_buffer_init), (gst_buffer_new), (gst_buffer_new_and_alloc), (gst_subbuffer_get_type), (gst_subbuffer_init), (gst_buffer_create_sub), (gst_buffer_is_span_fast), (gst_buffer_span): * gst/gstbuffer.h: * gst/gstevent.c: (_gst_event_initialize), (gst_event_get_type), (gst_event_class_init), (gst_event_init), (gst_event_finalize), (_gst_event_copy), (gst_event_new): * gst/gstevent.h: * gst/gstmessage.c: (_gst_message_initialize), (gst_message_get_type), (gst_message_class_init), (gst_message_init), (gst_message_finalize), (_gst_message_copy), (gst_message_new), (gst_message_new_error), (gst_message_new_warning), (gst_message_new_tag), (gst_message_new_state_changed), (gst_message_new_application): * gst/gstmessage.h: * gst/gstprobe.c: (gst_probe_perform), (gst_probe_dispatcher_dispatch): * gst/gstprobe.h: * gst/gstquery.c: (_gst_query_initialize), (gst_query_get_type), (gst_query_class_init), (gst_query_finalize), (gst_query_init), (_gst_query_copy), (gst_query_new): Update elements for GstData -> GstMiniObject changes * gst/gstquery.h: * gst/gstqueue.c: (gst_queue_finalize), (gst_queue_locked_flush), (gst_queue_chain), (gst_queue_loop): * gst/elements/gstbufferstore.c: (gst_buffer_store_add_buffer_func), (gst_buffer_store_cleared_func), (gst_buffer_store_get_buffer): * gst/elements/gstfakesink.c: (gst_fakesink_class_init), (gst_fakesink_render): * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init): * gst/elements/gstfilesrc.c: (gst_mmap_buffer_get_type), (gst_mmap_buffer_class_init), (gst_mmap_buffer_init), (gst_mmap_buffer_finalize), (gst_filesrc_map_region), (gst_filesrc_create_read): * gst/elements/gstidentity.c: (gst_identity_class_init): * gst/elements/gsttypefindelement.c: (gst_type_find_element_src_event), (free_entry_buffers), (gst_type_find_element_handle_event): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_header_from_buffer): * libs/gst/dataprotocol/dataprotocol.h: * libs/gst/dataprotocol/dp-private.h: 2005-05-04 21:29:44 +0000 Andy Wingo gdp: GCC 4 fixen. Original commit message from CVS: 2005-05-04 Andy Wingo * check/Makefile.am: * docs/gst/tmpl/gstatomic.sgml: * docs/gst/tmpl/gstplugin.sgml: * gst/base/gstbasesink.c: (gst_basesink_activate): * gst/base/gstbasesrc.c: (gst_basesrc_class_init), (gst_basesrc_init), (gst_basesrc_set_dataflow_funcs), (gst_basesrc_query), (gst_basesrc_set_property), (gst_basesrc_get_property), (gst_basesrc_check_get_range), (gst_basesrc_activate): * gst/base/gstbasesrc.h: * gst/base/gstbasetransform.c: (gst_base_transform_sink_activate), (gst_base_transform_src_activate): * gst/elements/gstelements.c: * gst/elements/gstfakesrc.c: (gst_fakesrc_class_init), (gst_fakesrc_set_property), (gst_fakesrc_get_property): * gst/elements/gsttee.c: (gst_tee_sink_activate): * gst/elements/gsttypefindelement.c: (find_element_get_length), (gst_type_find_element_checkgetrange), (gst_type_find_element_activate): * gst/gstbin.c: (gst_bin_save_thyself), (gst_bin_restore_thyself): * gst/gstcaps.c: (gst_caps_do_simplify), (gst_caps_save_thyself), (gst_caps_load_thyself): * gst/gstelement.c: (gst_element_pads_activate), (gst_element_save_thyself), (gst_element_restore_thyself): * gst/gstpad.c: (gst_pad_load_and_link), (gst_pad_save_thyself), (gst_ghost_pad_save_thyself), (gst_pad_check_pull_range): * gst/gstpad.h: * gst/gstxml.c: (gst_xml_write), (gst_xml_parse_doc), (gst_xml_parse_file), (gst_xml_parse_memory), (gst_xml_get_element), (gst_xml_make_element): * gst/indexers/gstfileindex.c: (gst_file_index_load), (_file_index_id_save_xml), (gst_file_index_commit): * gst/registries/gstlibxmlregistry.c: (read_string), (read_uint), (read_enum), (load_pad_template), (load_feature), (load_plugin), (load_paths): * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_packet_from_caps), (gst_dp_packet_from_event), (gst_dp_caps_from_packet): * tools/gst-complete.c: (main): * tools/gst-compprep.c: (main): * tools/gst-inspect.c: (print_element_properties_info): * tools/gst-launch.c: (xmllaunch_parse_cmdline): * tools/gst-xmlinspect.c: (print_element_properties): GCC 4 fixen. 2005-03-21 17:34:02 +0000 Wim Taymans * gst/gdp/dataprotocol.c: gdp: Next big merge. Original commit message from CVS: Next big merge. Added GstBus for mainloop integration. Added GstMessage for sending notifications on the bus. Added GstTask as an abstraction for pipeline entry points. Removed GstThread. Removed Schedulers. Simplified GstQueue for multithreaded core. Made _link threadsafe, removed old capsnego. Added STREAM_LOCK and PREROLL_LOCK in GstPad. Added pad blocking functions. Reworked scheduling functions in GstPad to prepare for scheduling updates soon. Moved events out of data stream. Simplified GstEvent types. Added return values to push/pull. Removed clocking from GstElement. Added prototypes for state change function for next merge. Removed iterate from bins and state change management. Fixed some elements, disabled others for now. Fixed -inspect and -launch. Added check for GstBus. 2005-03-07 18:27:42 +0000 Wim Taymans * gst/gdp/dataprotocol.c: gdp: First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor... Original commit message from CVS: First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. More docs follow this week. 2005-02-18 13:58:36 +0000 Zaheer Abbas Merali gdp: Allocate the 1 byte more memory that was forgotten!!!!! Original commit message from CVS: 2005-02-18 Zaheer Abbas Merali * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_dump_byte_array): Allocate the 1 byte more memory that was forgotten!!!!! 2004-10-01 16:49:01 +0000 Wim Taymans gdp: Fix threadsafety of the crc checking function. Original commit message from CVS: * libs/gst/dataprotocol/dataprotocol.c: (gst_dp_crc): Fix threadsafety of the crc checking function. 2004-08-16 10:35:36 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: fix for #150242 Original commit message from CVS: fix for #150242 2004-07-28 10:22:07 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: gdp: doc style fixes Original commit message from CVS: doc style fixes 2004-06-09 16:24:19 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/dp-private.h: gdp: bump GDP to 0.1, add buffer flags Original commit message from CVS: bump GDP to 0.1, add buffer flags 2004-05-24 16:38:15 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.h: gdp: wrap header in _NEW Original commit message from CVS: wrap header in _NEW 2004-05-19 17:22:53 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: * gst/gdp/dp-private.h: Original commit message from CVS: use GST macros; add asserts 2004-05-19 16:59:39 +0000 Thomas Vander Stichele * gst/gdp/dp-private.h: gdp: private prototype Original commit message from CVS: private prototype 2004-05-19 16:37:53 +0000 Thomas Vander Stichele * gst/gdp/dataprotocol.c: * gst/gdp/dataprotocol.h: * gst/gdp/dp-private.h: gdp: add dataprotocol Original commit message from CVS: clean up libs docs; add dataprotocol 2011-11-17 12:48:25 +0100 Wim Taymans * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: add parent to pad functions 2011-11-10 18:32:39 +0100 Wim Taymans * gst/gdp/gstgdpdepay.c: update for adapter api changes 2011-09-29 13:46:36 +0200 Wim Taymans * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: tests: update for new audio caps 2011-07-08 20:02:25 +0100 Tim-Philipp Müller * gst/gdp/gstgdppay.c: gdppay: parse caps event and payload caps Which makes it actually output stuff. 2011-06-13 16:32:56 +0200 Wim Taymans * gst/gdp/gstgdppay.c: -base: update for buffer API change 2011-05-16 13:48:11 +0200 Wim Taymans * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: -base: port to new SEGMENT API 2011-05-09 18:16:46 +0200 Wim Taymans * gst/gdp/gstgdppay.c: segment: fix for new core API Fix for gst_*_segment_full rename. 2011-05-09 13:05:12 +0200 Wim Taymans * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: -base: don't use buffer caps Port to newest 0.11 core API, remove GST_PAD_CAPS and GST_BUFFER_CAPS. 2011-04-19 11:35:53 +0200 Sebastian Dröge * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: gst: Use G_DEFINE_TYPE instead of GST_BOILERPLATE 2011-01-27 17:28:51 +0100 Alessandro Decina * gst/gdp/Makefile.am: android: make it ready for androgenizer Remove the android/ top dir Fixe the Makefile.am to be androgenized To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files. Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git 2011-03-31 17:47:43 +0200 Wim Taymans * gst/gdp/gstgdppay.c: bufferlist: fixes for new API 2011-03-28 17:46:52 +0200 Wim Taymans * tests/check/elements/gdppay.c: tests: fix more unit tests 2011-03-28 15:51:46 +0200 Wim Taymans * tests/check/pipelines/streamheader.c: tests: fix remaining unit tests 2011-03-28 14:12:24 +0200 Wim Taymans * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: tests: work on porting the unit tests 2011-03-27 16:35:28 +0200 Wim Taymans * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: plugins: port some plugins to the new memory API 2011-02-09 12:45:23 +0100 Andoni Morales Alastruey * gst/gdp/gstgdppay.c: gdppay: ensure buffer's metadata is writable before setting caps 2011-01-16 14:55:46 -0800 David Schleef * gst/gdp/gstgdppay.c: gdppay: make newsegment buffer metadata writable 2010-06-18 16:37:14 +0300 Stefan Kost * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: tests: use our own macros for the tests main function 2010-03-15 22:49:53 +0100 Benjamin Otte * tests/check/elements/gdpdepay.c: Add -Wwrite-strings to configure Fixes for the code included 2010-03-16 15:45:23 +0100 Benjamin Otte * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: gst_element_class_set_details => gst_element_class_set_details_simple Also change my email from the old university one to the current one. 2010-03-11 13:32:14 +0100 Benjamin Otte * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: Add -Wmissing-declarations -Wmissing-prototypes to warning flags Includes all the fixes necessary to make stuff compile again. 2009-11-05 15:42:09 +0100 Olivier Crête * gst/gdp/gstgdpdepay.c: gdpdepay: Clear adapter on flush and state change Fixes #600469 2009-10-28 00:59:35 +0000 Tim-Philipp Müller * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: Remove GST_DEBUG_FUNCPTR where they're pointless There's not much point in using GST_DEBUG_FUNCPTR with GObject virtual functions such as get_property, set_propery, finalize and dispose, since they'll never be used by anyone anyway. Saves a few bytes and possibly a sixteenth of a polar bear. 2009-09-22 11:58:26 +0100 Jan Schmidt * gst/gdp/gstgdppay.c: gdppay: Don't repeat tags buffers for every new segment Only send a tag buffer when one is received, not after every new segment event/update. 2009-08-27 18:59:49 +0200 Marc-André Lureau * gst/gdp/gstgdppay.c: Bug 593035 - set IN_CAPS for streamheader buffer 2009-08-10 15:40:33 +0200 Sebastian Dröge * tests/check/pipelines/streamheader.c: streamheader: Fix caps leak in the vorbisenc unit test 2009-08-10 14:14:30 +0100 Tim-Philipp Müller * tests/check/pipelines/streamheader.c: checks: fix stream header unit test hanging in gst_task_cleanup_all() Set pipelines to NULL state and unref when done. 2009-05-27 12:10:05 +0200 Wim Taymans * gst/gdp/gstgdppay.c: gdppay: set caps on outgoing buffers Set caps on outgoing buffers because NULL caps confuse basetransform. Fixes #583867 2008-10-16 15:07:00 +0000 Stefan Kost Don't install static libs for plugins. Fixes #550851 for base. Original commit message from CVS: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/gio/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst/adder/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/ffmpegcolorspace/Makefile.am: * gst/gdp/Makefile.am: * gst/playback/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * sys/v4l/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: Don't install static libs for plugins. Fixes #550851 for base. 2008-07-10 21:06:06 +0000 Stefan Kost Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe... Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/theora/theoraparse.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * ext/vorbis/vorbisparse.c: * ext/vorbis/vorbistag.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstqueue2.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpserversink.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipelines are "simple" pipelines. 2008-06-30 09:46:15 +0000 Sebastian Dröge tests/check/: Enable unit tests on PPC again as the bugs are now fixed. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): * tests/check/pipelines/streamheader.c: (streamheader_suite): Enable unit tests on PPC again as the bugs are now fixed. 2008-06-20 08:45:13 +0000 Antoine Tremblay gst/gdp/gstgdppay.c: Fix a buffer memleak and remove a confusing and wrong debug output. Original commit message from CVS: Patch by: Antoine Tremblay * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset): Fix a buffer memleak and remove a confusing and wrong debug output. Fixes bug #538663. 2008-06-04 16:00:26 +0000 Peter Kjellerstedt tests/check/pipelines/streamheader.c: Do not try to run a test which requires vorbisenc unless we have actually built... Original commit message from CVS: * tests/check/pipelines/streamheader.c: (buffer_probe_cb), (test_multifdsink_gdp_vorbisenc), (streamheader_suite): Do not try to run a test which requires vorbisenc unless we have actually built it. 2008-06-04 05:58:38 +0000 Antoine Tremblay gst/gdp/gstgdppay.c: Don't set caps on the buffers that contain a copy of the buffer including the caps of them resul... Original commit message from CVS: Patch by: Antoine Tremblay * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader): Don't set caps on the buffers that contain a copy of the buffer including the caps of them resulting in an always increasing refcount of the caps and insanely large caps. Instead include a buffer without caps in the new caps. Fixes bug #536475. 2008-05-22 22:09:16 +0000 Jan Schmidt Add some documentation comments, and some new headers to be scanned. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggdemux.h: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggmux.h: * gst/audioconvert/audioconvert.c: * gst/audioconvert/audioconvert.h: * gst/audioconvert/gstaudioconvert.h: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/playback/gstdecodebin.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcp.h: Add some documentation comments, and some new headers to be scanned. Rename some internal enum declarations (audioconvert's DitherType and NoiseShapingType, GstUnitType from the TCP elements) to match the documented GObject type names so that the docs pick them up. Name the playbin2 docs markups properly so they get picked up. They'll need renaming back when/if playbin2 becomes playbin. 100% symbol coverage for the plugin docs, booya. 2008-05-21 16:36:50 +0000 Wim Taymans Don't use bad gst_element_get_pad(). Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_typefind): * gst/playback/decodetest.c: (new_decoded_pad_cb): * gst/playback/gstdecodebin.c: (gst_decode_bin_init), (try_to_link_1), (elem_is_dynamic), (close_link), (type_found), (cleanup_decodebin): * gst/playback/gstdecodebin2.c: (gst_decode_bin_init), (connect_element), (gst_decode_group_control_demuxer_pad): * gst/playback/gstplaybasebin.c: (queue_remove_probe), (queue_out_of_data), (gen_preroll_element), (preroll_unlinked), (mute_group_type): * gst/playback/gstplaybin.c: (gst_play_bin_vis_blocked), (gst_play_bin_set_property), (handoff), (gen_video_element), (gen_text_element), (gen_audio_element), (gen_vis_element), (remove_sinks), (add_sink), (setup_sinks): * gst/playback/gstplaybin2.c: (pad_added_cb), (no_more_pads_cb): * gst/playback/gstplaysink.c: (gst_play_sink_get_video_sink), (gst_play_sink_get_audio_sink), (gst_play_sink_vis_unblocked), (gst_play_sink_vis_blocked), (gst_play_sink_set_vis_plugin), (gst_play_sink_get_vis_plugin), (gst_play_sink_set_mute), (gen_video_chain), (gen_text_chain), (gen_audio_chain), (gen_vis_chain), (gst_play_sink_reconfigure), (gst_play_sink_set_font_desc), (gst_play_sink_get_font_desc), (gst_play_sink_request_pad): * gst/playback/gsturidecodebin.c: (type_found), (setup_source): * gst/playback/test.c: (gen_video_element), (gen_audio_element), (cb_newpad): * gst/playback/test6.c: (new_decoded_pad_cb): * tests/check/elements/audioconvert.c: (GST_START_TEST): * tests/check/elements/audiorate.c: (test_injector_chain), (do_perfect_stream_test): * tests/check/elements/ffmpegcolorspace.c: (GST_START_TEST): * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/elements/gnomevfssink.c: * tests/check/elements/textoverlay.c: (notgst_check_setup_src_pad2), (notgst_check_teardown_src_pad2): * tests/check/elements/videotestsrc.c: (GST_START_TEST): * tests/check/libs/cddabasesrc.c: (GST_START_TEST): * tests/check/pipelines/oggmux.c: (test_pipeline): * tests/check/pipelines/streamheader.c: (GST_START_TEST): * tests/check/pipelines/theoraenc.c: (GST_START_TEST): * tests/check/pipelines/vorbisenc.c: (GST_START_TEST): * tests/examples/seek/scrubby.c: (make_wav_pipeline): * tests/examples/seek/seek.c: (make_mod_pipeline), (make_dv_pipeline), (make_wav_pipeline), (make_flac_pipeline), (make_sid_pipeline), (make_parse_pipeline), (make_vorbis_pipeline), (make_theora_pipeline), (make_vorbis_theora_pipeline), (make_avi_msmpeg4v3_mp3_pipeline), (make_mp3_pipeline), (make_avi_pipeline), (make_mpeg_pipeline), (make_mpegnt_pipeline), (update_fill), (msg_buffering): Don't use bad gst_element_get_pad(). 2008-05-21 06:45:22 +0000 Antoine Tremblay gst/gdp/gstgdppay.c: Close a buffer memory leak. Fixes bug #534071. Original commit message from CVS: Patch by: Antoine Tremblay * gst/gdp/gstgdppay.c: (gst_gdp_pay_chain): Close a buffer memory leak. Fixes bug #534071. 2008-04-18 14:54:01 +0000 Edward Hervey gst/gdp/gstgdpdepay.c: Don't validate the payload if there isn't any. Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): Don't validate the payload if there isn't any. Fixes #525915 2008-03-27 15:26:38 +0000 Michael Smith gst/gdp/gstgdpdepay.c: Check the body CRC (if set) when depayloading. Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): Check the body CRC (if set) when depayloading. Fixes #522401. 2008-03-23 13:12:41 +0000 Tim-Philipp Müller tests/check/elements/gdpdepay.c: Make test compile without unused function/variable warnings on PPC. Original commit message from CVS: * tests/check/elements/gdpdepay.c: Make test compile without unused function/variable warnings on PPC. 2008-03-22 15:00:53 +0000 Sebastian Dröge Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory u... Original commit message from CVS: * configure.ac: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_class_init): * ext/alsa/gstalsasink.c: (gst_alsasink_class_init): * ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init): * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_class_init): * ext/gio/gstgiosink.c: (gst_gio_sink_class_init): * ext/gio/gstgiosrc.c: (gst_gio_src_class_init): * ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_class_init): * ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_class_init): * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init): * ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init): * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init): * ext/pango/gsttextrender.c: (gst_text_render_class_init): * ext/theora/theoradec.c: (gst_theora_dec_class_init): * ext/theora/theoraenc.c: (gst_theora_enc_class_init): * ext/theora/theoraparse.c: (gst_theora_parse_class_init): * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_class_init): * gst-libs/gst/audio/gstaudiofiltertemplate.c: (gst_audio_filter_template_class_init): * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init): * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_class_init): * gst-libs/gst/interfaces/mixertrack.c: (gst_mixer_track_class_init): * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_class_init): * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_class_init): * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_class_init): * gst/audiorate/gstaudiorate.c: (gst_audio_rate_class_init): * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init): * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_class_init): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init): * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init): * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (preroll_unlinked): * gst/playback/gstplaybin.c: (gst_play_bin_class_init): * gst/playback/gstplaybin2.c: (gst_play_bin_class_init): * gst/playback/gstplaysink.c: (gst_play_sink_class_init): * gst/playback/gstqueue2.c: (gst_queue_class_init): * gst/playback/gststreaminfo.c: (gst_stream_info_class_init): * gst/playback/gststreamselector.c: (gst_selector_pad_class_init), (gst_stream_selector_class_init): * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init): * gst/subparse/gstsubparse.c: (gst_sub_parse_class_init): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init): * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init): * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init): * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init): * gst/videorate/gstvideorate.c: (gst_video_rate_class_init): * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init): * gst/volume/gstvolume.c: (gst_volume_class_init): * sys/v4l/gstv4lelement.c: (gst_v4lelement_class_init): * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init): * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init): * sys/ximage/ximagesink.c: (gst_ximagesink_class_init): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init): Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory usage, fewer allocations and thus less memory defragmentation. Depend on core CVS for this. Fixes bug #523806. 2008-03-03 06:04:31 +0000 Sebastian Dröge Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static... Original commit message from CVS: * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_get_type): * ext/alsa/gstalsasink.c: (set_hwparams): * ext/alsa/gstalsasrc.c: (set_hwparams): * ext/gio/gstgio.c: (gst_gio_uri_handler_get_uri): * ext/ogg/gstoggmux.h: * ext/ogg/gstogmparse.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/fft/kiss_fft_f64.c: (kiss_fft_f64_alloc): * gst-libs/gst/pbutils/missing-plugins.c: (gst_missing_uri_sink_message_new), (gst_missing_element_message_new), (gst_missing_decoder_message_new), (gst_missing_encoder_message_new): * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_bye_get_reason): * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/playback/test.c: (gen_video_element), (gen_audio_element): * gst/typefind/gsttypefindfunctions.c: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * sys/v4l/gstv4lelement.c: * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get_any_caps): * sys/v4l/v4l_calls.c: * sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_capture_init), (gst_v4lsrc_try_capture): * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): * tests/check/elements/audioconvert.c: * tests/check/elements/audioresample.c: (fail_unless_perfect_stream): * tests/check/elements/audiotestsrc.c: (setup_audiotestsrc): * tests/check/elements/decodebin.c: * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (setup_gdpdepay_streamheader): * tests/check/elements/gdppay.c: (setup_gdppay), (GST_START_TEST), (setup_gdppay_streamheader): * tests/check/elements/gnomevfssink.c: (setup_gnomevfssink): * tests/check/elements/multifdsink.c: (setup_multifdsink): * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: (setup_videorate): * tests/check/elements/videotestsrc.c: (setup_videotestsrc): * tests/check/elements/volume.c: (setup_volume): * tests/check/elements/vorbisdec.c: (setup_vorbisdec): * tests/check/elements/vorbistag.c: * tests/check/generic/clock-selection.c: * tests/check/generic/states.c: (setup), (teardown): * tests/check/libs/cddabasesrc.c: * tests/check/libs/video.c: * tests/check/pipelines/gio.c: * tests/check/pipelines/oggmux.c: * tests/check/pipelines/simple-launch-lines.c: (simple_launch_lines_suite): * tests/check/pipelines/streamheader.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: (query_positions_elems), (query_positions_pads): * tests/icles/stress-xoverlay.c: (myclock): Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static, using NULL instead of 0 for pointers and using "foo (void)" instead of "foo ()" for declarations. * win32/common/libgstrtp.def: Add gst_rtp_buffer_set_extension_data to the symbol definition file. 2007-06-14 19:53:27 +0000 Tim-Philipp Müller tests/check/pipelines/streamheader.c: Disable test_multifdsink_gdp_vorbisenc() on ppc64 since it fails on the p5-ppc6... Original commit message from CVS: * tests/check/pipelines/streamheader.c: (streamheader_suite): Disable test_multifdsink_gdp_vorbisenc() on ppc64 since it fails on the p5-ppc64 build bot and the failure looks like it is due to the same issue as #348114, ie. a compiler bug. 2007-04-14 12:34:55 +0000 Thomas Vander Stichele gst/gdp/gstgdppay.c (gst_gdp_pay_chain): tests/check/pipelines/streamheader.c (tag_event_probe_cb, Original commit message from CVS: * gst/gdp/gstgdppay.c (gst_gdp_pay_chain): * tests/check/pipelines/streamheader.c (tag_event_probe_cb, GST_START_TEST, buffer_probe_cb, GST_START_TEST): Fix a bug where serialized IN_CAPS buffers needed to be set IN_CAPS. 2007-04-13 21:55:31 +0000 Thomas Vander Stichele * tests/check/pipelines/streamheader.c: tests/check/pipelines/streamheader.c (tag_event_probe_cb, Original commit message from CVS: * tests/check/pipelines/streamheader.c (tag_event_probe_cb, GST_START_TEST, n_in_caps, buffer_probe_cb, GST_START_TEST, streamheader_suite): Add another test set up for failure 2007-04-13 21:09:04 +0000 Thomas Vander Stichele * gst/gdp/gstgdpdepay.c: debug changes Original commit message from CVS: debug changes 2007-04-13 21:08:11 +0000 Thomas Vander Stichele tests/check/Makefile.am: tests/check/pipelines/streamheader.c (n_tags, tag_event_probe_cb, Original commit message from CVS: * tests/check/Makefile.am: * tests/check/pipelines/streamheader.c (n_tags, tag_event_probe_cb, GST_START_TEST, streamheader_suite, main): Add a test for the streamheader bug Wim fixed. 2007-04-12 10:03:22 +0000 Wim Taymans gst/gdp/gstgdppay.c: Make sure we set the IN_CAPS flag correctly. Original commit message from CVS: * gst/gdp/gstgdppay.c: (gst_gdp_pay_chain), (gst_gdp_pay_sink_event): Make sure we set the IN_CAPS flag correctly. * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_render): Get the IN_CAPS flag before we call functions that mess with the flags. 2007-04-10 20:37:05 +0000 Thomas Vander Stichele * gst/gdp/gstgdppay.c: gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader, gst_gdp_pay_chain, gst_gdp_pay_sink_event): Original commit message from CVS: * gst/gdp/gstgdppay.c (gst_gdp_pay_reset_streamheader, gst_gdp_pay_chain, gst_gdp_pay_sink_event): Only stamp buffers with offset/offset_end right before they get pushed. This ensures offset continuity, which was not the case before as shown by gst-launch -v -m audiotestsrc num-buffers=10 ! audioconvert ! vorbisenc ! gdppay ! identity check-imperfect-offset=TRUE ! fakesink silent=TRUE 2007-04-10 20:25:06 +0000 Thomas Vander Stichele * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: adding debugging Original commit message from CVS: adding debugging 2007-03-14 15:05:32 +0000 Thomas Vander Stichele * gst/gdp/gstgdpdepay.c: add buffer logging Original commit message from CVS: add buffer logging 2006-12-22 12:10:18 +0000 Stefan Kost tests/check/elements/: Fix the dp tests, but activating the pads for the streamheader tests too and cleaning up condi... Original commit message from CVS: * tests/check/elements/gdpdepay.c: (cleanup_gdpdepay), (setup_gdpdepay_streamheader): * tests/check/elements/gdppay.c: (cleanup_gdppay), (setup_gdppay_streamheader): Fix the dp tests, but activating the pads for the streamheader tests too and cleaning up conditionaly 2006-12-21 08:12:26 +0000 Stefan Kost tests/check/elements/: consistent pad (de)activation Original commit message from CVS: * tests/check/elements/audioresample.c: (cleanup_audioresample): * tests/check/elements/audiotestsrc.c: (cleanup_audiotestsrc): * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (cleanup_gdpdepay): * tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay): * tests/check/elements/subparse.c: (teardown_subparse): * tests/check/elements/textoverlay.c: (cleanup_textoverlay): * tests/check/elements/videorate.c: (cleanup_videorate): * tests/check/elements/videotestsrc.c: (cleanup_videotestsrc): * tests/check/elements/volume.c: (cleanup_volume): * tests/check/elements/vorbisdec.c: (setup_vorbisdec), (cleanup_vorbisdec): * tests/check/elements/vorbistag.c: (setup_vorbistag), (cleanup_vorbistag): consistent pad (de)activation 2006-09-21 05:31:00 +0000 Wim Taymans tests/check/: Some more compilation fixes. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/libs/audio.c: Some more compilation fixes. 2006-09-20 17:04:57 +0000 Wim Taymans tests/check/: Fix some warnings. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/elements/multifdsink.c: (GST_START_TEST): * tests/check/elements/videorate.c: (GST_START_TEST): * tests/check/libs/cddabasesrc.c: (GST_START_TEST): * tests/check/pipelines/oggmux.c: (eos_buffer_probe): Fix some warnings. 2006-08-25 16:19:55 +0000 Michael Smith gst/gdp/gstgdppay.c: Fix memory leaks and misleading debug messages, add a couple of comments. Original commit message from CVS: * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain): Fix memory leaks and misleading debug messages, add a couple of comments. * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_get_stats), (gst_multi_fd_sink_render): Do not use gst_buffer_make_writable() in a basesink render method, as it may incorrectly unref the buffer. Instead, use convoluted dance to avoid copying the buffer except when we need to. 2006-08-21 19:04:14 +0000 Thomas Vander Stichele * gst/gdp/README: adding a README Original commit message from CVS: adding a README 2006-08-21 19:01:41 +0000 Thomas Vander Stichele Move GDP plugin to -base from -bad. Closes #347783. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/inspect/plugin-gdp.xml: * gst/gdp/Makefile.am: * tests/check/Makefile.am: Move GDP plugin to -base from -bad. Closes #347783. 2006-08-08 13:57:29 +0000 Edward Hervey tests/check/elements/gdpdepay.c: I forgot to include the file containing the #define :) Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): I forgot to include the file containing the #define :) Now includes "config.h" 2006-08-08 13:45:44 +0000 Edward Hervey tests/check/elements/gdpdepay.c: Ignore test known to fail on PPC64. See #348114. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): Ignore test known to fail on PPC64. See #348114. 2006-08-04 13:20:23 +0000 Zaheer Abbas Merali gst/gdp/gstgdpdepay.c: Fix event parsing by gdpdepay. Fixes #349916. Original commit message from CVS: 2006-08-04 Zaheer Abbas Merali * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): Fix event parsing by gdpdepay. Fixes #349916. 2006-08-02 16:56:19 +0000 Wim Taymans gst/gdp/gstgdpdepay.c: Disable seeking. Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init), (gst_gdp_depay_finalize), (gst_gdp_depay_sink_event), (gst_gdp_depay_src_event), (gst_gdp_depay_chain), (gst_gdp_depay_change_state): Disable seeking. Small cleanups. Clear adapter on disconts. Clear caps when going to READY instead of NULL * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_pay_finalize), (gst_gdp_pay_reset), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_queue_buffer), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_src_event), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: Reset payloader when going to READY. Fix leaked buffers in ->queue on push errors. Disable seeking. Code cleanups. Create packetizer in _init, free in _finalize. 2006-07-31 08:48:36 +0000 Wim Taymans gst/gdp/gstgdpdepay.c: Consume all events except EOS because we generate events from the gdp payload instead. Fixes #... Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init), (gst_gdp_depay_sink_event), (gst_gdp_depay_chain): Consume all events except EOS because we generate events from the gdp payload instead. Fixes #349204 2006-07-26 10:52:05 +0000 Thomas Vander Stichele gst/gdp/gstgdpdepay.c: proxying get/set caps is the wrong thing to do, since we really do change caps quite fundament... Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init): proxying get/set caps is the wrong thing to do, since we really do change caps quite fundamentally * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: remove declaration of buffers, it's already done in gstcheck.h 2006-07-17 14:17:45 +0000 Thomas Vander Stichele gst/gdp/: remove parent_class setting, BOILERPLATE does this fix typo in comment Original commit message from CVS: 2006-07-17 Thomas Vander Stichele * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_class_init): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), remove parent_class setting, BOILERPLATE does this (gst_gdp_pay_reset_streamheader): fix typo in comment 2006-07-14 10:34:36 +0000 Thomas Vander Stichele * gst/gdp/Makefile.am: build as a plugin, not a lib Original commit message from CVS: build as a plugin, not a lib 2006-07-13 15:25:58 +0000 Thomas Vander Stichele docs/plugins/: add more plugins and elements to docs Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: add more plugins and elements to docs * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): fix segfaults due to wrong g_free add example * gst/gdp/gstgdppay.c: add example 2006-06-23 09:09:44 +0000 Tim-Philipp Müller Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro. Original commit message from CVS: * ext/directfb/dfbvideosink.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/theora/theoradec.c: * gst/freeze/gstfreeze.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * sys/glsink/glimagesink.c: Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro. 2006-06-06 16:26:59 +0000 Thomas Vander Stichele * gst/gdp/gstgdppay.c: adapt to new api Original commit message from CVS: adapt to new api 2006-06-06 14:39:15 +0000 Thomas Vander Stichele configure.ac: enable building of GDP elements Original commit message from CVS: * configure.ac: enable building of GDP elements * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_sink_event), (gst_gdp_pay_set_property), (gst_gdp_pay_get_property), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: add version 1.0 2006-06-02 16:45:59 +0000 Thomas Vander Stichele * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.h: small fixes Original commit message from CVS: small fixes 2006-06-02 10:28:32 +0000 Thomas Vander Stichele gst/gdp/gstgdppay.c: add crc-header and crc-payload properties don't error out on some things that are recoverable Original commit message from CVS: * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_set_property), (gst_gdp_pay_get_property): add crc-header and crc-payload properties don't error out on some things that are recoverable * tests/check/elements/gdppay.c: (GST_START_TEST), (gdppay_suite): add test for crc 2006-06-01 22:00:23 +0000 Stefan Kost Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.h: * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbenc.h: * ext/amrwb/gstamrwbparse.h: * ext/arts/gst_arts.h: * ext/artsd/gstartsdsink.h: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.h: * ext/audioresample/gstaudioresample.h: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.h: * ext/dirac/gstdiracdec.h: * ext/directfb/dfbvideosink.h: * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.h: * ext/dts/gstdtsdec.h: * ext/faac/gstfaac.h: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.h: * ext/ivorbis/vorbisenc.h: * ext/libfame/gstlibfame.h: * ext/nas/nassink.h: * ext/neon/gstneonhttpsrc.h: * ext/polyp/polypsink.h: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.h: * ext/shout/gstshout.h: * ext/snapshot/gstsnapshot.h: * ext/sndfile/gstsf.h: * ext/swfdec/gstswfdec.h: * ext/tarkin/gsttarkindec.h: * ext/tarkin/gsttarkinenc.h: * ext/theora/theoradec.h: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.h: * ext/xine/gstxine.h: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.h: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstcdxastrip.h: * gst/colorspace/gstcolorspace.h: * gst/festival/gstfestival.h: * gst/freeze/gstfreeze.h: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/modplug/gstmodplug.h: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg2sub/gstmpeg2subt.h: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/multifilesink/gstmultifilesink.h: * gst/overlay/gstoverlay.h: * gst/playondemand/gstplayondemand.h: * gst/qtdemux/qtdemux.h: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.h: * gst/smooth/gstsmooth.h: * gst/smoothwave/gstsmoothwave.h: * gst/spectrum/gstspectrum.h: * gst/speed/gstspeed.h: * gst/stereo/gststereo.h: * gst/switch/gstswitch.h: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.h: * gst/videodrop/gstvideodrop.h: * gst/xingheader/gstxingmux.h: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.h: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.h: * sys/qcam/gstqcamsrc.h: * sys/vcd/vcdsrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-05-22 15:53:07 +0000 Thomas Vander Stichele gst/gdp/: Handle error cases when calling functions do downwards state change after parent's change_state Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain), (gst_gdp_depay_change_state): * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: Handle error cases when calling functions do downwards state change after parent's change_state * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/elements/gdppay.c: (GST_START_TEST): clean up more 2006-05-22 13:25:52 +0000 Thomas Vander Stichele adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out. Original commit message from CVS: * gst/gdp/Makefile.am: * gst/gdp/gstgdp.c: (plugin_init): * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_base_init), (gst_gdp_depay_class_init), (gst_gdp_depay_init), (gst_gdp_depay_finalize), (gst_gdp_depay_chain), (gst_gdp_depay_change_state), (gst_gdp_depay_plugin_init): * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: (gst_gdp_pay_base_init), (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_pay_dispose), (gst_gdp_stamp_buffer), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_queue_buffer), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_change_state), (gst_gdp_pay_plugin_init): * gst/gdp/gstgdppay.h: * tests/check/Makefile.am: * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (cleanup_gdpdepay), (gdpdepay_push_per_byte), (GST_START_TEST), (setup_gdpdepay_streamheader), (gdpdepay_suite), (main): * tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay), (GST_START_TEST), (setup_gdppay_streamheader), (gdppay_suite), (main): adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out. 2012-09-10 20:38:14 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: * tests/check/elements/rtpmux.c: rtpmux: Misc fix for 0.11 Convert the incoming caps before proxying them Clear the last_pad when going to ready tests: Implement accept_caps, don't leak event 2012-09-10 16:12:39 -0400 Olivier Crête * sys/uvch264/Makefile.am: * sys/uvch264/gstuvch264-marshal.list: * sys/uvch264/gstuvch264_src.c: uvch264src: Use generic marshaller 2012-09-10 16:09:26 -0400 Youness Alaoui * configure.ac: * sys/Makefile.am: * sys/uvch264/Makefile.am: * sys/uvch264/gstuvch264-marshal.list: * sys/uvch264/gstuvch264.c: * sys/uvch264/gstuvch264_mjpgdemux.c: * sys/uvch264/gstuvch264_mjpgdemux.h: * sys/uvch264/gstuvch264_src.c: * sys/uvch264/gstuvch264_src.h: * sys/uvch264/uvc_h264.c: * sys/uvch264/uvc_h264.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/uvch264demux.c: * tests/check/elements/uvch264demux_data/valid_h264_jpg.h264: * tests/check/elements/uvch264demux_data/valid_h264_jpg.jpg: * tests/check/elements/uvch264demux_data/valid_h264_jpg.mjpg: * tests/check/elements/uvch264demux_data/valid_h264_yuy2.h264: * tests/check/elements/uvch264demux_data/valid_h264_yuy2.mjpg: * tests/check/elements/uvch264demux_data/valid_h264_yuy2.yuy2: * tests/examples/Makefile.am: * tests/examples/uvch264/Makefile.am: * tests/examples/uvch264/boolean_property.glade: * tests/examples/uvch264/enum_property.glade: * tests/examples/uvch264/enum_property_gtk2.glade: * tests/examples/uvch264/int_property.glade: * tests/examples/uvch264/test-uvch264.c: * tests/examples/uvch264/window.glade: UVC H264 plugin 2012-09-09 23:52:41 +0100 Tim-Philipp Müller * ext/opencv/gstmotioncells.c: opencv: disable motioncells "date" property for now Shouldn't be of type long. Not sure it's useful at all, so just disable it for now to see if someone misses it. 2012-09-09 14:35:51 +0100 Tim-Philipp Müller * configure.ac: configure: remove non-existant hlssink plugin from NONPORTED list 2012-09-08 16:08:21 -0700 David Schleef * sys/decklink/gstdecklinksink.cpp: decklinksink: Fix memory leak 2012-09-08 15:57:57 -0700 David Schleef * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: inter: fix leaks in audiosrc/sink 2012-09-08 17:03:33 +0200 Edward Hervey * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: Don't override upstream framerate and PAR If upstream provided some, there's a good chance they are the ones to use 2012-09-08 14:43:37 +0100 Tim-Philipp Müller * gst/hls/Makefile.am: * gst/hls/gstfragmentedplugin.c: hls: disable hlssink but do build hlsdemux 2012-09-08 14:31:57 +0100 Tim-Philipp Müller * configure.ac: Revert "configure.ac: Properly disable HLS plugin" This reverts commit 3ad3445a25f31bc0d0167a4f413791bea8006783. This disabled hlsdemux as well 2012-09-08 14:05:08 +0200 Edward Hervey * configure.ac: configure.ac: Properly disable HLS plugin 2012-09-07 16:08:57 +0200 Robert Swain * gst/hls/Makefile.am: hls: Add missing GST_PLUGINS_BASE_CFLAGS 2012-09-07 16:07:40 +0200 Robert Swain * gst/hls/gsthlssink.c: * gst/hls/gsthlssink.h: hlssink: Add segment target-duration property This property causes hlssink to push a force key unit event upstream every target-duration seconds. This is for simple automatic segmenting. To disable it, set the property to 0 and push the force key unit event manually. 2011-08-21 11:00:51 +0200 Alessandro Decina * configure.ac: * gst/hls/Makefile.am: * gst/hls/gstfragmentedplugin.c: * gst/hls/gsthlssink.c: * gst/hls/gsthlssink.h: * gst/hls/gstm3u8playlist.c: * gst/hls/gstm3u8playlist.h: hls: add hlssink element 2012-09-06 01:53:07 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: use correct variable when handling pad probe buffers Pad probe data is in the GstPadProbeInfo, not in the user data parameter. 2012-09-03 19:25:52 +0100 Rico Tzschichholz * ext/mythtv/gstmythtvsrc.c: mythtv: update for duration message API change 2012-09-03 14:21:19 +0100 Tim-Philipp Müller * ext/schroedinger/gstschroenc.c: schroenc: set interlace_coding based on input caps and remove property. 2012-09-03 14:04:40 +0100 Tim-Philipp Müller * ext/schroedinger/gstschroenc.c: schroenc: configure profile/level from allowed downstream caps instead of properties This is how it's done elsewhere and works better with encodebin. Removes "force-profile" property, read-only "profile" property and "level" property. https://bugzilla.gnome.org/show_bug.cgi?id=670608 2012-09-03 13:58:16 +0100 Tim-Philipp Müller * gst/videoparsers/gstdiracparse.c: diracparse: fix main profile mapping 2012-09-03 13:04:01 +0100 Tim-Philipp Müller * ext/schroedinger/gstschroenc.c: schroenc: prettify enum property nicks Use '-' instead of '_' as word separator. 2012-09-03 12:41:33 +0100 Tim-Philipp Müller * gst/videoparsers/gstdiracparse.c: diracparse: change "interlaced" boolean in caps to "interlace-mode" Not strictly needed, but let's make it consistent with the raw video way of doing things. 2012-09-03 12:33:51 +0100 Tim-Philipp Müller * gst/videoparsers/gstdiracparse.c: diracparse: use strings for profile and level in caps For consistency with most other formats. https://bugzilla.gnome.org/show_bug.cgi?id=658436 2012-09-02 12:36:37 +0300 Sreerenj Balachandran * ext/spc/gstspc.c: spc: No need to define GLIB_DISABLE_DEPRECATION_WARNINGS https://bugzilla.gnome.org/show_bug.cgi?id=683175 2012-09-02 03:55:35 +0100 Tim-Philipp Müller * gst/id3tag/id3tag.c: id3tag: extract year to write into ID3v1 tag from GST_TAG_DATE_TIME not GST_TAG_DATE 2012-09-01 21:46:19 +0200 Matej Knopp * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: set 0 duration when vop_coded is 0 https://bugzilla.gnome.org/show_bug.cgi?id=683169 2012-09-02 01:42:30 +0100 Tim-Philipp Müller * ext/resindvd/resindvdsrc.c: * ext/soundtouch/gstpitch.cc: * gst/hls/gsthlsdemux.c: gst_message_new_duration -> gst_message_new_duration_changed 2012-09-01 09:12:51 -0700 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Handle caps query on internal srcpad Reply with ANY caps to ensure linking the internal src pad. This might need more attention later, to reply with the real upstream caps for the currently active element. 2012-08-31 15:28:29 -0700 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.c: resindvd/mpegdemux: Send both PTS and DTS downstream Now that we can. 2012-09-02 00:04:18 +0100 Tim-Philipp Müller * ext/spc/gstspc.c: spc: don't leak buffer in case of an init error 2012-09-02 00:34:38 +0300 Sreerenj Balachandran * configure.ac: * ext/spc/Makefile.am: * ext/spc/gstspc.c: * ext/spc/tag.c: * ext/spc/tag.h: spc: port to 0.11 https://bugzilla.gnome.org/show_bug.cgi?id=683175 2012-08-31 14:13:58 -0700 Jan Schmidt * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: resindvd: Plug a video parser in front of decoder Seems to make playback both better and worse. The parser needs some fixing, it seems :-/ 2012-08-31 12:31:48 -0700 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Make GAP event aware 2012-08-31 08:46:45 -0700 Jan Schmidt * ext/resindvd/Makefile.am: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnaudiomunge.c: * ext/resindvd/rsnaudiomunge.h: resindvd: Add some GAP event stuff to make still-frames start to work And remove the dead audiomunge element. It isn't needed now, we just send GAP events 2012-06-09 22:36:06 +1000 Jan Schmidt * configure.ac: * ext/resindvd/Makefile.am: * ext/resindvd/gstmpegdefs.h: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: * ext/resindvd/gstpesfilter.c: * ext/resindvd/gstpesfilter.h: * ext/resindvd/plugin.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnaudiomunge.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsninputselector.c: * ext/resindvd/rsninputselector.h: * ext/resindvd/rsnstreamselector.c: * ext/resindvd/rsnstreamselector.h: resindvd: Initial partial port to 0.11 2012-08-30 18:39:50 -0700 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Don't drop upstream events due to silly typo 2012-08-30 17:51:50 -0700 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: Merge some DVD pieces and fixes Bring the resindvd copy of mpegpsdemux and the normal version slightly closer together. Don't forward incoming sink caps event to downstream elements. 2012-06-11 08:33:36 +1000 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: avoid extra refs/unrefs of the demuxer Change all the gst_pad_get_parent() calls to a cast to the passed parent variable where appropriate, and don't unref, including the extra unref in the gst_flups_demux_sink_activate_push() function. 2012-08-30 12:11:20 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: adjust to modified video overlay composition API ... and supply overlay rectangle data in AYUV as provided by input data rather than converting to RGB. 2012-08-29 22:05:56 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: no need to set clock/basetime again The base and clock aren't lost anymore on state changes in 1.0 2012-08-29 22:05:04 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: no need to send extra reconfigure Setting capsfilters already sends reconfigure events when a new caps is set, no need to resend them. 2012-08-28 21:01:55 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: request _%u templates instead of _%d In 1.0, templates have been renamed to _%u as default 2012-08-26 16:43:37 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: fix image location switching test The test should wait until the last image-done is posted so it can correctly check that all images have been saved. 2012-08-26 16:42:04 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: rework video recording eos push Push EOS outside of wrappercamerabinsrc so that none of the internal elements gets its pads into eos state, preventing any further data from passing 2012-08-28 11:07:41 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: ensure sufficiently sized buffer when wrapping NAL Noted by Fixes https://bugzilla.gnome.org/show_bug.cgi?id=682589 2012-08-24 09:01:41 +0100 Tim-Philipp Müller * sys/shm/Makefile.am: shm: remove unneeded glib-gen-mak include in Makefile No enums or marshallers to be generated here. Should also be gst-glib-gen.mak then. 2012-08-22 15:08:53 +0200 Stefan Sauer * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: revert renaming of the type The special type name was lost when merging from base. 2012-08-22 13:30:40 +0200 Stefan Sauer * common: Automatic update of common submodule From 668acee to 4f962f7 2012-08-22 13:19:53 +0200 Stefan Sauer * configure.ac: configure: bump gtk-doc req to 1.12 (mar-2009) This allows us to e.g. unconditionally use gtkdoc-rebase. 2012-08-21 13:29:16 +0100 Tim-Philipp Müller * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: avoid registering enum type of same name as libvisual plugin in -base 2012-08-17 11:12:22 +0300 Sreerenj Balachandran * ext/wayland/gstwaylandsink.c: wayland: use scale fullscreen method. This makes the compositor scale the surface to fit and preserves aspect ratio. https://bugzilla.gnome.org/show_bug.cgi?id=681453 2012-08-17 11:10:39 +0300 Sreerenj Balachandran * ext/wayland/gstwaylandsink.c: wayland: respond to ping/pong protocol so we're not deemed unresponsive. https://bugzilla.gnome.org/show_bug.cgi?id=681453 2012-08-21 10:37:10 +0100 Tim-Philipp Müller * configure.ac: configure: fix check for wayland We only seem to need wayland-client. Also make work with wayland being installed in a non-default prefix by not overwriting/clearing WAYLAND_{CFLAGS,LIBS} for no reason at all. 2012-08-21 10:29:55 +0100 Tim-Philipp Müller * gst/id3tag/id3tag.c: id3tag: fix build Some code slipped into the last commit that was meant to be pushed separately. Use gst_date_time_unref() instead of _free(). 2012-08-08 17:10:28 +0300 Sreerenj Balachandran * configure.ac: * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * ext/wayland/waylandpool.c: * ext/wayland/waylandpool.h: wayland: More fixes based on wayland-0.95.0 and gstreamer-1.0 apis - bump wayland version to 0.95.0 which will lead to stable 1.0 release - avoid memcopy and use propose_allocation for GstBufferPool allocation - using WaylandBufferPool - shm: Allocate shm buffers through new wl_shm_pool interface (the shm buffer allocation is a two step process now: first allocate a wl_shm_pool, then allocate a buffer from the pool) https://bugzilla.gnome.org/show_bug.cgi?id=681453 2012-08-21 10:22:49 +0100 Tim-Philipp Müller * configure.ac: * gst/id3tag/gstid3mux.c: * gst/id3tag/id3tag.c: id3tag: port to 0.11 2012-08-21 00:10:10 +0100 Tim-Philipp Müller * tests/examples/camerabin2/gst-camerabin2-test.c: examples: GST_TAG_DATE -> GST_TAG_DATE_TIME In camerabin2 example. 2012-08-20 23:37:00 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-resindvd.xml: * ext/kate/gstkateenc.c: * ext/kate/gstkatespu.h: * ext/kate/gstkateutil.c: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdbin.c: * gst/dvdspu/gstdvdspu.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/tsdemux.c: * tests/check/elements/kate.c: video/x-dvd-subpicture -> subpicture/x-dvd 2012-08-18 20:31:17 +0100 Tim-Philipp Müller * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: * gst/mpeg1sys/main.h: * gst/rtjpeg/RTjpeg.c: * gst/rtjpeg/RTjpeg.h: * gst/tta/filters.h: * gst/vbidec/vbidata.c: * gst/vbidec/vbidata.h: * gst/vbidec/vbiscreen.c: * gst/vbidec/vbiscreen.h: Fix up FSF address in some source files as well 2012-08-18 11:09:39 -0400 Brian Pepple * COPYING: * COPYING.LIB: Correct incorrect FSF address in license files https://bugzilla.gnome.org/show_bug.cgi?id=682158 2012-08-17 22:57:10 +0200 Stefan Sauer * gst/audiovisualizers/gstaudiovisualizer.c: * gst/audiovisualizers/gstaudiovisualizer.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: audiovisualizer: sync to change in base and port Add support for GstVideoMeta and GstVideoFrame. Remove some redundant fields that are also in GstVideoInfo. Don't disable the shader code, it does not look broken. 2012-08-17 15:15:34 +0200 Stefan Sauer * gst/audiovisualizers/README: audiovisualizer: status update 2012-08-15 18:28:09 -0400 Brian Pepple * configure.ac: configure: add missing AC_LANG_PROGRAM call to DirectShow tests https://bugzilla.gnome.org/show_bug.cgi?id=681952 2012-08-15 11:26:59 +0200 Stefan Sauer * gst/audiovisualizers/gstaudiovisualizer.c: visualizer: small cleanup Apply cleanup from copy in base. 2012-07-24 20:39:41 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix flushing/sync handling There was a stray adapter_flush() now that we used a temporary buffer 2012-07-19 13:35:51 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Better detect PCR resets Assume that any differences in PCR greater than 15s means there is a reset in the stream. 2012-07-19 09:05:28 +0200 Edward Hervey * ext/vp8/gstvp8dec.c: vp8dec: Call gst_video_decoder_negotiate() 2012-07-19 09:05:13 +0200 Edward Hervey * ext/schroedinger/gstschrodec.c: schrodec: Call gst_video_decoder_negotiate() 2012-07-14 13:59:41 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Remove/demote some debugging 2012-07-13 16:56:11 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Always use current PTS/DTS This avoids setting old PTS and/or DTS 2012-07-13 16:22:27 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Remove unneeded memset(0) 2012-07-13 16:22:11 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.h: * gst/mpegtsdemux/pesparse.h: * gst/mpegtsdemux/tsdemux.h: mpegts: Use G_GNUC_INTERNAL 2012-07-11 08:10:30 +0200 Edward Hervey * configure.ac: configure.ac: dvb plugin is ported 2012-07-11 08:10:18 +0200 Edward Hervey * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: dvb: More fixups to 1.0 Not tested yet ! Conflicts: sys/dvb/gstdvbsrc.c 2012-06-29 18:04:04 +0200 Edward Hervey * sys/dvb/camdevice.c: cam: Allow time for CA to initialize Some devices take some time to initialize, and until they are they will error out when trying to get information about the CA device. 2012-06-29 18:01:15 +0200 Edward Hervey * sys/dvb/camconditionalaccess.c: cam: PMT_REPLY parsing Not used yet 2012-06-29 18:00:41 +0200 Edward Hervey * sys/dvb/dvbbasebin.c: * sys/dvb/dvbbasebin.h: dvbbasebin: Switch to use tsparse 2012-06-29 17:53:30 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Use gst_structure_*_take_value where applicable Saves copying/freeing data 2012-06-29 16:14:02 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Cache the GIConv Avoids having to constantly open/free them (which will end up being very often with EIT/NIT). 2012-06-29 16:09:31 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: reset element in READY=>PAUSED Ensures all subclass reset vmethods are called 2012-06-28 12:18:28 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Use more Quarks 2012-06-26 19:01:07 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Remove useless code PCR/OPCR is meant to be handled by the packetizer 2012-06-26 18:59:32 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Calculate pcr/time/offset separately per program Avoids quite a few issues with multi-program streams 2012-06-26 18:54:55 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsparse.c: tsparse: Push out buffer on main source pad 2012-06-26 18:51:21 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtbase: vmethod to notify when we're done processing input This can be used to notify subclasses no more data is expected this round. tsparse will use it to push whole buffers (without copy) on the main source pad. It could also be used later to decide whether to push pending data in order to reduce latency. 2011-02-01 11:39:16 -0800 Fabrizio (Misto) Milo * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc + dvb api buffer property to overcome buffer under reads 2012-08-08 15:06:09 +0200 Edward Hervey * ext/soundtouch/gstpitch.cc: soundtouch: Don't assume output buffer timestamps There's no guarantee whatsoever that the first buffer to output will start at the segment.start. Instead, wait for the first buffer after a segment, and use that timestamp 2012-08-14 11:17:25 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8dec.h: vp8dec: Add support for multiple decoding threads 2012-08-14 11:09:46 +0200 Sebastian Dröge * configure.ac: * ext/vp8/gstvp8dec.c: vp8dec: Add support for the MFQE postprocessing flag Which is enabled by default if postprocessing is enabled. 2012-08-13 10:57:57 +0200 Wim Taymans * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: only apply repeat count when set When there is no extension header, the repeat_count variable is left to 0 and then the duration on the output buffers is calculated wrongly. Because the duration is used to interpolate output timestamps, the output timestamps are also wrong, causing bad framerates. See https://bugzilla.gnome.org/show_bug.cgi?id=681535 2012-08-09 13:37:22 +0200 Sebastian Dröge * configure.ac: * ext/vp8/Makefile.am: vp8: Use pkg-config file for getting the LIBS and CFLAGS 2012-08-09 11:48:39 +0200 Sebastian Dröge * ext/mpg123/gstmpg123audiodec.c: mpg123: Give MARGINAL rank to the mpg123 decoder element 2012-08-08 17:40:34 +0200 Sebastian Dröge * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: gst: Set alignment at the correct place of GstAllocationParams 2012-08-08 17:06:20 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Update the per-component strides for every frame too This is necessary because of GstVideoAlignment 2012-08-08 16:35:12 +0100 Tim-Philipp Müller * configure.ac: * win32/common/config.h: Back to development === release 0.11.93 === 2012-08-08 15:32:19 +0100 Tim-Philipp Müller * configure.ac: * gst-plugins-bad.doap: Release 0.11.93 2012-08-08 12:58:50 +0100 Tim-Philipp Müller * ext/mpg123/Makefile.am: mpg123: dist header file 2012-08-08 12:13:13 +0100 Tim-Philipp Müller * win32/common/config.h: * win32/common/libgstphotography.def: win32: update for photography API changes 2012-08-08 11:53:05 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: tests: .gitignore new curlsmtpsink test binary 2012-08-03 16:21:09 +0100 Olivier Crête * configure.ac: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: mimic: Port to 0.11 2012-08-07 18:23:37 +0200 Andoni Morales Alastruey * sys/winks/gstksvideosrc.c: winks: add missing default switch case 2012-08-07 18:23:05 +0200 Andoni Morales Alastruey * sys/winks/gstksvideodevice.c: winks: fix types 2012-08-07 18:22:36 +0200 Andoni Morales Alastruey * sys/winks/gstksvideodevice.c: winks: fix format warnings 2012-08-07 18:21:49 +0200 Andoni Morales Alastruey * sys/winks/gstksclock.c: * sys/winks/gstksvideosrc.c: winks: fix unused variables warnings 2012-08-07 18:20:53 +0200 Andoni Morales Alastruey * sys/winks/ksvideohelpers.c: winks: don't reinitialize MEDIASUBTYPE_I420 2012-08-07 18:19:29 +0200 Andoni Morales Alastruey * sys/dshowsrcwrapper/gstdshow.cpp: * sys/winks/kshelpers.c: winks: define STATIC_KSPROPSETID_Wave_Queued if not defined 2012-08-07 16:53:02 +0200 Andoni Morales Alastruey * configure.ac: * sys/Makefile.am: * sys/winks/Makefile.am: winks: integrate build with autotools 2012-08-02 14:26:32 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: avoid duplicated symbols in static links Rename the DLL entry point the avoid duplicated symbols in static links. 2012-08-02 14:26:32 +0200 Andoni Morales Alastruey * sys/d3dvideosink/Makefile.am: d3dvideosink: avoid duplicated symbols in static links Rename the DLL entry point the avoid duplicated symbols in static links. 2012-08-06 13:59:27 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: gst: Add stream-id to stream-start events 2012-07-26 19:31:14 +0200 Oleksij Rempel * ext/vp8/gstvp8enc.c: vp8enc: initiate encoder to fix a crash. Without this patch vp8enc send header before and after first key frame. On second keyframe vp8dec will crash without getting decoded frame. With this pipe it is easy to reproduce this issue: gst-launch-1.0 videotestsrc ! vp8enc ! vp8dec ! fakesink https://bugzilla.gnome.org/show_bug.cgi?id=680667 2012-08-05 16:40:28 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 94ccf4c to 668acee 2012-08-04 16:31:30 +0100 Tim-Philipp Müller * ext/celt/gstceltenc.c: * ext/kate/gstkateenc.c: * ext/kate/gstkatetag.c: * ext/kate/gstkateutil.c: * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/resindvd/rsnstreamselector.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/camerabin2/gstcamerabin2.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mxf/mxfdemux.c: * gst/nsf/gstnsf.c: * tests/check/elements/camerabin.c: * tests/check/elements/id3mux.c: * tests/check/elements/jifmux.c: * tests/check/elements/kate.c: * tests/check/elements/ofa.c: * tests/examples/mxf/mxfdemux-structure.c: * tests/icles/metadata_editor.c: gst_tag_list_free -> gst_tag_list_unref 2012-08-03 11:31:00 +0200 Patricia Muscalu * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlsmtpsink.c: * tests/check/elements/curlfilesink.c: curl: fixed some memory leaks in the plugin and the unit tests https://bugzilla.gnome.org/show_bug.cgi?id=681117 https://bugzilla.gnome.org/show_bug.cgi?id=681115 2012-08-03 14:12:05 +0100 Tim-Philipp Müller * configure.ac: configure: require libmpg123 >= 1.13 for 24-bit formats 2012-08-03 13:43:31 +0100 Tim-Philipp Müller * ext/mpg123/gstmpg123audiodec.c: mpg123: map input buffer in READ mode, not WRITE mode Makes things actually work. 2012-08-03 11:50:10 +0100 Tim-Philipp Müller * ext/mpg123/gstmpg123audiodec.c: mpg123: query supported output formats at run-time Fixes stuff. We use a string here since we can't be bothered with GValue. 2012-08-03 11:48:02 +0100 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/mpg123/Makefile.am: mpg123: hook up to build system 2012-08-03 11:13:48 +0100 Carlos Rafael Giani * ext/mpg123/gstmpg123audiodec.c: * ext/mpg123/gstmpg123audiodec.h: mpg123: add new libmpg123-based mp3 decoder plugin Needs a bit of cleaning up. https://bugzilla.gnome.org/show_bug.cgi?id=681003 2012-08-03 00:10:01 +0100 Tim-Philipp Müller * ext/schroedinger/gstschro.c: * gst/mpegtsmux/mpegtsmux.c: schroedinger, mpegtsmux: fix plugin names 2012-07-31 09:36:35 +0200 Robert Swain * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: Save image/video reconfiguration until capturing Add a src pad event handler function that filters reconfigure events to trigger the renegotiation code paths in the mode-specific start-capture phase. This is to work towards fixing unit tests but more work is needed. 2012-08-02 14:40:55 +0200 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: do not access frame buffer following _finish_frame call Fixes https://bugzilla.gnome.org/show_bug.cgi?id=680494 2012-08-01 11:34:08 +0100 Tim-Philipp Müller * ext/mplex/gstmplexjob.cc: mplex: default to DVD MPEG-2 format instead of Generic MPEG-1 2012-08-01 11:31:04 +0100 Tim-Philipp Müller * ext/mplex/gstmplexjob.cc: mplexjob: add nicks for format enums, add some more formats 2012-07-30 17:21:10 +0100 Tim-Philipp Müller * tests/check/elements/jifmux.c: tests: fix jifmux test for fixed fail() https://bugzilla.gnome.org/show_bug.cgi?id=680755 2012-07-29 01:11:29 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: fix preview message handling Preview messages now contain GstSamples instead of GstBuffers 2012-07-29 00:53:29 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: update preview buffer pushing need to pass a GstSample to the utilitary preview buffer post functions as a GstBuffer doesn't have caps anymore. The GstSample has the GstCaps and it is used to inform the preview's pipeline about the format of the input, before it gets converted to the user's requested output format. 2012-07-29 00:04:35 +0100 Tim-Philipp Müller * gst/camerabin2/gstcamerabin2.c: Revert "camerabin: update to new tag event creation API" This reverts commit 5d890b3c92714e1f37163290c32911bcd7818a57. The new API is the old API. 2012-07-28 18:04:57 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: Fix references to avoid element leaking Some pad probes are never going to be removed from the pads, so we shouldn't keep a camerabin reference with them or camerabin will never get released 2012-07-28 15:17:17 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: update to new tag event creation API 2012-07-28 12:09:42 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: examples: camerabin: remove assertion on null property Check if the flags are not null before trying to set them to camerabin to avoid an assertion 2012-07-28 00:32:58 +0200 Sebastian Dröge * ext/chromaprint/gstchromaprint.c: * ext/gme/gstgme.c: * ext/modplug/gstmodplug.cc: * ext/schroedinger/gstschrodec.c: * ext/soundtouch/gstbpmdetect.cc: * ext/vp8/gstvp8dec.c: * gst/camerabin2/gstcamerabin2.c: * gst/mpegtsdemux/tsdemux.c: * gst/videoparsers/gstmpegvideoparse.c: tag: Update for taglist/tag event API changes 2012-07-27 13:22:52 +0200 Mark Nauwelaerts * ext/assrender/gstassrender.c: assrender: process ATTACHMENT tag as sample 2012-07-25 16:05:12 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: * ext/voaacenc/gstvoaacenc.c: faac, voaacenc: adjust to modified audioencoder getcaps helper API 2012-07-24 12:28:18 +0200 Wim Taymans * gst/audiovisualizers/gstaudiovisualizer.c: audiovisualizer: fixate caps 2012-07-24 10:46:39 +0200 Wim Taymans * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstgaudieffectsorc-dist.c: * gst/gaudieffects/gstgaudieffectsorc-dist.h: * gst/gaudieffects/gstgaudieffectsorc.orc: guadi: prefix orc functions with gaudi_orc_ 2012-07-24 10:44:51 +0200 Wim Taymans * gst/fieldanalysis/gstfieldanalysis.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.h: * gst/fieldanalysis/gstfieldanalysisorc.orc: fieldanalysis: prefix orc functions 2012-07-24 10:32:51 +0200 Wim Taymans * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstbayerorc-dist.c: * gst/bayer/gstbayerorc-dist.h: * gst/bayer/gstbayerorc.orc: * tests/check/Makefile.am: bayer: prefix orc functions with bayer_orc Add bayer orc to the unit test 2012-07-24 10:32:20 +0200 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/baseaudiovisualizer.c: tests: fix visualizer compilation 2012-07-23 11:36:01 +0200 Sebastian Dröge * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schro: Add support for video metadata and arbitrary strides 2012-07-23 10:54:17 +0200 Sebastian Dröge * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schro: Map raw video buffers with the correct read/write flags 2012-07-23 10:35:03 +0200 Sebastian Dröge * ext/schroedinger/gstschrodec.c: * ext/vp8/gstvp8dec.c: ext: Update for video base classes API changes 2012-07-23 08:45:41 +0200 Sebastian Dröge * common: Automatic update of common submodule From 98e386f to 94ccf4c 2012-07-21 19:59:21 +0200 Oleksij Rempel * ext/vp8/gstvp8enc.c: vp8enc: fix memory leak unref frame. i hope it is correct place to do it. Signed-off-by: Oleksij Rempel 2012-07-20 23:28:49 +0200 Robert Swain * gst/interlace/gstinterlace.c: interlace: Use buffer flags and caps correctly This requires a recent commit to -base that adds an INTERLACED buffer flag. 2012-07-20 16:43:19 +0200 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: only discard frame once upon decoding error Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679886 2012-07-19 16:10:40 +0200 Stefan Sauer * gst/audiovisualizers/gstspectrascope.c: spectrascope: fabs->sqrt to calculate the magnitude 2012-07-18 09:19:30 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: also activate in push mode if the scheduling query failed In case pads are unlinked somewhere. 2012-07-18 08:41:43 +0100 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegdemux: fix push mode activation Extra unref on push mode activation caused havoc. 2012-07-16 00:05:26 +0100 Tim-Philipp Müller * ext/spc/gstspc.c: spc: extract year as GstDateTime instead of GDate 2012-07-17 18:05:23 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: no need to make buffer writable twice 2012-07-17 18:05:00 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: plug some ref leaks 2012-07-17 14:02:14 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: adjust to modified video overlay composition API 2012-07-17 16:39:02 +0200 Wim Taymans * gst/dtmf/gstrtpdtmfdepay.c: * gst/rtpmux/gstrtpmux.c: update for RTP buffer api changes 2012-07-16 22:02:44 +0200 Stefan Sauer * docs/plugins/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/audiovisualizers/gstaudiovisualizer.c: * gst/audiovisualizers/gstaudiovisualizer.h: * gst/audiovisualizers/gstbaseaudiovisualizer.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstspectrascope.h: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstsynaescope.h: * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: audiovisualizer: shorten base class name As suggested on IRC rename to AudioVisualizer. We use custom suffix on the type to avoid clashing with other copies for the time being. 2012-07-15 12:27:12 +0100 Tim-Philipp Müller * ext/celt/gstceltenc.c: * ext/opencv/gsttemplatematch.c: * ext/wayland/gstwaylandsink.c: * gst/dvbsuboverlay/dvb-sub.c: * gst/festival/gstfestival.c: * gst/hls/gsthlsdemux.c: celt, opencv, wayland, dvbsub, festival, hls: printf format fixes 2012-07-14 15:51:08 +0200 Alban Browaeys * ext/wayland/Makefile.am: wayland: don't link to gstinterfaces, which doesn't exist any more https://bugzilla.gnome.org/show_bug.cgi?id=679929 2012-06-30 00:22:40 +0300 Sreerenj Balachandran * configure.ac: * ext/opencv/gstcvdilate.c: * ext/opencv/gstcvdilateerode.c: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcverode.c: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsobel.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: * ext/opencv/gstmotioncells.c: * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvvideofilter.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttextoverlay.c: * ext/opencv/gsttextoverlay.h: opencv: port to 0.11 Basic port to 0.11 API. https://bugzilla.gnome.org/show_bug.cgi?id=679164 2012-07-13 12:32:51 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: adaptively blend or attach video overlay composition Conflicts: gst/dvbsuboverlay/gstdvbsuboverlay.c 2012-07-13 12:27:57 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: use video overlay composition helper ... rather than custom home-made blending. Conflicts: gst/dvbsuboverlay/gstdvbsuboverlay.c 2012-07-12 10:13:50 +0200 Mark Nauwelaerts * gst/mpegtsdemux/tsdemux.c: tsdemux: more correctly determine expected PES packet payload size ... particularly considering that packet_length == 0 is possible. 2012-07-11 23:17:19 +0200 Stefan Sauer * ext/soundtouch/gstpitch.cc: pitch: register as effect 2012-07-11 20:34:05 +0200 Mark Nauwelaerts * gst/mpegtsdemux/tsdemux.c: tsdemux: correctly determine expected PES packet payload size Avoids consistently failing to detect that a packet is complete, which would then only be pushed upon the start of a next packet, which leads to quite a delay in case of a sparse (subtitle) stream. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=666674 2012-07-10 17:58:22 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: ensure minimum page time out of 1 second ... to compensate for some bogus subtitle with a 0 timeout, which would result in only being shown for a very unreadable amount of time. See https://bugzilla.gnome.org/show_bug.cgi?id=666674 2012-07-11 14:27:46 +0100 Tim-Philipp Müller * tests/icles/pitch-test.c: tests: fix build of pitch-test Does not sound like the same test in 0.10 though.. 2012-07-11 13:59:18 +0100 Tim-Philipp Müller * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix compiler warnings gstdvbsuboverlay.c:772:15: error: pointer targets in passing argument 5 of 'gst_segment_clip' differ in signedness /home/tpm/gst/0.11/gstreamer/gst/gstsegment.h:192:14: note: expected 'guint64 *' but argument is of type 'gint64 *' gstdvbsuboverlay.c:772:15: error: pointer targets in passing argument 6 of 'gst_segment_clip' differ in signedness 2012-07-11 13:49:14 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fixup end-of-display-set forcing Conflicts: gst/dvbsuboverlay/gstdvbsuboverlay.c 2012-07-11 13:48:32 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: ensure valid subtitle running time by proper clipping In particular, pass buffer timestamp (pts) to dvb_sub, and then clip and convert to running time when the duration (timeout) is known after decoding it. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=660233 Conflicts: gst/dvbsuboverlay/gstdvbsuboverlay.c 2012-07-11 13:45:14 +0200 Mark Nauwelaerts * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: properly force end-of-display-set ... which is upon receiving new data with different PTS spec-wise, or optionally upon each packet of subtitle data if desired by property. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=669310 Conflicts: gst/dvbsuboverlay/gstdvbsuboverlay.c 2011-12-21 13:00:27 +0200 Mart Raudsepp * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Handle non_modifying_colour_flag correctly in the RLE handlers The check for when to not memset was checking on an undeterministic 'bits' variable value, which is only meant to be used inside the loop earlier when it is supposed to check if clut_index is 1 together with non_mod set, as per spec: "non_modifying_colour_flag: If set to '1' this indicates that the CLUT entry value '1' is a non modifying colour. When the non modifying colour is assigned to an object pixel, then the pixel of the underlying region background or object shall not be modified. This can be used to create "transparent holes" in objects." https://bugzilla.gnome.org/show_bug.cgi?id=666352 2010-10-13 10:55:17 +0300 Lasse Laukkanen * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photography: update documentation https://bugzilla.gnome.org/show_bug.cgi?id=622482 2010-10-14 10:49:55 +0300 Lasse Laukkanen * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photography: Add manual control of exposure, focus and white balance Add new interface properties and mode for better manual control of exposure, focus and white balance. https://bugzilla.gnome.org/show_bug.cgi?id=622482 2010-10-08 11:33:31 +0300 Lasse Laukkanen * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/camerabin2/gstwrappercamerabinsrc.c: photography: Add GstPhotography prefix and fix spelling colour->color https://bugzilla.gnome.org/show_bug.cgi?id=622482 2012-07-10 23:27:23 +0100 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: minor header indentation clean-up for mpegvideoparser 2012-07-10 17:47:20 +0200 Wim Taymans * configure.ac: * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: soundtouch: port to 0.11 2012-07-10 12:10:28 +0200 Wim Taymans * gst/festival/gstfestival.c: festival: unmap input buffer 2012-07-04 10:14:35 +0300 Sreerenj Balachandran * configure.ac: * gst/festival/Makefile.am: * gst/festival/gstfestival.c: port festival to 0.11 Fixes https://bugzilla.gnome.org/show_bug.cgi?id=679373 2012-07-10 11:14:59 +0100 Tim-Philipp Müller * tests/check/elements/camerabin.c: tests: fix some pad template-related criticals in camerabin test 2012-07-10 00:59:40 +0100 Tim-Philipp Müller * gst/dataurisrc/gstdataurisrc.c: dataurisrc: copy into provided buffer if a buffer is provided 2012-07-09 22:08:50 +0100 Tim-Philipp Müller * tests/check/elements/zbar.c: tests: fix zbar test 2012-07-09 12:22:45 +0200 Mark Nauwelaerts * gst/asfmux/gstasfmux.c: asfmux: update for riff field rename 2012-07-08 19:23:30 +0200 Stefan Sauer * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstbaseaudiovisualizer.h: audiovisualizers: update baseclass from libvisual porting 2012-07-08 00:08:55 +0100 Tim-Philipp Müller * gst/dtmf/gstdtmfsrc.c: dtmfsrc: pass unhandled non-custom events to the base class https://bugzilla.gnome.org/show_bug.cgi?id=666626 2012-07-06 14:53:57 +0100 Tim-Philipp Müller * gst/asfmux/gstasfmux.c: asfmux: remove deprecated "is-live" property Use the "streamable" property instead. 2012-07-06 11:50:53 +0200 Wim Taymans * ext/vp8/gstvp8enc.c: * sys/pvr2d/gstpvrvideosink.c: update for query api changes 2012-07-06 11:26:55 +0200 Wim Taymans * ext/vp8/gstvp8dec.c: update for query api changes 2012-07-06 11:03:04 +0200 Wim Taymans * ext/vp8/gstvp8enc.c: update for allocation query changes 2012-07-04 11:38:51 +0200 Aleix Conchillo Flaque * sys/shm/shmpipe.c: shmsrc: memory corruption when a client disconnects (fixes #679385) 2012-07-05 13:18:47 +0200 Sebastian Dröge * ext/musepack/gstmusepackdec.c: * gst/aiff/aiffparse.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mxf/mxfdemux.c: * gst/rawparse/gstrawparse.c: gst: Implement segment-done event 2012-07-03 12:57:58 +0200 Sebastian Dröge * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: Chain up to the parent class' finalize implementation 2012-07-02 17:55:37 -0700 David Schleef * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: decklinksink: Better handling of audio output Conflicts: sys/decklink/gstdecklinksink.cpp 2012-07-02 17:52:15 -0700 David Schleef * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklinksrc: Send newsegment events 2012-07-02 17:51:18 -0700 David Schleef * sys/decklink/gstdecklinksink.cpp: decklinksink: Mark element as sink element 2012-07-02 17:49:54 -0700 David Schleef * sys/decklink/gstdecklink.cpp: decklink: use GOnce in type registration 2012-07-02 17:32:14 -0700 David Schleef * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: inter: Increase the inter audio surface buffering 2012-07-02 12:04:19 -0700 David Schleef * gst/inter/gstinteraudiosink.c: interaudiosink: reenable channel property 2012-07-02 12:03:44 -0700 David Schleef * gst/inter/gstinteraudiosrc.c: interaudiosrc: Set format to time 2012-06-29 12:03:51 +0100 Tim-Philipp Müller * sys/d3dvideosink/d3dvideosink.c: * sys/directdraw/gstdirectdrawsink.c: * sys/dshowvideosink/dshowvideosink.cpp: * sys/pvr2d/gstpvrvideosink.c: * sys/vdpau/gstvdpvideopostprocess.c: sys: make video sinks default to force-aspect-ratio=true 2012-06-28 18:04:10 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsparse.c: mpegtsbase: Move known PSI PIDs to where they belong This avoids tsdemux parsing data is doesn't really care about Conflicts: gst/mpegtsdemux/mpegtsparse.c 2012-06-02 08:05:44 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Add more known default SI PIDs 2012-06-28 17:40:16 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix AAC LATM caps 2012-06-22 16:47:58 +0200 Mark Nauwelaerts * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: add basic output unit test verification 2012-06-22 17:51:37 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: apply some more CLOCK_BASE to ensure slack for PCR offset Conflicts: gst/mpegtsmux/tsmux/tsmux.c 2012-06-27 11:23:19 +0200 Wim Taymans * gst/asfmux/gstasfmux.c: * sys/dshowdecwrapper/gstdshowvideodec.cpp: fix x-wmv format string 2012-06-26 16:33:54 +0200 Wim Taymans * configure.ac: * gst/interlace/gstinterlace.c: interlace: port to 0.11 2012-06-25 16:18:41 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: release the offscreen surface before the d3d device The offscreen surface keeps a reference on the d3d device, so if the device is released first we don't see the reference count debug message going to 0 as it should be. 2012-06-19 20:16:40 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: clean up element Remove old commented code and uneeded extra indentation 2012-06-19 20:03:02 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: rework locking for devices lost 2012-06-19 20:19:27 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: release and recreate the device in prepare_window 2012-06-24 21:11:39 +0200 Stefan Sauer * gst/audiovisualizers/gstspectrascope.c: spectrascope: avoid dark pixels in fade-and-move-up mode 2012-06-24 20:54:24 +0200 Stefan Sauer * gst/audiovisualizers/README: * gst/audiovisualizers/gstbaseaudiovisualizer.c: audiovisualizers: fix input buffer handling Use _replace instead of _append to fix growing buffers. 2012-06-23 15:02:13 +0100 Tim-Philipp Müller * gst/hls/gsturidownloader.c: * gst/sdp/gstsdpdemux.c: hls, sdp: update for gst_element_make_from_uri() changes 2012-06-21 12:17:09 +0100 Tim-Philipp Müller * sys/v4l2/README: sys: remove left-over v4l2 dir which has moved to good let's not keep a README around to announce it's moved to -good, that's just clutter. 2012-06-21 11:43:23 +0100 Sebastian Dröge * configure.ac: configure: Really always define DECKLINK_OSX conditional 2011-07-13 19:25:08 +0100 Tony Houghton * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/mpegtspacketizer.c: * sys/dvb/gstdvbsrc.c: Correct satellite delivery descriptor parsing. Original code to parse satellite delivery descriptors to generate "satellite" structures appeared to be copy & pasted from cable's code without amending for satellite. Also added 8PSK to dvbsrc's enum for modulation. https://bugzilla.gnome.org/show_bug.cgi?id=654485 Conflicts: gst/mpegdemux/gstmpegdesc.h gst/mpegdemux/mpegtspacketizer.c 2012-06-20 18:14:11 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: tsparse: Rework handling and cleanups tspad always has a static source pad which output everything received (not functional yet). Program pads are now request pads. Remove all cruft that should have been removed from the switch over to mpegtsbase. Conflicts: gst/mpegtsdemux/mpegtsparse.c 2012-06-20 18:10:37 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Always send EOS subclass will take care of handling it more if needed 2012-06-20 17:52:13 -0500 Mike Ruprecht * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Fix element losing data at the end of buffers rtmpsrc outputs truncated buffers because, when enough data is read to fill the buffer, the amount read that time (todo) is set to zero before it's added to the cumulative buffer size (bsize). The buffer is then truncated to bsize resulting in lost data. This patch adds todo to bsize before setting todo to zero. Fixes #678509 2012-06-20 11:02:03 +0200 Edward Hervey * ext/timidity/gsttimidity.c: timidity: Fix flag checking 2012-06-20 10:59:08 +0200 Edward Hervey * ext/teletextdec/gstteletextdec.c: teletext: #if0 code that never happens The only place this method is called is with lofp being a guint8 (from a data block). 2012-06-20 10:58:32 +0200 Edward Hervey * ext/teletextdec/gstteletextdec.c: teletextdec: Use proper variable type 2012-06-20 12:31:19 +0200 Wim Taymans * gst-libs/gst/video/videocontext.c: * gst/hls/gsturidownloader.c: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camerabin2-test.c: update for bus api changes 2012-06-20 12:19:55 +0200 Mark Nauwelaerts * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: port test to 0.11 2012-06-20 12:17:37 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix value handling in pad iteration 2012-06-20 10:34:48 +0200 Wim Taymans * ext/gme/gstgme.c: * ext/mimic/gstmimenc.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/sndfile/gstsfsink.c: * ext/spc/gstspc.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfparse.c: * gst/cdxaparse/gstcdxaparse.c: * gst/freeze/gstfreeze.c: * gst/hls/gsthlsdemux.c: * gst/liveadder/liveadder.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mxf/mxfdemux.c: * gst/nsf/gstnsf.c: * gst/nuvdemux/gstnuvdemux.c: * gst/rawparse/gstrawparse.c: * gst/tta/gstttaparse.c: update for task api change 2012-06-19 22:45:27 -0400 Matej Knopp * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix memory leak https://bugzilla.gnome.org/show_bug.cgi?id=678130 2012-06-19 10:35:48 +0200 Edward Hervey * sys/dvb/parsechannels.c: dvb: Detect more issues with configuration file Report useful errors when: * file is present but empty * requested channel is not present 2012-06-19 10:22:50 +0200 Edward Hervey * sys/dvb/dvbbasebin.c: * sys/dvb/parsechannels.c: * sys/dvb/parsechannels.h: dvbbasebin: Emit an error when we fail reading the channels file Conflicts: sys/dvb/dvbbasebin.c 2011-02-01 10:23:04 -0800 Fabrizio (Misto) Milo * sys/dvb/gstdvbsrc.c: dvbsrc: spell-check 2011-01-14 19:30:08 -0800 Fabrizio (Misto) Milo * sys/dvb/gstdvbsrc.c: dvb: better dvsrc polarity info 2012-06-18 11:36:15 +0200 Edward Hervey * ext/teletextdec/gstteletextdec.c: teletext: Fix initialization We always ended up erroring on the first page otherwise Conflicts: ext/teletextdec/gstteletextdec.c 2012-06-10 11:36:32 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Don't use GByteArray Using a simple array comes to the same result for a fraction of the cost 2012-06-10 11:21:41 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Avoid copying GstStructure 2012-06-08 15:12:30 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.c: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/mpegtspacketizer.c: mpegdesc: Don't allocate/free GstMPEGDescriptor Just use static variables 2012-06-16 16:49:10 +0100 Tim-Philipp Müller * gst/mpegdemux/Makefile.am: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/gstpesfilter.c: * gst/mpegdemux/plugin.c: mpegdemux: rename plugin to mpegpsdemux 2012-06-16 16:30:17 +0100 Tim-Philipp Müller * gst/mpegdemux/Makefile.am: * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/flutspatinfo.c: * gst/mpegdemux/flutspatinfo.h: * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/flutspmtinfo.h: * gst/mpegdemux/flutspmtstreaminfo.c: * gst/mpegdemux/flutspmtstreaminfo.h: * gst/mpegdemux/gstmpegdesc.c: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: * gst/mpegdemux/gstsectionfilter.c: * gst/mpegdemux/gstsectionfilter.h: * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: * gst/mpegdemux/mpegtsparse.h: mpegdemux: remove unused TS demuxer bits that have moved to tsdemux 2012-06-16 19:20:29 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: remove obsolete struct field 2012-06-16 16:50:43 +0200 Mark Nauwelaerts * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux_ttxt.c: * gst/mpegtsmux/mpegtsmux_ttxt.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: add support for DVB subtitle and teletext streams See bug #673582. Conflicts: gst/mpegtsmux/Makefile.am 2012-06-16 16:50:39 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: optionally use fixed-size PES header 2012-06-16 16:50:36 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: only write PTS and DTS if different 2012-06-16 16:50:32 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: optionally set data_alignment flag in PES header 2012-06-16 16:50:27 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: re-enable inadvertent disabled code 2012-06-16 16:44:32 +0200 Mark Nauwelaerts * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: adjust again to modified buffer collect behaviour ... by effectively reverting previous adjustment. 2012-06-16 16:49:34 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: use default CollectPads collect heuristic ... with an appropriately custom buffer clip function to arrange for buffer processing. Conflicts: gst/mpegtsmux/mpegtsmux.c gst/mpegtsmux/mpegtsmux.h 2012-06-16 15:54:49 +0300 Raimo Järvi * gst/mpegtsmux/tsmux/tsmuxcommon.h: mpegtsmux: Fix compiler warnings https://bugzilla.gnome.org/show_bug.cgi?id=678211 2012-06-16 19:17:49 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix ported segment init 2012-06-14 14:49:55 -0700 Matej Knopp * configure.ac: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/mpegtsmux_aac.c: * gst/mpegtsmux/mpegtsmux_h264.c: * gst/mpegtsmux/mpegtsmux_h264.h: * gst/mpegtsmux/tsmux/crc.h: * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: port to 0.11 https://bugzilla.gnome.org/show_bug.cgi?id=678130 2012-06-15 13:00:37 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: don't recreate the d3d device if it already exists 2012-06-15 11:41:26 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/jasper/Makefile.am: * ext/jasper/gstjasper.c: * ext/jasper/gstjasperdec.c: * ext/jasper/gstjasperdec.h: * ext/jasper/gstjasperenc.c: * ext/jasper/gstjasperenc.h: * ext/jp2k/Makefile.am: jasper: Rename from jp2k to jasper Jasper is not the only JPEG2000 library out there and we might want to add encoders/decoders based on OpenJPEG for example. 2012-06-15 10:32:39 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: add missing mutex unlock on error path 2012-06-15 10:24:24 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.h: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: opus: set author to myself, and update copyright notices because as slomo noted, in fact pretty much all the code in there is mine. 2012-06-15 00:58:43 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: don't create new internal windows if we already have one 2012-06-08 23:01:26 +0300 Raimo Järvi * gst/librfb/gstrfbsrc.c: rfbsrc: Fix compiling in Windows https://bugzilla.gnome.org/show_bug.cgi?id=677724 2012-06-11 13:10:43 +0100 Vincent Penquerc'h * ext/resindvd/Makefile.am: resindvd: rename the lib from libresindvd to libgstresindvd For consistency. 2012-06-07 15:06:34 +0100 Vincent Penquerc'h * ext/resindvd/resindvdsrc.c: resindvd: guard against not finding some data on a DVD May possibly help with a particular DVD. https://bugzilla.gnome.org/show_bug.cgi?id=673118 2012-06-14 02:47:10 +0200 Sebastian Rasmussen * tests/check/elements/curlfilesink.c: curlfilesink: Remove stray debug prints Fixes https://bugzilla.gnome.org/show_bug.cgi?id=678060 2012-06-12 21:35:10 +0100 Tim-Philipp Müller * LICENSE_readme: * ext/Makefile.am: * ext/lcs/Makefile.am: * ext/lcs/gstcolorspace.c: lcs: remove old LCS colorspace conversion plugin Wasn't even ported to 0.10, and even back in the day no one knew where the corresponding lib was from. 2012-06-12 21:29:18 +0100 Tim-Philipp Müller * gst/chart/.gitignore: * gst/chart/Makefile.am: * gst/chart/chart.vcproj: * gst/chart/gstchart.c: chart: remove old plugin that has never been ported to 0.10 2012-06-12 21:20:38 +0100 Tim-Philipp Müller * gst/videodrop/Makefile.am: * gst/videodrop/gstvideodrop.c: * gst/videodrop/gstvideodrop.h: * gst/videodrop/videodrop.vcproj: videodrop: drop videodrop It was never even ported to 0.10, and videorate does its job now. 2012-06-12 21:16:52 +0100 Tim-Philipp Müller * LICENSE_readme: * REQUIREMENTS: * ext/Makefile.am: * ext/arts/.gitignore: * ext/arts/Makefile.am: * ext/arts/gst_arts.c: * ext/arts/gst_arts.h: * ext/arts/gst_artsio.idl: * ext/arts/gst_artsio_impl.cc: * ext/arts/gst_artsio_impl.h: * ext/artsd/Makefile.am: * ext/artsd/REQUIREMENTS: * ext/artsd/gstartsdsink.c: * ext/artsd/gstartsdsink.h: * m4/Makefile.am: * m4/as-arts.m4: * m4/gst-artsc.m4: arts: remove aRts-related plugins aRts development stopped in 2004, it's unlikely ever is still using it. Besides, these elements were never even ported to 0.10. 2012-06-12 21:02:23 +0100 Tim-Philipp Müller * LICENSE_readme: * ext/Makefile.am: * ext/shout/Makefile.am: * ext/shout/gstshout.c: * ext/shout/gstshout.h: shout: remove old shout plugin that has never been ported to 0.10 There's shout2 in -good now. 2012-06-12 20:35:50 +0100 Tim-Philipp Müller * LICENSE_readme: * ext/Makefile.am: * ext/hermes/Makefile.am: * ext/hermes/gsthermescolorspace.c: hermes: remove hermes colorspace converter that was never ported to 0.10 2012-06-12 19:06:51 +0100 Tim-Philipp Müller * Android.mk: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-legacyresample.xml: * gst-plugins-bad.spec.in: * gst/legacyresample/Makefile.am: * gst/legacyresample/buffer.c: * gst/legacyresample/buffer.h: * gst/legacyresample/debug.c: * gst/legacyresample/debug.h: * gst/legacyresample/functable.c: * gst/legacyresample/functable.h: * gst/legacyresample/gstlegacyresample.c: * gst/legacyresample/gstlegacyresample.h: * gst/legacyresample/resample.c: * gst/legacyresample/resample.h: * gst/legacyresample/resample_functable.c: * gst/legacyresample/resample_ref.c: * tests/check/Makefile.am: * tests/check/elements/legacyresample.c: legacyresample: remove legacy plugin 2012-06-12 19:02:57 +0100 Tim-Philipp Müller * ext/Makefile.am: * ext/audioresample/Makefile.am: * ext/audioresample/gstaudioresample.c: * ext/audioresample/gstaudioresample.h: audioresample: remove old audioresample plugin that was never even ported to 0.10 2012-06-12 18:53:13 +0100 Tim-Philipp Müller * ext/chromaprint/gstchromaprint.c: chromaprint: update for new tag event API 2012-06-12 18:47:21 +0100 Tim-Philipp Müller * LICENSE_readme: * REQUIREMENTS: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-divxdec.xml: * docs/plugins/inspect/plugin-divxenc.xml: * ext/Makefile.am: * ext/divx/Makefile.am: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.c: * ext/divx/gstdivxenc.h: divx: remove plugin that the world doesn't need any more 2002 called. 2012-06-12 10:59:39 +0200 Edward Hervey * gst/dvdspu/gstdvdspu.c: dvdspu: Fix array type We wanted an array of guint8 (and not an array of pointers) to store the data from gst_buffer_extract() and read it. 2012-06-12 09:10:54 +0200 Wim Taymans * ext/faad/gstfaad.c: faad: don't access buffer after _finish_frame Unmap the buffer before calling _finish_frame because we are not allowed to access it after. 2012-06-11 16:45:53 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: sprinkle some more debug catering 2012-06-11 16:44:02 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: add SPN/PTS indexing capabilities Based on patch by Andreas Frisch Fixes https://bugzilla.gnome.org/show_bug.cgi?id=644890 2012-06-11 14:03:26 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: avoid memcpy due to temporary packet buffer ... by writing directly into the output buffer instead. 2012-06-11 10:49:15 +0100 Vincent Penquerc'h * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: do not assert on data input, just return https://bugzilla.gnome.org/show_bug.cgi?id=674069 2012-06-10 14:29:58 +0100 Tim-Philipp Müller * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: allow debugging of render and highlight rectangles via environment variable Enable debugging of rectangles via GST_DVD_SPU_DEBUG. https://bugzilla.gnome.org/show_bug.cgi?id=667223 Conflicts: gst/dvdspu/gstspu-vobsub-render.c 2011-12-31 18:35:40 -0600 Rob Clark * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: cleanup debug code Clean up debug code for drawing highlight rects which wasn't even compiling previously. TODO: might be nice if this could be controlled by properties or env variables to make it possible to enable the debug code at runtime. https://bugzilla.gnome.org/show_bug.cgi?id=667223 Conflicts: gst/dvdspu/gstspu-vobsub-render.c 2012-06-08 17:14:09 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: plug leaks when freeing stream 2012-06-08 17:13:39 +0200 Mark Nauwelaerts * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: plug some leaks 2012-06-08 15:58:13 +0200 Sebastian Dröge * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/hls/gsthlsdemux.c: * tests/check/elements/curlfilesink.c: * win32/common/config.h: elements: Use gst_pad_set_caps() instead of manual event fiddling 2012-06-08 15:05:12 +0200 Edward Hervey * common: Automatic update of common submodule From 03a0e57 to 98e386f 2012-06-08 11:55:35 +0200 Mark Nauwelaerts * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: adjust to modified buffer collect behaviour 2012-06-08 11:12:06 +0200 Mark Nauwelaerts * tests/check/libs/mpegvideoparser.c: tests: mpegvideoparser: adjust to modified API 2012-06-07 17:43:06 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: drain cached data upon EOS 2012-06-07 17:38:51 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: allow for aligned output ... and refactor packet handling some more in the process. Fixes #651805. 2012-06-07 14:38:10 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: improve m2ts timestamp interpolation * a known PCR should really belong to a packet holding that PCR * interpolation can be extended backward for initial packets (PAT, PMT) 2012-06-07 12:17:24 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: tweak output buffer timestamping 2012-06-07 16:23:25 +0200 Sebastian Dröge * configure.ac: Back to development === release 0.11.92 === 2012-06-07 16:23:09 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * ext/cog/gstcogorc-dist.c: * gst-plugins-bad.doap: * gst/bayer/gstbayerorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/gaudieffects/Makefile.am: * win32/common/config.h: Release 0.11.92 2012-06-07 16:22:49 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2012-06-07 12:33:31 +0100 Vincent Penquerc'h * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: vp8: fix codec state leaks I only tested that vp8enc ! vp8dec does not crash, as valgrind does not grok at least one of the instructions used by vp8enc, preventing me from checking a leak, and the lack of one after the patch. 2012-06-07 12:25:03 +0100 Vincent Penquerc'h * ext/dirac/gstdiracenc.cc: diracenc: fix buffer leak 2012-06-07 12:16:21 +0100 Vincent Penquerc'h * ext/dirac/gstdiracenc.cc: diracenc: fix frame leaks 2012-06-07 12:01:31 +0100 Vincent Penquerc'h * ext/dirac/gstdiracenc.cc: diracenc: fix codec state leak 2012-06-07 11:58:53 +0100 Vincent Penquerc'h * ext/dirac/gstdiracenc.cc: diracenc: fix stray unref causing access to freed memory 2012-06-07 11:52:12 +0100 Vincent Penquerc'h * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: schroedinger: fix video codec state leaks 2012-06-06 18:18:54 +0200 Edward Hervey * common: Automatic update of common submodule From 1fab359 to 03a0e57 2012-06-06 16:00:45 +0200 Wim Taymans * ext/gme/gstgme.c: gme: update for tag event change 2012-06-03 01:58:12 +0300 Sreerenj Balachandran * configure.ac: configure: Fix the wayland version Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677362 2012-06-06 13:02:40 +0200 Wim Taymans * ext/modplug/gstmodplug.cc: * ext/schroedinger/gstschrodec.c: * ext/vp8/gstvp8dec.c: * gst/camerabin2/gstcamerabin2.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: * gst/videoparsers/gstmpegvideoparse.c: update for tag event change 2012-06-06 11:14:14 +0200 Wim Taymans * gst/bayer/gstbayer2rgb.c: bayer: fix output frame map 2012-06-05 17:57:41 +0200 Edward Hervey * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: Remove un-needed checks and inline some functions val and nr always exist (&nr, &value) bits is always called smaller than the width Makes parsing 30% faster 2012-06-05 18:03:10 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: more header clarifications and remove some redundant fields 2012-06-05 14:18:34 +0200 Mark Nauwelaerts * gst/mpegtsmux/tsmux/tsmux.c: mpegtsmux: avoid PID collision for auto-generated PID 2012-06-05 16:59:44 +0200 Edward Hervey * gst/mpegtsmux/tsmux/tsmuxstream.c: tsmux: inline more code With the previous commit, makes mpegtsmux 10 to 15% faster 2012-06-05 16:58:43 +0200 Edward Hervey * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: Don't use g_list_first () Seriously ... 2012-06-05 12:17:26 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: also properly reset and free pad data 2012-06-05 11:52:14 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: refactor init using _reset to cater for proper reuse 2012-06-04 16:24:05 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: header cleanups and clarifications 2012-06-04 16:05:03 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: tweak buffer handling ... for clarity and to avoid mixing _peek/_pop 2012-06-04 16:03:20 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: misc code cleanups and refactoring 2012-06-04 14:54:55 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: avoid separate allocation for list of programs 2012-06-04 14:54:08 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: rearrange define's 2012-06-04 14:48:29 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: removed hacked event handling Conflicts: gst/mpegtsmux/mpegtsmux.c Reverted back to 0.10 state as it wasn't really ported yet anyway. 2012-06-05 09:54:53 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtsdemux: Also parse TOT (Time Offset Section) It's the same as TDT, except with descriptors at the end 2012-06-05 09:52:42 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: FIXME/Comment about issues/errors 2012-06-05 09:48:04 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Fix leak 2012-06-05 09:44:45 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Reduce usage of GstAdapter Peek as much as possible in one go. Ideally we should remove usage of adapter altogether, but for the time being it provides a big enough speedup (around 2 times faster per packet processed). 2012-06-04 08:39:11 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Avoid alloc/free where possible Helps for streams with a lot of sections, like EIT 2012-06-04 08:37:44 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Add more sections that don't have a CRC 2012-06-04 08:32:51 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/mpegtsbase.c: mpegdefs: Add list of known table_id Along with the specifications from which they come. Avoids having to search for which spec a table_id belongs to 2012-06-03 10:58:20 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Clarify debug statements Use hex values in more cases (since that's how PID/table_id/... are represented in the various specs). 2012-06-03 10:56:28 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtsbase/packetizer: Add CAT section handling Allows reporting the global EMM 2012-06-03 10:53:52 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Add more debug in PSI handling Allows us to identify which SI we don't handle 2012-06-03 10:53:13 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Add more default known PSI table_id 2012-06-02 08:06:24 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: Refactor PSI detection 2012-06-05 09:30:35 +0200 Sebastian Dröge * win32/common/config.h: win32: Update config.h 2012-06-05 09:30:00 +0200 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: Fix GstBaseParse::get_sink_caps() implementations They should take the filter caps into account and always return the template caps appended to the actual caps. Otherwise the parsers stop to accept unparsed streams where upstream does not know about width, height, etc. Fixes bug #677401. 2012-06-01 16:29:03 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtbase: ECM/CA sections don't have a CRC So don't check for it :) Also add a bit more info in the warning message to speed up detecting whether it's a false-positive or not. 2012-06-01 10:59:22 +0200 Mark Nauwelaerts * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: mpeg: relax entry constraint ... since it is acceptable and properly handled further on. 2012-06-01 10:29:06 +0200 Edward Hervey * common: Automatic update of common submodule From f1b5a96 to 1fab359 2012-05-31 13:08:34 +0200 Sebastian Dröge * common: Automatic update of common submodule From 92b7266 to f1b5a96 2012-05-29 10:48:54 -0700 Andoni Morales Alastruey * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowfakesrc.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdecwrapper: add support for VC1 and fix plugins ranks 2012-05-29 10:48:03 -0700 Andoni Morales Alastruey * sys/dshowdecwrapper/gstdshowdecwrapper.cpp: * sys/dshowdecwrapper/gstdshowfakesrc.cpp: dshowdecwrapper: initialize debug properly 2012-05-29 10:43:43 -0700 Andoni Morales Alastruey * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdecwrapper: fix object disposal and finalization 2012-05-30 10:34:44 -0700 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: don't flush after a device lost 2012-05-30 13:54:11 +0200 Sebastian Dröge * sys/applemedia/Makefile.am: applemedia: Put the right flags into the right variable 2012-05-30 12:45:36 +0200 Sebastian Dröge * common: Automatic update of common submodule From ec1c4a8 to 92b7266 2012-05-30 11:32:01 +0200 Sebastian Dröge * configure.ac: configure: Revert accidentially committed stuff in last commit 2012-05-30 11:24:06 +0200 Sebastian Dröge * configure.ac: * sys/applemedia/Makefile.am: configure: Add OBJC specific compiler flags See bug #643939. 2012-05-30 11:23:52 +0200 Sebastian Dröge * common: Automatic update of common submodule From 3429ba6 to ec1c4a8 2012-05-29 17:24:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: read gain from the right place in the header It's at byte offset 16, not 14. 2012-05-24 11:11:00 -0300 Andre Moreira Magalhaes (andrunko) * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Refactoring and make core more similar to textoverlay Especially the combining of the text and video buffers is now almost the same as in textoverlay. We should really get a base class for this. Conflicts: ext/assrender/gstassrender.c ext/assrender/gstassrender.h 2012-05-28 15:48:33 +0200 Edward Hervey * sys/dvb/camapplication.c: * sys/dvb/camconditionalaccess.c: * sys/dvb/camtransport.c: dvb: Add more debugging to cam support 2012-04-24 11:09:11 +0200 Edward Hervey * ext/dirac/Makefile.am: * ext/dirac/gstdirac.cc: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracenc.cc: dirac: Port to -base video classes Conflicts: ext/dirac/Makefile.am 2012-05-28 16:42:59 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: Remove old video base classes 2012-05-28 16:42:08 +0200 Sebastian Dröge * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schroedinger: Port to 0.11 again 2012-05-28 07:58:52 +0200 Edward Hervey * ext/schroedinger/gstschrodec.c: schrodec: We don't assume packetized input Otherwise the parse vmethod nevers gets called 2012-04-24 11:08:58 +0200 Edward Hervey * ext/schroedinger/Makefile.am: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schroedinger: Port to -base video classes Conflicts: ext/schroedinger/Makefile.am ext/schroedinger/gstschrodec.c ext/schroedinger/gstschroenc.c Back to 0.10 state, needs porting again. 2012-05-28 16:05:21 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: vp8: Port to 0.11 again 2012-05-18 12:46:55 +0100 Vincent Penquerc'h * ext/vp8/gstvp8enc.c: vp8enc: fix target bitrate config with libvpx 1.1.0 libvpx 1.1.0 disallows a bitrate of 0, which was used by vp8enc as a default value. Instead, we use the default libvpx bitrate, scaled to our video size, if no bitrate was specified. This fixes encoding VP8 video with libvpx 1.1.0. https://bugzilla.gnome.org/show_bug.cgi?id=676245 2012-05-16 14:04:28 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Update for GstVideoCodecFrame API changes 2012-04-27 18:22:42 -0300 Thiago Santos * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8dec.h: vp8dec: Improve output_state handling Avoid getting output_state for every buffer as that requires getting the objectlock and doing reference counting. Store it locally when it is created and use it. 2012-04-27 09:05:57 -0300 Thiago Santos * ext/vp8/gstvp8dec.c: vp8dec: Use outputstate when copying output buffer data Using the input state was causing a crash because the strides/offsets would be wrong. Fix it by using the output as we are dealing with the decoded frame. 2012-04-24 11:08:41 +0200 Edward Hervey * ext/vp8/Makefile.am: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8dec.h: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8: Port to -base video base classes Conflicts: ext/vp8/Makefile.am ext/vp8/gstvp8dec.c ext/vp8/gstvp8enc.c Back to 0.10 state for now, need to be ported again. 2012-05-27 23:41:24 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: do not assert on bad header, error out instead 2012-05-27 00:00:20 +0100 Tim-Philipp Müller * tests/check/elements/jifmux.c: tests: don't use GstStructure API on tag lists 2012-05-26 14:57:50 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdesc.h: mpegdesc: Add more comments/info Namely where they belong to 2012-05-26 14:57:23 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Make sure we have a language code before using it 2012-05-26 14:11:24 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Check before getting descriptors from structure Avoids spurious warnings. Not having those descriptors is nothing fatal, so check their presence before trying to get them. 2012-05-26 14:08:41 +0200 Edward Hervey * gst/mpegtsdemux/pesparse.c: pesparse: Be a bit more permissive with PTS/DTS parsing According to the specifications a PTS_DTS_flags value of 0x01 is forbidden. ... but there are some rare files out there that do that. Instead of erroring out, let's warn, carry on parsing accordingly. If the packet is really corrupted there are enough checks afterward to detect that. 2012-05-25 22:20:07 +0100 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: heed test vector framing to eat any padding This fixes parsing on one particular test vector where payload data is smaller than the actual audio payload. 2012-05-25 14:15:44 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Fix bit operation "a % 8" corresponds to "a & 0x7" (and not 0xf). spotted by Julian Scheel 2012-05-24 16:22:42 +0200 Edward Hervey * ext/opus/gstopusparse.c: opusparse: Simplify check Avoids a unset variable warning (for nframes) with gcc 4.7.0 2012-05-24 22:12:56 +0100 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: reject major version number above what we grok 2012-05-24 21:58:44 +0100 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: bump written version from 0 to 0x01 as per the spec update at https://wiki.xiph.org/OggOpus#ID_Header 2012-04-30 14:40:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix lost packet handling for FEC/PLC The base audio decoder sends zero size packets, not NULL buffers, to signal dropped packets. 2012-05-24 12:32:03 +0200 Sebastian Dröge * common: Automatic update of common submodule From dc70203 to 3429ba6 2012-05-23 18:19:52 +0200 Sebastian Rasmussen * configure.ac: configure: suppress some warnings when debug is disabled Warnings about unused variables should be suppressed if core has the debug system disabled. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676672 2012-04-25 21:21:43 +0400 Руслан Ижбулатов * configure.ac: * sys/d3dvideosink/Makefile.am: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: * sys/d3dvideosink/directx/directx.h: * sys/d3dvideosink/directx/directx10/dx10_d3d.h: * sys/d3dvideosink/directx/directx11/dx11_d3d.h: * sys/d3dvideosink/directx/directx9/dx9_d3d.c: * sys/d3dvideosink/directx/directx9/dx9_d3d.h: * sys/d3dvideosink/directx/directx_d3d.c: * sys/d3dvideosink/directx/directx_d3d.h: Port d3dvideosink to 0.11 Fixes #674817 2012-05-23 12:07:14 +0200 Wim Taymans * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: wayland: port to 0.11 2012-05-22 18:55:38 +0200 Edward Hervey * sys/dvb/dvbbasebin.c: dvbbasebin: Emit no-more-pads when pad is added This avoids an endless hang with playbin2, which sees dvbbasesbin as having dynamic pads ... but never emitted no-more-pads. 2012-05-22 18:53:16 +0200 Edward Hervey * sys/dvb/camutils.c: camutils: Fix PMT message construction The size of the message ended up being bigger than its content. That cause some CA modules to just hang. 2012-05-22 18:51:34 +0200 Edward Hervey * sys/dvb/camtransport.c: camtransport: Allow delay when setting up cam device Some CA devices take a long time to set themselves up, therefore retry every 250ms (for a maximum of 2.5s) 2012-05-22 18:49:54 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Fixup/add debug statements 2012-05-22 18:48:07 +0200 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Only open device read/write when needed Avoid starting up kernel thread when not needed 2012-05-22 18:46:09 +0200 Edward Hervey * sys/dvb/parsechannels.c: dvb: Add warning when dvb channels file isn't present 2012-05-23 08:39:21 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Speed up _is_psi() By making it inline and simplifying the bit macros 2012-05-22 21:00:31 +0200 Mark Nauwelaerts * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: avoid scanning for start codes twice ... since a previous terminating start code serves as subsequent start code. 2012-05-22 19:11:29 +0200 Edward Hervey * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: dvb: Fixups for latest API changes 2012-04-10 12:36:15 +0200 Julian Scheel * gst/mpegtsdemux/tsdemux.c: tsdemux: Add language code to taglist. Read the language codes for tracks from the mpegts descriptors and add it into the pads taglist. https://bugzilla.gnome.org/show_bug.cgi?id=673896 2012-05-21 17:53:37 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Adapt to new packetizer API We no longer use GstBufferList and instead copy the incoming data into newly allocated memory. This makes tsdemux behaviour 3 to 4 times faster. 2012-05-21 17:53:15 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsparse.c: tsparse: Adapt to new packetizer API 2012-05-21 17:52:46 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Adapt to new packetizer behaviour 2012-05-21 17:48:54 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Avoid usage of GstBuffer internally The overhead of creating/using 188 byte GstBuffer from GstAdapter is too expensive. We now peek the next packet, and provide a data/size which is only valid until the packetizerpacket is cleared. In addition, cleanup all the internal code to deal with that new behaviour and remove double-checks which are no longer needed. The section_length is now the corrected section_length (i.e. with the additional 3 bytes). Avoid using gst_adapter_prev_timestamp and instead track the timestamp ourself. 2012-05-20 13:27:29 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Detect PCR wraparound in skew code If the received PCR is going backwards (by a safe margin), include that wraparound for further calculation. https://bugzilla.gnome.org/show_bug.cgi?id=674536 2012-05-22 14:48:40 +0200 Mark Nauwelaerts * gst/videoparsers/gstmpegvideoparse.c: videoparsers: avoid repeated caps setting 2012-05-22 14:00:36 +0200 Mark Nauwelaerts * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: tweak codec parser API and adjust parser element ... to allow for more efficient parsing and (more) consistent parsing API among various codec parsers. Fixes #672701. Conflicts: gst/videoparsers/gstmpegvideoparse.c 2012-05-22 12:30:07 +0200 Mark Nauwelaerts * gst-libs/gst/codecparsers/gstmpeg4parser.h: codecparsers: mpeg4: fixup documentation spelling 2012-05-08 16:51:11 -0400 Nicolas Dufresne * gst-libs/gst/codecparsers/gstmpegvideoparser.c: mpegvideoparser: Optimize scanning for start code https://bugzilla.gnome.org/show_bug.cgi?id=672701 2012-05-18 12:46:55 +0100 Vincent Penquerc'h * ext/vp8/gstvp8enc.c: vp8enc: fix target bitrate config with libvpx 1.1.0 libvpx 1.1.0 disallows a bitrate of 0, which was used by vp8enc as a default value. Instead, we use the default libvpx bitrate, scaled to our video size, if no bitrate was specified. This fixes encoding VP8 video with libvpx 1.1.0. https://bugzilla.gnome.org/show_bug.cgi?id=676245 2012-05-22 11:10:24 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Double properties are supposed in the range [0.0, 1.0] Fixes bug #676137. 2012-05-21 19:22:19 +0200 Mark Nauwelaerts * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: unobfuscate frame parsing ... and add comments and debug statements. Fixes #674202. Conflicts: gst/videoparsers/gstmpegvideoparse.c 2012-05-21 16:37:37 +0200 Mark Nauwelaerts * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Revert "fix crash" This reverts commit 91210831ee672343a296f31357144359d5c2e768. Such explicit reset should not be needed as it is arranged for by the baseclass in unison with monitoring for a new frame by subclass. As such it might wrongfully hide something else going on ... See #674073. 2012-05-21 15:24:25 +0200 Mark Nauwelaerts * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: mpegvideoparser: fix buffer size check ... to mind unsigned integer wrap Based on patch by Alban Browaeys Fixes https://bugzilla.gnome.org/show_bug.cgi?id=673436 2012-05-21 15:09:02 +0200 Mark Nauwelaerts * tests/check/elements/mpegvideoparse.c: tests: mpegvideoparse: fix unit test regression Fixes https://bugzilla.gnome.org/show_bug.cgi?id=676097 Conflicts: tests/check/elements/mpegvideoparse.c 2012-05-19 15:34:25 +0100 Tim-Philipp Müller * gst/autoconvert/gstautoconvert.c: autoconvert: don't access GstElementFactory structure directly 2012-05-18 16:17:13 +0200 Mark Nauwelaerts * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: mpeg4: do not expect a marker bit where not specified Fixes #672447. 2012-05-16 16:15:58 +0200 Julian Scheel * gst/mpegtsdemux/tsdemux.c: tsdemux: flush on pusi only for payload packets Data should not be flushed out of the tsdemux because a payload unit start indicator (pusi) is seen in a adaptation only ts packet. If the package contains no payload a pusi does not indicate a new PES packet, but PSI information, etc. This fixes playback of several TS files which contain ts packets without payload but with pusi set to 1. https://bugzilla.gnome.org/show_bug.cgi?id=676168 2012-05-18 10:15:15 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't queue data for streams that don't have a pad This would result in an error further down, and it also avoids processing for that data which we wouldn't be using anyway. 2012-05-18 10:13:19 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: Detect and handle scrambled packets Users (tsdemux/mpegtsparse) can decide what to do with that 2012-05-18 10:07:56 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Emit no-more-pads when all pads are activated Fixes #670921 again 2012-05-17 11:15:22 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaudieffectsorc-dist.c: * gst/gaudieffects/gstgaudieffectsorc-dist.h: gaudieffects: add fallback code for orc this includes an improved version of the burn filter, with a ~40% speed improvement. 2012-05-17 10:49:11 +0100 Luis de Bethencourt * configure.ac: configure: bump the orc version required to 0.4.16 Some opcodes have changed so they would fail to build with 0.4.14 2012-05-17 09:47:08 +0100 Luis de Bethencourt * gst/gaudieffects/gstsolarize.c: gaudieffects: use CLAMP in solarize No need to have a gate_int () function duplicating the already existing and established CLAMP () function. 2012-05-17 09:46:37 +0100 Luis de Bethencourt * gst/gaudieffects/gstexclusion.c: gaudieffects: use CLAMP in exclusion No need to have a gate_int () function duplicating the already existing and established CLAMP () function. 2012-05-17 09:45:52 +0100 Luis de Bethencourt * gst/gaudieffects/gstdodge.c: gaudieffects: use CLAMP in dodge No need to have a gate_int () function duplicating the already existing and established CLAMP () function. 2012-05-17 09:44:29 +0100 Luis de Bethencourt * gst/gaudieffects/gstchromium.c: gaudieffects: use CLAMP in chromium No need to have a gate_int () function duplicating the already existing and established CLAMP () function. 2012-05-17 11:47:19 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: also consider nal_length_size when inserting codec data See #676174. 2012-05-16 21:50:48 +0100 John Hein * gst/y4m/Makefile.am: y4m: link against the right libgstvideo https://bugzilla.gnome.org/show_bug.cgi?id=676189 2012-05-16 17:50:43 +0100 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: gaudieffects: example pipelines with videoconvert 2012-05-16 17:49:12 +0100 Luis de Bethencourt * gst/gaudieffects/Makefile.am: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstgaudieffectsorc.orc: gaudieffects: orc-ify burn filter 2012-05-16 09:12:32 +0200 Sebastian Dröge * configure.ac: configure: Require core/base 0.11.91 2012-01-13 18:57:20 -0500 Matej Knopp * .gitignore: .gitignore: add visual studio IDE files and OS X .DS_Store files https://bugzilla.gnome.org/show_bug.cgi?id=667899 2012-05-15 15:46:28 +0200 Stefan Sauer * gst/hls/gstfragment.c: * gst/hls/gsturidownloader.c: hls: use gst api for timestamps instead of the (wrong) api from a too new glib Conflicts: gst/hls/gstfragment.c 2012-05-14 11:38:21 +0200 Mark Nauwelaerts * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: optimize output by aggregating packets ... rather than pushing each (small) packet in a separate buffer. m2ts mode not yet optimized though. 2012-05-11 11:46:58 +0200 Albert Astrals Cid * gst/mpegtsdemux/mpegtspacketizer.c: mpegts: support items in extended event descriptor Fixes https://bugzilla.gnome.org/show_bug.cgi?id=672478 2012-05-14 09:15:55 +0200 Wim Taymans * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsmtpsink.h: curl: fix compilation Don't use deprecated thread API 2012-05-13 17:00:39 +0200 Sebastian Dröge * configure.ac: Back to development === release 0.11.91 === 2012-05-13 16:43:25 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.11.91 2012-05-13 16:43:02 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2012-05-13 15:56:17 +0200 Sebastian Dröge * common: Automatic update of common submodule From dc70203 to 3429ba6 2012-05-13 15:24:52 +0200 Sebastian Dröge * ext/curl/gstcurlhttpsink.c: curl: Fix equality comparison with extraneous parantheses compiler warning gstcurlhttpsink.c:411:27: error: equality comparison with extraneous parentheses 2012-05-12 12:08:42 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: check: make git ignore new unit test binaries 2012-04-25 19:46:53 +0200 Sebastian Rasmussen * docs/plugins/Makefile.am: * ext/curl/Makefile.am: * ext/curl/gstcurl.c: * ext/curl/gstcurlsmtpsink.c: * ext/curl/gstcurlsmtpsink.h: * tests/check/Makefile.am: * tests/check/elements/curlsmtpsink.c: curl: new curlsmtpsink element https://bugzilla.gnome.org/show_bug.cgi?id=653741 2012-01-23 09:45:24 +0100 Patricia Muscalu * ext/curl/Makefile.am: * ext/curl/gstcurl.c: * ext/curl/gstcurlftpsink.c: * ext/curl/gstcurlftpsink.h: * tests/check/Makefile.am: * tests/check/elements/curlftpsink.c: curl: new curlftpsink element http://bugzilla.gnome.org/show_bug.cgi?id=653741 2012-01-23 09:28:10 +0100 Patricia Muscalu * ext/curl/Makefile.am: * ext/curl/gstcurl.c: * ext/curl/gstcurlfilesink.c: * ext/curl/gstcurlfilesink.h: * tests/check/Makefile.am: * tests/check/elements/curlfilesink.c: curl: new curlfilesink element https://bugzilla.gnome.org/show_bug.cgi?id=653741 2012-01-23 09:00:47 +0100 Patricia Muscalu * configure.ac: * docs/plugins/Makefile.am: * ext/curl/Makefile.am: * ext/curl/gstcurl.c: * ext/curl/gstcurlbasesink.c: * ext/curl/gstcurlbasesink.h: * ext/curl/gstcurlhttpsink.c: * ext/curl/gstcurlhttpsink.h: * ext/curl/gstcurlsink.h: * ext/curl/gstcurltlssink.c: * ext/curl/gstcurltlssink.h: * tests/check/Makefile.am: * tests/check/elements/curlhttpsink.c: curl: refactor curlsink, rename to curlhttpsink Split into base, tls and http classes. https://bugzilla.gnome.org/show_bug.cgi?id=653741 2012-05-10 21:15:42 +0100 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: gaudieffects: consistency in templates name 2012-05-10 10:11:18 -0400 Thibault Saunier * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: Add a connection-speed property Conflicts: gst/hls/gsthlsdemux.c 2012-05-10 10:10:14 -0400 Thibault Saunier * gst/hls/gsthlsdemux.c: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hls: Add a way to get best playlist for a specific bitrate in M3U8Client Make use of it in hlsdemux 2012-05-08 13:27:15 -0400 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Add failover protection. Multiple streams with same bandwidth get retried 2012-05-08 13:04:35 -0400 Youness Alaoui * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: Calculate the real bitrate and switch to the correct variant We now calculate the actual bitrate using the download speed/size and then switch directly to the variant that matches our bandwidth the most. It will also be able to handle any use case where some of the variants are not available, and would skip them and go to the next possible variant. Conflicts: gst/hls/gsthlsdemux.c 2012-05-08 11:34:47 -0400 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Do not reset the sequence number in a live stream for a normal playlist update. Only for stream switching 2012-05-08 11:33:50 -0400 Thibault Saunier * gst/hls/gsthlsdemux.c: hlsdemux: If we update the playlist, make sure the sequence number is never more than 3 fragments before the end 2012-05-08 11:13:26 -0400 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: In a live stream, do not start from 3 fragments before the end. 2012-05-08 11:09:28 -0400 Youness Alaoui * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: No need to store position since it's the buffer's timestamp This also will fix the issue of having the current position different from the actual position of the first buffer in the queue in case the caching caused a resync of the sequence number. Conflicts: gst/hls/gsthlsdemux.c 2011-09-15 20:47:54 -0400 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Fallback to previous playlist when switching if the new playlist can't be fetched 2012-05-10 13:46:27 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstgaussblur.h: gaudieffects: consistency fixes in gstgaussblur 2012-05-10 10:47:27 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstgaussblur.h: gaudieffects: port gaussianblur to GstVideoFilter 2012-05-09 17:21:30 +0100 Luis de Bethencourt * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: gaudieffects: port solarize to GstVideoFilter 2012-05-09 17:06:20 +0100 Luis de Bethencourt * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: gaudieffects: port exclusion to GstVideoFilter 2012-05-09 16:55:17 +0100 Luis de Bethencourt * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstdodge.h: gaudieffects: port dodge to GstVideoFilter 2012-05-09 16:30:40 +0100 Luis de Bethencourt * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: gaudieffects: port dilate to GstVideoFilter 2012-05-09 16:10:18 +0100 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: gaudieffects: port burn to GstVideoFilter 2012-05-09 15:44:02 +0100 Luis de Bethencourt * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: gaudieffects: port chromium to GstVideoFilter 2012-05-09 14:28:09 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.c: gaudieffects: use GST_DEBUG_FUNCPTR in blur 2012-05-09 13:35:46 +0100 Luis de Bethencourt * configure.ac: gaudieffects: port to 0.11 2012-05-09 09:49:10 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstgaussblur.h: gaudieffects: port gaussblur to 0.11 2012-05-08 18:09:20 +0100 Luis de Bethencourt * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: gaudieffects: port solarize to 0.11 2012-05-08 18:09:09 +0100 Luis de Bethencourt * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: gaudieffects: port exclusion to 0.11 2012-05-08 17:38:22 +0100 Luis de Bethencourt * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstdodge.h: gaudieffects: port dodge to 0.11 2012-05-08 17:17:16 +0100 Luis de Bethencourt * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: gaudieffects: port dilate to 0.11 2012-05-08 16:50:06 +0100 Luis de Bethencourt * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstgaussblur.h: gaudieffects: add header to gaussblur 2012-05-08 16:39:02 +0100 Luis de Bethencourt * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: gaudieffects: port chromium to 0.11 2012-05-08 16:38:48 +0100 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: gaudieffects: port burn to 0.11 2012-05-08 14:17:06 +0100 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: controller: port to new controller location and api 2012-05-08 17:58:58 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: fix deadlock when the device is lost 2012-05-08 18:10:30 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: remove trailing ';' from locks defines to make gst-indent happy 2012-05-07 13:13:34 -0700 Aleix Conchillo Flaque * sys/shm/shmpipe.c: shmsink: fix memory corruption when a client disconnects (fixes #675640) Also, add a check to make sure a client isn't dumped twice 2012-05-07 23:57:08 +0100 Tim-Philipp Müller * gst/librfb/gstrfbsrc.c: rfbsrc: call WSAStartup/Cleanup on win32 If we link against libwinsock2, we should probably call Startup/Cleanup as well. https://bugzilla.gnome.org/show_bug.cgi?id=675415 2012-05-03 23:42:13 +0200 Marc-André Lureau * gst/librfb/Makefile.am: rfbsrc: fix librfb linking on win32 libtool: link: i686-w64-mingw32-gcc -shared .libs/libgstrfbsrc.dll.def .libs/libgstrfbsrc_la-gstrfbsrc.o -Wl,--whole-archive ./.libs/librfb.a -Wl,--no-whole-archive -L/usr/i686-w64-mingw32/sys-root/mingw/lib -lgstbase-0.10 -lgstreamer-0.10 -lxml2 -lgobject-2.0 -lgthread-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -mms-bitfields -mms-bitfields -O2 -o .libs/libgstrfbsrc.dll -Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker .libs/libgstrfbsrc.dll.a Creating library file: .libs/libgstrfbsrc.dll.a ./.libs/librfb.a(librfb_la-rfbdecoder.o): In function `rfb_decoder_read': /home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:164: undefined reference to `_imp__recv@16' ./.libs/librfb.a(librfb_la-rfbdecoder.o): In function `rfb_decoder_connect_tcp': /home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:112: undefined reference to `_imp__socket@12' /home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:119: undefined reference to `_imp__htons@4' /home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:123: undefined reference to `_imp__inet_addr@4' /home/elmarco/pkg/rhel/mingw-gstreamer-plugins-bad-free/gst-plugins-bad-0.10.23/build_win32/gst/librfb/../../../gst/librfb/rfbdecoder.c:125: undefined reference to `_imp__connect@12' It needs -lws2_32 which is already in $(WINSOCK2_LIBS) https://bugzilla.gnome.org/show_bug.cgi?id=675415 2012-05-02 08:03:46 -0700 Andoni Morales Alastruey * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: add missing casts to LPCSTR 2012-05-03 23:51:14 +0200 Andoni Morales Alastruey * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: lower rank of the DirectShow video sink plugin d3dvideosink should have a higher rank as it works better. 2012-05-02 07:56:00 -0700 Andoni Morales Alastruey * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: Fix compilation on x64 platforms 2012-05-05 20:01:46 +0300 Raimo Järvi * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstrtpasfpay.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/hls/gsturidownloader.c: * gst/mpegtsdemux/tsdemux.c: Fix printf format compiler warnings on mingw-w64 https://bugzilla.gnome.org/show_bug.cgi?id=675520 2012-05-05 18:20:33 +0100 Tim-Philipp Müller * configure.ac: * ext/rtmp/Makefile.am: * gst/dccp/Makefile.am: * gst/festival/Makefile.am: * gst/pcapparse/Makefile.am: * gst/sdp/Makefile.am: Add WINSOCK2_LIBS, remove WIN32_LIBS, fix rtmp build on Windows some more One way of passing -lws2_32 to plugins should be enough.. 2012-04-17 11:44:18 +0400 Руслан Ижбулатов * configure.ac: rtmp: link to winsock library on Windows https://bugzilla.gnome.org/show_bug.cgi?id=674243 2012-05-04 14:01:13 +0400 Руслан Ижбулатов * configure.ac: configure: mark unported Windows plugins as such https://bugzilla.gnome.org/show_bug.cgi?id=675440 2012-05-04 17:09:58 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: remove unnecessary code 2012-05-04 17:10:17 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: improve image capture debug 2012-05-04 17:05:38 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: always force image-profile to have variable framerate image-encodebin can't use videorate as it always store one buffer to be able to do its timestamps/duration math. As image captures only push one buffer at a time, this videorate behavior breaks camerabin usage. 2012-05-03 19:11:57 -0400 Youness Alaoui * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst/camerabin2/gstwrappercamerabinsrc.c: basecamerabin: Do not set the pad templates in the base class. It is best to let the subclass define the pad templates, this would allow the subclass to decide which caps the pads should have. 2012-05-01 17:55:02 +0300 Sreerenj Balachandran * gst-libs/gst/video/videocontext.c: videocontext: Remove the explicit unrefing of pad object getting from iterator. 2012-05-02 15:35:05 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: avoid assertion by using null caps as any NULL caps aren't valid caps, use a reference to 'any' caps 2012-05-02 15:24:26 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: Fix get/set_property for encoding profiles Encoding profiles are objects, not boxed types 2012-05-02 09:43:33 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: null caps are not valid in 1.0 Use any caps for the preview-caps property, as NULL caps are not valid caps in 1.0 anymore 2012-05-01 15:29:37 -0300 Thiago Santos * gst/camerabin2/camerabin2-src.txt: * gst/camerabin2/gstcamerabin2.c: camerabin: remove custom renegotiate event In 1.0 there is a core reconfigure event, camerabin doesn't need its custom renegotiate event anymore 2012-05-01 15:08:47 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin: Use plain video encoding profile for images Do not use jpeg as a container format for image captures, use the plain video encoding format. It was used as a container in 0.10 to force the addition of tags to the image. 2012-05-01 14:31:58 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: change output-selector negotiation mode In 0.10 camerabin2 controlled the negotiation strictly and the output-selector wouldn't forward setcaps calls. In 0.11 the renegotiation events are already in core and we can allow the pipeline to handle it without much control from camerabin part (I hope), so this patch makes output-selector forward caps negotiation events to the active pad. 2012-05-01 14:31:20 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: removing renegotiate handlers gstreamer 1.0 already has the reconfigure event, remove the custom event handling from wrappercamerabinsrc 2012-05-01 13:28:33 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: prevent caps renegotiation loop Only set the zoom capsfilter caps when the new caps are different, preventing a caps renegotiation loop. 2012-05-01 13:15:25 -0300 Thiago Santos * tests/examples/camerabin2/gst-camera2.c: camerabin: example: Update prepare-window-handle message Message name changed from prepare-xwindow-id to prepare-window-handle 2012-05-01 13:00:16 -0300 Thiago Santos * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin: examples: Renaming camerabin2 to camerabin 2012-05-01 10:26:27 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: basecamerabinsrc: updating property to new name enable-last-buffer is now enable-last-sample 2012-05-01 10:18:52 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin: Replacing ffmpegcolorspace with videoconvert 2012-04-30 12:36:46 +0200 Wim Taymans * gst/mpegtsdemux/mpegtsbase.c: tsbase: unref bad packets too Conflicts: gst/mpegtsdemux/mpegtsbase.c 2012-04-30 12:28:42 +0200 Wim Taymans * gst/mpegtsdemux/tsdemux.c: tsdemux: reset the state of the stream when flushing We need to reset the stream on a flush or else old packets could be added to the list and leak. 2012-04-30 11:05:20 +0200 Wim Taymans * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: don't push events upstream in pull mode In pull mode, don't push the seek event upstream. 2012-04-26 22:49:07 -0400 Wind Yuan * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparser: mpeg4 type error 2012-05-01 09:41:18 +0200 Wim Taymans * gst/mpegtsdemux/mpegtspacketizer.c: mpegts: don't poke into private adapter fields 2012-04-30 18:05:09 +0100 Tim-Philipp Müller * tests/check/elements/camerabin.c: tests: update camerabin(2) unit test for rename 2012-04-30 17:56:16 +0100 Tim-Philipp Müller * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstplugin.c: camerabin2: rename to "camerabin" But leave source code intact for now, for easier patch merging. 2012-04-30 17:44:34 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-camerabin2.xml: * gst/camerabin/.gitignore: * gst/camerabin/Makefile.am: * gst/camerabin/TODO: * gst/camerabin/camerabindebug.h: * gst/camerabin/camerabingeneral.c: * gst/camerabin/camerabingeneral.h: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinimage.h: * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinpreview.h: * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: * gst/camerabin/gstcamerabin-enum.c: * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin-marshal.list: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * gst/camerabin/gstcamerabincolorbalance.c: * gst/camerabin/gstcamerabincolorbalance.h: * gst/camerabin/gstinputselector.c: * gst/camerabin/gstinputselector.h: * tests/check/Makefile.am: * tests/check/elements/camerabin.c: * tests/check/elements/camerabin2.c: * tests/examples/Makefile.am: * tests/examples/camerabin/.gitignore: * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera-perf.c: * tests/examples/camerabin/gst-camera-perf.ui: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camera.h: * tests/examples/camerabin/gst-camera.ui: * tests/examples/camerabin/gst-camerabin-test.c: Remove old camerabin 2012-04-25 13:31:36 +0200 Gil Pedersen * gst/hls/gsthlsdemux.c: hlsdemux: start paused task on new data 2012-04-21 11:36:09 +0530 Arun Raghavan * Android.mk: * ext/faac/Makefile.am: android: Add support for the faac plugin 2012-04-16 10:07:51 -0400 Reynaldo H. Verdejo Pinochet * Android.mk: Reenable faad plugin for the Android NDK builds 2012-04-25 11:50:15 +0200 Sebastian Dröge * configure.ac: * ext/rsvg/gstrsvg.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgdec.h: rsvg: Stop using deprecated API when compiling with RSVG 2.35.0 or newer 2012-03-29 15:57:58 +0200 Edward Hervey * sys/decklink/gstdecklinksrc.cpp: decklink: Fix unitialized variable 2012-04-04 11:51:28 +0200 Edward Hervey * ext/opus/gstopusheader.c: opus: Handle GstByteWriter return values 2012-04-25 10:27:00 +0200 Sebastian Dröge * configure.ac: configure: sndio plugin is not ported yet 2012-04-25 10:25:51 +0200 Sebastian Dröge * ext/sndio/gstsndio.c: sndio: Fix i18n initialization 2012-04-11 21:05:26 -0400 Jacob Meuser * configure.ac: * ext/Makefile.am: * ext/sndio/Makefile.am: * ext/sndio/gstsndio.c: * ext/sndio/sndiosink.c: * ext/sndio/sndiosink.h: * ext/sndio/sndiosrc.c: * ext/sndio/sndiosrc.h: sndio: add sndio plugin for OpenBSD 2012-04-24 17:00:57 +0200 Mark Nauwelaerts * configure.ac: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstchromahold.h: * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstcoloreffects.h: coloreffects: port to 0.11 2012-04-24 15:20:16 +0200 Sebastian Dröge * gst/dvbsuboverlay/dvb-sub.c: dvb-sub: Use unchecked byte reader functions 2012-04-24 14:57:11 +0200 Sebastian Dröge * ext/libmms/gstmms.c: mms: Use correct enum type 2012-04-24 11:02:26 +0200 Sebastian Dröge * sys/vdpau/gstvdpsink.c: vdpau: Switch from deprecated XKeycodeToKeysym() to XkbKeycodeToKeysym() Conflicts: sys/vdpau/gstvdpsink.c 2012-04-23 17:11:38 +0200 Mark Nauwelaerts * gst/asfmux/gstasfmux.c: asfmux: use some more boilerplate 2012-04-23 16:55:18 +0200 Mark Nauwelaerts * configure.ac: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/asfmux/gstrtpasfpay.h: asfmux: port to 0.11 2012-04-12 14:17:14 +0200 Gil Pedersen * configure.ac: * gst-plugins-bad.spec.in: * gst/hls/gstfragment.c: * gst/hls/gstfragment.h: * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: * gst/hls/gsturidownloader.c: hlsdemux: port to 0.11 2012-04-20 15:05:36 +0200 Wim Taymans * sys/dvb/gstdvbsrc.c: dvbsrc: pass the reason for failed read as GstFlowReturn Make the _read_device function return a GstFlowReturn so that we can propagate this to the caller. This allows us to differentiate between poll errors and flushing state. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674219 2012-04-17 11:44:00 +0400 Руслан Ижбулатов * ext/voaacenc/gstvoaacenc.c: Fix format (type is explicitly unsigned long) Fixes #674244 2012-04-20 12:09:08 +0200 Wim Taymans * ext/nas/nassink.c: nas: Rework nassink a little Based on patch from Create and destroy flow in prepare/unprepare Remove some duplicate code from close and prepare that is now in unprepare. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674130 2012-04-18 12:02:52 +0300 Sreerenj Balachandran * gst-libs/gst/video/gstsurfaceconverter.c: * gst-libs/gst/video/gstsurfacemeta.c: * gst-libs/gst/video/gstsurfacemeta.h: Doc fixes (gstsurfaceconverter, gstsurfacemeta). 2012-04-20 11:23:56 +0200 Wim Taymans * gst/mpegtsdemux/Makefile.am: mpegtsdemux: we ignore warnings differently We suppress the warnings in the .c file instead. 2012-04-19 14:20:52 +0200 Gil Pedersen * configure.ac: * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: port to 0.11 Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674397 2012-04-20 10:50:19 +0200 Wim Taymans * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: clarify event ownership 2012-04-19 13:59:37 +0200 Gil Pedersen * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: fix memory leaks Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674393 2012-04-20 11:12:49 +0200 Sebastian Dröge * gst/fieldanalysis/Makefile.am: fieldanalysis: Does not need to link to libgstbasevideo at all Conflicts: gst/fieldanalysis/Makefile.am 2012-04-19 14:24:45 +0200 Wim Taymans * sys/applemedia/corevideobuffer.c: * sys/pvr2d/gstpvrbufferpool.c: fix for video api update 2012-04-19 12:29:56 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/y4m/gsty4mdec.c: * sys/applemedia/corevideobuffer.c: * sys/pvr2d/gstpvrbufferpool.c: video: Update for libgstvideo API changes 2012-04-17 22:46:12 -0400 Youness Alaoui * gst/jpegformat/gstjpegparse.c: jpegparse: Do not set the duration to the input buffer's duration unless valid This causes a bug where the first buffer has ts = 0, dur=X, the second buffer has ts=X (because of ts += duration), dur=-1, then the following buffers will start having a non valid timestamp. The real duration is only calculated during the caps negociation when there is a framerate available and the buffer's duration is invalid. 2012-04-17 15:44:07 +0200 Julian Scheel * gst/mpegtsdemux/tsdemux.c: tsdemux: Set currentlist to NULL after free. This prevents double free of currentlist is some circumstances. 2012-04-17 18:56:50 -0400 Youness Alaoui * gst/jpegformat/gstjpegparse.c: jpegparse: Fix duration in buffers. It's frames per second, not seconds per frame 2012-04-17 15:22:59 +0200 Mark Nauwelaerts * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * gst/asfmux/gstasfobjects.h: * gst/debugutils/gstcompare.c: * gst/debugutils/gstcompare.h: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rmixer.h: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videomeasure/gstvideomeasure_ssim.h: * sys/winks/kshelpers.c: * sys/winks/ksvideohelpers.c: collectpads2: rename to collectpads 2012-04-16 11:00:44 +0200 Matej Knopp * sys/applemedia/Makefile.am: applemedia: do not link gstinterfaces 2012-04-16 09:09:25 +0200 Sebastian Dröge * common: Automatic update of common submodule From 6db25be to dc70203 2012-04-13 00:13:39 +0200 Alessandro Decina * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix pad iterator leak 2012-04-13 00:14:27 +0200 Alessandro Decina * gst/mpegtsmux/mpegtsmux.c: * tests/check/elements/mpegtsmux.c: mpegtsmux: don't leak force key unit events 2012-04-14 21:09:25 +0200 Matej Knopp * gst-libs/gst/codecparsers/gstmpegvideoparser.c: mpegvideoparse: Do not ignore start code at the end of buffer 2012-04-14 21:02:06 +0200 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Parser fails to split some frames 2012-04-14 20:53:47 +0200 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Fix FPS and frame duration for telecine files 2012-04-14 20:46:24 +0200 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Do not update codec-data when only quantiser matrix changes 2012-04-14 15:29:15 +0100 Tim-Philipp Müller * gst/geometrictransform/Makefile.am: geometrictransform: don't link against libgstinterfaces which was removed The GstNavigation interface is now in libgstvideo. 2012-04-13 22:04:38 +0200 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: fix crash last_sc is not reset every time a frame is being output, which can cause last_sc > buf_size in subsequent frame. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674073 2012-04-13 15:12:12 +0200 Matej Knopp * gst-libs/gst/video/gstbasevideodecoder.c: Set sync_poinr = 1 for keyframe 2012-04-13 14:07:05 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: use 1.0 videofilter baseclass functions Port to the new functions of the videofilter class 2012-04-13 10:16:38 -0300 Thiago Santos * configure.ac: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: geometrictransform: port to 1.0 Straightforward port of geometrictransform plugin 2012-04-13 13:44:46 +0200 Sebastian Dröge * autogen.sh: * configure.ac: configure: Modernize autotools setup a bit Also we now only create tar.bz2 and tar.xz tarballs. 2012-04-13 13:37:21 +0200 Sebastian Dröge * common: Automatic update of common submodule From 464fe15 to 6db25be 2012-04-13 13:10:13 +0200 Sebastian Dröge * gst/camerabin2/Makefile.am: * gst/debugutils/Makefile.am: * gst/sdp/Makefile.am: * tests/check/Makefile.am: * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin2/Makefile.am: * tests/examples/scaletempo/Makefile.am: * win32/common/config.h: Update for the removal of the interfaces library and the tuner/mixer interfaces 2012-04-12 18:25:09 -0400 Reynaldo H. Verdejo Pinochet * Android.mk: Sync Android.mk entries to the new major version Change naming on the pkgconfig files to reflect the 0.10 -> 1.0 bump. 2012-04-12 11:19:27 +0200 Sebastian Dröge * configure.ac: Back to development === release 0.11.90 === 2012-04-12 10:50:10 +0200 Sebastian Dröge * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin2.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-voaacenc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * gst/bayer/gstbayerorc-dist.c: * win32/common/config.h: Release 0.11.90 2012-04-12 10:47:35 +0200 Sebastian Dröge * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2012-04-11 21:47:52 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/multifdsink.c: tests: remove obsolete multifdsink test ... which is in -base nowadays. 2012-04-10 17:35:54 +0200 Mark Nauwelaerts * tests/check/elements/x264enc.c: tests: remove obsolete x264enc unit test ... which is in -ugly nowadays. 2012-04-10 17:24:05 +0200 Mark Nauwelaerts * tests/check/elements/mplex.c: * tests/check/elements/opus.c: * tests/check/elements/voaacenc.c: * tests/check/elements/voamrwbenc.c: tests: port some more to 1.0 2012-04-10 17:22:57 +0200 Mark Nauwelaerts * ext/voaacenc/gstvoaacenc.c: voaacenc: plug caps leak 2012-04-10 17:22:44 +0200 Mark Nauwelaerts * ext/opus/gstopusdec.c: opusdec: tweak caps negotiation ... so as to avoid leaking caps or manipulating NULL caps. 2012-04-10 17:22:04 +0200 Mark Nauwelaerts * ext/mplex/gstmplex.cc: mplex: avoid leaking pad template caps and superfluous copy 2012-04-10 17:21:29 +0200 Mark Nauwelaerts * ext/mplex/gstmplex.cc: mplex: fix pad release and cleanup 2012-04-06 14:52:12 +0200 Mark Nauwelaerts Merge remote-tracking branch 'origin/0.10' Conflicts: gst/h264parse/gsth264parse.c gst/videoparsers/gsth264parse.c 2012-04-06 14:27:06 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: tweak default setting of format and alignment in codec_data case ... which should promote ending up in passthrough mode. 2012-04-06 14:23:53 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: * gst/videoparsers/gsth264parse.c: h264parse: do not use _unchecked bytewriter variants to insert config .. since the bytewriter is explicitly created with non-fixed size to allow (very much so expected) growth. Partially reverts commit 20669d461a4953eb5ed01374d5ab628b4dc73b64 while trying to keep (some?) compilers happy. IIRC, the purpose of GstByteWriter in the first place was (at least) being able to dump data without having to fuss with memory expansion and size issues ... Fixes #673485. 2012-04-05 17:15:11 -0400 Thibault Saunier Merge remote-tracking branch 'origin/0.10' 2012-04-05 18:43:06 +0200 Sebastian Dröge * common: Automatic update of common submodule From 7fda524 to 464fe15 2012-04-05 18:02:56 +0200 Sebastian Dröge * ext/apexsink/gstapexplugin.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/assrender/gstassrender.c: * ext/audiofile/gstaf.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2.c: * ext/cdaudio/gstcdaudio.c: * ext/celt/gstcelt.c: * ext/chromaprint/gstchromaprint.c: * ext/cog/gstcog.c: * ext/curl/gstcurl.c: * ext/dc1394/gstdc1394.c: * ext/dirac/gstdirac.cc: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflite.c: * ext/gme/gstgme.c: * ext/gsettings/plugin.c: * ext/gsm/gstgsm.c: * ext/hermes/gsthermescolorspace.c: * ext/jp2k/gstjp2k.c: * ext/kate/gstkate.c: * ext/ladspa/gstladspa.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: * ext/lv2/gstlv2.c: * ext/mimic/gstmimic.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/ofa/gstofa.c: * ext/openal/gstopenal.c: * ext/opencv/gstopencv.c: * ext/opus/gstopus.c: * ext/resindvd/plugin.c: * ext/rsvg/gstrsvg.c: * ext/rtmp/gstrtmp.c: * ext/schroedinger/gstschro.c: * ext/sdl/gstsdl.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.c: * ext/soundtouch/plugin.c: * ext/spandsp/gstspandsp.c: * ext/spc/gstspc.c: * ext/swfdec/gstswfdec.c: * ext/teletextdec/teletext.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/voaacenc/gstvoaac.c: * ext/voamrwbenc/gstvoamrwb.c: * ext/vp8/plugin.c: * ext/wayland/gstwaylandsink.c: * ext/xvid/gstxvid.c: * ext/zbar/gstzbar.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiff.c: * gst/asfmux/gstasf.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiovisualizers/plugin.c: * gst/autoconvert/plugin.c: * gst/bayer/gstbayer.c: * gst/camerabin/gstcamerabin.c: * gst/camerabin2/gstplugin.c: * gst/cdxaparse/gstcdxaparse.c: * gst/chart/gstchart.c: * gst/coloreffects/gstplugin.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dccp/gstdccpplugin.c: * gst/debugutils/debugutilsbad.c: * gst/dtmf/gstdtmf.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/faceoverlay/gstfaceoverlay.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeverb/gstfreeverb.c: * gst/freeze/gstfreeze.c: * gst/frei0r/gstfrei0r.c: * gst/games/gstpuzzle.c: * gst/gaudieffects/gstplugin.c: * gst/geometrictransform/plugin.c: * gst/hdvparse/gsthdvparse.c: * gst/hls/gstfragmentedplugin.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinter.c: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjpegformat.c: * gst/legacyresample/gstlegacyresample.c: * gst/librfb/gstrfbsrc.c: * gst/liveadder/liveadder.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpegdemux/flumpegdemux.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/gsttsdemux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/gstmve.c: * gst/mxf/mxf.c: * gst/nsf/gstnsf.c: * gst/nuvdemux/gstnuvdemux.c: * gst/overlay/gstoverlay.c: * gst/patchdetect/gstpatchdetect.c: * gst/pcapparse/plugin.c: * gst/pnm/gstpnm.c: * gst/rawparse/plugin.c: * gst/real/gstreal.c: * gst/removesilence/gstremovesilence.c: * gst/rtjpeg/gstrtjpeg.c: * gst/rtpmux/gstrtpmuxer.c: * gst/rtpvp8/gstrtpvp8.c: * gst/scaletempo/gstscaletempoplugin.c: * gst/sdi/gstsdi.c: * gst/sdp/gstsdpelem.c: * gst/segmentclip/plugin.c: * gst/siren/gstsiren.c: * gst/smooth/gstsmooth.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/subenc/gstsubenc.c: * gst/tta/gsttta.c: * gst/vbidec/gstvbidec.c: * gst/videodrop/gstvideodrop.c: * gst/videofilters/gstvideofiltersbad.c: * gst/videomeasure/gstvideomeasure.c: * gst/videoparsers/plugin.c: * gst/videosignal/gstvideosignal.c: * gst/vmnc/vmncdec.c: * gst/y4m/gsty4mdec.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/applemedia/plugin.m: * sys/avc/gstavcplugin.cpp: * sys/cdrom/gstcdplayer.c: * sys/d3dvideosink/d3dvideosink.c: * sys/decklink/gstdecklink.cpp: * sys/directdraw/gstdirectdrawplugin.c: * sys/directsound/gstdirectsoundplugin.c: * sys/dshowdecwrapper/gstdshowdecwrapper.cpp: * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/gstdvb.c: * sys/dxr3/dxr3init.c: * sys/fbdev/gstfbdevsink.c: * sys/linsys/gstlinsys.c: * sys/osxvideo/osxvideoplugin.c: * sys/pvr2d/gstpvr.c: * sys/qcam/gstqcamsrc.c: * sys/qtwrapper/qtwrapper.c: * sys/shm/gstshm.c: * sys/vcd/vcdsrc.c: * sys/vdpau/gstvdpau.c: * sys/wasapi/gstwasapi.c: * sys/wininet/gstwininetsrc.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstwinscreencap.c: * tools/gst-element-maker: * tools/gst-project-maker: * win32/common/config.h: gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 11:51:40 -0400 Thibault Saunier * gst/hls/gsturidownloader.c: hls: Some more debugging 2012-03-15 14:42:44 -0400 Thibault Saunier * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: Replace the fetcher code with a GstURIDownloader object 2012-03-14 17:01:17 -0400 Thibault Saunier * gst/hls/gsturidownloader.c: hls: Minor cleanup in GstUriDownloader 2012-03-14 17:06:22 -0400 Andoni Morales Alastruey * gst/hls/Makefile.am: * gst/hls/gsturidownloader.c: * gst/hls/gsturidownloader.h: hlsdemux: Factor out all the fetcher code in a GstURIDownloader class This class is meant to be reusable by other components 2012-04-05 10:22:29 -0400 Thibault Saunier * gst/hls/gstfragment.c: hls: Do not add reference to buffers passed in GstFragment We just steal the reference to the buffer, which means we can keep writing metadatas on the buffers. 2012-03-13 15:18:22 -0400 Thibault Saunier * gst/hls/gstfragment.c: hls: Minor GstFragment cleanup 2011-07-08 01:09:00 +0200 Andoni Morales Alastruey * gst/hls/Makefile.am: * gst/hls/gstfragment.c: * gst/hls/gstfragment.h: hls: Add a GstFragment class that represents a fragment in a m3u playlist 2012-03-15 18:21:58 -0400 Thibault Saunier * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hls: Make the updates thread a GstTask 2012-04-05 13:28:09 +0200 Sebastian Dröge * configure.ac: configure: Update version to 0.11.89.1 2012-04-05 09:16:27 +0100 uraeus * gst-plugins-bad.spec.in: Update spec file 2012-04-05 06:18:28 +0200 Alessandro Decina * gst/mpegtsdemux/tsdemux.c: tsdemux: set correct newsegment fields on _TIME seeks Forward the seek rate and set NS.start to the seek target so that decoders can apply clipping where necessary. 2012-04-05 08:54:28 +0200 Alessandro Decina * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: applemedia: update corevideobuffer after buffer meta API change 2012-04-05 08:53:41 +0200 Alessandro Decina * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: applemedia: update coremediabuffer after buffer meta API change 2012-04-05 08:52:49 +0200 Alessandro Decina * sys/applemedia/qtkitvideosrc.m: qtkitvideosrc: update after BaseSrc::fixate API change 2012-04-05 08:24:31 +0200 Alessandro Decina * gst/rawparse/gstrawparse.c: rawparse: fix compile warning 2012-04-05 06:18:28 +0200 Alessandro Decina * gst/mpegtsdemux/tsdemux.c: tsdemux: set correct newsegment fields on _TIME seeks Forward the seek rate and set NS.start to the seek target so that decoders can apply clipping where necessary. 2012-04-04 14:41:22 +0200 Sebastian Dröge * configure.ac: * docs/libs/Makefile.am: * docs/libs/compiling.sgml: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/version.entities.in: * ext/apexsink/Makefile.am: * ext/assrender/Makefile.am: * ext/celt/Makefile.am: * ext/chromaprint/Makefile.am: * ext/cog/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/flite/Makefile.am: * ext/gsettings/Makefile.am: * ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml.in: * ext/gsm/Makefile.am: * ext/jp2k/Makefile.am: * ext/kate/Makefile.am: * ext/ladspa/Makefile.am: * ext/lv2/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/nas/Makefile.am: * ext/ofa/Makefile.am: * ext/openal/Makefile.am: * ext/opencv/Makefile.am: * ext/opus/Makefile.am: * ext/resindvd/Makefile.am: * ext/rsvg/Makefile.am: * ext/schroedinger/Makefile.am: * ext/sdl/Makefile.am: * ext/soundtouch/Makefile.am: * ext/voaacenc/Makefile.am: * ext/voamrwbenc/Makefile.am: * ext/vp8/Makefile.am: * ext/wayland/Makefile.am: * ext/zbar/Makefile.am: * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/signalprocessor/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-plugins-bad.spec.in: * gst/adpcmdec/Makefile.am: * gst/adpcmenc/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/audiovisualizers/Makefile.am: * gst/bayer/Makefile.am: * gst/camerabin/Makefile.am: * gst/camerabin2/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/coloreffects/Makefile.am: * gst/debugutils/Makefile.am: * gst/dtmf/Makefile.am: * gst/dvbsuboverlay/Makefile.am: * gst/dvdspu/Makefile.am: * gst/faceoverlay/Makefile.am: * gst/fieldanalysis/Makefile.am: * gst/frei0r/Makefile.am: * gst/gaudieffects/Makefile.am: * gst/geometrictransform/Makefile.am: * gst/id3tag/Makefile.am: * gst/inter/Makefile.am: * gst/interlace/Makefile.am: * gst/jpegformat/Makefile.am: * gst/liveadder/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegtsdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mxf/Makefile.am: * gst/patchdetect/Makefile.am: * gst/pnm/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/rtpmux/Makefile.am: * gst/rtpvp8/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdp/Makefile.am: * gst/segmentclip/Makefile.am: * gst/siren/Makefile.am: * gst/smooth/Makefile.am: * gst/stereo/Makefile.am: * gst/videofilters/Makefile.am: * gst/videomeasure/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videosignal/Makefile.am: * gst/y4m/Makefile.am: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-basevideo-uninstalled.pc.in: * pkgconfig/gstreamer-basevideo.pc.in: * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-codecparsers.pc.in: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-bad.pc.in: * sys/acmenc/Makefile.am: * sys/acmmp3dec/Makefile.am: * sys/applemedia/Makefile.am: * sys/avc/Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/decklink/Makefile.am: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/osxvideo/Makefile.am: * sys/pvr2d/Makefile.am: * sys/vdpau/Makefile.am: * sys/vdpau/basevideodecoder/Makefile.am: * sys/vdpau/gstvdp/Makefile.am: * tests/check/Makefile.am: * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin2/Makefile.am: * tests/examples/gstplay/Makefile.am: * tests/examples/scaletempo/Makefile.am: * win32/common/config.h: gst: Update versioning 2012-04-04 12:06:08 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' 2012-04-04 07:24:28 +0200 Alessandro Decina * gst/mpegtsdemux/tsdemux.c: tsdemux: reset iterator to NULL after it's free Fixes possible invalid memory access in gst_ts_demux_stream_flush 2012-04-02 15:31:38 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Conflicts: gst/mpegtsdemux/tsdemux.c 2012-04-02 15:26:28 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Clear bufferlist/iterator when removing streams 2012-04-02 15:25:46 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Don't leak buffer in fast variant 2012-04-02 15:25:16 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Don't leak corrupt section packet buffer 2012-04-02 11:13:25 +0200 Wim Taymans * ext/zbar/gstzbar.c: use transform_ip_on_passthrough 2012-04-02 11:07:18 +0200 Wim Taymans * gst/rtpmux/gstrtpmux.c: rtpmux: fix compilation 2012-03-30 19:19:12 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix several leaks * dont' leak buffers when a stream is in discont state * don't leak buffers when a program is removed/deactivated * remove all programs when disposing 2012-03-30 19:19:12 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix several leaks * dont' leak buffers when a stream is in discont state * don't leak buffers when a program is removed/deactivated * remove all programs when disposing 2012-03-30 18:13:26 +0200 Wim Taymans * ext/schroedinger/gstschroutils.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: update for buffer api change 2012-03-30 17:09:34 +0200 Mark Nauwelaerts * ext/opus/gstopusenc.c: opusenc: fixup merge 2012-03-30 13:23:15 +0200 Sebastian Dröge * ext/celt/gstceltenc.c: celtenc: Fix compilation 2012-03-30 12:55:33 +0200 Sebastian Dröge * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: celtenc: Use new gst_audio_encoder_set_headers() API 2012-03-30 12:22:48 +0200 Sebastian Dröge * ext/celt/gstceltenc.c: * ext/opus/gstopusenc.c: ext: Update for GstAudioEncoder API changes 2012-03-30 12:02:16 +0200 Sebastian Dröge * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: videoparsers: Update for baseparse API changes 2012-03-30 11:53:41 +0200 Sebastian Dröge * ext/dts/gstdtsdec.c: * ext/faad/gstfaad.c: ext: Update for audio decoder API changes 2012-03-29 18:04:36 +0200 Sebastian Dröge Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-bad 2012-03-29 18:03:05 +0200 Sebastian Dröge * sys/shm/gstshmsrc.c: shmsrc: Fix a merge mistake 2012-03-29 17:55:09 +0200 Sebastian Dröge * configure.ac: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: Revert to 0.10 state as this is unmergeable, also put it into the non-ported plugins again 2012-03-29 17:51:57 +0200 Sebastian Dröge * configure.ac: configure: Fix merge mistake 2012-03-29 17:41:53 +0200 Sebastian Dröge Merge remote-tracking branch 'origin/0.10' Conflicts: NEWS RELEASE common configure.ac docs/libs/gst-plugins-bad-libs-sections.txt docs/plugins/gst-plugins-bad-plugins.args docs/plugins/gst-plugins-bad-plugins.hierarchy docs/plugins/gst-plugins-bad-plugins.interfaces docs/plugins/inspect/plugin-adpcmdec.xml docs/plugins/inspect/plugin-adpcmenc.xml docs/plugins/inspect/plugin-assrender.xml docs/plugins/inspect/plugin-audiovisualizers.xml docs/plugins/inspect/plugin-autoconvert.xml docs/plugins/inspect/plugin-bayer.xml docs/plugins/inspect/plugin-bz2.xml docs/plugins/inspect/plugin-camerabin2.xml docs/plugins/inspect/plugin-celt.xml docs/plugins/inspect/plugin-dataurisrc.xml docs/plugins/inspect/plugin-debugutilsbad.xml docs/plugins/inspect/plugin-dtmf.xml docs/plugins/inspect/plugin-dtsdec.xml docs/plugins/inspect/plugin-dvbsuboverlay.xml docs/plugins/inspect/plugin-dvdspu.xml docs/plugins/inspect/plugin-faac.xml docs/plugins/inspect/plugin-faad.xml docs/plugins/inspect/plugin-gsm.xml docs/plugins/inspect/plugin-h264parse.xml docs/plugins/inspect/plugin-mms.xml docs/plugins/inspect/plugin-modplug.xml docs/plugins/inspect/plugin-mpeg2enc.xml docs/plugins/inspect/plugin-mpegdemux2.xml docs/plugins/inspect/plugin-mpegtsdemux.xml docs/plugins/inspect/plugin-mpegvideoparse.xml docs/plugins/inspect/plugin-mplex.xml docs/plugins/inspect/plugin-pcapparse.xml docs/plugins/inspect/plugin-rawparse.xml docs/plugins/inspect/plugin-rtpmux.xml docs/plugins/inspect/plugin-rtpvp8.xml docs/plugins/inspect/plugin-scaletempo.xml docs/plugins/inspect/plugin-schro.xml docs/plugins/inspect/plugin-sdp.xml docs/plugins/inspect/plugin-segmentclip.xml docs/plugins/inspect/plugin-shm.xml docs/plugins/inspect/plugin-videomaxrate.xml docs/plugins/inspect/plugin-videoparsersbad.xml docs/plugins/inspect/plugin-vp8.xml docs/plugins/inspect/plugin-y4mdec.xml ext/celt/gstceltdec.c ext/dts/gstdtsdec.c ext/modplug/gstmodplug.cc ext/opus/gstopusenc.c gst-libs/gst/video/gstbasevideocodec.c gst-libs/gst/video/gstbasevideocodec.h gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideodecoder.h gst-libs/gst/video/gstbasevideoencoder.c gst-libs/gst/video/gstbasevideoencoder.h gst/adpcmdec/Makefile.am gst/audiovisualizers/gstbaseaudiovisualizer.c gst/h264parse/gsth264parse.c gst/mpegdemux/mpegtsparse.c gst/mpegtsdemux/mpegtsbase.c gst/mpegtsdemux/mpegtspacketizer.c gst/mpegtsdemux/mpegtsparse.c gst/mpegtsdemux/tsdemux.c gst/mpegtsdemux/tsdemux.h gst/mxf/mxfdemux.c gst/rawparse/gstaudioparse.c gst/videoparsers/gsth263parse.c gst/videoparsers/gsth264parse.c sys/d3dvideosink/d3dvideosink.c sys/decklink/gstdecklinksink.cpp sys/dvb/gstdvbsrc.c sys/shm/gstshmsrc.c sys/vdpau/h264/gstvdph264dec.c sys/vdpau/mpeg/gstvdpmpegdec.c tests/examples/opencv/gst_element_print_properties.c win32/common/config.h 2012-03-29 16:08:34 +0100 uraeus * gst-plugins-bad.spec.in: Add latest ported plugins to spec file 2012-03-28 12:49:54 +0200 Wim Taymans * ext/jp2k/gstjasperdec.c: * ext/rtmp/gstrtmpsink.c: * ext/spc/gstspc.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/dvdspu/gstdvdspu.c: * gst/hls/gsthlsdemux.c: * gst/mpegtsdemux/tsdemux.c: * gst/nsf/gstnsf.c: * gst/rtpvp8/gstrtpvp8pay.c: * gst/videoparsers/gstmpeg4videoparse.c: * sys/decklink/gstdecklinksink.cpp: * sys/dxr3/dxr3videosink.c: * sys/vdpau/mpeg/gstvdpmpegframe.c: * tests/check/elements/faad.c: * tests/check/elements/parser.c: * win32/common/config.h: update for buffer changes 2012-03-27 15:13:24 -0400 Olivier Crête * ext/opus/gstopus.c: opus: Rank rtp pay/depay This way they can be auto-plugged. 2012-03-27 09:36:24 +0200 Sebastian Dröge * gst-libs/gst/basecamerabinsrc/Makefile.am: basecamerabinsrc: Add $(GST_PLUGINS_BASE_LIBS) to the linker flags 2012-03-26 12:13:17 +0200 Wim Taymans Replace master with 0.11 2012-03-23 18:36:21 +0100 Stefan Sauer * ext/modplug/gstmodplug.cc: modplug: memory handling cleanup Don't leak the CSoundFile. Use define for comment buffer size and ensure it is 0 terminated. 2012-03-23 18:18:06 +0100 Stefan Sauer * ext/flite/gstflite.c: * ext/flite/gstflitetestsrc.c: flte: comment cleanup Remove commented out code for a flitesynth that we don't have in git anyway. Add a comment regarding the flite voices. 2012-03-23 18:16:08 +0100 Stefan Sauer * ext/modplug/gstmodplug.cc: modplug: work around memory trashing in libmodplug (0.8.7) Allocate double sized buffers. Also add more debug logging. 2012-03-23 13:06:12 -0400 Olivier Crête * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: shmsink: Make buffer-time signed to deal with backward jumps in timestamps 2012-03-23 13:06:12 -0400 Olivier Crête * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: shmsink: Make buffer-time signed to deal with backward jumps in timestamps 2012-03-22 15:55:42 +0100 Wim Taymans * configure.ac: back to development === release 0.11.2 === 2012-03-22 15:52:37 +0100 Wim Taymans * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin2.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * gst-plugins-bad.doap: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.h: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: Release 0.11.2 2012-03-21 23:04:31 -0700 David Schleef * configure.ac: * sys/decklink/Makefile.am: * sys/decklink/osx/DeckLinkAPI.h: * sys/decklink/osx/DeckLinkAPIConfiguration.h: * sys/decklink/osx/DeckLinkAPIDeckControl.h: * sys/decklink/osx/DeckLinkAPIDiscovery.h: * sys/decklink/osx/DeckLinkAPIDispatch-osx.cpp: * sys/decklink/osx/DeckLinkAPIModes.h: * sys/decklink/osx/DeckLinkAPIStreaming.h: * sys/decklink/osx/DeckLinkAPITypes.h: * sys/decklink/osx/DeckLinkAPIVersion.h: decklink: Add decklink dispatch code for OS/X 2012-03-21 13:23:42 +0100 Wim Taymans * tests/check/elements/h264parse.c: * tests/check/elements/jpegparse.c: * tests/check/elements/mxfdemux.c: tests: update for memory api changes 2012-03-21 09:41:08 +0100 Wim Taymans * gst/rawparse/gstvideoparse.c: rawparse: fix bayer caps 2012-03-20 20:07:11 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: Prevent access to the transform map when it is null Check if the map doesn't exist when receiving a new caps and create a new one. This prevents that the transform functions try to access the map when it doesn't exist. 2012-03-20 19:19:25 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: add some more log messages 2012-03-20 17:32:00 -0300 Oleksij Rempel (Alexey Fisher) * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: avoid reseting caps to the same value Reduces capture latency when the new caps are the same as the old one, avoiding resetting the source state for a forced renegotiation. 2012-03-21 00:17:47 +0200 Raimo Järvi * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: winscreencap: Fix compiling with mingw https://bugzilla.gnome.org/show_bug.cgi?id=672505 2012-03-20 20:21:42 +0100 Mark Nauwelaerts * configure.ac: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: shm: port to 0.11 2012-03-20 20:21:37 +0100 Mark Nauwelaerts * configure.ac: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: rawparse: port to 0.11 2012-03-20 16:44:17 +0100 Wim Taymans * ext/faad/gstfaad.c: faad: add some channel map debug 2012-03-20 16:34:33 +0100 Wim Taymans * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: optimize channel remap, avoid potential memcpy Combine the channel remap and copy in one operation. Calculate the channel remap table only once, make a shortcut when we are not doing any remapping. 2012-03-20 15:38:33 +0100 Wim Taymans * gst/fieldanalysis/gstfieldanalysis.c: * gst/fieldanalysis/gstfieldanalysisorc.orc: orc: don't compile everything at startup 2012-03-19 22:58:02 +0000 Tim-Philipp Müller * sys/Makefile.am: sys: sort subdirs in Makefile alphabetically 2012-03-19 23:49:17 +0200 Raimo Järvi * sys/Makefile.am: winscreencap: Integrate into autotools build system https://bugzilla.gnome.org/show_bug.cgi?id=672031 2012-03-18 23:15:23 +0000 Tim-Philipp Müller * gst/adpcmdec/Makefile.am: adpcmdec: GST_BASE_LIBS already contains -lgstbase-0.10 2012-03-18 14:43:16 -0700 David Schleef * gst/adpcmdec/Makefile.am: adpcmdec: Add -lgstbase-0.10 2012-03-18 18:33:00 +0100 Mark Nauwelaerts * ext/gme/Makefile.am: * ext/gme/gstgme.c: gme: use new style audio caps Also do not pretend to negotiate output caps when there is not much in output to begin with. 2012-03-18 18:32:55 +0100 Mark Nauwelaerts * configure.ac: * gst/scaletempo/Makefile.am: * gst/scaletempo/gstscaletempo.c: scaletempo: port to 0.11 2012-03-18 18:32:51 +0100 Mark Nauwelaerts * configure.ac: * gst/smooth/gstsmooth.c: smooth: port to 0.11 2012-03-18 18:32:46 +0100 Mark Nauwelaerts * configure.ac: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstsegmentclip.c: * gst/segmentclip/gstvideosegmentclip.c: segmentclip: port to 0.11 2012-03-18 18:32:41 +0100 Mark Nauwelaerts * configure.ac: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: bz2: port to 0.11 2012-03-18 18:32:36 +0100 Mark Nauwelaerts * configure.ac: * gst/removesilence/Makefile.am: * gst/removesilence/gstremovesilence.c: removesilence: port to 0.11 2012-03-18 01:18:26 +0000 Tim-Philipp Müller * ext/zbar/gstzbar.c: zbar: fix build after base transform changes 2012-03-18 00:51:32 +0000 Nicola Murino * ext/opencv/gstfacedetect.c: facedetect: fix structure leak https://bugzilla.gnome.org/show_bug.cgi?id=672294 2012-03-17 15:09:21 +0100 Nicola Murino * ext/opencv/gstopencvvideofilter.c: opencv: fix memory leak https://bugzilla.gnome.org/show_bug.cgi?id=672295 2012-03-15 22:12:59 +0100 Carsten Kroll * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: fix regression setting window handle in pause/play https://bugzilla.gnome.org/show_bug.cgi?id=656905 2012-03-17 15:07:49 -0700 David Schleef * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.cpp: decklinksink: Add device property Also add property probe for device property, similar to decklinksrc. 2011-10-31 18:58:34 -0700 blake tregre * sys/decklink/gstdecklinksrc.cpp: decklinksrc: make sure we can accept caps before returning true caps are determined by the plugin's properties, so we should check the incoming caps to see if they agree. Fixes: #667722. 2011-10-31 18:57:22 -0700 blake tregre * sys/decklink/gstdecklinksrc.cpp: decklinksrc: disable pull mode decklink device doesn't support any pull mode related functionality. it's more like a live source, you see. Fixes: #667720. 2012-02-11 22:49:10 -0800 blake tregre * sys/decklink/gstdecklinksrc.cpp: decklinksrc: push new new segment event to all pads Take care to push the event to all pads, but favor the video src pad. Fixes: #667716. 2012-03-17 11:41:04 -0700 David Schleef * sys/decklink/gstdecklinksrc.cpp: decklinksrc: Implement latency query Implement latency query. Fix memleak releasing resources. 2012-03-17 11:39:54 -0700 David Schleef * sys/decklink/capture.cpp: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: decklink: reindent 2011-10-31 18:56:23 -0700 blake tregre decklinksrc: handle flow return properly and provide better message * sys/decklink/gstdecklinksrc.cpp: 2012-03-07 19:22:28 -0800 David Schleef * sys/decklink/Makefile.am: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: Add property probing Renames the subdevice property to just device, and has it return the number of devices in the system in response to a probe. This is useful both for using multiple capture cards, and for detecting whether it's worth adding the element to a pipeline. Also cleans up the property descriptions. 2012-03-17 11:45:39 -0700 David Schleef * tools/element-templates/basesrc: * tools/element-templates/element: element-templates: chain query/event functions Chain up to parent class. This fix should be done to all of the templates. 2012-03-17 11:35:18 -0700 David Schleef * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosink.h: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstinteraudiosrc.h: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsink.h: * gst/inter/gstintersubsrc.c: * gst/inter/gstintersubsrc.h: * gst/inter/gstintertest.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: inter: Add channel property The channel property allows multiple intersrc/sink pairs to find each other. It's a free-form text string that must match among various inter elements. Also fixed up documentation and latency handling. 2012-03-17 16:09:31 +0000 Tim-Philipp Müller * tools/element-templates/sinkpad-template-video: * tools/element-templates/srcpad-template-video: gst-element-maker: fix -template-video caps string Don't forget separator. 2012-03-17 16:05:20 +0000 Tim-Philipp Müller * tools/element-templates/sinkpad-template-video: * tools/element-templates/srcpad-template-video: * tools/element-templates/videofilter: gst-element-maker: add video pad template and use it in videofilter class Would be nicer if one could just supplement the generic template from the element template though. Also, I would really have liked to just add those sections from the pads template into the element templet directly (so I can cater for src template caps == sink template caps), but that didn't seem to work. 2012-03-17 15:49:45 +0000 Tim-Philipp Müller * tools/element-templates/sinkpad-template: * tools/element-templates/srcpad-template: * tools/element-templates/videofilter: gst-element-maker: add {src,sink}pad-template, since many base classes create pads for us And use them in the videofilter template. 2012-03-17 15:16:29 +0000 Tim-Philipp Müller * tools/element-templates/videofilter: tools: add videofilter template for gst-element-maker 2012-03-17 12:47:52 +0000 Tim-Philipp Müller * configure.ac: * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: * ext/opencv/gstopencvutils.c: * ext/opencv/gsttemplatematch.h: * ext/opencv/motioncells_wrapper.cpp: opencv: fix configure check and build with opencv 2.1 AC_CHECK_HEADERS() calls action-if-not-found also if just one of the headers checked for is missing, which is not what we wanted. Also, check for highgui_c.h instead of highgui.hpp. https://bugzilla.gnome.org/show_bug.cgi?id=672226 2012-03-16 21:47:39 +0100 Wim Taymans * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst/asfmux/gstasfparse.c: * gst/cdxaparse/gstcdxaparse.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: * gst/mxf/mxfdemux.c: * gst/nuvdemux/gstnuvdemux.c: * gst/rawparse/gstrawparse.c: don't pass random pointers to pull_range 2012-03-16 17:07:46 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: facedetect: initialize some arbitrary variable that gcc-4.6 can track properly The access to them is clearly guarded by the booleans though. 2012-03-16 13:14:48 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: opencv: cosmetic code changes Check for the availability of the detectors in the processing function to avoid setting up the ROIs. Use the booleans for have_xxx more. 2012-03-16 12:57:05 +0100 Stefan Sauer * configure.ac: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: opencv: use opencv prefix from pkgconfig to lookup datafiles Don't hardconde /usr to lookup datafiles (such as haar cascades). 2012-03-15 17:10:18 +0000 Vincent Penquerc'h * ext/resindvd/resindvdsrc.c: rsndvdsrc: post a message with title number and durations https://bugzilla.gnome.org/show_bug.cgi?id=672165 2012-03-16 12:10:10 +0100 Stefan Sauer * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: remove blank line in gtk-doc comment 2012-03-16 12:04:11 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: facedetect: skip detection for unavailable detectors 2012-03-15 23:17:55 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: facedetect: move the detector to an own method to hide the ugly ifdefs This improves the readability in the actual processing function. 2012-03-15 23:08:02 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: facedetect: always send facedetect message The application might like to know, when we don't see the face anymore. 2012-03-15 22:58:11 +0100 Stefan Sauer * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: code cleanups Use glib types and simply expressions in the message handler. 2012-03-15 22:49:51 +0100 Stefan Sauer * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: don't access message fields directly 2012-03-15 22:22:12 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: facedetect: don't skip faces Skipping faces at this point makes us lie about the num-ber of faces and also causes leaks. 2012-03-15 22:11:32 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideodecoder.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: update for bufferpool changes 2012-03-15 20:38:27 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideodecoder.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: update for allocation query changes 2012-03-15 18:28:01 +0000 Tim-Philipp Müller * ext/rsvg/gstrsvgoverlay.c: rsvgoverlay: cosmetic change Rename PROP_FILENAME to PROP_LOCATION to match the name of the property. Add some debug logging. 2012-03-15 18:26:24 +0000 Tim-Philipp Müller * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: clear overlay if the face disappears 2012-03-15 18:21:37 +0000 Tim-Philipp Müller * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: add some locking for properties, free previous location when it changes 2012-03-15 18:08:09 +0000 Tim-Philipp Müller * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: faceoverlay: don't make rsvgoverlay reload the SVG for every single frame Only set location on rsvgoverlay if it has changed. 2012-03-15 17:47:58 +0000 Tim-Philipp Müller * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: move face handling into own function and handle 0 face count When a face disappears, we seem to get a message from facedetect with a face count of 0, which we want to just ignore instead of trying to access face #-1, which causes nasty warnings. 2012-03-15 17:42:56 +0000 Tim-Philipp Müller * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: fix pad templates Use generic and unspecififed rgb/caps for now. The exact caps supported depend on the facedetect element and rsvgoverlay. It's not clear how this worked before, since facedetect only accepts 24-bit RGB, but the caps advertised 32-bit ARGB/BGRA. In any case, we don't want to force anything really, so that if any of those elements acquires support for additional formats we pick those up automatically. 2012-03-15 17:26:14 +0000 Tim-Philipp Müller * ext/rsvg/gstrsvgoverlay.c: rsvgoverlay: fix crash due to double adapter unref 2012-03-15 16:52:44 +0000 Tim-Philipp Müller * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: faceoverlay: fix weird pad creation code The element would create normal pads in its instance_init function, and then later in NULL->READY create the elements it needs, remove the pads created in the instance_init function, and add new ghost pads instead. Not without saving the external peer pads of the old pads of course, which it would promptly re-link to the new ghost pads. Do all of that a bit differently. Fixes the generic/states.check unit test. https://bugzilla.gnome.org/show_bug.cgi?id=670588 2012-03-15 15:47:24 +0000 Tim-Philipp Müller * gst/faceoverlay/gstfaceoverlay.c: faceoverlay: minor cosmetic changes Remove template maker comments, use our defines for package name and origin. 2012-03-15 14:08:29 +0100 Wim Taymans * sys/pvr2d/gstpvrbufferpool.c: update for bufferpool api change 2012-03-15 13:37:36 +0100 Wim Taymans * ext/faad/gstfaad.c: * ext/kate/gstkateenc.c: * ext/modplug/gstmodplug.cc: * ext/rtmp/gstrtmpsrc.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/jpegformat/gstjifmux.c: * gst/mpegdemux/gstpesfilter.c: * gst/videoparsers/gsth264parse.c: * sys/pvr2d/gstpvrbufferpool.c: * sys/pvr2d/gstpvrbufferpool.h: * tests/check/elements/schroenc.c: update for memory api changes 2012-03-15 00:13:40 +0000 Tim-Philipp Müller * tests/check/elements/.gitignore: * tests/check/libs/.gitignore: .gitignore: ignore more test binaries and stamp files 2012-03-15 00:05:41 +0000 Tim-Philipp Müller * configure.ac: * ext/opencv/MotionCells.h: * ext/opencv/gsttemplatematch.h: opencv: make build with opencv 2.3.1 as in debian sid Where highgui.h doesn't exist any more, but only opencv2/highgui/highgui.hpp. Also, not quite sure why we're checking for cvaux.h, it's not used anywhere. 2012-03-14 19:52:31 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideodecoder.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: take padding into account 2012-03-14 17:48:40 +0100 Mark Nauwelaerts * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: also clear initialized mutex and cond 2012-03-14 11:20:18 +0100 Mark Nauwelaerts * ext/flite/gstflitetestsrc.c: flite: adjust to some modified caps related API changes 2012-03-14 10:24:05 +0100 Dmitry Ketov * configure.ac: * sys/winscreencap/Makefile.am: winscreencap: Integrate into autotools build system Fixes bug #672031. 2012-03-13 20:50:04 +0000 Tim-Philipp Müller * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: inter: fix warnings when gst-inspecting interaudio{src,sink} The channel property isn't implemented, so don't register it. 2012-03-08 01:48:56 +0200 Sreerenj Balachandran * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: Fix warnings, proper structuring, dead code removal, adding doc section. 2012-03-13 13:02:54 +0200 Sreerenj Balachandran * configure.ac: configure.ac: move spc plugin to NON_PORTED list(Fix build error) 2012-03-13 09:54:14 +0100 Wim Taymans * ext/resindvd/rsndec.c: use gst_caps_merge instead of gst_caps_union 2012-03-12 15:42:04 +0100 Oleksij Rempel (Alexey Fisher) * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: make sure gt->map not freed twice current cheese can create situation where gt->map is freed twice. This patch set map to null to avoid it. https://bugzilla.gnome.org/show_bug.cgi?id=671910 2012-03-12 17:06:11 +0100 Wim Taymans * ext/opus/gstopusdec.c: opusdec: fix for caps api change 2012-03-12 16:51:19 +0200 Sreerenj Balachandran * configure.ac: configure.ac: bump GLib requirement to 2.31.14 Fixes https://bugzilla.gnome.org/show_bug.cgi?id=671911 2012-02-28 16:40:31 +0100 Gil Pedersen * gst/hls/gsthlsdemux.c: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: add floating point segment duration support 2012-03-12 12:23:34 +0100 Wim Taymans * ext/jp2k/gstjasperdec.c: * sys/d3dvideosink/d3dvideosink.c: * tests/check/pipelines/colorspace.c: fix for caps _normalize changes 2012-03-12 11:40:20 +0100 Wim Taymans * tests/check/pipelines/colorspace.c: tests: fix for caps API change 2012-03-12 10:44:22 +0100 Wim Taymans * ext/cog/gstcogcolorspace.c: * tests/check/pipelines/colorspace.c: fix for _do_simplify changes 2012-03-11 19:06:59 +0100 Wim Taymans * ext/assrender/gstassrender.c: * ext/modplug/gstmodplug.cc: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/autoconvert/gstautoconvert.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/rtpmux/gstrtpmux.c: * gst/videoparsers/gsth264parse.c: * tests/check/pipelines/colorspace.c: fix for caps api changes 2012-03-10 20:53:54 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstmpegvideoparser.c: Fix an unwanted double negation from last commit 2012-03-10 19:10:52 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst/aiff/aiffmux.c: * gst/h264parse/gsth264parse.c: * gst/jp2kdecimator/jp2kcodestream.c: * gst/mxf/mxfmpeg.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: Fix 'ignoring return value of function declared with const attribute' This always happens with GstByteReader/Writer and friends when not taking into account returned boolean of the _read/_write functions (which is actually wrong). Make use of the *_unchecked variant as much as possible, or take the returned value into account. 2012-03-10 11:36:25 +0100 Mark Nauwelaerts * ext/dts/gstdtsdec.c: dtsdec: avoid runaway loop when resyncing during parse ... by checking for the correct (decremented) size variable. Fixes #671756. 2012-03-09 17:16:24 +0000 Tim-Philipp Müller * common: * configure.ac: configure: fix AC_LANG_SOURCE-related warnings when doing autogen.sh 2012-03-01 14:59:55 -0300 Danilo Cesar Lemes de Paula * gst/rtpvp8/gstrtpvp8depay.c: * gst/rtpvp8/gstrtpvp8pay.c: Fixing rtpvp8 compatibility with the third draft https://bugzilla.gnome.org/show_bug.cgi?id=671073 2012-03-08 11:32:27 +0100 Wim Taymans * tests/check/elements/autovideoconvert.c: * tests/check/elements/camerabin2.c: * tests/check/elements/opus.c: tests: fix more caps 2012-03-07 17:14:29 +0100 Mark Nauwelaerts * configure.ac: * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusparse.c: * ext/opus/gstrtpopuspay.c: opus: port to updated 0.11 2012-03-07 10:18:31 +0100 Mark Nauwelaerts * configure.ac: * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: celt: port to 0.11 2012-03-07 12:59:28 +0100 Mark Nauwelaerts * ext/opus/gstopusenc.c: opusenc: only request and process 1 frame at a time ... since it is specified in _finish_frame that input buffer may be invalidated after calling it, and is as such not reliably available for further encoding. Also, requesting or allowing several frames is only useful if subclass intends to process these "in 1 run" (as in, 1 output buffer), not for having another (inner) loop in subclass where the baseclass one will do just fine. 2012-03-07 12:55:43 +0100 Mark Nauwelaerts * ext/opus/gstopusenc.c: opusenc: configure baseclass requested samples really in samples ... as opposed to bytes. 2012-03-06 18:49:11 +0100 Edward Hervey * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: video: Update/add docs 2012-03-06 18:11:35 +0100 Edward Hervey * ext/assrender/gstassrender.c: * ext/gme/gstgme.c: * ext/musepack/gstmusepackdec.c: * ext/openal/gstopenalsink.c: * ext/timidity/gstwildmidi.c: * sys/vdpau/gstvdp/gstvdpbufferpool.c: * sys/vdpau/gstvdp/gstvdpdevice.c: * sys/vdpau/gstvdpsink.c: Add missing GLIB_DISABLE_DEPRECATION_WARNINGS Suppress warnings about deprecated threading and GValueArray API, so git compiles with -Werror. 2012-03-06 18:33:25 +0100 Mark Nauwelaerts * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: sirendec: port to audiodecoder 2012-03-06 18:33:17 +0100 Mark Nauwelaerts * gst/siren/Makefile.am: * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: sirenenc: port to audioencoder 2012-03-06 16:11:52 +0100 Mark Nauwelaerts * ext/celt/gstceltdec.c: celtdec: use base class tag handling helper ... so as to ensure these to be handled and sent at proper time. 2012-03-06 16:11:30 +0100 Mark Nauwelaerts * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: dtsdec: use base class tag handling helper ... so as to ensure these to be handled and sent at proper time. 2012-03-06 18:32:09 +0100 Mark Nauwelaerts * gst/dccp/gstdccp.c: dccp: avoid indefinite looping upon error ... and fix 'uninitialized' compilation warning as well. 2012-03-06 15:21:17 +0100 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Fix 'argument to 'sizeof' in 'memset' call is the same expression as the destination' compiler warning 2012-03-06 14:57:45 +0100 Sebastian Dröge * ext/gsettings/gstgsettingsaudiosink.c: * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosrc.c: gsettings: Fix 'if statement has empty body' compiler warning 2012-03-06 14:56:20 +0100 Sebastian Dröge * ext/directfb/dfbvideosink.c: dfbvideosink: Fix 'implicit conversion from enumeration type 'DirectResult' to different enumeration type 'DFBResult'' compiler warning We're not checking the return value of that function anyway. 2012-03-06 14:51:57 +0100 Sebastian Dröge * ext/curl/gstcurlsink.c: curl: Fix 'equality comparison with extraneous parentheses' compiler warning 2012-03-06 14:51:26 +0100 Sebastian Dröge * ext/cog/gstcogcolorspace.c: cogcolorspace: Use correct enum type for return value 2012-03-06 14:50:06 +0100 Sebastian Dröge * sys/vdpau/h264/gstvdph264dec.c: vdpau: Fix loop to not read before the valid memory area 2012-03-06 14:47:17 +0100 Sebastian Dröge * gst/removesilence/vad_private.c: removesilence: Fix 'argument to 'sizeof' in 'memset' call is the same expression as the destination' compiler warning 2012-03-06 14:46:03 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix 'comparison of unsigned expression >= 0 is always true' compiler warning 2012-03-06 14:44:25 +0100 Sebastian Dröge * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Fix 'variable 'pid' is uninitialized when used here' compiler warning 2012-03-06 14:43:29 +0100 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Fix 'expression result unused' compiler warning 2012-03-06 14:41:00 +0100 Sebastian Dröge * gst/dccp/gstdccp.c: dccp: Fix 'comparison of unsigned expression < 0 is always false' compiler warning 2012-03-06 14:38:47 +0100 Sebastian Dröge * gst/audiovisualizers/gstbaseaudiovisualizer.c: baseaudiovisualizer: Fix 'comparison of unsigned expression >= 0 is always true' compiler warning 2012-03-05 12:46:13 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Handle rollover in offset calculations 2012-03-05 12:43:42 +0100 Wim Taymans * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: x-raw-bayer -> x-bayer 2012-03-05 12:03:23 +0100 Wim Taymans * ext/mplex/Makefile.am: * ext/mplex/gstmplex.cc: * gst/camerabin2/gstviewfinderbin.c: use new style caps 2012-03-05 11:27:51 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: tsdemux: printf fix 2012-03-05 10:14:46 +0100 Edward Hervey * gst/mpegtsdemux/TODO: tsdemux: Update TODO 2012-03-05 09:46:17 +0100 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegtsdemux/tsdemux.c: mpegts: Switch rank of mpegtsdemux and tsdemux More effort has been put lately in tsdemux and works in more use cases 2012-03-05 09:38:57 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Push packets as early as possible When the PES header tells us how big the outgoing packet is, push the packet downstream as soon as we have the specified size instead of waiting for the beginning of the next packet. Reduces latency and removes issues with very sparse streams (like subtitles and subpictures). 2012-03-04 21:54:08 +0100 Stefan Sauer * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: shm: add minimal doc blobs 2012-02-28 21:00:24 +0200 Sreerenj Balachandran * ext/wayland/gstwaylandsink.c: waylandsink: Fix in shell_surface_set_fullscreen 2012-02-16 22:27:23 +0200 Sreerenj Balachandran * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: waylandsink: More fixes -- update to Wayland 0.85 protocol -- Added shell surface -- Added format query for shm format -- Create the window based on width and height of video extracted from upstream caps. 2011-11-02 16:23:02 +0200 Sreerenj Balachandran * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: Update with new APIs in wayland-client. 2011-11-02 13:51:13 +0200 Sreerenj Balachandran * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: More Fixes: * Adding buffer_alloc * perform buffer_damage before surface_attach * Fix typo, Remove Dead code etc. 2011-11-02 11:02:11 +0200 Sreerenj Balachandran * configure.ac: * ext/Makefile.am: * ext/wayland/Makefile.am: * ext/wayland/gstwaylandsink.c: * ext/wayland/gstwaylandsink.h: Initial Commit: Adding Wayland Video Sink 2011-12-13 23:43:59 +0100 Stefan Sauer * ext/resindvd/resindvdsrc.c: resindvd: send duration message on duration updates When we know a new duration, report it. Add more logging. 2011-12-13 10:26:50 +0100 Stefan Sauer * gst/audiovisualizers/README: audiovisualizers: planning + example update 2012-03-03 19:03:11 +0100 Alessandro Decina * sys/applemedia/Makefile.am: * sys/applemedia/bufferfactory.m: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/plugin.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: applemedia: port vtdec 2012-03-03 18:57:07 +0100 Alessandro Decina * sys/applemedia/cmapi.h: applemedia: update signature of CMSampleBufferCreate and CMBlockBufferCreateWithMemoryBlock Change data type for counters passed on the stack from UInt32 to size_t. Fixes 64bit builds. 2012-03-02 08:13:10 +0100 Alessandro Decina * sys/applemedia/cmapi.h: applemedia: update format description helper signature Update the FigVideoFormatDescriptionCreateWithSampleDescriptionExtensionAtom signature to match the implementation on OSX Lion. 2012-03-02 21:41:39 +0400 Руслан Ижбулатов * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/directx/d3d.h: * sys/d3dvideosink/directx/dx.h: d3dvideosink: fix compiler warnings and build failure with mingw shared.d3ddev was removed a while back, not sure how this still compiles for anyone (tpm). https://bugzilla.gnome.org/show_bug.cgi?id=653718 https://bugzilla.gnome.org/show_bug.cgi?id=670143 https://bugzilla.gnome.org/show_bug.cgi?id=656905 2012-03-03 15:57:11 +0000 Tim-Philipp Müller * configure.ac: configure: use AS_LIBTOOL and bump version for ABI change in h.264 codec parser Backported from the 0.10 release branch, where v.23 was used. https://bugzilla.gnome.org/show_bug.cgi?id=671203 2012-03-02 11:45:41 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: record number of emulation prevention bytes in slice_header(). Some hardware video decode acceleration API (VA-API, DXVA) require a bit count to the first macroblock, minus the number of emulation prevention bytes. So, instead of having the consumer of the library scan the slice_header() again, just record that number while parsing. Signed-off-by: Gwenole Beauchesne https://bugzilla.gnome.org/show_bug.cgi?id=671203 2012-03-03 15:47:01 +0000 Tim-Philipp Müller * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: tsdemux: fix confusing variable name 2012-03-02 17:11:33 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix segment start position If we *really* can't figure out the first start position, that most likely means the data to push out doesn't have any timestamp. Use a default value of 0 then 2012-03-02 17:10:28 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Flush out the packetizer on flushing seeks ... else we end up with bogus data/offsets 2012-02-29 11:14:15 -0300 Thibault Saunier * gst/mpegtsdemux/tsdemux.c: tsdemux: Activate pads only when receiving data for the stream https://bugzilla.gnome.org/show_bug.cgi?id=670921 2012-03-02 15:37:57 +0100 Andoni Morales Alastruey * sys/d3dvideosink/Makefile.am: d3dvideosink: add missing directx headers 2012-03-02 11:07:47 +0100 Edward Hervey * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Fix level code Valid ranges are from 4 to 10 Valid ranges >> 1 are from 2 to 5 Valid ranges >> 1 - 2 are from 0 to 3 (and not from 1 to 4) 2012-03-02 10:54:48 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Check harder for program changes And don't just rely on the section crc/version_number changing to indicate that the program actually changed. 2012-03-01 18:46:51 +0000 Tim-Philipp Müller * sys/vdpau/gstvdp/gstvdpoutputbufferpool.c: * sys/vdpau/gstvdp/gstvdpoutputbufferpool.h: * sys/vdpau/gstvdp/gstvdpvideobufferpool.c: * sys/vdpau/gstvdp/gstvdpvideobufferpool.h: vdpau: relicense four source files from GPL3+ to LGPL2+ These source files were mistakenly licensed as GPL3, the author (Carl-Anton Ingmarsson) has given permission to relicense them to LGPL2+. https://bugzilla.gnome.org/show_bug.cgi?id=671142 2012-03-01 18:05:17 +0100 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: mpegtsbase/tsdemux: Refactor seek and segment handling All calculations go through the mpegtspacketizer Remove unused variables/code 2012-03-01 17:59:57 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Error out on EOS without any pad Avoids ending up with hanging pipelines 2012-03-01 17:56:34 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Offset calculation Allows PCR<=>PTS<=>offset estimation/calculation Right now the calculation is very naive, but can be extended later on without disrupting the code in tsdemux/mpegtsbase 2012-03-01 17:53:41 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: clock fix and minor addition * Don't take into account packets that arrived at the same time as previous ones for clock skew estimation * Add convenience method for processing the next ts packet 2012-02-29 18:19:23 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: Revert "mpegtsdemux: Not apply various time the same PMT to a program when repetead" This reverts commit 8cb0e87f5623836ddc361eb91dcf9b50b48048e7. mpegtspacketizer already checks if it's a new PMT or not 2012-02-29 10:33:00 +0100 Edward Hervey * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/payload_parsers.c: * gst/mpegtsdemux/payload_parsers.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Remove all seeking code It was more than bogus 2012-02-29 17:26:28 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstsurfacemeta.c: * gst-libs/gst/video/gstsurfacemeta.h: update for metadata API changes 2012-02-14 11:57:00 +0100 Xavier Queralt * gst/hls/gsthlsdemux.c: hlsdemux: don't set the fetcher's location twice Calling gst_element_make_from_uri already does it and filesrc fails when using file protocol in a location 2012-02-28 16:27:55 +0100 Guillaume Desmottes * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/flutspmtstreaminfo.c: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/mpegtspacketizer.c: * gst/rawparse/gstaudioparse.c: * sys/dvb/camutils.c: * tests/examples/opencv/gst_element_print_properties.c: * tests/examples/scaletempo/demo-gui.c: Add missing GLIB_DISABLE_DEPRECATION_WARNINGS Suppress warnings about deprecated threading and GValueArray API, so git compiles with -Werror. https://bugzilla.gnome.org/show_bug.cgi?id=670982 2012-02-24 09:54:35 +0100 Xavier Queralt * gst/hls/gsthlsdemux.c: hlsdemux: don't fail for playlists smaller than fragments-cache https://bugzilla.gnome.org/show_bug.cgi?id=670963 2012-02-28 11:39:18 +0100 Wim Taymans * gst-libs/gst/video/gstsurfacemeta.c: update for metadata tags 2012-02-28 08:13:04 +0100 Alessandro Decina * configure.ac: * sys/applemedia/Makefile.am: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.m: applemedia: port qtkitvideosrc 2012-02-27 09:45:29 -0300 Thibault Saunier * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: catch section lengths extending past the buffer length This is probably the cause for an occasional crash while streaming MPEG. Blind fix after staring at the code and following logic, so may or may not fix the issue, I cannot test. (Port of 4275a70cb55d375afa702917f7359ec117ed49d4 from mpegdemux) 2012-02-27 09:42:27 -0300 Thibault Saunier * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: support more character set encodings Support UTF-16BE, EUC-KR (KSX1001), GB2312 and ISO-10646/UTF8 text encoding and fixed new line for multibyte encoding https://bugzilla.gnome.org/show_bug.cgi?id=664257 (Port of 9759d66407f2be8ec29975b0eff3230bb1dae0ef from the mpegtsdemux element) 2012-02-27 13:13:14 +0100 Wim Taymans * ext/celt/gstceltenc.c: * ext/opus/gstopusenc.c: audioencoders: chain up to parent event handler 2012-02-26 20:43:32 +0100 Alessandro Decina * gst/adpcmdec/Makefile.am: adpcmdec: link to libgstbase 2012-02-24 19:08:40 -0300 Thibault Saunier * gst/mpegtsdemux/mpegtsbase.c: tsbase: Fix parsing of PSI table IDs (Ported from mpegtsdemux d8fd874f5290e4911437120057ee885cdb68b4af) 2012-02-24 15:26:21 -0300 Thibault Saunier * gst/mpegtsdemux/tsdemux.c: tsdemux: Avoid unlinkely leaks and segfault 2012-02-24 17:53:52 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Use new clock skew estimation for outgoing timestamps Only used in live mode 2012-02-24 17:52:33 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Various code cleanup and dead code removal 2012-02-24 17:47:38 +0100 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Fix issues with skew code * Always try to get a timestamp for the algorithm * Remove dead variable * Return proper default value 2012-02-24 17:07:43 +0100 Edward Hervey * sys/dvb/gstdvbsrc.c: dvbsrc: Timestamp output by default Allows downstream elements (like demuxers or parsers) to do remote clock rate/skew estimation. 2012-02-24 12:53:52 +0100 Wim Taymans * gst/dataurisrc/gstdataurisrc.c: * tests/check/elements/dataurisrc.c: dataurisrc: fix docs and unit test 2012-02-23 14:46:09 -0300 Thibault Saunier * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: mpegtspacketizer: Estimate clock skew and retimestamps buffers more precisly Apply the EPTLA algotithm to estimate clock skew. Reusing code from -good/gst/rtpmanager/rtpjitterbuffer.c 2012-02-21 11:12:53 -0300 Thibault Saunier * gst/mpegtsdemux/tsdemux.c: tsdemux: Clean up AAC caps mess 2012-02-20 17:47:11 -0300 Thibault Saunier * gst/mpegtsdemux/gstmpegdesc.h: tsdemux: Reindent gstmpegdesc.h 2012-02-20 17:32:21 -0300 Thibault Saunier * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Support more DTS/AC3 descriptors 2012-02-23 18:17:50 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Remove useless finalize() 2012-02-24 10:26:44 +0100 Wim Taymans * gst-libs/gst/video/gstsurfacemeta.c: update for metadata changes 2012-02-24 10:21:31 +0100 Wim Taymans * tests/check/elements/mxfmux.c: * tests/check/pipelines/mxf.c: tests: fix some caps 2012-02-23 22:04:24 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: fixup nasty typo breaking compilation 2012-02-23 21:17:53 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: consider nal_length_size when constructing codec_data Fixes #670699. 2012-02-23 21:16:18 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: discard frame upon decoding error 2011-11-08 20:19:41 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Use incoming timestamps in live mode 2011-11-08 20:12:50 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Report latency (700ms) 2011-11-08 09:44:18 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Query whether upstream is live or not 2012-02-23 11:55:16 +0000 Tim-Philipp Müller * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-camerabin2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-chromaprint.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-freeverb.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-linsys.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-patchdetect.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-removesilence.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmp.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdi.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-smooth.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * win32/common/config.h: Bump version after release 2012-02-22 15:41:42 +0100 Wim Taymans * tests/check/elements/schroenc.c: test: port schroenc unit test 2012-02-22 11:44:23 +0100 Edward Hervey * configure.ac: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schro: Port to 0.11 Works with some sample files. There seems to be some timestamping issue though, but the 0.10 version also complains about that too. 2012-02-21 18:56:42 -0800 David Schleef * autogen.sh: autogen.sh: avoid touching .po files during 'make' A simple workaround to deal with GNU gettext automake integration failing to deal with git. Fixes #669207 2012-02-22 02:06:38 +0100 Wim Taymans * gst/audiovisualizers/gstbaseaudiovisualizer.c: update for new memory api 2012-02-21 16:53:37 +0100 Edward Hervey * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/video/gstbasevideocodec.c: video: More documentation 2012-02-21 16:52:49 +0100 Edward Hervey * gst-libs/gst/video/gstbasevideocodec.h: basevideocodec: Document structures 2012-02-21 10:06:16 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/colorspace/colorspace.c 2012-02-20 20:11:13 -0800 David Schleef * gst/colorspace/colorspace.c: colorspace: Fix v210 writing out of bounds 2012-02-20 18:43:51 -0800 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: remove GST_ERROR 2012-02-20 11:42:23 -0800 David Schleef * tools/gst-project-maker: gst-project-maker: Create tools, pass make distcheck Create a tools directory for an application. Add source code stubs to allow the project to compile and pass make distcheck. Add notes in source code to tell the user how to create plugin or app code using the other -maker scripts. 2012-01-26 06:58:46 -0500 Matej Knopp * ext/voaacenc/gstvoaacenc.c: * gst/dtmf/gstdtmfsrc.c: * gst/rtpmux/gstrtpmux.c: Fix compiler warnings 2012-02-20 16:07:50 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/opus/gstopusparse.c gst/colorspace/colorspace.c 2012-01-26 16:32:17 -0500 Matej Knopp * gst/dvdspu/gstdvdspu.c: dvdspu should forward video caps event 2012-02-20 14:32:12 +0000 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Add latest files to spec 2012-02-20 12:42:47 +0100 Sebastian Dröge * sys/decklink/Makefile.am: decklink: Add $(GST_PLUGINS_BASE_CFLAGS) and $(GST_PLUGINS_BASE_LIBS) to fix the build 2012-02-20 10:58:09 +0100 Wim Taymans * gst-libs/gst/Makefile.am: glib-compat-private.h to dist 2012-02-19 15:54:39 -0800 David Schleef * tools/gst-project-maker: gst-project-maker: Create autotools project This is a replacement for gst-template that creates an entire autotools project (customized to package name), and populates it with the source for a GStreamer plugin (but no plugin features, those come from gst-element-maker). Fixes: #665727. 2012-02-19 12:57:39 -0800 David Schleef * ext/gme/gstgme.c: * ext/opus/gstopusparse.c: printf format fixes 2012-02-19 00:15:47 -0800 David Schleef * gst/colorspace/colorspace.c: colorspace: clamp intermediates when dithering 2012-01-23 09:05:21 -0800 David Schleef * sys/decklink/Makefile.am: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: decklink: Add 10-bit support 2012-01-23 09:02:37 -0800 David Schleef * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: schro: Add RGB support This uses the automatic YCoCg conversion inside Schroedinger to encode/decode RGB. Only works in intra-only mode, similar to 10- and 16-bit, since RGB is technically a >8-bit format for Dirac purposes. This depends on schroedinger-1.0.12, which is unreleased. 2012-02-18 00:01:55 +0100 Wim Taymans * win32/common/config.h: win32: back to development 2012-02-17 12:15:27 -0300 Thibault Saunier * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: Not apply various time the same PMT to a program when repetead Sometimes their are several times the same PMT applying to a same program in a stream, tsdemux was totally baffled when this was happening, we now keep the one we already applied so it works properly. 2012-02-16 09:54:24 -0300 Thibault Saunier * gst/mpegtsdemux/mpegtspacketizer.c: tsdemux: fix glib deprecation 2012-02-17 11:06:05 +0100 Wim Taymans * configure.ac: back to development === release 0.11.1 === 2012-02-17 11:05:37 +0100 Wim Taymans * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audiovisualizers.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-camerabin2.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * gst-plugins-bad.doap: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.h: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/eo.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: RELEASE 0.11.1 2012-02-17 09:01:56 +0100 Wim Taymans Merge branch 'master' into 0.11 2012-02-16 16:30:02 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Put source to null when resetting caps It seems that v4l2src isn't happy when switching formats on ready state, it works when putting it to NULL. Keep this workaround in wrappercamerabinsrc while v4l2src isn't fixed. Fixes #849832 2012-02-16 14:33:20 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/mpegtsdemux/mpegtsbase.c gst/mpegtsdemux/mpegtspacketizer.c gst/mpegtsdemux/tsdemux.c gst/mve/gstmvedemux.c 2012-02-16 01:12:58 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Put source in NULL when it fails changing state When source is being reset to change caps, check the return of the state syncing function to avoid leaving the source in an unconsistent state. 2012-02-16 00:30:05 +0000 Tim-Philipp Müller * gst/mve/gstmvedemux.c: mve: don't return a boolean for a GstFlowReturn fixes playback. 2012-02-15 10:32:17 -0300 Thibault Saunier * gst/mpegtsdemux/tsdemux.c: tsdemux: Avoid throwing FLOW_ERROR on last PCR processing error In the case of scanning last pcr, errors are not critical, so we keep the stream flowing. 2012-02-14 11:44:48 -0300 Thibault Saunier * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add AAC latm support 2012-02-15 11:06:57 -0300 Thibault Saunier * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: Minor refactoring/code cleaning ... add some debugging symbols in the mean time. 2012-02-15 16:38:32 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: remove _chain hack As we can now rely upon being passed upstream delineated data in ::handle_frame(), the latter can also parse avc formatted data without having to intercept baseparse's chain function. While this evidently requires 2 separate parsing paths, each can be streamlined accordingly. 2012-02-15 11:59:37 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: adjust to standardized baseparse frame state tracking 2012-02-15 17:14:34 +0100 Mark Nauwelaerts Merge branch 'master' into 0.11 2012-02-15 15:07:35 +0100 Jonas Larsson * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix SEI parsing ... in the presence of emulation_prevention_three_byte. Fixes #668381. 2012-02-15 14:29:23 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: use proper NALU offset for config data insertion ... which has to be the position of the start code, which is almost always but need not be 4 bytes. 2012-02-15 13:39:29 +0100 Wim Taymans * gst/videoparsers/gsth263parse.c: h263parse: fix compilation 2012-02-15 13:02:06 +0100 Wim Taymans * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: videoparsers: don't leak event Unref the event when we don't chain up to the parent 2012-02-15 12:56:55 +0100 Wim Taymans * gst/videoparsers/dirac_parse.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: videoparsers: chain up to parent event handler Chain up to the parent event handler to get the default behaviour instead of returning FALSE. 2012-02-14 11:19:04 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-08-27 20:58:48 +0300 Raimo Järvi * sys/directdraw/gstdirectdrawsink.c: directdrawsink: Fix warnings on 64 bit mingw-w64 gstdirectdrawsink.c:1561:24: error: assignment from incompatible pointer type gstdirectdrawsink.c:2028:3: error: format '%d' expects type 'int', but argument 8 has type 'size_t' https://bugzilla.gnome.org/show_bug.cgi?id=657522 2012-02-13 18:44:01 +0100 Mark Nauwelaerts * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: adjust to modified baseparse API 2012-02-13 11:16:20 +0100 Mark Nauwelaerts * gst/pcapparse/gstirtspparse.c: pcapparse: adjust to modified baseparse API 2012-02-13 12:26:11 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: fixup merge 2012-02-13 14:22:42 +0100 Mark Nauwelaerts * tests/check/elements/h264parse.c: tests: h264parse: _unmap buffer upon exit 2012-02-13 23:04:12 +1100 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Trivial bug fix. Don't copy data from an uninited buffer. 2012-02-12 22:59:52 +0100 Thomas Vander Stichele * configure.ac: * docs/plugins/Makefile.am: * gst/multifdsink/.gitignore: * gst/multifdsink/Makefile.am: * gst/multifdsink/gstmultifdsink-marshal.list: * gst/multifdsink/gstmultifdsink.c: * gst/multifdsink/gstmultifdsink.h: multifdsink: refactored in -base 2012-02-10 16:52:46 +0100 Wim Taymans * gst/videoparsers/gsth264parse.c: h264parse: report after merge 2012-02-10 16:46:50 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/chromaprint/gstchromaprint.c ext/mpeg2enc/Makefile.am ext/voaacenc/gstvoaacenc.c gst/dvbsuboverlay/gstdvbsuboverlay.c gst/mpegtsdemux/mpegtsbase.c gst/sdp/gstsdpdemux.c gst/videoparsers/gsth264parse.c sys/d3dvideosink/d3dvideosink.c tests/examples/camerabin/gst-camera-perf.c tests/examples/camerabin/gst-camerabin-test.c tests/examples/camerabin2/gst-camerabin2-test.c tests/examples/mxf/mxfdemux-structure.c tests/examples/scaletempo/demo-main.c 2012-02-10 14:46:00 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: unobfuscate frame parsing code 2012-02-08 21:21:47 +0000 Vincent Penquerc'h * sys/shm/gstshmsink.c: shmsink: fix indefinite wait after adding a new fd to the poll set If the second call to _wait blocks, we will not signal the condition variable, so ensure that second call is not blocking. See rationale and information in the linked bug: https://bugzilla.gnome.org/show_bug.cgi?id=669697 2012-02-09 18:08:22 +0100 Wim Taymans * configure.ac: * ext/modplug/gstmodplug.cc: modplug: port to 0.11 2012-02-09 14:42:23 +0100 Wim Taymans * gst/videoparsers/gsth264parse.c: h264parse: fix refcount error 2012-02-09 00:09:36 +0000 Tim-Philipp Müller * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: rtmp: don't use gst_element_class_install_std_props() It's about to be removed. 2012-02-08 20:09:39 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-h264parse.xml: * gst/h264parse/Makefile.am: * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: Remove legacyh264parse element One h264 parser ought to be enough for anybody. https://bugzilla.gnome.org/show_bug.cgi?id=648002 2012-02-08 16:37:13 +0100 Wim Taymans * ext/assrender/gstassrender.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cog/gstcogmse.c: * ext/kate/gstkatetiger.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/resindvd/resindvdsrc.c: * ext/teletextdec/gstteletextdec.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/camerabin/gstinputselector.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/freeze/gstfreeze.c: * gst/liveadder/liveadder.c: * gst/mpegdemux/gstmpegdemux.c: * gst/multifdsink/gstmultifdsink.c: * gst/mxf/mxfdemux.c: * gst/nuvdemux/gstnuvdemux.c: * gst/tta/gstttaparse.c: * sys/applemedia/avfvideosrc.m: * sys/applemedia/celvideosrc.c: * sys/applemedia/miovideosrc.c: * sys/applemedia/qtkitvideosrc.m: * sys/avc/gstavcsrc.cpp: * sys/d3dvideosink/d3dvideosink.c: * sys/decklink/gstdecklinksink.cpp: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/linsys/gstlinsyssdisrc.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/winks/gstksvideodevice.c: GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING 2012-02-07 17:00:26 +0100 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/assrender.c: * tests/check/elements/faac.c: * tests/check/elements/faad.c: * tests/check/elements/h264parse.c: * tests/check/elements/id3mux.c: * tests/check/elements/jifmux.c: * tests/check/elements/jpegparse.c: * tests/check/elements/mpeg2enc.c: * tests/check/elements/mpeg4videoparse.c: * tests/check/elements/mpegtsmux.c: * tests/check/elements/mpegvideoparse.c: * tests/check/elements/multifdsink.c: * tests/check/elements/mxfdemux.c: * tests/check/elements/vp8dec.c: * tests/check/elements/vp8enc.c: * tests/check/elements/zbar.c: tests: fix more unit tests 2011-08-22 16:31:38 +0200 Carsten Kroll * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: d3dvideosink: create a d3d device for each sink and use the default swap chain in connection with flushing the GPU and not recreating the swap chain this avoids tearing also use GST_xx_DEBUG macros where appropriate 2011-08-22 14:46:48 +0200 Carsten Kroll * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: flush GPU before Present added alternate wait for vsync method based on GetRasterStatus 2011-08-22 14:30:43 +0200 Carsten Kroll * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: check for hardware capabilities, when negotiating 2011-08-22 14:19:06 +0200 Carsten Kroll * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: redraw last buffer when new window handle has been set. 2011-08-22 14:13:30 +0200 Carsten Kroll * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: added NV12 + enabled RGB support 2011-08-27 13:07:00 +0200 Andoni Morales Alastruey * sys/d3dvideosink/d3dvideosink.c: d3dvideosink: Fix device initialization check 2012-02-07 12:14:05 +0100 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/camerabin.c: * tests/check/elements/legacyresample.c: tests: fix more tests 2012-02-07 12:02:34 +0100 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/assrender.c: * tests/check/elements/baseaudiovisualizer.c: * tests/check/elements/faac.c: * tests/check/elements/mpeg2enc.c: * tests/check/elements/mplex.c: tests: fix some tests 2012-02-07 12:02:05 +0100 Wim Taymans * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstbaseaudiovisualizer.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: audiovis: port to 0.11 some more 2012-02-02 13:33:02 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: prevent captures from being lost when switching resolutions When switching capture caps, camerabin1 resets its state to ready to force a new caps to be negotiated. This causes ongoing captures to be aborted. This commit adds a condition to wait for captures to finish before going to ready state. 2012-02-02 12:22:06 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Improve debug message about processing counter Mention on the logs how many capture operations might have been lost 2012-02-04 22:06:57 +0000 Vincent Penquerc'h * gst/geometrictransform/gstrotate.c: rotate: angle is in radians already, do not scale it Other plugins use radians, and the angle documentation says radians. https://bugzilla.gnome.org/show_bug.cgi?id=669365 2012-02-04 22:06:12 +0000 Vincent Penquerc'h * gst/geometrictransform/gstrotate.c: rotate: fix description string to match what the element does https://bugzilla.gnome.org/show_bug.cgi?id=669365 2012-02-03 11:08:48 +0000 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: do not emit no-more-pads Doing so may fix some things, but breaks others (new streams being added in the future). https://bugzilla.gnome.org/show_bug.cgi?id=665814 2012-02-03 11:26:53 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: decrease passthrough negotiation preference Also ensure parsing fixed caps when negotiating rather than failing to handle non-fixed list cases. See #668471. 2012-02-03 00:50:33 +0000 Tim-Philipp Müller * ext/cog/Makefile.am: * ext/curl/Makefile.am: * ext/gsettings/Makefile.am: * ext/kate/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/opus/Makefile.am: * ext/sdl/Makefile.am: * gst/hls/Makefile.am: * gst/inter/Makefile.am: * gst/liveadder/Makefile.am: * gst/mve/Makefile.am: * sys/decklink/Makefile.am: * sys/shm/Makefile.am: * tests/examples/scaletempo/Makefile.am: build: fix CFLAGS order and LIBS order _BAD_CFLAGS should always come first, then GST_PLUGINS_BASE_CFLAGS, then GST_BASE_CFLAGS then GST_CFLAGS. Same for libs: first plugins base libs, then GST_BASE_LIB then GST_LIBS. 2012-02-02 23:21:50 +0100 Mark Nauwelaerts * configure.ac: * gst/debugutils/Makefile.am: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstdebugspy.c: debugutils: port to 0.11 2012-02-02 11:41:15 +0000 Vincent Penquerc'h * gst/mpegpsmux/mpegpsmux.c: mpegpsmux: include specific AAC stream-format in template caps This elements seems to support raw and adts AAC. https://bugzilla.gnome.org/show_bug.cgi?id=665394 2012-02-02 11:37:55 +0000 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: add explicit supported AAC stream-format in template caps https://bugzilla.gnome.org/show_bug.cgi?id=665394 2012-02-02 11:31:32 +0000 Vincent Penquerc'h * ext/faad/gstfaad.c: faad: include specific support AAC stream formats in template caps https://bugzilla.gnome.org/show_bug.cgi?id=665394 2012-02-02 11:27:33 +0000 Vincent Penquerc'h * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: specify in template caps we only take raw/adts AAC format This appears to be what this element supports. https://bugzilla.gnome.org/show_bug.cgi?id=665394 2012-02-02 11:20:38 +0000 Vincent Penquerc'h * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: mpegdemux: include specific AAC stream-format types in template caps https://bugzilla.gnome.org/show_bug.cgi?id=665394 2012-02-02 10:59:53 +0000 Vincent Penquerc'h * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkateutil.c: * ext/kate/gstkateutil.h: kate: better error/debug reporting Include text messages instead of error codes. 2012-02-01 19:38:59 +0000 Tim-Philipp Müller * ext/chromaprint/gstchromaprint.c: chromaprint: fix parent structure in boilerplate macro 2012-02-01 17:53:50 +0000 Tim-Philipp Müller * gst/mpegtsdemux/Makefile.am: * gst/multifdsink/Makefile.am: * tests/examples/opencv/gst_element_print_properties.c: * tests/examples/scaletempo/Makefile.am: build: ignore GValueArray deprecation warnings for the time being until this gets sorted out with the GLib folks and we have a viable alternative. https://bugzilla.gnome.org/show_bug.cgi?id=667228 2012-02-01 17:46:50 +0000 Tim-Philipp Müller * ext/chromaprint/gstchromaprint.c: chromaprint: port to 0.11 2012-02-01 17:06:11 +0000 Tim-Philipp Müller * gst/adpcmdec/adpcmdec.c: adpcmdec: fix up for GstAudioDecoder API change 2012-02-01 16:27:22 +0100 Sebastian Dröge * ext/voamrwbenc/gstvoamrwbenc.c: amrwbenc: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:26:59 +0100 Sebastian Dröge * ext/voaacenc/gstvoaacenc.c: voaacenc: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:26:24 +0100 Sebastian Dröge * ext/faac/gstfaac.c: faac: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:26:01 +0100 Sebastian Dröge * ext/faad/gstfaad.c: faad: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:25:19 +0100 Sebastian Dröge * ext/dts/gstdtsdec.c: dts: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:23:31 +0100 Sebastian Dröge * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: gsm: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 12:47:56 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: disable optimized packetized processing for reverse playback ... as baseparse then provides whole chunks of data (as it should) at once to be parsed, and so the assumptions used to optimize are no longer valid. Fixes #667560. 2012-02-01 12:23:23 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: also mind SEI position for config data insertion Fixes #668627. 2012-02-01 12:03:04 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: unbreak optimized packetized NALU collection processing ... in that it was so optimized it did not consider grouping NALU into AU altogether. Fixes #668627. 2011-12-14 19:27:53 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: tiger: use the new premultiplied support in gstvideo 2012-01-30 18:46:07 +0000 Vincent Penquerc'h * ext/resindvd/resindvdsrc.c: resindvd: fix wedge in preroll when playbin2 deinterlacing is enabled When deinterlacing is enabled, an extra colorspace element is added. Colorspace is a basetransform, and is then the only basetransform element on the video path. A while ago, basetransform started delaying events till caps were set on its source pad. These things conspired to end up sending the DVD highlight events onto a blocked pad on subtitleoverlay. Ensuring these highlight events are only sent once we're in playing mode fixes the issue. https://bugzilla.gnome.org/show_bug.cgi?id=668762 2012-02-01 02:13:48 +0100 Robert Swain * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schro: Fix compilation with 1.0.10 2011-12-26 21:57:48 -0600 Rob Clark * gst/videoparsers/gstmpegvideoparse.c: videoparsers: set interlaced field in caps for mpeg2 https://bugzilla.gnome.org/show_bug.cgi?id=667218 2012-01-31 12:29:13 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: adapt to control-source type changes 2012-01-31 08:44:04 +0100 Alessandro Decina * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: update after collectpads2 changes 2012-01-30 22:41:05 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: rename control-bindings gst_control_binding_xxx -> gst_xxx_control_binding for consistency. 2012-01-30 17:17:16 +0100 Wim Taymans * ext/vp8/gstvp8enc.c: * gst/multifdsink/gstmultifdsink.c: update for HEADER flag 2012-01-25 13:57:57 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix parsing of VUI parameters. max_dec_frame_buffering was mis-parsed because log2_max_mv_length_vertical was parsed twice. https://bugzilla.gnome.org/show_bug.cgi?id=668660 2012-01-29 18:01:05 +0000 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Unref non-forwarded events Also, don't unref forwarded ones 2012-01-28 20:01:35 +0100 Mark Nauwelaerts * ext/voamrwbenc/gstvoamrwbenc.c: voamrwbenc: init debug category 2012-01-28 20:01:19 +0100 Mark Nauwelaerts * ext/voaacenc/gstvoaacenc.c: voaacenc: init debug category 2012-01-28 16:57:03 +0000 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: resync iterator on resync 2012-01-28 12:32:46 +0000 Vincent Penquerc'h * ext/kate/gstkateenc.c: kateenc: remove 'flush every packet' hack This is a bad hack which does not work with Matroska, and is now obsolete as similar code is not included in oggmux/oggstream. 2012-01-27 12:08:52 +0100 Olivier Crête * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: rtpmux: Re-push sticky events on input pad change 2012-01-27 12:07:43 +0100 Olivier Crête * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: dtmf: Use new-style caps 2012-01-27 17:00:19 +0100 Sebastian Dröge * configure.ac: configure.ac: Add mpegdemux to the list of ported plugins 2012-01-27 16:56:53 +0100 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Don't leak the SCHEDULING query 2012-01-26 07:13:06 -0500 Matej Knopp * gst/mpegdemux/Makefile.am: * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstpesfilter.c: Port mpegdemux to 0.11 2012-01-27 14:49:58 +0000 Vincent Penquerc'h * ext/cog/Makefile.am: * ext/cog/gstcogmse.c: * ext/curl/Makefile.am: * ext/curl/gstcurlsink.c: * ext/gsettings/Makefile.am: * ext/gsettings/gstgsettingsaudiosink.c: * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosrc.c: * ext/kate/Makefile.am: * ext/kate/gstkatetiger.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/Makefile.am: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/Makefile.am: * ext/mplex/gstmplex.cc: * ext/opus/Makefile.am: * ext/opus/gstopusenc.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnparsetter.c: * ext/sdl/Makefile.am: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/glib-compat-private.h: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/aiff/aiffparse.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstinputselector.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/cdxaparse/gstcdxaparse.c: * gst/coloreffects/gstchromahold.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/hls/Makefile.am: * gst/hls/gsthlsdemux.c: * gst/hls/m3u8.c: * gst/inter/Makefile.am: * gst/inter/gstintersurface.c: * gst/inter/gstintertest.c: * gst/liveadder/Makefile.am: * gst/liveadder/liveadder.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/Makefile.am: * gst/mve/gstmvemux.c: * gst/mxf/mxfdemux.c: * gst/rawparse/gstrawparse.c: * gst/sdp/gstsdpdemux.c: * gst/tta/gstttaparse.c: * sys/decklink/Makefile.am: * sys/decklink/capture.cpp: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/dvb/gstdvbsrc.c: * sys/shm/Makefile.am: * sys/shm/gstshmsink.c: * tests/examples/camerabin/gst-camera-perf.c: * tests/examples/camerabin/gst-camerabin-test.c: * tests/examples/camerabin2/gst-camerabin2-test.c: * tests/examples/mxf/mxfdemux-structure.c: * tests/examples/scaletempo/Makefile.am: * tests/examples/scaletempo/demo-gui.c: * tests/examples/scaletempo/demo-main.c: plenty: fixup glib deprecations 2012-01-27 07:36:19 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Add viewfinder colorspace conversion to default flags This make the default settings more likely to work. If needed, one can optimize by disabling conversions with the flags. 2012-01-23 08:04:20 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Removing solved TODO and fixing a typo 2012-01-26 23:28:28 +0100 Mark Nauwelaerts * configure.ac: * gst/adpcmdec/adpcmdec.c: adpcmdec: port to 0.11 2012-01-26 23:28:20 +0100 Mark Nauwelaerts * configure.ac: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: adpcmenc: port to 0.11 2012-01-26 23:28:07 +0100 Mark Nauwelaerts * configure.ac: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: gsm: port to 0.11 2012-01-26 15:03:27 +0100 Sebastian Dröge * configure.ac: configure.ac: Add the DVB plugin to the non-ported plugins It needs the MPEG TS parser and currently crashes during instantiation because it can't create the MPEG TS parser. 2012-01-25 18:25:01 +0100 Mark Nauwelaerts * configure.ac: * ext/mpeg2enc/Makefile.am: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2enc.hh: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: mpeg2enc: port to 0.11 2012-01-25 18:49:58 +0100 Mark Nauwelaerts * ext/assrender/gstassrender.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflitetestsrc.c: * ext/gme/gstgme.c: * ext/mplex/gstmplexoutputstream.cc: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/voaacenc/gstvoaacenc.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * sys/dvb/gstdvbsrc.c: * tests/check/elements/parser.c: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camerabin-test.c: * tests/examples/camerabin2/gst-camerabin2-test.c: * tests/examples/mxf/mxfdemux-structure.c: port some more to new memory API Fixes #668677. 2012-01-25 16:37:22 +0100 Olivier Crête * configure.ac: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: * gst/autoconvert/gstautovideoconvert.c: * tests/check/elements/autovideoconvert.c: autoconvert: port to 0.11 2012-01-25 16:57:52 +0100 Olivier Crête * gst/bayer/gstrgb2bayer.c: bayer: Intersect transformed caps with filter 2012-01-25 15:43:01 +0100 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Don't leak gvalue from iterator 2012-01-25 16:46:44 +0100 Wim Taymans * gst/rtpmux/gstrtpmux.c: more porting 2012-01-25 16:20:41 +0100 Mark Nauwelaerts * gst/multifdsink/gstmultifdsink.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/rtpvp8/gstrtpvp8pay.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/h263parse.c: port some more to new memory API 2012-01-25 14:50:50 +0100 Wim Taymans * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-vobsub.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: port to new memory API 2012-01-25 13:58:19 +0100 Thomas Vander Stichele * common: Automatic update of common submodule From c463bc0 to 7fda524 2012-01-25 13:22:43 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: configure.ac ext/kate/gstkateenc.c gst/colorspace/colorspace.c gst/mpegvideoparse/mpegvideoparse.c 2012-01-18 12:04:52 +0100 Alessandro Decina * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: limit the amount of scanning done on duration queries Limit the amount of data scanned when looking for PTSes in duration queries as a failsafe for kinda broken, potentially large files with sparse or no PTSes. 2012-01-18 11:28:26 +0100 Alessandro Decina * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: don't scan for the last PTS if the first wasn't found 2012-01-25 11:21:50 +0100 Olivier Crête * configure.ac: * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: port to 0.11 2012-01-25 10:45:51 +0100 Olivier Crête * configure.ac: * gst/rtpvp8/Makefile.am: * gst/rtpvp8/gstrtpvp8depay.c: * gst/rtpvp8/gstrtpvp8depay.h: * gst/rtpvp8/gstrtpvp8pay.c: * gst/rtpvp8/gstrtpvp8pay.h: rtpvp8: port to 0.11 2012-01-24 22:14:39 +0100 Olivier Crête * Android.mk: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-videomaxrate.xml: * gst-plugins-bad.spec.in: * gst/videomaxrate/Makefile.am: * gst/videomaxrate/videomaxrate.c: * gst/videomaxrate/videomaxrate.h: videomaxrate: Remove, videorate includes the same functionality now 2012-01-24 14:20:52 +0100 Olivier Crête * configure.ac: * gst/rtpmux/Makefile.am: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: * tests/check/elements/rtpmux.c: rtpmux: port to 0.11 2012-01-25 11:38:43 +0100 Sebastian Dröge * common: Automatic update of common submodule From 2a59016 to c463bc0 2012-01-24 11:56:34 +0000 Vincent Penquerc'h * ext/flite/gstflitetestsrc.c: flite: make constant static arrays actually static 2012-01-24 11:53:26 +0000 Vincent Penquerc'h * ext/flite/gstflitetestsrc.c: flite: fix uninitialized return value 2012-01-24 11:22:46 +0100 Oleksij Rempel (Alexey Fisher) * ext/vp8/gstvp8enc.c: vp8enc: trace outgoing timestamps add info level prints for outgoing timestamps. Signed-off-by: Oleksij Rempel (Alexey Fisher) 2012-01-23 22:20:40 +0000 Vincent Penquerc'h * ext/resindvd/rsndec.c: resindvd: fix caps refcount error /me bad monkey. 2012-01-23 18:30:19 +0000 Jonas Larsson * gst-libs/gst/codecparsers/gsth264parser.c: h264parse: fix gst_h264_parse_clock_timestamp always failing 2012-01-23 18:01:14 +0000 Tim-Philipp Müller * REQUIREMENTS: REQUIREMENTS: we need librtmp for rtmp support https://bugzilla.gnome.org/show_bug.cgi?id=668521 2012-01-23 18:51:34 +0100 Jonas Larsson * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: read the cbr_flag in h264_parse_hrd_parameters 2012-01-23 17:47:45 +0000 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix frequent deadlock demuxing MPEG TS A previous patch to add streams early to fix playback of low bitrate streams causes frequent deadlock of a nature I'm at loss how to fix. I'm not certain whether it's a bug in decodebin2, or in that mpegtsdemux patch. Since it causes a major regression, let it be disabled for now. 2012-01-23 14:10:43 +0100 Mark Nauwelaerts * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: break out when stream identified 2012-01-23 14:06:54 +0100 Mark Nauwelaerts * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: avoid NULL manipulation if invalid input 2012-01-23 14:05:45 +0100 Mark Nauwelaerts * gst/mpegdemux/mpegtsparse.c: mpegdemux: avoid NULL manipulation if invalid input 2012-01-23 14:01:02 +0100 Mark Nauwelaerts * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: mpegdemux: avoid some unlikely leaks 2012-01-23 13:58:57 +0100 Mark Nauwelaerts * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: prevent some fall-through cases 2012-01-23 13:58:04 +0100 Mark Nauwelaerts * gst/mve/gstmvemux.c: mve: use signed loop variable ... when using it in i >= 0. 2012-01-23 13:57:32 +0100 Mark Nauwelaerts * gst/mve/mvevideoenc16.c: mve: ensure best target found 2012-01-23 13:56:02 +0100 Mark Nauwelaerts * gst/festival/gstfestival.c: festival: enhance some error case handling 2012-01-23 13:55:33 +0100 Mark Nauwelaerts * gst/nuvdemux/gstnuvdemux.c: nuvdemux: check directly for valid buffer ... rather than doing so indirectly in (incomplete) semantic way. 2012-01-23 13:54:32 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: fix parameter sanity check 2012-01-23 11:54:08 +0000 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update spec file to work 2012-01-20 15:34:27 +0000 Vincent Penquerc'h * ext/resindvd/resindvdbin.c: * ext/resindvd/rsndec.c: resindvd: fix preroll on titles with no audio track https://bugzilla.gnome.org/show_bug.cgi?id=599469 2012-01-20 12:25:09 +0000 Vincent Penquerc'h * ext/resindvd/resindvdsrc.c: rsndvdsrc: fix leak 2012-01-20 12:15:20 +0000 Vincent Penquerc'h * ext/resindvd/resindvdbin.c: resindvdbin: fix video/audio mixup in error message 2012-01-20 10:42:21 +0000 Vincent Penquerc'h * ext/resindvd/rsnaudiomunge.c: rsnaudiomunge: keep the object ref longer Since we do not get a ref to the pad, I'm not certain it's safe to drop the object and use the pad later, so hold the object ref till we're done with the pad. 2012-01-21 20:08:36 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: move from control-binding to control-binding-direct 2012-01-22 16:59:37 -0800 David Schleef * configure.ac: * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspaceorc.orc: Revert "!colorspace: fix odd size problems" This reverts commit e2e6fdcb6b265db201f191952aeed429e85e834e. Untested commit was accidentally pushed. 2012-01-22 16:58:59 -0800 David Schleef * gst/colorspace/colorspace.c: Revert "colorspace: Fix out-of-bound errors for v210" This reverts commit 3b8b87cb6c217b9f0b52cfa3079c4a36afd1c424. Untested commit was accidentally pushed. 2012-01-22 16:55:46 -0800 David Schleef * gst/inter/gstintersubsink.c: * gst/inter/gstintervideosink.c: inter: Fix compilation Fix up previously botched rebase. 2012-01-09 21:59:57 -0800 David Schleef * gst/colorspace/colorspace.c: colorspace: Fix out-of-bound errors for v210 2011-12-31 17:14:24 -0800 David Schleef * configure.ac: * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspaceorc.orc: !colorspace: fix odd size problems 2012-01-22 15:49:12 -0800 David Schleef * gst/inter/gstinter.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintersurface.c: * gst/inter/gstintersurface.h: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosink.h: * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: inter: Add channel property 2012-01-22 15:48:28 -0800 David Schleef * configure.ac: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: schro: Handle 10 and 16-bit formats 2011-12-31 17:13:02 -0800 David Schleef * sys/avc/Makefile.am: avc: fix broken line continuation 2011-08-18 19:49:08 -0700 David Schleef * gst/colorspace/colorspace.c: colorspace: Add jpeg color-matrix conversion 2011-08-09 09:19:10 -0700 David Schleef * gst/inter/Makefile.am: * gst/inter/gstinter.c: * gst/inter/gstintersubsink.c: * gst/inter/gstintersubsink.h: * gst/inter/gstintersubsrc.c: * gst/inter/gstintersubsrc.h: * gst/inter/gstintersurface.h: inter: Add subtitle inter elements 2011-08-04 13:05:22 -0700 David Schleef * ext/kate/gstkateenc.c: kateenc: Don't error on empty input buffers 2012-01-22 19:27:59 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * gst-plugins-bad.spec.in: * gst/mpegvideoparse/Makefile.am: * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: * gst/mpegvideoparse/mpegvideoparse.h: * gst/mpegvideoparse/mpegvideoparse.vcproj: Remove legacy mpegvideoparse plugin There's a new one in the videoparsers plugin. 2012-01-22 19:13:50 +0000 Tim-Philipp Müller * gst/multifdsink/.gitignore: multifdsink: make git ignore generated files 2012-01-22 19:11:21 +0000 Tim-Philipp Müller * gst/videoparsers/gsth263parse.c: h263parse: make level and profile fields in caps strings For consistency with other caps. https://bugzilla.gnome.org/show_bug.cgi?id=658438 2012-01-18 16:35:16 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: fix ref_pic_list_modification() The entries were not filled in linearly and the termination was not recorded either. Now, the actual number of modifications is recorded similarly to dec_ref_pic_marking(). i.e. an explicit counter instead of storing the termination value in the array. https://bugzilla.gnome.org/show_bug.cgi?id=668192 2012-01-20 16:12:02 +0000 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update spec file for actually ported elements 2012-01-20 15:23:54 +0000 Tim-Philipp Müller * common: * configure.ac: configure: only check for gst-plugins-{good,ugly,ffmpeg} in uninstalled setups We don't install .pc files for plugin modules, because we only need them in uninstalled setups, so we can find the plugins for unit tests (even when run a couple of directories deeper or out-of-tree during make distcheck). Try to avoid confusion, so only check for those if this is in fact an uninstalled setup. For installed setups there's no problem finding the plugins, we assume they are all in the plugindir specified by GStreamer core's .pc file. https://bugzilla.gnome.org/show_bug.cgi?id=668311 2012-01-20 14:46:00 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: adapt to control binding changes 2012-01-20 11:40:00 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: adapt to controller api changes Don't use the convenience api for control sources. 2012-01-20 00:53:46 +0000 Tim-Philipp Müller * ext/chromaprint/gstchromaprint.c: * ext/chromaprint/gstchromaprint.h: chromaprint: minor clean-ups Flesh out docs a bit, fix element class. 2011-01-02 19:34:04 +0000 Lukáš Lalinský * configure.ac: * ext/Makefile.am: * ext/chromaprint/Makefile.am: * ext/chromaprint/gstchromaprint.c: * ext/chromaprint/gstchromaprint.h: chromaprint: import Acoustid audio fingerprinting plugin Imported from https://launchpad.net/gst-chromaprint 2012-01-10 00:22:38 +0000 Tim-Philipp Müller * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: handle corner-case of short read in pull_buffer better It's extremely unlikely, but there are corner cases where a short read might happen, so handle that, just in case. 2012-01-19 15:43:51 +0000 Tim-Philipp Müller * ext/gsm/gstgsmenc.c: gsmenc: fix unused-but-set-variable compiler warning 2012-01-19 15:12:46 +0000 Tim-Philipp Müller * common: * configure.ac: Add --disable-fatal-warnings configure option 2012-01-19 11:34:26 +0100 Wim Taymans * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: * ext/mplex/gstmplex.cc: * ext/mplex/gstmplex.hh: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstbaseaudiovisualizer.h: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/multifdsink/gstmultifdsink.c: * gst/multifdsink/gstmultifdsink.h: * gst/sdp/gstsdpdemux.c: * gst/sdp/gstsdpdemux.h: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: * tests/examples/camerabin/gst-camera-perf.c: * tests/examples/camerabin/gst-camerabin-test.c: * tests/examples/camerabin2/gst-camerabin2-test.c: * tests/examples/mxf/mxfdemux-structure.c: * tests/examples/scaletempo/demo-gui.c: * tests/examples/scaletempo/demo-main.c: port to new gthread API 2012-01-18 17:01:38 +0100 Sebastian Dröge * configure.ac: configure.ac: Remove GIO check, this is in gst-glib2.m4 now 2012-01-18 16:46:31 +0100 Sebastian Dröge * common: Automatic update of common submodule From 0807187 to 2a59016 2012-01-18 16:35:04 +0100 Sebastian Dröge * configure.ac: * gst/sdp/Makefile.am: * gst/sdp/gstsdpdemux.c: * gst/sdp/gstsdpdemux.h: sdpdemux: Port to GIO and the new udpsrc/sink properties 2012-01-18 16:01:38 +0100 Sebastian Dröge * configure.ac: configure.ac: Add opus to the non-ported plugins It needs to be updated for the new multichannel API. 2012-01-18 15:48:00 +0100 Sebastian Dröge * gst/multifdsink/Makefile.am: multifdsink: Add $(GST_PLUGINS_BAD_CFLAGS) for the i18n header file 2012-01-17 21:36:21 +0100 Mark Nauwelaerts * gst/adpcmdec/Makefile.am: * gst/adpcmdec/adpcmdec.c: adpcmdec: port to audiodecoder 2012-01-17 21:36:08 +0100 Mark Nauwelaerts * gst/adpcmenc/Makefile.am: * gst/adpcmenc/adpcmenc.c: adpcmenc: port to audioencoder 2012-01-17 18:33:09 +0100 Mark Nauwelaerts * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmdec.h: gsmdec: port to audiodecoder 2012-01-17 18:32:23 +0100 Mark Nauwelaerts * ext/gsm/gstgsmenc.c: * ext/gsm/gstgsmenc.h: gsmenc: port to audioencoder 2012-01-17 13:12:27 +0100 Sebastian Dröge * docs/plugins/Makefile.am: multifdsink: Add to the docs 2012-01-16 22:52:18 +0100 Mark Nauwelaerts * configure.ac: * ext/mplex/gstmplex.cc: * ext/mplex/gstmplexibitstream.cc: * ext/mplex/gstmplexoutputstream.cc: mplex: port to 0.11 2012-01-16 22:52:13 +0100 Mark Nauwelaerts * configure.ac: * gst/pcapparse/gstpcapparse.c: pcapparse: port to 0.11 2012-01-16 22:51:59 +0100 Mark Nauwelaerts * gst/pcapparse/gstirtspparse.c: irtspparse: port to 0.11 2012-01-16 17:30:22 +0000 Vincent Penquerc'h * gst/debugutils/gstdebugspy.c: debugspy: fix string leak 2012-01-16 17:07:29 +0000 Vincent Penquerc'h * gst/mpegdemux/flutspmtstreaminfo.c: mpegdemux: fix missing finalize chaining to parent This code does not seem to trigger on my test streams, so it's a bit of a blind fix, but seems safe enough to push. 2012-01-16 17:02:22 +0000 Vincent Penquerc'h * ext/opencv/gsttemplatematch.c: opencv: fix missing finalize chaining to parent class Not compiled, I do not have the necessary dependencies. 2012-01-16 17:01:18 +0000 Vincent Penquerc'h * ext/gme/gstgme.c: gme: fix missing dispose chaining to parent class Not compiled, I do not have the necessary dependencies. 2012-01-16 16:59:57 +0000 Vincent Penquerc'h * ext/spc/gstspc.c: spc: fix missing dispose chaining to parent class Not even compiled, I do not have the dependencies needed. 2012-01-16 11:29:03 +0100 Sebastian Dröge * configure.ac: * gst/multifdsink/Makefile.am: * gst/multifdsink/gstmultifdsink-marshal.list: * gst/multifdsink/gstmultifdsink.c: * gst/multifdsink/gstmultifdsink.h: * tests/check/Makefile.am: * tests/check/elements/multifdsink.c: multifdsink: Move multifdsink from gst-plugins-base to gst-plugins-bad 2012-01-13 15:57:33 -0300 Reynaldo H. Verdejo Pinochet * gst/videoparsers/Makefile.am: Android, Fix wrong dinamic linking attempt gstcodecparsers is built as an static library. This change fixes building with the Android buildsystem. 2012-01-13 13:30:57 +0000 Vincent Penquerc'h * ext/cog/gstcogmse.c: cogmse: fix finalize not calling base class (and leaking) 2012-01-13 12:55:39 +0000 Vincent Penquerc'h * ext/cog/gstcogmse.c: cogmse: signal chain functions to exit on flush-start 2012-01-13 12:08:28 +0000 Vincent Penquerc'h * gst/siren/gstsirenenc.c: sirenenc: fix base class call mixup in finalize 2012-01-13 11:22:42 +0000 Vincent Penquerc'h * ext/cog/gstcogmse.c: cogmse: fix typo using the wrong pad 2012-01-13 11:22:21 +0000 Vincent Penquerc'h * ext/cog/gstcogmse.c: cogmse: fix possible buffer leak 2012-01-13 10:32:59 +0000 Vincent Penquerc'h * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisrc.c: linsyssdi: fix leaks 2012-01-13 10:25:22 +0000 Vincent Penquerc'h * ext/rsvg/gstrsvgoverlay.c: rsvgoverlay: fix adapter leak 2012-01-13 00:11:54 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2012-01-12 17:16:32 +0000 Vincent Penquerc'h * ext/cog/gstcogmse.c: cogmse: fix pad leaks 2012-01-12 17:11:14 +0000 Vincent Penquerc'h * gst/patchdetect/gstpatchdetect.c: * gst/patchdetect/gstpatchdetect.h: patchdetect: remove (leaking) dead code 2012-01-12 16:45:39 +0000 Vincent Penquerc'h * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosink.h: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstinteraudiosrc.h: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosink.h: * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: inter: remove (leaking) dead code 2012-01-12 16:36:19 +0000 Vincent Penquerc'h * ext/schroedinger/gstschroenc.c: schroenc: balance encoder and video format alloc/dealloc They would leak if just constructing and freeing an object, and probably crash if going from PLAYING to READY and back again (though I haven't tested that). 2012-01-12 15:58:36 +0000 Vincent Penquerc'h * gst/hls/gsthlsdemux.c: hlsdemux: fix queue leak 2012-01-12 15:43:51 +0000 Vincent Penquerc'h * gst/dccp/gstdccpclientsink.c: dccpclientsink: fix string leak 2012-01-12 15:19:01 +0000 Vincent Penquerc'h * gst/y4m/gsty4mdec.c: y4mdec: fix event leak 2012-01-12 14:34:25 +0000 Vincent Penquerc'h * gst-libs/gst/codecparsers/gstmpegvideoparser.c: mpegvideoparser: fix memory leak 2012-01-12 10:26:39 +0100 Mark Nauwelaerts * ext/voaacenc/gstvoaacenc.c: voaacenc: also indicate mono audio in sink caps 2012-01-12 10:25:48 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: also indicate mono audio in sink caps 2012-01-11 18:24:41 +0000 Vincent Penquerc'h * ext/schroedinger/gstschrodec.c: schrodec: fix tag leak 2012-01-11 18:12:22 +0000 Vincent Penquerc'h * ext/schroedinger/gstschrodec.c: schrodec: take out unused leaking buffer 2012-01-11 18:37:15 +0100 Mark Nauwelaerts * configure.ac: * ext/voaacenc/gstvoaacenc.c: voaacenc: port to 0.11 2012-01-11 16:34:35 +0000 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: fix caps leak 2012-01-11 16:32:31 +0000 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: fix slist leak 2012-01-11 13:32:36 +0000 Vincent Penquerc'h * tests/check/elements/opus.c: tests: fix buffer leaks in opus tests 2012-01-11 12:58:08 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: fix some input and output buffer map and ref handling 2012-01-11 12:57:19 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: base class audio info is not yet set during set_format ... since it will only be committed after it has been accepted by subclass. In particular, subclass should not rely on it during its setup. 2012-01-11 12:55:32 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: sprinkle some more layout info in caps 2012-01-11 12:39:01 +0100 Mark Nauwelaerts * ext/voamrwbenc/gstvoamrwbenc.c: voamrwbenc: fix audio format in template caps 2012-01-11 12:24:15 +0100 Mark Nauwelaerts * configure.ac: * ext/voamrwbenc/gstvoamrwbenc.c: voamrwbenc: port to 0.11 2012-01-11 10:50:52 +0100 Sebastian Dröge * ext/faad/gstfaad.c: faad: Unset the UNPOSITIONED flag if we have valid channel positions 2012-01-10 17:27:54 +0000 Vincent Penquerc'h * ext/modplug/gstmodplug.cc: modplug: fix caps leak 2012-01-10 16:59:18 +0100 Sebastian Dröge * configure.ac: * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: dtsdec: Port to 0.11 2012-01-10 15:50:37 +0100 Sebastian Dröge Merge branch 'master' into 0.11 Conflicts: gst/mpegtsdemux/tsdemux.c gst/videoparsers/gsth264parse.c tests/check/elements/camerabin2.c 2012-01-10 13:38:50 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix slist leak 2012-01-10 13:38:42 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix caps leak 2012-01-10 13:25:05 +0000 Vincent Penquerc'h * gst/interlace/gstinterlace.c: interlace: fix caps leaks 2012-01-10 13:24:22 +0000 Vincent Penquerc'h * gst/interlace/gstinterlace.c: interlace: fix ref leak 2012-01-10 11:41:34 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't provide bogus values in non-TIME push-mode Only take the upstream segment values in GST_FORMAT_TIME 2012-01-10 11:37:13 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Handle rollover in PTS and DTS Also hands back-rollover which can happen with PTS 2012-01-04 11:05:48 +0100 Oleksij Rempel (Alexey Fisher) * ext/vp8/gstvp8dec.c: vp8dec: use is_alt_data option to prevent timestamp collisions altref/invisible frames usually stored in container with same timestamp as dependet frame. This make basevideodecoder to update timestamp for dependet frame and couse TS colision on next frame: ^- here is altref time : 1 2 3 4 5 6 7 8 9 webm ts : 1 3 5 5 7 9 vp8dec ts: 1 3 7 7 9 Fix bug: https://bugzilla.gnome.org/show_bug.cgi?id=655245 Signed-off-by: Oleksij Rempel (Alexey Fisher) 2012-01-04 11:09:23 +0100 Oleksij Rempel (Alexey Fisher) * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: add option to hande alt frame data altref/invisible 'frame' do not describe some frame directly, so it can't be displayed and timestamps should not be updated. Fix bug: https://bugzilla.gnome.org/show_bug.cgi?id=655245 Signed-off-by: Oleksij Rempel (Alexey Fisher) 2012-01-09 14:56:29 +0100 Mark Nauwelaerts * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: mpeg4: fix parsing when recursively skipping user data 2012-01-09 14:59:58 +0100 Sebastian Dröge * ext/faad/gstfaad.c: faad: Make sure that the srcpad has caps before finishing actual audio data 2012-01-09 14:39:43 +0100 Sebastian Dröge * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: Don't update caps on every buffer 2012-01-09 14:28:14 +0100 Sebastian Dröge * gst/videoparsers/gstmpeg4videoparse.c: mpeg4videoparse: Don't call gst_buffer_memcmp() with a NULL buffer 2012-01-09 11:03:24 +0000 Vincent Penquerc'h * gst/videoparsers/gsth264parse.c: h264parse: use the framerate that was copied a few lines above 2012-01-09 10:58:56 +0000 Vincent Penquerc'h * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: add a couple consts on string literal arrays 2012-01-09 08:40:48 +0100 Sebastian Dröge * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: GstBaseCameraSrc is the base class, not GstBin 2012-01-09 08:34:48 +0100 Sebastian Dröge * configure.ac: configure: voamrwbenc, lv2 and telextdec are not ported yet 2011-12-19 11:24:31 -0500 David Biomech360 * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstcoloreffects.h: coloreffects: added support for a visual magnifier color filter to be used in gnome-video-effects https://bugzilla.gnome.org/show_bug.cgi?id=666542 2012-01-06 10:52:36 +0000 Vincent Penquerc'h * gst/videoparsers/gsth264parse.c: h264parse: fix test and set not using the same input This fixes H.264 output not having a set framerate, and confusing some of the elements downstream (such as interlace). 2012-01-06 10:39:07 +0000 Vincent Penquerc'h * gst/interlace/gstinterlace.c: interlace: avoid dividing by zero on unkbown framerate If the framerate is unknown, we cannot generate meaningful buffer timestamps/durations, so set them to _NONE instead of calculating something wrong and dividing by 0. 2012-01-02 08:28:13 +0100 Oleksij Rempel (Alexey Fisher) * ext/vp8/GstVP8Enc.prs: * ext/vp8/Makefile.am: vp8: add initial preset file This is initial preset file, currently with only one profile for realtime encoding. Signed-off-by: Oleksij Rempel (Alexey Fisher) 2012-01-05 14:30:21 +0100 Wim Taymans * tests/examples/camerabin2/Makefile.am: examples: link against video library 2011-12-08 12:15:39 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: remove h263 gob parsing, since there is no gob immediate after svh 2011-12-08 12:13:38 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: add missing zero_bits in h263 parsing 2011-12-08 12:12:21 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: includes start_marker in h263 header for parsing 2011-12-08 12:07:42 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: fix offset issue in h263 parse 2011-12-08 11:27:56 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: fix mask pattern for h263 start marker 2012-01-05 11:01:01 +0000 Vincent Penquerc'h * tests/examples/camerabin2/gst-camera2.c: tests: test for GTK 2.24 for new symbols used in camerabin2 tests The whole tree is likely to switch to GTK 3.0 at some point, but we might as well continue building with slightly less new versions if it's not hard to do. 2012-01-05 10:38:22 +0100 Sebastian Dröge * gst-libs/gst/signalprocessor/gstsignalprocessor.h: signalprocessor: The multichannel.h header is gone now 2012-01-05 10:23:07 +0100 Sebastian Dröge * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: Update for the new raw audio caps 2012-01-05 09:52:16 +0100 Sebastian Dröge * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: Port to the new raw audio caps 2012-01-05 09:34:27 +0100 Sebastian Dröge * ext/flite/gstflitetestsrc.c: flitetestsrc: Update to the new raw audio caps 2012-01-04 16:13:14 +0100 Sebastian Dröge * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: audiovisualizers: Update for the new raw audio caps 2012-01-04 19:52:31 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 0546e58 to 0807187 2012-01-04 18:42:57 +0000 Tim-Philipp Müller * tests/check/elements/camerabin.c: * tests/check/elements/camerabin2.c: * tests/check/elements/jifmux.c: tests: remove temporary files when done in camerabin, camerabin2 and jifmux tests 2012-01-04 11:28:36 +0100 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/asfmux.c: * tests/check/elements/assrender.c: * tests/check/elements/autoconvert.c: * tests/check/elements/faac.c: * tests/check/elements/faad.c: * tests/check/generic/states.c: tests: port some more unit tests 2012-01-04 10:56:51 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: fix and tweak frame timestamping ... to run with properly init'ed variables, and to only perform interpolation in safe cases. 2012-01-04 10:02:28 +0100 Wim Taymans * ext/gme/gstgme.c: * ext/rtmp/gstrtmpsrc.c: GST_FLOW_UNEXPECTED -> GST_FLOW_EOS 2012-01-03 22:09:04 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: prefer negotiating pass-through 2012-01-03 21:59:32 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: mark byte-stream AU frame with inserted codec NALs as keyframe 2012-01-03 20:23:16 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: properly determine skip amount when no NAL start found yet 2012-01-03 20:21:51 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: some more proper parse state reset 2012-01-03 15:26:54 +0100 Wim Taymans * ext/faad/gstfaad.c: * ext/libmms/gstmms.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/dataurisrc/gstdataurisrc.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: GST_FLOW_UNEXPECTED -> GST_FLOW_EOS 2012-01-02 15:55:21 +0100 Edward Hervey * gst/camerabin2/gstcamerabin2.c: camerabin2: encoding profiles are objects in 0.11 2012-01-02 15:52:23 +0100 Edward Hervey * tests/examples/scaletempo/demo-player.c: examples: Fix build 2011-12-31 09:55:46 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: port to API changes 2011-12-30 19:08:08 +0000 Tim-Philipp Müller * configure.ac: configure: update for gdp dataprotocol library removal 2011-12-30 18:18:10 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Swallow incoming caps event Otherwise we end up asking subclasses to push the event forward, which will fail since no pads are created yet. 2011-12-30 18:17:26 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Properly carry over the timestamp 2011-11-08 20:19:41 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux: Use incoming timestamps in live mode 2011-11-08 20:12:50 +0100 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Report latency (700ms) 2011-11-08 09:44:18 +0100 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Query whether upstream is live or not 2011-12-06 17:37:45 +0100 Matej Knopp * gst/mpegtsdemux/tsdemux.c: tsdemux: Activate pad before settings caps https://bugzilla.gnome.org/show_bug.cgi?id=665677 2011-12-30 11:49:27 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: tests/examples/camerabin2/Makefile.am 2011-12-30 11:41:17 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11-premerge Conflicts: docs/libs/Makefile.am ext/kate/gstkatetiger.c ext/opus/gstopusdec.c ext/xvid/gstxvidenc.c gst-libs/gst/basecamerabinsrc/Makefile.am gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h gst-libs/gst/video/gstbasevideocodec.c gst-libs/gst/video/gstbasevideocodec.h gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideoencoder.c gst/asfmux/gstasfmux.c gst/audiovisualizers/gstwavescope.c gst/camerabin2/gstcamerabin2.c gst/debugutils/gstcompare.c gst/frei0r/gstfrei0rmixer.c gst/mpegpsmux/mpegpsmux.c gst/mpegtsmux/mpegtsmux.c gst/mxf/mxfmux.c gst/videomeasure/gstvideomeasure_ssim.c gst/videoparsers/gsth264parse.c gst/videoparsers/gstmpeg4videoparse.c 2011-12-30 00:02:46 -0300 Thiago Santos * gst-libs/gst/video/gstbasevideocodec.c: basevideocodec: Reset should reset current caps New caps will need to be negotiated when reset happens (PAUSED to READY). Without reseting the internal stored format, basevideoencoder/decoder wouldn't call the configuration function when the same caps was negotiated again as they would believe this was the same caps as before. The issue is that _stop has been called when going to READY and the elements would have reset their internal codec libs/state as well. A new configuration should be done. 2011-12-30 00:02:19 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: clarify some message logs Be explicit on which encodebin we're switching profiles on the log messages 2011-12-29 13:30:13 -0300 Thiago Santos * tests/examples/camerabin2/gst-camera2.c: examples: camerabin2: add some error handling for format changing Check that the format could be initialized and shows a modal dialog in case it couldn't. 2011-12-29 12:47:48 -0300 Thiago Santos * tests/examples/camerabin2/Makefile.am: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camera2.h: * tests/examples/camerabin2/gst-camera2.ui: examples: camerabin2: add format selection for camerabin2 example Adds a combobox for selecting the video profile for recordings. Useful for testing multiple formats a/v sync when recording. 2011-12-28 16:59:15 -0300 Thiago Santos * tests/check/Makefile.am: tests: remove comment for already fixed issues on makefile Some issues on camerabin2 and jifmux tests were fixed some time ago, remove the comments about them 2011-12-28 16:57:25 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Fix message leak in tests 2011-12-27 11:59:16 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: fix gvalue leak 2011-12-27 10:23:18 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: fix mainloop leaks 2011-12-27 10:20:48 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: secure event ref when sending event to parent class camerabin2 needs to hold an extra ref on send_event before sending it to the parent class as it will need to use it after the parent handles it. 2011-12-24 14:32:32 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: porting to 0.11 2011-12-23 16:33:45 -0300 Thiago Santos * configure.ac: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: port to 0.11 2011-12-23 09:30:31 +0100 Mark Nauwelaerts * ext/faac/gstfaac.h: faac: standardize some field data types Fixes #666750. 2011-12-22 15:19:05 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/gstwrappercamerabinsrc.c: basecamerabinsrc: remove redundant functions gst_bin_get_by_interface should be enough for applications. Haven't seen anyone using those other than wrappercamerabinsrc. 2011-12-22 15:01:47 -0300 Thiago Santos * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: camerabin2: remove unused helper function This drop_eos_probe function is not used anymore, remove it 2011-12-22 17:15:28 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: recreate encoder after flushing ... since it appears the existing one can't be bothered anymore to produce some output. 2011-12-22 17:14:09 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: refactor encoder library setup 2011-12-22 17:10:18 +0100 Mark Nauwelaerts * ext/voaacenc/gstvoaacenc.c: voaacenc: no need to duplicate baseclass sanity checks 2011-12-22 17:09:30 +0100 Mark Nauwelaerts * ext/voamrwbenc/gstvoamrwbenc.c: voamrwbenc: no need to duplicate baseclass sanity checks 2011-12-21 23:51:30 +0100 Wim Taymans * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: update for videofilter changes 2011-12-21 11:33:48 +0100 Wim Taymans * tests/examples/opencv/gstmotioncells_dynamic_test.c: tests: avoid useless include 2011-12-19 16:49:08 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Fix A/V sync for captures Audio src was pushing newsegments starting from 0, even when its buffers were not starting with 0 as their timestamps. Add a buffer probe that checks the ts of the first buffer and uses that to push a newsegment, just like we do for video on wrappercamerabinsrc. 2011-12-19 15:17:22 -0300 Thiago Santos * tests/check/Makefile.am: tests: camerabin2: enable tests Tests are passing now, enable them 2011-12-19 15:16:42 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Push newsegments on video capture start Pushing newsegments to inform muxers about the start time of the video buffer timestamps. 2011-12-20 14:04:52 +0100 Mark Nauwelaerts * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: clear sei message prior to parsing Fixes #666584. 2011-12-19 23:51:19 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: port to new interpolation-mode api 2011-12-19 22:54:47 +0100 Stefan Sauer * tests/icles/pitch-test.c: controller: port to new controller api 2011-12-19 18:44:33 +0100 Wim Taymans * gst/y4m/gsty4mdec.c: y4m: update for new interlace caps 2011-12-19 13:18:51 +0000 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: only warn when we see a PID with unknown type This is quite frequent, and we will just ignore that stream, so an error is not warranted. 2011-12-19 12:32:26 +0100 Alessandro Decina * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: avoid pushing SPS/PPS at start only if both are found in stream Avoid injecting SPS/PPS nals only if both are already present in the stream. Fixes some AVC clips that happen to have only PPS nals in stream. 2011-12-18 18:37:08 +0100 Alessandro Decina * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: handle force key unit events 2011-12-18 17:40:57 +0100 Alessandro Decina * gst/videoparsers/gsth264parse.c: h264parse: do wait for a keyframe when handling force key unit events Although some decoders can start decoding with just PPS and SPS and waiting for a keyframe is bad when the keyframe interval is large, gst-ffmpeg does need a keyframe to start decoding. 2011-12-18 17:32:11 +0100 Alessandro Decina * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: unset the current PCR stream when starting a new unit Unset the current PCR stream when starting a new unit so that afterwards a new stream is selected as PCR and PAT and PMT tables are regenerated. 2011-12-18 17:31:18 +0100 Alessandro Decina * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix key unit event handling when muxing both audio and video Take only video buffers into account when deciding when to cut so that new units start with a video keyframe. 2011-12-15 18:14:24 +0000 Tim-Philipp Müller * ext/kate/gstkatetiger.c: katetiger: don't unref NULL buffer 2011-12-15 16:42:20 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusparse.c: opus: fix bad merge (stray unmap, undeclared var) 2011-12-15 11:11:41 -0300 Thiago Santos * tests/check/Makefile.am: tests: jifmux: re-enable jifmux's tests Fix for its test is now available on -base module. Enabling again. 2011-12-15 13:47:55 +0000 Vincent Penquerc'h * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videomeasure/gstvideomeasure_ssim.h: videomeasure: port to GstCollectPads2 2011-12-15 13:39:41 +0000 Vincent Penquerc'h * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: port to GstCollectPads2 Only tested with audio, I can't get it to accept video (before the port). 2011-12-15 13:22:24 +0000 Vincent Penquerc'h * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: port to GstCollectPads2 I *think* the stream lock use is correct, not 100% sure. 2011-12-15 13:08:42 +0000 Vincent Penquerc'h * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: mpegpsmux: port to GstCollectPads2 2011-12-15 13:04:51 +0000 Vincent Penquerc'h * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rmixer.h: frei0r: port to GstCollectPads2 Untested, no sample pipeline mentioned, and I've no idea what this plugin does, but since all the previous ports work out of the box, this is deemed to work until evidence it doesn't. 2011-12-15 13:02:16 +0000 Vincent Penquerc'h * gst/debugutils/gstcompare.c: * gst/debugutils/gstcompare.h: compare: port to GstCollectPads2 2011-12-15 12:59:57 +0000 Vincent Penquerc'h * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * gst/asfmux/gstasfobjects.h: asfmux: port to GstCollectPads2 2011-12-14 17:36:55 +0100 Mark Nauwelaerts * ext/dts/gstdtsdec.c: dtsdec: avoid crashing upon draining ... and clean up some variable init and debug statement. 2011-12-14 08:54:32 -0300 Thiago Santos * tests/check/elements/mpegtsmux.c: tests: mpegtsmux: remove unused variable 2011-12-14 08:32:50 -0300 Tommi Myöhänen * gst/camerabin2/gstcamerabin2.c: camerabin2: fix leak on error handling Camerabin2 parses warning messages with gst_message_parse_warning(message, &err, &debug) but doesn't free given GError and debug strings. Documentation shows that the ownership of those fields is transferred to caller (they are marked "[transfer full]" in the API docs). 2011-12-12 15:52:20 +0100 Julien Isorce * gst/mpegdemux/mpegtsparse.c: mpegtsparse: check offset when retrieving table_id on malformed packets Fix bug #665988 2011-12-13 10:44:42 +0100 Sebastian Dröge * gst/mpegdemux/mpegtsparse.c: Revert "mpegtsparse: check offset when retrieving table_id on malformed packets" This reverts commit e62978d045d57ee9fed7598c02b9017eb974ea36. 2011-12-13 10:17:41 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.c: basevideocodec: Don't use G_TYPE_REGISTER_BOXED() yet This would require GLib 2.26. 2011-12-12 20:01:17 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: tiger: advertise all the new YUV formats we can now use 2011-12-12 19:34:32 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: tiger: replace the new YUV blitting code with the newer overlay code 2011-12-12 14:54:00 +0100 Julien Isorce * gst/mpegdemux/mpegtsparse.c: mpegtsparse: check offset when retrieving table_id on malformed packets 2011-12-12 13:59:33 +0000 Vincent Penquerc'h * gst/liveadder/liveadder.c: liveadder: fix buffer leak 2011-12-05 18:57:01 +0100 Matej Knopp * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Make framestate a reference counted boxed object ...and also clear all existing frames when resetting the decoder or encoder. 2011-12-05 18:57:01 +0100 Matej Knopp * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Make GstVideoFrame a reference counted boxed object ...and also clear all existing frames when resetting the decoder or encoder. 2011-12-12 10:40:08 +0100 Sebastian Dröge * ext/Makefile.am: teletextdec: Properly integrate into the build system 2011-12-12 10:28:10 +0100 Sebastian Dröge * ext/dts/Makefile.am: dts: Add $(GST_BASE_LIBS) and CFLAGS to the build dtsdec now uses GstAdapter, which is in libgstbase. Also reorder CFLAGS and LIBADD. 2011-12-11 16:07:44 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: docs: fix make distcheck Set DOC_OVERRIDES, so the -overrides.txt file which is apparently created anyway, gets cleaned up properly. 2011-12-11 16:05:57 +0000 Tim-Philipp Müller * docs/libs/Makefile.am: docs: minor Makefile.am clean-up GST_BAD_CFLAGS and GST_BAD_LIBS don't exist. 2011-12-11 15:29:31 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: disable failing jifmux, camerabin2, and colorspace tests jifmux: general:test_jifmux_tags:0: Assertion 'entry->components == 2' failed camerabin2: test_multiple_video_recordings:0: gst_caps_get_structure: assertion `GST_IS_CAPS (caps) colorspace: bad memory accesses in orc code for odd width buffers (see bug #663248) 2011-12-11 15:03:17 +0000 Tim-Philipp Müller * tests/check/elements/camerabin2.c: tests: fix g_usleep() in camerabin2 test g_usleep() takes a microsecond value, GST_SECOND is nanoseconds, so we were sleeping for more than 3 minutes here instead of 200ms. 2011-12-11 00:59:15 +0000 Tim-Philipp Müller * po/LINGUAS: * po/eo.po: * po/es.po: * po/gl.po: * po/ky.po: * po/lv.po: * po/sr.po: * po/sv.po: po: update translations 2011-09-25 23:57:34 +0100 Tim-Philipp Müller * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/psmux.c: * gst/mpegpsmux/psmux.h: mpegpsmux: put stream headers into output caps Basic version with only the system header and the program stream map. An advanced version could include codec-specific bits like SPS/PPS too. This is useful in connection with e.g. multifilesink to make sure new files always start with the stream headers. 2011-09-16 19:32:38 +0100 Tim-Philipp Müller * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: mpegpsmux: add "aggregate-gops" property to aggregate GOPs into buffer lists Useful in connection with multifilesink, for example, to make sure the new file always starts with a keyframe. 2011-12-10 20:08:20 +0000 Tim-Philipp Müller * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: mpegpsmux: remember primary video stream 2011-08-31 19:40:05 +0100 Tim-Philipp Müller * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/psmuxstream.c: * gst/mpegpsmux/psmuxstream.h: mpegpsmux: remember whether an incoming buffer is a keyunit or not 2011-12-09 17:25:41 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusparse.c: * ext/opus/gstrtpopuspay.c: opusenc: add upstream negotiation for multistream ability This will help elements that cannot deal with multistream, such as the RTP payloader. The caps now do not include a "streams" field anymore, but a "multistream" boolean, since we have no real use for knowing the exact amount of streams. https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-07 15:13:11 -0200 Danilo Cesar Lemes de Paula * ext/opus/Makefile.am: * ext/opus/gstopus.c: * ext/opus/gstrtpopusdepay.c: * ext/opus/gstrtpopusdepay.h: * ext/opus/gstrtpopuspay.c: * ext/opus/gstrtpopuspay.h: Adding opus RTP payloader/depayloader element Adding OPUS RTP module based on the current draft: http://tools.ietf.org/id/draft-spittka-payload-rtp-opus-00.txt https://bugzilla.gnome.org/show_bug.cgi?id=664817 2011-12-08 19:47:55 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusparse.c: opus: include streams count in caps https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-08 18:45:27 +0000 Vincent Penquerc'h * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: * ext/opus/gstopusparse.c: opus: properly create channel mapping tables There are two of them, unintuitively enough; the one passed to the encoder should not be the one that gets written to the file. The former maps the input to an ordering which puts paired channels first, while the latter moves the channels to Vorbis order. So add code to calculate both, and we now have properly paired channels where appropriate. https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-08 22:49:50 +0000 Tim-Philipp Müller * gst/videoparsers/Makefile.am: videoparsers: fix LIBS order in Makefile.am 2011-12-08 12:42:57 +0000 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: only offset timestamps when live This code is to sync to a live source when there is a delay between start and when we receive the first buffer, so it does not make sense in a non live case. This fixes playback of streams where the input timestamps are based off some arbitrary offset. https://bugzilla.gnome.org/show_bug.cgi?id=663756 2011-12-08 11:51:36 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Only make the header buffer metadata writable, not the buffer 2011-12-08 10:19:40 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Fix handling of force-keyunit events 2011-12-07 00:06:11 -0500 Olivier Crête * ext/opus/gstopusdec.c: opusdec: header cleanup https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-07 00:06:11 -0500 Olivier Crête * ext/opus/gstopusdec.c: opusdec: Truncate caps first https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-11-28 19:47:34 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: default to stereo 48000 Hz if possible when no headers seen https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-07 13:48:53 +0100 Sebastian Dröge * ext/resindvd/rsndec.c: rsndec: Don't use the initial-identity property on autoconvert It was removed, see bug #599469, #665205 2011-12-07 13:46:43 +0100 Sebastian Dröge * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: Remove the initial-identity property from autoconvert Initially creating an identity element to forward serialized events downstream before any caps are known is broken behaviour. Serialized events should only be forwarded downstream if the caps are already known, otherwise autopluggers and other elements using pad-blocks will fail. This behaviour also doesn't work anymore after basetransform was fixed to queue serialized events until the caps are known as a result of fixing bug #659571. See bug #599469, #665205. 2011-12-06 16:27:25 -0300 Thibault Saunier * gst/videoparsers/gstmpeg4videoparse.c: videoparsers: Do not not skip startcode when needed Fix: https://bugzilla.gnome.org/show_bug.cgi?id=665631 2011-12-06 08:55:19 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: first video_packet_header doesn't start with resync_marker 2011-12-06 08:53:07 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: return NO_PACKET if needed 2011-12-06 08:31:14 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: fix an issue in check resync marker 2011-12-06 08:25:59 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: fix an issue in finding the last video packet in vop 2011-12-06 08:21:19 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: include resync marker in video packet size 2011-12-06 08:19:05 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: scan next resync marker after current one 2011-12-06 08:17:38 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: fix < 0 issue of guint in mpeg4 parser gst_byte_reader_masked_scan_uint32 returns a guint, not a gint, which explains the issue we sometime get using < 0 instead of == -1; 2011-12-06 08:15:46 +0800 Zhao Halley * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: fix pattern/mask of resync_marker parsing of mpeg4 2011-12-06 13:06:06 +0100 Alessandro Decina * gst/videoparsers/Makefile.am: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: handle force key unit events Send SPS/PPS on force key unit events. Useful for example when serving HLS without transcoding. 2011-12-06 12:55:26 +0100 Alessandro Decina * gst-libs/gst/codecparsers/gstmpeg4parser.c: codecparsers: fix compile warnings in gstmpeg4parser.c 2011-12-05 11:56:02 +0100 Edward Hervey * tests/check/elements/.gitignore: * tests/check/libs/.gitignore: tests: Add more files to .gitignore 2011-12-05 11:50:17 +0100 Edward Hervey * gst/videoparsers/gsth264parse.c: h264parse: Use faster parsing variant when input is packetized Reduces latency and cpu usage https://bugzilla.gnome.org/show_bug.cgi?id=665584 2011-12-05 11:47:57 +0100 Edward Hervey * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: Variant of _identify_nalu without checks This is useful for cases where the caller *knows* that the provided input contains a whole NALU and can therefore avoid: * the expensive checks for the next start code (which won't be present) * delaying the input parsing (since we would need the next incoming NALU in order for the parsing code to detect the next start code) https://bugzilla.gnome.org/show_bug.cgi?id=665584 2011-12-05 13:09:17 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: reflow slice nal processing 2011-12-05 12:57:47 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: optimize slice nal processing Only minimal slice info is needed here to determine real frame start, so no need to parse extensively. Fixes #665418. 2011-12-05 12:53:59 +0100 Mark Nauwelaerts * gst-libs/gst/codecparsers/gsth264parser.c: codecparser: unbreak h264 slice header parsing .. introduced by refactoring in commit 177451c9216f4e3959e7358675fbb9731d2c81a2 2011-12-01 18:28:49 +0100 Edward Hervey * sys/pvr2d/gstpvr.c: * sys/pvr2d/gstpvr.h: * sys/pvr2d/gstpvrbufferpool.c: * sys/pvr2d/gstpvrbufferpool.h: * sys/pvr2d/gstpvrvideosink.c: * sys/pvr2d/gstpvrvideosink.h: pvr2d: Port to 0.11 Handles GstVideoMeta and GstVideoCropMeta Provides GstBufferPool New GstPVRMeta to handle the wrapped PVR mem_src 2011-12-02 17:53:23 +0100 Matej Knopp * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Fix reference counting of codec_data 2011-12-05 08:56:43 +0100 Sebastian Dröge * gst/autoconvert/gstautoconvert.c: autoconvert: Implement iterate_internal_links function on the sinkpad and srcpad 2011-11-28 19:38:34 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: guard against decoding 0 samples https://bugzilla.gnome.org/show_bug.cgi?id=665078 2011-12-02 11:46:03 +0100 Sebastian Dröge * configure.ac: configure: Require XVID API >= 4.3 This is required for encoding the simple profile with levels 4a, 5 or 6. Fixes bug #665378. 2011-12-01 16:59:14 +0100 Wim Taymans * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabin: use GstSample for the preview 2011-12-01 10:54:49 +0100 Sebastian Dröge * ext/xvid/gstxvidenc.c: xvidenc: Don't add the profile/level to the video/x-xvid caps 2011-12-01 09:54:08 +0100 Sebastian Dröge * ext/xvid/gstxvidenc.c: * ext/xvid/gstxvidenc.h: xvidenc: Add profile/level to the caps and negotiate them with downstream Still keep the profile property to select profile/level if there are no downstream constraints. Fixes bug #652261. 2011-12-01 09:39:11 +0100 Sebastian Dröge * ext/xvid/gstxvidenc.c: xvidenc: Add support for levels 4a/5/6 of the simple profile 2011-12-01 09:02:46 +0100 Alessandro Decina * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: let upstream PAR override in-stream PAR 2011-11-23 18:26:44 +0100 Alessandro Decina * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: rework PAR parsing And in the process refactor _update_src_caps a bit 2011-11-16 00:03:12 -0500 Luciana Fujii Pontello * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: h264parse: respect pixel-aspect-ratio Parse pixel-aspect-ratio in vui information. 2011-11-30 22:12:27 +0100 Stefan Sauer * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: spacespace: whitespace cleanups 2011-11-30 22:11:40 +0100 Stefan Sauer * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: wavescape: also add colormodes like in spacescope 2011-11-30 15:13:04 +0100 Stefan Sauer * gst/audiovisualizers/README: audiovisualizer: update README 2011-11-30 14:20:38 +0100 Stefan Sauer * gst/audiovisualizers/gstdrawhelpers.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: spacescope: add color-modes In colormode we split the signal in low,mid,high frequency parts and draw them separately into red, gree, blue color channels. 2011-08-30 14:37:42 +0200 Nicola Murino * ext/opencv/gstmotioncells.c: * ext/opencv/gstmotioncells.h: replace propset_mutex with GST_OBJECT_LOCK 2011-11-25 22:32:11 +0100 Stefan Sauer * gst/audiovisualizers/gstdrawhelpers.h: audiovisualizers: streamline the line_aa code Have a reusable dot_aa code and reuse in the line drawing. 2011-11-30 10:35:12 +0000 Tim-Philipp Müller * gst/mpegtsmux/Makefile.am: mpegtsmux: fix build in uninstalled setup Add -base libs includes to CFLAGS, fix order of LIBS. 2011-08-21 11:01:37 +0200 Alessandro Decina * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * tests/check/Makefile.am: * tests/check/elements/mpegtsmux.c: mpegtsmux: add support for force key unit events Handle force key unit events outputting PAT and PMT when all_headers=TRUE 2011-11-29 23:41:22 +0100 Stefan Sauer * configure.ac: opencv: allow to build against 2.3.1 2011-11-29 18:18:36 +0000 Tim-Philipp Müller * Makefile.am: build: add old mpeg4videoparse directory to CRUFT_DIRS 2011-11-29 19:11:22 +0100 Wim Taymans * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camerabin-test.c: * tests/examples/camerabin2/Makefile.am: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camerabin2-test.c: fix for moved interfaces 2011-11-22 09:47:58 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: record ref_pic_list_modification(). 2011-11-22 09:47:57 +0100 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: rename ref_pic_list_reordering() to ref_pic_list_modification(). Upgrade to current AVC specification. 2011-11-29 12:20:51 +0100 Alexey Fisher * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: recalculate adjust if difference is negative One of my dvds jump on some position and miss about 1 minute of stream. The reason was mpeg timestamps. On some position scr difference is negative. It produced negative timestamps. Since it was converted to unsigned value, gstreamer timestamps was invalid. Instead of increasing mpeg ts, they was decreasing till it started to be positive. The jump in timestamps caused mpeg2dec to skip frames to make QoS happy. This patch just make diff unsigned to avoid negative values. Signed-off-by: Alexey Fisher https://bugzilla.gnome.org/show_bug.cgi?id=656115 2011-11-29 12:12:33 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Pass the all-headers field of the force-key-unit event to the subclass 2011-11-29 12:12:04 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Implement full support for the new force-key-unit event Including support for the running-time and count fields. 2011-11-29 09:31:11 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Use new force-keyunit event API from gst-plugins-base 2011-11-29 09:18:19 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Adjusting padding is not required for -bad libraries 2011-11-28 19:48:01 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Move some fields to the private part of the instance struct 2011-11-28 19:36:56 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Make headers metadata writable before pushing downstream The timestamp, duration, etc of the headers has to be changed. 2011-11-28 19:35:40 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Push the downstream force-keyframe event after the next keyframe Even if the corresponding GstVideoFrame doesn't have the is_sync_point flag set. 2011-11-28 19:29:13 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Don't push an upstream force-keyunit event downstream 2011-11-25 11:48:08 +0100 Jonas Larsson * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Add initial support for the all-headers field of the force-keyframe event See bug #607742. 2011-11-29 09:22:38 +0000 Tim-Philipp Müller * ext/kate/gstkatetiger.c: kate: fix set-but-not-used-variable compiler warning gstkatetiger.c:1156:15: error: variable 'height' set but not used gstkatetiger.c:1156:8: error: variable 'width' set but not used 2011-11-29 09:15:11 +0000 Tim-Philipp Müller * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: minor fixes Const-ify one more VLC table. Fix spelling of 'hybrid'. No need to explicitly call ensure_debug_category() everywhere, that will be done automatically from GST_LOG() and friends via GST_CAT_DEFAULT. 2011-11-08 10:44:11 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.h: * gst/videoparsers/gstmpeg4videoparse.c: codecparser: mpeg4: Look for resync code in _mpeg4_parse This way the API is simpler and users can call 1 single function for packet detection. 2011-09-29 14:37:59 -0300 Thibault Saunier * gst/videoparsers/Makefile.am: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: mpeg4videoparse: Properly handle profile and level in caps Fix #660234 2011-09-26 16:58:58 -0300 Thibault Saunier * gst/videoparsers/Makefile.am: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: * gst/videoparsers/mpeg4parse.c: * gst/videoparsers/mpeg4parse.h: mpeg4videoparse: Port to the new mpeg4parser library 2011-09-26 10:39:31 -0300 Thibault Saunier * configure.ac: * gst/mpeg4videoparse/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstmpeg4videoparse.c: * gst/videoparsers/gstmpeg4videoparse.h: * gst/videoparsers/mpeg4parse.c: * gst/videoparsers/mpeg4parse.h: * gst/videoparsers/plugin.c: mpeg4videoparse: Move to the videoparsers plugin Rename a few variables to use the same convention as others elements in this plugin Conflicts: gst/videoparsers/gstmpeg4videoparse.c 2011-11-02 09:14:42 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: Declare private arrays as static all around 2011-09-21 19:49:36 -0300 Thibault Saunier * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstmpeg4parser.c: * gst-libs/gst/codecparsers/gstmpeg4parser.h: codecparsers: mpeg4: Implement an Mpeg4 part 2 parsing library 2011-09-21 19:40:47 -0300 Thibault Saunier * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/parserutils.c: * gst-libs/gst/codecparsers/parserutils.h: codecparsers: Move shared code to a parser utils file 2011-09-29 16:25:29 -0300 Thibault Saunier * pkgconfig/gstreamer-plugins-bad.pc.in: pkgconfig: remove references to codecparsers from -bad.pc.in 2011-11-28 23:20:58 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-11-28 23:20:32 +0000 Tim-Philipp Müller Merge commit '7521b597f4dc49d8d168f368f0e7ebaf98a72156' into 0.11 2011-11-28 23:20:02 +0000 Tim-Philipp Müller Merge commit '26d6add9457f00ce8ec13844368466f0e3816e5d' into 0.11 Conflicts: ext/rtmp/gstrtmpsink.c 2011-11-28 18:47:50 -0300 Thiago Santos * gst/camerabin2/gstviewfinderbin.c: camerabin2: viewfinderbin: use faster cast macro Use cast macro without type checks when we know it should work. 2011-11-28 18:43:40 -0300 Thiago Santos * gst/camerabin2/gstviewfinderbin.c: camerabin2: viewfinderbin: Link elements directly to use faster version ffmpegcolorspace and videoscale should always link successfully, use the fast pad linking version instead of calling the generic helper function. 2011-11-28 16:35:48 -0300 Thiago Santos * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstcamerabin2.c: camerabin2: micro optimize linking some more 2011-09-29 22:43:30 +0100 Vincent Penquerc'h * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: kate: support for rendering on several YUV formats This speeds up rendering a fair bit by not requiring colorspace conversion, whether there is anything to overlay or not. The blending code was nicked from textoverlay. I would think this might be a helpful thing to put in, say, libgstvideo at some point. https://bugzilla.gnome.org/show_bug.cgi?id=660528 2011-08-18 11:39:37 +0100 Vincent Penquerc'h * gst/mpeg4videoparse/mpeg4parse.c: mpeg4videoparse: fix number of bytes read for fixed time increment The spec I found says "16 bits". The existing code used log2(somevalue)+1. ffmpeg uses log2(somevalue-1)+1. The code now uses log2(somevalue-1)+1, and this makes it work with some sample video without breaking another sample. Now, I'm far from certain I've got the right spec, I found it by searching the internet, so... https://bugzilla.gnome.org/show_bug.cgi?id=654666 2011-11-28 15:10:39 +0000 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegdemux: Try to add all streams early This will allow us to signal no-more-pads to avoid hitting the decodebin2 overrun. 2011-09-26 12:43:27 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: handle pads with no data Some streams declare PIDs but will not send data for them. Ensure we time out on those, and both send new segments to keep their time synchronized with the rest, and do not wait forever before deciding to signal no-more-pads. https://bugzilla.gnome.org/show_bug.cgi?id=659924 2011-09-26 12:16:30 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: signal no-more-pads when appropriate We track streams for which a data callback is set (and for which pads will be added only when data is received), and signal no-more-pads when the last pad is added. https://bugzilla.gnome.org/show_bug.cgi?id=659924 2011-09-05 17:40:07 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegdemux: take into account offset of first buffer This fixes playback when the source starts later than the playback pipeline, and when a source drops for a while then restarts. https://bugzilla.gnome.org/show_bug.cgi?id=657794 2011-09-03 14:37:40 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegdemux: fix some more video freezing There was a second threshold, which apparently needs to be smaller than the first, though I'm not certain of it as I don't understand yet this nest of wtf that is the mpeg demuxer timing logic. Fixes video freezing on one (corrupted) MPEG sample. It would previously never think it was out of the discontinuity, and would push buffers with no timestamp. Now this took me more than a day's poking at the thing, for just one constant change, and I'm scared to have to touch this again :S https://bugzilla.gnome.org/show_bug.cgi?id=655804 2011-08-30 14:50:52 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegdemux: catch smaller PTS dicontinuities In a test stream, I get one buffer with a PTS of about 15 seconds in the future compared to the previous one, and next buffers with timestamps continuing where the original ones left off. This caused the sink to wait 15 seconds to display the frame while more frames queued up, and then dump all the subsequent frames as they "arrived too late". Maybe that threshold should be made configurable, but for now, make it more smaller to catch more of these. https://bugzilla.gnome.org/show_bug.cgi?id=655804 Non AV streams keep using the larger threshold (10 minutes), as subtitles may arrive only every so often. 2011-11-28 13:08:27 +0000 Vincent Penquerc'h * ext/apexsink/gstapexsink.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/assrender/gstassrender.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: * ext/curl/gstcurlsink.c: * ext/dc1394/gstdc1394.c: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracenc.cc: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflitetestsrc.c: * ext/gme/gstgme.c: * ext/gsettings/gstswitchsink.c: * ext/gsettings/gstswitchsrc.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/hermes/gsthermescolorspace.c: * ext/jp2k/gstjasperdec.c: * ext/jp2k/gstjasperenc.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetiger.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsrc.c: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvsobel.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: * ext/opencv/gstmotioncells.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttextoverlay.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnaudiomunge.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsnparsetter.c: * ext/resindvd/rsnstreamselector.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * ext/soundtouch/gstpitch.cc: * ext/spandsp/gstspanplc.c: * ext/spc/gstspc.c: * ext/swfdec/gstswfdec.c: * ext/teletextdec/gstteletextdec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautovideoconvert.c: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstinputselector.c: * gst/camerabin2/gstviewfinderbin.c: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstvcdparse.c: * gst/chart/gstchart.c: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstcoloreffects.c: * gst/colorspace/gstcolorspace.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstdebugspy.c: * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/faceoverlay/gstfaceoverlay.c: * gst/festival/gstfestival.c: * gst/fieldanalysis/gstfieldanalysis.c: * gst/freeze/gstfreeze.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstsolarize.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/h264parse/gsth264parse.c: * gst/hdvparse/gsthdvparse.c: * gst/hls/gsthlsdemux.c: * gst/id3tag/gstid3mux.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosrc.c: * gst/interlace/gstinterlace.c: * gst/ivfparse/gstivfparse.c: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/legacyresample/gstlegacyresample.c: * gst/librfb/gstrfbsrc.c: * gst/liveadder/liveadder.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpegdemux/mpegtsparse.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegvideoparse/mpegvideoparse.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvemux.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmux.c: * gst/nsf/gstnsf.c: * gst/nuvdemux/gstnuvdemux.c: * gst/overlay/gstoverlay.c: * gst/patchdetect/gstpatchdetect.c: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstpcapparse.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/rawparse/gstrawparse.c: * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: * gst/removesilence/gstremovesilence.c: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/rtpvp8/gstrtpvp8depay.c: * gst/rtpvp8/gstrtpvp8pay.c: * gst/scaletempo/gstscaletempo.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdimux.c: * gst/sdp/gstsdpdemux.c: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/smooth/gstsmooth.c: * gst/speed/gstspeed.c: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: * gst/vbidec/gstvbidec.c: * gst/videodrop/gstvideodrop.c: * gst/videofilters/gstvideofilter2.c: * gst/videomaxrate/videomaxrate.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * gst/vmnc/vmncdec.c: * gst/y4m/gsty4mdec.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/applemedia/avfvideosrc.m: * sys/applemedia/celvideosrc.c: * sys/applemedia/miovideosrc.c: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264encbin.c: * sys/avc/gstavcsrc.cpp: * sys/d3dvideosink/d3dvideosink.c: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsrc.c: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/fbdev/gstfbdevsink.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisrc.c: * sys/osxvideo/osxvideosrc.c: * sys/qcam/gstqcamsrc.c: * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/videodecoders.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: * sys/vcd/vcdsrc.c: * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/wininet/gstwininetsrc.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: * tests/check/elements/autoconvert.c: * tests/check/elements/baseaudiovisualizer.c: * tools/element-templates/sinkpad: * tools/element-templates/sinkpad-simple: * tools/element-templates/srcpad: * tools/element-templates/srcpad-simple: various: fix pad template ref leaks https://bugzilla.gnome.org/show_bug.cgi?id=662664 2011-10-06 17:43:19 +0200 Julien Isorce * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: rtmp: add WSAStartup and WSACleanup on Win32 https://bugzilla.gnome.org/show_bug.cgi?id=661098 2011-11-27 20:24:39 +0100 Matej Knopp * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth264parse.c: videoparsers: fix format warnings https://bugzilla.gnome.org/show_bug.cgi?id=662618 2011-11-27 23:33:45 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-11-24 13:49:12 +0000 Tim-Philipp Müller * gst/aiff/Makefile.am: * gst/aiff/aiff.c: * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: aiffparse: extract ID3 tags embedded in ID3 chunks https://bugzilla.gnome.org/show_bug.cgi?id=664725 2011-11-26 15:37:25 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/opus/gstopusdec.c ext/opus/gstopusparse.c gst-libs/gst/video/gstbasevideodecoder.c gst-libs/gst/video/gstbasevideodecoder.h 2011-11-25 23:11:32 +0100 Stefan Sauer * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvvideofilter.c: opencv: port baseclass to 0.11 2011-11-25 11:41:19 -0200 Danilo Cesar Lemes de Paula * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opusenc: Fixing "Unused var" compiling error for opus codec https://bugzilla.gnome.org/show_bug.cgi?id=664815 2011-11-25 14:00:18 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: opusenc: only use mono streams for > 2 channels I'm getting odd results with packing streams into stereo streams, and using only mono streams is enough in all cases. 2011-11-25 12:47:42 +0000 Vincent Penquerc'h * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: add some more debug information about channel mapping 2011-11-25 12:46:55 +0000 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: remove dead assigments We now only keep a ref to the headers for later reuse. 2011-11-25 12:40:31 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: do not cause the decoder to apply the channel mapping again Since we already reorder channels, we do not want to write that reordering in the header, or the decoder will do it again. 2011-11-25 12:39:20 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix bogus assertion 2011-11-25 15:49:05 +0100 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/voamrwbenc.c: tests: add unit test for voamrwbenc 2011-11-25 12:48:58 +0100 Edward Hervey Merge remote-tracking branch 'origin/master' into 0.11 Conflicts: ext/faac/gstfaac.c ext/opus/gstopusdec.c ext/opus/gstopusenc.c gst/audiovisualizers/gstspacescope.c gst/colorspace/colorspace.c 2011-11-25 11:37:39 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: some more debug logging 2011-11-25 11:36:14 +0000 Tim-Philipp Müller * ext/vp8/gstvp8dec.c: vp8dec: use new basevideodecoder API to drop frames and get QoS messages posted 2011-11-23 20:03:32 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: add API to drop a frame and post a QoS message on the bus https://bugzilla.gnome.org/show_bug.cgi?id=640017 API: gst_base_video_decoder_drop_frame() 2011-08-30 23:39:36 -0300 Luciana Fujii Pontello * configure.ac: * sys/Makefile.am: * sys/pvr2d/Makefile.am: * sys/pvr2d/gstpvr.c: * sys/pvr2d/gstpvr.h: * sys/pvr2d/gstpvrbufferpool.c: * sys/pvr2d/gstpvrbufferpool.h: * sys/pvr2d/gstpvrvideosink.c: * sys/pvr2d/gstpvrvideosink.h: * sys/pvr2d/pvr_includes/dri2_ws.h: * sys/pvr2d/pvr_includes/img_defs.h: * sys/pvr2d/pvr_includes/img_types.h: * sys/pvr2d/pvr_includes/pvr2d.h: * sys/pvr2d/pvr_includes/services.h: * sys/pvr2d/pvr_includes/servicesext.h: * sys/pvr2d/pvr_includes/wsegl.h: Add pvrvideosink element PVRVideoSink uses PVR2D library to blit images. Author: Alessandro Decina Author: Luciana Fujii 2011-11-24 21:52:55 +0100 René Stadler * tests/check/elements/parser.c: tests: fix caps usage in parser test helper Fixes previous commit; users can call this with NULL caps. 2011-11-24 21:42:39 +0100 René Stadler * tests/check/elements/asfmux.c: * tests/check/elements/autoconvert.c: * tests/check/elements/baseaudiovisualizer.c: * tests/check/elements/legacyresample.c: * tests/check/elements/parser.c: * tests/check/elements/vp8dec.c: * tests/check/elements/vp8enc.c: tests: update for gstcheck API change 2011-11-24 19:03:23 +0100 Stefan Sauer * gst/audiovisualizers/README: * gst/audiovisualizers/gstdrawhelpers.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstwavescope.c: audiovisualizers: add aa-line code and user for wave/space-scope 2011-11-24 13:38:59 +0000 Vincent Penquerc'h * ext/opus/gstopusheader.c: opus: pre-skip and output gain are little endian, remove reminder note 2011-11-24 13:29:56 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopuscommon.c: * ext/opus/gstopuscommon.h: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: opus: multichannel support 2011-11-23 17:49:58 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: switch to multistream API It's very similar to the basic API, and is a superset ot it, which will allow encoding and decoding more than 2 channels. 2011-11-23 17:32:03 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: shuffle supported sample rates to favor 48000 2011-11-23 16:36:54 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: remove useless setup field 2011-11-24 12:01:48 +0100 René Stadler * configure.ac: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/h263parse.c: videoparsers: port to 0.11 Unit tests missing for now. 2011-11-24 11:59:19 +0100 René Stadler * gst-libs/gst/Makefile.am: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: port to 0.11 Only to fix the build really (gtk-doc is trying to pick up the unbuildable lib). Not tested at all (but pretty trivial case anyways). 2011-11-02 13:25:56 +0000 Vincent Penquerc'h * gst/colorspace/colorspace.c: colorspace: fix width/height mismatches https://bugzilla.gnome.org/show_bug.cgi?id=663238 2011-11-24 10:26:25 +0100 Sebastian Dröge * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: Use the sinkpad template caps as a fallback, not the srcpad ones 2011-11-24 10:14:06 +0100 Sebastian Dröge * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream 2011-11-24 10:09:59 +0100 Sebastian Dröge * gst/videoparsers/gsth263parse.c: h263parse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream 2011-11-24 10:08:27 +0100 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: diracparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream 2011-11-24 10:04:30 +0100 Sebastian Dröge * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream 2011-11-24 01:56:07 +0000 Tim-Philipp Müller * ext/neon/gstneonhttpsrc.c: neonhttpsrc: remove iradio-* properties Should send tags instead. 2011-11-24 01:52:36 +0000 Tim-Philipp Müller * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: neonhttpsrc: unconditionally send icecast request header, remove iradio-mode property 2011-11-24 01:22:13 +0000 Tim-Philipp Müller * ext/libmms/gstmms.c: * ext/libmms/gstmms.h: mmssrc: make connection-speed property a guint64 Even if the library limits it to an int. 2011-11-24 00:56:45 +0000 Tim-Philipp Müller * gst/sdp/gstsdpdemux.c: sdpdemux: update for gstrtpbin -> rtpbin renaming 2011-11-23 23:42:41 +0000 Tim-Philipp Müller * ext/faac/gstfaac.c: * ext/rtmp/gstrtmpsink.c: faac, rtmp: more printf format fixes in debug messages https://bugzilla.gnome.org/show_bug.cgi?id=662618 2011-11-21 22:45:15 +0100 Matej Knopp * configure.ac: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: * gst/y4m/gsty4mdec.c: Fix printf format compiler warnings on OS X / 64 bit https://bugzilla.gnome.org/show_bug.cgi?id=662618 2011-11-23 23:30:00 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: do not leak buffer when no encoded data yet or encoding error 2011-11-23 23:29:10 +0100 Mark Nauwelaerts * ext/dts/Makefile.am: * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: dtsdec: port to audiodecoder 2011-11-23 16:01:35 +0000 Tim-Philipp Müller * gst/smooth/gstsmooth.c: smooth: fix printf format compiler warning in debug message https://bugzilla.gnome.org/show_bug.cgi?id=664631 2011-11-23 13:47:11 +0100 Krzysztof Krakowiak * ext/modplug/gstmodplug.cc: modplug: fix modules playing as mono instead of stereo replaced broken if-return logic for fixating rate and number of channels that caused that modules were always (after successful fixation of rate) played as mono (instead of stereo) by correct one with appropiate warnings. https://bugzilla.gnome.org/show_bug.cgi?id=619035 2011-11-23 13:22:12 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: implement replay gain It would ideally be better to leave this to a rgvolume element, but we don't control the pipeline. So do it by default, and allow disabling it via a property, so the correct volume should always be output. 2011-11-23 11:58:54 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: add in-band FEC support This allows reconstruction of lost packets if FEC info is included in the next packet, at the cost of extra latency. Since we do not know if the stream has FEC (and this can change at runtime), we always incur the latency, even if we never lose any frame, or see any FEC information. Off by default. 2011-11-23 12:41:32 +0100 René Stadler * gst/frei0r/gstfrei0r.c: frei0r: normalize boolean property default values to TRUE/FALSE Glib barks at us with a warning when we pass e.g. 4. 2011-11-23 11:59:42 +0100 Edward Hervey * pkgconfig/gstreamer-basevideo-uninstalled.pc.in: pkgconfig: aaand fix my last commit 2011-11-23 11:55:06 +0100 Edward Hervey * pkgconfig/gstreamer-basevideo-uninstalled.pc.in: pkgconfig: Fix gstreamer-basevideo-uninstalled.pc.in 2011-11-23 11:31:44 +0100 Stefan Sauer * gst/audiovisualizers/README: * gst/audiovisualizers/gstdrawhelpers.h: audiovisualizers: update README and TODO comments 2011-11-23 11:21:15 +0100 Stefan Sauer * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: spacescope: use the drawhelpers and add a draw-style property Like in wavescope support drawing dots and lines. 2011-11-23 11:08:39 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/opus/gstopusdec.c ext/opus/gstopusenc.c ext/opus/gstopusparse.c gst/audiovisualizers/gstwavescope.c gst/filter/Makefile.am gst/filter/gstfilter.c gst/filter/gstiir.c gst/playondemand/gstplayondemand.c 2011-11-23 08:40:49 +0100 Stefan Sauer * gst/audiovisualizers/Makefile.am: * gst/audiovisualizers/gstdrawhelpers.h: * gst/audiovisualizers/gstwavescope.c: audiovisualizers: add some simple drawing helpers for reuse Add a (uninstalled) header with simple drawing macros 2011-11-23 08:17:05 +0100 Stefan Sauer * gst/smoothwave/Makefile.am: * gst/smoothwave/README: * gst/smoothwave/gstsmoothwave.c: * gst/smoothwave/gstsmoothwave.h: smoothwave: remove element unported from 0.8 The wavescope element does achieve the same effect. 2011-11-23 08:14:38 +0100 Stefan Sauer * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: wavescope: add a style property for drawing modes Add a style enum of { dots, lines}. Now this elements is a superset of smoothwave. 2011-11-22 23:04:49 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstbasevideodecoder.c: docs: fix comment in gst_base_video_decoder_get_max_decode_time() docs 2011-11-22 20:27:50 +0000 Tim-Philipp Müller * ext/opus/gstopusenc.c: opusenc: mark properties changeable at runtime with GST_PARAM_MUTABLE_PLAYING 2011-11-22 19:57:07 +0000 Tim-Philipp Müller * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: fix weird event list handling Get rid of weird code that copies a list manually, taking ownership of the elements and then frees the old list. Instead, just take over the old list entirely. (If the intent was to reverse the list, one could use g_list_reverse() instead). Then, push events in the list out from last to first (since they were prepended as they came in) instead of just pushing out the last in the list and leaking the others. 2011-11-22 18:33:17 +0000 Vincent Penquerc'h * tests/check/Makefile.am: * tests/check/elements/opus.c: opus: add test 2011-11-22 17:04:09 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: allow setting most properties at PLAYING time Opus allows these to be changed during encoding, transparently to the decoder. 2011-11-22 16:14:06 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: bound the bitrate to more sensible values Go from the bounds mentioned in the spec, and allow some more variation. In particular, don't allow silly low bitrates, and allow reaching the maximum useful bitrate. 2011-11-22 15:33:20 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opusenc: fix crash on pathological parameters Asking for 1 bit/s would select a 0 byte buffer, leading to a crash. Buffer size is now controlled by a max-payload-size property, which can't be less than 2. 2011-11-21 18:12:00 +0000 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: do not send headers through data path Additionally, since Opus packets may change between stereo and mono as the encoder sees fit, assume two channels when we do not see a header, and use the header value otherwise. 2011-11-21 17:48:54 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: opus: move header magic testing to gstopusheader 2011-11-21 17:01:49 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: skip pre-skip samples 2011-11-21 12:50:22 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: read pre-skip from first header if available 2011-11-17 11:33:56 +0100 Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: support more character set encodings Support UTF-16BE, EUC-KR (KSX1001), GB2312 and ISO-10646/UTF8 text encoding and fixed new line for multibyte encoding https://bugzilla.gnome.org/show_bug.cgi?id=664257 2011-11-22 09:11:35 +0100 Stefan Sauer * gst/playondemand/.gitignore: * gst/playondemand/Makefile.am: * gst/playondemand/demo-mp3.c: * gst/playondemand/filter.func: * gst/playondemand/gstplayondemand.c: * gst/playondemand/gstplayondemand.h: playondemand: remove unported plugin from 0.8 These days one would do the effect e.g. using gnonlin. 2011-11-22 09:10:32 +0100 Stefan Sauer * gst/speed/gstspeed.c: speed: tiny doc blob clarification 2011-11-21 22:55:40 +0100 Stefan Sauer * configure.ac: * gst/freeverb/Makefile.am: * gst/freeverb/gstfreeverb.c: * gst/freeverb/gstfreeverb.h: freeverb: add a freeverb port Freeverb is a public domain reverb implementation. Port it as a gstreamer element and make use of gstreamer specific features (gap aware, disconts, controller, ...). 2011-11-21 13:37:20 +0100 Wim Taymans * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst/mpegtsdemux/mpegtsbase.c: update for activation changes 2011-11-21 12:02:28 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: reset tagsetter interface on stop 2011-11-21 11:44:01 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: handle NULL packets (used for PLC) 2011-11-21 11:28:10 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: light cleanup 2011-11-20 13:07:27 +0000 Vincent Penquerc'h * ext/opus/gstopusparse.c: opusparse: parse raw opus packets 2011-11-20 09:58:06 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: do not push header buffers Opus headers appear only when muxed in Ogg, so only place them on the caps, where oggmux will find them, but other elements will be blithely unaware of them. 2011-11-20 09:52:46 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopusenc.c: * ext/opus/gstopusheader.c: * ext/opus/gstopusheader.h: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: opus: make opusparse set headers on caps Header-on-caps code moved to a new shared location to avoid duplicating the code. 2011-11-21 10:54:56 +0100 Edward Hervey * ext/gme/gstgme.c: gme: Port to new pad function signatures 2011-11-21 08:20:14 +0100 Stefan Sauer * configure.ac: * gst/smooth/Makefile.am: * gst/smooth/gstsmooth.c: * gst/smooth/gstsmooth.h: smooth: port to 0.10 Port from GstElement to GstVideoFilter. Fix FIXMEs. Cleanup naming. Expose left out property (kuma-only). 2011-11-20 20:16:03 +0100 Stefan Sauer * gst/passthrough/.gitignore: * gst/passthrough/Makefile.am: * gst/passthrough/filter.func: * gst/passthrough/gstpassthrough.c: * gst/passthrough/gstpassthrough.h: * gst/passthrough/passthrough.vcproj: passthrough: remove obsolete element It is not built by default. We have identity for some of the needs and otherwise audio/videofilter base classes. 2011-11-20 20:08:47 +0100 Stefan Sauer * gst/filter/Makefile.am: * gst/filter/filter.vcproj: * gst/filter/gstfilter.c: * gst/filter/gstfilter.h: * gst/filter/gstiir.c: * gst/filter/gstiir.h: * gst/filter/iir.c: * gst/filter/iir.h: filter: remove filter plugin We don't build it anyway and we have audioiirfilter in good. 2011-11-20 20:06:29 +0100 Stefan Sauer * gst/inter/gstinter.c: * gst/inter/gstintersurface.c: inter: fix leftover boilerplace comments 2011-11-18 03:31:32 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Also reset video/audio filters before capturing Video and audio custom filter element should also be reset before starting a new capture, otherwise we get wrong-state errors 2011-11-19 15:58:09 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix terminating NUL being written in signature 2011-11-16 19:40:20 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: make frame-size an enum It only supports a set number of specific values (including a non integer one). 2011-11-16 19:22:44 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: the encoder might not make use of all the bytes 2011-11-18 19:28:26 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: * ext/opencv/gstmotioncells.c: opencv: use caps constants more 2011-11-18 19:19:32 +0100 Stefan Sauer * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: opencv: fixup doc blobs 2011-11-18 19:15:26 +0100 Stefan Sauer * ext/opencv/gstedgedetect.c: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: * ext/opencv/gstmotioncells.c: * ext/opencv/gstmotioncells.h: * ext/opencv/gstopencv.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gstpyramidsegment.h: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttemplatematch.h: opencv: fixup gobject naming conventions 2011-11-18 17:59:47 +0100 Wim Taymans * gst/mpegtsdemux/mpegtsbase.c: update for new scheduling query 2011-11-18 17:18:01 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: remove redundant code ... now that what should not be needed is really not needed anymore to cover up bogus stuff that has been FIXMEd. 2011-11-18 12:32:13 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: fix up AU collection processing On the one hand, no need to collect nal if processing last one. On the other hand, ensure AU collection processing to have sufficient next NAL data in normal cases. Fixes #663180. 2011-11-18 15:12:46 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: mind to-be-skipped data in subsequent re-used offsets 2011-11-18 15:10:57 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: avoid additional NAL parsing if no AU collection is needed 2011-11-18 15:10:25 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: some more get_caps tweaking ... by having it use sink template rather than src template, and not passing an downstream parsed(=true) to upstream. 2011-11-18 15:07:01 +0100 Mark Nauwelaerts * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: initialize additional sps field value Fixes #663552. 2011-11-18 13:58:41 +0100 Wim Taymans * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst/mpegtsdemux/mpegtsbase.c: add parent to activate functions 2011-11-18 12:38:14 +0100 Wim Taymans * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: fix for scheduling mode rename 2011-11-18 08:29:31 +0100 Stefan Sauer * ext/opencv/gstcvdilateerode.c: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsobel.c: opencv: remove empty finalize implementations 2011-11-17 23:03:05 +0100 Mark Nauwelaerts * ext/voamrwbenc/Makefile.am: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/voamrwbenc/gstvoamrwbenc.h: voamrwbenc: port to audioencoder 2011-11-17 23:02:55 +0100 Mark Nauwelaerts * ext/voaacenc/gstvoaacenc.c: voaacenc: some code shuffle cleanup 2011-11-17 23:02:39 +0100 Mark Nauwelaerts * ext/voaacenc/Makefile.am: * ext/voaacenc/gstvoaacenc.c: * ext/voaacenc/gstvoaacenc.h: voaacenc: port to audioencoder 2011-11-17 23:02:31 +0100 Mark Nauwelaerts * ext/celt/gstceltenc.c: celtenc: properly report error case 2011-11-17 23:02:17 +0100 Mark Nauwelaerts * ext/celt/gstceltdec.h: celtdec: remove unused instance variable 2011-11-17 10:33:42 -0800 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Only call ::reset once in READY->PAUSED 2011-11-17 17:32:42 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/celt/gstceltdec.c ext/opus/gstopusdec.c ext/opus/gstopusdec.h ext/opus/gstopusenc.c ext/opus/gstopusenc.h ext/opus/gstopusparse.c 2011-11-17 15:53:42 +0100 Wim Taymans * ext/assrender/gstassrender.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: * gst/sdp/gstsdpdemux.c: * gst/y4m/gsty4mdec.c: add parent to pad functions 2011-11-17 10:07:34 +0100 Stefan Sauer * docs/libs/Makefile.am: libs-docs: add -DGST_USE_UNSTABLE_API 2011-11-17 09:56:34 +0100 Stefan Sauer * ext/gme/gstgme.c: gme: port for pad_query api change 2011-11-17 08:25:28 +0100 Stefan Sauer * gst/asfmux/gstasfmux.c: * gst/debugutils/gstcompare.c: * gst/frei0r/gstfrei0rmixer.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mxf/mxfmux.c: * gst/videomeasure/gstvideomeasure_ssim.c: collectpads: port API changes 2011-11-16 20:53:13 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: facedetect: detect face features Also detect mouth, nose and eyes. Drop faces that don't have them. Fixes leaking the cascades. Adds more docs. 2011-11-16 20:51:27 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: facedetect: Gstfacedetect -> GstFacedetect 2011-11-14 11:05:44 +0100 Stefan Sauer * ext/opencv/gstfacedetect.c: facedetect: code maintenance Update example to be useful. Draw colored ellipses instead of unicolor circles. Reflow code for more local variables. Improve parameter descriptions. 2011-11-16 10:57:55 -0800 Sebastian Dröge * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: Change rank to PRIMARY+1 2011-11-16 10:45:52 -0800 Sebastian Dröge * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: Don't require parsed=false on the sinkpad caps 2011-11-16 18:49:03 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: do not include variable fields in caps Those can vary from one packet to the next, so have no reason to be in the caps. 2011-11-16 18:43:53 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix constrained-vbr property name typo 2011-11-16 10:38:49 -0800 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Implement ::sink_get_caps to allow stream-format conversion again Just proxying the downstream caps will prevent h264parse from accepting a different stream-format than what is supported downstream, although it could convert to a different stream-format. 2011-11-16 18:35:29 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: let the base class handle all timing 2011-11-16 19:18:50 +0100 Mark Nauwelaerts * ext/celt/gstceltdec.c: * ext/celt/gstceltdec.h: celtdec: port to audiodecoder 2011-11-16 19:11:24 +0100 Mark Nauwelaerts * ext/celt/Makefile.am: * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: celtenc: port to audioencoder 2011-11-15 19:53:33 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopus.c: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: opusparse: add opusparse element A very simple element that parses Opus streams from the ad hoc framing used by the Opus test vectors. 2011-11-16 17:24:20 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: allow negotiation of rate/channels with downstream Since an opus stream may be decoded to any (sensible) rate, and either stereo or mono, we try to accomodate downstream. 2011-11-16 17:05:17 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: rewrite logic Parameters such as frame size, etc, are variable. Pretty much everything can change within a stream, so be prepared about it, and do not cache parameters in the decoder. 2011-11-16 16:56:43 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: port to base audio encoder/decoder 2011-11-16 17:28:10 +0100 Wim Taymans * ext/assrender/gstassrender.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: * gst/y4m/gsty4mdec.c: add parent to query function 2011-11-16 13:26:35 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: allow negotiation of rate/channels with downstream Since an opus stream may be decoded to any (sensible) rate, and either stereo or mono, we try to accomodate downstream. 2011-11-16 01:14:32 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: rewrite logic Parameters such as frame size, etc, are variable. Pretty much everything can change within a stream, so be prepared about it, and do not cache parameters in the decoder. 2011-11-15 23:00:32 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: opusdec: remove buffer pool, buffers are not constant size 2011-11-15 19:53:33 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopus.c: * ext/opus/gstopusparse.c: * ext/opus/gstopusparse.h: opusparse: add opusparse element A very simple element that parses Opus streams from the ad hoc framing used by the Opus test vectors. 2011-11-16 12:46:04 +0100 Edward Hervey * gst/mpegtsdemux/TODO: * gst/mpegtsdemux/tsdemux.c: tsdemux: Add notes on synchronization and scheduling 2011-11-16 12:40:58 +0100 Wim Taymans * gst/audiovisualizers/gstbaseaudiovisualizer.c: update for renamed flags Use the _check_reconfigure method instead of checking flags. 2011-11-16 10:56:24 +0100 Jonas Larsson * gst/videoparsers/gsth264parse.c: h264parse: outgoing byte stream prefix always has size 4 Fixes #664123. 2011-11-15 17:49:48 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix pointer mismatch in memcpy on drain 2011-11-15 17:55:50 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideodecoder.c: * gst/mpegtsdemux/tsdemux.c: _query_peer_*() -> _peer_query_*() 2011-11-15 17:24:07 +0100 Wim Taymans * ext/assrender/gstassrender.c: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: _peer_get_caps() -> _peer_query_caps() 2011-11-15 16:34:13 +0100 Wim Taymans * ext/assrender/gstassrender.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvdspu/gstdvdspu.c: change getcaps to query 2011-11-14 11:30:13 +0100 David King * gst/camerabin/gstcamerabin.c: camerabin: Document requirement for PLAYING state As described in GNOME bug 663998, the element must be in the PLAYING state before calling capture-start. https://bugzilla.gnome.org/show_bug.cgi?id=664048 2011-11-14 18:34:18 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Fix some racyness in tests Fix some racyness as the test was checking the idle property right after it got the preview message for video recordings. In some conditions, it might happen that camerabin2 still hasn't decremented the processing counter after posting the preview and/or the image/video-done message and the test will get idle=false and fail. The approach for checking for the idle property was a busy loop with a sleep. Far from elegant, but good enough for these tests. 2011-11-14 16:55:37 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Also reset audio elements when video capture finishes Audio elements also need to be reset after each capture, do it together with the video elements' reset 2011-11-11 09:58:30 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Add one debug line about camerabin2 being idle 2011-11-10 16:53:40 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Remove video elements' state clearing from start-capture Reduce start-capture workload by moving the elements' state reseting to the finishing steps of the capture. This reduces the time start-capture takes to actually start a capture and return to its caller, improving user experience. As the elements' state reset is now triggered from the message handling function, it needs to spawn a new thread, changing state from the pad's task would cause a deadlock. 2011-11-10 16:11:56 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: keep track of video recording state Adds a new variable to keep track of the state of the video recording in camerabin2. This allows start-capture to reject new video recording requests when one is already ongoing. This fixes one of check tests. 2011-11-14 13:41:58 +0000 Vincent Penquerc'h * ext/opus/Makefile.am: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: port to encoder/decoder base classes 2011-11-03 14:09:52 +0200 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: mpegvideoparse:Correct the skipping of vbv_delay in picture header and some typo fixes. https://bugzilla.gnome.org/show_bug.cgi?id=663309 2011-11-13 23:55:56 +0000 Tim-Philipp Müller * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/resindvd/resindvdbin.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: * gst/dataurisrc/gstdataurisrc.c: * sys/dvb/dvbbasebin.c: Update for GstURIHandler get_protocols() changes 2011-11-11 17:46:41 +0000 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: opus: port to 0.11 2011-11-10 15:13:34 +0200 Mart Raudsepp * ext/mimic/Makefile.am: * ext/opencv/Makefile.am: * ext/vp8/Makefile.am: * sys/acmmp3dec/Makefile.am: * sys/linsys/Makefile.am: mimic, opencv, vp8, acmmp3dec, linsys: Don't build static plugins Pass --tag=disable-static to libtool everywhere where it's been forgotten https://bugzilla.gnome.org/show_bug.cgi?id=663768 2011-11-11 10:39:17 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 19:42:40 -0300 Matej Knopp * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: add support for progressive frames https://bugzilla.gnome.org/show_bug.cgi?id=663782 2011-11-09 20:09:01 +0100 Stefan Sauer * configure.ac: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstbaseaudiovisualizer.h: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstwavescope.c: audiovisualizer: port to 0.11 2011-11-10 18:34:03 +0100 Edward Hervey * ext/gme/gstgme.c: gme: Remove query_types 2011-11-10 18:34:48 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 18:25:53 +0100 Wim Taymans * ext/faad/gstfaad.c: update for adapter api change 2011-11-10 17:13:40 +0000 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix bandwidth property type mismatch 2011-11-10 12:14:19 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-10 12:11:21 +0100 Wim Taymans * gst/playondemand/gstplayondemand.c: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/winks/gstksvideosrc.c: * tools/element-templates/element: chain up in set_clock 2011-11-09 12:21:37 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: protect image location list with mutex Rename the image taglists' mutex into image capture mutex and use it also for the image capture list to prevent concurrent access from different threads (application and capture threads). 2011-11-09 11:45:27 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Handle null taglists for images Add NULL and check for them to the image capture taglist list, representing that a capture has no application tags set. 2011-11-09 11:17:15 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Don't store preview location if preview isn't requested Do not store preview location is post-previews is false, this would mess up preview naming in case application switches between enabling and disabling previews 2011-11-09 09:41:44 -0300 Lasse Laukkanen * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Avoid blocking in start-capture and send application tags later Tags are currently sent from start-capture, which is run in the application thread. For images we can delay the tags pushing to the buffer probe and push the tags with the location event and reduce start-capture time. 2011-11-09 12:24:37 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-09 12:19:04 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: gst/colorspace/colorspace.c 2011-11-09 12:00:05 +0100 Thijs Vermeir * gst-libs/gst/video/gstbasevideodecoder.h: fix documentation typo 2011-11-09 11:56:07 +0100 Thijs Vermeir * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: fix compiler warning for uninitialized values 2011-11-09 11:55:14 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/mpegtsdemux/tsdemux.c: remove query types 2011-11-04 17:54:04 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: dtmfsrc: Reject start/stop requests that come out of order 2011-10-29 18:24:26 +0200 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: Post messages when starting to send/receive DTMF This way, the UI can display the DTMF events as they as being sent. 2011-11-08 08:08:20 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Decrement processing counter when message handling finishes Some messages might be interesting to applications, so we can only decrement the processing counter and send the idle notification when those messages are posted on the pipline's bus 2011-11-08 07:33:59 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: update tests to set post-previews to true Makes most of camerabin2 tests pass again 2011-11-08 11:28:41 +0100 Wim Taymans * sys/dvb/dvbbasebin.c: * tests/examples/camerabin/gst-camera-perf.c: * tests/examples/camerabin2/gst-camerabin2-test.c: * tests/examples/scaletempo/demo-player.c: update for probe api changes 2011-11-08 07:09:41 -0300 Lasse Laukkanen * gst/camerabin2/gstcamerabin2.c: camerabin2: change post-previews property default value as false Generating and posting preview image always comes with a performance penalty so set default value as false. The preview-caps property that defines the preview image format is also NULL by default, so instead of generating preview image of unspecified format by default explicit action from application should be required for enabling preview image posting feature. Application also has to add custom code to be able to handle preview messages on its message handling function anyway. 2011-11-07 20:39:56 -0300 Reynaldo H. Verdejo Pinochet * Android.mk: Add Android buildsystem hooks for codecparsers 2011-11-01 20:37:17 +0000 Vincent Penquerc'h * gst/colorspace/colorspace.c: colorspace: fix r210 writing only half a scanline https://bugzilla.gnome.org/show_bug.cgi?id=663203 2011-11-07 16:41:42 +0000 Vincent Penquerc'h * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: adpcm: add more consts, espcially for static const data 2011-11-07 17:13:11 +0100 Wim Taymans * sys/dvb/dvbbasebin.c: dvdbasebin: fix for pad probes update 2011-11-03 18:55:24 +0000 Vincent Penquerc'h * gst/autoconvert/gstautoconvert.c: autoconvert: merge caps instead of using union It's a lot faster, and preserves caps ordering. https://bugzilla.gnome.org/show_bug.cgi?id=663346 2011-10-27 15:53:48 +0100 Vincent Penquerc'h * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: tiger: add a 'silent' property to skip rendering https://bugzilla.gnome.org/show_bug.cgi?id=662857 2011-08-29 13:00:02 +0100 Vincent Penquerc'h * gst/mpegdemux/mpegtspacketizer.c: mpegdemux: catch section lengths extending past the buffer length This is probably the cause for an occasional crash while streaming MPEG. Blind fix after staring at the code and following logic, so may or may not fix the issue, I cannot test. 2011-10-20 10:42:42 +0100 Vincent Penquerc'h * ext/resindvd/resindvdsrc.c: resindvdsrc: do not try to seek before the first chapter https://bugzilla.gnome.org/show_bug.cgi?id=589064 2011-10-05 18:30:23 +0100 Vincent Penquerc'h * ext/celt/gstceltenc.c: celtenc: fix latency query https://bugzilla.gnome.org/show_bug.cgi?id=616421 2011-10-05 18:25:58 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix latency query This makes live 'audiosrc ! opusenc ! opusdec ! audiosink' pipelines actually work without all audio being dumped. https://bugzilla.gnome.org/show_bug.cgi?id=660999 2011-10-05 15:47:06 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: use debug level for debug info, not error https://bugzilla.gnome.org/show_bug.cgi?id=660999 2011-09-29 14:22:53 +0100 Vincent Penquerc'h * ext/celt/gstceltenc.c: celtenc: fix calculation of filler data size https://bugzilla.gnome.org/show_bug.cgi?id=660469 2011-09-29 14:22:33 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: fix calculation of filler data size https://bugzilla.gnome.org/show_bug.cgi?id=660469 2011-10-03 18:28:14 +0100 Vincent Penquerc'h * gst/mpegdemux/gstpesfilter.c: mpegpsdemux: fix zero length packet handling https://bugzilla.gnome.org/show_bug.cgi?id=631416 2011-11-02 12:41:54 +0000 Vincent Penquerc'h * tests/check/libs/mpegvideoparser.c: tests: mark test input data const https://bugzilla.gnome.org/show_bug.cgi?id=663235 2011-11-02 12:41:30 +0000 Vincent Penquerc'h * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: mpegvideoparser: input data is const, mark it so 2011-11-02 12:38:30 +0000 Vincent Penquerc'h * tests/check/libs/mpegvideoparser.c: tests: allow building with older versions of glib (g_list_free_full) https://bugzilla.gnome.org/show_bug.cgi?id=663234 2011-11-07 10:02:00 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-04 18:06:51 -0300 Reynaldo H. Verdejo Pinochet * gst/bayer/Makefile.am: Fix missing sources on bayer's buildsystem androgenizer call 2011-11-04 18:52:35 +0100 Stefan Sauer * ext/ladspa/Makefile.am: * ext/ladspa/gstladspa.c: * ext/lv2/Makefile.am: * ext/lv2/gstlv2.c: * ext/soundtouch/Makefile.am: * ext/soundtouch/plugin.c: * gst-libs/gst/signalprocessor/Makefile.am: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst/audiovisualizers/Makefile.am: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/plugin.c: * gst/coloreffects/Makefile.am: * gst/coloreffects/gstchromahold.c: * gst/filter/Makefile.am: * gst/filter/gstfilter.c: * gst/filter/gstiir.c: * gst/frei0r/Makefile.am: * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: * gst/gaudieffects/Makefile.am: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstplugin.c: * gst/gaudieffects/gstsolarize.c: * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstgeometrictransform.c: * gst/stereo/Makefile.am: * gst/stereo/gststereo.c: * gst/subenc/Makefile.am: * gst/subenc/gstsrtenc.c: * gst/subenc/gstwebvttenc.c: * tests/icles/pitch-test.c: controller: port to new controller location and api 2011-11-04 16:34:11 +0100 Wim Taymans * gst/hls/gsthlsdemux.c: * gst/sdp/gstsdpdemux.c: more template fixes 2011-11-04 16:23:03 +0100 Edward Hervey * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camerabin2-test.c: * tests/examples/mxf/mxfdemux-structure.c: * tests/examples/scaletempo/demo-player.c: examples : Port to 0.11 2011-11-04 13:04:19 +0100 René Stadler * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: add more size checks and improve existing Don't subtract with unsigned values, that will bite us. Also fix format specifier in the log message. 2011-11-04 12:31:19 +0100 Wim Taymans * ext/resindvd/resindvdbin.c: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/sdp/gstsdpdemux.c: * tests/check/elements/asfmux.c: * tests/check/elements/mplex.c: more template fixes 2011-11-04 12:22:37 +0100 Wim Taymans * ext/mplex/gstmplex.cc: * ext/resindvd/rsnstreamselector.c: * gst/asfmux/gstasfmux.c: * gst/camerabin/gstinputselector.c: * gst/liveadder/liveadder.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpegdemux/mpegtsparse.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsmux/mpegtsmux.c: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/videomeasure/gstvideomeasure_ssim.c: * sys/dvb/dvbbasebin.c: make request pads take _%u 2011-11-04 11:24:53 +0100 Wim Taymans * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstsurfacebuffer.h: * gst-libs/gst/video/gstsurfaceconverter.c: * gst-libs/gst/video/gstsurfaceconverter.h: * gst-libs/gst/video/gstsurfacemeta.c: * gst-libs/gst/video/gstsurfacemeta.h: * gst-libs/gst/video/videocontext.c: * gst-libs/gst/video/videocontext.h: video: port somewhat to 0.11 In 0.11 this should be done differently 2011-11-04 11:01:42 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-04 10:17:38 +0100 Edward Hervey * ext/gme/gstgme.c: gme: Fix for removal of gst_element_found_tags_for_pad() 2011-11-03 17:17:10 -0400 Olivier Crête * gst-libs/gst/video/gstsurfacebuffer.h: * gst-libs/gst/video/gstsurfaceconverter.h: surfaceconverter: Remove duplicated forward declaration It seems that some compilers don't like duplicated typedefs. 2011-11-03 16:57:29 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideoencoder.c: videoenc: fix compiler warning 2011-11-03 16:57:17 +0100 Wim Taymans * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: video: fix for metadata API change 2011-11-03 14:01:41 +0100 Edward Hervey * configure.ac: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: vp8: Port to 0.11 2011-11-03 13:56:49 +0100 Edward Hervey * gst-libs/gst/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: libs/video: Finish porting to 0.11 2011-09-28 19:29:07 -0400 Nicolas Dufresne * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-basevideo-uninstalled.pc.in: * pkgconfig/gstreamer-basevideo.pc.in: video: Add libgstbasevideo PC file 2011-10-19 16:19:51 -0400 Nicolas Dufresne * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/video/videocontext.c: * gst-libs/gst/video/videocontext.h: video: Add GstVideoContext interface This interface will be used to implement video context sharing. Those context could be X11 Display, VaDisplay, etc. 2011-10-07 19:05:30 -0400 Nicolas Dufresne * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstsurfacebuffer.c: * gst-libs/gst/video/gstsurfacebuffer.h: * gst-libs/gst/video/gstsurfaceconverter.c: * gst-libs/gst/video/gstsurfaceconverter.h: video: Abstract surface API for HW accelerated codecs 2011-10-26 16:31:39 +0100 Vincent Penquerc'h * tests/check/libs/vc1parser.c: tests: make const data const https://bugzilla.gnome.org/show_bug.cgi?id=662776 2011-10-26 16:29:35 +0100 Vincent Penquerc'h * gst-libs/gst/codecparsers/gstvc1parser.c: vc1parser: do not overwrite buffer I do not know the bitstream format, but this seems likely to be what was intended. Also add a check on the number of items to read. https://bugzilla.gnome.org/show_bug.cgi?id=662776 2011-10-21 13:18:26 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstvc1parser.c: vc1parser: fix parsing of RANGEREDFRM 2011-11-02 12:10:03 +0100 Wim Taymans * gst/mpegtsdemux/mpegtsparse.c: tag: update for tag API removal 2011-11-02 10:31:24 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-11-02 09:14:41 +0100 Wim Taymans * ext/gme/gstgme.c: gme: update for taglist api changes 2011-10-29 09:09:25 +0200 Wim Taymans * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: * sys/dvb/gstdvbsrc.c: structure: fix for api update 2011-10-29 08:25:54 +0200 Wim Taymans * gst/bayer/gstrgb2bayer.c: caps: update for new API 2011-11-01 11:47:46 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: On capture error, skip previews When the camera source fails to do some capture, skip the next preview and decrement processing counter. 2011-11-01 10:38:33 -0300 Lasse Laukkanen * gst/camerabin2/gstcamerabin2.c: camerabin2: track also preview images with processing counter Makes camerabin2 only signal that it is idle after all previews have been generated, images are captured and saved, and videos have been finished properly. 2011-11-01 15:08:26 +0100 René Stadler * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: fix access to uninitialized memory When vui->timing_info_present is 0, vui->fixed_frame_rate_flag and others cannot be accessed since they have not been set. It was also possible that sps->fps_{num,den} end up initialized here. 2011-11-01 11:11:47 +0000 Brad Smith * configure.ac: configure: hack around broken mplex 2.0.0 headers in mplex check Due to the addition of an unconditional inclusion of config.h in mjpegtool 2.0.0's stream_params.h header the autoconf test for the mplex module failed. Hack around this in the same way we did for mpeg2enc. https://bugzilla.gnome.org/show_bug.cgi?id=661614 2011-11-01 11:09:52 +0000 Brad Smith * configure.ac: configure: fix typo in mpeg2enc check so CPPFLAGS get restored correctly https://bugzilla.gnome.org/show_bug.cgi?id=661614 2011-11-01 12:29:35 +0100 René Stadler * gst-libs/gst/codecparsers/gsth264parser.c: h264parser: fix MAX_SPS/PPS boundary checks 2011-11-01 12:12:56 +0100 René Stadler * tests/check/elements/h264parse.c: tests: h264parse: fix exit code 2011-11-01 00:45:25 +0000 Tim-Philipp Müller * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: * sys/dvb/dvbbasebin.c: * tests/examples/camerabin/gst-camera-perf.c: Update for pad API changes GstProbeType, GstProbeReturn and GstActivateMode -> GstPad* 2011-10-28 11:10:06 +0200 Robert Swain * gst/fieldanalysis/gstfieldanalysis.c: fieldanalysis: Don't reset the context on DISCONT On discont, the queue of frames was being cleared, but also the context reset. We only need to clear the queue. 2011-10-31 14:51:32 +0000 Tim-Philipp Müller Merge remote-tracking branch 'origin/master' into 0.11 2011-10-31 14:51:01 +0000 Tim-Philipp Müller * ext/kate/gstkateenc.c: * ext/kate/gstkateutil.c: * gst/bayer/gstbayer2rgb.c: * gst/mpegtsdemux/mpegtsbase.c: kate, bayer, tsdemux: update for caps and taglist API changes 2011-10-31 14:50:24 +0000 Tim-Philipp Müller * configure.ac: configure: add kate and mythtv to non-ported list katetiger isn't ported, so plugin doesn't build if libtiger is present. 2011-10-31 11:36:06 +0100 Alessandro Decina * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: handle failures in start() and stop() 2011-10-31 06:59:53 -0300 Tommi Myöhänen * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: basecamerasrc: optimize state changing speed Create preview pipeline already in initialization phase. This speeds up NULL_TO_READY state change. Also implement a separate function for setting the preview filter element. This also restricts the preview filter property to work only on NULL state. 2011-10-28 15:16:43 +0200 Wim Taymans * ext/kate/gstkatedec.c: * ext/kate/gstkateutil.c: * gst-libs/gst/Makefile.am: * gst/dataurisrc/gstdataurisrc.c: * gst/mpegtsdemux/tsdemux.c: make elements compile again 2011-10-27 16:23:26 +0200 Wim Taymans * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: fix compilation 2011-10-27 16:23:10 +0200 Wim Taymans * ext/assrender/gstassrender.c: assrender: fix compilation 2011-10-27 16:22:45 +0200 Wim Taymans * configure.ac: add spandsp to non-ported 2011-10-27 16:13:56 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-21 15:04:05 +0200 Stefan Sauer * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/apexsink/gstapexsink.c: * ext/directfb/dfbvideosink.c: * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/camerabin/gstcamerabincolorbalance.c: * gst/camerabin/gstcamerabincolorbalance.h: interfaces: clean up the use of iface and class/klass 2011-10-19 10:24:52 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstvc1parser.c: vc1parser: Correct the parsing of FRMRTQ_POSTPROC and BITRTQ_POSTPROC 2011-10-21 11:40:54 +0300 Sreerenj Balachandran * gst-libs/gst/codecparsers/gstvc1parser.c: vc1parser: Correct the parsing of sequece layer. 2011-10-20 09:39:19 -0300 Reynaldo H. Verdejo Pinochet * Android.mk: Disable ext/faad for the android ndk build It currently makes the build fail. Idea is to enable it back again once its building problems get sorted out. 2011-10-18 14:41:48 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: * gst/nuvdemux/gstnuvdemux.c: assrender, nuvdemux: unref buffers with gst_buffer_unref() 2011-10-18 14:32:05 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-18 14:28:04 +0200 Wim Taymans * ext/celt/gstceltdec.c: celt: start of 0.11 port 2011-10-14 11:07:00 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: VC1: Compute par and fps in advanced profile 2011-10-10 14:19:48 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: VC1: Handle interlaced fields 2011-10-10 10:14:12 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: VC1: Handle interlaced frames properly 2011-10-07 13:11:55 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: VC1: Use enums when possible Add GstVC1FrameCodingMode and use it for the fcm field Use GstVC1PictureType as variable type for ptype Use GstVC1Level as variable type for level 2011-10-07 17:42:17 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix bitplanes decoding (check for errors). 2011-10-07 15:21:34 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix bitplanes decoding (INVERT mode). 2011-10-07 13:59:29 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix MVMODE and MVMODE2 parsing. 2011-10-05 17:39:59 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: handle skipped pictures gracefully. 2011-10-04 17:39:42 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: VC1: Implement bitplanes diff operator 2011-10-04 17:39:00 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: VC1: Some cosmetics and debug logging enhancements 2011-10-04 15:16:04 +0200 Gwenole Beauchesne * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: * tests/check/libs/vc1parser.c: codecparsers: vc1: Implement bitplanes handling properly Add a new GstVC1BitPlanes API. 2011-10-04 14:04:42 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: vc1: fix BFRACTION parser (values range + overflow). 2011-10-04 11:57:37 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: fix VLC decoding. 2011-10-05 16:40:47 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: VC1: Implement FrameLayer parsing 2011-10-05 12:15:00 -0300 Thibault Saunier * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: * tests/check/libs/vc1parser.c: codecparsers: VC1: Implement Sequence Layer Data Structures Instead of having a single VC1SequenceHeader structure, use the 3 structs from the "Table 265: Sequence Layer Data Structure" of the specification for the library to be more flexible. Implement the functions to parse them 2011-10-05 08:26:31 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: VC1: Compute framerate and bitrate in simple/main profiles 2011-10-03 14:25:00 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: * tests/check/libs/vc1parser.c: codecparsers: VC1: compute MB height and width Add them to GstVC1SequenceHdr 2011-10-03 15:36:08 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: debug cosmetics. 2011-10-03 11:42:32 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: vc1: record picture layer header size in bits. 2011-10-03 11:14:25 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: vc1: compute altpquant. 2011-10-03 14:22:17 -0300 Thibault Saunier * docs/libs/gst-plugins-bad-libs-sections.txt: * tests/check/libs/vc1parser.c: codecparsers: VC1: Fix after GstVC1ParserResult renaming 2011-09-30 12:41:13 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: codecparsers: vc1: use GstVC1ParserResult type name similarly to other parsers. 2011-09-30 11:38:15 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstvc1parser.c: codecparsers: vc1: handle End-of-Sequence correctly. 2011-09-14 14:21:47 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: mpeg2: fix quant_matrix_extension() parser for chroma intra QM. 2011-10-13 16:52:43 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: correct debug message and remove some dead code See #661113. 2011-10-06 16:55:43 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: correct parsing of "numberOfPictureParameterSets" See #661113. 2011-10-17 10:19:20 +0200 Edward Hervey * gst/bayer/gstbayer2rgb.c: bayer2rgb: Fix pad template caps 2011-10-16 17:41:45 +0200 Wim Taymans * configure.ac: * gst/y4m/gsty4mdec.c: * gst/y4m/gsty4mdec.h: y4m: port to 0.11 2011-10-16 16:45:24 +0200 Wim Taymans * configure.ac: * ext/faac/gstfaac.c: faac: port to 0.11 2011-10-16 16:28:58 +0200 Wim Taymans * configure.ac: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstrgb2bayer.c: * gst/bayer/gstrgb2bayer.h: bayer: port to 0.11 2011-10-16 15:28:31 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-13 16:57:31 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Use gst_buffer_join instead of bufferlists This is *really* inefficient. We should track list of GstMemory instead. 2011-10-13 16:57:17 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Plug more leaks 2011-10-13 16:55:54 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Refactor scan loop Avoids ending up leaking packets when we got one and res was different from GST_FLOW_OK. It also looks more comprehensible 2011-10-13 16:55:40 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Don't leak upstream events 2011-10-13 16:55:05 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Refactor code to cope with g_hash_table_foreach_remove() 2011-10-12 18:05:07 +0200 Edward Hervey * configure.ac: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: tsdemux/tsparse: Port to 0.11 This is a naive port that somewhat works but is inefficient. I need to rethink how to make the best out of GstMemory/GstBuffer 2011-10-12 12:09:18 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Check before acessing preview location list Only access the preview location if it exists, to avoid acessing a NULL variable. If the preview location list doesn't exist, it is likely because the source has posted a preview message after camerabin2 has been put to READY. 2011-08-07 17:01:48 +0200 Sjoerd Simons * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: shm: Add buffer-time property Add a buffer-time property to limit the size of the amount of data queued in the shmsink buffer in nanoseconds. Fixes: #656107 2011-08-07 16:36:32 +0200 Sjoerd Simons * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shm: Add ability to add uint64 tags on buffers 2011-10-11 23:30:49 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: Set preview pipeline to ready when going to ready The preview pipeline should go to ready when the camerasrc goes to ready, as in ready elements shouldn't be processing data. 2011-10-11 23:13:00 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Add a mutex to avoid concurrent access of preview filename lists The preview filename list is acessed whenever a new capture is started, when camera-source posts a new preview message or on state changes. All of those can occur simultaneously, so add a mutex to prevent concurrent access. 2011-10-07 10:48:07 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Reset audiosrc timestamping Reset audiosrc's timestamping data by setting it to NULL to reset the ringbuffer and then re-seting the clock that camerabin might not redistribute 2011-10-11 16:27:07 -0300 Thiago Santos * gst/camerabin/camerabinvideo.c: camerabin: Prevent audio source from providing clock camerabin's audio source might be put to NULL during its use, so the clock would be lost. Better not allow it to provide a clock at all. 2011-10-11 11:05:52 +0200 Edward Hervey * configure.ac: configure.ac: openal is not ported yet 2011-10-10 11:41:33 +0200 Wim Taymans * configure.ac: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: dvb: port to 0.11 2011-10-10 10:15:05 +0200 Wim Taymans * configure.ac: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: port to 0.11 2011-10-08 15:16:25 +0200 Wim Taymans * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/dvdspu/gstspu-common.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-pgs.h: * gst/dvdspu/gstspu-vobsub-render.c: * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: dvdspu: port to 0.11 2011-10-08 14:22:58 +0200 Wim Taymans * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatespu.c: * ext/kate/gstkatetag.c: * ext/kate/gstkateutil.c: * ext/kate/gstkateutil.h: kate: port to 0.11 2011-10-08 13:14:57 +0200 Wim Taymans * configure.ac: configure: disable directfb 2011-10-08 12:07:58 +0200 Wim Taymans * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: zbar: port to 0.11 2011-10-08 11:57:58 +0200 Wim Taymans * ext/gme/gstgme.c: gme: port to 0.11 2011-10-08 11:46:23 +0200 Wim Taymans * ext/flite/gstflitetestsrc.c: flite: port to 0.11 2011-10-08 11:40:25 +0200 Wim Taymans * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsrc.c: rtmp: port to 0.11 2011-10-08 11:17:11 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-06 23:22:51 +0530 Arun Raghavan * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/scaletempo/demo-gui.c: examples: Fixes for compiling with GTK+ 3.0 camerabing example had a missing ')' and the fix to build against GTK+3 that was introduced in commit 516c977c76ba4cd86a7147aab7416a33d76f870f is also applied to the camerabin2 example. The scaletempo demo was using API which has been removed, so that's wrapped in a version check. 2011-10-06 17:56:35 +0200 Wim Taymans * gst/dvdspu/gstdvdspu.c: dvdspu: beginning of port to 0.11 2011-10-06 12:15:45 -0300 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Make proper use of the h264parser lib in parse_chain Minor debugging logs fixes 2011-10-06 14:05:42 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-06 14:03:29 +0200 Wim Taymans * configure.ac: * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: port to 0.11 2011-10-06 12:25:26 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: properly interpret baseparse draining state ... which means the input data has reached the end, but need not exclude many separate frames may still need parsing. Fixes merging NALs into AU. 2011-10-05 23:14:23 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: correct the size argument of gst_h264_parser_identify_nalu_avc() 2011-10-05 12:09:04 +0300 Sreerenj Balachandran * gst/videoparsers/gsth264parse.c: h264parse: minimum size of parsable avcC data should be 8 2011-10-06 10:58:32 +0200 Wim Taymans * configure.ac: * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: port to 0.11 2011-10-05 20:06:20 +0200 Wim Taymans * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: jpegformat: port to 0.11 2011-10-05 12:53:07 +0200 Wim Taymans * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: more porting 2011-10-04 18:54:13 +0200 Wim Taymans * configure.ac: * ext/libmms/gstmms.c: mmssrc: port to 0.11 2011-10-04 18:38:50 +0200 Wim Taymans * configure.ac: * gst/dataurisrc/gstdataurisrc.c: dataurisrc: port to 0.11 2011-10-04 18:35:33 +0200 Wim Taymans * configure.ac: configure: add more unported plugins 2011-10-04 14:30:53 +0200 Wim Taymans * tests/examples/opencv/gst_element_print_properties.c: tests: port 2011-10-04 14:27:32 +0200 Wim Taymans * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: video: start porting some base classes 2011-10-04 14:27:08 +0200 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/parser.c: * tests/examples/camerabin/gst-camera-perf.c: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camerabin-test.c: tests: fix some tests 2011-10-04 14:26:21 +0200 Wim Taymans * gst-libs/gst/interfaces/photography.h: photography: remore implement-interface 2011-10-04 14:25:57 +0200 Wim Taymans * configure.ac: configure: add more unported plugins 2011-10-04 13:33:53 +0200 Wim Taymans * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: port to 0.11 2011-10-04 13:33:09 +0200 Wim Taymans * ext/faad/gstfaad.c: faad: use right caps 2011-10-04 13:29:21 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-10-04 12:31:05 +0200 Sebastian Dröge * gst/videoparsers/plugin.c: videoparsers: Only fail to initialize the plugin if all parsers can't be registered 2011-10-03 15:26:14 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabin2: Initialize camerabin2 preview pipeline data with 0 Use g_new0 to initialize all fields with 0 to only cleanup what has been initialized. This makes cleanup work correctly when some initialization fails and pointers are left in some inconsistent state. 2011-10-03 12:06:27 +0200 Sebastian Dröge * gst/rtpvp8/gstrtpvp8pay.c: rtpvp8pay: Fix typo 2011-09-23 22:58:30 +0000 Youness Alaoui * gst/rtpvp8/gstrtpvp8depay.c: * gst/rtpvp8/gstrtpvp8pay.c: * gst/rtpvp8/gstrtpvp8pay.h: rtpvp8: Update the pay/depay to the ietf-draft-01 spec 2011-10-03 11:24:04 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-28 14:57:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: fix decoding A simple ... opusenc ! opusdec ... pipeline now works. https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 14:56:18 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: moan if we get an unexpected amount of data https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 14:22:02 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: properly setup caps and init state from caps https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 13:25:21 +0100 Vincent Penquerc'h * ext/opus/gstopusenc.c: opusenc: use the same frame size setup as the opus test code https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 13:24:52 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: opusdec: opus supports a select set of sampling rates https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-28 13:24:21 +0100 Vincent Penquerc'h * ext/opus/gstopusdec.c: * ext/opus/gstopusenc.c: opus: make it build against current, and remove cruft https://bugzilla.gnome.org/show_bug.cgi?id=660364 2011-09-30 18:54:04 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix scanning stopping too early https://bugzilla.gnome.org/show_bug.cgi?id=648245 2011-09-29 20:55:22 +0100 Vincent Penquerc'h * ext/kate/gstkatetiger.c: kate: avoid rendering when we know there is nothing to render https://bugzilla.gnome.org/show_bug.cgi?id=660528 2011-10-01 14:30:07 +0100 Vincent Penquerc'h * ext/kate/gstkatetiger.c: kate: fix race condition on PAUSED->READY state change https://bugzilla.gnome.org/show_bug.cgi?id=660630 2011-09-21 14:53:01 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: take into account SCR offset when seeking Since the seeking byte offset is chosen by linear interpolation from SCR values, we need to take that first SCR into account to end up near the correct offset. Otherwise, as the code does a linear search after that first seek, it will take a LOOOOOONG time to get there for streams which don't start at zero. https://bugzilla.gnome.org/show_bug.cgi?id=659485 2011-09-21 17:29:52 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegdemux.c: mpegdemux: answer position query with a stream time position https://bugzilla.gnome.org/show_bug.cgi?id=659485 2011-09-20 15:21:53 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegdemux.h: mpegpsdemux: remove unused field https://bugzilla.gnome.org/show_bug.cgi?id=659485 2011-09-29 18:20:44 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Refactor tests a little Refactor camerabin2 tests a little 2011-09-29 13:03:08 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: adding tests to check for preview message filenames Preview messages now have filenames, add tests to check that they are correct 2011-09-29 18:03:25 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: add location to preview image messages Makes camerabin2 intercept preview-image messages and add the filename corresponding to the message structure in the 'location' field. Makes easier for applications to track preview images 2011-09-27 13:04:21 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: camerabin2: removing capsfilter from preview pipeline appsink already has a caps property, so we don't need the capsfilter here 2011-09-29 16:22:00 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: camerabin2: Fix potential loss of EOS event Setting the audio source to NULL just after pushing the EOS event on it could potentially cause loss of said EOS event. Instead, we can set the audio source to NULL when ready-for-capture is signalled and the boolean value is true as this indicates we are not currently capturing video. 2011-09-28 13:01:29 +0200 Wim Taymans * configure.ac: configure: add ported faad and sdp elements 2011-09-28 12:54:38 +0200 Wim Taymans * gst-libs/gst/interfaces/photography.c: photography: remove implements-interface prerequisite 2011-09-28 12:54:07 +0200 Wim Taymans * common: use the 0.11 branch of common 2011-09-27 13:22:31 +0200 Wim Taymans * ext/faad/gstfaad.c: faad: port to 0.11 2011-09-26 22:31:17 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-26 22:30:13 +0200 Wim Taymans * gst/sdp/gstsdpdemux.c: sdpdemux: port to 0.11 2011-09-26 17:23:41 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: camerabin2: Stop the audio source between captures Move the audio source setting of state to NULL to _stop_capture () to avoid the audio source running between captures. 2011-09-26 16:26:31 +0200 Sebastian Dröge * ext/faac/gstfaac.c: faac: Also set maximum number of samples that the subclass wants 2011-09-26 16:05:40 +0200 Sebastian Dröge * ext/faac/gstfaac.c: faac: Simple fix for GstAudioEncoder API change 2011-08-23 18:25:20 -0300 Thibault Saunier * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstvc1parser.c: * gst-libs/gst/codecparsers/gstvc1parser.h: * tests/check/Makefile.am: * tests/check/libs/vc1parser.c: codecparser: VC1: Implement a VC1 parsing library 2011-09-16 19:03:31 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst/videoparsers/Makefile.am: * tests/check/Makefile.am: codecparsers: Declare the new APIs as unstable for the time being 2011-09-26 11:44:02 +0100 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: keep CRC table in .rodata https://bugzilla.gnome.org/show_bug.cgi?id=660118 2011-09-20 16:29:55 +0200 Mark Nauwelaerts * gst/pcapparse/Makefile.am: * gst/pcapparse/gstirtspparse.c: * gst/pcapparse/gstirtspparse.h: * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/plugin.c: irtspparse: add Interleaved RTSP parser element 2011-09-23 10:10:37 +0100 Tim-Philipp Müller * ext/faad/gstfaad.c: faad: fix compiler warning gstfaad.c: In function 'gst_faad_parse': gstfaad.c:615:11: error: 'len' may be used uninitialized in this function 2011-09-23 09:57:01 +0100 Tim-Philipp Müller * ext/faad/gstfaad.c: faad: parse wants a GstFlowReturn return value, not a gboolean 2011-09-22 20:11:21 +0100 Tim-Philipp Müller * gst/mpegpsmux/psmux.c: psmux: fix writing of system header, which makes VLC not skip the adjacent PSM and play embedded H.264 streams header_length contains the length in bytes after the header_length field, excluding the 6 byte start code and header_length field. H.264 streams and some other formats need to be announced in the PSM. VLC wouldn't play files created with mpegpsmux containing H.264 because we claim the system header is larger than it actually is, which makes VLC skip the program stream map which follows the system header, which in turn makes it not recognise our H.264 video stream. 2011-09-22 20:09:32 +0100 Tim-Philipp Müller * docs/libs/.gitignore: docs: add ignore rules for libs docs directory 2011-09-22 18:23:32 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: fixup misunderstanding in sample counting ... between codec and audioencoder regarding whether or not channel count is already considered. Fixes #659836. 2011-09-22 16:01:56 +0200 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: use some more boilerplate 2011-09-22 09:49:21 +0200 Mark Nauwelaerts * ext/faad/Makefile.am: * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: port to audiodecoder 2011-09-21 16:11:27 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: use some more boilerplate 2011-09-21 16:01:28 +0200 Mark Nauwelaerts * ext/faac/Makefile.am: * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: port to audioencoder 2011-09-20 16:54:32 +0100 Vincent Penquerc'h * ext/kate/gstkatetiger.c: kate: forward return code from setting src pad caps https://bugzilla.gnome.org/show_bug.cgi?id=659606 2011-09-20 13:00:49 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: basecamerasrc: Fail state change if preview pipeline fails creation If the preview pipeline fails creation, for any reason, we should fail basecamerasrc state change. Also adds a missing g_return_if_fail check to preview pipeline functions 2011-09-19 16:32:58 +0200 Edward Hervey * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: Add checks to input, and fix size checking 2011-09-19 14:54:11 +0200 Mark Nauwelaerts * gst/videoparsers/gsth263parse.c: h263parse: bring debug statements up to desired specs 2011-09-19 14:07:52 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: bring debug statements up to desired specs 2011-09-19 13:41:44 +0200 Edward Hervey * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsinglibs: Doc and indentation fixes 2011-09-10 11:31:20 +0100 Vincent Penquerc'h * gst/rtpvp8/Makefile.am: * gst/rtpvp8/dboolhuff.LICENSE: * gst/rtpvp8/dboolhuff.c: * gst/rtpvp8/dboolhuff.h: * gst/rtpvp8/gstrtpvp8pay.c: rtpvp8: fix bitstream parsing using the wrong kind of bitreader VP8 uses a probabilistic bool coder, not a straight bit coder. This fixes parsing when error-resilient is set. This commit includes a copy of libvpx's bool coder, BSD licensed. https://bugzilla.gnome.org/show_bug.cgi?id=652694 2011-09-14 20:22:42 +0100 Vincent Penquerc'h * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: celt: a bit more error checking on header parsing https://bugzilla.gnome.org/show_bug.cgi?id=659087 2011-09-14 19:56:40 +0100 Vincent Penquerc'h * ext/celt/gstceltenc.c: celtenc: cleanup header creation Avoid an extra copy via a temporary fixed size stack buffer. Use libcelt's header size to allocate a buffer of the correct size in the first place (libcelt has an off by 4 there, so account for this). While there, make size unsigned, and granpos signed. https://bugzilla.gnome.org/show_bug.cgi?id=659087 2011-09-14 19:09:30 +0100 Vincent Penquerc'h * ext/celt/gstceltenc.c: celtenc: do not use invalid buffer timestamps https://bugzilla.gnome.org/show_bug.cgi?id=659087 2011-09-14 17:26:05 +0100 Vincent Penquerc'h * ext/celt/gstceltdec.c: celtdec: fix error checking with libcelt 0.11 The return value of celt_decode has changed, newer versions now return positive values on success. https://bugzilla.gnome.org/show_bug.cgi?id=659087 2011-09-14 17:07:50 +0100 Vincent Penquerc'h * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: celtenc: allow actually overriding frame size https://bugzilla.gnome.org/show_bug.cgi?id=659087 2011-09-13 16:24:32 +0100 Vincent Penquerc'h * ext/kate/gstkatetiger.c: kate: flush on seek, and ensure we cancel any waiting buffer This is what pango textoverlay does, and I've had that condition variable get stuck once. https://bugzilla.gnome.org/show_bug.cgi?id=658940 2011-09-12 11:17:20 +0100 Vincent Penquerc'h * gst-libs/gst/codecparsers/gsth264parser.c: h264parse: do not try to read from a non existent VUI https://bugzilla.gnome.org/show_bug.cgi?id=658800 2011-09-16 00:32:02 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Adding 2 more log messages 2011-09-14 15:20:09 +0100 Vincent Penquerc'h * gst/camerabin2/gstcamerabin2.c: camerabin2: replace deprecated g_atomic_int_exchange_and_add It was replaced by g_atomic_int_add, which now returns the old value. https://bugzilla.gnome.org/show_bug.cgi?id=659061 2011-09-15 17:35:44 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Reset last state change result on state-locked elements An element stores the result for the last state change it did and GstBin's state change handler will use this last result for state locked elements to decide if its state change was successfull or not. In camerabin2, the filesinks have their state locked and when they fail switching states, this last failure will be used if the application tries to change camerabin2's state, causing any state change to fail. This patch makes camerabin2 reset this last change failure, avoiding that camerabin2 fails on its next state changes. 2011-09-15 18:17:24 -0400 Olivier Crête * ext/spandsp/gstspanplc.c: spanplc: Fix typos 2011-09-13 20:40:35 -0300 Thibault Saunier * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: Handle properly frame detection Handle the case where we have buffers containing no startcode in the middle of a frame properly. 2011-09-13 20:38:27 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstmpegvideoparser.c: codecparsers: mpegvideo: Debugging symbols enhancements 2011-09-12 13:54:37 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Add the ChromaType enum 2011-09-12 13:41:41 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpegvideo: Change broken_gop to broken_link This way we respect the standard naming 2011-09-14 16:14:24 +0200 Mark Nauwelaerts * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: mpegvideoparse: send a video-codec tag https://bugzilla.gnome.org/show_bug.cgi?id=569305 2011-09-12 16:50:10 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Check zoom notify callback from camera-source Camerabin2 has a zoom property that is simply proxied to its internal camera-source element. This patch makes camerabin2 listen to 'notify' signals from it so it can update its zoom property value when camera-source changes its zoom as a side-effect of another operation or because the user set the zoom directly to it, instead of doing it from camerabin2. 2011-08-29 08:00:22 +0200 Alessandro Decina * ext/rtmp/gstrtmpsink.c: rtmpsink: don't block the main thread with RTMP_Connect Move the RTMP_Connect call from the main thread (::start) to the streaming thread (::render). 2011-09-12 10:33:06 +0200 Alessandro Decina * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: fix compiler warnings 2011-09-12 10:23:19 +0200 Alessandro Decina * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: fix compiler warnings 2011-09-09 14:22:39 -0300 Thibault Saunier * gst/videoparsers/gsth264parse.c: h264parse: Make use of the h264_nal_parser_free function 2011-09-09 14:15:21 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gsth264parser.c: * tests/check/libs/h264parser.c: codecparsers: h264: Implement the nal_parser_free function 2011-09-06 21:29:28 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gsth264parser.c: * tests/check/libs/h264parser.c: codecparsers: h264: Use g_slice instead of g_malloc in nal_parser_new 2011-09-06 21:28:45 -0300 Thibault Saunier * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: Update the documentation Fix a few error. Document missing parts. Add links to the specifications 2011-09-09 12:27:57 +0200 Sebastian Dröge * gst/hls/m3u8.c: hlsdemux: Fix merge mistake from last commit 2011-09-08 23:56:33 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: Report the correct timestamp for live streams Buffers would always start with timestamp 0 and we'd start streaming from the first buffer, but live streams always start streaming from the last fragment - 3 fragments in the playlist, which makes its timestamp, as returned by get_next_fragment, be whatever position they had in the playlist. This makes sure the position correctly reports the position of the buffer in the playlist, and added a shifting variable to allow seeking in the middle of fragments. 2011-09-08 22:13:19 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: hlsdemux/tsdemux: Add HP copyright on work done on HLS 2011-09-08 20:29:42 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: set playlist to NULL after unreffing it to avoid a double-unref in the dispose 2011-09-08 18:25:00 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Do not lock the mutex of the fetcher during EOS The fetch_location might call stop_fetcher which could generate an EOS and cause a deadlock 2011-09-06 22:11:06 -0400 Youness Alaoui * configure.ac: * ext/Makefile.am: * ext/spandsp/Makefile.am: * ext/spandsp/gstspandsp.c: * ext/spandsp/gstspanplc.c: * ext/spandsp/gstspanplc.h: spandsp: Adding spandsp plugin with spanplc element for packet loss concealment 2011-09-07 20:09:12 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Do not join the task from the task's thread itself. join it only in the state change 2011-09-07 15:48:33 +0200 Stefan Sauer * docs/libs/Makefile.am: * docs/plugins/Makefile.am: docs: cleanup makefiles Remove commented out parts that we don't need. Remove "the wingo addition" - no so useful after all. Narrow down file-globs for plugin docs. 2011-09-07 15:42:37 +0200 Stefan Sauer * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: fix camerabin2 names in sections.txt 2011-09-07 15:37:53 +0200 Stefan Sauer * ext/kate/gstkateparse.h: kateparse: fix crap in object macros 2011-09-07 12:32:48 +0100 Vincent Penquerc'h * gst/videoparsers/gstmpegvideoparse.c: mpegvideoparse: make this build with older glib g_list_free_full is a new convenience function. Replace it with g_list_foreach and g_list_free. https://bugzilla.gnome.org/show_bug.cgi?id=658450 2011-09-07 13:46:49 +0200 Sebastian Dröge * gst/mpegvideoparse/mpegvideoparse.c: * gst/videoparsers/plugin.c: videoparsers: Make the h263 and (new) mpeg video parser autopluggable 2011-09-05 20:02:57 +0300 George Kiagiadakis * gst/videoparsers/gsth264parse.c: h264parse: Fix IDR position marking when the IDR is split into several NALs 2011-09-07 11:27:56 +0200 Sebastian Dröge * gst/videoparsers/gsth263parse.c: h263parse: Add all always present fields to the src template caps 2011-09-07 11:24:14 +0200 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: diracparse: Add all fields to the src template caps 2011-09-07 11:22:07 +0200 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gstmpegvideoparse.c: videoparsers: Allow parsed streams to be passed through the parsers 2011-09-07 11:17:54 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Put stream-format and alignment into the src template caps Also remove the parsed field from the sink template caps. 2011-09-07 11:14:36 +0200 Sebastian Dröge * gst/videoparsers/plugin.c: h264parse: Change rank to PRIMARY+1 to have h264parse autoplugged 2011-09-07 11:06:46 +0200 Sebastian Dröge * gst/videoparsers/dirac_parse.c: diracparse: Constify some arrays 2011-09-06 10:49:04 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabin2: preview: No need for appsink to store the last buffer There is no need for preview's appsink to keep a reference to the last buffer, so disable the property to make it unref the buffers sooner. 2011-09-06 22:48:30 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update for latest new plugins and moved plugins 2011-09-06 21:25:00 +0200 Stefan Sauer * common: Automatic update of common submodule From a39eb83 to 11f0cd5 2011-09-06 16:13:28 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-09-06 15:40:46 +0200 Stefan Sauer * common: Automatic update of common submodule From 605cd9a to a39eb83 2011-09-06 13:20:43 +0200 Sebastian Dröge * gst/videoparsers/gsth264parse.c: h264parse: Add Converter to classification This parser can convert between different alignments and stream-formats. 2011-09-05 14:39:20 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabin2: preview: Appsink doesn't need to sync Set sync to false on preview's pipeline appsink 2011-09-05 09:55:53 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabin2: preview: Remove one of the two colorspace converters The preview pipeline doesn't need 2 colorspace converters, remove one to speed up caps negotiation and reduce the delay on getting the first preview buffer out of the preview pipeline. It shouldn't cause problems as videoscale and ffmpegcolorspace seems to handle the same caps, so no conversion should be needed for videoscale. Additionally, camerabin1 has been working with a similar pipeline with a single ffmpegcolorspace and no bugs have been open about it so far. 2011-09-01 20:01:09 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: camerabin2: preview: Disable appsrc signals emission Camerabin2 doesn't check appsrc's signals, so disable them 2011-08-26 10:50:38 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstbasevideoencoder.c: basevideoenc: do not try to calculate latency from an unknown framerate It'll divide by zero, and latency is unknown for an unknown framerate. Fixes an assert in the schroenc test. https://bugzilla.gnome.org/show_bug.cgi?id=657419 2011-09-03 00:36:34 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: If a fetch fails, decrement the sequence number 2011-09-02 23:49:38 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: make hlsdemux lock/unlock the m3u8 client when it accesses it 2011-09-02 23:48:22 +0000 Youness Alaoui * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: Add a get_target_duration and get_current_uri api to m3u8_client 2011-09-02 23:48:03 +0000 Youness Alaoui * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: Make the m3u8 client thread-safe 2011-09-02 19:44:31 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Reset in PAUSED->READY after chaining up to the parent class Otherwise there are possible race conditions with the streaming thread. 2011-09-02 16:08:59 +0200 Edward Hervey * docs/libs/gst-plugins-bad-libs-sections.txt: * gst-libs/gst/codecparsers/gsth264parser.h: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: docs: minor fixes 2011-08-31 10:12:44 +0200 Edward Hervey * gst-libs/gst/play/.gitignore: * gst-libs/gst/play/play.h: * gst-libs/gst/play/play.vcproj: gst-libs: Remove play directory. Was unported since 0.8 2011-08-31 10:10:21 +0200 Edward Hervey * docs/libs/Makefile.am: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: docs: Add more sections to the gst-libs API docs 2011-08-29 13:52:17 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix PPS parser Fix transform_8x8_mode_flag and second_chroma_qp_index_offset 2011-08-29 13:52:16 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix NAL reader initialization. 2011-08-26 15:54:51 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: handle end-of-seq and end-of-stream NAL gracefully. 2011-08-26 16:05:58 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: codecparsers: h264: fix ref_pic_list_reordering(). 2011-08-16 16:19:02 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: fix pred_weight_table() parsing. Use 16-bit signed integer values for weight values because valid ranges are -128 to +128 inclusive. 2011-08-16 15:21:18 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: record slice_header() size in bits. 2011-08-16 15:14:03 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: fix slice_header() parsing. We were not parsing the slice headers until the actual end, we are now parsing until the end. 2011-08-12 13:19:29 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gsth264parser.h: codecparsers: h264: fix filler-data NAL unit type name. 2011-08-12 10:17:47 +0200 Gwenole Beauchesne * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-codecparsers-uninstalled.pc.in: * pkgconfig/gstreamer-codecparsers.pc.in: codecparsers: add pkgconfig file. Adds a new pkgconfig file for codecparsers. They don't have any specific dependency on gst-plugins-bad and they could quite be independent bitstream parsers. 2011-08-05 11:21:05 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpeg: add user-data packet start code definition. 2011-08-03 17:31:55 +0200 Gwenole Beauchesne * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: codecparsers: mpeg: fix Picture_Coding_Extension parser. 2011-08-02 12:37:02 +0200 Thibault Saunier * gst/videoparsers/Makefile.am: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: * gst/videoparsers/h264parse.c: * gst/videoparsers/h264parse.h: h264parse: Port to the new h.264 parsing library 2011-07-29 10:56:15 +0200 Thibault Saunier * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gsth264parser.c: * gst-libs/gst/codecparsers/gsth264parser.h: * tests/check/Makefile.am: * tests/check/libs/h264parser.c: codecparsers: h264: Add an h.264 bitstream parsing library 2011-06-23 12:54:43 -0400 Thibault Saunier * gst/videoparsers/Makefile.am: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: * gst/videoparsers/mpegvideoparse.c: * gst/videoparsers/mpegvideoparse.h: * tests/check/elements/mpegvideoparse.c: mpegvideoparse: Port to the new mpeg parsing library 2011-07-19 13:52:01 +0200 Thibault Saunier * configure.ac: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: * gst-libs/gst/Makefile.am: * gst-libs/gst/codecparsers/Makefile.am: * gst-libs/gst/codecparsers/gstmpegvideoparser.c: * gst-libs/gst/codecparsers/gstmpegvideoparser.h: * gst-plugins-bad.spec.in: * pkgconfig/gstreamer-plugins-bad.pc.in: * tests/check/Makefile.am: * tests/check/libs/mpegvideoparser.c: codecparsers: mpeg: Add an mpeg video bitstream parsing library Create a new codecparsers library 2011-08-30 14:50:41 -0300 Thibault Saunier * configure.ac: * docs/Makefile.am: * docs/libs/Makefile.am: * docs/libs/compiling.sgml: * docs/libs/gst-plugins-bad-libs-docs.sgml: * docs/libs/gst-plugins-bad-libs-overrides.txt: * docs/libs/gst-plugins-bad-libs-sections.txt: * docs/libs/gst-plugins-bad-libs.types: docs: Build documentations for libraries 2011-09-02 15:00:58 +0200 Sebastian Dröge * gst/hls/m3u8.c: hlsdemux: Remove obsolete FIXME comment 2011-09-02 14:55:45 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Reset the internal state going to/from READY instead of NULL This theoretically allows reuse of the element when setting it to READY instead of NULL. 2011-09-02 14:54:56 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Set playlist parsing helper object to NULL after freeing 2011-09-01 23:18:51 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Allow up to 3 consecutive failed downloads before erroring In some networks, especiall in 3G, a fragment download or playlist update may fail. We allow for up to 3 consecutive failures, while using the rfc's specs for retry delays before considering that there was an error on the stream. 2011-09-01 22:46:19 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: remove unused argument 2011-08-21 20:15:25 -0700 David Schleef * ext/vp8/gstvp8enc.c: vp8enc: fix drop-frame property Fixes #656929. 2011-09-01 15:57:50 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Add a flag to disable image conversion elements If we know that our camera source element produces buffers at the same resolution and appropriate colourspace for the output, we don't need any of the generic conversion elements in encodebin. This reduces caps negotiation overheads among other things. 2011-08-31 23:06:53 +0200 Josep Torra * ext/libmms/gstmms.c: mms: fix warnings related to the format on the debug lines. 2011-08-31 13:29:17 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Micro optimize encodebin pads linking Reduce one check in encodebin pads linking on camerabin2 by using the link_pads_full version 2011-08-31 13:28:25 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: basecamerabinsrc: Optimize preview pipeline startup Use gst_element_link_pads_full to optimize preview pipeline startup, leading to a faster camerabin2 startup as well. 2011-08-31 15:33:10 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Use explicit boolean literals to make gobject happy gobject boolean properties are strict and only accept 1 or 0, otherwise they throw an assertion. 2011-08-31 14:48:47 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Just join the task gst_task_join() will already stop the task, no need to stop it additionally. 2011-08-31 14:47:40 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Join the task instead of just stopping it and not waiting for it to finish Fixes interesting race conditions that cause crashes in decodebin2 because pads are added/removed from child elements although they should be in READY state already. 2011-08-31 12:12:59 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Remove unused variable 2011-08-31 03:47:52 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: switch to higher/lower bitrate by more than one step at a time 2011-08-31 03:20:48 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: remove spamming GST_LOG_OBJECT 2011-08-31 03:07:48 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: If paused, do not cache fragments until out of memory error! We should stop the update thread in PAUSED state and avoid fetching new fragments when the queue is not empty. The queue should always be empty since we push data into a queue. Also, in totem, if we seek and pause the stream while it's buffering, then the state will stay playing for some reason, so it's best not to continue fetching fragments forever. 2011-08-31 03:01:58 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: start/stop update thread and keep track of status 2011-08-31 02:05:08 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Post duration message when we parse the playlist 2011-08-31 01:08:39 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Send a flush-stop when switching pads. Fixes A->A/V sync issue. This is to ensure that we reset the accumulate segment on the sinks so if we start with audio only then switch to audio+video, then both sinks will have the same segments and will be synchronized. 2011-08-26 22:48:01 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: seems there was a typo, free the adapter if it contains data, not if already empty 2011-08-26 22:47:35 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: oups, we need to empty the queue after freeing its content 2011-08-26 22:44:08 +0000 Youness Alaoui * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: Need to flush all streams when we receive a flush-start 2011-08-26 21:46:06 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: do not broadcast the fetcher_cond on bus error if we're cancelled If we cancel the fetch and call the stop_fetcher, which holds the lock, when it sets the fetcher's state to NULL, it might send an error on the bus. In that case, we must ignore it, otherwise it will try to take the lock and will block forever. 2011-08-26 19:29:06 +0000 Jonas Larsson * gst/hls/m3u8.c: hlsdemux: Split playslist on \r\n not just \n 2011-08-26 19:10:58 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Do not succeed a download if the fetcher had an error 2011-08-26 19:10:39 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Rename functions that need to be called with a locked mutex 2011-08-26 19:09:54 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: We must signal the fetcher_cond while holding its lock 2011-08-26 17:54:51 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: We do not need to set the current playlist to the main one When caching fragments, if we set the current playlist to main, then it will always think it's a live stream (no endlist in it) so it will force the redownload of the main playlist after every seek, which is unnecessary. Also, it causes a race condition where a seek migh happen during that redownload, and we'll think we're trying to seek a live pipeline. 2011-08-30 17:43:22 +1000 Jan Schmidt * ext/soundtouch/gstpitch.cc: * ext/soundtouch/gstpitch.hh: soundtouch: Handling incoming rate when requested. Absorb inbound segments with rate != 1.0 and output a segment with rate taken from the new output-rate property, adjusting the segment applied_rate, stream duration and timestamps as necessary to compensate 2011-08-15 17:57:53 +0200 Nicola Murino * ext/opencv/MotionCells.cpp: fix valgrind warning about Conditional jump or move depends on uninitialised value(s) 2011-08-17 09:42:07 +0200 Nicola Murino * ext/opencv/MotionCells.cpp: Move m_pprevFrame free just before the clone of the latest frame for readability 2011-08-26 09:43:14 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Make viewfinder's queue a thread limit only Reduce the viewfinder queue limits to only allow it to store one buffer, preventing the queue from holding old buffers for too long. This also avoids showing slightly outdated frames on the viewfinder when the source has already produced new ones and improves the buffer recycling rate, important for sources that use bufferpools. 2011-08-25 19:56:58 +0100 Vincent Penquerc'h * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: fix element leak and this concludes an hour of yelling at the bloody test failing, only to track down the problem not being in the test. https://bugzilla.gnome.org/show_bug.cgi?id=657368 2011-08-26 00:52:46 +0000 Youness Alaoui * gst/mpegtsdemux/mpegtsbase.c: tsdemux: In push mode, do not start pull loop if upstream seek fails 2011-08-26 00:47:53 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: do not make the update_thread joinable 2011-08-26 00:26:29 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Ensure the task is paused in case of cache error 2011-08-25 23:37:47 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: stop the threads in the proper order first pause the task, then stop all fetchers, then stop the update thread then pause the task again, since it might have been restarted by another thread in the meantime 2011-08-25 23:37:25 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: do not post an error if we seek/cancel during caching of fragments 2011-08-25 23:37:00 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: if we're canceling a fetcher, we must stop its thread 2011-08-25 23:36:27 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: lock the update_thread mutex before stopping it 2011-08-25 23:35:55 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: lock the fetcher mutex before stopping it 2011-08-25 23:33:10 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: do not allow two fetchers to run simultanously 2011-08-23 20:49:33 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Stop the streaming task on PAUSED_TO_READY state change 2011-08-25 19:24:56 +0100 Vincent Penquerc'h * tests/check/Makefile.am: tests: make camerabin2 test build https://bugzilla.gnome.org/show_bug.cgi?id=657363 2011-08-25 12:49:26 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: ext/resindvd/rsnwrappedbuffer.c 2011-07-12 21:48:37 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: Add more debug 2011-07-12 19:09:02 -0400 Olivier Crête * gst/dtmf/gstdtmfcommon.h: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: Max event type is 15 2011-04-14 15:46:08 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: dtmfsrc: Align DTMF sound buffers with last-stop from event Also make sure the timestamps never go backwards 2011-07-11 21:31:07 -0400 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Correctly recognize the end of a buffer 2011-07-11 20:47:23 -0400 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Make sure rtpdtmfsrc timestamps don't overlap 2011-07-11 20:46:20 -0400 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Put the inter digit interval at the end, not at the start The reason is to let rtpdtmfmux drop buffers during the inter digit interval, this way, there will be more silence around the DTMF tones so IVFs will have a better chance recognizing them. 2011-04-14 17:08:57 -0400 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: rtpdtmfsrc: Start at the last_stop from the start event if there was one The goal is to try to not have a GAP between the audio and the DTMF 2011-04-14 14:34:26 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: rtpdtmfmux: Add last-stop to dtmf-event upstream events Add the running time of the last outputted buffer to the upstream "dtmf-event" events so that the dtmf source does not leave a gap. 2011-04-14 16:49:39 -0400 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: rtpdtmfsrc: Respect ptime from the caps Respect the ptime from the caps for the DTMF packets 2011-07-11 21:30:28 -0400 Olivier Crête * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Just error out if there is no clock 2011-08-24 16:53:52 +0100 Tim-Philipp Müller * ext/kate/gstkateutil.c: kate: make gst_kate_util_is_utf8_string() inline to fix compiler warning with older libkate versions gstkateutil.c:230:1: error: 'gst_kate_util_is_utf8_string' defined but not used 2011-08-24 15:32:12 +0100 Vincent Penquerc'h * ext/resindvd/rsnwrappedbuffer.c: rsndvd: ensure metadata is writable when writing to it https://bugzilla.gnome.org/show_bug.cgi?id=657250 2011-08-24 09:35:18 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Use FALSE instead of 0 for bool parameter 2011-08-23 22:44:17 +0000 Youness Alaoui * gst/mpegtsdemux/tsdemux.c: tsdemux: Need to send a newsegment after a seek 2011-08-23 22:38:26 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Send buffering messages on the bus 2011-08-23 22:38:05 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: cache the number of fragments we are required to cache 2011-08-23 22:40:25 +0000 Youness Alaoui * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: Forward seek/duration query/event to the sinkpad 2011-08-24 01:03:32 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Optimize start up a little by removing some pad checks Some pad checks are guaranteed to work, so we can disable them by using gst_element_link_pads_full 2011-08-23 19:26:31 -0300 Thiago Santos * configure.ac: * gst-libs/gst/Makefile.am: * gst/camerabin2/gstcamerabin2.c: * tests/check/Makefile.am: * tests/examples/Makefile.am: camerabin2: Remove from experimental Remove camerabin2 from experimental, allowing it to be built without needing to pass --enable-experimental on configure. 2011-08-23 19:13:21 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Always set encodebin flags when going to ready When going from NULL to READY we want the encodebin flags to be set, and not only after creating encodebin (on the first run) 2011-08-23 11:58:33 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Add new entry to flags property Adds a new entry to camerabin2 flags to disable viewfinder conversion elements. 2011-08-23 11:19:51 -0300 Thiago Santos * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstviewfinderbin.h: camerabin2: viewfinderbin: Add property for disabling converters Adds a new property to disable converters elements for performance reasons. It should only be used if the application knows they aren't needed. 2011-08-19 17:28:54 +0100 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: do not try to compare a PCR with itself for statistics Especially as one of the logs will cause a divide by zero. https://bugzilla.gnome.org/show_bug.cgi?id=656927 2011-08-19 13:32:14 +0100 Vincent Penquerc'h * gst/mpegtsdemux/tsdemux.c: tsdemux: do not keep a dangling pointer When removing the current program, it will get freed by the hash table removal callback, so ensure we clear our pointer to it. Fixes a crash later on in gst_ts_demux_push trying to access it. https://bugzilla.gnome.org/show_bug.cgi?id=656927 2011-08-21 20:36:07 +0100 Vincent Penquerc'h * ext/kate/gstkateutil.c: kate: pass on timed event metadata as tags when we can Metadata attached to other objects that may be used in this event are not passed, as is binary metadata. 2011-08-23 10:32:14 +0200 Sebastian Dröge * configure.ac: configure: Add AC_MSG_CHECKING() to the VP8E_SET_TUNING presence check 2011-08-19 19:17:15 +0100 Vincent Penquerc'h * configure.ac: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8: probe for the new tuning API to keep building with older libvpx https://bugzilla.gnome.org/show_bug.cgi?id=656928 2011-08-18 13:21:18 +0100 Vincent Penquerc'h * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgdec.h: rsvgdec: use input buffer timings if possible SVG data may come through multiple buffers, so keep track of the timestamp of the first buffer, and use it in preference. https://bugzilla.gnome.org/show_bug.cgi?id=628284 2011-08-22 17:10:24 +0100 Vincent Penquerc'h * ext/kate/gstkatespu.c: kate: do not consider an empty SPU to be a fatal error Instead, just encode nothing and go on. https://bugzilla.gnome.org/show_bug.cgi?id=657091 2011-08-22 17:15:10 +0100 Vincent Penquerc'h * ext/kate/gstkatespu.c: kate: do not clear out high bits from display area http://dvd.sourceforge.net/spu_notes does not mention that high bits are to be masked, and not clearing them makes a sample work, where clearing them yielded left > right. History from the dvdspu plugin, from where this code was copied, does not shed any light, as tracing this code's origin shows the same bitmasks being there in 2007 when it was imported. https://bugzilla.gnome.org/show_bug.cgi?id=657091 2011-08-22 16:52:13 +0100 Vincent Penquerc'h * gst/dvdspu/gstspu-vobsub.c: dvdspu: do not clear out high bits from display area http://dvd.sourceforge.net/spu_notes does not mention that high bits are to be masked, and not clearing them makes a sample work, where clearing them yielded left > right. History does not shed any light, as tracing this code's origin shows the same bitmasks being there in 2007 when it was imported. https://bugzilla.gnome.org/show_bug.cgi?id=620119 2011-08-23 09:52:20 +0200 Sebastian Dröge * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: First try if upstream handles seeking in TIME format before seeking in the demuxer 2011-08-23 09:40:16 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: First send SEEKING queries upstream 2011-08-23 09:27:23 +0200 Sebastian Dröge * gst/mpegtsdemux/tsdemux.c: tsdemux: Send DURATION query upstream first 2011-08-23 09:23:33 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Use FALSE instead of 0 for a bool parameter 2011-08-16 19:53:31 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: switch pads when we seek (need_segment) since tsdemux doesn't cope well with a reset 2011-08-23 02:36:25 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Add a FIXME comment. loop task should be a pad task 2011-08-22 23:41:39 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Do not seek in a live stream 2011-08-22 23:41:31 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Do not take the pad stream lock, use the task's lock instead 2011-08-16 19:46:49 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: Implement EVENT_SEEK 2011-08-23 01:54:26 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Implement the GST_QUERY_SEEKING properly 2011-08-23 01:54:03 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Implement correctly the GST_QUERY_DURATION 2011-08-16 19:41:08 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Do not use GST_TASK_WAIT in the task function The task function uses GST_TASK_WAIT which does a g_cond_wait giving it the GST_OBJECT_GET_LOCK of the task. The mutex gets locked when g_cond_wait returns, so if we don't lock/unlock it, it will stay locked forever, preventing the task from ever finishing. We shouldn't lock the task object lock, so let's remove the GST_TASK_WAIT and make the task pause instead if there are no buffers in the queue. 2011-08-18 23:52:37 +0000 Youness Alaoui * gst/mpegtsdemux/tsdemux.c: tsdemux: do not send a new-segment on stream removal When a program is changed, stream_added is called which sets the need_newsegment to TRUE, then stream_removed is called, which calls the flush_pending_data, which checks for the newsegment and causes it to send a new-segment. We must not send the newsegment when flushing the pending data on the removed stream. We should only push it when flushing data on the newly added streams (after they finish parsing their PTS header) 2011-08-16 22:05:14 +0000 Youness Alaoui * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix newsegment when switching programs If a program/stream is changed, then a newsegment is sent which must not be the same as the base segment since it happens later. We must shift the start position by the time elapsed since the newsegment and the current PTS of the stream 2011-08-16 19:54:04 +0000 Youness Alaoui * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: tsdemux: interpolate gap and fix timestamps depending on upstream segment 2011-08-18 23:54:59 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: Keep a separate variable for the current variant used By using a separate variable, first it allows us to sort the lists of alternates but keep the pointer on the first occurence in the main playlist (to respect the spec of starting with the bitrate specified first in the main playlist). It also avoid playing with the lists variable which should be used to store the list of playlists and not as a pointer to the current one. Also fixes a memleak with the g_list_foreach freeing the lists, if it wasn't pointing to the first element of the list. 2011-08-21 18:44:43 -0700 David Schleef * sys/decklink/Makefile.am: * sys/decklink/capture.cpp: * sys/decklink/capture.h: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.h: decklink: fix compilation on Linux 2011-08-18 14:29:53 -0700 David Schleef * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: Add subdevice property 2011-07-07 16:44:31 -0400 Joshua M. Doe * sys/decklink/capture.cpp: * sys/decklink/capture.h: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: * sys/decklink/linux/DeckLinkAPI.h: * sys/decklink/linux/DeckLinkAPIDispatch.cpp: * sys/decklink/linux/LinuxCOM.h: * sys/decklink/win/DeckLinkAPI.h: * sys/decklink/win/DeckLinkAPIDispatch.cpp: * sys/decklink/win/DeckLinkAPI_i.c: decklink: add support for Windows Builds with MSVC, not tested in MinGW or anything else. Added COM handling code, borrowed from dshowvideosink. Moved Linux specific files to ./linux and added Windows specific files to ./win (generated from IDL files in VS9). Added macros to handle BSTR and defined bool as BOOL. Fixes #655362. Signed-off-by: David Schleef 2011-07-07 14:34:01 -0400 Joshua M. Doe * sys/decklink/capture.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: improve frame handling Send NEWSEGMENT on start. Send warning instead of error on dropped frames. Signed-off-by: David Schleef 2011-07-07 14:20:37 -0400 Joshua M. Doe * sys/decklink/capture.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: fix debugging in capture.cpp by making category extern Signed-off-by: David Schleef 2011-07-07 14:13:00 -0400 Joshua M. Doe * sys/decklink/capture.cpp: * sys/decklink/capture.h: decklink: use mutexes from glib instead of pthread Signed-off-by: David Schleef 2011-06-16 17:19:49 -0300 Tiago César Katcipis * configure.ac: * gst/removesilence/Makefile.am: * gst/removesilence/gstremovesilence.c: * gst/removesilence/gstremovesilence.h: * gst/removesilence/vad_private.c: * gst/removesilence/vad_private.h: removesilence: new plugin Fixes: #597822. Signed-off-by: David Schleef 2011-08-21 14:41:28 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Prevent audiosrc from sending undesired eos Basesrc derived classes send an eos when they change state from paused to ready and that breaks video recordings on camerabin2 as it makes the whole audio branch pads flushing. Prevent it by using a pad probe that only allows the eos to pass when it is caused by a stop-capture action. 2011-08-21 14:07:37 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Use audiotestsrc on tests Use audiotestsrc on tests instead of using the system's default audiosrc, avoiding any problems that a local audio setup might have. 2011-08-18 18:27:03 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Use gst_pad_send_event instead of eventfunc macro 2011-08-14 04:41:58 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Improving tests Adding some additional checks for custom camerabin2 messages Also improves reliability of the tests by waiting for the preview-buffer message. This message is generated from the preview pipeline, and might arrive later than the image/video-done from the main camerabin2 pipeline, the tests need to wait for it even after getting the image/video-done. 2011-08-18 15:12:56 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Avoid assertions when plugin creation fails Capsfilters are created on the constructor and their properties can be set/get from camerabin2's set/get_property functions. The user with a broken setup would cause assertions when trying to set/get the capture caps of this camerabin2. A proper missing-plugin message will be posted when the user tries to set camerabin2 to READY state. 2011-08-20 00:48:20 +0200 Alessandro Decina * gst/mpegtsmux/mpegtsmux.c: tsmux: remove unnecessary check remove an if (best) check where best != NULL has already been checked 2011-08-16 19:51:34 +0000 Youness Alaoui * gst/mpegtsdemux/mpegtsbase.c: tsbase: reinitiate segment at flush-stop event only 2011-08-16 19:43:08 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: Set buffer timestamp since we send a TIME segment 2011-08-02 19:21:47 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: Allow bandwidth switching during caching of fragments 2011-08-02 19:21:18 +0000 Youness Alaoui * gst/hls/gsthlsdemux.c: hlsdemux: set the pad's caps before adding it 2011-08-17 11:02:12 +0100 Vincent Penquerc'h * ext/ofa/gstofa.c: ofa: fingerprint creation can fail There does not seem to be a way to retrieve information about why failure occured, unfortunately. When failure occurs, do not post a NULL fingerprint tag. https://bugzilla.gnome.org/show_bug.cgi?id=656641 2011-08-17 10:55:59 +0100 Vincent Penquerc'h * ext/ofa/gstofa.c: ofa: cleanup Avoid repeating casting to GstAudioFilter when one will do Use object related logging to make it easier to get just the logs we want https://bugzilla.gnome.org/show_bug.cgi?id=656641 2011-08-17 11:07:54 +0100 Vincent Penquerc'h * ext/ofa/gstofa.c: ofa: do not create fingerprint on EOS if record is FALSE https://bugzilla.gnome.org/show_bug.cgi?id=656641 2011-08-18 10:39:26 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Remove unused and useless variable in tags handling 2011-08-18 08:02:50 +0000 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Fix locking, especially if both pads have different streaming threads 2011-08-18 07:42:02 +0000 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Don't call g_type_class_peek_parent() in class_init This is already done by the GObject boilerplate macro 2011-08-17 19:01:39 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-08-16 10:24:37 +0100 Vincent Penquerc'h * gst/aiff/aiffmux.c: * gst/aiff/aiffmux.h: aiffmux: drop data after 4ish GB and moan https://bugzilla.gnome.org/show_bug.cgi?id=654278 2011-08-16 10:02:59 +0100 Vincent Penquerc'h * gst/aiff/aiffmux.c: aiffmux: use guint32 for guint32 parameters This makes explicit that the range is limited. https://bugzilla.gnome.org/show_bug.cgi?id=654278 2011-08-16 10:02:11 +0100 Vincent Penquerc'h * gst/aiff/aiffmux.c: aiffmux: avoid integer overflow These values are 32 bits, and width is a multiple of 8. https://bugzilla.gnome.org/show_bug.cgi?id=654278 2011-08-16 19:39:40 +0100 Vincent Penquerc'h * ext/celt/gstceltdec.c: celtdec: make this compile with git libcelt celt_mode_info was removed, in favor of a _ctl. https://bugzilla.gnome.org/show_bug.cgi?id=656686 2011-08-16 18:34:59 +0100 Vincent Penquerc'h * ext/ofa/gstofa.c: ofa: don't crash when there's no data to create a fingerprint from Fixes a crash when no data flowed through. https://bugzilla.gnome.org/show_bug.cgi?id=656641 2011-08-16 19:47:02 +0300 George Kiagiadakis * gst/mpeg4videoparse/mpeg4parse.c: mpeg4videoparse: Use gst_bit_reader_skip to skip more than 32 bits. GET_BITS is a macro for gst_bit_reader_get_bits_uint32, which cannot read more than 32 bits and will fail in this case where it is called to read 79 bits. Since we want to skip those bits, gst_bit_reader_skip is more appropriate in this case. 2011-08-15 02:08:14 +0200 Alessandro Decina * sys/applemedia/qtkitvideosrc.m: qtkitvideosrc: get the framerate from caps ...and configure QTKit accordingly. Hardcoding to 30fps was pretty -bad. 2011-08-13 15:55:01 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Add test for audio-filter property Checks that the audio-filter is properly plugged in the pipeline and receives buffers when recording a video. 2011-08-11 18:59:07 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Add audio-filter property Adds a property to add a custom GstElement to the audio branch of the pipeline. This allows the user to do custom audio processing/analysis when recording videos. 2011-08-12 22:39:53 +0200 Stefan Kost * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstbaseaudiovisualizer.h: basevisualizer: add more shader variants and simplify code Use macros to simplyfy the shading code. Those will ease to add support for other colorspaces in the future. Add more variants for the shading (left,right, horiz-in, vert-out, vert-in). 2011-08-12 21:22:20 +0200 Stefan Kost * gst/audiovisualizers/gstbaseaudiovisualizer.c: basevisualizer: more docs 2011-08-12 21:18:44 +0200 Stefan Kost * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstbaseaudiovisualizer.h: baseaudiovisualizer: protect config with a lock Before it was easy to crash the elements when using a ximagesink and triggering renegotiation by resizing. 2011-08-12 16:57:49 +0200 Stefan Kost * gst/audiovisualizers/gstspectrascope.c: spectrascope: make a copy of the audiodata before downmixing and windowing The buffers come from the adapter and the data might overlap. We don't want to modify it in place. 2011-08-12 12:25:03 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Proxy the width/height/framerate/PAR constraints of downstream caps to upstream This allows to specify constraints on the compressed downstream caps by muxers or capsfilters, which will then be forwarded to upstream and allows video converters to fulfill the constraints. Code based on Mark Nauwelaerts audio encoder base class. 2011-08-12 12:13:45 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Remove old ::getcaps() comment 2011-08-12 12:08:32 +0200 Sebastian Dröge * ext/dirac/gstdiracenc.cc: diracenc: Update for basevideoencoder ::get_caps() removal 2011-08-12 12:08:20 +0200 Sebastian Dröge * ext/schroedinger/gstschroenc.c: schroenc: Update for basevideoencoder ::get_caps() removal 2011-08-12 12:08:08 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Update for basevideoencoder ::get_caps() removal 2011-08-12 12:06:23 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Remove ::get_caps() vfunc Subclasses can set the caps more efficiently and this only caused additional indirections. 2011-08-09 09:29:21 +0100 Vincent Penquerc'h * gst/mxf/mxfmetadata.c: mxf: do not assert on the values of data read from input Instead, log a warning, and return. https://bugzilla.gnome.org/show_bug.cgi?id=563827 2011-08-03 16:02:01 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Use the cached video frame size instead of recalculating it 2011-08-08 17:53:16 +0200 Sjoerd Simons * ext/schroedinger/gstschroenc.c: schroedinger: Fix set but unused variables Remove some dead code that triggers "set but unused variables" from Gcc 4.6. Fixes #656166 Signed-off-by: David Schleef 2011-08-08 16:44:20 +0200 Sjoerd Simons * ext/dirac/gstdiracenc.cc: dirac: Fix set but unused variables Remove some dead code that triggers "set but unused variables" from Gcc 4.6. Fixes #656164. Signed-off-by: David Schleef 2011-08-06 12:13:22 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Adding video-done message video-done message will be posted when a video recording is finished. Similar to image-done message. 2011-08-05 15:48:53 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Adding top-level element documentation 2011-08-05 13:34:08 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Fixing typo 2011-08-04 13:33:20 +0200 Stefan Sauer * ext/opencv/gstmotioncells.c: * ext/opencv/motioncells_wrapper.cpp: * ext/opencv/motioncells_wrapper.h: motioncells: turn two global vars into static variables Move 2 variable to motioncells_warpper and make them static. 2011-08-04 13:33:56 +0200 Edward Hervey * tests/examples/opencv/Makefile.am: examples: Add missing header file 2011-08-04 11:28:30 +0200 Edward Hervey * sys/decklink/Makefile.am: decklink: Add gstdecklink.h to list of headers 2011-08-04 09:49:46 +0200 Alessandro Decina * gst/videoparsers/mpegvideoparse.c: mpegvideoparse: fix sequence header parsing After bitrate there's 11 bits (1 marker bit + VBV buffer size) before the load intra quantiser flag. 2011-08-04 09:40:46 +0200 Wim Taymans Merge branch 'master' into 0.11 2011-08-04 09:36:07 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: common configure.ac gst/colorspace/colorspace.c gst/colorspace/colorspace.h gst/colorspace/gstcolorspace.c 2011-07-21 08:58:27 +0300 Tommi Myöhänen * gst-libs/gst/interfaces/photography.h: photography: add missing FLICKER_REDUCTION capability GstPhotography API contains functions to get/set flicker reduction mode, but GstPhotoCaps enumeration doesn't have item for it, so elements are not able to report whether they support this feature or not. Also add useful GST_PHOTOGRAPHY_CAPS_ALL for easily selecting all capabilities at once. https://bugzilla.gnome.org/show_bug.cgi?id=655318 2011-08-03 13:37:28 -0700 David Schleef * gst/subenc/Makefile.am: * gst/subenc/gstsrtenc.c: * gst/subenc/gstsubenc.c: * gst/subenc/gstwebvttenc.c: * gst/subenc/gstwebvttenc.h: subenc: Add webvttenc element 2011-08-03 13:35:41 -0700 David Schleef * ext/kate/gstkateenc.c: kateenc: Fix uninitialized error 2011-07-09 23:22:26 -0700 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: remove shape_output handling 2011-07-09 23:07:39 -0700 David Schleef * ext/dirac/gstdiracenc.cc: diracenc: Remove unused shape_output code 2011-07-09 18:53:24 -0700 David Schleef * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: Add more properties 2011-06-19 16:06:46 +0200 Alexey Fisher * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: add min/maxsection-pct option This options should be good to redeuce decode CPU load. for lowend hardware: minsection-pct=15 maxsection-pct=400 for hiend hw: minsection-pct=5 maxsection-pct=800 see example: http://www.webmproject.org/tools/encoder-parameters/#2-pass_vbr_encoding_for_smooth_playback_on_low-end_hardware Signed-off-by: Alexey Fisher Signed-off-by: David Schleef 2011-06-19 11:05:36 +0200 Alexey Fisher * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: add lag-in-frames option. This option set maximum of frames codec should remember, to make better prediktion for alt-ref frames. See example: http://www.webmproject.org/tools/encoder-parameters/#2-pass_best_quality_vbr_encoding Signed-off-by: Alexey Fisher Signed-off-by: David Schleef 2011-06-19 07:16:57 +0200 Alexey Fisher * ext/vp8/gstvp8enc.c: vp8enc: use multipass.cache file name as default for multipass mode. Signed-off-by: Alexey Fisher Signed-off-by: David Schleef 2011-07-09 16:05:07 -0400 Mukul Majmudar * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: Add properties for VBR encoding Property "quality" to specify VBR quantizer quality and property "brtype" to choose between ABR and VBR encoding. The default is now VBR with quality=100. Fixes bug #654310. Signed-off-by: David Schleef 2011-07-07 16:07:50 -0700 David Schleef * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: Add audio-input property 2011-07-18 15:25:05 +1000 Tim 'mithro' Ansell * gst/inter/Makefile.am: inter: Adding missing base requirements. Fixes: #654806. 2011-08-03 15:21:17 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: add more missing plugin checks Sprinkle some more missing plugin checks around 2011-08-03 13:12:18 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Add a missing element check and remove TODO Add missing element checks for elements created at _init functions and remove TODO about it 2011-08-03 13:57:09 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Remove redundant image-queue Encodebin is used for image encoding and it already contains a queue, so we can remove camerabin2 image queue. 2011-08-03 13:42:20 +0100 Tim-Philipp Müller * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: fix up copyrights 2011-06-29 15:14:29 +0200 Robert Swain * tests/examples/camerabin2/gst-camerabin2-test.c: gst-camerabin2-test: Add audio capture caps option 2011-08-02 15:14:24 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Make access to the list of frames threadsafe 2011-08-02 23:53:08 +0100 Tim-Philipp Müller * gst/bayer/Makefile.am: bayer: back around compiler warnings in orc-generated code by disabling -Werror for this plugin https://bugzilla.gnome.org/show_bug.cgi?id=652677 2011-08-02 22:57:15 +0100 Tim-Philipp Müller * .gitignore: * ext/opencv/gstmotioncells.c: * tests/examples/opencv/gst_element_print_properties.c: * tests/examples/opencv/gstmotioncells_dynamic_test.c: Fix some more variable-set-but-not-used compiler warnings 2011-08-02 21:14:06 +0200 Robert Jobbagy * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: examples: Fix camerabin2 G_OBJECT cast Adds missing cast to fix build error. 2011-08-02 10:49:09 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Workaround for ringbuffer not resyncing on READY Add a workaround to fix timestamps meanwhile bug https://bugzilla.gnome.org/show_bug.cgi?id=648359 is fixed. 2011-07-30 16:12:31 +0300 Raluca Elena Podiuc * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2 remove redundant viewfinder-colorspace and viewfinder-scale camrabin2 connects a viewfinderbin on "vfsrc". viewfinderbin is made of: vfbin-csp ! vfbin-videoscale ! videosink. we should either remove csp/videoscale from wrappercamerabinsrc (as done in this patch) or we should get rid of viewfinderbin altogether. 2011-07-26 06:04:41 +0300 Raluca Elena Podiuc * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/gstwrappercamerabinsrc.c: basecamerasrc: remove unused get_allowed_input_caps The use of this method was removed in: commit 539f10f4d99e1a074881289254d1d109159cf9e5 basecamerasrc: More cleanup The code from wrappercamerabinsrc is from v4l2camerasrc but is unused: get_allowed_input_caps is not called anywhere. 2011-07-26 05:59:09 +0300 Raluca Elena Podiuc * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: basecamerasrc: don't use class offsets for start/stop-capture signal handlers 2011-07-26 05:43:34 +0300 Raluca Elena Podiuc * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: document why we set preview to PLAYING 2011-07-26 04:42:49 +0300 Raluca Elena Podiuc * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: basecamerasrc: document callbacks Note for each callback: - when it is called, - whether it is mandatory or optional. 2011-07-26 03:04:47 +0300 Raluca Elena Podiuc * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: basecamerabinsrc: preview: remove unused new_preroll callback 2011-07-28 13:18:57 -0300 Teemu Katajisto * gst/camerabin2/gstcamerabin2.c: camerabin2: Synchronize clock and base time to audiosrc When audio source goes to READY it loses its clock and base time, this patch sets them back after bringing the audio source back to PAUSED. 2011-07-28 12:56:12 -0300 Robert Swain * gst/camerabin2/gstcamerabin2.c: camerabin2: Prevent audio source from providing clock The audio source inside camerabin2 is put to READY and back to PLAYING when starting capture, causing the pipeline to lose its clock. As camerabin2 isn't put to PAUSED->PLAYING again during this, a new clock isn't selected for elements. 2011-06-30 11:09:44 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: Add flags prop to toggle encodebin conversion elements A flags property has been added to encodebin to toggle whether the conversion elements (ffmpegcolorspace, videoscale, audioconvert, audioresample, audiorate) are created and linked into the appropriate branches of encodebin. Not including these elements avoids some slow caps negotiation and allows the first buffers to flow through encodebin much more quickly. However, it imposes that the uncompressed input is appropriate for the target profile and elements selected to meet that profile. 2011-06-29 15:35:42 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: camerabin2: Prepare audiosrc before start-capture If we bring the audio source up to the PAUSED state before emitting the start-capture signal to the camera source, when subequently taking the audio source to the PLAYING state, it will begin capture more quickly. 2011-06-29 15:18:47 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Remove redundant elements Since camerabin2 has switched to encodebin and encodebin has its own queues and conversion elements, those preceding encodebin are no longer necessary and as such can be removed. 2011-08-02 12:24:01 +0200 Edward Hervey * configure.ac: configure.ac: Define list of non-ported plugins 2011-08-02 11:42:46 +0200 Edward Hervey * common: Update common submodule 2011-08-01 18:49:55 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Take into account upstream newsegment events If the incoming newsegment event was in time, use that position value for the downstream newsegments. 2011-08-01 18:48:03 +0200 Edward Hervey * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: Send NEWSEGMENT events Previously hlsdemux wasn't sending out any newsegment. Here we push a GST_FORMAT_TIME newsegment, and whenever possible we try to indicate the proper start time. This allows downstream elements to relay the start/time values properly to the sinks, allowing better stream switching. 2011-08-01 15:46:12 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Remove programs on EOS Allows subclasses to properly flush out pending data. 2011-08-01 10:54:16 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Refactor stream/program removal The program_stopped vmethod was called before stream_removed vmethod was being called. Since we only did stream-related operations in there, we just remove the program_stopped vmethod and do everything in the stream_removed one. Also, make sure we flush out all pending data before sending EOS. 2011-07-28 18:21:04 -0400 Nicolas Dufresne * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Prevent stack gardening by using the right type stream_type is stored as guint inside the GstStructure but was retreived using valist with a pointer to guint16. This would cause stack gardening when code is compiled without optimisation (e.g. in -O0 the compiler wont pad the stack to optimise out required mask). https://bugzilla.gnome.org/show_bug.cgi?id=655540 2011-07-29 21:26:41 +0100 Tim-Philipp Müller * tests/check/elements/faad.c: tests: fix compiler warning in faad unit test 2011-07-29 19:43:11 +0100 Tim-Philipp Müller * gst/id3tag/Makefile.am: * gst/id3tag/gstid3mux.h: * gst/id3tag/gsttagmux.c: * gst/id3tag/gsttagmux.h: * gst/id3tag/id3tag.h: id3mux: use now-public GstTagMux base class from libgsttag 2011-07-28 20:38:37 +0100 Tim-Philipp Müller * gst/id3tag/gstid3mux.c: * gst/id3tag/gsttagmux.c: tagmux: require subclass to install sink pad template Require the subclass to install both source and sink pad templates. Also, print some warnings if the subclass doesn't do that. https://bugzilla.gnome.org/show_bug.cgi?id=555437 2011-07-27 22:34:23 +0200 Robert Jobbagy * configure.ac: * tests/examples/Makefile.am: * tests/examples/opencv/Makefile.am: * tests/examples/opencv/gst_element_print_properties.c: * tests/examples/opencv/gst_element_print_properties.h: * tests/examples/opencv/gstmotioncells_dynamic_test.c: * tests/examples/opencv/gstmotioncells_dynamic_test.h: gstmotioncells_dynamic_test: test tool what can to do dynamic change properties 2011-07-27 18:58:15 +0200 Robert Jobbagy * ext/opencv/Makefile.am: * ext/opencv/MotionCells.cpp: * ext/opencv/MotionCells.h: * ext/opencv/gstmotioncells.c: * ext/opencv/gstmotioncells.h: * ext/opencv/gstopencv.c: * ext/opencv/motioncells_wrapper.cpp: * ext/opencv/motioncells_wrapper.h: motioncells: new element to detect areas of motion 2011-07-26 17:02:05 +0200 Edward Hervey * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hsldemux: Handle change of media types When switching bitrates, we might end up switching to a different media-type (like from aac to/from mpeg-ts). For this switch to behave properly in decodebin2, this patch adds: * dynamic source pads (which will be added/removed whenever a stream media type changes * re-checking the fragment media type whenever we switch to a different playlist 2011-07-26 13:47:04 +0200 Edward Hervey * gst/mpeg4videoparse/mpeg4parse.c: mpeg4videoparse: Fix unitialized variable on old compilers 2011-07-27 11:02:41 +0100 Olaf Seibert * gst/hls/gsthlsdemux.c: hlsdemux: fix wrong usage of GST_ELEMENT_ERROR macros and compilation on NetBSD https://bugzilla.gnome.org/show_bug.cgi?id=655319 2011-07-27 10:56:15 +0100 Tim-Philipp Müller * gst/pcapparse/gstpcapparse.c: pcapparse: fix compiler warning gstpcapparse.c: In function 'gst_pcap_parse_chain': gstpcapparse.c:381:6: error: 'eth_type' may be used uninitialized in this function [-Werror=uninitialized] gstpcapparse.c:354:11: note: 'eth_type' was declared here 2011-07-26 19:11:16 +0300 Felipe Contreras * gst/pcapparse/gstpcapparse.c: pcapparse: fix SLL parsing The current code is not checking for ethernet type, as it's supposed to, but link layer device type and it's hard-coded to only accept dumps from ethernet (ARPHRD_ETHER; 1). We don't care where the dump was fetched from (wlan, 3G, etc.) What we care about is the that the ethernet type is IP (ETHERNET_IP; 0x800), which is clearly field 14: http://www.tcpdump.org/pcap3_man.html And do a bit of cleanup. Signed-off-by: Felipe Contreras 2011-07-21 13:26:55 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsbase/tsdemux: Fix stream/pad activation order We first activate new streams before shutting down old ones. We emit no-more-pads after we add new streams and emit EOS before removing old ones. Also cleanup/refactor a bit more of the code accordingly 2011-07-22 12:26:07 +0300 Raluca Elena Podiuc * gst/camerabin2/PORTING: camerabin2: add location=NULL docs to PORTING https://bugzilla.gnome.org/show_bug.cgi?id=641918 2011-07-22 11:38:30 +0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: If location is NULL do not encode images Using a NULL string for location means that the application doesn't want the image to be encoded, but wants to receive the preview image. (Only works for image captures) Useful for application that want the capture in memory only, like displaying to the user before it choses to encode or take another picture in avatar capturing scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=641918 2011-07-21 08:04:11 +0200 Sebastian Dröge * ext/schroedinger/gstschroenc.c: schroenc: Update for GstBaseVideoEncoder::finish() signature change 2011-07-21 08:03:51 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Update for GstBaseVideoEncoder::finish() signature change 2011-07-21 08:03:27 +0200 Sebastian Dröge * ext/dirac/gstdiracenc.cc: diracenc: Update for GstBaseVideoEncoder::finish() signature change 2011-07-21 05:44:10 +0000 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Allow finishing of frames with no src_buffer to drop/free the GstVideoFrame 2011-07-20 08:39:51 +0000 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass 2011-07-20 09:25:28 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Delay sending of serialized sink events until finish_frame() 2011-07-20 09:09:25 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder 2011-07-20 19:16:05 +0200 Edward Hervey * gst/mpegtsdemux/pesparse.c: * gst/mpegtsdemux/pesparse.h: pesparse: Fix stuffing byte handling We in fact get the size of the header (including stuffing bytes), therefore use that instead of trying to skip 0xff bytes ourselves since some media streams do start with 0xff (like mpeg audio's initial 0xfff). 2011-07-18 14:53:31 -0400 Nicolas Dufresne * ext/assrender/gstassrender.c: * ext/lv2/gstlv2.c: * ext/modplug/gstmodplug.cc: * ext/sndfile/gstsfsrc.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/zbar/gstzbar.c: Fix compilation for unused but not set https://bugzilla.gnome.org/show_bug.cgi?id=654572 2011-07-20 08:57:47 +0200 Alessandro Decina * gst/mpegtsdemux/pesparse.c: mpegtsdemux: fix compiler warnings 2011-07-19 12:50:43 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: Use a temporary GstVideoState until the subclass accepted the caps Also store the caps in the GstVideoState and assume a PAR of 1/1 instead of 0/1 if no PAR is specified in the caps. 2011-07-19 09:36:53 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: mpegtsbase/tsdemux: Add more comments and removal unused variable 2011-07-19 09:36:10 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Avoid double removal of streams This can happen if the PCR pid is the same as a audio/video PID. 2011-07-19 09:34:37 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsbase: Add a GList of streams to the program Allows faster iteration of all program streams. We still keep the Array to allow fast retrieval of stream by PID. 2011-07-19 08:45:51 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsbase: Use a bit array instead of an array of gboolean Makes know_psi and is_pes 32 times smaller 2011-07-19 08:37:24 +0200 Sebastian Dröge * gst/pcapparse/gstpcapparse.c: pcapparse: Fix format string compiler warning 2011-07-18 14:14:31 +0300 Sreerenj Balachandran * ext/directfb/dfbvideosink.c: dfbvideosink: fix harmless typo in variable initialization https://bugzilla.gnome.org/show_bug.cgi?id=654840 2011-07-12 19:04:27 +0200 Alessandro Decina * gst/videoparsers/gsth264parse.c: h264parse: remove a check made useless by the last commit 2011-07-12 19:01:47 +0200 Alessandro Decina * gst/videoparsers/gsth264parse.c: h264parse: assume byte-stream if stream-format and codec_data are missing from input caps 2011-07-06 23:24:27 +0200 Alessandro Decina * gst/videoparsers/gsth264parse.c: h264parse: ignore codec_data if stream-format=byte-stream Some encoders set codec_data even when outputting byte-stream. Before this patch h264parse would incorrectly detect such streams as AVC. 2011-07-18 09:12:16 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Use standalone PES parser 2011-07-17 14:17:10 +0200 Edward Hervey * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/pesparse.c: * gst/mpegtsdemux/pesparse.h: mpegtsdemux: Add standalone PES parser 2011-07-17 09:49:06 +0200 Edward Hervey * gst/mpegtsdemux/gstmpegdefs.h: mpegdefs: clarify some stream ids 2011-07-16 13:51:44 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: whoops, tsdemux isn't ready yet for primary rank :) 2011-07-16 13:47:45 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: mpegtsbase/tsdemux: Cleanups and comments 2011-07-16 13:44:00 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix newsegment creation for push mode And all relevent comments to what it should be doing, refactor everything a bit. Still not perfect ... but better. Fixes #654657 2011-07-15 12:08:40 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Store incoming newsegments 2011-07-15 20:57:47 +0100 Tim-Philipp Müller * gst/id3tag/gstid3mux.c: * gst/id3tag/gsttagmux.h: * gst/id3tag/id3tag.c: * gst/id3tag/id3tag.h: tagmux: const-ify GstTagList argument of render vfuncs 2011-07-15 20:39:20 +0100 Tim-Philipp Müller * gst/id3tag/gsttagmux.c: * gst/id3tag/gsttagmux.h: * gst/id3tag/id3tag.c: tagmux: fix up private base class header so it can be made public Move private bits into a private struct, add some padding. https://bugzilla.gnome.org/show_bug.cgi?id=555437 2011-07-15 16:10:57 +0100 Tim-Philipp Müller * configure.ac: We need core/base from git Update requirements after out-of-order 0.10.35 release 2011-07-13 17:15:36 +0300 Raluca Elena Podiuc * tests/check/elements/camerabin2.c: tests: camerabin2: fix name of 'image-done' bus message Use the correct bus message for camerabin2 image done and removes check that is no longer needed for these tests. 2011-07-15 10:04:53 +0200 Mark Nauwelaerts * gst/pcapparse/gstpcapparse.c: pcapparse: rename offset property to ts-offset ... so as to promote consistency with some other elements in the wild. 2011-07-14 19:30:45 +0100 Tim-Philipp Müller * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gstvdph264dec.c: vdpau: fix some variable-set-but-unused compiler warnings 2011-07-15 00:03:10 +0200 Alessandro Decina * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: actually set seen_pat=TRUE when we see a PAT 2011-06-26 20:32:53 +0200 Alessandro Decina * ext/neon/gstneonhttpsrc.c: neonhttpsrc: implement URI query 2011-07-14 22:08:56 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: mpegtsbase: Split up whether we saw a PAT and its offset Fixes the issue with streams that don't set an offset on their buffers, like those coming from hlsdemux. Fixes #653481 2011-07-14 17:06:38 +0200 Mark Nauwelaerts * gst/pcapparse/gstpcapparse.c: pcapparse: properly apply ts offset 2011-07-14 16:50:29 +0200 Mark Nauwelaerts * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: optionally output relative timestamps, possibly shifted by offset That is, output timestamps can then either be the absolute capture time, or the relative capture time (w.r.t. to first output buffer), or the relative capture time incremented by some offset. 2011-07-14 16:40:14 +0200 Mark Nauwelaerts * gst/pcapparse/gstpcapparse.c: pcapparse: also support extracting tcp data 2011-07-14 14:37:14 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: * tests/check/pipelines/.gitignore: tests: add some more unit test binaries to .gitignore 2011-07-13 13:44:41 -0400 Olivier Crête * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: docs: Revert wrongly committed changes to .args/.hierarchy 2011-07-13 13:42:09 -0400 Olivier Crête * gst/mpegvideoparse/mpegpacketiser.c: mpegvideoparse: Restore some unused variables as comments 2011-07-13 13:39:46 -0400 Olivier Crête * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: Restore erroneously removed data++ Also, put back some unused code in comment and replace // comments by /* */ 2011-07-13 13:38:31 -0400 Olivier Crête * gst/mpegdemux/mpegtspacketizer.c: mpegdemux: Restore erroneously removed data++ Also, put back some unused code in comment and replace // comments by /* */ 2011-07-13 10:42:36 +0200 Sebastian Dröge * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: schroedinger: Fix compilation and set-but-not-used compiler warnings 2011-07-13 10:33:58 +0200 Sebastian Dröge * ext/dirac/gstdiracenc.cc: diracenc: Fix compilation by including the new gstbasevideoutils.h header and fixing some set but not used compiler warnings 2011-07-12 18:22:35 -0400 Olivier Crête * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * tests/examples/camerabin/gst-camera-perf.c: examples/camerabin: Fix set-but-unused warnings 2011-07-12 18:20:23 -0400 Olivier Crête * ext/jp2k/gstjasperdec.c: * ext/jp2k/gstjasperenc.c: jp2k: Fix set-but-unused warnings 2011-07-12 18:18:30 -0400 Olivier Crête * ext/resindvd/gstpesfilter.c: * ext/resindvd/rsnstreamselector.c: resindvd: Fix set-but-unused warnings 2011-07-12 18:16:54 -0400 Olivier Crête * ext/cog/cogvirtframe.c: cog: Fix set-but-unused warnings 2011-07-12 18:13:56 -0400 Olivier Crête * sys/dvb/camresourcemanager.c: * sys/dvb/camsession.c: * sys/dvb/camtransport.c: dvb: Fix set-but-unused warnings 2011-07-12 18:10:42 -0400 Olivier Crête * gst/videomeasure/gstvideomeasure_ssim.c: videomeasure: Fix set-but-unused warnings 2011-07-12 18:09:26 -0400 Olivier Crête * gst/tta/gstttadec.c: tta: Fix set-but-unused warnings 2011-07-12 18:08:21 -0400 Olivier Crête * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdimux.c: sdi: Fix set-but-unused warnings 2011-07-12 18:05:25 -0400 Olivier Crête * ext/vp8/gstvp8enc.c: vp8: Fix set-but-unused warnings 2011-07-12 18:03:53 -0400 Olivier Crête * gst/rtpvp8/gstrtpvp8pay.c: rtpvp8: Reject unknown bitstream versions 2011-07-12 17:59:56 -0400 Olivier Crête * gst/videoparsers/h263parse.c: videoparsers: Fix set-but-unused warnings 2011-07-12 17:57:45 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: pcapparse: Fix set-but-unused warnings 2011-07-12 17:56:25 -0400 Olivier Crête * gst/mpegvideoparse/mpegpacketiser.c: mpegvideoparse: Fix set-but-unused warnings 2011-07-12 17:53:33 -0400 Olivier Crête * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: mpegdemux: Fix unused-but-set warnings 2011-07-12 17:50:27 -0400 Olivier Crête * gst/mpegdemux/mpegtspacketizer.c: mpegtsdemux: Fix unused-but-set warnings 2011-07-12 01:18:16 +0530 Sameer Naik * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix segfault if gst_collect_pads_pop () returns no buffer In mpegtsmux_choose_best_stream () call if the gst_collect_pads_pop () call returns no buffer (NULL), the plugin SegFaults in the gst_buffer_unref call. To fix this we check if a valid buffer is returned before calling gst_buffer_unref (). Fixes bug #654416. 2011-07-11 12:59:07 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state The subclass might want to access the old state. 2011-07-11 12:36:42 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Track present position on discont before resetting it 2011-07-11 11:52:33 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events 2011-07-11 11:28:40 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: basevideocodec: Protect access to the list of pending frames with the object lock This is required if ::finish_frame() and all buffer output happens on a different thread than the sinkpad streaming thread. 2011-07-11 09:35:25 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Set the correct lists to NULL after freeing 2011-07-11 08:54:53 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Work with a copy of the GstVideoState in setcaps until the caps are accepted Also fix a refcount problem with the codec_data. 2011-07-09 11:40:17 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: Move the utils from the codec header to its own header 2011-07-09 11:31:02 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Use destroy notify to free the coder hook 2011-07-09 11:09:12 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Use GSlice for allocating GstVideoFrame and don't duplicate code in the decoder base class 2011-06-28 11:47:25 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: Don't reorder serialized src events And allow to drop EOS by the subclass if ::finish returns DROPPED. This requires that the subclass sends EOS manually later. Fixes bug #653544. 2011-06-27 09:41:40 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Add the caps to the GstVideoState and clean up caps/codec_data properly Having access to the caps in ::set_format can be useful if non-standard caps fields like the h264 alignment must be accessed. 2011-07-09 10:57:52 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Add destroy notify for the coder_hook to prevent memory leaks Fixes bug #654293. 2011-07-08 11:52:17 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Properly return seeking errors if the requested position can't be found 2011-07-07 16:00:44 -0700 Stefan Kost * gst/inter/.gitignore: inter: add ignore file for intermediate files 2011-07-07 15:59:05 -0700 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-flite.xml: * docs/plugins/inspect/plugin-inter.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: docs: add camerabin2 to the docs and update the doc files 2011-07-07 15:55:59 -0700 Stefan Kost * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstplugin.c: camerabin2: don't mess with camerabin (1) namespace Use an extra '2' to stay out of the old namespace. 2011-07-07 11:11:42 -0700 Stefan Kost * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: keep section file sorted 2011-07-07 10:52:50 -0700 Stefan Kost * gst/scaletempo/gstscaletempo.c: scaletempo: improve the docs Fix the syntax, add more explanation and xref the properties. 2011-06-05 00:54:19 -0700 David Schleef * configure.ac: * ext/Makefile.am: * ext/opus/Makefile.am: * ext/opus/gstopus.c: * ext/opus/gstopusdec.c: * ext/opus/gstopusdec.h: * ext/opus/gstopusenc.c: * ext/opus/gstopusenc.h: opus: duplicate from CELT Copy the celt plugin and convert it to Opus. Mostly works. 2011-07-06 15:56:32 -0700 David Schleef * sys/decklink/gstdecklink.cpp: decklink: HD modes are square pixels 2011-07-05 10:19:30 +0100 Tim-Philipp Müller * configure.ac: Add -DGST_USE_UNSTABLE_API to the compiler flags to avoid warnings 2011-07-04 16:18:18 -0700 David Schleef * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gstdiracparse.h: diracparse: make diracparse work correctly 2011-07-03 18:32:37 -0700 David Schleef * sys/decklink/gstdecklinksrc.cpp: decklink: properly set up analog input 2011-06-28 23:47:18 -0700 David Schleef * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksrc.cpp: decklink: Add more modes 2011-06-03 19:41:33 -0700 David Schleef * configure.ac: * gst/inter/Makefile.am: * gst/inter/gstinter.c: * gst/inter/gstinteraudiosink.c: * gst/inter/gstinteraudiosink.h: * gst/inter/gstinteraudiosrc.c: * gst/inter/gstinteraudiosrc.h: * gst/inter/gstintersurface.c: * gst/inter/gstintersurface.h: * gst/inter/gstintertest.c: * gst/inter/gstintervideosink.c: * gst/inter/gstintervideosink.h: * gst/inter/gstintervideosrc.c: * gst/inter/gstintervideosrc.h: inter: new intermediate surface plugin This set of elements allows easily rendering audio and video to an intermediate surface that is then used as a source in a different pipeline. 2011-06-18 15:51:54 -0700 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: colorspace: Add JPEG YCbCr matrix 2011-06-18 15:56:49 -0700 David Schleef * ext/vp8/gstvp8enc.c: vp8enc: update for new libvpx api 2011-06-26 19:29:24 -0700 David Schleef * gst/y4m/gsty4mdec.c: y4mdec: Fix buffer duration 2011-06-26 15:15:54 +0200 Alexey Fisher * ext/vp8/gstvp8enc.c: vp8enc: generate a timestamp for alt-ref frames. It will fix handling of altref/invisible frames since matroska-mux drop any fram with no timestamp. see also: http://www.webmproject.org/code/specs/container/ The encoder will currently set the AR's timestamp as close as possible to the previous frame while attempting to provide a timestamp that is strictly increasing. In cases where the time base given to the encoder at configure time is not granular enough to allow for this the AR will share the same timestamp as D, but should be treated as having no duration. Fixes bug #652951 Signed-off-by: Alexey Fisher 2011-06-25 23:55:28 +0300 Raimo Järvi * configure.ac: wininet: Fix configure check by including windows.h Fixes bug #653161. 2011-06-07 13:55:38 +0300 Raimo Järvi * configure.ac: * sys/Makefile.am: * sys/d3dvideosink/Makefile.am: d3dvideosink: Fix configure check and makefiles Fixes bug #652035. 2011-06-25 15:12:45 -0700 David Schleef * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: tta: decrease rank to NONE Appears to be utterly incapable of parsing and decoding TTA streams. Hasn't been updated to do TTA2. If you want this element to work, fix the bloody thing. The gst-ffmpeg decoder works fine. Also fixed an obvious endianness issue along the way. Fixes: #652924 2011-06-18 17:47:36 +0200 Alexey Fisher * ext/vp8/gstvp8dec.c: vp8dec: add check if we have legal aspect-ratio before reset it. the commit f9b552f0494e (vp8dec: set par to 1/1) will fix situation where no aspect-ratio is set, but it brake stream with available aspect-ratio. This patch fix it. Fixes: #652902. Signed-off-by: Alexey Fisher 2011-06-23 20:11:55 +0100 Tim-Philipp Müller * gst/camerabin2/gstcamerabin2.c: camerabin2: don't use GLib 2.28 API Don't use GLib 2.28 API, we still only require >= 2.24. 2011-06-23 11:28:53 -0700 David Schleef * common: Automatic update of common submodule From 69b981f to 605cd9a 2011-06-22 22:25:18 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Set tagsetters to merge replace mode The default for tagsetters is to use merge keep mode, so tags would never be replaced and all captures would have the same tags. This commit watches all elements added into encodebin and sets all tagsetters to merge replace mode 2011-06-22 18:58:29 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * tests/check/elements/camerabin2.c: camerabin2: Use a single location for both modes Implement the location property just like it works in camerabin, the same location is used for both images and videos 2011-06-22 16:27:00 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Send serialized custom events for filename changes in image sink Using serialized custom events for switching image capture saving location makes camerabin2 save each capture correctly to the location that was set during the moment start-capture was called, and not the moment the filesink was writing to disk. This prevents captures to be overwriten by racyness among start-capture and setting location for images. 2011-06-22 15:56:26 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: No need to change state of the whole image branch We only need to change the state of the filesink to switch its saving location. This might still cause some problems of dropping captured buffers, but it is better than changing the state of the whole branch. 2011-06-22 15:37:44 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Use names for image and video encodebin Naming encodebins as image-encodebin and video-encodebin to make it easier for debugging camerabin2. 2011-06-17 17:26:37 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Remove unused variable 2011-06-17 14:32:35 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Adds new test to check image location correctness This new test checks that images are saved with the filename setting on location on the moment of the start-capture 2011-06-15 08:20:31 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Minor debug message fix 2011-05-13 11:25:18 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: examples: camerabin2: Adds performance measurement to gst-camerabin2-test Adds performance (timing) measure feature to gst-camerabin2-test, it allows users to specify some target values for commonly measured times and the application will print out a table of values at the end of its execution with the measured times and averages of them. 2011-06-22 10:13:38 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: legacyh264parse: create correct avc codec-data Fixes #653013. 2011-06-21 12:45:31 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: legacyh264parse: fix output caps alignment for avc input ... particularly when splitting packetized input. Fixes #652995. 2011-06-21 12:43:41 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: avc input must either pass-through or be split into bytestream chunks ... since parsing code is not meant to receive avc data. Fixes #653087. 2011-06-21 12:41:47 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: avoid bogus frame parsing state 2011-06-20 12:47:39 -0700 David Schleef * sys/decklink/DeckLinkAPI.h: * sys/decklink/DeckLinkAPIDispatch.cpp: decklink: update DeckLink API wrappers 2011-06-20 00:38:05 -0700 David Schleef * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: Add connection type 2011-06-05 21:19:58 -0700 Rafael Diniz * sys/decklink/capture.cpp: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: decklinksink: Add audio support Signed-off-by: David Schleef 2011-06-05 21:24:58 -0700 David Schleef * sys/decklink/capture.cpp: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklink.h: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: Add various features Better mode support, input source property, audio support. 2011-06-05 21:24:39 -0700 David Schleef * sys/decklink/capture.cpp: decklink: remove unused code 2011-06-05 21:17:04 -0700 David Schleef * sys/decklink/DeckLinkAPIDispatch.cpp: * sys/decklink/capture.cpp: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: decklink: reindent 2011-06-17 16:12:00 -0300 Thiago Santos * gst/mpegtsdemux/tsdemux.c: tsdemux: only free the index array if it exists Only free the array if it exists. Contains an unrelated indentation fix, courtesy of gst-indent 2011-06-18 01:11:05 +1000 Jan Schmidt * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: update docs generated files 2011-06-18 01:09:51 +1000 Jan Schmidt * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-rtmp.xml: * ext/rtmp/Makefile.am: * ext/rtmp/gstrtmp.c: * ext/rtmp/gstrtmpsink.c: * ext/rtmp/gstrtmpsink.h: * ext/rtmp/gstrtmpsrc.c: RTMP: add rtmpsink element for output to an RTMP server 2011-06-16 17:17:07 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/pipelines/colorspace.c: tests: add colorspace unit test Compares colorspace result with ffmpegcolorspace output using SSIM. Also probes for possible crashes for odd width and height image by applying all possible colorspace transformations. 2011-06-17 12:10:06 +0200 Mark Nauwelaerts * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstcompare.c: * gst/debugutils/gstcompare.h: debugutils: add compare element 2011-06-15 18:20:48 +0200 Mark Nauwelaerts * gst/colorspace/colorspace.c: colorspace: fix odd width and height handling in some fastpath cases 2011-06-16 19:06:03 -0400 Olivier Crête * sys/shm/shmpipe.h: shm: Improve documentation of internal shmpipe 2011-06-15 16:32:03 +0200 Wim Taymans * configure.ac: * gst/colorspace/Makefile.am: * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/colorspace.vcproj: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: * gst/colorspace/gstcolorspaceorc.orc: Moved 'colorspace' from -bad to -base 2011-06-15 16:06:36 +0200 Wim Taymans Merge branch 'master' into 0.11 Conflicts: android/aacparse.mk android/amrparse.mk android/h264parse.mk android/metadata.mk android/qtmux.mk android/sdpelem.mk configure.ac gst/qtmux/gstqtmux.c win32/common/config.h 2011-06-13 11:12:36 +0100 Tim-Philipp Müller * sys/wininet/gstwininetsrc.c: wininetsrc: don't use G_CONST_RETURN It's going to be deprecated really soon. 2011-06-12 12:55:40 +0200 Edward Hervey * gst/videoparsers/gstmpegvideoparse.c: videoparsers: Speed up the start code search algorithm Based on 96a7f9c8b1195129f0c2157cbbcbaa6cab45056e Makes it 3-4 times faster 2011-06-12 12:40:15 +0200 Edward Hervey * gst/videoparsers/gstmpegvideoparse.c: videoparsers: Fix sink pad template no wonder it was never picked up ... 2011-06-12 11:27:30 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't free unexistent PAT And cleanup find_timestamps a bit 2011-05-18 19:33:45 +0200 Edward Hervey * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/tsdemux.c: tsdemux: More fixes to handle non-188 byte packets 2011-05-15 14:04:45 +0200 Edward Hervey * gst/mpegtsdemux/payload_parsers.c: * gst/mpegtsdemux/payload_parsers.h: * gst/mpegtsdemux/tsdemux.c: mpegts: Stop scanning for keyframes as early as possible 2011-03-31 14:36:02 +0200 Janne Grunau * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: always try to seek for to a keyframe keyframe is expected to lie in the the next ~2500 ms 2011-03-23 18:50:25 +0100 Janne Grunau * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: fix timestamps in newsegement event after seeking 2011-03-30 11:26:18 +0200 Janne Grunau * gst/mpegtsdemux/payload_parsers.c: * gst/mpegtsdemux/payload_parsers.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: payload parsing for H.264 2011-03-28 10:20:43 +0200 Janne Grunau * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/payload_parsers.c: * gst/mpegtsdemux/payload_parsers.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: implement key_unit seeking for MPEG2 video 2011-03-22 16:49:13 +0100 Janne Grunau * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: accurate seeking * pes header parsing for pts is ugly, refactor * timestamps/newsegment after seeking is still off 2011-02-22 12:33:56 +0100 Janne Grunau * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: mpegtsdemux: push based seeking based on PCR buffer timestamps are converted to GstClockTime to cover pcr/pts wraps. multiple pcr/pts wraps are handled with an index which ensures at most a single pcr wraparound between two entries. the last seen pcr is recorded to have a nearby index point for short seeks resuming playback might be delayed if the postion is not a keyframe TODO: replace manual packet scanning and parsing in the initial duration estimation 2011-02-23 15:21:22 +0100 Janne Grunau * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: create function for pcr parsing 2011-04-11 14:53:28 +0200 Janne Grunau * gst/mpegtsdemux/mpegtspacketizer.c: mpegtsdemux: adaptation field length == 0 is valid it can be used to insert a single stuffing byte do not parse the following payload as adaptation field 2011-06-07 14:14:36 +0100 Tim-Philipp Müller * Makefile.am: Add gst/invtelecine to CRUFT_DIRS 2011-06-07 13:44:08 +0100 Tim-Philipp Müller * configure.ac: configure: require GLib >= 2.24 Make implicit requirement explicit. 2011-06-06 15:23:22 +0300 Stefan Kost * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/baseaudiovisualizer.c: tests: add a test for baseaudiovisualizer 2011-06-06 15:20:30 +0300 Stefan Kost * gst/audiovisualizers/gstbaseaudiovisualizer.c: baseaudiovisualizer: fix last block condition Also push out the last frame if we have exact amount of samples. Fix the adapter flushing to not cause endless loops. Drop a redundant avail() check. 2011-06-04 20:41:49 +0300 Stefan Kost * gst/audiovisualizers/README: audiovisualizers: add a README with comments and plans 2011-06-04 20:34:20 +0300 Stefan Kost * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-camerabin2.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-decklink.xml: * docs/plugins/inspect/plugin-divxdec.xml: * docs/plugins/inspect/plugin-divxenc.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faceoverlay.xml: * docs/plugins/inspect/plugin-fieldanalysis.xml: * docs/plugins/inspect/plugin-fragmented.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-linsys.xml: * docs/plugins/inspect/plugin-lv2.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-patchdetect.xml: * docs/plugins/inspect/plugin-sdi.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-video3d.xml: * docs/plugins/inspect/plugin-videofiltersbad.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-xvid.xml: docs: update inspect files 2011-06-04 16:12:40 +0300 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-audiovisualizers.xml: docs: add new audiovisualizers to the plugin docs 2011-06-04 15:56:15 +0300 Stefan Kost * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstwavescope.c: audiovisualizers: remove some not needed boilerplate 2011-06-04 15:52:44 +0300 Stefan Kost * gst/audiovisualizers/Makefile.am: * gst/audiovisualizers/gstspacescope.c: * gst/audiovisualizers/gstspacescope.h: * gst/audiovisualizers/plugin.c: audiovisualizers: add a spacescope element Add another element that maps left/right channel to x,y coordinates. 2011-06-04 15:38:46 +0300 Stefan Kost * gst/audiovisualizers/gstsynaescope.c: synaescope: tweak the algorithm Speed-up the calculation a bit. Keep a few values as doubles. Tune the scaling to get nices colors. 2011-06-04 14:37:04 +0300 Stefan Kost * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstsynaescope.c: audiovisualizers: doc-blob and comment updates 2011-06-04 14:33:29 +0300 Stefan Kost * gst/audiovisualizers/Makefile.am: * gst/audiovisualizers/gstbaseaudiovisualizer.c: * gst/audiovisualizers/gstbaseaudiovisualizer.h: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstspectrascope.h: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstsynaescope.h: * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: audiovisualizers: rename baseclass from basescope to baseaudiovisualizer 2011-06-04 14:25:57 +0300 Stefan Kost * configure.ac: * gst/audiovisualizers/Makefile.am: * gst/audiovisualizers/gstbasescope.c: * gst/audiovisualizers/gstbasescope.h: * gst/audiovisualizers/gstspectrascope.c: * gst/audiovisualizers/gstspectrascope.h: * gst/audiovisualizers/gstsynaescope.c: * gst/audiovisualizers/gstsynaescope.h: * gst/audiovisualizers/gstwavescope.c: * gst/audiovisualizers/gstwavescope.h: * gst/audiovisualizers/plugin.c: audiovisualizers: rename scopes plugin to audiovisualizers 2011-05-31 14:42:55 +0300 Stefan Kost * gst/scopes/gstspectrascope.c: * gst/scopes/gstsynaescope.c: scopes: fix elements descriptions 2011-05-30 23:45:17 +0300 Stefan Kost * gst/scopes/gstspectrascope.c: spectrascope: use add_pixel for non-white pixels https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-30 23:36:42 +0300 Stefan Kost * gst/scopes/Makefile.am: * gst/scopes/gstsynaescope.c: * gst/scopes/gstsynaescope.h: * gst/scopes/plugin.c: scopes: add a new element similar to synaesthesia https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-28 23:22:59 +0300 Stefan Kost * gst/scopes/gstspectrascope.c: * gst/scopes/gstwavescope.c: scopes: draw pixels with signle 32bit writes https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-28 14:36:51 +0300 Stefan Kost * gst/scopes/gstbasescope.c: * gst/scopes/gstbasescope.h: basescope: add more shading effects https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-28 14:08:05 +0300 Stefan Kost * gst/scopes/gstbasescope.c: * gst/scopes/gstbasescope.h: basescope: add a property to modify the ammount of shading Add another property to specify the shading per color channel. Fix endianess issues in the shading code. https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-27 23:25:00 +0300 Stefan Kost * gst/scopes/Makefile.am: * gst/scopes/gstbasescope.c: * gst/scopes/gstbasescope.h: * gst/scopes/plugin.c: basescope: add a backbuffer and apply shading effects Keep the last frame and apply shade and geometry effects. Expose the shading effects as a controllable gobject property on the baseclass. https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-27 23:12:00 +0300 Stefan Kost * gst/scopes/gstbasescope.c: * gst/scopes/gstbasescope.h: * gst/scopes/gstspectrascope.c: basescope: allow subclasses telling how many sample they need per frame This allows e.g. FFT based elements to require enough data. If they need more data than what we get, we flush less from the adapter. https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-27 22:53:10 +0300 Stefan Kost * gst/scopes/gstbasescope.c: basescope: remove some comments Those comments where pointing to example calls that we do in the subclass. https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-27 14:43:51 +0300 Stefan Kost * gst/scopes/Makefile.am: * gst/scopes/gstspectrascope.c: * gst/scopes/gstspectrascope.h: * gst/scopes/plugin.c: scopes: add a simple fft based scope Add a 2nd demo scope that uses a fft. https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-05-27 11:14:19 +0300 Stefan Kost * configure.ac: * gst/scopes/Makefile.am: * gst/scopes/gstbasescope.c: * gst/scopes/gstbasescope.h: * gst/scopes/gstwavescope.c: * gst/scopes/gstwavescope.h: * gst/scopes/plugin.c: scopes: first version of a scopes plugin using a new baseclass Add a new baseclass for writing visualisation plugins. Provide a simple wave oscilloscope as a first subclass. https://bugzilla.gnome.org/show_bug.cgi?id=651536 2011-04-29 13:33:43 +0200 Edward Hervey * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: Avoid double scanning of pictures The incoming data has already been scanned in mpeg_packetizer_add_buf. We can therefore stop scanning for picture data as soon as we've parsed the header. Makes mpegvideoparse 2 times faster. https://bugzilla.gnome.org/show_bug.cgi?id=648933 2011-06-05 13:56:08 -0700 Levente Farkas * sys/directdraw/gstdirectdrawplugin.c: directdrawsink: lower rank to secondary Signed-off-by: David Schleef 2011-06-05 13:38:46 -0700 Levente Farkas * sys/d3dvideosink/directx/dx.h: d3dvideosink: compile fix Signed-off-by: David Schleef 2011-06-05 10:34:28 -0700 David Schleef * configure.ac: * gst/invtelecine/Makefile.am: * gst/invtelecine/gstinvtelecine.c: invtelecine: Remove in favor of fieldanalysis 2011-06-04 18:54:16 -0700 David Schleef * sys/directdraw/gstdirectdrawsink.c: directdrawsink: Handle pixel-aspect-ratio Fixes: #651779. From Raimo Järvi. 2011-06-04 18:43:45 -0700 David Schleef * configure.ac: * sys/Makefile.am: * sys/d3dvideosink/Makefile.am: * sys/d3dvideosink/d3dvideosink.c: * sys/d3dvideosink/d3dvideosink.h: * sys/d3dvideosink/directx/d3d.c: * sys/d3dvideosink/directx/d3d.h: * sys/d3dvideosink/directx/directx.h: * sys/d3dvideosink/directx/directx10/dx10.c: * sys/d3dvideosink/directx/directx10/dx10.h: * sys/d3dvideosink/directx/directx10/dx10_d3d.c: * sys/d3dvideosink/directx/directx10/dx10_d3d.h: * sys/d3dvideosink/directx/directx11/dx11.c: * sys/d3dvideosink/directx/directx11/dx11.h: * sys/d3dvideosink/directx/directx11/dx11_d3d.c: * sys/d3dvideosink/directx/directx11/dx11_d3d.h: * sys/d3dvideosink/directx/directx9/dx9.c: * sys/d3dvideosink/directx/directx9/dx9.h: * sys/d3dvideosink/directx/directx9/dx9_d3d.c: * sys/d3dvideosink/directx/directx9/dx9_d3d.h: * sys/d3dvideosink/directx/dx.c: * sys/d3dvideosink/directx/dx.h: d3dvideosink: Add plugin Fixes #651782. Patch from various authors, by way of ossbuild. 2011-06-04 14:04:44 -0700 David Schleef * gst/liveadder/liveadder.c: * gst/mxf/mxfmux.c: * gst/videomeasure/gstvideomeasure_ssim.c: Work around changes in g_atomic API See #651514 for details. 2011-06-04 13:51:20 -0700 David Schleef * sys/vdpau/h264/gsth264frame.c: vdpau: remove old glib compatibility code 2011-06-03 19:36:59 -0700 David Schleef * ext/vp8/gstvp8dec.c: vp8dec: set par to 1/1 2011-06-03 19:36:12 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Better handling of invalid par 2011-05-30 17:03:14 -0700 David Schleef * gst/videofilters/gstvideofilter2.c: videofilter2: Fix copyright 2011-06-04 20:35:03 +0100 Tim-Philipp Müller * gst/dvdspu/gstspu-pgs.c: * gst/invtelecine/gstinvtelecine.c: * gst/jpegformat/gstjpegparse.c: * gst/librfb/rfbdecoder.c: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstpesfilter.c: * gst/mpegdemux/mpegtspacketizer.c: gst: some more unused-but-set-variable warning fixes 2011-05-30 17:54:26 +0530 Debarshi Ray * ext/cog/gstcogdownsample.c: * ext/cog/gstcogscale.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: * gst/nsf/gstnsf.c: * gst/patchdetect/gstpatchdetect.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdimux.c: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstvideofilter2.c: * gst/videofilters/gstzebrastripe.c: * gst/videoparsers/gstdiracparse.c: * gst/y4m/gsty4mdec.c: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksrc.cpp: * sys/fbdev/gstfbdevsink.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisrc.c: Remove unused but set variables This is needed to satisfy the new -Wunused-but-set-variable added in GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html 2011-05-09 14:35:42 -0300 Luciana Fujii Pontello * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: camerabin2: Adding a filter to wrappercamerabinsrc Camerabin2 allows setting a filter for image, video or viewfinder, but not one filter for all three at the same time. I added a filter to wrappercamerabinsrc to allow setting a global filter when using this source. https://bugzilla.gnome.org/show_bug.cgi?id=649822 2011-05-26 00:09:28 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: remove unused var 2011-05-25 23:29:25 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * tests/check/elements/camerabin2.c: * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: Use full names in properties Improve API by using source instead of src in properties 2011-05-23 13:36:27 +0300 Teemu Katajisto * gst/camerabin2/gstcamerabin2.c: camerabin2: do not unref pad template 2011-05-29 13:16:21 +0200 Alessandro Decina * configure.ac: configure.ac: fix avc check so that it tries to link to AVCVideoServices Avoids avc plugin from being built when AVCVideoServices is not installed 2011-05-26 12:23:01 +0300 Lasse Laukkanen * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: Add --image-formatter command-line option Add command-line option to gst-camerabin-test for configuring camerabin metadata formatter element. 2011-05-31 13:08:00 +0200 Sebastian Dröge * tests/check/elements/faac.c: faac: Fix unit test after latest faac changes 2011-05-31 12:55:45 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Fix scanning on small files We were previously: * Stopping early in the initial PCR scan * Giving a negative offset for the second PCR scan 2011-05-31 12:54:43 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Don't call program_stopped with a NULL program 2011-05-19 12:55:30 +0200 Edward Hervey * gst/h264parse/gsth264parse.c: legacyh264parse: Delay pushing buffers until we have width/height 2011-05-27 11:13:08 +0300 Stefan Kost * ext/zbar/gstzbar.c: zbar: remove template stamp comment 2011-05-30 23:43:39 -0700 David Schleef * gst/bayer/Makefile.am: * gst/bayer/gstbayer2rgb.c: * gst/bayer/gstbayerorc-dist.c: * gst/bayer/gstbayerorc-dist.h: * gst/bayer/gstbayerorc.orc: bayer2rgb: Convert to Orc Seriously faster. Algorithm is nearly the same as bilinear, which given the speed of this code, should be considered the baseline of quality. Speed appears to be limited by memory bandwidth, so I didn't bother trying to make it any faster. 2011-05-30 16:56:33 -0700 David Schleef * gst/bayer/gstbayer2rgb.c: bayer2rgb: Rewrite signal processing. Much faster. 2011-05-30 17:54:26 +0530 Debarshi Ray * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst/camerabin/gstcamerabin.c: Remove unused but set variables This is needed to satisfy the new -Wunused-but-set-variable added in GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html 2011-05-30 13:01:54 +0200 Edward Hervey * gst/dvdspu/gstdvdspu.c: Revert "dvdspu: Fix pad templates" This reverts commit 732828e31cbace59e6ce4f262b8339e43ed0c631. It was in fact an issue in core 2011-05-30 13:01:20 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Protect against program being removed 2011-05-30 12:27:37 +0200 Sebastian Dröge * gst/faceoverlay/Makefile.am: faceoverlay: Add gst-plugins-base CFLAGS and LIBS to fix compilation 2011-05-30 12:24:31 +0200 Laura Lucas Alday * configure.ac: * gst/faceoverlay/Makefile.am: * gst/faceoverlay/gstfaceoverlay.c: * gst/faceoverlay/gstfaceoverlay.h: faceoverlay: Add element that displays an SVG image over a detected face Fixes bug #642759. 2011-05-30 08:48:29 +0200 Tom Deseyn * ext/directfb/dfbvideosink.c: dfbvideosink: Also consider non-accelerated DirectFB surfaces Fixes bug #631390. 2010-09-02 23:31:23 +0300 Martin Storsjo * sys/qtwrapper/audiodecoders.c: qtwrapper: Decode audio until all input data is consumed The special return value is returned from our buffer callback when all input data has been consumed. 2011-05-03 14:14:20 +0300 Martin Storsjo * sys/qtwrapper/audiodecoders.c: qtwrapper: Replace the hackish 42 magic number with a define 2011-05-30 08:43:59 +0200 Julien MOUTTE * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.h: dshowdecwrapper: Fix COM initialization Fixes bug #625190. 2011-05-30 08:43:40 +0200 Julien MOUTTE * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowutil.h: * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdecwrapper: Fix element registration using data in the type instead of a global 2011-05-29 18:16:49 +0200 Edward Hervey * gst/dvdspu/gstdvdspu.c: dvdspu: Fix pad templates Our caps intersection code is a bit too touchy about what an element returns compared to its pad templates. 2011-05-29 13:05:31 +0200 Alessandro Decina * gst/videoparsers/h264parse.c: h264parse: check for out of range pps_id one layer up 2011-05-29 13:03:38 +0200 Alessandro Decina * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/videoparsers/gstmpegvideoparse.c: mpeg4videoparse: fix compiler warnings 2011-05-29 12:54:40 +0200 Alessandro Decina * gst/h264parse/gsth264parse.c: legacyh264parse: check for out of range pps_id one layer up Fixes compiler warning comparing guint8 and MAX_PPS_COUNT which is > G_MAXUINT8 2011-05-27 11:05:46 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: * gst/debugutils/Makefile.am: Fix missing header file and update spec to work around current compiler issues 2011-05-27 10:44:28 +0100 Tim-Philipp Müller * ext/faac/Makefile.am: faac: fix CFLAGS and LIBS order in Makefile.am 2011-05-27 10:44:42 +0200 Sebastian Dröge * ext/faac/gstfaac.c: faac: Set the correct, valid sample rates in the pad template caps 2011-05-27 10:41:02 +0200 Sebastian Dröge * ext/voaacenc/gstvoaacenc.c: voaacenc: Make sure to also return only a subset of the pad template caps in getcaps 2011-05-27 10:35:31 +0200 Sebastian Dröge * ext/voaacenc/gstvoaacenc.c: voaacenc: Set the correct, valid sample rates in the pad template caps 2011-05-27 10:32:26 +0200 Sebastian Dröge * ext/voaacenc/gstvoaacenc.c: voaacenc: The encoder library currently only supports 1 or 2 channels 2011-05-27 10:31:07 +0200 Sebastian Dröge * ext/voaacenc/Makefile.am: * ext/voaacenc/gstvoaacenc.c: voaacenc: Add profile and level to the caps Fixes bug #650595. 2011-05-27 10:11:32 +0200 Sebastian Dröge * ext/faac/Makefile.am: * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: Add the profile and level to the caps Also negotiate the profile from the downstream peer caps instead of using a property. Fixes bug #650594. 2011-05-27 09:40:38 +0200 Sebastian Dröge * ext/faac/gstfaac.c: faac: Use PROP_ instead of ARG_ for the property enums 2011-05-26 09:59:35 +0200 Sebastian Dröge * gst/debugutils/gstdebugspy.c: debugspy: Use G_PARAM_STATIC_STRINGS 2011-01-14 17:42:50 +0100 Guillaume Emont * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstdebugspy.c: * gst/debugutils/gstdebugspy.h: debugspy: add new element This element allows you to get information about buffers with bus messages. It provides the same kind of information as identity does through a notify signal on a string property, but in a more programmer-friendly way. 2011-05-26 09:46:58 +0200 Gabriel Strimtu * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Fix parsing of PSI table IDs Fixes bug #635917. 2011-05-26 09:22:31 +0200 Sebastian Dröge * ext/dc1394/gstdc1394.c: dc1394src: Implement LATENCY query Based on the LATENCY query code in v4l2src and the patch by Tristan Matthews. Fixes bug #625520. 2011-05-25 23:14:27 +0300 Stefan Kost * tests/check/Makefile.am: tests: blacklist more sys elements from the state tests Also wrap the list of blacklisted elements and trim some whitespace. 2011-05-25 23:13:17 +0300 Stefan Kost * ext/lv2/gstlv2.c: lv2: ensure uniqe property names Copy and adjust the code from ladspa plugin to ensure unique gobject property names. 2011-05-25 20:52:09 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/h263parse.c: * tests/check/elements/h264parse.c: * tests/check/elements/mpeg4videoparse.c: * tests/check/elements/mpegvideoparse.c: tests: add unit tests for a number of video parsers 2011-05-25 20:49:05 +0200 Mark Nauwelaerts * tests/check/elements/parser.c: tests: additional offset tracking in parser test helper 2011-05-25 20:48:38 +0200 Mark Nauwelaerts * tests/check/elements/parser.c: * tests/check/elements/parser.h: tests: additional parameterization for parser test helper Allow context callbacks to perform custom buffer verification and custom element setup. Also move some static tracking variables into helper struct and expose the latter struct for use by unit test (callbacks). 2011-05-25 15:26:05 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: plug some more buffer leaks 2011-05-25 13:53:55 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: compensate for skipped bytes in parsing state offsets 2011-05-25 13:53:21 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: fix clearing adapter forming avc output frame ... which needs to be reset upon a new frame and otherwise (only) for avc input in passthrough mode (rather than on every chain call). 2011-05-25 11:50:07 +0200 Mark Nauwelaerts * gst/videoparsers/h264parse.c: * gst/videoparsers/h264parse.h: h264parse: handle all valid pps_id ... which are in range 0-255. 2011-05-15 13:23:39 +0200 Alessandro Decina * gst/videoparsers/gsth264parse.c: h264parse: allow full negotiation for packetized input ... by defaulting to allow splitting packetized input and having negotiation with downstream deciding whether or not this applies. Also enable pass-through parsing mode if input and output format (stream-format and alignment) match. API: GstH264Parse:split-packetized (removed) Fixes #650228. 2011-05-24 21:50:52 +0200 Mark Nauwelaerts * gst/videoparsers/gsth263parse.c: * gst/videoparsers/h263parse.c: h263parse: also extract width and height into caps 2011-04-21 22:42:45 +0200 Víctor Manuel Jáquez Leal * tests/check/elements/jpegparse.c: jpegparse: unit test for APP1/exif & comment parsing https://bugzilla.gnome.org/show_bug.cgi?id=648478 2011-05-25 14:42:38 +0100 Tim-Philipp Müller * configure.ac: * ext/mpeg2enc/gstmpeg2encoder.cc: mpeg2enc: fix build with 1.9.0 release again after recent fixes for mjpegtools 2.0.0 https://bugzilla.gnome.org/show_bug.cgi?id=650970 2011-05-25 15:10:19 +0200 Andreas Frisch * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix pointer output in stream-not-associated debug output https://bugzilla.gnome.org/show_bug.cgi?id=651050 2011-05-24 15:42:44 +0200 Götz Waschk * ext/mpeg2enc/gstmpeg2encoder.cc: mpeg2enc: support mjpegtools 2.0 This adds conditional includes for the renamed headers in mjpegtools 2.0. Fixes: #650970. 2011-05-23 17:29:56 +0200 Sebastian Dröge * ext/xvid/gstxviddec.c: xviddec: Add video/mpeg,mpegversion=4 to the caps Fixes bug #609639. 2011-05-20 17:06:49 +0300 Lasse Laukkanen * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinimage.h: * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * tests/check/elements/camerabin.c: camerabin: Add image-formatter property Add image-formatter property in order to let application configure the formatter element for metadata. 2011-05-23 13:54:35 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4parse.c: mpeg4videoparse: additional debug tracing 2011-05-23 12:06:01 +0200 Mark Nauwelaerts * gst/videoparsers/Makefile.am: * gst/videoparsers/gstmpegvideoparse.c: * gst/videoparsers/gstmpegvideoparse.h: * gst/videoparsers/mpegvideoparse.c: * gst/videoparsers/mpegvideoparse.h: * gst/videoparsers/plugin.c: videoparsers: add new mpegvideoparse 2011-05-23 12:02:00 +0200 Mark Nauwelaerts * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: rename to legacympegvideoparse 2011-05-18 09:47:43 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: avoid stale parsing state 2011-05-17 22:42:45 +0200 Mark Nauwelaerts * gst/videoparsers/gsth263parse.c: h263parse: simplify minimum frame size handling 2011-05-17 22:42:29 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: simplify minimum frame size handling 2011-05-17 22:39:19 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: simplify minimum frame size handling 2011-05-17 22:18:51 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: avoid stale parsing state 2011-05-12 12:07:39 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/Makefile.am: * gst/mpeg4videoparse/mpeg4parse.c: * gst/mpeg4videoparse/mpeg4parse.h: * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpeg4videoparse/mpeg4videoparse.h: mpeg4videoparse: port to baseparse 2011-05-23 15:03:18 +0200 Mark Nauwelaerts * configure.ac: configure.ac: bump -core/-base requirement to 0.10.34.1 ... since latest baseparse API is required for videoparsers. 2011-05-23 14:41:27 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: gracefully handle truncated input NAL units Rather than assert'ing in such case, emit warning if the length of a NAL unit is less than expected 2 and discard it. Based on patch by Benjamin M. Schwartz Fixes #650416. 2011-05-23 16:47:31 +0200 Vincent Génieux * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: Add timeout property and use GstPoll instead of poll This allows to use much higher timeout values because GstPoll is interruptible and keeps the number of wakeups during signal loss lower. Fixes bug #608171. 2011-05-23 14:58:08 +0100 Christian Fredrik Kalager Schaller * ext/openal/Makefile.am: * gst-plugins-bad.spec.in: fix build of openal plugin from disted tarball 2011-05-23 15:32:09 +0200 Sebastian Dröge * ext/teletextdec/gstteletextdec.c: * ext/teletextdec/gstteletextdec.h: * ext/teletextdec/teletext.c: teletextdec: Minor cleanup and indention fixes 2011-05-23 15:20:45 +0200 Sebastian Dröge * ext/teletextdec/gstteletextdec.c: teletextdec: Don't use GST_FLOW_IS_FATAL() 2011-05-23 15:14:04 +0200 Sebastian Dröge * ext/teletextdec/gstteletextdec.c: teletextdec: Fix buffer data leak 2010-09-10 14:34:42 +0200 Andoni Morales Alastruey * ext/teletextdec/gstteletextdec.c: * ext/teletextdec/gstteletextdec.h: teletextdec: Add support for pango https://bugzilla.gnome.org/show_bug.cgi?id=619739 2010-06-10 12:44:27 +0200 Andoni Morales Alastruey * ext/teletextdec/gstteletextdec.c: * ext/teletextdec/gstteletextdec.h: teletextdec: add a new method to convert a page in a list of strings https://bugzilla.gnome.org/show_bug.cgi?id=619739 2010-09-09 16:41:32 +0200 Andoni Morales Alastruey * ext/teletextdec/gstteletextdec.c: teletextdec: add some data in the preroll buffer https://bugzilla.gnome.org/show_bug.cgi?id=619739 2010-06-10 13:55:30 +0200 Andoni Morales Alastruey * ext/teletextdec/gstteletextdec.c: teletextdec: fix deadlock on a stream error https://bugzilla.gnome.org/show_bug.cgi?id=619739 2010-06-10 12:42:42 +0200 Andoni Morales Alastruey * ext/teletextdec/gstteletextdec.c: teletextdec: don't try to push an event on a pad that returned an error https://bugzilla.gnome.org/show_bug.cgi?id=619739 2010-09-13 11:59:18 +0200 Andoni Morales Alastruey * configure.ac: * ext/Makefile.am: * ext/teletextdec/Makefile.am: * ext/teletextdec/gstteletextdec.c: * ext/teletextdec/gstteletextdec.h: * ext/teletextdec/teletext.c: teletextdec: New teletext decoder plugin based in zvbi https://bugzilla.gnome.org/show_bug.cgi?id=619739 2011-05-23 14:14:09 +0200 Sebastian Dröge * ext/openal/Makefile.am: * ext/openal/gstopenal.c: * ext/openal/gstopenalsrc.c: * ext/openal/gstopenalsrc.h: openal: Add new openalsrc element Based on patches by Victor Lin Fixes bug #550230. 2011-05-23 13:41:36 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/openal/Makefile.am: * ext/openal/gstopenal.c: * ext/openal/gstopenalsink.c: * ext/openal/gstopenalsink.h: openal: Add new OpenAL sink element Based on a patch by Chris Robinson Fixes bug #615615. 2011-05-20 15:25:08 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Do not segfault on null locations Prevent capture from starting when saving location is set to NULL 2011-05-20 13:04:54 +0300 Stefan Kost * sys/dvb/camapplicationinfo.c: camapplicationinfo: fix possible array overrun 2011-05-20 09:58:50 +0200 Rafael Diniz * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: mpeg[pt]sdemux: Add support for AAC LATM/LOAS streams Fixes bug #615681. 2011-05-19 08:05:14 +0200 W. Michael Petullo * ext/apexsink/gstapexraop.c: * ext/apexsink/gstapexraop.h: * ext/apexsink/gstapexsink.c: * ext/apexsink/gstapexsink.h: apexsink: Add support for generation 2 AirTunes hardware Fixes bug #649931. 2011-05-20 00:35:55 +0300 Stefan Kost * tests/examples/mxf/mxfdemux-structure.c: mxf-example: fix the { } scope 2011-05-20 00:20:07 +0300 Stefan Kost * gst/festival/gstfestival.c: festival: don't leak fd on error 2011-05-20 00:16:00 +0300 Stefan Kost * gst/librfb/vncauth.c: librfb: don't leak password on error 2011-05-19 23:57:38 +0300 Stefan Kost * docs/plugins/Makefile.am: docs: remove obsolete commented out part We don't have this in the other modules and its not needed. 2011-05-19 23:50:47 +0300 Stefan Kost * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: docs: update plugin introspection data Now more files are merged and produced in a canonical fashion, which hopefully creates less or no delta in the future. 2011-05-19 22:58:10 +0300 Stefan Kost * common: Automatic update of common submodule From 9e5bbd5 to 69b981f 2011-05-19 14:58:22 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: examples: Add video-device argument Adds an argument to select which video device should be used on the video source element in camerabin2 2011-05-19 14:52:22 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: examples: Fix typo from previous commit The property is audio-src and not audio-source 2011-05-19 14:32:02 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: examples: Add audio-source parameter to gst-camerabin2-test Adds an option to select the audio source to be used on video recordings on camerabin2 test application 2011-05-19 14:23:59 -0300 Thiago Santos * configure.ac: configure: add missing [ Adds missing [ to configure on the CDAUDIO pkg config check 2011-05-19 18:45:25 +0300 Stefan Kost * ext/jp2k/gstjasperenc.c: jasperenc: remove unused 'mimetype' variable As mimetype is not used, we don't need to fetch it and therefore neither need the structure s. 2011-05-19 15:26:38 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update spec file to fit with latest upstream spec files 2011-05-18 15:44:06 -0400 Olivier Crête * sys/shm/gstshmsink.c: * sys/shm/shmpipe.c: shm: Make gcc 4.6 happy Remove warnings due to initialized but never used warnings 2011-05-18 13:35:34 -0700 David Schleef * gst/h264parse/gsth264parse.h: h264parse: max pps is 255 Fixes #650484. 2011-05-12 22:54:44 +0300 Brian Gitonga Marete * sys/decklink/gstdecklinksrc.h: decklink: Change counters to 64 bit unsigned integers. 2011-05-10 16:14:32 -0700 David Schleef * configure.ac: configure: switch libcdaudio to pkg-config 2011-04-24 19:11:36 -0700 David Schleef * gst/mpegtsmux/mpegtsmux_aac.c: * gst/mpegtsmux/mpegtsmux_h264.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: use gst debug for tsmux library 2011-04-19 15:04:05 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: avc: avcsrc is always enabled 2011-04-19 15:01:15 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: avc: Include 200 bus cycles in each buffer (about 300 TS packets) 2011-04-19 15:00:53 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: avc: Emit a single buffer per callback 2011-04-19 13:53:54 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: * sys/avc/gstavcsrc.h: avc: Track the number of enqueued and dequeued packets 2011-04-19 13:53:23 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: avc: Dump timestamp information 2011-04-18 15:37:57 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: * sys/avc/gstavcsrc.h: avc: Save AVC objects in the GstAVCSrc object and stop them when the pipeline is stopped 2011-04-18 15:16:00 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: avc: Cycle and packet are unsigned 2011-04-18 15:15:28 -0400 Quentin Smith * sys/avc/gstavcsrc.cpp: avc: avcsrc is a live source 2011-04-18 15:14:55 -0400 Quentin Smith * sys/avc/Makefile.am: avc: Look in AVCVideoServices for headers 2011-04-18 12:28:52 -0700 David Schleef * configure.ac: avc: attempt new configure 2011-04-16 19:42:00 -0700 David Schleef * configure.ac: * sys/Makefile.am: * sys/avc/Makefile.am: * sys/avc/gstavcplugin.cpp: * sys/avc/gstavcsrc.cpp: * sys/avc/gstavcsrc.h: avc: Add AVC Video Services plugin for OS/X 2011-05-18 16:10:40 +0300 Stefan Kost * common: Automatic update of common submodule From fd35073 to 9e5bbd5 2011-05-18 13:27:20 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Name max/min quantizer properties {max,min}-quantizer Also improve quality property description. 2011-05-18 13:26:23 +0200 Alexey Fisher * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: Add properties to select a maximum and minimum quantizer Fixes bug #641405. 2011-05-18 13:18:58 +0200 Alexey Fisher * ext/vp8/gstvp8enc.c: vp8enc: Fix quality to (constant) quantizer mapping This now allows to select all possible quantizers between 0 and 63. See bug #641405. 2011-05-18 12:24:47 +0300 Stefan Kost * common: Automatic update of common submodule From 46dfcea to fd35073 2011-04-28 15:59:38 +0300 Stefan Kost * ext/mplex/gstmplex.cc: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstsquare.c: * gst/mpegtsdemux/tsdemux.c: * sys/shm/gstshmsrc.c: various: fix author tag in element details 2011-04-27 16:56:09 +0300 Stefan Kost * tools/element-templates/audiofilter: element-templates: improve the audiofilter template Add comments. Add start/stop methods. Add (commented) instance casts at the begin of the method. Make transform_ip returning FLOW_OK by default. 2011-04-27 16:51:55 +0300 Stefan Kost * tools/gst-element-maker: element-maker: improve plugin_init() Return the result of gst_element_register(). Use the TYPE macro instead of the _get_type() function. 2011-05-12 11:57:19 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: fix some buffer leaks Fixes #650323. 2011-05-12 11:56:52 +0200 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: fixup boilerplate and debug code style 2011-05-13 17:18:52 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstimagecapturebin.h: * gst/camerabin2/gstplugin.c: * tests/check/Makefile.am: * tests/check/elements/imagecapturebin.c: camerabin2: Remove obsolete imagecapturebin imagecapturebin has been replaced by encodebin, no need for it anymore 2011-05-13 16:27:17 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: use jpeg as a container to force jifmux usage Jifmux should be used as it can do xmp/exif tagging, so this patch sets jpeg as a container to force it to be used together with a jpeg encoder 2011-05-12 11:17:28 +0000 Alessandro Decina * gst/camerabin2/gstcamerabin2.c: camerabin2: do proper EOS handling on send_event(eos) We first let the inner camera EOS. Then we manually post EOS on the image and video sinks if those are <= READY and so have ignored EOS events. 2011-04-28 15:11:36 +0200 Alessandro Decina * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * tests/check/elements/camerabin2.c: camerabin2: use encodebin to encode images 2011-05-13 15:16:14 -0300 Thiago Santos * gst/jpegformat/gstjpegformat.c: jifmux: Bump rank to secondary jifmux is being used for quite some time and has no open bugs currently, so we can give it a secondary rank at least. Fixes #649391 2011-05-13 15:15:53 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Change class to formatter jifmux is a formatter and not a muxer Fixes #649391 2011-05-13 09:11:35 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: examples: camerabin2: Fix GOptionEntry array Use no flags instead of passing G_OPTION_ARG_OPTIONAL to options that must have an argument 2011-05-12 11:39:51 -0300 Thiago Santos * tests/examples/camerabin2/Makefile.am: camerabin2: examples: build fixes Add some missing dependencies 2011-05-11 18:35:40 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Changing how some properties work Some properties (like viewfinder-filter) only are taken into use on NULL->READY transitions and the get/set property was returning the currently in use value, instead of the last set. This is bad, as after setting 'a' to 'x', you expect that getting 'a' will return 'x'. This patch fixes it. If needed, later we could add current-* properties that are readonly and get the current value in use. 2011-04-29 08:54:56 -0300 Lasse Laukkanen * gst/camerabin2/PORTING: camerabin2: Updating PORTING file 2011-04-28 16:05:53 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstviewfinderbin.c: camerabin2: Adding missing plugin error messages Whenever a required plugin is missing, camerabin2 should post a missing plugin message to the bus 2011-04-28 14:37:22 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: encodebin might not have the requested pad handle the case where encodebin doesn't have the pad camerabin2 is requesting, either because of its current profile or because of missing elements, making it fail to provide the pad 2011-04-27 15:12:18 -0300 Lasse Laukkanen * tests/examples/camerabin2/gst-camerabin2-test.c: examples: camerabin2: Add more arguments Add command-line options for setting image-capture, viewfinder and video-capture caps as strings. The width and height properties are now used only if these new caps properties aren't set. 2011-04-26 15:21:34 -0300 Thiago Santos * gst/camerabin2/gstimagecapturebin.c: camerabin2: imagecapturebin: Fix tags merging mode Use merge replace mode to allow new tags to override old ones and fix the use case where the last sent tags should be serialized to the captured images. 2011-04-26 14:53:35 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Fix tag handling for videos In video mode the tags should be pushed after sending the start capture to the source, this allows the video recording elements to be reset and leave the flushing state they were at after a previous capture. This fixes the problem where tags only work for the first video capture 2011-04-26 14:50:29 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Fix set but unused variable warnings 2011-04-26 14:49:35 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Fix tags setting tests Fixes the tags setting tests to reveal a bug in camerabin2 tag setting logic. 2011-04-25 16:04:26 -0300 Thiago Santos * gst/camerabin2/camerabin2-src.txt: camerabin2: Adding camera source documentation file Adds a small text file with a brief description of what is expected from a camerabin2 source element 2011-04-11 15:33:20 -0300 Lauri Lehtinen * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: basecamerabinsrc: Handle errors from preview pipeline Implements a message handling function to preview pipeline bus. If GST_MESSAGE_ERROR is seen, considers preview pipeline unable to do its job and posts an error message to application. Sets pipeline element to NULL so that subsequent calls to post_preview and set_caps functions just returns without pushing anything to the disposed preview pipeline. Leaves further actions to the application. 2011-04-08 09:22:11 -0300 Lauri Lehtinen * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: basecamerabinsrc: Protection for previewpipeline when setting new preview caps Implements a state indicating flag to preview pipeline, so that new caps are not set if the pipeline is processing a preview. The caps are set as pending and applied when the next preview post is called. In this case a wait was implemented in the post_preview function, so that new preview image buffer will wait until the other previews have been posted to the application and the new caps can be used safely. 2011-03-29 13:46:09 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: examples: camerabin2: Fix compile problem with debug disabled 2011-03-23 18:41:02 -0300 Thiago Santos * gst/camerabin2/gstviewfinderbin.c: camerabin2: viewfinderbin: Post missing plugin messages Makes viewfinderbin post missing plugin messages when it can't create an internal elements 2011-03-23 18:40:03 -0300 Thiago Santos * gst/camerabin2/camerabingeneral.c: camerabin2: Improve missing plugin message Improves the message text for missing plugin messages from camerabin2 2011-03-23 17:46:56 -0300 Thiago Santos * gst/camerabin2/PORTING: camerabin2: Update porting file Update porting file with mention that stop-capture is now async. 2011-04-08 17:58:42 +0200 Robert Swain * tests/examples/camerabin2/gst-camerabin2-test.c: gst-camerabin2-test: Allow gst-launch pipelines for sinks Use gst_parse_launch () to parse the sink strings to allow specification of properties to sinks and of more advanced sink graphs. 2011-04-04 13:28:32 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: camerabin2: Fix debug print to show audio/video depending on pad type 2011-03-31 13:08:48 +0200 Robert Swain * gst/camerabin2/gstcamerabin2.c: camerabin2: Fix order of element state change To change the state of elements in a pipeline, we should mirror the behaviour of GstBin which starts at the sink element and works its way upstream. 2011-04-01 22:13:55 +0200 Mark Nauwelaerts * ext/vp8/gstvp8dec.c: vp8dec: debug code style fixes 2011-04-01 22:13:00 +0200 Mark Nauwelaerts * ext/vp8/gstvp8dec.c: vp8dec: propagate downstream flow return to upstream 2011-04-03 22:35:13 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: handle missing framerate when calculating timestamp 2011-04-03 22:32:20 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: debug code style fixes 2011-04-01 22:12:30 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: tune parsing sink caps into video state ... to provide subclass with more information w.r.t. original caps. 2011-04-01 18:49:10 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: video state reference to codec_data is not refcounted ... but rather implicitly valid as long as sink caps are not modified. 2011-04-01 18:00:11 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: improve glitch resilience Provide a replacement for GST_ELEMENT_ERROR to avoid aborting at the first atom out of place, while on the other hand not failing indefinitely. 2011-03-31 14:47:55 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: reverse playback support 2011-03-30 10:28:08 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: use basevideocodec discont field 2011-03-30 10:18:23 +0200 Mark Nauwelaerts * ext/schroedinger/gstschrodec.c: * ext/vp8/gstvp8dec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: really and only set src pad caps whenever requested ... since subclass is expected to be wise enough to know when to do so. 2011-03-30 09:17:22 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: add some sanity enforcing 2011-03-30 09:15:13 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: add documentation ... and remove some more stray unused code and methods. 2011-03-29 15:41:55 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideoencoder.c: basevideocodec: fully free video frame 2011-03-29 15:41:08 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: streamline discont, flush and reset handling ... which is not to say there is no room for further tweaking ... 2011-03-29 15:39:07 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: add some header commentary 2011-03-29 12:57:21 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: remove (almost) unused fields ... and also some more unused code. 2011-03-29 10:41:54 +0200 Mark Nauwelaerts * ext/vp8/gstvp8dec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: invoke subclass start method at state change and use set_format While this changes API slightly (e.g. actually uses set_format now), which is OK for unstable API, it has following merits: * symmetric w.r.t. stop at state change * in line with other base class practice * otherwise no subclass method at state change (global activation time) Moreover, subclassese are either unaffected or trivially adjusted accordingly. 2011-04-28 12:02:27 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: fixup tweak 2011-03-28 16:15:19 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: add and tweak debug statements 2011-03-28 13:32:17 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: arrange for limited legacy seeking support In particular, tweak src query and event handling to provide for byte <-> time conversion. 2011-03-28 11:15:49 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoutils.c: basevideo: cater for format conversion 2011-03-28 10:51:27 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideoutils.c: videocodec: remove unused fields and code 2011-03-28 09:14:57 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: fix copy-and-paste variable misnomer 2011-03-28 08:59:20 +0200 Mark Nauwelaerts * ext/vp8/gstvp8dec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: subsume skip_frame into finish_frame 2011-03-28 08:56:59 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: remove unused code 2011-03-27 22:27:09 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: code cleanup and debug style fixes 2011-03-27 16:36:57 +0200 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: pass along buffer discont flag 2011-03-25 15:29:34 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: implement preset interface 2011-03-25 09:28:24 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: add documentation and related cosmetics 2011-03-24 14:10:07 +0100 Mark Nauwelaerts * ext/dirac/gstdiracenc.cc: * ext/vp8/gstvp8enc.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: provide proper upstream flow return handling 2011-03-24 13:59:35 +0100 Mark Nauwelaerts * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: minor optimization in setting up image buffer 2011-03-24 12:50:23 +0100 Mark Nauwelaerts * ext/vp8/gstvp8enc.c: vp8enc: refactor frame processing 2011-03-24 11:55:41 +0100 Mark Nauwelaerts * ext/vp8/gstvp8enc.c: vp8enc: do init at set_format time 2011-03-24 10:15:55 +0100 Mark Nauwelaerts * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: fix keyframe forcing 2011-03-24 08:23:27 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: enhance set_caps Specifically, only invoke set_format if incoming format really changed, and finish current format if so (and if any current). 2011-03-23 22:17:49 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: elaborate finish to draining 2011-03-24 09:21:04 +0100 Mark Nauwelaerts * ext/dirac/gstdiracenc.cc: * ext/schroedinger/gstschroenc.c: * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: invoke subclass start method at state change While this changes order w.r.t. set_format, which is OK for unstable API, it has following merits: * symmetric w.r.t. stop at state change * in line with other base class practice * little benefit in invoking 2 subclass virtual methods (set_format and start) in immediate succession; all actions in the second could be done in the first whereas subclass has no chance to do anything 'global' at activation time Moreover, current -bad subclass relevant methods either trivially commute or are either trivially adjusted accordingly. 2011-03-24 08:21:03 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: enable clipping by default 2011-03-24 08:17:52 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: reset more state 2011-03-24 08:56:33 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: header cosmetic and doc fixes 2011-03-23 09:45:20 +0100 Mark Nauwelaerts * ext/dirac/gstdiracenc.cc: * ext/schroedinger/gstschroenc.c: * ext/vp8/gstvp8enc.c: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideoencoder.c: basevideocodec: remove redundant caps field ... as it is already at hand as the src pad's negotiated caps. 2011-03-23 09:32:50 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: remove unused code 2011-03-23 08:50:31 +0100 Mark Nauwelaerts * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: use baseclass event virtual handler 2011-03-23 08:49:48 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: add event virtual method to allow subclass event handling 2011-03-23 08:35:51 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: improve GstForceKeyUnit event handling 2011-03-22 13:19:17 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideocodec.c: basevideocodec: debug style fixes 2011-03-21 18:02:15 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: basevideocodec: remove unused code cluttering up the place Also minor debug style fixes. 2011-03-21 17:44:17 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: basevideoencoder: simplify negotiated checking ... by avoiding some extraneous (un)ref'ing. 2011-03-24 14:16:12 +0100 Mark Nauwelaerts * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: code cleanup and some debug Also add some minor locking and remove unused bits. 2011-05-16 09:07:57 +0200 Pino Toscano * sys/shm/shmpipe.c: shm: Don't use PATH_MAX PATH_MAX is not defined on GNU Hurd and others. Also fix format string. 2011-05-14 14:48:56 +0200 Marc-André Lureau * gst/dccp/gstdccp_common.h: gst/dccp: fix build on newer mingw Fix this build error: CC libgstdccp_la-gstdccpplugin.lo In file included from ../../../gst/dccp/gstdccpclientsrc.h:29:0, from ../../../gst/dccp/gstdccpplugin.c:24: ../../../gst/dccp/gstdccp_common.h:32:0: warning: WINVER redefined [enabled by default] /usr/i686-w64-mingw32/sys-root/mingw/include/_mingw.h:231:0: note: this is the location of the previous definition In file included from ../../../gst/dccp/gstdccpplugin.c:24:0: ../../../gst/dccp/gstdccpclientsrc.h:58:3: error: unknown type name 'uint8_t' In file included from ../../../gst/dccp/gstdccpplugin.c:25:0: ../../../gst/dccp/gstdccpserversink.h:74:3: error: unknown type name 'uint8_t' In file included from ../../../gst/dccp/gstdccpplugin.c:26:0: ../../../gst/dccp/gstdccpclientsink.h:67:3: error: unknown type name 'uint8_t' In file included from ../../../gst/dccp/gstdccpplugin.c:27:0: ../../../gst/dccp/gstdccpserversrc.h:58:3: error: unknown type name 'uint8_t' make: *** [libgstdccp_la-gstdccpplugin.lo] Error 1 https://bugzilla.gnome.org/show_bug.cgi?id=650171 2011-05-15 10:04:50 +0200 Alessandro Decina * sys/applemedia/plugin.m: applemedia: bump the rank of qtkitvideosrc to PRIMARY 2011-05-15 10:00:44 +0200 Alessandro Decina * gst/hls/m3u8.c: hls: fix handling of strol() overflows 2011-05-14 12:18:19 +0200 Sebastian Dröge * Makefile.am: cruft: Add ext/amrwbenc directory, it's ext/voamrwbenc now 2011-05-13 01:03:27 +0200 Andoni Morales Alastruey * gst-libs/gst/video/gstbasevideocodec.c: basevideencoder: Fix use after free after state change transition 2011-04-18 23:40:35 +0300 Sreerenj Balachandran * ext/opencv/gstfacedetect.c: facedetect: Remove dead code and some minor doc changes. 2011-04-24 21:06:29 +0300 Sreerenj Balachandran * ext/opencv/gstedgedetect.c: edgedetect: Remove dead code and some minor doc changes 2011-04-19 19:09:30 +0200 Luis de Bethencourt * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstchromahold.h: * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstcoloreffects.h: coloreffects: Coding style fixes 2011-04-19 10:32:50 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-voaacenc.xml: aacenc: Integrate into the documentation 2011-04-19 10:07:23 +0200 Sebastian Dröge * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-amrwbenc.xml: * ext/Makefile.am: * ext/amrwbenc/Makefile.am: * ext/amrwbenc/README: * ext/voamrwbenc/GstVoAmrwbEnc.prs: * ext/voamrwbenc/Makefile.am: * ext/voamrwbenc/gstvoamrwb.c: * ext/voamrwbenc/gstvoamrwbenc.c: * ext/voamrwbenc/gstvoamrwbenc.h: amrwbenc: Switch to the free vo-amrwbenc library And rename everything to voamrwbenc instead of amrwbenc. 2011-04-15 11:19:20 +0200 benjamin gaignard * ext/faac/gstfaac.c: * tests/check/elements/faac.c: faac: Detect output format from downstream caps change unit test 2011-04-19 09:52:23 +0200 Sebastian Dröge * tests/check/Makefile.am: voaaenc: Fix CFLAGS/LIBS of the unit test 2011-04-19 09:49:08 +0200 Sebastian Dröge * ext/voaacenc/gstvoaacenc.c: * ext/voaacenc/gstvoaacenc.h: voaacenc: Only generate sinkcaps once and in a threadsafe way 2011-04-19 09:42:22 +0200 Sebastian Dröge * ext/voaacenc/gstvoaacenc.c: voaacenc: Add NULL terminator to gst_structure_new() 2011-04-19 09:40:48 +0200 Sebastian Dröge * ext/voaacenc/gstvoaacenc.c: * ext/voaacenc/gstvoaacenc.h: voaacenc: Some minor cleanup 2011-04-19 09:34:03 +0200 Sebastian Dröge * ext/voaacenc/Makefile.am: voaacenc: Fix CFLAGS and LIBS 2011-04-18 17:19:00 +0200 benjamin gaignard * configure.ac: * ext/Makefile.am: * ext/voaacenc/Makefile.am: * ext/voaacenc/gstvoaac.c: * ext/voaacenc/gstvoaacenc.c: * ext/voaacenc/gstvoaacenc.h: * tests/check/Makefile.am: * tests/check/elements/voaacenc.c: voaacenc: Add new plugin for audio AAC encoder based on vo-aacenc lib Add plugin and unit test. Fixes bug #647748. 2011-05-14 10:19:57 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmpsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Back to development === release 0.10.22 === 2011-05-10 11:35:56 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmpsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.22 Highlights: - hlsdemux: Add HTTP live streaming parser/demuxer element - new elements: h263parse, zebrastripe, patchdetect - scenechange: new scene change detection element - removed audioparsersbad plugin, it has been moved to -good - make opencv plugin work with OpenCV 2.2 - countless (still experimental) camerabin2 fixes and improvements - experimental VP8 RTP payloader/depayloader (RTP payloading not finalised yet) - curlsink: add libcurl-based sink element (acts as client, not server) - decklink: add decklink plugin - linsys: add plugin for Linear Systems SDI boards - sdi: add raw SDI muxing/demuxing elements - camerabin now relies on muxers to mux based on running time (ie. latest base/good/ugly releases) - many other fixes and improvements 2011-05-05 09:54:33 -0300 Thiago Santos * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: camerabin: Use running time for muxing This patch removes the audio source buffer probe that was used to re-timestamp buffers to make them start from 0. As muxers have been fixed to use running time instead of timestamps, this is not needed anymore. Fixes bug #646211 2011-04-21 19:58:03 -0300 Thiago Santos * gst/camerabin/camerabinimage.c: camerabin: Fix typo 2011-05-04 12:36:01 +0200 Mark Nauwelaerts * ext/xvid/gstxvidenc.c: xvidenc: do not leak peer pad reference 2011-05-03 15:47:02 +0100 Sjoerd Simons * ext/xvid/gstxvidenc.c: xvidenc: Always return reffed caps from _getcaps Not returning ref caps will leads to crashes and refcounting issues in upstream elements 2011-04-14 13:34:53 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: set duration in outgoing buffers Currently we push each fragment as a single buffer. 2011-05-03 12:01:25 +0100 Tim-Philipp Müller * gst/hls/gsthlsdemux.c: hlsdemux: fix DURATION query handling Only answer duration queries in TIME format with a duration in seconds. Make sure we don't return GST_CLOCK_TIME_NONE as duration (which is non-0, but still invalid/useless). 2011-05-03 11:51:44 +0100 Tim-Philipp Müller * gst/hls/gsthlsdemux.c: hlsdemux: implement SEEKING query 2011-05-03 09:55:48 +0200 Sebastian Dröge * sys/dvb/parsechannels.c: dvb: Use the user config dir instead of the cache dir for the channels configuration 2011-04-29 14:37:04 +0200 Philippe Normand * sys/dvb/parsechannels.c: dvb: moved dvb-channels.conf to $XDG_CACHE_HOME 2011-04-30 19:47:47 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmpsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * po/da.po: * po/de.po: * po/fr.po: * po/uk.po: * win32/common/config.h: 0.10.21.4 pre-release 2011-04-30 19:46:40 +0100 Tim-Philipp Müller * ext/cog/gstcogorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.c: Update orc-generated disted C backup code to orc 0.4.14 2011-04-30 19:15:11 +0100 Tim-Philipp Müller * gst/debugutils/gstchopmydata.c: chopmydata: don't push buffers smaller than min-size on eos When pushing the remaining data on EOS, don't just push whatever data is left in the adapter, but only push data that's at least of min-size. 2011-04-30 19:08:25 +0100 Tim-Philipp Müller * gst/debugutils/gstchopmydata.c: chopmydata: don't mess with adapter from non-streaming thread on FLUSH_START Don't try to push remaining data in the adapter on receiving a FLUSH event, just flush the adapter. Do this on FLUSH_STOP, however, which is serialized, unlike FLUSH_START, so we don't mess with the adapter at the same time as the streaming thread. 2011-04-30 11:28:03 +0200 Philip Jägenstedt * gst/y4m/gsty4mdec.c: y4mdec: add plugin description https://bugzilla.gnome.org/show_bug.cgi?id=649005 2011-04-29 12:39:38 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Don't leak bufferlist on streams without pads https://bugzilla.gnome.org/show_bug.cgi?id=648929 2011-04-29 12:38:31 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Unref buffers we don't use. Avoids a massive leak :) https://bugzilla.gnome.org/show_bug.cgi?id=648929 2011-04-29 12:08:38 +0200 Edward Hervey * gst/mpegtsdemux/mpegtsbase.c: mpegtsbase: Don't forget to free the program streams array https://bugzilla.gnome.org/show_bug.cgi?id=648929 2011-04-29 12:08:04 +0200 Edward Hervey * gst/mpegtsdemux/tsdemux.c: tsdemux: Free packet buffer even if it doesn't have a payload This can happen with AFC-only packets. Avoids leaking buffers. https://bugzilla.gnome.org/show_bug.cgi?id=648929 2011-04-28 10:07:04 +0200 Sebastian Dröge * configure.ac: decklink: Check for pthread.h and link with -lpthread 2011-04-28 10:04:18 +0200 Sebastian Dröge * sys/Makefile.am: decklink: Add to SUBDIRS 2011-04-28 00:00:09 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmpsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * ext/cog/gstcogorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.c: * po/bg.po: * po/ja.po: * po/nl.po: * po/pl.po: * po/ru.po: * po/sl.po: * po/tr.po: * win32/common/config.h: 0.10.21.3 pre-release 2011-04-27 23:43:03 +0100 Tim-Philipp Müller * tools/Makefile.am: tools: disable new gst-element-maker test It doesn't seem to work in an uninstalled setup, and breaks make distcheck for me. 2011-04-27 01:14:20 +0300 Stefan Kost * tools/Makefile.am: element-maker: the broekn templates are not broekn, but dependencies Rename the list and dist them. We need them for the actual templates. 2011-04-26 15:13:55 +0300 Stefan Kost * tools/Makefile.am: * tools/gst-element-maker: element-maker: set CPPFLAGS to make templates using uninstalled headers work 2011-04-26 14:21:25 +0300 Stefan Kost * tools/Makefile.am: * tools/element-templates/gobject: element-maker: fixup gobject template a bit but disable for now The template contains things we already define by default. 2011-04-26 14:10:05 +0300 Stefan Kost * tools/element-templates/audiofilter: * tools/element-templates/basertpdepayload: * tools/element-templates/basertppayload: * tools/element-templates/cddabasesrc: * tools/element-templates/tagdemux: element-templates: fix templates Use the object class and not the object in the init function. Set the vmethods. Add default returns. 2011-04-26 14:08:51 +0300 Stefan Kost * tools/Makefile.am: element-maker: don't dist incomplete templates Move not working templates to a separate variable to highlight the fact that they need more work. These need at least the class and type fields filled. 2011-04-26 13:44:04 +0300 Stefan Kost * tools/Makefile.am: * tools/gst-element-maker-test.sh: element-maker-test: try to run element-maker for all templates Add an easy way to check the element-maker templates. 2011-04-26 13:42:59 +0300 Stefan Kost * tools/gst-element-maker: element-maker: make it fail, when compilation fails 2011-04-19 15:09:54 -0400 Stefan Kost * tools/gst-element-maker: element-maker: allow to run from a different working directory Get the dirname for the script and use that to reference the templates. Use the templatedir variable to check for templates. 2011-04-16 19:42:48 -0700 David Schleef * tools/gst-element-maker: element-maker: lowercasify input This allows using capitalized acronyms in class names, so using "AVC_src" on the command line will create filename gstavcsrc.c, class name GstAVCSrc, and symbol names gst_avc_src_*. 2011-04-24 16:42:03 -0700 David Schleef * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux,tsdemux: Add byte-stream to h264 caps Fixes #606662. 2011-04-24 16:00:00 -0700 David Schleef * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideoencoder: Don't allow buffers after EOS Fixes #647852. 2011-04-24 15:49:54 -0700 David Schleef * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Don't duplicate code in basevideocodec Both basevideoencoder and basevideocodec were setting system_frame_number, leading to confusion. Fixes #647853. 2011-04-14 16:21:15 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Check if caps are set directly Fixes #647854. 2011-04-17 00:08:39 +0100 Mihai Draghicioiu * ext/gme/gstgme.c: gme: fix infinite looping by fading out after two loops https://bugzilla.gnome.org/show_bug.cgi?id=647364 2011-04-24 14:04:10 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From c3cafe1 to 46dfcea 2011-04-22 09:37:29 +0100 Fabrizio Milo * configure.ac: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttextoverlay.h: opencv: make work with openCV 2.2 https://bugzilla.gnome.org/show_bug.cgi?id=641796 2011-04-19 17:02:45 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Add latest plugins to spec file 2011-04-15 22:25:27 -0700 David Schleef * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Add byte-stream to h264 caps 2011-04-18 12:01:07 +0200 Sebastian Dröge * tests/check/elements/mxfmux.c: * tests/check/pipelines/mxf.c: wavpack: Remove bus GSource to prevent a valgrind warning 2011-04-18 11:57:15 +0200 Sebastian Dröge * tests/check/elements/ofa.c: ofa: Remove bus GSource to prevent a valgrind warning 2011-04-18 11:50:34 +0200 Sebastian Dröge * tests/check/elements/assrender.c: assrender: Remove bus GSource to prevent a valgrind warning 2011-04-18 11:46:23 +0200 Sebastian Dröge * sys/decklink/Makefile.am: decklink: Remove unused/unneeded CFLAGS/LIBS and move $(LIBM) to LIBADD 2011-04-18 11:43:03 +0200 Sebastian Dröge * sys/linsys/Makefile.am: linsys: Link with libgstbase for basesink/basesrc And remove empty and unused variables. 2011-04-17 19:09:33 +0200 Sebastian Dröge * sys/decklink/Makefile.am: decklink: Dist all headers and put them in noinst_HEADERS 2011-04-17 19:09:15 +0200 Sebastian Dröge * sys/linsys/Makefile.am: linsys: Dist all headers and put them in noinst_HEADERS 2011-04-17 11:54:00 +0200 Sebastian Dröge * configure.ac: configure: Fix linsys/decklink checks for Linux 2011-04-17 01:10:14 +0100 Tim-Philipp Müller * configure.ac: * win32/common/config.h: 0.10.21.2 pre-release 2011-04-17 01:09:33 +0100 Tim-Philipp Müller * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.h: ext, gst: update disted orc backup files 2011-04-17 00:54:50 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-curl.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtmpsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update docs for pre-release 2011-04-16 16:36:06 +0100 Tim-Philipp Müller * configure.ac: configure: fix --disable-external 2011-04-14 20:46:52 -0700 David Schleef * ext/assrender/gstassrender.c: assrender: refactor blitting, avoid writing past end of buffer Previous blitting code could potentially write past the end of the buffer if the x or y position was odd, and for the same underlying reason, didn't get the chroma registration correct in the odd position case. https://bugzilla.gnome.org/show_bug.cgi?id=647830 2011-04-16 11:18:44 +0200 Edward Hervey * gst/jpegformat/gstjpegparse.c: jpegformat: Fix unitialized variable on macosx 2011-04-14 20:39:38 -0300 Thiago Santos * gst/camerabin/camerabinimage.c: camerabin: Do not forget to unref the ffmpegcolorspace Do not leak the ffmpegcolorspace by unrefing it at dispose 2011-04-14 16:48:27 -0300 Thiago Santos * tests/check/elements/camerabin.c: test: camerabin: More leak fixes 2011-04-15 10:41:55 +0200 Sebastian Dröge * m4/gsettings.m4: m4: Update gsettings m4 macros 2011-04-14 16:24:47 -0700 David Schleef * configure.ac: Bump orc requirement to 0.4.11 2011-04-15 00:09:14 +0100 Tim-Philipp Müller * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/musicbrainz/gsttrm.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/rsnparsetter.c: * gst/aiff/aiffparse.c: * gst/colorspace/gstcolorspace.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchopmydata.c: * gst/geometrictransform/gstfisheye.c: * gst/h264parse/gsth264parse.c: * gst/hls/m3u8.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegtsdemux/mpegtsbase.c: Fix some unused-but-set-variable warnings with gcc 4.6 2011-04-14 19:53:16 +0100 Tim-Philipp Müller * tools/element-templates/gobject: element-templates: clean up gobject template a bit Remove pointless g_return_if_fail (G_IS_FOO (obj)) checks in vfunc implementations. Comment out unused variables to avoid warnings with gcc 4.6. 2011-04-14 18:36:16 +0100 Tim-Philipp Müller * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: asfmux: fix unused-but-set-variable warnings with gcc 4.6 2011-04-14 18:36:02 +0100 Tim-Philipp Müller * gst/bayer/gstrgb2bayer.c: bayer: fix unused-but-set-variable warnings with gcc 4.6 2011-04-14 14:32:02 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Leak fixes for the unit tests Leak fixes related to not removing the source returned from gst_bus_add_watch 2011-04-14 13:27:20 -0300 Thiago Santos * tests/check/elements/camerabin.c: tests: camerabin: Some leak fixes Leak fixes related to removing the source returned from gst_bus_add_watch 2011-04-13 15:05:15 -0400 Reynaldo H. Verdejo Pinochet * Android.mk: * sys/audioflingersink/Android.mk: * sys/audioflingersink/GstAndroid.cpp: * sys/audioflingersink/audioflinger_wrapper.cpp: * sys/audioflingersink/audioflinger_wrapper.h: * sys/audioflingersink/gstaudioflingerringbuffer.h: * sys/audioflingersink/gstaudioflingersink.c: * sys/audioflingersink/gstaudioflingersink.h: Remove audioflingersink Remove audioflingersink, it's in gst-android now. 2011-04-14 16:49:18 +0100 Tim-Philipp Müller * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: fix unused-but-set-variable warnings with gcc 4.6 2011-04-14 16:14:57 +0100 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: basecamerasrc: add unstable-API warnings if GST_USE_UNSTABLE_API is not defined So people know this is unstable API even if it ends up right next to our other API. 2011-04-14 16:11:53 +0100 Tim-Philipp Müller * gst-libs/gst/media-info/.gitignore: libs: remove leftover media-info directory 2011-04-13 22:48:28 +0200 Andoni Morales Alastruey * gst/hls/m3u8.c: hlsdemux: m3u8: return duration in nanoseconds 2011-04-13 23:35:50 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: fix handling of end of playlist Don't send the EOS event until we reached the end of the playlist and the queue is really empty. 2011-04-13 22:25:57 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: fix example pipeline 2011-04-13 23:06:18 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: ignore seek events until it's implemented 2011-04-13 22:17:05 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: dispose the fetcher from the same thread it's created 2011-04-14 11:28:58 +0100 Tim-Philipp Müller * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink:: fix compilation with older GLib g_object_notify_by_pspec() is new in GLib 2.26, but we only require 2.22. 2011-04-14 07:21:50 +0100 Christian Fredrik Kalager Schaller * gst-plugins-bad.spec.in: Update spec file with a lot of new plugins 2011-04-13 23:59:40 -0300 Thiago Santos * tests/check/elements/jifmux.c: tests: jifmux: Adds test for new exposure compensation tag Adds a test for GST_TAG_CAPTURING_EXPOSURE_COMPENSATION on jifmux check tests. 2011-04-13 21:58:36 -0400 Olivier Crête * gst/dtmf/Makefile.am: * gst/dtmf/gstdtmfcommon.h: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: dtmf: Move duplicate #defines into a common include Centralize duplicated constants so they have the same value. Also standardise minimum tone duration to 250ms and minimum inter-tone interval to 100ms. 2011-04-13 22:33:37 -0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: Preserve unused imagebin or videobin on NULL If video or image mode is never selected then respective bin is in NULL state. Preserve this state when resetting camerabin from PAUSED to READY. 2011-04-13 22:07:58 +0300 Stefan Kost * gst/pnm/Makefile.am: pnm: add LIBTOOLFLAGS = --tag=disable-static 2011-04-13 20:26:11 +0200 Sebastian Dröge * ext/xvid/gstxvidenc.c: xvidenc: Implement getcaps function This allows to set width/height/etc restrictions to be set downstream. Fixes bug #647498. 2011-04-12 21:47:14 +0100 Tim-Philipp Müller * Android.mk: * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-qtmux.xml: * gst-plugins-bad.spec.in: * gst/qtmux/Makefile.am: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/atomsrecovery.c: * gst/qtmux/atomsrecovery.h: * gst/qtmux/descriptors.c: * gst/qtmux/descriptors.h: * gst/qtmux/fourcc.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmoovrecover.c: * gst/qtmux/gstqtmoovrecover.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: * gst/qtmux/gstqtmuxplugin.c: * gst/qtmux/properties.c: * gst/qtmux/properties.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/qtmux.c: * tests/check/pipelines/tagschecking.c: qtmux: remove qtmux plugin, it has moved to -good https://bugzilla.gnome.org/show_bug.cgi?id=636699 2011-04-13 16:31:12 +0200 Sebastian Dröge * configure.ac: configure: Fix libexif pkg-config check There's no exif plugin so don't use AG_GST_CHECK_FEATURE. Fixes bug #647564. 2011-04-12 16:42:17 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: Remove leftover MAEMO_BROKEN defines Remove defines to work around bugs in old Maemo releases 2011-04-11 14:44:17 -0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: Fix corner case for preview posting Fix corner case where video preview image is not posted if stopping video capture immediately after capture start. 2011-04-11 18:31:45 +0300 Stefan Kost * gst/jpegformat/gstjpegparse.c: jpegparse: subtract id-str size from the remaining read Fixes a regression from the patches in bug #626618. 2011-04-11 18:30:17 +0300 Stefan Kost * gst/jpegformat/gstjpegparse.c: * tests/check/elements/camerabin2.c: jpeg: set tags to NULL at init time and after freeing them 2011-04-11 18:29:28 +0300 Stefan Kost * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * tests/check/elements/camerabin2.c: jpeg: comment and logging changes 2011-04-10 19:53:35 +0200 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: add gst_jpeg_parse_remove_marker() This function will remove the whole marker from the buffer. Also we set it as the default behavior for marker JPG{0-13}? in order to avoid a useless #if https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-08-13 12:38:02 +0200 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: refactor COM parsing add gst_jpeg_parse_com () and get_utf8_from_data () to extract and validate comment format https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-11-16 18:22:07 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: refactor APP1 parsing add gst_jpeg_parse_app1 () and extract_and_queue_tags () https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-11-21 15:05:43 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: log id when skipping an unhandled APP marker https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-11-16 17:47:17 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: skip all APP markers, excepting APP1 https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-11-21 15:09:17 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: add get_tag_list () https://bugzilla.gnome.org/show_bug.cgi?id=626618 2011-04-11 00:36:35 -0400 Thibault Saunier * Android.mk: * android/NOTICE: * android/h264parse.mk: * android/metadata.mk: * android/qtmux.mk: * android/sdpelem.mk: * ext/faad/Makefile.am: * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst/adpcmdec/Makefile.am: * gst/adpcmenc/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/autoconvert/Makefile.am: * gst/bayer/Makefile.am: * gst/camerabin/Makefile.am: * gst/camerabin2/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/coloreffects/Makefile.am: * gst/colorspace/Makefile.am: * gst/dataurisrc/Makefile.am: * gst/debugutils/Makefile.am: * gst/dtmf/Makefile.am: * gst/dvbsuboverlay/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/freeze/Makefile.am: * gst/frei0r/Makefile.am: * gst/gaudieffects/Makefile.am: * gst/geometrictransform/Makefile.am: * gst/h264parse/Makefile.am: * gst/hdvparse/Makefile.am: * gst/hls/Makefile.am: * gst/id3tag/Makefile.am: * gst/interlace/Makefile.am: * gst/invtelecine/Makefile.am: * gst/ivfparse/Makefile.am: * gst/jp2kdecimator/Makefile.am: * gst/jpegformat/Makefile.am: * gst/legacyresample/Makefile.am: * gst/librfb/Makefile.am: * gst/liveadder/Makefile.am: * gst/mpeg4videoparse/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegpsmux/Makefile.am: * gst/mpegtsdemux/Makefile.am: * gst/mpegvideoparse/Makefile.am: * gst/mve/Makefile.am: * gst/mxf/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/patchdetect/Makefile.am: * gst/pcapparse/Makefile.am: * gst/pnm/Makefile.am: * gst/qtmux/Makefile.am: * gst/rawparse/Makefile.am: * gst/rtpmux/Makefile.am: * gst/rtpvp8/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdi/Makefile.am: * gst/sdp/Makefile.am: * gst/segmentclip/Makefile.am: * gst/siren/Makefile.am: * gst/speed/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/videofilters/Makefile.am: * gst/videomaxrate/Makefile.am: * gst/videomeasure/Makefile.am: * gst/videoparsers/Makefile.am: * gst/videosignal/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * sys/audioflingersink/Android.mk: android: make it ready for androgenizer Remove the android/ top dir Fixe the Makefile.am to be androgenized To build gstreamer for android we are now using androgenizer which generates the needed Android.mk files. Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git 2011-04-10 00:22:37 +0100 Tim-Philipp Müller * tools/Makefile.am: element-maker: dist new videofilter2 template 2011-04-09 13:40:37 +0200 Sebastian Dröge * sys/vdpau/h264/gstvdph264dec.c: vdpau: Fix uninitialized variable compiler warning 2011-04-09 10:03:00 +0200 Sebastian Dröge * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: Add last-message property and never print anything to stdout Instead everything will be put into the last-message property and gst-launch -v will print all changes of the property. This makes the behaviour of fpsdisplay consistent with the fakesink/identity/etc behaviour. 2011-04-09 09:50:23 +0200 Sebastian Dröge * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: Rename verbose property to silent for consistency 2011-04-09 00:37:25 +0100 Tim-Philipp Müller * Makefile.am: * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/baseparse/Makefile.am: * gst-libs/gst/baseparse/gstbaseparse.c: * gst-libs/gst/baseparse/gstbaseparse.h: * tools/element-templates/baseparse: baseparse: remove -bad version of baseparse library, now in core 2011-04-02 18:30:22 +0100 Tim-Philipp Müller * gst/videoparsers/Makefile.am: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gstdiracparse.h: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth263parse.h: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: * gst/videoparsers/h263parse.h: videoparsers: port to baseparse, which is now in libgstbase in core 2011-04-08 12:11:07 -0700 David Schleef * gst/videofilters/Makefile.am: * gst/videofilters/gstscenechange.c: * gst/videofilters/gstscenechange.h: * gst/videofilters/gstvideofilter2.c: * gst/videofilters/gstvideofiltersbad.c: scenechange: new scene change detection element 2011-04-08 10:26:42 -0700 David Schleef * tools/element-templates/videofilter2: element-maker: Add videofilter2 template 2011-04-08 19:32:31 +0100 Tim-Philipp Müller * Makefile.am: * android/aacparse.mk: * android/amrparse.mk: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-audioparsersbad.xml: * gst/audioparsers/Makefile.am: * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstaacparse.h: * gst/audioparsers/gstac3parse.c: * gst/audioparsers/gstac3parse.h: * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstamrparse.h: * gst/audioparsers/gstdcaparse.c: * gst/audioparsers/gstdcaparse.h: * gst/audioparsers/gstflacparse.c: * gst/audioparsers/gstflacparse.h: * gst/audioparsers/gstmpegaudioparse.c: * gst/audioparsers/gstmpegaudioparse.h: * gst/audioparsers/plugin.c: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/aacparse.c: * tests/check/elements/ac3parse.c: * tests/check/elements/amrparse.c: * tests/check/elements/flacparse.c: * tests/check/elements/mpegaudioparse.c: Remove audioparsers plugin, it has been moved to -good 2011-04-08 14:08:10 +0200 Sebastian Dröge * gst/debugutils/fpsdisplaysink.c: fpsdisplay: Use PROP_ instead of ARG_ for the property enums 2011-04-07 15:15:57 +0200 Philippe Normand * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplay: Add verbose property When this property is set to TRUE the element will display statistics on stdout. Fixes https://bugzilla.gnome.org/show_bug.cgi?id=647030 2011-04-05 21:04:54 +0200 Haakon Sporsheim * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: update for latest GstXOverlay changes From xwindow_id to window_handle. https://bugzilla.gnome.org/show_bug.cgi?id=646955 2011-04-07 18:30:49 +0200 Mark Nauwelaerts * gst/audioparsers/gstmpegaudioparse.c: mpegaudioparse: relax sync match a bit when draining ... to at least allow initial caps change (but no further caps jitter). 2011-04-06 15:58:07 +0200 Robert Swain * gst/fieldanalysis/gstfieldanalysis.c: * gst/fieldanalysis/gstfieldanalysis.h: fieldanalysis: Use RFF flag to indicate buffers to drop downstream Use of the GAP flag is not really correct here and makes it difficult to handle real GAP buffers in deinterlace. The RFF flag is unused and can be reused with similar semantics - the buffers marked with RFF that are in a telecine state contain only unneeded repeated fields and so can be dropped. 2011-04-05 19:26:15 +0300 Vincent Penquerc'h * sys/shm/gstshmsink.c: shmsink: ensure gst_poll_wait is called first on descriptors We need to call gst_poll_wait before calling gst_poll_* status functions on that new descriptor, so restart the loop, so _wait will have been called on all elements of self->poll, whether they have just been added or not. */ 2011-04-06 20:40:40 -0400 Olivier Crête * configure.ac: shm: Fix MSG_NOSIGNAL check Include sys/socket.h before checking for MSG_NOSIGNAL, also check that sys/socket.h before doing any other checks for shm 2010-12-15 10:39:24 +0000 Tim-Philipp Müller * gst/camerabin/gstcamerabin.c: camerabin: don't rely on the application running the default GLib main loop Don't use g_idle_add() and friends to schedule things we can't do from the streaming thread in another thread. The app may not be running the default GLib main loop. Instead, just spawn a thread. Also, we need to care for when acessing a pad variable, as another thread might have taken camerabin to NULL while this gst_camerabin_imgbin_finished didn't run. https://bugzilla.gnome.org/show_bug.cgi?id=615655 2011-04-04 20:55:39 +0200 Mark Nauwelaerts * gst/audioparsers/gstmpegaudioparse.c: mpegaudioparse: require tighter sync match when draining 2011-04-04 15:57:36 +0300 Stefan Kost * common: Automatic update of common submodule From 1ccbe09 to c3cafe1 2011-04-04 12:21:23 +0200 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: more helpful debug error message when no needed duration on input buffers Fixes #646256. 2011-04-02 01:21:34 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: validate properly utf-8 playlist 2011-04-02 01:10:37 +0200 Andoni Morales Alastruey * gst/hls/m3u8.c: hlsdemux: m3u8: clear the list of media files before updating the playlist 2011-04-02 01:08:02 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: use and adapter instead of costful buffer joins 2011-04-01 13:53:28 -0700 David Schleef * ext/dc1394/Makefile.am: * ext/directfb/Makefile.am: * gst/hls/Makefile.am: Remove setting of plugindir from Makefiles 2011-03-26 17:55:31 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Fix negotiation errors 2011-03-26 17:43:54 -0700 David Schleef * ext/schroedinger/gstschrodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideo: Add function to allocate src buffer 2011-04-01 16:52:48 -0300 Thiago Santos * gst/hls/gsthlsdemux.c: hlsdemux: Another windows build fix Replace %lld with %u as GST_BUFFER_SIZE is a guint 2011-04-01 16:12:50 -0300 Thiago Santos * gst/hls/m3u8.c: hls: Fix compilation on windows Use string literal on printing format 2011-04-01 13:39:50 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Processing should stop on READY The videobin and imagebin from camerabin have their states locked and aren't put to READY when all the rest of camerabin is set to it. This might cause one of them to be still processing and post an EOS after camerabin isn't expecting it anymore, this causes an assertion as the processing counter would already be 0 and would be decremented. 2011-04-01 15:00:32 +0200 Sebastian Dröge * gst/segmentclip/gstsegmentclip.c: segmentclip: Keep a reference of events until the event is parsed 2011-04-01 14:47:43 +0200 Sebastian Dröge * gst/audioparsers/gstmpegaudioparse.c: * gst/audioparsers/gstmpegaudioparse.h: mpegaudioparse: Parse encoder delay and encoder padding from the LAME header if present 2011-03-31 16:21:11 -0400 Olivier Crête * sys/shm/gstshmsink.c: shm: Make default perm u+rw g+r for shm area 2011-03-30 15:53:12 +0100 Tim-Philipp Müller * gst/hls/gsthlsdemux.c: hlsdemux: update for media type was renaming from playlist/m3u8 to application/x-hls 2011-03-30 11:33:09 +0200 Sebastian Dröge * configure.ac: configure.ac: Add hls plugin 2011-03-30 10:11:24 +0200 Sebastian Dröge * gst/hls/gsthlsdemux.c: hlsdemux: Some minor cleanup Use GST_DEBUG_FUNCPTR and G_PARAM_STATIC_STRINGS 2011-03-30 03:34:39 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: fix indentation and docs sections 2011-03-29 23:18:24 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: don't leek the query 2011-03-29 23:06:14 +0200 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: check if the task's cond was signaled because it's the end of playlist 2011-03-12 13:32:57 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: post a message in the bus when the playlist changes 2011-03-12 13:15:52 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: don't update the playlist if we stay in the same bitrate 2011-03-12 13:00:06 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: Add support for URI queries 2011-03-12 12:50:25 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: Add support for duration queries 2011-03-12 12:28:42 +0100 Andoni Morales Alastruey * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: m3u8: protect public methods properly 2011-03-12 12:20:32 +0100 Andoni Morales Alastruey * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: m3u8: add support to get the duration from a playlist 2011-02-16 03:51:08 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: don't print an error if the download was cancelled 2011-02-16 03:49:49 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: make sure the fetcher state change is complete before continuing 2011-02-16 01:19:45 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: don't leak the first buffer 2011-02-16 00:55:30 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: clean up code a little bit 2011-02-16 00:53:48 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: only check for the end of playlist when the queue is empty 2011-02-15 22:40:21 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: make sure to stop fragments cache if something cancelled it 2011-02-15 21:55:26 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: reuse the code in reset() to free resources in dispose() 2011-02-15 21:49:20 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: use a typefinder to set the caps in the source pad 2011-02-15 04:39:34 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: add more comments and document better all the threads involved 2011-02-15 03:42:29 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: handle 404 from the source element 2011-02-15 03:41:43 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: stop the fetcher in the PAUSED_TO_READY transition, not when disposing() 2011-02-15 03:41:01 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: hlsdemux: make sure we don't stop the fetcher twice from different threads 2011-02-15 02:13:56 +0100 Andoni Morales Alastruey * gst/hls/gsthlsdemux.c: hlsdemux: query the uri upstream before updating the playlist 2011-02-14 18:51:32 +0100 Andoni Morales Alastruey * configure.ac: * gst/hls/Makefile.am: * gst/hls/gstfragmented.h: * gst/hls/gstfragmentedplugin.c: * gst/hls/gsthlsdemux.c: * gst/hls/gsthlsdemux.h: * gst/hls/m3u8.c: * gst/hls/m3u8.h: hlsdemux: Add HTTP live streaming demuxer element Based on previous work by Marc-André Lureau 2011-03-21 10:57:05 -0300 Thiago Santos * gst/jpegformat/Makefile.am: * gst/jpegformat/gstjifmux.c: jifmux: Add GstTagXmpWriter support Adds GstTagXmpWriter interface to jifmux element 2011-03-21 10:56:51 -0300 Thiago Santos * gst/qtmux/Makefile.am: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: qtmux: Adding GstTagXmpWriter interface Adds GstTagXmpWriter interface support to qtmux 2011-03-27 23:50:24 +0300 Sreerenj Balachandran * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/opencv/Makefile.am: * ext/opencv/gstopencv.c: * ext/opencv/gsttextoverlay.c: * ext/opencv/gsttextoverlay.h: opencv text overlay: rename and docuemnt Rename the element textwrite to opencvtextoverlay. Add proper structuring to opencv textoverlay element. Fixes: #640561 2011-03-27 13:57:05 -0700 David Schleef * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Fix 64-bit printf format problem 2011-03-27 20:09:52 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: vdpausink: fix bug where we didn't setup vdpau on a user set window 2011-03-27 19:47:43 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: vdpau: fixup GstFlowReturn handling Previously the different decoders would discard errounous GstFlowReturns coming from downstream. Now we properly return these further upstream so that we properly error out on eg. negotiation problems. 2011-03-27 19:40:48 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpau.c: vdpau: small indentation fix 2010-09-06 17:42:15 +0200 Carl-Anton Ingmarsson * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpaumpegdec: don't ignore return value of gst_base_video_decoder_finish_frame 2011-03-27 17:42:56 +0100 Tim-Philipp Müller * sys/dshowsrcwrapper/gstdshow.cpp: dshow: fix list iteration code 2011-03-27 17:22:52 +0100 Tim-Philipp Müller * gst/dccp/gstdccpserversink.c: dccpserversink: fix list iteration code Fix suboptimal list iteration code, and add some FIXMEs. 2011-03-26 12:45:24 +0000 Tim-Philipp Müller * gst/patchdetect/Makefile.am: patchdetect: link against libm Link against libm. Include math-compat.h header. Don't link against orc, since it's not actually used. https://bugzilla.gnome.org/show_bug.cgi?id=645711 2011-03-26 16:12:18 +1100 Jan Schmidt * gst/mpegtsmux/tsmux/tsmux.c: Use correct clock when checking whether to write a new PCR The PCR clocks against the 27MHz SCR clock, so check it correctly to avoid writing the PCR too often. Partially fixes: #611046 2011-03-26 15:58:21 +1100 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: Rewrite M2TS packet output Make sure we only write the bottom 30 bits of the PCR to the m2ts header. Don't use floating point computation for it, and remove weird bit fiddling that messes up the PCR in a way I can't find any justification/documentation for. Don't accidentally lose PCR packets from the output. Fix the description for the m2ts-mode property so it's clear it's a flag, and which setting does what. Fixes: #611061 #644429 Partially fixes: #645006 2011-03-26 11:14:01 +1100 Jan Schmidt * gst/mpegtsmux/mpegtsmux.c: Fix a FIXME, and some whitespace/code style bits. Also, add a new copyright notice for me. 2011-03-25 22:33:05 +0100 Sebastian Dröge * common: Automatic update of common submodule From 193b717 to 1ccbe09 2011-03-25 14:56:43 +0200 Stefan Kost * common: Automatic update of common submodule From b77e2bf to 193b717 2011-03-25 09:32:30 +0100 Sebastian Dröge * common: Automatic update of common submodule From d8814b6 to b77e2bf 2011-03-25 09:08:49 +0100 Sebastian Dröge * common: Automatic update of common submodule From 6aaa286 to d8814b6 2011-03-25 08:33:37 +0100 Sebastian Dröge * gst/aiff/aiffparse.c: aiffparse: Add float caps to the template caps 2011-03-24 16:16:20 -0700 David Schleef * configure.ac: * sys/decklink/gstdecklinksrc.cpp: decklink: Fix win32 build 2011-03-24 22:32:42 +0200 René Stadler * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: ensure cleanup of pes/section filter helper structures In particular, the section_filter would not be cleared for a private section stream, leaking a GstAdapter. Seen on bug #645502. 2011-03-24 22:10:43 +0200 René Stadler * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: don't leak pad name As seen on bug #645502. 2011-03-24 21:46:09 +0200 René Stadler * gst/videoparsers/h264parse.c: h264parse: free PPS NAL buffers on cleanup Obviously a typo. Fixes bug #645502. 2011-03-24 21:44:07 +0200 René Stadler * gst/videoparsers/h264parse.c: h264parse: don't leak all NAL buffers gst_buffer_replace() doesn't steal the ref. Partial fix for bug #645502. 2011-03-24 18:49:54 +0200 Stefan Kost * common: Automatic update of common submodule From 6aec6b9 to 6aaa286 2011-03-24 14:51:12 +0100 Janne Grunau * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: fix stream_info descriptor parsing 2011-03-09 23:06:14 +0530 Arun Raghavan * gst/audioparsers/plugin.c: dcaparse: Bump rank to primary+1 Seems to work fine with a reasonably wide range of media, so bumping rank. 2011-03-24 10:08:59 +0100 Sebastian Dröge * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: aiffparse: Add support for 32 bit and 64 bit floating point formats 2011-03-24 09:58:45 +0100 Sebastian Dröge * gst/aiff/aiffparse.c: aiffparse: The SSND header is 16 bytes large, not 8 + 16 bytes Fixes bug #645568 and playback in pull mode for sample widths > 8 that are not a multiple of 2 bytes (e.g. 24 bit samples). 2011-03-24 09:29:06 +0100 Sebastian Dröge * gst/aiff/aiffparse.c: aiffparse: Use gst_util_uint64_scale_ceil() instead of a custom function 2011-03-24 13:43:01 +0530 Arun Raghavan * ext/dts/gstdtsdec.c: dtsdec: Don't export bitrate if open/variable/lossless libdca returns the bitrate as 1/2/3 for open/variable/lossless files respectively. This makes sure we don't emit these values. 2011-03-24 09:22:56 +0100 Sebastian Dröge * ext/celt/gstceltdec.c: celtdec: Read the additional, optional extra headers from the caps too 2011-03-24 09:14:10 +0100 Sebastian Dröge * ext/celt/gstceltdec.c: * ext/celt/gstceltdec.h: celtdec: Get and use streamheaders from the caps if possible This allows playback of files where the streamheader buffers were dropped for some reason and also sets the srcpad caps earlier. 2011-03-23 22:53:56 -0700 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: Revert previous commit It appears the patch, which I've been carrying around forever, had been already applied. 2011-02-20 14:16:18 -0800 David Schleef * ext/vp8/gstvp8dec.h: * ext/vp8/gstvp8enc.h: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: merge utils header into basevideocodec 2010-12-30 18:25:04 -0800 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: Output element message with frame stats 2011-02-26 00:28:32 -0800 David Schleef * configure.ac: * gst/patchdetect/Makefile.am: * gst/patchdetect/gstpatchdetect.c: * gst/patchdetect/gstpatchdetect.h: patchdetect: new element Detects Munsell ColorChecker in a video image and automatically white balances and color corrects based on the detected values. This element is only a demonstration at this stage, it needs to be separated into two elements. 2011-02-27 00:48:19 -0800 David Schleef * configure.ac: * sys/Makefile.am: * sys/decklink/DeckLinkAPI.h: * sys/decklink/DeckLinkAPIDispatch.cpp: * sys/decklink/LinuxCOM.h: * sys/decklink/Makefile.am: * sys/decklink/capture.cpp: * sys/decklink/capture.h: * sys/decklink/gstdecklink.cpp: * sys/decklink/gstdecklinksink.cpp: * sys/decklink/gstdecklinksink.h: * sys/decklink/gstdecklinksrc.cpp: * sys/decklink/gstdecklinksrc.h: decklink: Add decklink plugin Source and sink elements for BlackMagic DeckLink SDI cards. 2011-03-17 17:38:58 -0700 David Schleef * configure.ac: * sys/Makefile.am: * sys/linsys/Makefile.am: * sys/linsys/gstlinsys.c: * sys/linsys/gstlinsyssdisink.c: * sys/linsys/gstlinsyssdisink.h: * sys/linsys/gstlinsyssdisrc.c: * sys/linsys/gstlinsyssdisrc.h: * sys/linsys/include/asi.h: * sys/linsys/include/master.h: * sys/linsys/include/sdi.h: * sys/linsys/include/sdiaudio.h: * sys/linsys/include/sdivideo.h: linsys: Add plugin for Linear Systems SDI boards 2010-09-14 11:30:33 -0700 David Schleef * configure.ac: * gst/sdi/Makefile.am: * gst/sdi/gstsdi.c: * gst/sdi/gstsdidemux.c: * gst/sdi/gstsdidemux.h: * gst/sdi/gstsdimux.c: * gst/sdi/gstsdimux.h: sdi: Add raw SDI muxing/demuxing elements 2011-03-17 19:03:29 -0700 David Schleef * ext/cog/gstlogoinsert.c: * tests/check/Makefile.am: * tests/check/elements/logoinsert.c: logoinsert: Fix memleaks, add test 2010-11-15 11:37:12 -0800 David Schleef * ext/cog/gstlogoinsert.c: logoinsert: Add data property 2011-03-23 15:49:18 +0100 Robert Swain * tests/examples/camerabin2/gst-camerabin2-test.c: gst-camerabin2-test: Fix premature shutdown We must wait for camerabin2's stop-capture procedures to finish before quitting the main loop or firing off the next capture. If we get stuck waiting for camerabin2 to become idle, this is a bug that needs fixing. 2011-03-23 16:32:19 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Only mark video capture as finished after EOS Instead of probing the videosink sinkpad for passing EOS, better to wait for EOS from the bus. This makes sure the filesink has already processed it and is ready to close the file. This is used to notify applications that camerabin2 is idle and can be shut down. 2011-03-18 15:49:12 +0100 Robert Swain * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstwrappercamerabinsrc.c: basecamerasrc: camerabin2: wrappercamerabinsrc: Add read-only max-zoom prop This is not implemented in any of our real sources to which wrappercamerabinsrc might connect but this is optional and can be implemented at any time. A limit on the software zoom level using video{crop,scale} would be arbitrary. 2011-03-23 12:38:36 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst/camerabin2/gstcamerabin2.c: * tests/check/elements/camerabin2.c: camerabin2: Improve idle property usage Use resource warning messages to notify camerabin2 that a capture as aborted or couldn't be started, making it decrement the processing counter and making the idle property more reliable. 2011-03-22 12:04:20 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: No need to force audiosrc to null on stop_capture Setting the audio source to null isn't needed and it could make the EOS that is still flowing be dropped if autoaudiosrc is used because its pads go flushing before the EOS gets pushed from the real source. 2011-03-22 08:32:48 -0300 Lauri Lehtinen * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerabinsrc: Check if set preview caps are the same Checks if the new received preview-caps are equal to what is already in use, skips the preview-caps setting logic in case new caps are same as current ones. 2011-03-15 15:47:21 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Adds another 'idle' test Adds another test that checks that the idle property works correctly when bogus start-capture calls are made. This fails currently, but should remind us of fixing it in the future by defining a proper error reporting from camera sources to camerabin2 2011-03-15 15:34:31 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Sprinkle some 'idle' property checks Adds some checks for 'idle' property in camerabin2 tests 2011-03-15 15:11:01 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Adds new idle property Adds idle property (just like camerabin1), a boolean that is true when camerabin2 isn't processing and can be shut down without losing data. 2011-03-15 10:50:54 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Adds tests for new image capture properties Adds tests to check that changing encoder/muxer for image capture works 2011-03-15 10:11:43 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Adding properties for image capture settings Adds properties for selecting image encoder and muxer for image capture 2011-03-14 14:33:57 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: More debug log Small refactoring and adding more debug log to encodebin related paths 2011-03-14 14:30:36 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: Set preview pipeline NULL Set preview pipeline to NULL when freed to be able to recreate it on the following lines 2011-03-23 22:02:37 +0530 Arun Raghavan * gst/audioparsers/gstdcaparse.c: * gst/audioparsers/gstdcaparse.h: dcaparse: Expose frame size in caps This exports the size of the frame (number of bytes from one sync point to the next) as the "frame_size" field in caps. 2011-03-09 23:03:10 +0530 Arun Raghavan * gst/audioparsers/gstdcaparse.c: * gst/audioparsers/gstdcaparse.h: dcaparse: Expose block size in caps This sets the "block_size" field on caps as the number of samples encoded in one frame. 2011-03-22 20:53:08 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: use running time for synchronization See also #432612. 2011-03-22 13:18:03 +0100 Mark Nauwelaerts * gst/videoparsers/gsth264parse.c: h264parse: chain up to parent finalize 2011-03-22 13:46:42 +0100 Chris E Jones * gst/scaletempo/gstscaletempo.c: scaletempo: Correctly handle newsegment events with stop==-1 Fixes bug #645420. 2011-03-22 12:34:20 +0100 Luis de Bethencourt * configure.ac: configure.ac: redundant uses of AC_MSG_RESULT() cleaned the redundant uses of AC_MSG_RESULT() in configure.ac 2011-03-18 19:34:57 +0100 Luis de Bethencourt * autogen.sh: autogen: wingo signed comment 2011-03-21 13:31:15 -0700 David Schleef * gst/videofilters/Makefile.am: * gst/videofilters/gstvideofilter2.c: * gst/videofilters/gstvideofilter2.h: * gst/videofilters/gstzebrastripe.c: * gst/videofilters/gstzebrastripe.h: zebrastripe: Add new GstVideoFilter2 base class An experiment. Not completely happy with it. 2011-03-21 20:40:14 +0200 Mart Raudsepp * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: Handle all ISO8859-x encodings in get_encoding() ... according to ETSI EN 300 468, "Selection of character table" 2011-02-21 11:44:01 +0100 Janne Grunau * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: do not try to parse packets containing section data as PES 2011-02-21 11:42:54 +0100 Janne Grunau * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/tsdemux.c: mpegtsdemux: add stream types for DSM CC A, B, C, D 2011-03-21 18:54:46 +0100 Janne Grunau * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: fix playback if PMT is seen before PAT The stream for the PMT pid has to be cleared since the version checking in the packetizer won't emit the same PMT again otherwise. 2011-03-21 16:51:16 +0100 Andreas Frisch * gst/videoparsers/gsth264parse.c: h264parse: Set parsed=true in the srcpad caps Fixes bug #645412. 2011-03-21 10:38:58 +0100 Edward Hervey * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: Lower the rank to MARGINAL The rationale is that it can't be properly used right now when using it to encode mpeg2video because of the needs-to-be-rewritten properties and format negotiation. Other encoders will negotiate in a much saner fashion. One such example is that when you pick mpeg2enc for mpeg2video, the default value for the 'format' property is "Generic MPEG-1", which is completely wrong if downstream caps are mpeg2. The whole negotiation code needs some serious loving before this plugin can be bumped back up to a higher rank. 2011-03-16 09:50:34 +0100 Benjamin Gaignard * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: add "frames-dropped" and "frames-rendered" properties https://bugzilla.gnome.org/show_bug.cgi?id=643469 2011-03-18 09:33:26 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Remove some unused variables in the I420 blending function 2011-03-17 20:19:27 +0200 Raimo Järvi * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Fix using alpha values in blitting. Use each pixel's own alpha value instead of average alpha value when calculating color components. Fixes bug #639763. 2011-03-17 16:34:02 +0000 Tim-Philipp Müller * ext/vp8/Makefile.am: vp8: fix LIBADD order in Makefile.am 2011-03-16 15:53:13 +0000 Tim-Philipp Müller * gst/audioparsers/gstmpegaudioparse.c: mpegaudioparse: add FIXME for making the base class use xing seek tables better 2011-03-17 16:41:52 -0400 Olivier Crête * sys/shm/shmpipe.c: shm: Don't use "sun" as a variable name, breaks on Solaris Seems like the Solaris compiler has -Dsun=1, so don't use sun as a variable name Patch by Tim Mooney https://bugzilla.gnome.org/show_bug.cgi?id=645053 2011-03-17 15:27:39 -0400 Olivier Crête * configure.ac: shm: Check for MSG_NOSIGNAL macro Don't build the plugin is MSG_NOSIGNAL is not defined https://bugzilla.gnome.org/show_bug.cgi?id=645053 2011-03-16 18:52:24 +0000 Sjoerd Simons * sys/shm/gstshmsink.c: shmsink: Keep shmsink referenced while there are still buffers around 2011-03-16 18:51:50 +0000 Sjoerd Simons * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shm: Allow ShmPipe to save a data pointer for applications 2011-03-16 18:51:02 +0000 Sjoerd Simons * sys/shm/shmpipe.c: shm: Keep the ShmPipe alive as long as there are blocks left 2011-03-09 19:34:39 -0500 Olivier Crête * sys/shm/gstshmsrc.c: shmsrc: Only connect to sink in PLAYING in live mode 2011-03-09 19:34:25 -0500 Olivier Crête * sys/shm/gstshmsrc.c: shmsrc: Keep GstPoll for whole src lifetime 2011-03-15 09:15:35 -0300 Lasse Laukkanen * gst/camerabin/camerabinpreview.c: * gst/camerabin/gstcamerabin.c: camerabin: Add an assertion to preview pipeline generation Adds an assertion in case the preview pipeline is NULL and also explicitly initializes preview caps to NULL for clarity. 2011-03-14 18:25:25 +0100 Sebastian Dröge * gst/audioparsers/gstdcaparse.c: * gst/audioparsers/gstdcaparse.h: dcaparse: Add depth and endianness to the caps Some decoders can only handle specific endianness or a fixed depth and this allows better negotiation. Fixes bug #644208. 2011-03-14 12:39:23 +0000 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix broken pad caps refcount handling gst_caps_make_writable() takes ownership of the caps passed in, but the caller doesn't own a ref to the caps here, because GST_PAD_CAPS doesn't return a ref. Looks like the code relied on a caps leak elsewhere for this to work properly. 2011-03-14 12:33:29 +0000 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: don't error out if downstream fails to handle the newsegment event If downstream doesn't handle the newsegment event, don't error out (esp. not without posting a proper error message on the bus), but just continue. If there's a problem, we'll find out when we start pushing buffers. https://bugzilla.gnome.org/show_bug.cgi?id=644395 2011-03-11 14:40:44 +0000 Andreas Frisch * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: remove unused variable 2011-03-11 18:23:22 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Set queues to silent Optimize a little by setting queues to silent 2011-03-11 16:20:52 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Refactoring encodebin usage Refactor some common code regarding encodebin usage in camerabin2 2011-03-11 17:07:03 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Fix number of iteration of tests There are 3 taglist tests, not 2 2011-03-11 10:32:35 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: Some memleak fixes 2011-03-08 09:43:58 +0100 Robert Swain * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstwrappercamerabinsrc.c: * tests/examples/camerabin2/gst-camerabin2-test.c: basecamerasrc: wrappercamerabinsrc: camerabin2: Expose/add floating point zoom property 2011-03-04 15:53:42 +0100 Robert Swain * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Remove dead definition This definition is unused in this code. 2011-03-10 11:38:18 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Avoid clearing recording caps When recording 2 videos in sequence with the same video-capture-caps, the second video would get a not-negotiated error because the src caps were being cleared without any intention of renegotiating it back to the requested capture caps. This patch avoids this caps reset procedure unless a new caps was set. 2011-03-11 14:37:06 +0100 Sebastian Dröge * gst/videoparsers/gstdiracparse.c: diracparse: Add correct template caps and element details 2011-03-11 10:40:40 +0000 Tim-Philipp Müller * tests/examples/camerabin2/Makefile.am: examples: fix LDADD/LIBS path order for camerabin2 example 2011-03-11 10:34:23 +0000 Tim-Philipp Müller * gst/camerabin2/gstcamerabin2.c: camerabin2: don't leak element name strings Don't leak string copy returned by gst_element_get_name(). Also, check for certain elements by checking the plugin feature / factory name, not the assigned object name. 2011-03-11 10:26:01 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/Makefile.am: * gst/vmnc/Makefile.am: build: remove more tarkin/theoraexp build cruft 2011-03-10 13:39:40 -0800 David Schleef * configure.ac: * ext/Makefile.am: * ext/tarkin/Makefile.am: * ext/tarkin/README: * ext/tarkin/TODO: * ext/tarkin/WHAT_THE_HECK_IS_THIS_CODE_DOING: * ext/tarkin/bitcoder.h: * ext/tarkin/golomb.h: * ext/tarkin/gsttarkin.c: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkindec.h: * ext/tarkin/gsttarkinenc.c: * ext/tarkin/gsttarkinenc.h: * ext/tarkin/info.c: * ext/tarkin/mem.c: * ext/tarkin/mem.h: * ext/tarkin/rle.h: * ext/tarkin/tarkin.c: * ext/tarkin/tarkin.h: * ext/tarkin/wavelet.c: * ext/tarkin/wavelet.h: * ext/tarkin/wavelet_coeff.c: * ext/tarkin/wavelet_xform.c: * ext/tarkin/yuv.c: * ext/tarkin/yuv.h: * ext/theora/Makefile.am: * ext/theora/theoradec.c: * ext/theora/theoradec.h: * gst/videofilters/gstzebrastripe.h: theora,tarkin: Remove ancient unused code 2011-03-10 16:03:58 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: provide for PTS metadata when so configured ... and not only when sort-of feeling like it. In any case, if it turns out all really is in order, and presumably DTS == PTS, then no ctts will be produced anyway. 2011-03-10 16:02:42 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: also track original PTS buffer timestamp in reorder dts-method 2011-03-09 14:53:26 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Force EOS on audio src We can't rely on audio sources pushing EOS when going PAUSED->READY because this is a basesrc bahavior and when used inside autoaudiosrc the ghostpad goes flushing before the real source pushes the EOS, so it is dropped. 2011-03-04 06:06:16 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: No need for starting segment 2011-03-04 06:09:43 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: gstcamerabin2: Set encodebin's videorate and audiorate properties Listen to encodebin's element-added signal to be able to set skip-to-first on both audiorates and videorates. 2011-02-15 14:58:28 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Handle audio elements states Audio elements are put into bin only when needed, so we need to be careful with their states as camerabin2 won't manage them if they are outside the bin. Also we should reset their pad's flushing status before starting a new capture. 2011-01-21 12:47:57 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: tests: Update tests to check for audio streams Add a check that resulting recorded video files have audio streams. 2011-01-21 10:56:52 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin: adding audio related properties Adds 4 audio properties related to audio recording * audio-src * mute * audio-supported-capture-caps * audio-capture-caps 2011-01-20 09:34:39 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Adding audio support for video recordings Adds an audio source and audio capsfilter/queue/convert, creating a new branch on camerabin2 that is used to feed encodebin with audio buffers for video recording. 2011-02-28 15:43:46 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Add logging for stop-capture signal 2011-02-24 18:28:28 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Add viewfinder caps related properties Adds properties to check what caps are supported on the viewfinder (from the camerasrc viewfinder pad) and another one to set a caps for the viewfinder. 2011-02-24 17:42:21 -0300 Lauri Lehtinen * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: basecamerasrc: add virtual function to notify subclass of changing preview caps Adds a virtual function to basecamerasrc in case subclasses want to be notified of changing preview caps. This is useful if the subclass wants to post the preview itself or if it wants to provide a preview buffer as close to as possible to the user's requested resolution to the preview generation pipeline. 2011-02-22 13:10:15 +0200 Teemu Katajisto * tests/examples/camerabin2/gst-camerabin2-test.c: examples: camerabin2: add option for setting the wrapper camera source 2011-02-21 17:04:06 +0200 Teemu Katajisto * tests/examples/camerabin2/Makefile.am: * tests/examples/camerabin2/gst-camerabin2-test.c: examples: camerabin2: add encoding profile loading 2011-02-17 14:51:16 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Fix newsegment pushing Send update newsegments instead of non-update ones for the video branch when starting recordings 2011-02-15 14:59:32 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Set some queue's properties Sets viewfinder queue to leaky and tell image branch queue to don't care about durations 2011-02-10 11:50:27 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Ready is enough for forcing a caps change 2011-02-09 19:14:13 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Check for downstream caps on first captures Use video_renegotiate and image_renegotiate booleans to make the videosrc negotiate the capture caps on the first capture because the caps might be set before wrappercamerabinsrc goes into PLAYING and pads drop the internal renegotiate event. This is required as the output-selector is using the 'none' negotiation mode. 2011-02-09 19:09:24 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Avoid fixating capture caps When setting the internal capsfilter caps for capture we should put the full caps instead of trying to fixate it ourselves. This way we let the elements (and mostly the source) select the best format instead of defaulting to what the pad fixation function picks. 2011-02-09 08:27:59 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: examples: Allow free image dimensions Changes the default width/height of captures so that it will be autopicked by camerabin2 instead of hardcoding an option 2011-02-09 08:15:08 -0300 Thiago Santos * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: examples: Backport fix from camerabin example We should only check if the xwindow should be created if we already parsed the arguments of the program 2011-02-04 14:53:49 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: camerabin2: Moving preview image properties to basecamerasrc Moves preview image related properties to basecamerasrc as that should be present on all camerasrcs 2011-02-08 15:51:42 +0200 Lasse Laukkanen * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: Fix getting element implementing photography iface 2011-02-03 12:02:14 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.c: * gst-libs/gst/basecamerabinsrc/gstcamerabinpreview.h: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: * gst/camerabin2/gstwrappercamerabinsrc.h: camerabin2: Move preview helper functions to basecamerabinsrc Move preview helper functions to baseacamerabinsrc so they can be reused by multiple camerabin2 sources. 2011-02-03 16:58:37 -0300 Thiago Santos * tests/examples/camerabin2/.gitignore: * tests/examples/camerabin2/Makefile.am: * tests/examples/camerabin2/gst-camerabin2-test.c: camerabin2: examples: Add gst-camerabin2-test Adds gst-camerabin2-test example application, similar to gst-camerabin-test for camerabin. It is useful for taking pictures and recording videos using camerabin2 and providing arguments for most of camerabin2 properties 2011-02-04 12:36:14 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Add viewfinder-sink property Adds a property to set the viewfinder's sink of camerabin2 2011-03-09 13:19:50 +0200 René Stadler * gst/fieldanalysis/gstfieldanalysis.c: fieldanalysis: fix double free() crashes 2011-03-08 17:29:20 +0000 Wim Taymans Merge branch 'master' into 0.11 2011-03-08 17:03:22 +0000 Wim Taymans * ext/directfb/dfbvideosink.c: * ext/resindvd/rsnwrappedbuffer.c: meta: update for new API 2011-03-08 11:19:41 +0000 Byeong-ryeol Kim * gst/videofilters/Makefile.am: videofilters: link to libm https://bugzilla.gnome.org/show_bug.cgi?id=644176 2011-03-07 22:41:30 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: update url for port-groups extension 2011-03-07 10:36:46 +0100 Sebastian Dröge * configure.ac: soundtouch: The pkg-config file in version 1.5 is called soundtouch 2011-02-26 16:20:52 -0800 David Schleef * configure.ac: * gst/videofilters/Makefile.am: * gst/videofilters/gstvideofiltersbad.c: * gst/videofilters/gstzebrastripe.c: * gst/videofilters/gstzebrastripe.h: zebrastripe: New element Adds zebra stripes to overexposed video. 2011-03-04 17:37:04 +0100 Edward Hervey * ext/Makefile.am: ext: Always dist the curl directory Event if we can't build it. Fixes make dist 2011-03-04 17:26:41 +0100 Wim Taymans * ext/sndfile/gstsfsink.c: sfsink: use basesink preroll lock 2011-03-04 13:39:43 +0100 Wim Taymans * sys/Makefile.am: vdpau: disable until someone ports it 2011-03-04 13:29:28 +0100 Wim Taymans Merge branch 'master' into 0.11 2011-03-04 12:11:12 +0100 Edward Hervey * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/h263parse.c: videoparsers: Fix unitialized variables Makes macosx compiler happy 2011-03-04 12:10:25 +0100 Edward Hervey * ext/curl/gstcurlsink.c: curlsink: Fix print-related issues 2011-03-04 11:59:44 +0100 Edward Hervey * gst/rtpvp8/gstrtpvp8pay.c: rtpvp8: Fix unitialized variable Makes macosx compiler happy. 2011-03-04 09:25:49 +0000 Tim-Philipp Müller * gst/fieldanalysis/gstfieldanalysisorc-dist.c: * gst/fieldanalysis/gstfieldanalysisorc-dist.h: fieldanalysis: add backup files for compiling without orc 2011-03-03 00:57:09 +0000 Tim-Philipp Müller * gst/videoparsers/gsth263parse.c: * gst/videoparsers/h263parse.c: * gst/videoparsers/h263parse.h: h263parse: allocate H263Params struct on the stack It's flat and not kept around for longer. 2011-03-03 00:45:11 +0000 Tim-Philipp Müller * gst/videoparsers/h263parse.c: * gst/videoparsers/h263parse.h: h263parse: minor clean-ups const-ify some arguments and re-indent header a little. 2011-02-28 11:51:54 +0100 benjamin gaignard * gst/debugutils/fpsdisplaysink.c: fpsdisplay: fix sync property default value 2011-03-02 23:43:42 +0100 Sebastian Dröge * configure.ac: * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: celtenc: Fix compilation with celt >= 0.11.0 Fixes bug #643607. 2010-09-15 17:32:09 +0200 Robert Swain * configure.ac: * gst/fieldanalysis/Makefile.am: * gst/fieldanalysis/gstfieldanalysis.c: * gst/fieldanalysis/gstfieldanalysis.h: * gst/fieldanalysis/gstfieldanalysisorc.orc: fieldanalysis: Add fieldanalysis element This element analyses video buffers to identify if they are progressive, interlaced or telecined and outputs buffers with appropriate flags for a downstream element (which will be the deinterlace element, after some forthcoming modifications) to be able to output progressive frames and adjust timestamps resulting in a progressive stream. 2011-03-01 11:23:49 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-mpegtsdemux.xml: * docs/plugins/inspect/plugin-rtmpsrc.xml: * docs/plugins/inspect/plugin-rtpvp8.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-videoparsersbad.xml: docs: update docs for recent changes in git 2011-03-01 11:16:56 +0000 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-curl.xml: * ext/curl/gstcurlsink.c: docs: add new curl plugin and curlsink element to docs 2011-03-01 10:49:57 +0000 Tim-Philipp Müller * configure.ac: configure: also check for platform socket headers needed by curlsink element 2011-03-01 10:03:07 +0000 Tim-Philipp Müller * ext/curl/gstcurlsink.c: * ext/curl/gstcurlsink.h: curlsink: no need for a private instance structure The entire instance structure is private anyway. 2011-03-01 09:56:51 +0000 Tim-Philipp Müller * ext/curl/gstcurlsink.c: curlsink: clean up property registration code Fix some typos, use same style as in all other plugins, avoiding unnecessary temporary GParamSpec variables; use G_PARAM_SPEC_STATIC_STRINGS. 2011-02-26 20:21:25 +0000 Tim-Philipp Müller * configure.ac: * ext/Makefile.am: curl: add configure check and hook up to build system 2011-02-26 20:20:33 +0000 Patricia Muscalu * ext/curl/Makefile.am: * ext/curl/gstcurl.c: * ext/curl/gstcurlsink.c: * ext/curl/gstcurlsink.h: curl: add libcurl-based sink element Sink acts as a client and can connect to servers to upload media. https://bugzilla.gnome.org/show_bug.cgi?id=641496 2011-02-25 14:24:17 +0000 Tim-Philipp Müller * ext/jp2k/gstjasperdec.c: jp2kdec: post proper error when the image's colour space is not supported https://bugzilla.gnome.org/show_bug.cgi?id=643115 2011-02-28 20:19:53 +0100 Mark Nauwelaerts * configure.ac: configure.ac: cygwin/mingw; enable plugin linking to static lib Useful for DirectX plugin(s). Fixes #642507. 2011-02-28 19:58:41 +0100 Mark Nauwelaerts * configure.ac: configure.ac: export plugin description more platform independent Fixes #642504. 2011-02-28 18:33:13 +0100 Mark Nauwelaerts * common: Automatic update of common submodule From 1de7f6a to 6aec6b9 2011-02-27 19:39:40 +0100 Wim Taymans * ext/directfb/dfbvideosink.c: * ext/directfb/dfbvideosink.h: * ext/resindvd/rsnparsetter.c: * ext/resindvd/rsnwrappedbuffer.c: * ext/resindvd/rsnwrappedbuffer.h: meta: fix for new metadata api 2011-02-26 14:54:49 +0100 Wim Taymans * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.h: mxf: fix class struct Fix class parent structure Metadata is now GObject 2011-02-26 14:22:46 +0100 Wim Taymans * ext/resindvd/rsnparsetter.c: * ext/resindvd/rsnwrappedbuffer.c: * ext/resindvd/rsnwrappedbuffer.h: miniobject: port rsndvd 2011-02-26 13:39:01 +0100 Wim Taymans * ext/directfb/dfbvideosink.c: * ext/directfb/dfbvideosink.h: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: * gst/id3tag/id3tag.c: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfmux.c: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: * gst/qtmux/gstqtmux.c: miniobject: port to new 0.11 API Remove miniobject and buffer subclassesusing GObject subclasses and metadata. 2011-02-28 12:06:12 +0100 Wim Taymans Merge branch 'master' into 0.11 Conflicts: configure.ac win32/common/config.h 2011-02-26 13:53:44 -0800 David Schleef * gst/audioparsers/gstaacparse.c: Revert "aacparse: allow parsed frames on sink pad" This reverts commit e49b89d5c5a1244fa0dcb8bb4996e38fb9bff9e5. 2011-02-25 19:59:05 -0800 David Schleef * gst/colorspace/gstcolorspace.c: colorspace: set dithering enum directly 2011-02-25 19:57:47 -0800 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: colorspace: Add support for r210 2011-02-23 17:25:03 -0800 David Schleef * gst/audioparsers/gstaacparse.c: aacparse: allow parsed frames on sink pad 2011-02-23 17:24:14 -0800 David Schleef * gst-libs/gst/baseparse/gstbaseparse.c: baseparse: make_metadata_writable() fix 2011-02-24 09:29:51 -0300 Thiago Santos * tests/check/elements/jifmux.c: jifmux: tests: Increase bus waiting timeout Double bus waiting timeout as sometimes the test would fail because it would timeout and get no messages from the bus. 2011-02-21 13:24:03 +0000 Tim-Philipp Müller * gst-libs/gst/baseparse/gstbaseparse.c: baseparse: rename GType from GstAudioBaseParseBad to GstBaseParseBad We use it for video as well now. 2011-02-21 12:14:59 +0100 Edward Hervey * gst/mpegpsmux/mpegpsmux.c: * gst/qtmux/gstqtmux.c: * gst/videomeasure/gstvideomeasure_ssim.c: Revert "Check that collectpads exists before removing pad" This reverts commit 6d8740476ccd3a3498dc4f18c19733643825c7b8. Depends on a core commit that was reverted 2011-02-20 23:57:19 -0800 David Schleef * gst/mpegpsmux/mpegpsmux.c: * gst/qtmux/gstqtmux.c: * gst/videomeasure/gstvideomeasure_ssim.c: Check that collectpads exists before removing pad The core now calls release pad from finalize, at which point the collectpads might have already been freed. 2011-02-20 23:01:30 -0800 David Schleef * gst/colorspace/colorspace.c: colorspace: Fix YUV->RGB matrixing 2011-02-20 22:43:56 -0800 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: colorspace: Add dithering Dithering only happens when a 16-bit-per-channel format is involved. 2011-01-11 10:32:47 +0000 Vincent Penquerc'h * ext/xvid/gstxviddec.c: xviddec: bodge to avoid crashes It seems xvidcore overreads its input buffer, so a nasty workaround is to allocate some more memory (16 bytes seem to be enough). There is no apparent image corruption with these extra bytes set to 0, valgrind is much happier, and the crashes go away. It is ugly, and slower though. But then, xviddec is currently not autoplugged for playback anyway. https://bugzilla.gnome.org/show_bug.cgi?id=334107 2011-02-20 14:14:27 -0800 David Schleef * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspaceorc.orc: colorspace: fix a few formats 2011-02-19 13:12:41 -0800 David Schleef * configure.ac: * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: colorspace: Add 16-bit-per-channel handling 2011-02-19 13:13:13 -0800 David Schleef * gst/colorspace/gstcolorspace.c: colorspace: Fix memleak 2011-02-19 13:07:39 -0800 David Schleef * ext/schroedinger/Makefile.am: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschroparse.c: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideoparse.c: * gst-libs/gst/video/gstbasevideoparse.h: basevideocodec: remove parser in favor of baseparse 2011-02-18 15:24:54 +0000 Tim-Philipp Müller * Makefile.am: * gst/videoparsers/Makefile.am: videoparsers: change plugin filename from libgsth263parse* to libgstvideoparsersbad* Due to a registry bug you may need to manually remove your registry file to make the new plugin appear with >0 features. 2011-02-18 15:17:17 +0000 Tim-Philipp Müller * gst/mpegtsdemux/mpegtspacketizer.c: mpegtspacketizer: fix log message printf format 2011-02-18 15:05:31 +0200 Stefan Kost * gst-libs/gst/baseparse/gstbaseparse.c: baseparse: trim trailing whitespace 2011-02-18 15:05:03 +0200 Stefan Kost * gst-libs/gst/baseparse/gstbaseparse.c: baseparse: use delta-unit flags instead of none 2011-02-18 15:00:05 +0200 Stefan Kost * tests/examples/indexing/indexmpeg.c: indexing-example: use proper signal names 2011-02-18 09:40:00 +0100 Olivier Aubert * ext/rsvg/gstrsvgoverlay.c: rsvgoverlay: allow negative values for x/y/width/height 2011-02-18 12:39:08 +0000 Tim-Philipp Müller * gst/videoparsers/Makefile.am: videoparsers: fix build Add includes and link against new libgstbaseparse in the build tree. 2011-02-17 14:32:46 -0800 David Schleef * gst/mpegtsdemux/Makefile.am: mpegtsdemux: Fix disting of headers 2011-02-17 13:22:28 -0800 David Schleef * gst-libs/gst/baseparse/gstbaseparse.h: baseparse: update documentation for API changes 2010-10-13 16:12:02 -0700 David Schleef * tests/check/Makefile.am: * tests/check/elements/parser.c: tests: fix baseparse test 2010-10-09 15:08:39 -0700 David Schleef * gst/videoparsers/Makefile.am: * gst/videoparsers/dirac_parse.c: * gst/videoparsers/dirac_parse.h: * gst/videoparsers/gstdiracparse.c: * gst/videoparsers/gstdiracparse.h: * gst/videoparsers/plugin.c: videoparsers: Add dirac parser 2011-02-17 13:20:46 -0800 David Schleef * tools/gst-element-maker: element-maker: do test build with -fPIC 2010-10-09 15:06:12 -0700 David Schleef * tools/element-templates/baseparse: element-maker: Add baseparse template 2010-10-13 15:39:55 -0700 David Schleef * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/baseparse/Makefile.am: * gst-libs/gst/baseparse/gstbaseparse.c: * gst-libs/gst/baseparse/gstbaseparse.h: * gst/audioparsers/Makefile.am: * gst/audioparsers/gstaacparse.h: * gst/audioparsers/gstac3parse.h: * gst/audioparsers/gstamrparse.h: * gst/audioparsers/gstdcaparse.h: * gst/audioparsers/gstflacparse.h: * gst/audioparsers/gstmpegaudioparse.h: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstbaseparse.c: * gst/videoparsers/gstbaseparse.h: * gst/videoparsers/gsth263parse.h: * gst/videoparsers/gsth264parse.h: * gst/videoparsers/h263parse.h: baseparse: Create baseparse library 2011-02-16 21:17:57 -0800 David Schleef * gst/dvdspu/gstspu-vobsub-render.c: dvdsubdec: make up clut values if they weren't set 2010-12-04 19:55:32 -0800 David Schleef * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: fix release_pad Remove bogus freeing of pad element_private data that we never set (collectpads uses it, which causes confusion here). Also, check that our collectpads instance exists before using it. Partial fix for #636011. 2011-02-17 21:33:56 +0100 Janne Grunau * gst/mpegtsdemux/mpegtsbase.c: mpegtsdemux: use G_GUINT64_FORMAT as format specifier for guint64 fixes compilation on 32bit 2011-02-15 18:12:02 -0800 David Schleef * gst/colorspace/gstcolorspace.c: colorspace: Fix memory leak 2011-02-10 12:35:47 +0100 Janne Grunau * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/gstmpegdesc.c: * gst/mpegtsdemux/gstmpegdesc.h: mpegtsdemux: relicense gstmpegdefs.h, gstmpegdesc.h and gstmpegdesc.c to LGPL only with permission from the license header: """ This library is licensed under 2 different licenses and you can choose to use it under the terms of either one of them. The two licenses are the MPL 1.1 and the LGPL. """ 2011-02-16 17:57:42 +0100 Janne Grunau * configure.ac: * gst-plugins-bad.spec.in: * gst/mpegtsdemux/Makefile.am: * gst/mpegtsdemux/TODO: * gst/mpegtsdemux/gstmpegdefs.h: * gst/mpegtsdemux/gstmpegdesc.c: * gst/mpegtsdemux/gstmpegdesc.h: * gst/mpegtsdemux/gsttsdemux.c: * gst/mpegtsdemux/mpegtsbase.c: * gst/mpegtsdemux/mpegtsbase.h: * gst/mpegtsdemux/mpegtspacketizer.c: * gst/mpegtsdemux/mpegtspacketizer.h: * gst/mpegtsdemux/mpegtsparse.c: * gst/mpegtsdemux/mpegtsparse.h: * gst/mpegtsdemux/tsdemux.c: * gst/mpegtsdemux/tsdemux.h: mpegtsdemux: add MPEG TS demuxer rewrite from Edward Hervey with contributions from Miquel Angel Farre Guiu and Zaheer Abbas Merali 2011-02-17 14:12:43 +0100 Mark Nauwelaerts * gst/videoparsers/gstbaseparse.c: baseparse: tune QUERY_SEEKING response Even if we currently do not have a duration yet, assume seekable if it looks like we'll likely be able to determine it later on (which coincides with needed information to perform seeking). 2011-02-07 14:46:57 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: tune QUERY_SEEKING response Even if we currently do not have a duration yet, assume seekable if it looks like we'll likely be able to determine it later on (which coincides with needed information to perform seeking). Fixes #641047. 2011-02-17 12:28:56 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: remove extraneous buffer unref 2011-02-16 15:29:29 +0100 Sebastian Dröge * Makefile.am: * tests/icles/Makefile.am: * tests/icles/equalizer-test.c: icles: Completely remove equalizer-test from -bad, it's in -good now 2011-02-16 15:23:50 +0100 Sebastian Dröge * tests/icles/equalizer-test.c: equalizer-test: Initialize debug category after gst_init() to fix segfault 2011-02-14 12:53:49 +0200 Stefan Kost * common: Automatic update of common submodule From f94d739 to 1de7f6a 2011-02-14 12:14:12 +0200 Stefan Kost * docs/plugins/Makefile.am: docs: remove duplicated rule from Makefile.am This causes a make warning and might even cause dist-failure. Other modules don't need to override the target either and if we can fi it in common/gtk-doc-plugins.mak. 2011-02-14 11:48:34 +0200 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: add rsvg plugin to the docs 2011-02-14 11:42:52 +0200 Stefan Kost * ext/rsvg/gstrsvgdec.c: rsvgdec: add basic doc-blob 2011-02-11 17:59:31 +0100 Olivier Aubert * ext/rsvg/gstrsvgoverlay.c: * ext/rsvg/gstrsvgoverlay.h: rsvgoverlay: implement x/y/width/height (absolute and relative) positioning and dimensioning Signed-off-by: Olivier Aubert 2011-02-10 16:00:03 +0200 Teemu Katajisto * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: camerabin: application element memory leak fixes If videobin/imagebin was never set to READY state the ownership of elements created and set by application were never taken by bin and therefore gst_object_sink is called for these elements before unreffing (they may still be in floating state and not unreffed properly without sinking first) 2011-02-10 10:35:18 +0800 Hu Gang * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photography interface: update the noise_reduction type from guint to GstPhotographyNoiseReduction https://bugzilla.gnome.org/show_bug.cgi?id=616814 2011-02-08 23:39:24 +0530 Arun Raghavan * gst/audioparsers/gstbaseparse.c: * gst/videoparsers/gstbaseparse.c: baseparse: Update min/max bitrate before first posting them This avoids posting an initial min-bitrate of G_UINTMAX and max-bitrate of 0. https://bugzilla.gnome.org/show_bug.cgi?id=641857 2011-02-08 23:50:13 +0530 Arun Raghavan * gst/audioparsers/gstmpegaudioparse.c: * gst/audioparsers/gstmpegaudioparse.h: mpegaudioparse: Post CBR bitrate as nominal bitrate Even if VBR headers are missing, we can't guarantee that a stream is in fact a CBR stream, so it's safer to let baseparse calculate the average bitrate rather than assume a CBR stream. However, in order to make /some/ metadata available before the requisite number of frames have been parsed, this posts the bitrate from the non-VBR headers as the nominal bitrate. https://bugzilla.gnome.org/show_bug.cgi?id=641858 2011-02-04 01:00:55 -0200 Luciana Fujii Pontello * gst/camerabin/gstcamerabin.c: camerabin: Always take photo when preview-caps is set When filename is not set, but preview-caps is set, take the photo and send its preview. 2011-01-26 11:49:48 -0200 Luciana Fujii Pontello * gst/camerabin/gstinputselector.c: camerabin: Events with select-all in input-selector When select-all was set, input-selector wasn't handling upstream events. Now input-selector forwards the event to all of its sink pads. This changes the input-selector internal to camerabin until it is replaced with a better solution. 2011-02-07 23:17:55 +0100 Mark Nauwelaerts * sys/directdraw/gstdirectdrawsink.c: directdrawsink: avoid aspect-ratio borders overlying other windows Fixes #632056. 2011-02-07 22:47:34 +0100 Mark Nauwelaerts * sys/directdraw/gstdirectdrawsink.c: directdrawsink: avoid rendering to invalid area Based on patch by Havard Graff Fixes #594280. 2011-02-08 11:24:59 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Do not re-set the clock if it is null Avoids not needed work and doesn't assert when trying to unref the null reference 2011-02-07 09:50:22 +0200 Teemu Katajisto * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: fix --no-xwindow option handling in gst-camerabin-test --no-window flag is false by default and selection based on the option whether to create XWindow is done before options are parsed. Therefore XWindow is never created. https://bugzilla.gnome.org/show_bug.cgi?id=641712 2010-09-06 14:10:11 +0200 Mark Nauwelaerts * gst/audioparsers/gstamrparse.c: amrparse: a valid amr-wb frame should not have reserved frame type index See #639715. 2011-02-07 14:05:34 +0100 Mark Nauwelaerts * configure.ac: configure.ac: set GST_LIB_LDFLAGS Aligns GST_LIB_LDFLAGS with e.g. -base to arrange for proper exports in libs. 2011-01-12 17:13:07 +0200 Stefan Kost * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin2/Makefile.am: * tests/examples/camerabin2/gst-camera2.c: camerabin-tests: fix lookup of UI files These are uninstalled examples. Pass $srcdir to cpp to build the correct location for the UI file. 2011-02-04 09:08:26 +0100 Alexey Fisher * ext/vp8/gstvp8enc.c: vp8enc: Add description for bitrate units. 2011-02-03 15:22:51 -0300 Thiago Santos * gst/camerabin2/gstimagecapturebin.c: imagecapturebin: Fix property setting Set the property on the child and not on itself causing infinite looping 2011-02-01 11:20:25 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Improve preview checking 2011-02-01 11:19:53 -0300 Thiago Santos * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Fix preview messages Image previews where being posted in sync with the buffers timestamps, this makes no sense as previews should be posted ASAP. Also adds some debugging messages. 2011-02-01 11:19:29 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: Handle src state change to avoid losing timestamps Camerabin2 uses state changes to force the source to renegotiate its caps to the capture formats. The state changes makes the source lose its clock and base_time, causing it to stop timestamping the buffers. We still need a proper way to make sources renegotiate its caps, so this patch is a hack to make the source continue timestamping buffers even after changing state. The patch works by getting the clock and base time before doing the state change to NULL and setting them back after putting it to PLAYING again. It also cares to drop the first new segment after this state change. 2011-01-27 15:35:14 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: preview filter tests Adds tests to the preview-filter property of camerabin2 2011-01-27 14:39:19 -0300 Thiago Santos * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: camerabin2: Add preview-filter property Adds a property to select a custom element for preview pipeline buffers processing 2011-01-27 10:19:42 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Add tests for custom filters Adds tests to check that custom filters elements receive buffers 2011-01-26 15:27:19 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Add custom filter properties Adds custom filter properties for camerabin2. Custom filters can be added to video/image/preview branches. 2011-02-03 16:24:24 +0100 Edward Hervey * gst/camerabin/camerabinpreview.c: camerabin: Initialize variables Makes compilers happy 2011-02-02 18:41:39 +0000 Tim-Philipp Müller * sys/dvb/gstdvbsrc.c: dvbsrc: fix up enum nick names https://bugzilla.gnome.org/show_bug.cgi?id=591651 2011-01-31 17:24:24 +0100 Mark Nauwelaerts * gst/dccp/gstdccp.c: * gst/dccp/gstdccp_common.h: dccp: use socklen_t where appropriate rather than specific type In particular, fixes Cygwin build where socklen_t is defined as int in line with native win32 api definition. 2011-02-01 20:01:13 +0000 Tim-Philipp Müller * gst/rtpvp8/Makefile.am: rtpvp8: also link against libgstbase-0.10 for adapter and bit reader API https://bugzilla.gnome.org/show_bug.cgi?id=641178 2011-02-01 14:40:54 +0000 Tim-Philipp Müller * configure.ac: * gst/id3tag/id3tag.c: id3mux: map new GST_TAG_ENCODED_BY to ID3v2 TENC frame https://bugzilla.gnome.org/show_bug.cgi?id=627268 2011-01-31 17:45:19 +0000 Tim-Philipp Müller * gst/videoparsers/Makefile.am: videoparsers: dist h264parse.h, fixing make distcheck Spotted by Nathanael D. Noblet 2011-01-14 10:19:28 +0200 Teemu Katajisto * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinpreview.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: optimize setting new caps for preview image pipeline Avoid re-creating and linking of preview image pipeline when setting new preview image caps. Backported from camerabin2. https://bugzilla.gnome.org/show_bug.cgi?id=639502 2011-01-30 17:08:11 +0000 Tim-Philipp Müller * gst/rtpvp8/Makefile.am: rtpvp8: fix LIBS and CFLAGS order in Makefile.am 2011-01-23 17:02:38 +0000 Sjoerd Simons * gst/rtpvp8/gstrtpvp8depay.c: rtpvp8depay: Accept packets with only one byte of data When fragmenting partions it can happen that an RTP packet only caries 1 byte of RTP data. 2011-01-23 16:42:17 +0000 Sjoerd Simons * gst/rtpvp8/gstrtpvp8pay.c: * gst/rtpvp8/gstrtpvp8pay.h: rtpvp8pay: Treat the frame header just like any other partition When setting up the initial mapping just act as if the global frame information is another partition. This saves special-casing it later in the actual packetizing code. 2010-05-16 17:23:17 +0100 Sjoerd Simons * configure.ac: * gst/rtpvp8/Makefile.am: * gst/rtpvp8/gstrtpvp8.c: * gst/rtpvp8/gstrtpvp8depay.c: * gst/rtpvp8/gstrtpvp8depay.h: * gst/rtpvp8/gstrtpvp8pay.c: * gst/rtpvp8/gstrtpvp8pay.h: rtpvp8: Add simple payloaders and depayloaders for VP8 Minimal implementation of http://www.webmproject.org/code/specs/rtp/, version 0.3.2 2011-01-28 12:38:19 +0100 Mark Nauwelaerts * gst/videoparsers/Makefile.am: * gst/videoparsers/gsth264parse.c: * gst/videoparsers/gsth264parse.h: * gst/videoparsers/h264parse.c: * gst/videoparsers/h264parse.h: * gst/videoparsers/plugin.c: videoparsers: add h264parse Functionally equivalent to (legacy)h264parse and re-uses the latter's low level NAL parsing, but otherwise based on GstBaseParse, and replacing some property configuration with caps negotiation. 2011-01-27 18:20:13 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: rename to legacyh264parse 2011-01-27 18:16:14 +0100 Mark Nauwelaerts * configure.ac: * gst/videoparsers/Makefile.am: * gst/videoparsers/gstbaseparse.c: * gst/videoparsers/gstbaseparse.h: * gst/videoparsers/gsth263parse.c: * gst/videoparsers/gsth263parse.h: * gst/videoparsers/h263parse.c: * gst/videoparsers/h263parse.h: * gst/videoparsers/plugin.c: h263parse: move to videoparsers and separate plugin registration 2011-01-27 18:03:50 +0100 Mark Nauwelaerts * gst/h263parse/gstbaseparse.c: * gst/h263parse/gstbaseparse.h: * gst/h263parse/gsth263parse.c: h263parse: update to latest baseparse 2011-01-06 12:29:34 +0100 Mark Nauwelaerts * gst/h263parse/Makefile.am: * gst/h263parse/gsth263parse.c: * gst/h263parse/gsth263parse.h: * gst/h263parse/h263parse.c: * gst/h263parse/h263parse.h: h263parse: shuffle code to untangle h263parse and parameter parsing 2011-01-06 12:34:12 +0100 Mark Nauwelaerts * gst/h263parse/gsth263parse.c: * gst/h263parse/gsth263parse.h: * gst/h263parse/h263parse.c: h263parse: provide for proper debug category, min frame size and code style 2010-12-10 16:40:44 +0100 Mark Nauwelaerts * gst/h263parse/gsth263parse.c: h263parse: remove redundant get_caps .. as src pad already set to use fixed_caps 2010-12-10 16:26:27 +0100 Mark Nauwelaerts * gst/h263parse/gsth263parse.c: * gst/h263parse/gsth263parse.h: h263parse: simplify valid_frame parsing ... considering that baseparse takes care of skipping etc 2010-05-14 02:08:03 +0530 Arun Raghavan * configure.ac: * gst/h263parse/Makefile.am: * gst/h263parse/gstbaseparse.c: * gst/h263parse/gstbaseparse.h: * gst/h263parse/gsth263parse.c: * gst/h263parse/gsth263parse.h: * gst/h263parse/h263parse.c: h263parse: Add an h263parse element This adds an h263parse element for parsing H.263 streams, breaking them up into frame-sized buffers, and exporting metadata such as profile and level. https://bugzilla.gnome.org/show_bug.cgi?id=622276 2011-01-27 16:52:34 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: improve handling of dependent substream frames In particular, timestamps of these should track main-stream timestamps. 2011-01-21 14:53:39 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: tune default duration estimate update interval Rather than a fixed default frame count, estimate frame count to aim for an interval duration depending on fps if available, otherwise use old fixed default. 2011-01-14 15:16:04 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: reverse playback; mind keyframes for fragment boundary 2011-01-13 15:26:21 +0100 Mark Nauwelaerts * gst/audioparsers/gstamrparse.c: amrparse: properly check for sufficient available data prior to access 2011-01-12 14:40:37 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: ensure non-empty candidate frames 2011-01-11 15:24:23 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: clarify some debug statements 2011-01-11 15:24:02 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: properly track upstream timestamps ... rather than with a delay. 2011-01-11 15:23:29 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: need proper frame duration to obtain sensible frame bitrate 2011-01-11 15:22:51 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: proper initial values for index tracking variables 2011-01-11 12:05:13 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: arrange for consistent event handling 2011-01-10 16:59:59 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.h: baseparse: header style cleaning 2011-01-10 17:07:38 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: provide some more initial frame metadata in parse_frame ... and document accordingly. 2011-01-10 16:56:36 +0100 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: * gst/audioparsers/gstflacparse.c: baseparse: refactor passthrough into format flags Also add a format flag to signal baseparse that subclass/format can provide (parsed) timestamp rather than an estimated one. In particular, such "strong" timestamp then allows to e.g. determine duration. 2011-01-10 15:34:48 +0100 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstac3parse.c: * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: * gst/audioparsers/gstdcaparse.c: * gst/audioparsers/gstflacparse.c: * gst/audioparsers/gstmpegaudioparse.c: baseparse: introduce a baseparse frame to serve as context ... and adjust subclass parsers accordingly 2011-01-07 16:39:51 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: restrict duration scanning to pull mode and avoid extra set_caps call 2011-01-07 15:58:49 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: update some documentation Also add some more debug. 2011-01-06 11:41:44 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: allow increasing min_size for current frame parsing only Also check that subclass actually either directs to skip bytes or increases expected frame size to avoid going nowhere in bogus indefinite looping. 2011-01-14 15:26:37 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baesparse: fix refactor regression in loop based parsing 2011-01-06 11:16:56 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: pass all available data to subclass rather than minimum Also reduce some adapter calls and add a few debug statements. 2010-12-10 15:59:49 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: fix reverse playback handling 2010-12-10 14:56:13 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: minor typo and debug statement cleanup 2010-12-10 14:40:05 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: reduce locking ... which is either already mute and/or implicitly handled by STREAM_LOCK. 2011-01-27 17:32:49 +0100 Sebastian Dröge * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/h264/gstvdph264dec.c: vdpau: Initialize some variables to make gcc 4.6 happy 2011-01-27 17:29:12 +0100 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Initialize some variables to make gcc 4.6 happy 2011-01-26 18:45:56 +0000 Tim-Philipp Müller * ext/jp2k/gstjasperdec.c: * ext/jp2k/gstjasperenc.c: jp2kdec, jp2kenc: add support v308 (4:4:4 YUV) Because we can. 2011-01-26 14:27:21 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Use the correct for limit There are 3 taglists to be tested, not 2 2011-01-26 11:40:43 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: Do not forget to unref some stuff Cleanup properly by unrefing the encoding profile and preview caps 2011-01-26 10:54:53 -0300 Thiago Santos * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: Add names to some elements Adds names to instances of some elements to make debugging easier 2011-01-25 18:10:18 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Handle videosink states more carefully When going to ready, camerabin2 could create an empty file if the videosink was put to ready. This patch only puts videosink to ready on the PAUSED_TO_READY state change if it is on PAUSED or PLAYING. 2011-01-14 14:08:38 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: avoid loop in frame locating interpolation 2011-01-24 23:32:30 -0300 Thiago Santos * ext/rsvg/gstrsvgoverlay.c: rsvgoverlay: Do not segfault on unexistent files When passing an unexistent file to rsvgoverlay it would crash because the svg loading would fail without setting an error. This patch makes it check if the handle was actually created and logs an error in case it didn't. Maybe it should post an error to the bus, but the previous error handling didn't, so I just followed the same logic. 2011-01-24 18:37:12 -0300 Thiago Santos * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: add timing printing for preview image Measure and print the time taken to generate preview image. And fix a typo 2011-01-24 18:36:58 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Remove unused macro 2011-01-12 16:26:19 +0200 Lasse Laukkanen * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: Don't set default values for GstPhotography interface settings Don't set any default values for source element GstPhotography interface settings, source elements should have sane defaults themselves. Also, setting scene-mode is tricky as it is a superset of other GstPhotography settings. This might cause problem with defaults e.g. setting scene-mode to 'night' may configure flash-mode as 'on' by definition, and after that we don't want to override this flash-mode setting with gst-camerabin-test default value. Moreover, user needs have an option to set scene mode first and then force some individual setting to a different value from the scene-mode definition. https://bugzilla.gnome.org/show_bug.cgi?id=639841 2011-01-24 17:46:49 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Check the start time of buffers Be careful when trying to create a newsegment event to avoid start times of -1 from invalid buffer timestamps 2011-01-11 15:52:03 +0000 Vincent Penquerc'h * gst/dvdspu/gstspu-vobsub-render.c: dvdspu: don't write clipped lines to the output buffer We may not increment the output pointer, but it'll still be just off the end of the allocated area. https://bugzilla.gnome.org/show_bug.cgi?id=602847 2011-01-19 15:07:25 -0300 Thiago Santos * gst/camerabin2/PORTING: camerabin2: Update porting file Adds porting information about using encodebin on camerabin2 2011-01-14 08:12:25 -0300 Thiago Santos * gst/camerabin2/PORTING: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstimagecapturebin.c: camerabin2: Add image-done message Post an image-done message when a new image is saved to disk 2011-01-11 14:50:48 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * tests/check/Makefile.am: * tests/check/elements/camerabin2.c: camerabin2: Implement tagsetter interface 2011-01-11 10:29:48 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Add preview image to tests Adds tests for checking that preview images are posted with the correct caps on tests 2011-01-11 09:12:24 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Add a property to select the encoding profile Adds a video-profile to allow selecting which encoding profile to use for video recordings 2011-01-11 08:44:41 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstplugin.c: * gst/camerabin2/gstvideorecordingbin.c: * gst/camerabin2/gstvideorecordingbin.h: * tests/check/Makefile.am: * tests/check/elements/videorecordingbin.c: camerabin2: Removing videorecordingbin Removing videorecordingbin as we now use encodebin for it 2010-12-27 11:29:42 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Move to encodebin 2011-01-10 15:19:52 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Set output-selector pad-negotiation-mode to none Use output-selector none negotiation mode as it was the default before the last changes. This likely needs to be fixed to use 'active' on camerabin2 2011-01-10 15:19:04 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Handle state change failures When its internal element fails to change state, don't act as if succeeded. 2010-12-30 00:27:03 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: camerabin2: Implement previewing Implement previewing functionality using 2 properties. A boolean (post-previews) that indicates if previews should be posted, and a GstCaps (preview-caps) to provide the desired preview caps. wrappercamerabinsrc implements previewing by supplying the captured image to a pipeline to adapt it to the required caps before posting. 2010-12-30 00:26:07 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/Makefile.am: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: camerabin2: Add methods for preview image message posting Adds a helper struct and functions for implementing a preview message in camerabin2. 2010-12-29 23:48:31 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: tests: Use mainloops Use mainloops instead of sleeps to read bus messages and catch errors. 2010-12-29 14:12:06 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Use drop_eos function from camerabingeneral There was already a event probe function for dropping EOS on camerabingenereal, so use that instead of replicating the code 2011-01-24 11:55:41 -0300 Thiago Santos * tests/check/elements/camerabin2.c: * tests/check/elements/imagecapturebin.c: tests: camerabin2: imagecapturebin2: fix warnings Warnings passed me by on the last commits to camerabin2 tests, fixing them. 2011-01-24 11:05:41 -0300 Thiago Santos * tests/check/elements/camerabin2.c: tests: camerabin2: Only run a test if -good 0.10.27 is present A camerabin2 tests depends on the commit dcbba0932dc579abd6aab4460fa1a416374eda1b for jpegenc on -good that was released on 0.10.27. This patch makes it check for this version before running the test. 2011-01-24 10:08:17 -0300 Thiago Santos * tests/check/elements/imagecapturebin.c: tests: imagecapturebin: Only run a test if -good is 0.10.27 or newer One test on imagecapturebin requires dcbba0932dc579abd6aab4460fa1a416374eda1b on good that was released on 0.10.27. https://bugzilla.gnome.org/show_bug.cgi?id=640286 2011-01-18 17:31:06 -0300 Thiago Santos * gst/camerabin/camerabingeneral.c: * gst/camerabin/camerabingeneral.h: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: add names for more elements 2011-01-24 11:18:29 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Back to development === release 0.10.21 === ('0', '10', '21') 2011-01-21 21:13:22 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.21 2011-01-19 20:00:13 -0800 David Schleef * tools/gst-element-maker: element-maker: Fix handling of debug category 2011-01-19 18:26:30 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: mind gst_buffer_unref not liking NULL Fixes #639950. 2011-01-18 18:18:03 -0300 Thiago Santos * gst/mxf/mxfdemux.c: mxfdemux: Fix unitialized variable warning 2011-01-18 13:00:11 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: 0.10.20.4 pre-release 2011-01-14 16:30:11 -0300 Thiago Santos * gst/audioparsers/gstbaseparse.c: audioparsers: baseparse: Be careful to not lose the event ref Don't unref the event if it hasn't been handled, because the caller assumes it is still valid and might reuse it. I ran into this problem when transcoding an AVI (with mp3 inside) to gpp. https://bugzilla.gnome.org/show_bug.cgi?id=639555 2011-01-13 11:28:32 -0300 Thiago Santos * tests/check/elements/qtmux.c: test: qtmux: Tests qtmux reuse Forces the use of qtmux after it has been put to PLAYING and back to NULL once https://bugzilla.gnome.org/show_bug.cgi?id=639338 2011-01-13 15:27:36 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: set src pads when starting file ... rather than at _init time, so they are also available following a pad (de)activation cycle. https://bugzilla.gnome.org/show_bug.cgi?id=639338 2011-01-12 16:39:22 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: * ext/kate/gstkateutil.c: kate: ensure the kate pad does not shoot ahead of the video pad Sync both pads by waiting in the kate chain function. Do not reset our internal segment from segment updates, in order to be able to map video running time to kate running time, to give libtiger the timestamp it expects. This allows us to use running time to sync to video, which is The Right Way. https://bugzilla.gnome.org/show_bug.cgi?id=600929 2011-01-13 18:35:15 -0200 Luciana Fujii Pontello * gst/camerabin/gstcamerabin.c: camerabin: Enable conversion flags Camerabin default should just work, so we need to enable audio, image and video conversions. https://bugzilla.gnome.org/show_bug.cgi?id=639456 2011-01-13 17:10:13 +0000 Tim-Philipp Müller * gst/audioparsers/gstdcaparse.c: dcaparse: fix sync word for 14-bit little endian coding Fix copy'n'paste bug that made us look for the raw little endian sync word twice instead of looking for the 14-bit LE sync word as well. Fixes parsing of such streams (see #636234 for sample file). 2011-01-13 16:27:04 +0000 Tim-Philipp Müller * gst/audioparsers/gstbaseparse.c: docs: minor baseparse docs/comment fixes Remove copy'n'paste leftovers. 2011-01-13 13:36:09 +0200 Teemu Katajisto * gst/camerabin/gstcamerabin.c: camerabin: set pad-negotiation-mode to active for output-selector Fixes #639413. 2011-01-12 16:55:07 +0200 Stefan Kost * gst/asfmux/gstasfmux.c: asfmux: use g_error_free instead of g_free 2011-01-12 16:50:51 +0200 Stefan Kost * tests/examples/camerabin2/gst-camera2.c: camerabin2: use g_error_free instead of g_free 2011-01-12 11:57:29 +0100 Edward Hervey * gst/y4m/gsty4mdec.c: y4mdec: Default colorspace is I420 https://bugzilla.gnome.org/show_bug.cgi?id=639296 2011-01-11 23:44:51 +0000 Tim-Philipp Müller * configure.ac: * win32/common/config.h: 0.10.20.3 pre-release 2011-01-11 15:50:52 +0200 Stefan Kost * common: Automatic update of common submodule From e572c87 to f94d739 2011-01-10 19:11:22 +0100 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: mpegtspacketizer: Don't forget the GType when using caps_new_simple() 2011-01-10 16:36:45 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From ccbaa85 to e572c87 2011-01-10 14:54:10 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 46445ad to ccbaa85 2011-01-10 11:25:47 +0000 Tim-Philipp Müller * gst/mpegdemux/mpegtspacketizer.c: mpegtsdemux: fix silly way of creating caps 2011-01-10 11:18:52 +0000 Karol Sobczak * gst/mpegdemux/mpegtspacketizer.c: mpegtsdemux: fix re-syncing on invalid data after seek Or possibly even at startup. If we couldn't find a sync within the first few bytes, we'd just push more data into the adapter but never discard any of the invalid data at the beginning, so would never be able to re-sync. https://bugzilla.gnome.org/show_bug.cgi?id=639063 2011-01-08 03:12:11 +0000 Tim-Philipp Müller * ext/cog/gstcogdownsample.c: * ext/cog/gstcogutils.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: * ext/schroedinger/gstschroutils.c: cog, schroedinger: fix warnings when compiling with -DG_DISABLE_ASSERT 2011-01-08 03:10:00 +0000 Tim-Philipp Müller * configure.ac: * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * win32/common/config.h: 0.10.20.2 pre-release 2011-01-08 02:49:06 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update docs 2011-01-08 02:47:12 +0000 Tim-Philipp Müller * po/bg.po: * po/ca.po: * po/ja.po: po: update translations 2011-01-08 02:43:41 +0000 Tim-Philipp Müller * gst/camerabin/Makefile.am: * gst/camerabin/camerabingeneral.c: * gst/camerabin/gstcamerabin-marshal.list: * gst/camerabin/gstinputselector.c: * gst/camerabin/gstinputselector.h: camerabin: use private input-selector that still has "select-all" property The "select-all" property was removed when input-selector was moved to core, but camerabin uses this, so make camerabin use a private copy until a better fix is found. 2011-01-08 00:32:21 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: Makefile.am clean-up Avoid duplicates GST_CHECK_CFLAGS and GST_OPTIONS_CFLAGS are already in AM_CFLAGS. Add LDADD instead of GST_CHECK_LIBS for consistency. 2011-01-08 00:19:06 +0000 Tim-Philipp Müller * gst/smoothwave/demo-osssrc.c: smoothwave: remove old 0.8 example containing code with sideeffects in g_return_if_fail() May just as well remove it rather than fix it, so it doesn't show up in greps for this any longer. 2011-01-08 00:18:17 +0000 Tim-Philipp Müller * tests/check/elements/.gitignore: tests: make git ignore new schroenc test binary 2011-01-08 00:17:26 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix CFLAGS and LIBADD order in Makefile.am 2011-01-08 00:08:11 +0000 Tim-Philipp Müller * tests/check/Makefile.am: tests: never disable g_assert() and cast checks for the unit tests The unit tests are riddled with g_assert() and friends, make sure we don't disable assert and cast checks for the unit tests even if this has been specified for the rest of the code base, e.g. via --disable-glib-asserts. 2011-01-08 00:01:01 +0000 Tim-Philipp Müller * ext/directfb/dfb-example.c: directfb: don't put code with side-effects into g_assert() It will all be turned into a NOOP if -DG_DISABLE_ASSERT is used (as it is for pre-releases and releases). 2011-01-07 23:57:21 +0000 Tim-Philipp Müller * ext/xvid/gstxvidenc.c: xvidenc: don't put code with side effects into g_return_val_if_fail() And don't use g_return*_if_fail() for error handling in elements. 2011-01-07 18:49:02 +0000 Tim-Philipp Müller * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: * gst/mpegvideoparse/mpegvideoparse.h: Revert "mpegvideoparse: fix timestamp generation" This reverts commit 2271608c4314d6d0a685c18c5c47d55495586159. This patch needs more work so it doesn't cause grave playback regressions (multi-second freezes) with some files that have slightly broken timestamps but play fine everywhere else. https://bugzilla.gnome.org/show_bug.cgi?id=636279 https://bugzilla.gnome.org/show_bug.cgi?id=632222 2011-01-07 15:47:39 +0000 Tim-Philipp Müller * configure.ac: configure: fix --disable-external 2011-01-07 14:51:46 +0000 Tim-Philipp Müller * configure.ac: configure: use $LIBM instead of hard-coding -lm 2011-01-07 15:22:07 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: don't leak the caps 2011-01-07 02:10:33 +0000 Tim-Philipp Müller * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix PAT and PMT info-related object leaks 2011-01-06 12:51:27 +0100 Edward Hervey * gst/jpegformat/gstjpegparse.c: jpegparse: Fix unitialized variable on macosx 2011-01-06 12:50:14 +0100 Edward Hervey * gst/jp2kdecimator/jp2kcodestream.c: jp2kdecimator: Fix unitialized variables on macosx 2011-01-06 12:49:43 +0100 Edward Hervey * gst/audioparsers/gstflacparse.c: flacparse: Fix unitialized variable on macosx 2010-12-15 15:58:48 -0800 David Schleef * gst/y4m/gsty4mdec.h: y4mdec: Fix copyright 2010-12-17 14:50:50 -0800 David Schleef * tools/element-templates/pushsrc: * tools/gst-element-maker: element-maker: improve pushsrc 2011-01-05 16:43:45 +0100 Edward Hervey * gst/y4m/gsty4mdec.c: y4m: Fix unitialized variables on macosx 2011-01-05 13:44:04 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/Makefile.am: * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/ffmpeg-colorspace.h: dvbsuboverlay: some more minor clean-ups 2011-01-04 16:03:01 +0100 Janne Grunau * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix leak of "clear screen" DVBSubtitles structs 2011-01-04 13:51:21 +0000 Janne Grunau * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix two minor deinitialization memory leaks 2011-01-03 23:55:59 +0000 Tim-Philipp Müller * tests/examples/Makefile.am: examples: dist camerabin2 example as well https://bugzilla.gnome.org/show_bug.cgi?id=638604 2011-01-03 23:49:51 +0000 Tim-Philipp Müller * gst/camerabin2/Makefile.am: camerabin2: fix cflags and libs order in Makefile.am 2011-01-03 23:47:33 +0000 Tim-Philipp Müller * gst-libs/gst/basecamerabinsrc/Makefile.am: basecamerabinsrc: fix libs order in Makefile.am 2011-01-03 23:46:02 +0000 Tim-Philipp Müller * gst-libs/gst/Makefile.am: build: fix disting of experimental basecamerabinsrc lib used by camerabin2 https://bugzilla.gnome.org/show_bug.cgi?id=638604 2011-01-03 17:10:36 -0600 Rob Clark * sys/dvb/camswclient.c: * sys/dvb/gstdvbsrc.c: dvb: fix build errors on macosx fixes the following compile errors: cc1: warnings being treated as errors camswclient.c: In function 'cam_sw_client_open': camswclient.c:81: warning: implicit declaration of function 'strncpy' camswclient.c:81: warning: incompatible implicit declaration of built-in function 'strncpy' camswclient.c:89: warning: implicit declaration of function 'strerror' camswclient.c:89: warning: nested extern declaration of 'strerror' camswclient.c:89: warning: format '%s' expects type 'char *', but argument 9 has type 'int' camswclient.c: In function 'send_ca_pmt': camswclient.c:129: warning: implicit declaration of function 'memcpy' camswclient.c:129: warning: incompatible implicit declaration of built-in function 'memcpy' gstdvbsrc.c:48:19: error: error.h: No such file or directory Signed-off-by: Rob Clark 2011-01-03 20:05:52 +0100 Janne Grunau * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: remove unnecessary RGB -> YUV conversion by using YUV palettes the default CLUTs still use RGB -> YUV conversions since the standard defines them as RGBA values. 2011-01-03 20:21:57 +0000 Tim-Philipp Müller * m4/Makefile.am: * m4/esd.m4: * m4/glib.m4: * m4/gst-matroska.m4: * m4/gst-shout2.m4: * m4/gtk.m4: * m4/ogg.m4: * m4/vorbis.m4: m4: remove some cruft 2011-01-03 17:24:23 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: adjust nasty case timestamp tracking That is, all sorts of problems arise with re-ordered input timestamps that tend to defy automagic handling for every case, so allow for a few variations that can be tried depending on circumstances. Also try to document accordingly. Also fixes #638288. 2010-12-30 21:48:41 +0200 Felipe Contreras * gst/qtmux/gstqtmux.c: qtmux: get rid of timestamp overprotectiveness Signed-off-by: Felipe Contreras 2011-01-03 16:56:57 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/atomsrecovery.c: * gst/qtmux/gstqtmux.c: qtmux: simplify and fix pts_offset storing In particular, only write a ctts atom if and only if ever a non-zero offset. 2011-01-03 10:43:15 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: add some more documentation 2010-12-03 15:23:00 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: remove large-file property Rather, auto-determine if 64-bits fields are needed for a valid result, and stick to plain 32-bits if not needed. API: GstQTMux:large-file (removed) 2011-01-03 18:13:37 +0200 Stefan Kost * sys/dvb/README: README: fix the example pipeline Fix the obvious outdated parts. Still this README looks outdated and should be updated or removed. 2011-01-02 19:38:01 -0800 David Schleef * tools/gst-element-maker: element-maker: Add debug category 2011-01-02 16:13:56 -0800 David Schleef * gst/colorspace/colorspace.c: colorspace: Disable matrixing on big-endian It's broken until someone writes better Orc code. Fixes #631232. 2010-12-05 03:29:42 -0800 David Schleef * gst/mpegtsmux/tsmux/tsmuxstream.c: mpegtsmux: Set adaptation flag when appropriate Specifically, when there's stuff to go into the adaptation header. 2010-11-17 17:49:17 -0800 David Schleef * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: Set random_access_indicator for keyframes 2010-12-31 16:20:22 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: tiger: outline text by default, to make it easier to read https://bugzilla.gnome.org/show_bug.cgi?id=638527 2011-01-02 15:11:52 +0000 Tim-Philipp Müller * LICENSE_readme: * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-jack.xml: * ext/Makefile.am: * ext/jack/.gitignore: * ext/jack/Makefile.am: * ext/jack/README: * ext/jack/gstjack.c: * ext/jack/gstjack.h: * ext/jack/gstjackaudioclient.c: * ext/jack/gstjackaudioclient.h: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosink.h: * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackaudiosrc.h: * ext/jack/gstjackringbuffer.h: * ext/jack/gstjackutil.c: * ext/jack/gstjackutil.h: * gst-plugins-bad.spec.in: * tests/examples/Makefile.am: * tests/examples/jack/Makefile.am: * tests/examples/jack/jack_client.c: jack: move plugin to gst-plugins-good https://bugzilla.gnome.org/show_bug.cgi?id=621929 2011-01-02 13:52:36 +0000 Tim-Philipp Müller * ext/kate/gstkatedec.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkateutil.c: kate: fix caps and string leaks and some minor clean-ups Don't leak source caps. Use GST_PTR_FORMAT to log caps, so we don't need to leak strings from gst_caps_to_string(). No need to use GST_DEBUG_FUNCPTR for vfuncs where the base class will never look them up (like property getters/setters). Don't use g_return_*_if_fail() for things that aren't directly programming errors (by the application developer). Fixes kate unit test under valgrind. 2010-12-31 16:17:50 +0000 Vincent Penquerc'h * ext/kate/gstkateutil.c: kate: reenable the sending of a message for tags https://bugzilla.gnome.org/show_bug.cgi?id=638412 2011-01-02 13:29:06 +0000 Tim-Philipp Müller * gst/gaudieffects/Makefile.am: gaudieffects: dist python examples 2010-12-31 00:09:09 -0800 David Schleef * tools/gst-element-maker: element-maker: Update FSF address 2010-12-31 00:07:28 -0800 David Schleef * tools/Makefile.am: * tools/gst-app-maker: Add gst-app-maker 2010-12-31 00:12:53 -0800 David Schleef * gst/dtmf/tone_detect.c: dtmf: Fix build failure caused by previous commit 2010-12-30 19:21:47 -0800 David Schleef * ext/cog/generate_tables.c: * ext/cog/gstcms.c: * ext/cog/gstcolorconvert.c: cog: Use math-compat.h 2010-12-30 19:21:21 -0800 David Schleef * gst/mpegdemux/gstmpegtsdemux.c: mpegdemux: Fix c99-ism 2010-12-30 19:12:23 -0800 David Schleef * gst/legacyresample/resample_functable.c: * gst/legacyresample/resample_ref.c: legacyresample: Use math-compat header 2010-12-30 19:03:54 -0800 David Schleef * gst/gaudieffects/gstgaussblur.c: * gst/geometrictransform/gstrotate.c: change M_PI to G_PI 2010-12-30 19:03:14 -0800 David Schleef * gst/frei0r/frei0r.h: * gst/frei0r/gstfrei0r.h: frei0r: convert uint32_t to guint32 2010-12-30 18:20:47 -0800 David Schleef * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/tone_detect.c: * gst/dtmf/tone_detect.h: dtmf: build fixes for MSVC Use gint16 and G_PI. 2010-12-30 18:19:47 -0800 David Schleef * gst/dtmf/tone_detect.c: dtmf: reindent 2010-12-30 18:02:06 -0800 David Schleef * gst/dataurisrc/gstdataurisrc.c: dataurisrc: use g_ascii_strcasecmp() 2010-12-31 01:38:02 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-selector.xml: * gst-plugins-bad.spec.in: * gst/selector/.gitignore: * gst/selector/Makefile.am: * gst/selector/gstinputselector.c: * gst/selector/gstinputselector.h: * gst/selector/gstoutputselector.c: * gst/selector/gstoutputselector.h: * gst/selector/gstselector-marshal.list: * gst/selector/gstselector.c: * gst/selector/selector.vcproj: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/selector.c: * tests/examples/Makefile.am: * tests/examples/switch/.gitignore: * tests/examples/switch/Makefile.am: * tests/examples/switch/switcher.c: * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/output-selector-test.c: selector: move input-selector and output-selector to core https://bugzilla.gnome.org/show_bug.cgi?id=614306 2010-12-30 01:17:28 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-colorspace.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dvbsuboverlay.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-jp2kdecimator.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-opencv.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-y4mdec.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update plugin docs 2010-12-30 01:14:29 +0000 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-valve.xml: * gst-plugins-bad.spec.in: * gst/valve/Makefile.am: * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/valve.c: valve: move valve element/plugin to core https://bugzilla.gnome.org/show_bug.cgi?id=630808 2010-12-29 13:18:37 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: camerabin2: Various leak fixes Various leak fixes and some code reorganization 2010-12-27 17:18:29 -0300 Thiago Santos * tests/examples/camerabin2/.gitignore: camerabin2: example: gitignore captured files 2010-12-26 20:52:25 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Implement video capture renegotiate Handle caps renegotiation from camerabin2's renegotiate event to allow video capture to be done with the user's requested resolution. 2010-12-26 20:47:40 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Add tests for video capture Add a test for capturing multiple videos with different resolutions in a sequence. 2010-12-26 20:35:47 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Fix renegotiate event pushing Use a hack to make the event upstream to reach the camera source instead of going downstream and being useless. This was already fixed this way for image srcpad renegotiate and video srcpad was left unfixed. 2010-12-24 09:10:48 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: Refactor internal pipeline Instead of linking 3 src pads from tee to the ghostpads, use 2 srcpads and add an output-selector to completely split caps negotiation of video/image modes. I don't think there is an use case that would require image and video pads to be used at the same time. 2010-12-22 14:42:27 +0000 Vincent Penquerc'h * configure.ac: configure: use -pthread for xvid configure check https://bugzilla.gnome.org/show_bug.cgi?id=637823 https://bugzilla.gnome.org/show_bug.cgi?id=637308 2010-12-28 17:16:05 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: mode can be only image or video No need to check if camerabin is on video mode if it isn't on image mode as those are the only 2 modes available. Additionally, if mode gets corrupted somehow and would be neither image or video it would cause a null pointer dereferencing some lines of code below, so this is safer. 2010-12-28 16:55:11 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Remove unused variable 2010-12-27 16:58:26 -0300 Thiago Santos * gst/asfmux/gstasf.c: asfmux: Fix plugin package name/origin 2010-12-27 13:20:28 +0100 Alessandro Decina * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix compiler warnings 2010-12-27 11:10:53 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: clean-up: allocate flat array of rectangles instead of an array of pointers to individually-allocated rectangles. 2010-12-23 18:18:50 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: tiger: fallback on headers in caps to initialize if headers are absent When Totem switches streams, tiger will be reset, and start receiving buffers from the middle of the stream, without being sent headers. If this happens, try to get headers from the caps. https://bugzilla.gnome.org/show_bug.cgi?id=638004 2010-12-26 17:19:00 +0000 Tim-Philipp Müller * gst-libs/gst/interfaces/photography.c: photography: fix typo in property description 2010-12-26 17:07:38 +0000 Tim-Philipp Müller * tests/examples/camerabin/gst-camera.c: examples: fix gtk3 code path in camerabin example app Just add rows via the combobox's model, which should work with both gtk2 and gtk3, instead of using the gtk_combo_box_append_text() convenience API (which was renamed to gtk_combo_box_text_append_text()). Fixes compilation against gtk3 (there was a typo in the list store variable name, spotted by Markus Vartiainen). 2010-12-25 17:01:11 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: kate: if seeking with GST_SEEK_TYPE_CUR, flush everything We don't know how to calculate the target, so be safe. https://bugzilla.gnome.org/show_bug.cgi?id=600929 2010-12-25 16:44:03 +0000 Tim-Philipp Müller * ext/kate/gstkatetiger.c: tiger: move #if #else bits outside of macro Some compilers/preprocessors don't like if/else/endif preprocessor directives in the middle of macros. 2010-12-24 14:44:23 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: clean-up: merge private data struct into main struct 2010-12-24 14:24:12 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: clean-up: dvb sub parser helper doesn't need to be a GObject 2010-01-25 18:26:25 +0000 Vincent Penquerc'h * ext/kate/gstkate.c: tiger: Give tiger primary rank 2010-01-25 18:58:38 +0000 Vincent Penquerc'h * ext/kate/Makefile.am: * ext/kate/gstkate.c: * ext/kate/gstkatedec.c: * ext/kate/gstkatedec.h: * ext/kate/gstkateparse.c: * ext/kate/gstkatespu.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: * ext/kate/gstkateutil.c: * ext/kate/gstkateutil.h: kate: add segment tracking, and various other improvements https://bugzilla.gnome.org/show_bug.cgi?id=600929 2010-12-24 10:15:46 +0000 Vincent Penquerc'h * gst/mve/gstmvedemux.c: mve: do not use the pad buffer allocation functions in demuxers https://bugzilla.gnome.org/show_bug.cgi?id=637929 2010-12-24 09:50:00 +0000 Vincent Penquerc'h * gst/mpegdemux/gstmpegtsdemux.c: mpegdemux: do not use the pad buffer allocation functions in demuxers https://bugzilla.gnome.org/show_bug.cgi?id=637931 2010-12-23 22:01:00 +0000 Tim-Philipp Müller * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: try harder to make buffer metadata writable before modifying Also, check buffer for NULL-ness before dereferencing it. https://bugzilla.gnome.org/show_bug.cgi?id=637824 2010-12-22 11:44:55 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: Notify earlier Notify about ready-for-capture changes earlier to allow camerabin2 to do the videobin state switching before the capture starts. 2010-12-21 19:22:36 -0300 Thiago Santos * gst/camerabin2/gstvideorecordingbin.c: videorecordingbin: Fix leaks 2010-12-21 11:04:00 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Refactor tests Refactor tests case so that the same tests can be run for different camera sources. 2010-12-20 18:30:32 -0300 Thiago Santos * tests/check/elements/.gitignore: tests: gitignore camerabin2 tests Adds more camerabin2 elements tests to gitignore 2010-12-20 18:09:26 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Add converters for viewfinder branch Viewfinder branch should have converters as it has to work always anyway. 2010-12-20 14:20:35 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/imagecapturebin.c: imagecapturebin: Add another test case Adds a test case to check if a sequence of buffers with different caps can be pushed to imagecapturebin and saved correctly 2010-12-20 02:59:14 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/viewfinderbin.c: viewfinderbin: Add basic check test Adds minimum check test. It's not a very useful test, but at least it allows us to run it under valgrind and check for leaks automatically 2010-12-20 02:58:44 -0300 Thiago Santos * gst/camerabin2/gstviewfinderbin.c: viewfinderbin: Remove leaks Removing various leaks from viewfinderbin 2010-12-17 23:06:45 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: more logs 2010-12-17 23:06:23 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Small tests update Increases timeout value so that tests won't fail with full debug output. Also removes buffer alloc from videotestsrc as this feature isn't ready on camerabin2 2010-12-14 22:06:33 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Adds tests for image capture with different caps Adds a test that tries sucessive captures with different caps 2010-12-16 00:40:25 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: Handle camerabin2 custom renegotiate events 2010-12-15 14:05:54 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Use custom renegotiate event Adds a custom renegotiate event that is pushed to the camerasrc pad that needs renegotiation due to the user selecting a new capture caps for that pad. This is a way of notifying the source that it should update its caps, even if it doesn't use pad allocs. 2010-12-16 22:49:24 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: wrappercamerabinsrc: Add local mode 2010-12-14 18:42:51 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Adds properties for capture caps Adds properties for selecting caps for video and image captures 2010-12-19 19:40:54 -0300 Thiago Santos * gst-libs/gst/Makefile.am: basecamerabinsrc: Fix makefile building order basecamerabinsrc must be built after photography interface as it depends on it. 2010-12-10 17:45:40 +0200 Teemu Katajisto * gst/camerabin2/gstimagecapturebin.c: camerabin2: remove abreviations from imagecapturebin 2010-12-16 08:47:56 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: basecamerasrc: Add some more logging Adds some more logging and always assume capture has started before start_capture is called. This helps on image captures that might call finish_capture directly from start_capture or before start_capture finishes. 2010-12-15 22:35:16 -0300 Thiago Santos * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst/camerabin2/gstwrappercamerabinsrc.c: basecamerasrc: More cleanup Remove old legacy code copied from camerabin(1) that should be handled by caps negotiation on camerabin2 2010-12-15 14:07:15 -0300 Thiago Santos * gst/camerabin2/gstwrappercamerabinsrc.c: wrappercamerabinsrc: Remove unused variable Remove wait_for_prepara variable that wasn't being used 2010-12-14 17:23:10 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstplugin.c: * gst/camerabin2/gstwrappercamerabinsrc.c: * gst/camerabin2/gstwrappercamerabinsrc.h: * tests/check/elements/camerabin2.c: camerabin2: Rename v4l2camerasrc to wrappercamerabinsrc Use a better name for the element that wraps single pad src element into a 3pad source required by camerabin2. 2010-12-14 16:59:54 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: v4l2camerasrc: remove video filter property code Removes some unused custom video filter element property code 2010-12-16 10:51:38 -0300 Thiago Santos * gst/camerabin2/gstviewfinderbin.c: viewfinderbin: Fix video-sink property again Avoid switching the element on the set_property function, instead wait for the next NULL -> READY transition. 2010-12-14 14:48:28 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Use videotestsrc on the tests Use videotestsrc to avoid openning the camera device on the tests. 2010-12-14 14:43:59 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: v4l2camerasrc: add video-src property Adds a property to select the src element to be used internally on v4l2camerasrc. Yeah, I know, this element should have a better name. 2010-12-13 17:56:14 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Add test for supported caps properties Adds tests for checking that the supported caps properties work as expected (using the respective pads get caps function) 2010-12-14 08:44:36 -0300 Thiago Santos * gst/camerabin2/PORTING: camerabin2: adds PORTING document Adds a PORTING document to explain the differences from camerabin to camerabin2 and help application developers on porting from one to another. 2010-12-13 19:36:41 -0300 Thiago Santos * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/basecamerabinsrc/Makefile.am: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c: * gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.c: * gst-libs/gst/basecamerabinsrc/gstcamerabin-enum.h: * gst/camerabin2/Makefile.am: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: * tests/check/Makefile.am: * tests/check/elements/camerabin2.c: camerabin2: Move basecamerasrc to gst-libs Move the base camera src class to gst-libs/gst/basecamerabinsrc to allow it to be included from the tests. 2010-12-14 14:28:49 +0200 Teemu Katajisto * gst/camerabin2/gstvideorecordingbin.c: * gst/camerabin2/gstvideorecordingbin.h: * tests/check/elements/videorecordingbin.c: camerabin2: add videorecordingbin::video-muxer property 2010-12-14 12:21:57 +0200 Teemu Katajisto * gst/camerabin2/gstvideorecordingbin.c: * gst/camerabin2/gstvideorecordingbin.h: * tests/check/elements/videorecordingbin.c: camerabin2: add videorecordingbin::video-encoder property 2010-12-14 09:58:35 +0200 Teemu Katajisto * gst/camerabin2/gstvideorecordingbin.c: camerabin2: remove abbreviations from videorecordingbin 2010-12-14 10:48:56 +0200 Teemu Katajisto * gst/camerabin2/gstimagecapturebin.c: camerabin2: imagecapturebin: release objects and memory allocations 2010-12-13 16:36:19 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Add camera-src property Adds a property to select the camera source element to be used. Changing only happens on the next NULL->READY transition 2010-12-13 11:53:59 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Rename variables Use better name for the variables, making the code clearer. Also keep a ref for some internal elements to avoid fetching them by name when needed later. 2010-12-12 23:03:21 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstcamerabin2.c: camerabin2: Add properties for supported capture caps Adds 2 property for getting the supported image/video capture caps from the camera source. 2010-12-12 20:46:16 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstcamerabin-enum.h: * gst/camerabin2/gstv4l2camerasrc.c: camerabin2: Put enums inside their classes .c Remove global list of properties' enums and put them inside their classes .c 2010-12-12 19:33:24 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstviewfinderbin.h: * tests/check/elements/camerabin2.c: viewfinderbin: Fixes to video-sink handling Handle video-sink more carefully, checking if it should be already added to the bin, and removing old ones when replacing. 2010-12-13 16:28:58 +0200 Teemu Katajisto * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstimagecapturebin.h: * tests/check/elements/imagecapturebin.c: camerabin2: add imagecapturebin::image-muxer property 2010-12-13 12:08:22 +0200 Teemu Katajisto * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstimagecapturebin.h: * tests/check/elements/imagecapturebin.c: camerabin2: add imagecapturebin::image-encoder property 2010-12-10 17:45:40 +0200 Teemu Katajisto * gst/camerabin2/gstimagecapturebin.c: camerabin2: remove abreviations from imagecapturebin 2010-12-10 12:08:48 -0300 André Dieb Martins * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstviewfinderbin.h: * tests/check/elements/camerabin2.c: camerabin2: implement viewfinderbin::video-sink property to override default video output 2010-12-09 14:13:13 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: basecamerasrc: Make construct_pipeline optional Construct pipeline should be optional. Subclasses that don't have internal elements don't need it. 2010-12-09 12:23:01 +0200 Stefan Kost * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstbasecamerasrc.h: basecamerasrc: write more details on the api docs 2010-12-09 12:22:26 +0200 Stefan Kost * gst/camerabin2/gstbasecamerasrc.h: basecamerasrc: use the enum type for mode 2010-12-09 12:21:16 +0200 Stefan Kost * gst/camerabin2/gstbasecamerasrc.c: basecamerasrc: comment cleanups 2010-12-22 21:44:47 +0000 Tim-Philipp Müller * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: ensure buffer metadata is writable before modifying it https://bugzilla.gnome.org/show_bug.cgi?id=637824 2010-12-22 18:13:04 +0100 Edward Hervey * gst/id3tag/gstid3mux.c: id3mux: Set to GST_RANK_PRIMARY We want it to take precedence over any other id3 formatter. 2010-12-21 18:01:28 +0100 Sebastian Dröge * gst/autoconvert/gstautoconvert.c: autoconvert: Fix some more leaks and reorganize unref code 2010-12-20 15:33:28 +0100 benjamin gaignard * gst/autoconvert/gstautoconvert.c: autoconvert: Avoid some leaks in autoconvert unref sink and src pad after gst_pad_by_direction calls unref element if gst_auto_convert_activate_element failed. See bug #637553. 2010-12-21 17:03:43 +0100 Sebastian Dröge * tests/check/elements/asfmux.c: asfmux: Fix buffer leak in the unit test 2010-12-20 07:19:04 -0800 Saleem Abdulrasool * tests/examples/camerabin/gst-camera.c: camerabin: fix for latest GTK+ API changes 2010-12-20 17:47:29 +0100 Edward Hervey * common: Automatic update of common submodule From 169462a to 46445ad 2010-12-20 11:06:52 -0300 Thiago Santos * tests/check/elements/camerabin.c: camerabin: Fix caps leaks Fix some caps leaks on unit tests 2010-12-20 09:37:22 -0300 Thiago Santos * tests/check/elements/jifmux.c: jifmux: Fix leaks on check test Fix leaks in jifmux check test 2010-12-20 13:51:03 +0200 Stefan Kost * gst-libs/gst/interfaces/photography.c: photography: use a flags type instead of the uint Also use 0 as default and let the implementation set something that they support. 2010-12-20 11:14:49 +0200 Hu Gang * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photography: add missing property and cabability flag for noise reduction 2010-12-19 17:23:24 +0530 Olivier Crête * tests/check/elements/autoconvert.c: tests: Fix leak in autoconvert test 2010-12-19 17:16:10 +0530 Olivier Crête * gst/autoconvert/gstautoconvert.c: autoconvert: Use gst_caps_can_intersect() 2010-12-19 12:53:34 +0100 Sebastian Dröge * gst/qtmux/gstqtmux.c: qtmux: Free AtomInfo structs 2010-12-19 12:50:30 +0100 Sebastian Dröge * gst/qtmux/gstqtmux.c: qtmux: Free tag string after use 2010-12-19 12:12:25 +0100 Sebastian Dröge * tests/check/pipelines/tagschecking.c: tagschecking: Fix some more memory leaks 2010-12-19 12:12:12 +0100 Sebastian Dröge * tests/check/elements/imagecapturebin.c: imagecapturebin: Don't leak message in the unit test 2010-12-19 12:09:41 +0100 Sebastian Dröge * gst/camerabin2/gstimagecapturebin.c: imagecapturebin: Don't leak pad and sink 2010-12-19 12:05:11 +0100 Sebastian Dröge * gst/camerabin2/gstimagecapturebin.c: imagecapturebin: Don't leak pad template created from static pad template 2010-12-19 12:03:03 +0100 Sebastian Dröge * gst/camerabin2/gstimagecapturebin.c: imagecapturebin: Don't leak location string 2010-12-19 12:00:25 +0100 Sebastian Dröge * gst/jpegformat/gstjifmux.c: jifmux: Don't leak taglist 2010-12-19 11:38:03 +0100 Sebastian Dröge * gst/autoconvert/gstautovideoconvert.c: autovideoconvert: Don't leak pad templates created from static pad templates 2010-12-19 11:20:25 +0100 Sebastian Dröge * gst/autoconvert/gstautovideoconvert.c: autovideoconvert: Add autoconvert child before chaining up to parent state change function ...and remove/unlink autoconvert child when going back to NULL. 2010-12-19 11:19:38 +0100 Sebastian Dröge * tests/check/Makefile.am: states: Ignore more vdpau elements in the generic states test 2010-12-19 11:17:47 +0100 Sebastian Dröge * Makefile.am: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/autovideoconvert.c: autovideoconvert: Rename and adjust unit test too 2010-12-18 12:48:42 -0800 Leo Singer * sys/applemedia/miovideosrc.c: * sys/applemedia/qtkitvideosrc.m: applemedia: fix compiler warning: redundant declaration of 'parent_class' GST_BOILERPLATE_FULL declares parent_class as well. https://bugzilla.gnome.org/show_bug.cgi?id=637532 2010-12-17 19:41:25 +0200 Lasse Laukkanen * gst/qtmux/gstqtmux.c: qtmux: allow zero duration tracks 2010-12-16 15:31:23 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: use GST_LOG etc. for logging The dvbsub routines were originally designed as a mini lib with a log callback (which from the looks of it in our case would always be called and always assemble the string even with debug output disabled). Some of these debug statements can probably be removed or cleaned up some more. 2010-12-16 00:19:13 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/ffmpeg-colorspace.h: dvbsuboverlay: remove some unused defines 2010-12-16 00:13:18 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix atomic access 2010-12-16 15:33:45 +0000 Janne Grunau * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix rendering artefacts Initialize source x position for odd height special case. 2010-12-16 11:29:07 +0100 Edward Hervey * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: The enable property is a boolean and not an integer 2010-12-16 09:56:00 +0100 Sebastian Dröge * gst/autoconvert/Makefile.am: * gst/autoconvert/gstautovideoconvert.c: * gst/autoconvert/gstautovideoconvert.h: * gst/autoconvert/plugin.c: autoconvert: Rename autocolorspace to autovideoconvert This doesn't just convert between color spaces. 2010-12-15 12:45:38 -0800 David Schleef * tools/Makefile.am: * tools/element-templates/audiofilter: * tools/element-templates/audiosink: * tools/element-templates/audiosrc: * tools/element-templates/base: * tools/element-templates/baseaudiosink: * tools/element-templates/baseaudiosrc: * tools/element-templates/basertpdepayload: * tools/element-templates/basertppayload: * tools/element-templates/basesink: * tools/element-templates/basesrc: * tools/element-templates/basetransform: * tools/element-templates/cddabasesrc: * tools/element-templates/element: * tools/element-templates/gobject: * tools/element-templates/pushsrc: * tools/element-templates/sinkpad: * tools/element-templates/sinkpad-simple: * tools/element-templates/srcpad: * tools/element-templates/srcpad-simple: * tools/element-templates/tagdemux: * tools/element-templates/videosink: * tools/gst-element-maker: element-maker: Clean up directory 2010-12-15 21:28:06 +0100 Benjamin Gaignard * gst/bayer/gstbayer2rgb.c: bayer2rgb: Add framerate to the sink caps Fixes bug #637224. 2010-12-15 21:19:55 +0100 Benjamin Gaignard * tests/check/Makefile.am: * tests/check/elements/autocolorspace.c: autocolorspace: Add unit test 2010-12-15 21:14:38 +0100 Benjamin Gaignard * gst/autoconvert/Makefile.am: * gst/autoconvert/gstautocolorspace.c: * gst/autoconvert/gstautocolorspace.h: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/plugin.c: autocolorspace: Add autoconvert based video format convert element Fixes bug #636106. 2010-12-15 21:11:29 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Rename DVB subtitling media type to subpicture/x-dvb 2010-12-15 21:11:11 +0100 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Rename DVB subtitling media type to subpicture/x-dvb 2010-12-15 20:54:35 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Don't draw anything on the video if the enable property is set to FALSE 2010-12-15 20:53:21 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Add #defines for the property default values 2010-12-15 20:51:12 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Use g_atomic_int_get() for reading the max_page_timeout field 2010-12-15 20:49:57 +0100 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Mark array static const and use G_N_ELEMENTS instead of sizeof 2010-12-15 14:39:56 +0100 Janne Grunau * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: add DESC_DVB_SUBTITLING descriptor for language parsing 2010-12-15 14:23:58 +0100 Janne Grunau * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: enable gather_pes only for DVB subtitle private streams 2010-12-14 14:34:56 +0100 Janne Grunau * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: use atomic instructions to set/get enable property 2010-12-14 14:28:45 +0100 Janne Grunau * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: add property to limit page_time_out to a setable maximum 2010-12-14 11:11:08 +0100 Janne Grunau * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: implement display definition segment subtitle windows simplifies subtitle scaling in blit_i420() 2010-12-11 17:25:29 +0100 Janne Grunau * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: scale subtitles according to the display size Display size is either transmitted in the display definition segment or implicitly defined to 720x576. The subtitle window information also present in the display definition segment is not yet used. 2010-12-11 17:10:25 +0100 Janne Grunau * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: dvbsuboverlay: implement display definition segment parsing 2010-12-10 12:27:54 +0100 Janne Grunau * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix luma stride for scaled subtitles (display width != width) 2010-12-15 16:48:15 +0100 Edward Hervey * ext/rsvg/gstrsvgoverlay.c: rsvgoverlay: Don't set uint on an int property 2010-12-15 14:56:19 +0200 Stefan Kost * common: Automatic update of common submodule From 20742ae to 169462a 2010-12-14 19:03:09 -0800 David Schleef * tools/Makefile.am: * tools/element-maker: * tools/gstaudiofilter.c: * tools/gstaudiosink.c: * tools/gstaudiosrc.c: * tools/gstbaseaudiosink.c: * tools/gstbaseaudiosrc.c: * tools/gstbasertpdepayload.c: * tools/gstbasertppayload.c: * tools/gstbasesink.c: * tools/gstbasesrc.c: * tools/gstbasetransform.c: * tools/gstcddabasesrc.c: * tools/gstelement.c: * tools/gstpushsrc.c: * tools/gsttagdemux.c: * tools/gstvideosink.c: * tools/sinkpad-simple.c: * tools/sinkpad.c: * tools/srcpad-simple.c: * tools/srcpad.c: element-maker: improve generation of several classes Better creation of pads, test and fix many other classes. Most classes work now, although might not create functional elements. 2010-12-13 23:32:30 -0800 David Schleef * configure.ac: * gst/y4m/Makefile.am: * gst/y4m/gsty4mdec.c: * gst/y4m/gsty4mdec.h: y4mdec: Add y4mdec Feel the y4m love. It seeks. It works in pitivi. 2010-12-13 23:15:05 +0000 Francis Rammeloo * sys/winscreencap/gstgdiscreencapsrc.c: gdiscreencapsrc: fix memory leak Structure members of ICONINFO struct filled by GetIconInfo() must be deleted when no longer needed according to the API reference. https://bugzilla.gnome.org/show_bug.cgi?id=611428 2010-12-13 16:23:37 +0100 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: avoid leaking tag event 2010-12-13 15:17:29 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: relax bsid checking ... to the widest possible spec interpretation. Fixes #637062. 2010-12-13 16:23:45 +0200 Stefan Kost * common: Automatic update of common submodule From 011bcc8 to 20742ae 2010-12-12 23:34:02 +0000 Matthew Ife * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: rfbsrc: fail more gracefully if source gets disconnected or geometry changes Don't get caught in an infinite loop if the source gets disconnected and also support gracefully failing upon detecting the frame geometry has increased (rather than segfaulting). https://bugzilla.gnome.org/show_bug.cgi?id=635397 2010-12-12 22:13:13 +0100 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: avoid leaking converted comment string 2010-12-12 12:01:38 +0100 Sebastian Dröge * gst/videomeasure/gstvideomeasure_ssim.c: ssim: Set classification to Filter/Analyzer/Video instead of Filter/Converter/Video Fixes bug #636109. 2010-12-12 02:24:00 +1100 Jan Schmidt * gst/gaudieffects/burn-example.py: * gst/gaudieffects/gstburn.c: gaudieffects: Avoid divide by 0 in burn element 2010-12-12 02:16:49 +1100 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Defer pushing tag updates until streaming. Push tag/title info updates in the streaming thread, avoiding spurious losses of the downstream events when flushing. See: https://bugzilla.gnome.org/show_bug.cgi?id=594222 2010-11-16 17:18:33 +1100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Attempt to use glib language setting for DVD menus/audio 2010-11-16 17:09:06 +1100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Fix silly typo in button state tracking. 2010-12-10 00:58:58 +0100 Ole André Vadla Ravnås * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: applemedia: only enqueue buffers in the VideoToolbox callbacks These callbacks may fire from any thread, hence we should only enqueue buffers and let the streaming thread take care of the rest as soon as the blocking encode or decode operation has finished. 2010-11-19 15:53:55 +0100 Ole André Vadla Ravnås * sys/applemedia/coremediactx.h: * sys/applemedia/cvapi.c: * sys/applemedia/dynapi-internal.h: * sys/applemedia/dynapi.c: * sys/applemedia/dynapi.h: applemedia: bring back Leopard compatibility At least as far as miovideosrc is concerned. Turns out that CoreVideo's CVPixelBufferGetIOSurface is not present in Leopard's version of CoreVideo. We solve this by making it possible for symbols to be marked as optional. 2010-11-29 13:47:11 +0100 Christian Berentsen * sys/winks/ksvideohelpers.c: winks: fix framerate fraction range mapping Min and max may be slightly different but compress to the same fraction. 2010-12-09 18:06:38 +0100 Wim Taymans * ext/jp2k/gstjasperdec.c: jasperdec: don't fail hard on decoding error don't post an error and return GST_FLOW_ERROR on a simple decoding error. We can just resume and continue decoding the next image. 2010-12-09 11:54:17 +0100 Alessandro Decina * sys/applemedia/qtkitvideosrc.m: qtkitvideosrc: reset the queue condition to NO_FRAMES in unlockStop. Fixes a segfault in create: when going PLAYING -> PAUSED -> PLAYING. 2010-12-09 11:04:19 +0100 Alessandro Decina * sys/applemedia/qtkitvideosrc.m: qtkitvideosrc: run the mainRunLoop for a while if not running. QTCaptureSession::addInput and QTCaptureSession::addOutput call NSObject::performSelectorOnMainThread internally so they need the mainRunLoop to run at least for a while to complete. 2010-12-07 19:40:28 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstbasecamerasrc.h: * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: basecamerasrc: Remove ghostpads Remove ghost pads from basecamerasrc. Different implementations of camera sources might not use ghostpads and use default pads. 2010-12-07 19:12:40 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstbasecamerasrc.h: * gst/camerabin2/gstv4l2camerasrc.c: basecamerasrc: Removing ununsed methods Remove one unused method _finish_image_capture() 2010-12-06 11:05:17 -0300 Thiago Santos * tests/check/Makefile.am: * tests/examples/Makefile.am: camerabin2: Only run tests if experimental is enabled Only run camerabin2 tests and build examples if experimental plugins are enabled 2010-12-06 10:06:37 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstv4l2camerasrc.c: camerabin2: Cleanup Removing commented code 2010-12-05 11:18:09 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstbasecamerasrc.h: * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: basecamerasrc: Move start/stop capture signals to basecamerasrc Move start/stop signals and ready-for-capture to basecamerasrc as this should be present on all camera sources 2010-12-04 10:15:34 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstbasecamerasrc.h: * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: basecamerasrc: Add mode property Move mode property from v4l2camerasrc to basecamerasrc, as all camera sources should handle it. 2010-12-04 00:27:17 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Reset all elements on video recording branch before capture We need to reset the elements from the video recording branch, including the queue and capsfilter in order to clear the eos state and activate the pads. This makes it possible to record multiple videos with camerabin2 in a sequence, otherwise the source would get a unexpected return and push EOS, stopping the whole pipeline. 2010-12-03 12:13:07 -0300 Thiago Santos * tests/check/elements/camerabin2.c: camerabin2: Fix tests capture location creation Fixes capture location creation to use multifilesink location like strings. E.g. using capture_%d instead of capture_0 to let camerabin2 handle the %d replacing 2010-12-03 12:12:32 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstv4l2camerasrc.c: camerabin2: More debug logs Sprinkle some more debugging logs 2010-12-03 12:11:59 -0300 Thiago Santos * tests/examples/camerabin2/gst-camera2.c: examples: camerabin2: Print more info Add some printing for error/eos cases. 2010-12-02 03:44:37 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstvideorecordingbin.c: camerabin2: Various fixes As video recording bin's state is locked, we should always remember of setting it to NULL when camerabin2 goes to NULL Be more careful when using elements that might not have been created yet And do not set location property recursively on videorecordingbin 2010-12-02 03:08:52 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/camerabin2.c: camerabin2: Adding tests for camerabin2 Adds some basic tests for camerabin2 2010-12-02 02:21:49 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/imagecapturebin.c: * tests/check/elements/videorecordingbin.c: tests: camerabin2: adds tests for elements Adds basic tests for both imagecapturebin and for videorecordingbin elements 2010-12-02 01:33:19 -0300 Thiago Santos * gst/camerabin2/gstviewfinderbin.c: viewfinderbin: Improve elements creation Be more careful with cleanup of elements. Also add some logs and improve docs a little. 2010-12-02 00:19:05 -0300 Thiago Santos * gst/camerabin2/gstcamerabin-enum.c: * gst/camerabin2/gstcamerabin-enum.h: camerabin2: remove unused code General cleanup, removing unused bits 2010-11-30 20:13:27 -0300 Thiago Santos * configure.ac: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstimagecapturebin.h: * gst/camerabin2/gstvideorecordingbin.c: * gst/camerabin2/gstvideorecordingbin.h: camerabin2: adds location property Adds a location property to enable applications to select the captured files names. Locations are handled just like multifilesink ones Also disables -Wformat-nonliteral to allow to use non-literals on g_strdup_printf on camerabin and generate a sequence of locations for captures. 2010-11-30 20:15:47 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Fix set/get property function names Add more consistency to the function names by using gst_camera_bin as the other functions. 2010-11-30 18:19:20 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Handle vidbin state change individually Keep vidbin state locked to avoid it going to playing without being used and leaving an empty file created. Check the docs on the code for details on the handling. 2010-11-30 11:40:18 -0300 Thiago Santos * configure.ac: * gst/camerabin2/gstcamerabin2.c: camerabin2: Keep it under --enable-experimental camerabin2 is still under heavy development, activate it only if the --enable-experimental flag is on. Also add a note to the docs. 2010-11-30 11:06:33 -0300 Thiago Santos * gst/camerabin2/gstcamerabin-enum.h: * gst/camerabin2/gstv4l2camerasrc.c: v4l2camerasrc: Add ready-for-capture property Adds property that informs if v4l2camerasrc is available for starting a new capture. It is useful for applications to know (via deep-notify) when the property changes and a new capture is possible. Note, however, that starting a new capture from the notify callback will cause a deadlock. 2010-11-30 09:28:50 -0300 Thiago Santos * gst/camerabin2/gstcamerabin-enum.c: * gst/camerabin2/gstcamerabin-enum.h: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: camerabin2: Update v4l2camerasrc to use start/stop signals Removes the old logic for v4l2camerasrc that used the mode property switching to start/stop captures to make it identical to camerabin2 behavior and to allow the future addition of pausing a video recording. This also removes the MODE_PREVIEW as it became useless. 2010-11-29 18:53:34 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Cleanup capturing flag Cleanup capturing flag when the source switches back to the viewfinder mode 2010-11-29 18:24:35 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.h: v4l2camerasrc: Remove unnecessary padding 2010-11-29 15:49:26 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: v4l2camerasrc: Implement video capture Implements video capture on v4l2camerasrc by using the mode property, when mode is set to video, the pad probe pushes a new segment and starts pushing buffers on the pad, when it the property is sent back to preview, the pad probe pushes an EOS and stops pushing buffers. This is controlled by a Recording State variable, that is protected by the GST_OBJECT_LOCK. I don't think locking for every buffer is nice, so we could find an alternative lockless way here. 2010-11-29 12:57:21 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: v4l2camerasrc: Fix image capture Once a image is captured, v4l2camerasrc should return to the preview mode and stop capturing. 2010-11-29 11:31:26 -0300 Thiago Santos * gst/camerabin2/gstcamerabin-enum.c: * gst/camerabin2/gstcamerabin2.c: camerabin2: Keep mode definition at -enum file Use 'mode' enum definition from gstcamerabin-enum file to avoid conflicts between v4l2camerasrc and gstcamerabin2 modes. For now there is a MODE_PREVIEW there that is only used on the camerasrc, not sure if we are keeping it at the future, but for now this works. 2010-11-29 10:46:38 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: v4l2camerasrc: Adds mode property Adds mode property to v4l2camerasrc 2010-11-29 10:45:30 -0300 Thiago Santos * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstv4l2camerasrc.c: camerabin2: Adding debug categories Adding debug categories to v4l2camerasrc and camerabin2, also removing generic category from camerabingeneral. 2010-11-26 23:55:12 -0300 Thiago Santos * configure.ac: * tests/examples/Makefile.am: * tests/examples/camerabin2/.gitignore: * tests/examples/camerabin2/Makefile.am: * tests/examples/camerabin2/gst-camera2.c: * tests/examples/camerabin2/gst-camera2.h: * tests/examples/camerabin2/gst-camera2.ui: examples: Adds camerabin2 example Adds gtk camerabin2 example app 2010-11-26 17:24:58 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: camerabin2: Adding basic property and signals Adds mode property to camerabin2, allowing users to select between video and stills capture. Also adds start/stop capture actions to trigger and stop capturing 2010-11-26 15:55:39 -0300 Thiago Santos * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstvideorecordingbin.c: camerabin2: Set filesink's async to FALSE In order to preroll, camerabin2 should have its filesinks in the imagecapturebin and videorecordingbin with async=FALSE. 2010-11-26 14:51:30 -0300 Thiago Santos * gst/camerabin2/gstcamerabin2.c: camerabin2: Adding basic elements Instantiating and linking basic elements on camerabin2 so it at least shows the viewfinder when running. 2010-11-26 10:14:46 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstcamerabin2.c: * gst/camerabin2/gstcamerabin2.h: * gst/camerabin2/gstplugin.c: camerabin2: Adds a stub element for camerabin2 Adds camerabin2 element, it is now a pile of stubs. 2010-11-25 22:05:39 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: camerabin2: v4l2camerasrc: Remove platform specific code Remove platform specific code 2010-11-25 21:49:47 -0300 Thiago Santos * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstv4l2camerasrc.c: camerabin2: Removing uneeded properties Removing uneeded and unregistered properties. 2010-11-25 20:55:36 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: camerabin2: v4l2camerasrc: Fix property warning Avoid setting a property that doesn't exist. 2010-11-25 20:53:04 -0300 Thiago Santos * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: camerabin2: v4l2camerasrc: Remove unused variable Removed unused leftover variable 2010-11-25 14:57:13 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstplugin.c: * gst/camerabin2/gstvideorecordingbin.c: * gst/camerabin2/gstvideorecordingbin.h: camerabin2: Adds video recording bin Adds an bin that is responsible for encoding and saving video streams to files. For now it is simply a ffmpegcolorspace ! theoraenc ! oggmux ! filesink bin. Still uncapable of recording audio. 2010-11-25 13:00:50 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/camerabingeneral.c: * gst/camerabin2/camerabingeneral.h: * gst/camerabin2/gstbasecamerasrc.c: * gst/camerabin2/gstbasecamerasrc.h: * gst/camerabin2/gstcamerabin-enum.c: * gst/camerabin2/gstcamerabin-enum.h: * gst/camerabin2/gstplugin.c: * gst/camerabin2/gstv4l2camerasrc.c: * gst/camerabin2/gstv4l2camerasrc.h: camerabin2: Adding v4l2camerasrc from robclark's branch Adds 3-pad v4l2 camera source from Rob Clark's camerabin branch on http://gitorious.org/robclark-gstreamer/gst-plugins-bad 2010-11-24 20:31:33 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstimagecapturebin.c: * gst/camerabin2/gstimagecapturebin.h: * gst/camerabin2/gstplugin.c: camerabin2: Adds new imagecapturebin Adds an bin that is responsible for image captures. It is a simple ffmpegcolorspace ! jpegenc ! jifmux ! multifilesink for now. 2010-11-24 20:15:38 -0300 Thiago Santos * gst/camerabin2/Makefile.am: * gst/camerabin2/gstplugin.c: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstviewfinderbin.h: camerabin2: Move plugin init to a separate file Moves plugin init to gstplugin.c to allow multiple elements to register themselves. 2010-11-24 17:28:57 -0300 Thiago Santos * configure.ac: * gst/camerabin2/Makefile.am: * gst/camerabin2/gstviewfinderbin.c: * gst/camerabin2/gstviewfinderbin.h: camerabin2: viewfinderbin: Adds viewfinderbin element Adds viewfinder bin element, one of the modules of camerabin2 that is responsible for displaying the video from the camera. For now it is only a bin with ffmpegcolorspace ! videoscale ! autovideosink 2010-12-08 19:36:48 +0100 Alessandro Decina * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: fix compiler warnings on OSX. 2010-11-24 12:22:01 +0200 Stefan Kost * tests/icles/output-selector-test.c: output-selector-test: don't hardcode videosinks and use more colorspace conv. Use autovideosink instead of hardcoded sinks. Use an additional colorspace converter between videotestsrc and timeoverlay. 2010-12-08 15:18:32 +0000 Tim-Philipp Müller * configure.ac: configure: require released versions of core/base instead of old git 2010-12-07 15:44:00 +0100 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: re-use cleanup() in finalize() ... and also favor finalize() rather than dispose(). 2010-11-18 13:39:23 +0530 Arun Raghavan * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpeg4videoparse/mpeg4videoparse.h: mpeg4videoparse: Set srcpad caps before forwarding newsegment This holds all newsegement and most other events till there is enough data to set srcpad caps, so that the downstream link is properly negotiated before data starts flowing. https://bugzilla.gnome.org/show_bug.cgi?id=635204 2010-11-18 23:29:51 +0530 Arun Raghavan * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpeg4videoparse/mpeg4videoparse.h: mpeg4videoparse: Use sinkpad caps as base for srcpad caps This way, we don't lose additional fields that come from upstream (like profile/level for now). https://bugzilla.gnome.org/show_bug.cgi?id=635202 2010-12-07 15:20:29 +0100 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: minor fix to error handling We weren't handling unparseable codec_data in some cases. https://bugzilla.gnome.org/show_bug.cgi?id=635202 2010-12-07 17:17:44 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Implement nearest neighbour scaling for the subpictures This becomes necessary when SDTV subtitles are used for HDTV videos. 2010-12-07 14:55:28 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: align code with comment 2010-12-07 14:55:15 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: re-use reset() in finalize() 2010-11-17 19:16:12 +0530 Arun Raghavan * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: Set srcpad caps before forwarding newsegment This holds all newsegement and most other events till there is enough data to set srcpad caps, so that the downstream link is properly negotiated before data starts flowing. https://bugzilla.gnome.org/show_bug.cgi?id=635205 2010-12-06 19:00:28 +0100 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: try to convert comment tag to UTF-8 2010-12-06 18:19:20 +0100 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: discard incomplete image ... as determined when finding SOI next image before an EOI. 2010-12-06 18:18:11 +0100 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: avoid infinite loop when resyncing 2010-12-06 22:48:09 +0530 Arun Raghavan * gst/rawparse/gstaudioparse.c: audioparse: Allow implicit channel map for 1-/2-channel audio This makes sure we don't set an empty channel map array for 1-/2-channel audio, causing an assert later on. 2010-12-06 17:08:55 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Revert some parts of last commit that shouldn't be committed 2010-12-06 17:05:28 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Really choose the latest possible subpictures And not the first subpictures that are still valid according to the page timeout. 2010-12-06 16:44:11 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Refactor blending function and take average of all chroma values 2010-12-03 17:35:36 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Improve selection of current to be displayed subpictures Drop all subpictures that are too old anyway and clear the currently displayed subpictures if num_rects==0 happens. 2010-12-03 16:21:15 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Implement clipping of video buffers Also don't clip subpicture buffers, they have no duration and clipping them doesn't make much sense here. 2010-12-03 16:08:13 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: Clean up locking some more 2010-12-03 16:05:56 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Flush subtitles and all internal state when needed 2010-12-03 15:52:21 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Set the global library log function exactly once And don't use one of the possibly many renderer instances, this is only calling for crashes. 2010-12-03 15:46:40 +0100 Sebastian Dröge * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: Remove lots of commented out and unused code and clean up locking 2010-12-01 09:59:14 +0200 Mart Raudsepp * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Fix more of the blending, so it looks quite good now * libdvbsub gives us alpha channel already, not transparency level, so don't do another "alpha = 255 - alpha", this is done by libdvbsub. * Fix alpha channel handling in interpolation - assrender had an additional 1bpp alpha bitmap as a possible mask, we don't. So don't use the palette index array as alpha values; bug from quick code porting long ago to changing pixel colors (assrender has a single pixel color for whole regions or something, unlike dvbsub, which has indexed colors). * Don't forget to reassign our YUV and other local pixel color variables after shifting to work on the bottom part of a 2x2 subsample block, or it's obviously very blocky. Remaining issues in blending: * Should probably be interpolating or doing something else useful with the resulting U and V channels, so that most of the source pixel UV values would actually be actually cared about, except for just one out of possibly four. * Don't convert AYUV to ARGB in libdvbsub, and then back from ARGB to AYUV in dvbsuboverlay for no reason * Re-factor the whole thing to something more like textoverlay blending * Related to that, perhaps cache the current spu in a good format for quick blending on each frame, after which the more often called blending parts might become more straightforward 2010-12-01 07:26:03 +0200 Mart Raudsepp * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Fix blending bug regarding color channel addressing. libdvbsub gives us ARGB ordered pixels right now, not RGBA. 2010-12-01 07:20:07 +0200 Mart Raudsepp * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Do blending calls when appropriate This gives us actually shown subtitles, however with bugs in the current blitting code, resulting in very transparent subtitles. 2010-12-01 07:06:35 +0200 Mart Raudsepp * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Implement fallback page_time_out honoring The spec has a page_time_out in the page composition segment to ensure subtitles don't get stuck on screen for too much longer than intended, when future page composition segments get lost on bad reception, or other problems. Honor it in the gst plugin side. 2010-12-01 06:01:15 +0200 Mart Raudsepp * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: Implement subtitle queueing and syncing with video Push incoming subtitle pages in a FIFO queue (pending_subtitles) and dequeue the head when it's time to show it (when video running time reaches the subtitle page running time). Keep the subtitle page, that is supposed to be blended on top of video currently, in a separate object variable (current_subtitle). As a next step we can then pre-render current_subtitle to a better to blend format. 2010-12-01 05:49:22 +0200 Mart Raudsepp * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Make the new dvb_subtitles_free() accept NULL Don't crash if dvb_subtitles_free(NULL) gets passed, like most other *_free functions are happy with. 2010-12-01 05:26:02 +0200 Mart Raudsepp * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Pass page_time_out and pts with the DVBSubtitles structure Eases holding onto the information in gst plugins side queue of DVBSubtitles, so we won't need to create yet another temporary struct to keep the pts and page_time_out too. And this really logically belongs at the toplevel information set anyway and in that struct... 2010-12-01 04:28:02 +0200 Mart Raudsepp * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: dvbsuboverlay: Make the libdvbsub callback handler responsible for memory cleanup We want to allow queueing of raw region image data in the gst plugin side, and keep the data around until we pop the item from the queue. So make the callback handler responsible for memory cleanup, if one is installed. 2010-11-30 04:45:54 +0200 Mart Raudsepp * gst/dvbsuboverlay/gstdvbsuboverlay.c: dvbsuboverlay: Work with GstClockTime instead of PTS for subtitle timing Abuse libdvbsub PTS tracking to just store our running time in it, to get it back in the callbacks. As GStreamer does its own PTS handling behind our back (especially for video), we should just sync with video per running time, not try to do it with PTS, which doesn't seem well accessible for video chain. We can later relabel dvb-sub.c pts naming convention if wanted, it's just passing along guint64 values, which GstClockTime fortunately is too. The current idea is to collect the regions returned by the callback into a FIFO buffer and pop and pre-render the top one into a separate quick-to-blend cached format, which is then appropriately blended in the video chain until the next one on top of the stack reaches the video chains running time (or the fallback timer hits). 2010-11-30 03:56:32 +0200 Mart Raudsepp * gst/dvbsuboverlay/dvb-sub.c: dvbsuboverlay: Add FIXME note about non-constant PTS for a display set handling. 2010-11-30 03:47:46 +0200 Mart Raudsepp * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: dvbsuboverlay: Remove dvb_sub_feed() API GStreamer will only use dvb_sub_feed_with_pts, as it has its own PES filter to do the header parsing. 2010-11-29 20:55:30 +0000 Tim-Philipp Müller * gst/dvbsuboverlay/TODO: dvbsuboverlay: more TODO 2010-11-29 20:10:17 +0000 Mart Raudsepp * gst/mpegdemux/gstmpegtsdemux.c: gstmpegtsdemux: add temporary **HACK** for dvb subs testing so dvbsuboverlay gets whole packets leio, what's the mpegts demux hack about? my libdvbsub code can't handle cut packets so the hack instructs the demuxer to gather full packets before pushing down, but it applies that to more PES packet types than just dvbsub, but I'm not sure if that's a bad thing either way, needs a cleaner solution, either in demuxer, or I need to handle cut packets ok, but really it should be fixed in the overlay, right? or a parser be inserted the problem is that I don't know from the first packet beforehand if it is a cut one or no not err, first buffer just when I receive the next one I see if it has a valid timestamp on it or not so I can't very well queue it up in the chain either, I might be blocking the very last subtitle for no reason or something but you could just drop/ignore packets until you find one, right? find what? a complete packet? the problem isn't that they aren't complete the problem is that they are cut across multiple GstBuffers by the demuxer without the hack sure, I understand that but you can't easily determine if a GstBuffer contains he start fragment of a packet or not? I guess I could parse the packet and see if its length is enough, just like the libdvbsub code eventually does too I can, it has a timestamp if it's the first chunk I just never know if I need to wait for more, without some parsing ah ok while the demuxer could just give me an uncut one in the first place like it always does for program streams that gather_pes is always set in gstmpegdemux, but not in gstmpegtsdemux 2010-11-29 20:06:07 +0000 Mart Raudsepp * configure.ac: * gst/dvbsuboverlay/Makefile.am: * gst/dvbsuboverlay/TODO: * gst/dvbsuboverlay/dvb-sub.c: * gst/dvbsuboverlay/dvb-sub.h: * gst/dvbsuboverlay/ffmpeg-colorspace.h: * gst/dvbsuboverlay/gstdvbsuboverlay.c: * gst/dvbsuboverlay/gstdvbsuboverlay.h: dvbsuboverlay: initial version, work in progress 2010-12-06 18:01:38 +0100 Wim Taymans * android/aacparse.mk: * android/amrparse.mk: * android/h264parse.mk: * android/metadata.mk: * android/qtmux.mk: * android/sdpelem.mk: android: update for 0.11 2010-12-06 17:54:04 +0100 Wim Taymans * win32/common/config.h: config: update config 2010-12-06 12:25:42 +0100 Wim Taymans * configure.ac: configure: open 0.11 branch 2010-12-03 18:11:56 +0100 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstac3parse.c: * gst/audioparsers/gstamrparse.c: audioparsers: update some documentation 2010-12-03 18:11:38 +0100 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/audioparsers/gstmpegaudioparse.c: mpegaudioparse: add to documentation 2010-12-03 18:11:09 +0100 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/audioparsers/gstdcaparse.c: dcaparse: add to documentation 2010-12-03 18:09:41 +0100 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/qtmux/gstqtmux.c: qtmux: add documentation 2010-11-08 19:58:31 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: increase keyframe awareness ... which is not particular relevant for audio parsing, but more so in video cases. In particular, auto-determine if dealing with video (caps). 2010-12-03 17:46:27 +0100 Benjamin Gaignard * Android.mk: * sys/audioflingersink/Android.mk: * sys/audioflingersink/GstAndroid.cpp: * sys/audioflingersink/audioflinger_wrapper.cpp: * sys/audioflingersink/audioflinger_wrapper.h: * sys/audioflingersink/gstaudioflingerringbuffer.h: * sys/audioflingersink/gstaudioflingersink.c: * sys/audioflingersink/gstaudioflingersink.h: sys: Add android audioflingersink 2010-12-03 17:42:46 +0100 Benjamin Gaignard * Android.mk: * android/NOTICE: * android/aacparse.mk: * android/amrparse.mk: * android/h264parse.mk: * android/metadata.mk: * android/qtmux.mk: * android/sdpelem.mk: Add build system for Android 2010-12-02 15:45:02 +0200 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: smal api doc update 2010-12-02 05:39:14 -0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: Avoid assertion on image finishing As imgbin_finished() is scheduled from g_idle_add, it might be run a little later than expected, this can lead to the application setting camerabin to ready before imgbin_finished() runs. In this case, the processing counter goes to 0 and an assertion happens. This patch relaxes the imgbin_finished() check on the processing counter. 2010-12-01 23:14:56 -0800 David Schleef * tools/element-maker: element-maker: Handle names with multiple underscores 2010-12-01 23:04:57 -0800 David Schleef * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstchopmydata.c: * gst/debugutils/gstchopmydata.h: chopmydata: Add new element This element splits up a stream into randomly-sized buffers. Useful (maybe) for testing parsers. 2010-12-02 03:09:59 -0300 Thiago Santos * tests/check/Makefile.am: tests: Remove leftover comment Remove comment that doesn't make sense anymore 2010-12-01 23:21:33 +0100 Alessandro Decina * sys/applemedia/miovideosrc.c: applemedia: don't use the deprecated g_strcasecmp function. Replace g_strcasecmp with g_ascii_strcasecmp. 2010-12-01 23:20:36 +0100 Alessandro Decina * gst/pcapparse/gstpcapparse.c: * sys/applemedia/mioapi.c: Fix compiler warnings with gcc 4.2.1 on OSX. 2010-12-01 15:28:53 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: * gst/audioparsers/gstac3parse.h: ac3parse: use proper EAC-3 caps 2010-12-01 10:45:49 +0100 David Hoyt * gst/qtmux/gstqtmux.c: qtmux: handle msvc ftruncate incompatibility Fixes #636185. 2010-10-09 17:39:36 -0700 David Schleef * tests/check/Makefile.am: * tests/check/elements/schroenc.c: Add a schroenc test 2010-11-27 20:13:38 -0800 David Schleef * ext/dirac/gstdiracdec.cc: * gst/liveadder/liveadder.c: * gst/mpegpsmux/mpegpsmux.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: Fix pad template memleaks Pad templates returned by gst_static_pad_template_get() were not being unreffed. 2010-11-30 18:43:24 -0800 David Schleef * ext/vp8/gstvp8enc.c: vp8enc: Readd setting of granulepos Revert parts of last patch that removed setting of granulepos. oggmux still requires correct granulepos in incoming packet. 2010-11-29 20:21:31 -0800 David Schleef * ext/vp8/gstvp8enc.c: vp8enc: Don't override timestamps set by base class Because the base class does it correctly. Fixes: #635720, #625558. 2010-11-30 15:41:02 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: avoid unexpected stray metadata 2010-11-30 15:40:28 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: use proper _NONE output value when applicable 2010-11-15 20:03:01 +0100 Sebastian Dröge * configure.ac: * gst/jp2kdecimator/Makefile.am: * gst/jp2kdecimator/gstjp2kdecimator.c: * gst/jp2kdecimator/gstjp2kdecimator.h: * gst/jp2kdecimator/jp2kcodestream.c: * gst/jp2kdecimator/jp2kcodestream.h: jp2kdecimator: Add a JPEG2000 decimator element This element drops information from JPEG2000 images without reencoding. 2010-11-23 21:45:41 +0100 Sebastian Dröge * ext/jp2k/gstjasperenc.c: jp2kenc: Emit SOP markers in every codestream packet This makes parsing much easier, faster and more reliable. 2010-11-27 16:07:19 -0600 Alejandro Gonzalez * gst/qtmux/gstqtmux.c: qtmux: gst_qtmux_check_difference verify before subtract Avoid negative overflow by checking the order of operands on subtraction of unsigned integers. https://bugzilla.gnome.org/show_bug.cgi?id=635878 2010-11-27 18:58:07 -0800 David Schleef * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Fix some memleaks 2010-11-15 11:37:39 -0800 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: minor memleak fix 2010-11-25 19:31:35 +0100 Edward Hervey * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: Remove dead assignments 2010-11-25 19:31:03 +0100 Edward Hervey * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: videomeasure: Remove dead assignments 2010-11-25 19:25:27 +0100 Edward Hervey * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: tta: Remove dead assignments and useless variable 2010-11-25 19:24:56 +0100 Edward Hervey * gst/stereo/gststereo.c: stereo: Remove dead assignments 2010-11-25 19:21:23 +0100 Edward Hervey * gst/sdp/gstsdpdemux.c: sdp: Remove useless variables 2010-11-25 19:21:11 +0100 Edward Hervey * gst/rtpmux/gstrtpmux.c: rtpmux: Remove dead assignments 2010-11-25 19:21:01 +0100 Edward Hervey * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: real: Remove dead assignments 2010-11-25 19:20:51 +0100 Edward Hervey * gst/ivfparse/gstivfparse.c: ivfparse: Remove dead assignments 2010-11-25 19:06:49 +0100 Edward Hervey * gst/freeze/gstfreeze.c: freeze: Remove dead assignments 2010-11-25 19:06:38 +0100 Edward Hervey * gst/dvdspu/gstdvdspu.c: dvdspu: Remove dead assignments 2010-11-25 19:06:27 +0100 Edward Hervey * gst/dtmf/gstrtpdtmfdepay.c: dtmf: Remove dead assignments 2010-11-25 19:01:42 +0100 Edward Hervey * gst/dccp/gstdccp.c: dccp: Remove dead assignments 2010-11-25 18:56:42 +0100 Edward Hervey * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstbaseparse.c: audioparsers: Remove dead assignments 2010-11-25 18:52:47 +0100 Edward Hervey * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: vp8: Remove dead assignments 2010-11-25 18:49:23 +0100 Edward Hervey * ext/sdl/sdlaudiosink.c: sdlaudiosink: Remove dead assignments 2010-11-25 18:47:15 +0100 Edward Hervey * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: schroedinger: Remove dead assignments 2010-11-25 18:43:30 +0100 Edward Hervey * ext/mimic/gstmimenc.c: mimenc: Remove dead assignment 2010-11-25 18:43:18 +0100 Edward Hervey * ext/cog/gstcogdownsample.c: cogdownsample: Remove dead assignment 2010-11-25 18:42:33 +0100 Edward Hervey * ext/opencv/gstcvdilateerode.c: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsobel.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvvideofilter.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttextwrite.c: opencv: Remove dead assignments ... and fix indentation 2010-11-25 18:33:37 +0100 Edward Hervey * ext/cog/gstcogcolorspace.c: cogcolorspace: Remove dead assignment 2010-11-25 18:30:56 +0100 Edward Hervey * ext/cog/cogframe.c: cogframe: Remove dead assignments 2010-11-25 18:29:31 +0100 Edward Hervey * ext/celt/gstceltenc.c: celtenc: Initialize variable In the case the tag_setter returns something, empty_tags would be garbage value. 2010-11-25 18:29:22 +0100 Edward Hervey * ext/celt/gstceltenc.c: celtenc: Remove dead assignment 2010-11-25 18:26:21 +0100 Edward Hervey * ext/assrender/gstassrender.c: assrender: Remove dead assignments 2010-11-25 17:14:23 +0100 Andoni Morales Alastruey * gst/audioparsers/gstbaseparse.c: audioparse: fix possible division-by-zero https://bugzilla.gnome.org/show_bug.cgi?id=635786 2010-10-23 01:56:04 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Don't pass the ShmPipe to the function closing the shm area 2010-10-23 01:22:43 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Use the right counter when freeing buffers 2010-10-23 01:12:49 +0200 Olivier Crête * sys/shm/Makefile.am: * sys/shm/shmalloc.h: shmalloc: Manually decide to use GLib or not in the shmalloc So make it easier for embedders to use it with or without Glib 2010-10-20 22:49:59 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Remove duplicated arguement 2010-10-20 22:39:21 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Fix socket leak on connect() error 2010-10-20 22:28:13 +0200 Olivier Crête * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shm: sp_client_recv returns negative on error, so make the retval signed 2010-10-20 22:17:30 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Rename confusingly named variable 2010-10-20 22:14:09 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Change permissions on old shm areas too Change the permissions on old shm areas 2010-10-20 22:01:36 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Use the macro for the last error too 2010-10-20 21:52:31 +0200 Olivier Crête * sys/shm/shmpipe.c: shm: Use "ablock" for all ShmAllocBlock variables Use the ablock variable name for ShmAllocBlocks and block for ShmBlock 2010-10-20 21:52:24 +0200 Olivier Crête * sys/shm/shmpipe.h: shm: Add more comments 2010-10-20 21:41:15 +0200 Youness Alaoui * sys/shm/shmpipe.c: shm: stylist improvements 2010-10-20 21:33:24 +0200 Youness Alaoui * sys/shm/shmalloc.c: shm: Explain some fields Explain what some of the fields in the allocator actually mean 2010-11-22 15:26:06 +0100 Robert Swain * gst/interlace/gstinterlace.c: interlace: Fix buffer timestamp and duration The field rate is twice the frame rate of the src pad and so the duration of one output buffer is src_fps_d / (2 * src_fps_n). 2010-11-22 10:29:56 +0100 Robert Swain * gst/interlace/gstinterlace.c: interlace: Rename pattern property to field-pattern This is mostly for clarity of what the property means and, I believe, makes the pattern-offset property more comprehensible. 2010-11-22 10:27:22 +0100 Robert Swain * gst/interlace/gstinterlace.c: interlace: Add pattern offset property This property allows one to start at any point within the field pattern after a discontinuity (whenever gst_interlace_reset () is called). Thus with the 2:3:3:2 pattern, for example, one can start at offset 2 and achieve 3:2:2:3 or offset 1 and achieve 3:3:2:2. 2010-11-19 17:01:41 -0300 Lasse Laukkanen * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinimage.h: * gst/camerabin/gstcamerabin.c: camerabin: Create imagebin elements when image mode is set in camerabin NULL state This patch refactors imagebin element creation and linking into separate functions, and adds re-using also for imagebin internally created elements. So this refactoring allows creating imagebin elements already in NULL state when application sets the image mode, and next state change from NULL to READY will be faster. This reduces first capture latency. Earlier the elements were both created and linked in NULL to READY state change. 2010-11-22 12:23:30 +0100 Andoni Morales Alastruey * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: Create a sub-buffer with the section length 2010-11-19 15:23:41 -0500 Josh Doe * ext/opencv/gstcvdilateerode.c: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsobel.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvutils.h: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttextwrite.c: opencv: fix caps issues and extend supported caps for some elements Some elements had vague caps, such as "video/x-raw-rgb", which caused problems at least with textwrite. For other elements, the underlying OpenCV functions support more than just one image type, so I increased the number of supported caps. I created a utility function "gst_opencv_caps_from_cv_image_type", so each element creates caps directly from OpenCV image types, such as CV_8UC1 for 8-bit grayscale. This function uses gstvideo to create uniform caps. https://bugzilla.gnome.org/show_bug.cgi?id=635304 2010-11-22 17:43:12 -0300 Thiago Santos * gst/jpegformat/gstjpegparse.c: jpegparse: Small optimization on tags parsing Optimize a little avoiding copying a taglist when parsing xmp/exif data. 2010-09-17 09:52:12 -0300 Thiago Santos * gst/selector/gstoutputselector.c: outputselector: Avoid losing the last_buffer when switching This patch makes outputselector take an extra ref when pushing the last_buffer to avoid it losing it during the switch function. This makes resend-latest properly work if the active-pad is changed during the switch function buffer pushing (on a pad probe, for example). https://bugzilla.gnome.org/show_bug.cgi?id=629917 2010-09-17 09:44:02 -0300 Thiago Santos * gst/selector/gstoutputselector.c: outputselector: Recheck pending switch after pushing buffer This patch makes output-selector always recheck if there's a pending pad switch after pushing a buffer, preventing that it pushes a buffer on the 'wrong' pad. https://bugzilla.gnome.org/show_bug.cgi?id=629917 2010-11-22 15:10:26 +0200 Olivier Aubert * ext/rsvg/Makefile.am: * ext/rsvg/gstrsvg.c: * ext/rsvg/gstrsvgoverlay.c: * ext/rsvg/gstrsvgoverlay.h: rsvgoverlay: scalable and relative svg overlay with cairo Add a cairo+librsvg based overlay element to the rsvg plugin. 2010-11-22 17:06:05 +0200 Stefan Kost * tests/check/Makefile.am: make: remove traces or moved/removed plugins 2010-11-22 17:05:23 +0200 Stefan Kost * Makefile.am: make: add missinf trailing \ to fix the build 2010-11-21 23:11:19 -0800 David Schleef * gst/colorspace/colorspace.c: colorspace: remove incorrect check 2010-11-19 17:55:36 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: remove remnant of obsolete property 2010-11-19 15:18:58 +0100 Mark Nauwelaerts * tests/check/elements/qtmux.c: tests: qtmux: also unit test fragmented file cases 2010-07-30 12:48:29 +0200 Marc-André Lureau * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: allow specifying trak timescale This is mainly because Smoothstreaming client are broken and don't take the TimeScale property into account. 2010-11-19 17:41:41 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: qtmux: include sdtp atoms for ismv fragmented files Based on patch by Marc-André Lureau 2010-11-19 19:17:45 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: enable default fragmented file for ismlmux 2010-09-02 13:58:05 +0200 Marc-André Lureau * gst/qtmux/atoms.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: qtmux: add ismlmux, for fragmented isml major brand 2010-11-19 14:44:45 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: finalize sinkpads list 2010-07-22 19:40:07 +0200 Marc-André Lureau * gst/qtmux/gstqtmux.c: qtmux: add moov in streamheader 2010-08-06 13:26:27 +0200 Marc-André Lureau * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: add streamable property to avoid building fragmented mfra index 2010-11-18 16:48:06 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: add mfra to fragmented file Based on patch by Marc-André Lureau 2010-11-15 15:17:59 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: optionally create fragmented file In this mode, an initial empty moov (containing only stream metadata) is written, followed by fragments containing actual data (along with required metadata). New fragments are started either at keyframe (if such are sparse) or when property configured duration exceeded. Based on patch by Marc-André Lureau Fixes #632911. 2010-11-15 15:12:45 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: qtmux: use helper to set atom flags from given uint 2010-11-09 16:49:07 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: refactor configuring and sending of moov Based on patch by Marc-André Lureau 2010-11-09 15:54:44 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: refactor extra top-level atom handling Also check a bit more for possible errors, and free proper items in such case. 2010-11-09 15:01:15 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: refactor slightly using buffer helper 2010-11-05 13:48:57 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: fix misinforming comment 2010-11-05 12:08:15 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: qtmux: delegate mvex handling to atoms ... which keeps qtmux simpler. 2009-09-28 16:11:35 +0200 Marc-André Lureau * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: qtmux: add mvex/trex in header if fragmented One "trex" is added per "trak". We don't support default values, but the "trex" box is mandatory. 2009-09-28 13:01:30 +0200 Marc-André Lureau * gst/qtmux/fourcc.h: qtmux: add a couple of fourcc for fragmented mp4 2010-11-05 11:08:01 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: avoid removing temp file when error occurred 2009-09-30 17:16:30 +0200 Marc-André Lureau * gst/qtmux/gstqtmux.c: qtmux: truncate buffer file after each send 2009-09-28 16:53:51 +0200 Marc-André Lureau * gst/qtmux/gstqtmux.c: qtmux: remove temp file when reset/finalize 2010-08-18 02:00:10 +0530 Arun Raghavan * gst/jpegformat/gstjpegparse.c: jpegformat: Push tags after setting srcpad caps This patch defers emission of tag events till caps are set on the source pad of jpegparse, so that these tags can be seen downstream. https://bugzilla.gnome.org/show_bug.cgi?id=627211 2010-11-19 18:51:32 +0100 Alessandro Decina * gst/mpegdemux/mpegtsparse.c: mpegtsparse: fix compiler warning 2010-11-19 18:26:59 +0100 Andoni Morales Alastruey * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: fix thinko 2010-11-19 17:25:01 +0100 Andoni Morales Alastruey * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: fix handling of TOT and TDT sections. Fixes #635281. TDT and TOT sections, with PID=0x14, doesn't extend to several packets and the section filter is not needed here and shouldn't be used at all for these tables because the have a different structure. For example, TDT tables were not parsed for odd hours because this bit is the 'current_next_indicator' bit for the other sections, and the table was discarded. 2010-11-19 17:22:06 +0100 Andoni Morales Alastruey * gst/mpegdemux/mpegtsparse.c: mpegtsparse: don't calculate the CRC for TOT tables. Fixes #635281. TOT tables, with table_id=0x73, don't have a CRC, so don't calcute it 2010-11-18 18:42:38 +0100 Andoni Morales Alastruey * sys/dvb/dvbbasebin.c: dvbbasebin: Add TDT to the initial pids filter for dvbsrc. Fixes #635200. 2010-11-16 17:35:36 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: add gst_jpeg_parse_skip_marker () https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-08-13 13:14:30 +0200 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: use byte reader accessors https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-11-17 10:49:30 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: inline gst_jpeg_parse_sof () No functional changes (hopefully). https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-11-16 17:23:35 +0100 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: fix typo https://bugzilla.gnome.org/show_bug.cgi?id=626618 2010-11-18 10:58:06 -0300 Aleksey Lim * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: Do not use audio clock after stopping video capture Adda provide clock function to camerabin to make it not provide the audio clock of the record bin when no video recording is happening Fixes #613379 2010-11-17 16:23:42 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: use correct offset when adding index entry ... bearing in mind that BUFFER_OFFSET is media specific and may not reflect the basic offset after having been parsed. 2010-11-17 14:30:09 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: enhancements for timestamp marked framed formats That is, as such formats allow subclass to extract position from frame, it is possible to extract duration (if not otherwise provided) from (near) last frame, and a seek can fairly accurately target the required position. Fixes #631389. 2010-11-16 17:06:14 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: refactor frame scanning peformed by _loop 2010-11-16 18:04:00 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: slightly optimize sending of pending newsegment events 2010-11-16 17:04:35 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: minor fixes and enhancements Arrange for upstream as well as downstream flushing when seeking. Also determine upstream size as well as seekability. Adjust some comments to reality and employ debug statement in proper order. 2010-11-17 15:33:36 +0100 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: aacparse: minor cleanups 2010-11-17 15:24:37 +0100 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: aacparse: fix regression in ADIF src caps setting 2010-11-16 12:11:53 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: * gst/audioparsers/gstflacparse.h: flacparse: parse seektable Fixes #631389 (partially). 2010-11-16 12:08:54 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: minor refactor and enable default baseparse segment clipping 2010-11-12 00:40:33 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: celvideosrc: fix nasty deadlock We cannot call any CMBufferQueue functions while holding the lock that our callback also depends on. So now we make use of CMBufferQueue's trigger API in order to get notified when the queue has data. 2010-11-11 23:41:44 +0100 Ole André Vadla Ravnås * sys/applemedia/cmapi.c: * sys/applemedia/cmapi.h: cmapi: cover CMBufferQueue's trigger API 2010-11-11 21:42:03 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: celvideosrc: unlock should also notify Otherwise we depend on being woken up by the CoreMedia queue getting its next buffer. 2010-11-10 23:16:51 +0100 Ole André Vadla Ravnås * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: applemedia: don't push synchronously from callback The codec that called us might be holding locks to shared resources, so we should never push downstream from within its buffer callback. Note that a GstBufferList is not used here because we need to preserve the buffer metadata held by our GstBuffer subclasses. 2010-11-10 20:52:47 +0100 Ole André Vadla Ravnås * sys/applemedia/vtenc.c: vtenc: bump H.264 level from 1.3 to 3.0 This should be turned into a property. 2010-11-10 20:44:15 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: celvideosrc: add basic device selection support 2010-11-10 20:51:27 +0100 Ole André Vadla Ravnås * sys/applemedia/cvapi.c: * sys/applemedia/cvapi.h: cvapi: add wrapper for IO surface access To be used in a future video sink for zero-copy rendering. 2010-11-10 20:25:28 +0100 Ole André Vadla Ravnås * sys/applemedia/celapi.c: * sys/applemedia/celapi.h: celapi: add capture port type constants 2010-11-09 22:43:14 +0200 Mart Raudsepp * ext/assrender/gstassrender.c: assrender: Remove unused src_stride variable from blit functions 2010-11-09 18:10:43 -0300 Thiago Santos * Makefile.am: * win32/common/libgstphotography.def: win32: Adding photography interface .def file Adds check-exports to -bad to have photography interface .def file created Fixes #578629 2010-11-09 19:38:25 +0100 Mark Nauwelaerts * gst/audioparsers/gstmpegaudioparse.c: mpegaudioparse: fix silly leak in _reset 2010-11-08 23:54:31 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264encbin.c: applemedia: biplanar is actually NV12, not I420 D'oh! 2010-11-08 21:22:13 +0100 Ole André Vadla Ravnås * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: vtenc: remove keyframe enforcement workaround Was only needed for old iOS where the H.264 encoder didn't support kVTEncodeFrameOptionKey_ForceKeyFrame. 2010-11-08 18:56:52 +0100 Ole André Vadla Ravnås * sys/applemedia/cvapi.c: * sys/applemedia/cvapi.h: cvapi: add a few extra bits of wrapping 2010-11-08 15:08:19 +0100 Ole André Vadla Ravnås * sys/applemedia/coremediabuffer.c: * sys/applemedia/corevideobuffer.c: * sys/applemedia/cvapi.h: applemedia: lock CVPixelBuffer read-only As per Apple's docs, this may improve performance by avoiding redundant invalidations of existing caches of the buffer contents. 2010-11-08 10:33:58 -0300 Lasse Laukkanen * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: Remove gstring leak Simplify gst-camerabin-test by removing GString and replacing with gchar for the filename handling. Also removes a leak of the GString data. 2010-11-08 16:00:21 +0200 Stefan Kost * ext/rsvg/gstrsvgdec.c: rsvgdec: avoid reffing the element in chain 2010-11-08 15:45:48 +0200 Stefan Kost * ext/rsvg/gstrsvgdec.c: rsvgdec: add some minimal logging to track what it is doing 2010-11-08 13:52:49 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: celvideosrc: put planar first in template caps 2010-11-08 13:49:04 +0100 Ole André Vadla Ravnås * sys/applemedia/cvapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264encbin.c: applemedia: improve vtenc/vtdec performance Profiling of H.264 encode and decode revealed that conversions between packed and planar were happening behind the scenes. Hence we now choose I420 instead of YUY2. 2010-10-22 18:07:00 +0300 Lasse Laukkanen * tests/examples/camerabin/gst-camerabin-test.c: examples: add async bus handler to gst-camerabin-test Splits the bus handler into sync and async, keeping the prepare-xwindow handling at the sync for faster handling and moving the others to the async handler 2010-11-06 12:27:32 +0000 Tim-Philipp Müller * configure.ac: configure: we still require Gtk+ >= 2.14.0 when compiling against 2.0 The check for the minor version was dropped in one of the previous commits. 2010-11-05 16:51:57 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: celvideosrc: measure fps when statistics is enabled Also refactor timestamping slightly. 2010-11-05 15:14:08 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: celvideosrc: update to new Celestial and MediaToolbox APIs This means celvideosrc is no longer compatible with iOS 3.x. 2010-11-05 15:08:56 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: celvideosrc: fix debug category description 2010-11-05 15:08:02 +0100 Ole André Vadla Ravnås * sys/applemedia/celapi.c: * sys/applemedia/celapi.h: celapi: update to reflect new API on iOS 4.x Also add remaining property constants for device and stream. 2010-11-05 15:07:38 +0100 Ole André Vadla Ravnås * sys/applemedia/mtapi.c: * sys/applemedia/mtapi.h: mtapi: update to reflect new API on iOS 4.x Also add remaining property constants for device and stream. 2010-11-05 10:56:51 +0100 Sebastian Dröge * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: colorspace: Update generated ORC sources 2010-08-26 17:08:19 -0300 Thiago Santos * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * tests/check/elements/camerabin.c: camerabin: Adds 'idle' property Adds 'idle', a read-only boolean property that tells applications if there is any capturing/saving/encoding going on in camerabin. If not, it is safe to set it to NULL and release resources without losing data. 2010-05-05 13:58:07 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * tests/check/elements/camerabin.c: camerabin: Add "ready-for-capture" property Add "ready-for-capture" property to indicate if preparing a new capture is possible. "ready-for-capture" changes before the 'image-done' signal, so the application can be notified that it can do a new capture even before the previous one has finished encoding/saving. 2010-11-05 00:32:35 +0000 Tim-Philipp Müller * configure.ac: configure: don't even check for Gtk+ if --disable-examples is specified There are Gtk+-based examples in plugin dirs and tests/icles/ too, and we want to disable those as well then. 2010-11-05 00:24:31 +0000 Tim-Philipp Müller * configure.ac: configure: add --with-gtk option and default to Gtk+ 2.0 while the 3.0 API is still in flux https://bugzilla.gnome.org/show_bug.cgi?id=634014 2010-11-03 00:04:27 +0000 Tim-Philipp Müller * configure.ac: * tests/Makefile.am: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/zbar.c: * tests/files/Makefile.am: * tests/files/barcode.png: tests: add very simple zbar unit test Not valgrind clean yet (could be zbar's fault though). 2010-11-04 19:25:24 +0100 Ole André Vadla Ravnås * sys/applemedia/avfvideosrc.m: * sys/applemedia/celvideosrc.c: * sys/applemedia/miovideosrc.c: * sys/applemedia/qtkitvideosrc.m: applemedia: make video source element details consistent Inspired by the v4l2src element details. 2010-11-04 19:11:04 +0100 Ole André Vadla Ravnås * sys/applemedia/avfvideosrc.m: * sys/applemedia/qtkitvideosrc.m: applemedia: consistently use gst_element_class_set_details_simple 2010-11-04 19:02:50 +0100 Ole André Vadla Ravnås * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: celvideosrc: update e-mail address 2010-11-04 18:59:44 +0100 Ole André Vadla Ravnås * sys/applemedia/Makefile.am: * sys/applemedia/celvideosrc.c: * sys/applemedia/celvideosrc.h: * sys/applemedia/plugin.m: applemedia: rename iphonecamerasrc to celvideosrc This is in order to improve consistency with the other three sources. 2010-11-04 17:58:36 +0100 Ole André Vadla Ravnås * sys/applemedia/avfvideosrc.m: avfvideosrc: don't explicitly empty the buffer queue We're holding the only reference to it so there's no need to explicitly empty it right before letting go of our reference. 2010-11-04 17:50:33 +0100 Ole André Vadla Ravnås * sys/applemedia/avfvideosrc.m: avfvideosrc: make buffer offset start from zero 2010-11-04 17:47:25 +0100 Ole André Vadla Ravnås * sys/applemedia/qtkitvideosrc.m: qtkitvideosrc: implement zero-copy by using buffer-factory This means we'll wrap each CoreVideo buffer inside a GstBuffer instead of making a copy. 2010-11-04 17:44:12 +0100 Ole André Vadla Ravnås * sys/applemedia/bufferfactory.h: * sys/applemedia/bufferfactory.m: bufferfactory: add support for wrapping CVBuffer 2010-11-04 17:24:03 +0100 Ole André Vadla Ravnås * sys/applemedia/qtkitvideosrc.m: qtkitvideosrc: fix up refcounting Should keep a strong reference to the device, but we don't need to manage the reference count of elements of an NSMutableArray as it takes care of that for us. 2010-11-04 17:16:05 +0100 Ole André Vadla Ravnås * sys/applemedia/qtkitvideosrc.m: qtkitvideosrc: simplify timestamping algorithm Aligning timestamps on duration boundaries, skipping frames and so forth are clearly things that fall outside the scope of a video source. 2010-11-04 14:14:09 +0100 Ole André Vadla Ravnås * sys/applemedia/Makefile.am: * sys/applemedia/avfvideosrc.h: * sys/applemedia/avfvideosrc.m: * sys/applemedia/bufferfactory.h: * sys/applemedia/bufferfactory.m: * sys/applemedia/plugin.m: applemedia: add new iOS video source based on AVFoundation This element makes use of the documented AVFoundation framework made available starting with iOS 4.0, and hence this means we can finally capture video using a public API. 2010-11-04 14:24:36 +0100 Ole André Vadla Ravnås * sys/applemedia/vtdec.c: * sys/applemedia/vtenc.c: * sys/applemedia/vth264decbin.c: applemedia: fix stream-format caps used for H.264 The stream-format's "avc-sample" member is now called just "avc". 2010-11-04 14:29:37 +0100 Ole André Vadla Ravnås * sys/applemedia/miovideodevice.c: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.m: applemedia: update e-mail addresses 2010-11-04 14:18:29 +0100 Sebastian Dröge * gst/colorspace/gstcolorspace.c: colorspace: Inverse -base version check logic to actually make sense 2010-11-03 18:34:28 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: Add support for Linux Cooked Capture (SLL) frames 2010-11-03 18:23:27 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: pcapparse: Fail on unknown version or linktype The element only knows about major version 2 and only decodes linktype ethernet 2010-11-03 18:02:49 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: pcapparse: Send error GstMessage if stream doesn't have the expected magic 2010-11-03 16:16:24 +0100 Andoni Morales Alastruey * gst/mpegdemux/mpegtsparse.c: mpegtsparse: send TDT tables messages in a serialized event downstream https://bugzilla.gnome.org/show_bug.cgi?id=633917 2010-11-03 15:37:48 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: colorspace: Add support for IYU1 2010-11-03 15:12:42 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspaceorc.orc: colorspace: First version of YUV9 and YVU9 implementation 2010-11-03 09:20:15 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: colorspace: Use GST_CHECK_PLUGINS_BASE_VERSION() instead of other hacks 2010-10-18 15:32:14 +0200 Thijs Vermeir * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: * gst/mpegvideoparse/mpegvideoparse.h: mpegvideoparse: fix timestamp generation Use information from the gop header and picture header to calculate the picture timestamp. (time_code and temporal_reference) and adapt to upstream timestamps if provided. https://bugzilla.gnome.org/show_bug.cgi?id=632222 2010-11-02 23:08:30 +0100 Ole André Vadla Ravnås * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: applemedia: switch vtapi to CFTypeRef style typedefs 2010-11-02 22:53:33 +0100 Ole André Vadla Ravnås * sys/applemedia/celapi.h: * sys/applemedia/cmapi.c: * sys/applemedia/cmapi.h: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/iphonecamerasrc.c: * sys/applemedia/iphonecamerasrc.h: * sys/applemedia/mioapi.h: * sys/applemedia/miovideodevice.c: * sys/applemedia/miovideodevice.h: * sys/applemedia/miovideosrc.c: * sys/applemedia/miovideosrc.h: * sys/applemedia/mtapi.h: * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: * sys/applemedia/vtenc.c: applemedia: support public version of CoreMedia Also rename the relevant API so we mirror the public API more closely, and switch to CoreFoundation CFTypeRef style typedefs. We still support the old private CoreMedia in order to not break OS X support. This means that vtenc and vtdec are now compatible with iOS 4.x, and in theory also future versions of OS X, where this API may turn public like it has on iOS. 2010-11-02 17:46:11 +0000 Tim-Philipp Müller * ext/zbar/gstzbar.c: zbar: handle more formats that start with an 8-bit Y plane We can handle most planar YUV layouts too, as long as we don't tell zbar about the chroma planes. 2010-11-02 17:18:52 +0000 Tim-Philipp Müller * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: zbar: use correct stride Fixes detection for images with a width that's not a multiple of four. Based on patch by: Kaj-Michael Lang Based on patch by: Stefan Kost https://bugzilla.gnome.org/show_bug.cgi?id=630830 2010-11-02 16:54:59 +0000 Tim-Philipp Müller * gst/colorspace/gstcolorspace.c: colorspace: fix build with current git of gst-plugins-base ifdef tests don't work so well if we define them in the code above in case they aren't defined. 2010-11-02 16:35:57 +0000 Tim-Philipp Müller * ext/zbar/gstzbar.c: zbar: minor clean-up Fix typo and use DEFAULT_FOO define for property default. 2010-11-02 16:32:55 +0000 Tim-Philipp Müller * ext/zbar/gstzbar.c: zbar: disable cache by default Since it breaks still image bar code detection. 2010-11-02 16:05:37 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: colorspace: Add support for 8 bit paletted RGB This needs the 8 bit paletted support from -base which will be committed after release. Without this the 8 bit parts are disabled. 2010-11-02 10:24:49 -0300 Thiago Santos * gst/camerabin/camerabinpreview.c: camerabin: Add missing change to previous commits Forgot to add this change to the latest commits. This fixes the build. 2010-11-02 09:39:49 -0300 Thiago Santos * gst/camerabin/camerabinpreview.c: camerabin: Fix leaks in the preview handling Remember to unref the bus after adding the watch. Remember to unref the element after getting it with gst_bin_get_by_name. 2010-11-02 09:38:20 -0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: Do not leak a caps gst_caps_replace doesn't take ownership, but refs the caps. So we unref the remaining caps. 2010-09-24 16:28:13 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Reset pre-night-mode stored fps when mode changes When switching between video/still modes the pre-night-mode fps should be reset to prevent it being used in the incorrect mode, causing the videosource to fail configuring itself 2010-09-21 16:23:47 +0300 Teemu Katajisto * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: add support for setting many post-processing elements Instead of taking a single element as input for the image post processing option, take a list of comma separated elements that will be used. 2010-09-20 11:54:20 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: Store app preferred capture parameters separately Store width/height/fps for video captures in a separate variable than the one that stores the currently used value. This prevents the user preferences to be lost when resetting the currently used dimensions for night mode, for example 2010-09-20 08:42:41 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: cleanup used caps when going to NULL Resets used caps so that camerabin doesn't try to use them when restarting, where elements/properties might have changed and the old caps be incompatible 2010-09-09 10:50:59 +0300 Teemu Katajisto * gst/camerabin/gstcamerabin.c: camerabin: fix priority for idle_add function Adds a higher priority to the idle_add function for when the image bin finished the image capture. This reduces the delay for the application to be notified about this. 2010-11-01 23:04:44 +0200 Stefan Kost * gst/selector/gstinputselector.c: inputselector: log times in human readable form 2010-11-01 22:40:36 +0200 Stefan Kost * gst/selector/gstinputselector.c: inputselector: move reoccuring logs to LOG and remove a double info Less debug spew in DEBUG category. No need to log pad again if we use GST_LOG_OBJECT(pad,...). 2010-11-01 15:53:52 +0000 Tim-Philipp Müller * ext/cog/gstcogorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: cog, colorspace: update orc backup functions for latest changes Should fix build on systems without the latest orc. 2010-11-01 15:53:31 +0000 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/el.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/gl.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ro.po: * po/ru.po: * po/sk.po: * po/sl.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for new translations 2010-10-31 23:46:27 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: colorspace: Add support for RGB15 and BGR15 2010-10-31 23:44:20 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: colorspace: Add support for RGB16 and BGR16 2010-10-31 23:25:57 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspaceorc.orc: colorspace: Add support for Y16 2010-10-31 23:25:40 +0100 Sebastian Dröge * gst/colorspace/gstcolorspaceorc.orc: colorspace: Fix Y800 ORC getline implementation 2010-10-31 23:07:43 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspaceorc.orc: colorspace: Add support for A420 2010-10-31 23:00:07 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: colorspace: Add support for Y41B 2010-10-31 22:39:38 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: colorspace: Add support for SDTV/HDTV YUV conversions 2010-10-31 22:21:35 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: colorspace: Add comment for the A420 getline/putline table row 2010-10-31 20:40:09 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: colorspace: Add const to the source arrays and the getline/putline table 2010-10-31 19:42:30 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: colorspace: Make fast-path transform table const 2010-10-31 19:39:33 +0100 Sebastian Dröge * gst/colorspace/colorspace.c: colorspace: Only do the I420->YUY2 conversion once per scanline in the fast path 2010-10-29 14:08:58 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: use only upstream duration if it provides one 2010-10-25 14:15:50 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: reflow update_bitrate code ... which makes local variables represent real state better, and avoids triggering unneeded updates/actions. 2010-10-25 14:13:51 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: add some debug statements 2010-10-28 18:51:02 +0200 Sebastian Dröge * gst/gaudieffects/Makefile.am: * gst/gaudieffects/gstplugin.c: gaudieffects: Include gstcontroller header and add the required CFLAGS 2010-10-27 14:57:36 +0200 Luis de Bethencourt * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: * gst/gaudieffects/gstplugin.c: * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: gaudieffects: made filter parameters dynamic and controllable 2010-07-01 15:07:41 +0200 Ole André Vadla Ravnås * sys/winks/gstksvideodevice.c: winks: work around shutdown deadlock GetOverlappedResult() might never return with some drivers. Time out after 1000 ms. We cannot really fix this without either: 1) Controlling the streaming thread so we can do CancelIo() from that thread. 2) Switch to using IO completion ports. 2010-06-11 18:04:58 +0200 Ole André Vadla Ravnås * sys/winks/gstksvideodevice.c: winks: remove JPEG validation hack This should clearly not be done in a video source. 2010-04-20 12:05:45 +0200 Ole André Vadla Ravnås * sys/winks/ksvideohelpers.c: winks: set PrioritySubClass to KSPRIORITY_NORMAL instead of 1 In order to match the reference implementation. 2010-04-20 11:59:23 +0200 Ole André Vadla Ravnås * sys/winks/gstksvideodevice.c: winks: retry when KsCreatePin fails with ERROR_NOT_READY Turns out that the reference implementation does this, hence we need to mirror this behaviour. This typically happens with hardware that takes some time to initialize. 2009-10-26 16:09:00 +0100 Ole André Vadla Ravnås * sys/winks/ksvideohelpers.c: winks: improve framerate fraction conversions * For instance 7.5 fps should be represented as 15/2 instead of 7/1. * Clamp AvgTimePerFrame and dwBitRate to account for rounding errors. 2009-10-12 17:26:15 +0200 Ole André Vadla Ravnås * sys/winks/gstksclock.c: * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: * sys/winks/ksvideohelpers.c: winks: improve error-handling Most important part here is special-casing "device busy" so the application is able to provide better feedback when another application is using the device. 2009-09-07 16:45:57 +0200 Ole André Vadla Ravnås * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: winks: performance improvements * Make the driver write directly into each GstBuffer to avoid memcpy(). * Don't memset() the buffer before reusing it. * Recycle memory by keeping two spare buffers. Two because the sink downstream may keep a ref to the previous buffer. Note that we align buffers on highest possible byte boundary (4096) so we don't have to take into account what kind of alignment the driver requires. 2009-09-07 16:09:34 +0200 Ole André Vadla Ravnås * sys/winks/gstksclock.c: * sys/winks/gstksclock.h: * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: * sys/winks/gstksvideosrc.h: winks: store priv pointer instead of looking it up 2009-08-31 19:33:30 +0200 Ole André Vadla Ravnås * sys/winks/gstksvideosrc.c: winks: post error message on flow-unexpected 2009-08-31 19:28:50 +0200 Andres Colubri * sys/winks/gstksvideosrc.c: * sys/winks/gstksvideosrc.h: winks: add property probing support 2009-08-31 19:26:36 +0200 Ole André Vadla Ravnås * sys/winks/gstksvideosrc.c: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: winks: sort devices that look like cameras first 2009-08-31 19:25:02 +0200 Knut Inge Hvidsten * sys/winks/ksvideohelpers.c: winks: provide guessed pixel-aspect-ratio in caps 2009-08-31 19:23:40 +0200 Ole André Vadla Ravnås * sys/winks/gstksclock.c: winks: only try to change state when actually open 2009-08-31 19:22:40 +0200 Ole André Vadla Ravnås * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: * sys/winks/ksvideohelpers.c: winks: ignore unsupported formats 2010-10-28 16:14:34 +0200 Ole André Vadla Ravnås * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideosrc.c: winks: adjust a couple of logging severities Should clearly not be considered warnings, as they're quite common. 2010-10-27 18:30:11 +0100 Ole André Vadla Ravnås * configure.ac: * sys/Makefile.am: * sys/applemedia/Makefile.am: * sys/applemedia/celapi.c: * sys/applemedia/celapi.h: * sys/applemedia/cmapi.c: * sys/applemedia/cmapi.h: * sys/applemedia/coremediabuffer.c: * sys/applemedia/coremediabuffer.h: * sys/applemedia/coremediactx.c: * sys/applemedia/coremediactx.h: * sys/applemedia/corevideobuffer.c: * sys/applemedia/corevideobuffer.h: * sys/applemedia/cvapi.c: * sys/applemedia/cvapi.h: * sys/applemedia/dynapi-internal.h: * sys/applemedia/dynapi.c: * sys/applemedia/dynapi.h: * sys/applemedia/iphonecamerasrc.c: * sys/applemedia/iphonecamerasrc.h: * sys/applemedia/mioapi.c: * sys/applemedia/mioapi.h: * sys/applemedia/miovideodevice.c: * sys/applemedia/miovideodevice.h: * sys/applemedia/miovideosrc.c: * sys/applemedia/miovideosrc.h: * sys/applemedia/mtapi.c: * sys/applemedia/mtapi.h: * sys/applemedia/plugin.m: * sys/applemedia/qtkitvideosrc.h: * sys/applemedia/qtkitvideosrc.m: * sys/applemedia/vtapi.c: * sys/applemedia/vtapi.h: * sys/applemedia/vtdec.c: * sys/applemedia/vtdec.h: * sys/applemedia/vtenc.c: * sys/applemedia/vtenc.h: * sys/applemedia/vth264decbin.c: * sys/applemedia/vth264decbin.h: * sys/applemedia/vth264encbin.c: * sys/applemedia/vth264encbin.h: * sys/applemedia/vtutil.c: * sys/applemedia/vtutil.h: applemedia: New plugin for Apple multimedia APIs Provides the following elements: qtkitvideosrc: OS X video source relying on the QTKit API. Comes with hard-coded caps as the API does not provide any way of querying for formats supported by the hardware. Hasn't been tested a lot, but seems to work. miovideosrc: OS X video source which uses the undocumented/private CoreMediaIOServices API, which is also the one used by iChat. Present on latest version of Leopard and all versions of Snow Leopard. Has been tested extensively with built-in cameras and TANDBERG's PrecisionHD USB camera. vtenc, vtdec: Generic codec wrappers which make use of the undocumented/ private VideoToolbox API on OS X and iOS. List of codecs are currently hard-coded to H.264 for vtenc, and H.264 + JPEG for vtdec. Can easily be expanded by adding new entries to the lists, but haven't yet had time to do that. Should probably also implement probing as available codecs depend on the OS and its version, and there doesn't seem to be any way to enumerate the available codecs. vth264decbin, vth264encbin: Wrapper bins to make it easier to use vtdec_h264/vtenc_h264 in live scenarios. iphonecamerasrc: iPhone camera source relying on the undocumented/private Celestial API. Tested on iOS 3.1 running on an iPhone 3GS. Stops working after a few minutes, presumably because of a resource leak. Needs some love. Note that the iOS parts haven't yet been ported to iOS 4.x. 2010-10-28 11:43:34 +0100 Sebastian Pölsterl * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Add tag event emission. Fixes #627253 2010-10-27 13:17:10 +0100 Jan Schmidt * common: Automatic update of common submodule From 7bbd708 to 011bcc8 2010-10-21 16:06:08 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Check the source scene mode when creating it As camerabin only gets notified of the changes from the video source element, it should query the initial value once the source is created so it initializes itself correctly. 2010-10-20 00:07:01 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: fix distcheck a bit more Dist elements/parser.h header file, which fixes the 'make check' build. 2010-10-19 23:40:36 +0100 Tim-Philipp Müller * tests/check/elements/valve.c: tests: fix valve unit test gst_buffer_pad_alloc() needs simple caps or NULL caps, ANY caps are not allowed. 2010-10-19 23:25:54 +0100 Tim-Philipp Müller * gst/audioparsers/gstdcaparse.c: dcaparse: init variable to make osx build bot happy gstdcaparse.c: In function 'gst_dca_parse_check_valid_frame': gstdcaparse.c:246: warning: 'best_sync' may be used uninitialized in this function 2010-10-19 00:15:20 +0100 Tim-Philipp Müller * gst/audioparsers/Makefile.am: * gst/audioparsers/gstdcaparse.c: * gst/audioparsers/gstdcaparse.h: * gst/audioparsers/plugin.c: audioparsers: add very basic dts/dca parser Still some issues, e.g. with seekable queries in totem, but also processing already-chunked input (created with matroskademux ! gdppay). 2010-10-19 16:23:23 +0300 Stefan Kost * ext/amrwbenc/gstamrwbenc.c: * ext/apexsink/gstapexsink.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafsink.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cdaudio/gstcdaudio.c: * ext/cog/gstcogmse.c: * ext/cog/gstlogoinsert.c: * ext/dc1394/gstdc1394.c: * ext/dirac/gstdiracenc.cc: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkateutil.c: * ext/libfame/gstlibfame.c: * ext/modplug/gstmodplug.cc: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mplex/gstmplexjob.cc: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/ofa/gstofa.c: * ext/opencv/gstedgedetect.c: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfacedetect.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gsttemplatematch.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsfsink.c: * ext/soundtouch/gstpitch.cc: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkinenc.c: * ext/xvid/gstxvidenc.c: * ext/zbar/gstzbar.c: various (ext): add missing G_PARAM_STATIC_STRINGS flags Canonicalize property names as needed. 2010-10-19 16:24:12 +0300 Stefan Kost * gst/videosignal/gstvideoanalyse.c: videoanalyse: fix copy'n'paste off by one for param spec flags change 2010-10-19 13:43:14 +0300 Stefan Kost * gst/asfmux/gstasfmux.c: * gst/autoconvert/gstautoconvert.c: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/filter/gstiir.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstsolarize.c: * gst/h264parse/gsth264parse.c: * gst/id3tag/gstid3mux.c: * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpegdemux/flutspatinfo.c: * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/flutspmtstreaminfo.c: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/mpegtsparse.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mve/gstmvemux.c: * gst/nsf/gstnsf.c: * gst/passthrough/gstpassthrough.c: * gst/pcapparse/gstpcapparse.c: * gst/playondemand/gstplayondemand.c: * gst/pnm/gstpnmenc.c: * gst/qtmux/gstqtmoovrecover.c: * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: * gst/rtpmux/gstrtpmux.c: * gst/scaletempo/gstscaletempo.c: * gst/sdp/gstsdpdemux.c: * gst/selector/gstinputselector.c: * gst/selector/gstoutputselector.c: * gst/smooth/gstsmooth.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/subenc/gstsrtenc.c: * gst/vbidec/gstvbidec.c: * gst/videodrop/gstvideodrop.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: various (gst): add missing G_PARAM_STATIC_STRINGS flags Canonicalize property names as needed. 2010-10-19 15:30:02 +0300 Stefan Kost * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafsink.c: * ext/shout/gstshout.c: * gst/smooth/gstsmooth.c: various: wrap property registration and add a single fixme for long desc. 2010-10-19 15:06:36 +0300 Stefan Kost * gst/pnm/gstpnmenc.c: pnmenc: remove stray " in doc comment 2010-10-19 13:44:25 +0300 Stefan Kost * gst/dtmf/gstdtmfsrc.c: dtmfsrc: remove DEBUG_FUNCPTR from gobject vmethods 2010-10-08 19:33:16 -0300 Thiago Santos * tests/check/elements/jifmux.c: tests: jifmux: Adds tests for the new tags Adds tests for the new exif tags in -base 2010-10-09 17:36:07 -0700 David Schleef * ext/dirac/gstdiracenc.cc: * ext/schroedinger/gstschroenc.c: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: basevideo: Move common fields/functions to basecodec 2010-09-28 18:21:57 +0300 Kaj-Michael Lang * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: zbar: Make scanner cache optional 2010-10-14 23:04:15 +0300 Stefan Kost * gst-libs/gst/interfaces/photography.h: photography: actualy use the enum in the vmethods If we introduce a new GstPhotographyNoiseReduction, lets also use it in the vmethods 2010-10-14 23:03:19 +0300 Stefan Kost * gst-libs/gst/interfaces/photography.h: photography: retab interface struct fields 2010-10-14 12:32:05 -0700 David Schleef * common: Automatic update of common submodule From 5a668bf to 7bbd708 2010-10-14 14:07:48 -0300 Thiago Santos * gst/camerabin/gstcamerabin-enum.h: camerabin: Remove unused entry Remove camerabin unused enum entry 2010-10-14 13:41:00 -0300 Thiago Santos * gst-libs/gst/interfaces/photography.h: photography: Avoid breaking ABI Move the newly added functions/fields to the end of the structs 2010-10-14 11:45:55 +0200 Thijs Vermeir * gst/mpegvideoparse/mpegpacketiser.c: mpegvideoparse: accelerate search for start code As the startcode always starts with 0x000001 some iterations can be skipped if values > 1 are detected. ~ 70% faster on HD video stream. https://bugzilla.gnome.org/show_bug.cgi?id=632130 2010-10-14 16:48:21 +0200 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: properly parse e-ac3 frame header Also add a few debug statements. 2010-10-14 11:24:42 +0200 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: reflow opening and closing decoder In particular, this reconfigures quite forcefully when renegotiation is needed. Fixes #631501. 2010-10-13 17:47:29 +0200 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: prevent infinite loop when adjusting framerate Fixes #632070. 2010-10-12 21:46:37 -0300 Thiago Santos * tests/check/elements/jifmux.c: tests: jifmux: update tests to the new datetime api Update jifmux tests to use new gstdatetime API in core 2010-10-12 09:37:56 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstrotate.c: * gst/geometrictransform/gstrotate.h: * gst/geometrictransform/plugin.c: geometrictransform: Adds rotate element Adds a new rotate element to geometrictransform. It still needs some work. But this is a good starting point. Based on patch from Bert Douglas 2010-10-13 11:00:01 +0200 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: tweak setting buffer metadata; avoid timestamp jitter Fixes #631993. 2010-10-12 18:17:27 +0200 Mark Nauwelaerts * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: cater for renegotiation At least, whenever either stream (e.g. ADTS) or upstream provides necessary info for doing so. Fixes #631501. 2010-10-12 18:07:49 +0200 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstaacparse.h: aacparse: streamline src caps setting In particular, also set src caps whenever changes in stream warrant doing so. 2010-10-12 16:13:07 +0100 Tim-Philipp Müller * sys/directdraw/gstdirectdrawsink.c: directdrawsink: port GstXOverlay bits to new API Don't use deprecated API. 2010-10-12 16:35:55 +0200 Mark Nauwelaerts * tests/check/elements/faac.c: faac: adjust unit test to faac modified output 2010-10-10 12:32:33 +0100 Tim-Philipp Müller * tests/check/Makefile.am: checks: remove variables from Makefile.am that aren't set Remove some stuff that was copy'n'pasted from core but doesn't apply here. The following vars aren't set: CHECK_CFLAGS, CHECK_LIBS, GST_OBJ_CFLAGS, GST_OBJ_LIBS, so we may just as well remove them. 2010-10-12 12:11:37 +0200 Sebastian Dröge * tests/examples/camerabin/gst-camera.c: examples: Fix compilation with GTK+ 3.0 2010-10-12 10:28:33 +0200 Sebastian Dröge * tests/check/elements/flacparse.c: flacparse: Adjust unit tests to new flacparse behaviour Garbage after frames is now included in the frames because flacparse has no easy way to detect the real end of a frame. Decoders are expected to everything after the frame because only decoding the bitstream will reveal the real end of the frame. Fixes bug #631814. 2010-10-12 10:27:53 +0200 Sebastian Dröge * gst/audioparsers/gstflacparse.c: flacparse: Don't drop the last frame if it is followed by garbage See bug #631814. 2010-10-11 17:49:46 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: perform bitrate handling and posting after newsegment sending 2010-10-11 17:36:19 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: immediately post subclass provided bitrate 2010-10-11 17:06:48 +0200 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: fix parsing with unknown framesizes Fixes #631814 (mostly). 2010-10-11 17:05:28 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: handle trailing encoder output 2010-10-11 14:25:41 +0200 Sebastian Dröge * ext/gsettings/gstswitchsrc.c: switchsrc: Set the GST_ELEMENT_IS_SOURCE flag 2010-09-13 19:07:55 +0100 Damien Lespiau * sys/dvb/gstdvbsrc.c: dvbsrc: Fix example usage, bandwidth=8 not 8MHz The bandwidth property is enum that takes the values 8, 7, 6, AUTO not 8MHz. 2010-10-08 17:01:29 -0400 Olivier Crête * sys/shm/shmalloc.h: shm: Add C++ protection Add c++ protection in the relevant places 2010-10-08 12:44:45 -0700 David Schleef * common: Automatic update of common submodule From c4a8adc to 5a668bf 2010-10-08 12:55:29 +0200 Sebastian Dröge * common: Automatic update of common submodule From 5e3c9bf to c4a8adc 2010-10-07 23:37:36 +0200 Sebastian Dröge * gst/audioparsers/gstflacparse.c: flacparse: Simplify frame header parsing by using lookup tables Based on a patch by Felipe Contreras. See bug #631200. 2010-10-07 23:28:08 +0200 Sebastian Dröge * gst/audioparsers/gstflacparse.c: * gst/audioparsers/gstflacparse.h: flacparse: Don't parse the complete FLAC frames but only look for valid frame headers Thanks to Felipe Contreras for the suggestion. This is partially based on his patches and makes flacparse more than 3.5 times faster. Looking for valid frame headers is unlikely to give false positives because every frame header is at least 9 bytes long, contains a 14 bit sync code and a 8 bit checksum over the first 8 bytes. Fixes bug #631200. 2010-10-07 11:59:30 +0200 Mark Nauwelaerts * gst/sdp/gstsdpdemux.c: sdpdemux: workaround internal rtspsrc failing state change Fixes #630046. 2010-10-07 10:34:48 +0200 Sebastian Dröge * gst/rawparse/Makefile.am: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstaudioparse.h: audioparse: Add support for setting the channel-positions 2010-10-06 18:32:51 +0200 Sebastian Dröge * gst/audioparsers/gstflacparse.c: flacparse: Really post tags only after the initial newsegment event The first newsegment event will be send by the first call to gst_base_parse_push_buffer() if necessary, posting the tags before that is not a good idea. Instead do it from the GstBaseParse::pre_push_buffer vfunc. 2010-10-06 16:54:16 +0200 Sebastian Dröge * gst/coloreffects/gstchromahold.c: chromahold: Fix hue calculation for red colors Also make the calculation much more accurate... 2010-10-06 15:21:09 +0200 Sebastian Dröge * gst/coloreffects/gstchromahold.c: chromahold: Make everything greyscale if the target color is grey 2010-10-06 11:55:34 +0200 Sebastian Dröge * gst/coloreffects/Makefile.am: * gst/coloreffects/gstchromahold.c: * gst/coloreffects/gstchromahold.h: * gst/coloreffects/gstplugin.c: chromahold: Add chromahold color effect This effect converts all colors except a single one to grey. The color is selected by an RGB triple and a tolerance for the color matching in hue degree can be specified. 2010-10-05 17:04:10 +0200 Mark Nauwelaerts * gst/sdp/gstsdpdemux.c: sdpdemux: fix and reflow some exits 2010-10-05 16:56:49 +0200 Mark Nauwelaerts * gst/sdp/gstsdpdemux.c: sdpdemux: error out if no streams found in sdp message 2010-10-05 16:47:51 +0200 Mark Nauwelaerts * gst/sdp/gstsdpdemux.c: sdpdemux: unbreak standard manager setup 2010-10-05 11:44:48 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: .gitignore: ignore more unit test binaries 2010-10-05 11:42:42 +0100 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-alsaspdif.xml: * ext/Makefile.am: * ext/alsaspdif/Makefile.am: * ext/alsaspdif/alsaspdifsink.c: * ext/alsaspdif/alsaspdifsink.h: * gst-plugins-bad.spec.in: * m4/Makefile.am: * m4/gst-alsa.m4: alsaspdif: remove alsaspdifsink element Remove alsaspdifsink, it's not needed any longer. alsasink in -base has been able to handle SPDIF for a while now. 2010-10-05 11:17:52 +0100 Tim-Philipp Müller * gst/audioparsers/gstbaseparse.c: Revert "baseparse: add skip property" This reverts commit b5a3d60363d837a10f0533c141ec93d10b742312. Reverting this for now, since no one really seems to remember why this property exists or what it could possibly be good for. It seems to have been in the original mp3parse since the beginning of time and was back- ported from there. 2010-10-04 10:41:52 +0200 Sebastian Dröge * gst/audioparsers/gstflacparse.c: flacparse: Fix uninitialized variable compiler warnings These warnings are wrong, the variables are only used if they were initialized by the bit reader. 2010-09-14 02:48:58 +0300 Felipe Contreras * gst/audioparsers/gstflacparse.c: flacparse: fix picture parsing Signed-off-by: Felipe Contreras 2010-10-03 23:54:49 +0200 Sebastian Dröge * gst/audioparsers/gstflacparse.c: flacparse: Push tags before the header buffers are pushed 2010-08-02 20:50:21 +0300 Felipe Contreras * gst/audioparsers/gstflacparse.c: flacparse: trivial caps fix Signed-off-by: Felipe Contreras 2010-10-03 23:45:46 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: Add G_PARAM_STATIC_STRINGS Add G_PARAM_STATIC_STRINGS to qtmux properties 2010-10-03 23:14:53 -0300 Thiago Santos * tests/check/Makefile.am: tests: valve: Fix tests build Adds missing cflags/libs to valve check test to fix build 2010-10-03 23:50:29 +0200 Sebastian Dröge * gst/audioparsers/gstbaseparse.c: audioparser: Let the format string agree with the parameters to fix compiler warning 2010-10-03 15:55:22 +0200 Sebastian Dröge * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: Check return values of the bitreader functions 2010-10-03 15:41:20 +0200 Sebastian Dröge * gst/audioparsers/gstac3parse.c: ac3parse: Use unchecked versions of the bitreader get functions We didn't check the return values anyway... 2010-09-28 13:52:29 +0300 Stefan Kost * gst/valve/gstvalve.c: valve: no need to ref the object in _chain Don't ref the pad in chain, like elsewhere 2010-09-22 15:44:43 +0530 Arun Raghavan * gst/audioparsers/gstbaseparse.c: baseparse: Fix debug output We lose the reference to the buffer after gst_pad_push(), so the debug print should happen before. https://bugzilla.gnome.org/show_bug.cgi?id=622276 2010-10-01 12:34:55 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/flacparse.c: * tests/check/elements/parser.c: * tests/check/elements/parser.h: audioparsers: add flacparse unit test ... and tweak parser test helper in the process. 2010-09-29 16:12:42 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: support reverse playback ... in pull mode or upstream driven. 2010-09-27 12:16:43 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: remove done TODOs and update documentation 2010-09-25 14:40:54 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: use determined seekability in answering SEEKING query 2010-09-25 14:32:06 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: add skip property 2010-09-25 13:59:39 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/ac3parse.c: * tests/check/elements/mpegaudioparse.c: audioparsers: add ac3parse and mpegaudioparse unit test 2010-09-25 13:59:18 +0200 Mark Nauwelaerts * gst/audioparsers/Makefile.am: * gst/audioparsers/gstmpegaudioparse.c: * gst/audioparsers/gstmpegaudioparse.h: * gst/audioparsers/plugin.c: mpegaudioparse: initial version ... adequately equivalent to mp3parse, so lets boldly set it to higher rank. 2010-09-25 14:01:07 +0200 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: aacparse: set minimum frame size at _start ... rather than one time at _init. 2010-09-25 13:50:51 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/aacparse.c: * tests/check/elements/aacparse_data.h: * tests/check/elements/amrparse.c: * tests/check/elements/amrparse_data.h: * tests/check/elements/parser.c: * tests/check/elements/parser.h: audioparsers: refactor existing unit tests using common helper 2010-09-22 15:07:09 +0200 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstac3parse.c: * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: use _set_frame_props to configure frame lead_in and lead_out ... provided a corresponding decoder with sufficient leading and following frames to carry out full decoding for a particular segment. 2010-09-22 14:13:17 +0200 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstac3parse.c: * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: * gst/audioparsers/gstflacparse.c: baseparse: use _set_duration to configure duration update interval ... as it logically belongs there as one or the other; either subclass can provide a duration, or an estimate must be made (reguarly updated). 2010-09-22 13:55:20 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: localize use of provided fps information 2010-09-22 12:13:12 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: seek table and accurate seek support 2010-09-21 13:57:10 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: proper and more extended segment and seek handling That is, loop pause handling, segment seek support, newsegment for gaps, etc 2010-09-21 10:57:04 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: add index support 2010-09-21 09:59:56 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: refactor state reset 2010-09-20 16:39:37 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: prevent indefinite resyncing 2010-09-20 13:57:55 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: specific EOS handling if no output so far 2010-09-20 13:31:57 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: adjust _set_frame_prop documentation and set default as claimed 2010-09-20 13:30:54 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: fix bitrate copy-and-paste and update heuristic 2010-09-17 18:33:29 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: post duration message if average bitrates is updated 2010-09-17 18:24:22 +0200 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: remove is_seekable vmethod and use a set_seek instead Seekability, like duration, etc is unlikely to change (frequently), and the default assumption covers most cases, so let subclass set when needed. At the same time, allow subclass to indicate if it has seek-metadata (table) available, and possibly have it provide an average bitrate. 2010-09-17 17:35:40 +0200 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: remove redundant default is_seekable 2010-09-17 17:21:46 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: add another hook for subclass prior to pushing buffer ... and allow subclass to perform custom segment clipping, or to emit tags or messages at this time. 2010-09-17 17:19:37 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: 0 converts to 0 by default 2010-09-16 18:56:46 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: basepase: refactor conversion using helper function and export default convert 2010-09-16 18:35:47 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: streamline query handling 2010-09-16 11:51:20 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: cleanup struct and remove unused member 2010-08-16 11:04:37 +0200 Mark Nauwelaerts * gst/audioparsers/plugin.c: audioparsers: increase ranks to enable auto-plugging Because we can, and should, have some shakedown testing before having these make it into -good later on ... 2010-09-22 16:07:24 +0530 Arun Raghavan * gst/audioparsers/gstbaseparse.c: baseparse: Allow chaining of subclass event handlers This allows the child class to chain its event handler with GstBaseParse, so that subclasses don't have to duplicate all the default event handling logic. https://bugzilla.gnome.org/show_bug.cgi?id=622276 2010-09-30 17:48:35 -0400 Olivier Crête * tests/check/elements/valve.c: tests: Fix caps leak in the valve test 2010-09-30 17:24:29 -0400 Olivier Crête * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/valve.c: valve: Add unit tests Add a unit test for the valve element. 2010-09-30 16:26:19 -0400 Olivier Crête * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: valve: Make the drop variable into an atomic. Using an atomic allows us to avoid locking the whole object all time time. As suggested by Stefan Kost. 2010-09-30 16:22:04 -0400 Olivier Crête * gst/valve/gstvalve.c: valve: Correctly set the DISCONT flag after dropping buffers 2010-09-30 16:16:47 -0400 Olivier Crête * gst/valve/gstvalve.c: valve: Remove superflous checking casts 2010-09-30 16:13:23 -0400 Olivier Crête * gst/valve/gstvalve.c: valve: Fix style, improve comments Minor improvements to the comments and break a few overly long lines 2010-09-30 16:07:29 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: rtpmux: Improve documentation Add an example pipeline, and try to explain a bit more what it does. 2010-09-29 17:34:00 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Do not wrongly fail when starting a capture If the elements are in NULL/READY and changing state to PAUSED/PLAYING while a capture is started camerabin might not set the active_bin properly causing the capture start to fail. This patch fixes it by checking the current and pending state of the branches instead of only the current one 2010-09-29 10:13:06 +0200 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: reverse playback; cater for decoder delay ... thereby actually using the gather and decode queues. 2010-09-29 10:08:17 +0200 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: tweak output buffer timestamping In particular, avoid packetised input leading to initial to non-0 output ts. 2010-09-28 16:20:50 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Use static caps instead of converting strings to caps all the time 2010-09-28 16:14:14 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Fix crashes if plugins don't provide correct property information The vertigo plugin for example claims to have 3 properties but the 3rd property does nothing and has a NULL name. Fixes bug #630783. Thanks to Martti Kühne for debugging this. 2010-09-28 14:26:11 +0300 Stefan Kost * gst/valve/gstvalve.c: valve: move default: parst in the switch statement to the end Now sure if it matters, but the previous form looks weired. 2010-09-28 14:23:01 +0300 Stefan Kost * gst/valve/gstvalve.c: valve: move debug-category registration to type init 2010-09-28 14:22:18 +0300 Stefan Kost * gst/liveadder/liveadder.c: liveadder: move debug-category registration to type init 2010-09-28 14:17:45 +0300 Stefan Kost * gst/liveadder/liveadder.c: liveadder: GST_BOILERPLATE already sets parent_class 2010-09-28 14:16:58 +0300 Stefan Kost * gst/liveadder/liveadder.c: liveadder: use base_init for pad_templates and element_details 2010-09-28 14:15:57 +0300 Stefan Kost * gst/liveadder/liveadder.c: liveadder: use G_PARAM_STATIC_STRINGS on properties 2010-09-28 14:15:13 +0300 Stefan Kost * gst/valve/gstvalve.c: valve: use G_PARAM_STATIC_STRINGS on properties 2010-09-28 14:07:39 +0300 Stefan Kost * gst/valve/gstvalve.c: valve: GST_BOILERPLATE already sets parent_class 2010-09-28 14:08:29 +0300 Stefan Kost * gst/videomeasure/gstvideomeasure_collector.c: videomeassure: GST_BOILERPLATE already sets parent_class 2010-09-28 11:35:53 +0300 Hu Gang * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/camerabin/gstcamerabin-enum.h: photography: extend photography iface Add more color tone modes and add NoseReduction settings. Fixes #616814. 2010-09-26 20:41:25 +0100 Tim-Philipp Müller * ext/resindvd/resindvdsrc.c: resindvdsrc: improve error messages on read erros Provide i18n-ed error messages when a read error happens, and point out that the error could be happening because the DVD is scrambled. https://bugzilla.gnome.org/show_bug.cgi?id=613633 2010-09-24 00:05:17 +0100 Tim-Philipp Müller * configure.ac: configure: set plugin release datetime 2010-09-25 12:33:58 +0200 Sebastian Dröge * ext/ofa/gstofa.c: ofa: Call g_object_notify() after the fingerprint was created 2010-09-25 10:46:34 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rfilter.h: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rmixer.h: * gst/frei0r/gstfrei0rsrc.c: * gst/frei0r/gstfrei0rsrc.h: frei0r: Fix scanning of plugin subdirectories and support different vendors The frei0r spec specifies, that plugins can be in subdirectories inside the main plugin directories to introduce new namespaces called vendors. 2010-09-24 22:47:01 +0200 Sebastian Dröge * gst/frei0r/frei0r.h: frei0r: Update frei0r interface specification to 1.2 2010-09-24 22:43:51 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Add support for the FREI0R_PATH environment variable This was added in version 1.2 of the spec and replaces the default list of directories. 2010-09-23 14:15:08 +0300 Lasse Laukkanen * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: initialize interval_ts and last_frames_* counters Initialize interval_ts to first QOS event timestamp, otherwise the fps statistics are printed always after one rendered frame. Also, initialize last_frames_* counters, the values are bogus e.g. after PLAYING-NULL-PLAYING state change. 2010-09-24 13:29:55 +0300 Stefan Kost * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: remove unused variable 2010-09-24 13:25:22 +0300 Stefan Kost * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: remove unused signal boilerplate 2010-09-24 13:24:48 +0300 Stefan Kost * gst/rtpmux/gstrtpmux.c: rtpmux: no need to ref pad in _chain() 2010-09-22 23:41:32 -0300 Thiago Santos * tests/examples/camerabin/gst-camera.c: camerabin: example: make gst-camera use flags Enable all convertion flags in gst-camera example app for safety. Fixes #603063 2010-09-22 23:39:07 -0300 Thiago Santos * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin-enum.c: * gst/camerabin/gstcamerabin-enum.h: camerabin: Adds new video-colorspace-flag to flags Adds a new flag to allow a colorspace convertion before the video encoder element. Fixes #603063 2010-09-22 22:39:49 -0300 Thiago Santos * gst/camerabin/camerabingeneral.c: * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: Use link_full version for disabling hierarchy check Disable hierarchy checks when linking because we are already handling the element adding to bins and it should be done correctly. 2010-09-22 21:03:56 -0300 Thiago Santos * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: Set queues to silent We currently don't use queues' signals, so set them to silent. 2010-09-22 11:57:28 -0700 David Schleef * ext/schroedinger/gstschrodec.c: schrodec: Fix class definition Class structures should include parent class, not the parent instance structure. 2010-09-22 16:41:33 +0200 Wim Taymans * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: fix weird caps code Remove the weird (failing) code to figure out caps on the srcpad. Add a caps property to decide what caps to put on the outgoing buffers. Fix an event leak. 2010-09-21 18:13:37 -0700 David Schleef * gst/colorspace/colorspace.c: colorspace: quiet a GST_ERROR 2010-09-21 19:07:05 +0200 Wim Taymans * gst/sdp/gstsdpdemux.c: * gst/sdp/gstsdpdemux.h: sdpdemux: add property to disable redirect Add a property to avoid redirection to the rtsp-sdp:// url but instead embeds an rtspsrc element inside sdpdemux as the session manager. Based on patch by Marco Ballesio. Fixes #630046 2010-09-21 18:45:03 +0200 Edward Hervey * ext/sdl/sdlvideosink.c: sdlvideosink: Fix function prototype for touchy compilers 2010-09-21 18:34:19 +0200 Edward Hervey * common: Automatic update of common submodule From 080e025 to 5e3c9bf 2010-09-21 16:31:07 +0200 Edward Hervey * ext/sdl/sdlvideosink.c: sdl: Port to new XOverlay API Fixes #630253 2010-09-21 16:26:34 +0200 Edward Hervey * sys/vdpau/gstvdpsink.c: vdpau: Use the new XOverlay API Fixes #630254 2010-09-21 10:59:42 -0300 Thiago Santos * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camerabin-test.c: camerabin: examples: do not use deprecated GstXOverlay functions Replace the deprecated gst_x_overlay_set_xwindow_id with gst_x_overlay_set_window_handle Fixes #630255 2010-09-21 12:33:18 +0200 Sebastian Dröge * configure.ac: configure: Use -DGST_DISABLE_DEPRECATED again for GIT versions 2010-09-21 12:29:06 +0200 Sebastian Dröge * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdecwrapper: Don't use GST_FLOW_IS_FATAL() And don't error out on UNEXPECTED 2010-09-21 12:27:56 +0200 Sebastian Dröge * ext/spc/gstspc.c: spc: Don't use GST_FLOW_IS_FATAL() 2010-09-21 12:27:20 +0200 Sebastian Dröge * ext/mplex/gstmplex.cc: mplex: Don't use GST_FLOW_IS_SUCCESS() 2010-08-27 19:17:14 +0200 Sebastian Dröge * tests/icles/pitch-test.c: pitch-test: Don't use deprecated GstController API 2010-08-27 19:00:38 +0200 Sebastian Dröge * ext/timidity/gsttimidity.c: timidity: Don't post an error message on the bus for UNEXPECTED Also don't use GST_FLOW_IS_FATAL() 2010-08-27 19:00:18 +0200 Sebastian Dröge * ext/timidity/gstwildmidi.c: wildmidi: Don't use GST_FLOW_IS_FATAL() 2010-08-27 18:58:23 +0200 Sebastian Dröge * ext/gme/gstgme.c: gme: Post an error message on the bus for fatal errors Also don't use GST_FLOW_IS_FATAL(). 2010-08-27 18:56:23 +0200 Sebastian Dröge * ext/sndfile/gstsfsink.c: sfsink: Don't use GST_FLOW_IS_FATAL() 2010-08-27 18:52:54 +0200 Sebastian Dröge * gst/tta/gstttaparse.c: ttaparse: Don't post an error message on UNEXPECTED Also don't use GST_FLOW_IS_FATAL() 2010-08-27 18:51:59 +0200 Sebastian Dröge * gst/sdp/gstsdpdemux.c: sdpdemux: Don't use GST_FLOW_IS_SUCCESS() 2010-08-27 18:51:24 +0200 Sebastian Dröge * gst/rawparse/gstrawparse.c: rawparse: Don't use GST_FLOW_IS_FATAL() 2010-08-27 18:50:30 +0200 Sebastian Dröge * gst/nuvdemux/gstnuvdemux.c: nuvdemux: Don't use GST_FLOW_IS_FATAL() And don't post an error message for WRONG_STATE or UNEXPECTED. 2010-08-27 18:49:12 +0200 Sebastian Dröge * gst/nsf/gstnsf.c: * gst/nsf/nes_apu.c: nsf: Don't use GST_FLOW_IS_FATAL() 2010-08-27 18:48:25 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't use GST_FLOW_IS_FATAL() 2010-08-27 18:47:03 +0200 Sebastian Dröge * gst/mve/gstmvedemux.c: * gst/mve/gstmvedemux.h: mvedemux: Add proper flow return aggregation NOT_LINKED should only be returned if all streams returned NOT_LINKED. 2010-08-27 18:41:06 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/mpegtsparse.c: mpegdemux: Don't use GST_FLOW_IS_FATAL() And fix some minor issues related to its usage. 2010-08-27 18:36:26 +0200 Sebastian Dröge * gst/autoconvert/gstautoconvert.c: autoconvert: Don't use GST_FLOW_IS_FATAL() 2010-08-27 18:35:10 +0200 Sebastian Dröge * gst/audioparsers/gstbaseparse.c: baseparse: Don't use GST_FLOW_IS_FATAL() Also don't post an error message for UNEXPECTED and do it for NOT_LINKED. 2010-08-27 18:33:49 +0200 Sebastian Dröge * gst/asfmux/gstasfparse.c: asfparse: Don't use GST_FLOW_IS_FATAL() Also don't push EOS downstream on WRONG_STATE, it will be dropped anyway. 2010-08-27 18:32:46 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Don't use GST_FLOW_IS_SUCCESS() 2010-08-27 18:32:33 +0200 Sebastian Dröge * gst/aiff/aiffparse.c: aiffparse: Don't use GST_FLOW_IS_FATAL() 2010-09-20 21:46:49 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Mention photography interface in docs Add a note to docs about getting the videosource and accessing its photography interface (in case it has it) Fixes #616923 2010-08-25 14:04:59 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: Adds missing variable initialization Adds missing app_src_vid initialization 2010-08-26 15:33:59 +0300 Teemu Katajisto * gst/camerabin/gstcamerabin.c: camerabin: check state change to playing for imagebin and videobin Properly check and handle error cases related to imagebin and videobin state changes. 2010-06-28 21:48:26 -0300 Thiago Santos * gst/camerabin/camerabinimage.c: camerabin: Remove useless src template pad camerabin imagebin doesn't need a src template pad. 2010-06-21 09:34:43 -0300 Thiago Santos * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinpreview.h: * gst/camerabin/gstcamerabin.c: camerabin: Forward tag events to preview pipeline Forward tag events from image pipeline to preview pipeline so that preview elements can use capture tags information 2010-06-21 16:17:24 +0300 Hoseok Chang * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinpreview.h: * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: add "preview-source-filter" property Adds 'preview-source-filter' for adding an element to proccess the preview images before posting them to the bus. 2010-05-25 15:39:43 +0300 Lasse Laukkanen * tests/examples/camerabin/gst-camerabin-test.c: camerabin: update tag names in test application to latest gst definitions 2010-05-17 13:44:36 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: Make block-after-capture resetting more consistent Adds another boolean to help controlling viewfinder blocking, making it possible for the applications to reset the viewfinder blocking after capture was started but before the blocking actually happens. 2010-05-12 21:11:27 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Unblock the viewfinder when going to READY Unblock the viewfinder when going to ready to avoid blocking when setting camerabin to playing again and attemping to capture. Keep the property as is. 2010-09-20 17:19:33 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: add monitoring and support for photoiface zoom for video-source Makes camerabin aware of changes in its videosource zoom property. 2010-09-20 16:22:30 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * tests/check/elements/camerabin.c: * tests/examples/camerabin/gst-camerabin-test.c: camerabin: Change zoom property from int to float Updates zoom property for a more natural type and makes it consistent with the photography API 2010-09-19 18:51:35 -0300 Thiago Santos * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photography: Add zoom property Adds a property to set/get the zoom as a float 2010-06-08 10:04:52 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: remove caching photography interface settings Camerabin doesn't implement photography interface, so we don't need caching the video source properties anymore. 2010-04-22 17:46:59 +0300 Teemu Katajisto * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: use photoiface properties through video-source Fixes #616923 2010-04-22 14:03:34 +0300 Teemu Katajisto * tests/check/elements/camerabin.c: tests: camerabin: remove photoiface property/settings tests Fixes #616923 2010-08-31 18:06:15 -0300 Teemu Katajisto * gst/camerabin/Makefile.am: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabinphotography.c: * gst/camerabin/gstcamerabinphotography.h: camerabin: remove photography interface implementation from camerabin Remove notify signal proxy for video-source. Application can use video-source directly from now on to get notified of property changes. Add monitoring scene-mode property change to select lowest possible framerate for video capture when night mode is selected. Fixes #616923 2010-04-29 12:44:29 +0300 Teemu Katajisto * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: add --no-xwindow option and fix option handling Add --no-xwindow option to not to create xwindow. Also fix zoom and mute option types and filename string handling. 2010-04-29 13:24:18 +0300 Lasse Laukkanen * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photography: Add image-preview-supported-caps interface property Adds a readable property to gstphotography interface to query what are the allowed preview caps supported. Patch by Tommi Myöhänen 2010-09-20 12:34:06 -0700 David Schleef * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: Remove unused code 2010-09-20 11:26:59 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Remove check for old -base 2010-09-19 19:33:40 -0700 David Schleef * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: Add handling of GstForceKeyUnit events 2010-09-18 19:25:49 -0700 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: Fix name of 30p/60i pattern 2010-09-18 19:21:47 -0700 David Schleef * ext/schroedinger/gstschrodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: add capture pattern handling Move typical scan_for_sync() usage into base class, which just calls gst_adapter_masked_scan_uint32(). 2010-09-18 19:14:36 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Don't blow away field information Also, set field flags correctly. 2010-09-18 17:28:48 -0700 David Schleef * ext/schroedinger/gstschrodec.c: * ext/vp8/gstvp8dec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: Move deadline to frame structure 2010-09-18 14:57:32 -0700 David Schleef * gst/interlace/gstinterlace.c: interlace: Add allow-rff property. Fix timestamping 2010-09-18 13:32:07 -0700 David Schleef * gst/interlace/gstinterlace.c: interlace: merge telecine into normal operation 2010-09-08 15:08:50 +0200 Robert Swain * gst/interlace/gstinterlace.c: interlace: Add telecine support 2010-09-17 08:43:48 +0200 Sebastian Dröge * configure.ac: * ext/cog/Makefile.am: * ext/cog/cogvirtframe.c: * ext/cog/gstcog.c: * ext/cog/gstcogmse.c: cog: Allow compilation without orc Also don't ignore --disable-orc. Fixes bug #629897. 2010-09-14 16:17:47 -0300 Thiago Santos * tests/check/elements/camerabin.c: camerabin: Adds a new test to check sequential capture of images Adds a new test case that shoots a sequence of image capture and check that the files are valid. Also adds taglist checking capabilities to tests. 2010-09-15 17:54:49 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: Follow xmp serialization guidelines closer qt and isom variants have different ways of serializing xmp, follow these guidelines. Those can be found in Adobe's xmp docs. 2010-09-15 21:47:09 +0100 Tim-Philipp Müller * gst/colorspace/gstcolorspaceorc-dist.c: * gst/colorspace/gstcolorspaceorc-dist.h: colorspace: add orc-dist files Should fix build without orc or too old orc. 2010-09-15 17:51:26 +0100 Tim-Philipp Müller * gst/debugutils/gstchecksumsink.h: checksumsink: fix up copyright in header file 2010-09-12 14:59:42 +0100 Tim-Philipp Müller * pkgconfig/gstreamer-libs-uninstalled.pc.in: * pkgconfig/gstreamer-libs.pc.in: * pkgconfig/gstreamer-plugins-uninstalled.pc.in: * pkgconfig/gstreamer-plugins.pc.in: pkgconfig: remove some old unused files from 0.8 days 2010-09-15 18:38:03 +0300 Stefan Kost * Makefile.am: metadata: add removed files to cruft vars 2010-09-15 18:13:55 +0300 Stefan Kost * tests/check/elements/jifmux.c: tests: add missing stdio include 2010-09-15 18:10:33 +0300 Stefan Kost * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-metadata.xml: * ext/Makefile.am: * ext/metadata/.gitignore: * ext/metadata/Makefile.am: * ext/metadata/README: * ext/metadata/TODO: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/gstmetadata.c: * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatademux.h: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadataiptc.h: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxjpeg.h: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadatamuxpng.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/metadataparseutil.c: * ext/metadata/metadataparseutil.h: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadatatypes.c: * ext/metadata/metadatatypes.h: * ext/metadata/metadataxmp.c: * ext/metadata/metadataxmp.h: * tests/check/Makefile.am: * tests/check/pipelines/.gitignore: * tests/check/pipelines/metadata.c: * tests/icles/Makefile.am: metadata: remove metadata plugin This plugins functionality is replaced by utility libraries in base for exif and xmp. Jpeg images can use this via jpegformat plugin. Fixes #486659 2010-09-14 11:28:56 -0700 David Schleef * gst/bayer/gstbayer2rgb.c: bayer2rgb: Add format=bggr/etc. to caps 2010-09-13 18:49:43 -0700 David Schleef * gst/colorspace/Makefile.am: * gst/colorspace/colorspace.c: * gst/colorspace/colorspace.h: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/gstcolorspaceorc.orc: colorspace: Add conversion code Work in progress. Colorspace handles most format conversion using 3-stage getline/matrix/putline process using an AYUV or ARGB intermediate, with most functions handled by Orc. There is also a table of single-pass conversions, all handled by Orc. The plan is to add optional stages for various chroma upsampling/downsampling algorithms, dithering, and float/int16 intermediates, and then have Orc create multi-stage functions at runtime. 2010-09-13 12:48:50 -0700 David Schleef * configure.ac: * gst/colorspace/Makefile.am: * gst/colorspace/gstcolorspace.c: * gst/colorspace/gstcolorspace.h: * gst/colorspace/gstcolorspaceorc.orc: * gst/colorspace/yuv2rgb.c: * gst/colorspace/yuv2rgb.h: colorspace: Revive element Now based on Orc. 2010-09-09 14:49:06 -0400 Tristan Matthews * ext/jack/Makefile.am: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: jack: added translatable text for server not found error 2010-08-09 14:32:57 +0200 Olivier Crête * ext/celt/gstceltenc.c: celtenc: Change bitrate to bits/sec 2010-09-10 13:36:24 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Reset tags when going to READY Reset the tagsetter tags when going to READY state 2010-09-10 13:33:16 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: jpegformat: Fix element description Use saner categories for jifmux/jpegparse elements 2010-09-10 11:31:46 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Set tags to more elements Remove check for 'Muxer' category when setting tags for tagsetters. Set them to all tagsetters in the pipelines. 2010-09-10 18:35:27 +0200 Mark Nauwelaerts * gst/sdp/gstsdpdemux.c: sdpdemux: redirect SDP with an rtsp control URL When we find an SDP with an rtsp:// url as the global control attribute or when all streams have an rtsp:// control attribute, post an redirect message with an rtsp-sdp:// url containing the SDP. Fixes #628214 2010-09-10 10:29:38 -0300 Thiago Santos * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gsttunnel.c: geometrictransform: Fix build with debugging disabled Add some ifdefs to prevent build failures due to unused variables 2010-09-09 23:59:17 +0300 Stefan Kost * tests/check/Makefile.am: * tests/check/generic/states.c: tests: allow running state tests for all elements Now one can use GST_NO_STATE_IGNORE_ELEMENTS=1 make generic/states.check to try elements that would normaly be skipped. 2010-09-09 17:18:06 +0200 Edward Hervey * configure.ac: configure.ac: Remove dependency on libswscale It's not used in the gst opencv plugin. 2010-09-09 15:03:24 +0100 Tim-Philipp Müller * configure.ac: * ext/opencv/Makefile.am: opencv: define CV_NO_BACKWARD_COMPATIBILITY to suppress warnings caused by compat header Compile with -DCV_NO_BACKWARD_COMPATIBILITY for now, so that the compat header doesn't get included, which causes compiler warnings that (it seems) can't be switched off easily. As a result, we also specify a max. version in configure, so the build doesn't break if our code doesn't compile against newer opencv versions any more with that flag. 2010-09-09 11:07:47 +0100 Tim-Philipp Müller * ext/opencv/Makefile.am: opencv: avoid 'unused' compiler warnings with inline functions in opencv headers Override CV_INLINE to avoid 'unused' gcc warnings. GLib will take care of defining 'inline' sufficiently and OpenCV's define isn't good enough to avoid 'unused' compiler warnings (at least in version 2.1.0). 2010-09-09 10:27:49 +0100 Tim-Philipp Müller * ext/opencv/gstopencv.c: opencv: update plugin source package name and origin 2010-09-08 23:59:38 -0300 Thiago Santos * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: facedetect: Add more parameters Expose the parameters of cvHaarDetectObjects in facedetect element. 2010-09-08 14:59:54 -0300 Thiago Santos * ext/opencv/Makefile.am: * ext/opencv/basicfilters/Makefile.am: * ext/opencv/edgedetect/Makefile.am: * ext/opencv/faceblur/Makefile.am: * ext/opencv/facedetect/Makefile.am: * ext/opencv/gstcvdilate.c: * ext/opencv/gstcvdilate.h: * ext/opencv/gstcvdilateerode.c: * ext/opencv/gstcvdilateerode.h: * ext/opencv/gstcvequalizehist.c: * ext/opencv/gstcvequalizehist.h: * ext/opencv/gstcverode.c: * ext/opencv/gstcverode.h: * ext/opencv/gstcvlaplace.c: * ext/opencv/gstcvlaplace.h: * ext/opencv/gstcvsmooth.c: * ext/opencv/gstcvsmooth.h: * ext/opencv/gstcvsobel.c: * ext/opencv/gstcvsobel.h: * ext/opencv/gstedgedetect.c: * ext/opencv/gstedgedetect.h: * ext/opencv/gstfaceblur.c: * ext/opencv/gstfaceblur.h: * ext/opencv/gstfacedetect.c: * ext/opencv/gstfacedetect.h: * ext/opencv/gstopencvutils.c: * ext/opencv/gstpyramidsegment.c: * ext/opencv/gstpyramidsegment.h: * ext/opencv/gsttemplatematch.c: * ext/opencv/gsttemplatematch.h: * ext/opencv/gsttextwrite.c: * ext/opencv/gsttextwrite.h: * ext/opencv/pyramidsegment/Makefile.am: * ext/opencv/templatematch/Makefile.am: * ext/opencv/textwrite/Makefile.am: opencv: Refactor files structure Remove internal folders and put all code inside the main plugin folder. Also fixes some building warnings. 2010-09-08 00:08:44 -0300 Thiago Santos * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-opencv.xml: * ext/Makefile.am: * ext/opencv/Makefile.am: opencv: Adds new plugin opencv Moves opencv plugin from http://github.com/Elleo/gst-opencv into -bad module. 2010-09-05 23:09:26 -0300 Thiago Santos * ext/opencv/facedetect/gstfacedetect.c: facedetect: Post an useful message Add a message to be post when faces are found on a frame that contains all faces on a single message and also has timestamp/running/segment times for that buffer so it can be identified. This message is called 'facedetect' and has a 'faces' list of structures with all faces. The old 'face' message is still posted for each face found, but it is not really useful as it doesn't have any reference to the buffer that generated it. 2010-09-05 17:53:24 -0300 Thiago Santos * ext/opencv/facedetect/Makefile.am: * ext/opencv/facedetect/gstfacedetect.c: * ext/opencv/facedetect/gstfacedetect.h: facedetect: Use GstOpencvVideoFilter as the base class Port facedetect to use GstOpencvVideoFilter as the base class to inherit all the goodness that GstBaseTransform/GstVideoFilter already handles. 2010-09-03 20:27:31 -0300 Thiago Santos * ext/opencv/Makefile.am: * ext/opencv/basicfilters/Makefile.am: * ext/opencv/basicfilters/gstcvdilate.c: * ext/opencv/basicfilters/gstcvdilateerode.c: * ext/opencv/basicfilters/gstcvdilateerode.h: * ext/opencv/basicfilters/gstcvequalizehist.c: * ext/opencv/basicfilters/gstcvequalizehist.h: * ext/opencv/basicfilters/gstcverode.c: * ext/opencv/basicfilters/gstcvlaplace.c: * ext/opencv/basicfilters/gstcvlaplace.h: * ext/opencv/basicfilters/gstcvsmooth.c: * ext/opencv/basicfilters/gstcvsmooth.h: * ext/opencv/basicfilters/gstcvsobel.c: * ext/opencv/basicfilters/gstcvsobel.h: * ext/opencv/gstopencvvideofilter.c: * ext/opencv/gstopencvvideofilter.h: opencvbasetrans: Use GstVideoFilter as the base class Port from GstBaseTransform to GstVideoFilter as the base class. 2010-05-24 19:28:59 -0300 Thiago Santos * ext/opencv/basicfilters/Makefile.am: * ext/opencv/basicfilters/gstcvlaplace.c: * ext/opencv/basicfilters/gstcvlaplace.h: * ext/opencv/gstopencv.c: * ext/opencv/gstopencvbasetrans.c: * ext/opencv/gstopencvbasetrans.h: cvlaplace: adds new cvlaplace element Adds new cvlaplace element. Also adds a new opencvbasetransform function to be overriden by children classes: the cv_set_caps, it allows children classes to know what are they going to handle and prepare properly. 2010-05-19 20:11:39 -0300 Thiago Santos * ext/opencv/basicfilters/Makefile.am: * ext/opencv/basicfilters/gstcvsobel.c: * ext/opencv/basicfilters/gstcvsobel.h: * ext/opencv/gstopencv.c: * ext/opencv/gstopencvutils.c: Adds new element cvsobel 2010-05-17 19:04:49 -0300 Thiago Santos * ext/opencv/basicfilters/Makefile.am: * ext/opencv/basicfilters/gstcvequalizehist.c: * ext/opencv/basicfilters/gstcvequalizehist.h: * ext/opencv/gstopencv.c: Adds new element cvequalizehist 2010-05-16 19:14:54 -0300 Thiago Santos * ext/opencv/basicfilters/Makefile.am: * ext/opencv/basicfilters/gstcvdilate.c: * ext/opencv/basicfilters/gstcvdilate.h: * ext/opencv/basicfilters/gstcvdilateerode.c: * ext/opencv/basicfilters/gstcvdilateerode.h: * ext/opencv/basicfilters/gstcverode.c: * ext/opencv/basicfilters/gstcverode.h: * ext/opencv/gstopencv.c: Adds new elements cvdilate and cverode Adds 2 similar elements (so similar they have their own baseclass), cvdilate and cverode. 2010-05-16 17:03:51 -0300 Thiago Santos * ext/opencv/basicfilters/gstcvsmooth.c: * ext/opencv/gstopencvbasetrans.c: cvsmooth: Improve parameters docs 2010-05-16 16:37:12 -0300 Thiago Santos * ext/opencv/basicfilters/gstcvsmooth.c: cvsmooth: Deactivating blur-no-scale Deactivate blur-no-scale because basetransform doesn't provide a way to override getcaps for pads, always using templatecaps independent of properties. 2010-05-16 11:42:08 -0300 Thiago Santos * ext/opencv/basicfilters/gstcvsmooth.c: * ext/opencv/gstopencvbasetrans.c: * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvutils.h: cvsmooth: Add support for video/x-raw-gray 2010-05-16 00:46:01 -0300 Thiago Santos * ext/opencv/Makefile.am: * ext/opencv/gstopencvbasetrans.c: * ext/opencv/gstopencvutils.c: * ext/opencv/gstopencvutils.h: Adding gstopencvutils Adds a file to keep utilitary functions together 2010-05-11 20:11:42 -0300 Thiago Santos * ext/opencv/Makefile.am: * ext/opencv/basicfilters/gstcvsmooth.c: * ext/opencv/basicfilters/gstcvsmooth.h: * ext/opencv/gstopencv.c: cvsmooth: Adds new element cvsmooth Adds new cvsmooth element 2010-05-05 01:24:54 -0300 Thiago Santos * ext/opencv/Makefile.am: * ext/opencv/basicfilters/Makefile.am: * ext/opencv/gstopencvbasetrans.c: * ext/opencv/gstopencvbasetrans.h: gstopencvbasetrans: Adds this new base class Adds GstOpencvBaseTransform as base class for simple 1:1 opencv filters 2010-04-26 17:18:54 -0300 Thiago Santos * ext/opencv/pyramidsegment/gstpyramidsegment.c: pyramidsegment: Allocate a new buffer for output Use a newly allocated buffer for output, and release the intermediary image used. Also add a TODO for performance improvement 2010-04-26 17:34:12 -0300 Thiago Santos * ext/opencv/faceblur/gstfaceblur.c: * ext/opencv/facedetect/gstfacedetect.c: * ext/opencv/templatematch/gsttemplatematch.c: * ext/opencv/textwrite/gsttextwrite.c: faceblur: facedetect: templatematch: textwrite: Set buffer to writable These elements operates in place, set buffer to writable before operating. 2010-04-26 16:17:23 -0300 Thiago Santos * ext/opencv/edgedetect/gstedgedetect.c: edgedetect: Fix chain buffer handling Allocate a new output buffer instead of using the input buffer pointing to the internal cvCEdge opencv's IplImage data, which might change, consequently changing the buffer. 2010-04-25 16:27:04 -0300 Thiago Santos * ext/opencv/edgedetect/gstedgedetect.c: * ext/opencv/faceblur/gstfaceblur.c: * ext/opencv/facedetect/gstfacedetect.c: * ext/opencv/pyramidsegment/gstpyramidsegment.c: * ext/opencv/templatematch/gsttemplatematch.c: * ext/opencv/textwrite/gsttextwrite.c: configure: enable -Werror to improve code -Werror on git version is useful to keep code clean. 2010-03-02 13:55:05 +0530 Sreerenj Balachandran * ext/opencv/textwrite/gsttextwrite.c: * ext/opencv/textwrite/gsttextwrite.h: Added the property for setting the RGB colours. modified: ext/opencv/textwrite/gsttextwrite.c modified: ext/opencv/textwrite/gsttextwrite.h 2010-03-02 13:18:19 +0530 Sreerenj Balachandran * ext/opencv/textwrite/gsttextwrite.c: * ext/opencv/textwrite/gsttextwrite.h: Added the property for setting the "thickness" of font modified: ext/opencv/textwrite/gsttextwrite.c modified: ext/opencv/textwrite/gsttextwrite.h 2010-03-02 12:45:58 +0530 Sreerenj Balachandran * ext/opencv/textwrite/gsttextwrite.c: * ext/opencv/textwrite/gsttextwrite.h: Added the property for setting x and y co-ordinates modified: ext/opencv/textwrite/gsttextwrite.c modified: ext/opencv/textwrite/gsttextwrite.h 2010-03-02 12:41:25 +0530 Sreerenj Balachandran * ext/opencv/textwrite/gsttextwrite.c: * ext/opencv/textwrite/gsttextwrite.h: added the propery for setting x and y co-ordinates modified: ext/opencv/textwrite/gsttextwrite.c modified: ext/opencv/textwrite/gsttextwrite.h 2010-02-28 14:36:35 +0000 Mike Sheldon * ext/opencv/facedetect/gstfacedetect.c: Apply Stefan's faceblur fixes to facedetect 2010-02-28 14:32:00 +0000 Sreerenj Balachandran * ext/opencv/Makefile.am: * ext/opencv/gstopencv.c: * ext/opencv/textwrite/Makefile.am: * ext/opencv/textwrite/gsttextwrite.c: * ext/opencv/textwrite/gsttextwrite.h: Add simple text overlay plugin 2010-02-19 22:50:18 +0200 Stefan Kost * ext/opencv/faceblur/gstfaceblur.c: faceblur: fix handling of profile property. Dup and free the string. Fixes leaking new values and avoids crashing gst-inspect. 2009-12-18 11:23:59 +0000 Mike Sheldon * ext/opencv/templatematch/gsttemplatematch.h: Fix includes in template matching element 2009-05-26 12:59:04 +0100 Mike Sheldon * ext/opencv/edgedetect/gstedgedetect.c: * ext/opencv/edgedetect/gstedgedetect.h: * ext/opencv/faceblur/gstfaceblur.c: * ext/opencv/faceblur/gstfaceblur.h: * ext/opencv/facedetect/gstfacedetect.c: * ext/opencv/facedetect/gstfacedetect.h: * ext/opencv/gstopencv.c: * ext/opencv/pyramidsegment/gstpyramidsegment.c: * ext/opencv/pyramidsegment/gstpyramidsegment.h: * ext/opencv/templatematch/gsttemplatematch.c: * ext/opencv/templatematch/gsttemplatematch.h: Bring code in to line with general Gstreamer standards 2009-05-25 12:57:11 +0100 Mike Sheldon * ext/opencv/templatematch/gsttemplatematch.c: Fix segfault in template match element if no template has been set Add template matching python example Add autotool, libtool and pkgconfig dependencies to debian control file 2009-05-25 11:26:28 +0100 Mike Sheldon * ext/opencv/Makefile.am: * ext/opencv/faceblur/Makefile.am: * ext/opencv/faceblur/gstfaceblur.c: * ext/opencv/faceblur/gstfaceblur.h: * ext/opencv/gstopencv.c: Add a plugin for automatically blurring faces in videos and images 2009-05-13 12:19:43 +0300 Noam * ext/opencv/templatematch/gsttemplatematch.c: * ext/opencv/templatematch/gsttemplatematch.h: Added control for changing method 2009-05-13 11:55:31 +0300 Noam * ext/opencv/Makefile.am: * ext/opencv/gstopencv.c: * ext/opencv/templatematch/Makefile.am: * ext/opencv/templatematch/gsttemplatematch.c: * ext/opencv/templatematch/gsttemplatematch.h: Added templatematch element 2009-05-08 11:55:20 +0530 kapil * ext/opencv/Makefile.am: * ext/opencv/edgedetect/Makefile.am: * ext/opencv/edgedetect/gstedgedetect.c: * ext/opencv/edgedetect/gstedgedetect.h: * ext/opencv/facedetect/Makefile.am: * ext/opencv/facedetect/gstfacedetect.c: * ext/opencv/facedetect/gstfacedetect.h: * ext/opencv/gstopencv.c: * ext/opencv/pyramidsegment/Makefile.am: * ext/opencv/pyramidsegment/gstpyramidsegment.c: * ext/opencv/pyramidsegment/gstpyramidsegment.h: Registering all elements under opencv plugin 2009-05-06 15:49:42 +0100 Mike Sheldon * ext/opencv/facedetect/gstfacedetect.c: Fix the profile parameter in the facedetect element to accept a string correctly 2009-05-06 15:33:48 +0100 Mike Sheldon * ext/opencv/edgedetect/gstedgedetect.c: * ext/opencv/facedetect/gstfacedetect.c: * ext/opencv/pyramidsegment/gstpyramidsegment.c: Release OpenCV images when finalizing elements 2009-05-06 16:38:15 +0530 kapil * ext/opencv/edgedetect/gstedgedetect.h: * ext/opencv/facedetect/gstfacedetect.h: * ext/opencv/pyramidsegment/gstpyramidsegment.h: Fixed compile errors 2009-04-20 18:40:13 +0300 Mike Sheldon * ext/opencv/facedetect/gstfacedetect.c: Make face detect send a bus message when a face is detected Write a simple python example for face detection 2009-04-18 23:43:37 +0300 Mike Sheldon * ext/opencv/Makefile.am: * ext/opencv/edgedetect/gstedgedetect.c: * ext/opencv/edgedetect/gstedgedetect.h: * ext/opencv/facedetect/Makefile.am: * ext/opencv/facedetect/gstfacedetect.c: * ext/opencv/facedetect/gstfacedetect.h: * ext/opencv/pyramidsegment/gstpyramidsegment.c: * ext/opencv/pyramidsegment/gstpyramidsegment.h: Add face detection element Clean up some generated files Update a few old comments 2008-12-18 23:48:40 +0000 Mike Sheldon * ext/opencv/Makefile: * ext/opencv/Makefile.in: * ext/opencv/edgedetect/Makefile: * ext/opencv/edgedetect/Makefile.in: * ext/opencv/pyramidsegment/Makefile: * ext/opencv/pyramidsegment/Makefile.in: * Remove some autotools generated files 2008-12-18 23:43:36 +0000 Mike Sheldon * ext/opencv/Makefile: * ext/opencv/Makefile.am: * ext/opencv/Makefile.in: * ext/opencv/edgedetect/Makefile: * ext/opencv/edgedetect/Makefile.am: * ext/opencv/edgedetect/Makefile.in: * ext/opencv/edgedetect/gstedgedetect.c: * ext/opencv/edgedetect/gstedgedetect.h: * ext/opencv/pyramidsegment/Makefile: * ext/opencv/pyramidsegment/Makefile.am: * ext/opencv/pyramidsegment/Makefile.in: * ext/opencv/pyramidsegment/gstpyramidsegment.c: * ext/opencv/pyramidsegment/gstpyramidsegment.h: * Make it possible to set threshold2 at runtime * Implement pyramid segmentation element * Make masking optional on edgedetect * Clean up edgedetect, add element details * Implemented edge detect element 2010-09-08 16:57:57 -0300 Thiago Santos * gst/id3tag/id3tag.c: id3mux: Map GST_TAG_ALBUM_ARTIST Map GST_TAG_ALBUM_ARTIST to TPE2 as it is done in -base id3tag mappings. 2010-08-09 00:15:03 +0100 Tim-Philipp Müller * common: * configure.ac: * tests/check/Makefile.am: Use AG_GST_CHECK_GST_PLUGINS_{GOOD,UGLY,BAD,FFMPEG} macros from common to find plugin directories for the various modules our unit tests depend on in an uninstalled environment. This makes sure these plugins are found even when distchecking (which happens from a subdirectory, which means that the currently used trick to find the uninstalled directories of these modules doesn't work in that case). 2010-09-07 19:16:24 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: docs: update plugin docs sgml file a bit 2010-09-07 15:22:28 -0300 Thiago Santos * docs/plugins/.gitignore: docs: add 2 new files to gitignore Adds gst-plugins-bad-plugins.args.new and gst-plugins-bad-plugins.signals.new to .gitignore 2010-09-07 14:45:12 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Make it more colorspace smart This makes it able to recombine rgb images, making it possible to add tags to rgb jpegs as well. Uses a simple strategy to check what are the possible colorspaces and avoid adding jfif to ones that aren't YUV/Gray. 2010-09-07 10:26:29 -0300 Thiago Santos * tests/check/elements/jifmux.c: tests: jifmux: Adds tests for new ppi tags Adds tests to check if libexif can read our EXIF_TAG_X/Y_RESOLUTION tags. 2010-09-07 13:28:20 +0200 Robert Swain * gst/interlace/gstinterlace.c: interlace: Fix element details 2010-09-07 11:42:30 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From c2e10bf to aa0d1d0 2010-09-07 11:34:35 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-interlace.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: docs: update plugin introspection data for recent changes 2010-09-07 11:28:44 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-dvbsrc.xml: * docs/plugins/inspect/plugin-flacparse.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-x264.xml: docs: remove introspection files for plugins that have been merged, moved or renamed The aacparse, amrparse, flacparse plugins have been merged into the audioparsersbad plugin. The aiffparse plugin has been renamed to aiff since it also contains an aiff muxer now. The amrwb plugin has been renamed to amrwbenc. The dvbsrc plugin has been renamed to dvb. The gstrtpmanager plugin has moved to -good. The x264 plugin has moved to -ugly. And the mpegtsparse plugin has been merged into the mpegdemux2 plugin. 2010-09-07 00:16:00 +0100 Tim-Philipp Müller * .gitignore: * tests/examples/Makefile.am: tests: fix distcheck by disting new jack example directory Also add test binary to ignores. 2010-09-06 17:17:54 -0400 Tristan Matthews * configure.ac: * tests/examples/Makefile.am: * tests/examples/jack/Makefile.am: * tests/examples/jack/jack_client.c: examples: add test to demonstrate jack_client_t usage 2010-09-06 16:11:31 -0400 Tristan Matthews * ext/jack/gstjack.c: * ext/jack/gstjack.h: * ext/jack/gstjackaudioclient.c: * ext/jack/gstjackaudioclient.h: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosink.h: * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackaudiosrc.h: jack: added client property 2010-06-17 16:26:07 -0400 Tristan Matthews * ext/jack/gstjackbin.c: jack: removed unused file gstjackbin.c This is a 0.8 leftover. 2010-09-06 14:12:00 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: non-TIME seek event is simply not handled 2010-09-06 09:28:46 -0300 Thiago Santos * configure.ac: configure: Bump -core/-base requirements to 0.10.30.1 We need 0.10.30.1 to have latest tags in core/base for jifmux tests. 2010-08-26 02:54:55 -0400 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: dtmfsrc: Make the dtmfsrc accept events sent with gst_element_send_event The doc says to use gst_element_send_event on the pipeline, but if we are to call it on the element itself, it's a noop. This should make it handle the event properly before delegating it to basesrc. 2010-09-05 16:30:05 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: set new framerate on output caps instead of input caps It's not allowed to change the caps provided by the setcaps function. https://bugzilla.gnome.org/show_bug.cgi?id=628326 2010-09-06 03:23:26 -0700 David Schleef * tools/element-maker: element-maker: Take parameters on command line Now it's actually useful. 2010-09-06 03:04:13 -0700 David Schleef * gst/interlace/gstinterlace.c: interlace: Add documentation 2010-09-06 10:29:21 +0200 Sebastian Dröge * gst/debugutils/fpsdisplaysink.c: fpsdisplay: Use G_GUINT64_FORMAT instead of %llu Fixes compiler warnings on 64 bit architectures. 2010-09-06 11:03:07 +0300 Stefan Kost * gst/selector/gstinputselector.c: inputselector: sync with copy in -base Use _get_caps_reffed to avoid copies. 2010-08-24 11:50:47 +0300 Stefan Kost * gst/selector/gstoutputselector.c: outputselector: move the debug init to the boilerplate macro 2010-08-24 11:50:09 +0300 Stefan Kost * gst/selector/gstinputselector.c: inputselector: use GST_BOILERPLATE macro 2010-08-24 11:26:52 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: don't add a g_mainloop dependency Just update the fps-message from the probe handler. 2010-08-18 11:35:44 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: small cleanup Add one one example and lower the fon't size for the overlay. 2010-08-23 09:51:25 -0500 Rob Clark * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: measure fps in terms of wall clock time Measure fps in terms of system clock, rather than pipeline clock, to get an accurate meaure of fps. 2010-09-05 22:41:24 -0700 David Schleef * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstchecksumsink.c: * gst/debugutils/gstchecksumsink.h: checksumsink: Add new element 2010-09-05 22:30:54 -0700 David Schleef * gst/videomeasure/gstvideomeasure_ssim.c: ssim: Add I420 support 2010-09-05 21:34:30 -0700 David Schleef * gst/interlace/gstinterlace.c: interlace: Add more formats 2010-09-05 18:58:36 -0700 David Schleef * common: Automatic update of common submodule From d3d9acf to c2e10bf 2010-09-05 23:40:08 +1000 Jan Schmidt * docs/plugins/gst-plugins-bad-plugins.args.new: * docs/plugins/gst-plugins-bad-plugins.signals.new: Remove .new docs files from the repository 2010-09-05 15:34:13 -0700 Jonathan Rosser * ext/cog/cogvirtframe.c: cog: Fix cog_virt_frame_new_convert_u8() Conversion was using uninitialized data instead of source frame. Fixes #626425. 2010-09-05 12:06:31 -0700 David Schleef * configure.ac: * ext/cog/gstcogorc-dist.c: cog: Fix generated Orc code Also drop required Orc back down to 0.4.7. 2010-08-30 21:22:14 -0300 Thiago Santos * gst/camerabin/camerabinimage.c: * gst/camerabin/gstcamerabin.c: camerabin: Use jifmux instead of metadatamux Use jifmux element to write exif/xmp tags instead of metadatamux 2010-08-30 21:21:49 -0300 Thiago Santos * gst/camerabin/Makefile.am: * gst/camerabin/gstcamerabin.c: camerabin: Use new tags from -base Replace private tags from metadata plugin with the new generic tags from -base. 2010-09-03 14:12:23 -0300 Thiago Santos * tests/check/elements/camerabin.c: camerabin: Refactor tests The tests were done in 2 steps, first there was a suite that generated the files (while checking that camerabin was operating correctly). Then there was a second suite that was run to check that all files were playable with playbin2. Those second tests were not being run because they were checking if camerabin was initialized, and it never was as those tests didn't use a 'setup' function. This commit refactors the tests by removing this second suite and merging its validation with the first suite's functions. 2010-08-24 14:43:50 -0300 Thiago Santos * tests/check/elements/jifmux.c: tests: jifmux: Adds geo location tags tests Adds some more tests for geo location tags. Also use libexif constants for the exif tags' ids. 2010-08-24 09:02:59 -0300 Thiago Santos * tests/check/elements/jifmux.c: tests: jifmux: Refactor testing code a little Refactor testing code to allow testing for cases where the same gstreamer tag is mapped to multiple exif tags. 2010-08-23 11:57:37 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/jifmux.c: jifmux: More tests for exif tags Refactors some code and add some more tests for exif tags 2010-09-02 11:18:27 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Do not limit the size of the image on 16bits Use guint instead of guint16 to represent the size of the encoded image, this would make some recombined images lose most of their data and show like a big black image with a small line of content on top. Also adds a minor log message. 2010-08-21 17:01:29 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjifmux.h: jifmux: Set output pad caps Set output pad caps to guarantee caps on the buffers being pushed downstream. 2010-08-20 08:34:35 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Detect EOI correctly EOI are not always at the last 4 bytes. We need to search the last 5 bytes to find the 0xFFD9 sequence as jpegenc seems to round the buffer size to the next 4 multiple. 2010-08-19 22:43:47 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Put APP0 first always Fixes the order of the APP0/APP1 markers. APP0 should be first. 2010-09-02 01:32:10 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: parse "pixel-aspect-ratio" from stream 2010-09-02 01:04:15 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: vdpau: remove non working unused code from GstBaseVideoDecoder 2010-09-02 00:17:49 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: vdpau: GstBaseVideoDecoder set default par to 1/1 2010-09-01 23:47:21 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegframe.c: * sys/vdpau/mpeg/gstvdpmpegframe.h: * sys/vdpau/mpeg4/gstmpeg4frame.h: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.h: * sys/vdpau/mpeg4/mpeg4util.c: vdpau: remove gst_base_video_decoder_get_current_frame we now pass the current frame to GstBaseVideoDecoder::parse_data also fixup some errors in vdpaumpeg4dec so that it now gives correct output 2010-09-01 22:03:05 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/basevideodecoder/gstvideoframe.c: * sys/vdpau/basevideodecoder/gstvideoframe.h: vdpau: rework GstBaseVideoDecoder timestamping timestamps are now chosen in the following order: upstream -> parsed by decoder -> calculated from timestamp offset we also check the timestamps supplied from upstream/decoder to see if they atleast is increasing. 2010-09-01 17:45:19 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpdecoder.c: vdpau: fix invalid unref 2010-09-05 12:19:32 +0200 Sebastian Dröge * common: Automatic update of common submodule From ec60217 to d3d9acf 2010-09-05 11:45:35 +0200 Edward Hervey * configure.ac: configure.ac: Bump orc requirement to 0.4.8.1 0.4.7 creates code with unavailable symbols 0.4.8 creates buggy code Let's use git head of orc (which still won't work because git head of orc still claims to be 0.4.8) This allows all the rest of -bad to build properly. 2010-07-14 21:00:12 +0200 Edward Hervey * ext/timidity/gsttimidity.c: timidity: Fix unitialized variables (gcc 4.4.4) 2010-09-04 11:35:16 -0700 David Schleef * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: cog: update disted Orc files 2010-08-26 22:03:20 -0700 David Schleef * ext/sdl/sdlvideosink.c: sdlvideosink: Re-enable YVYU and UYVY YVYU on my machine appears to be doing software conversion (and doing it incorrectly). 2010-08-26 20:15:43 -0700 David Schleef * tools/base.c: * tools/element-maker: element-maker: construct element names 2010-08-22 21:43:20 -0700 David Schleef * configure.ac: * gst/interlace/Makefile.am: * gst/interlace/gstinterlace.c: interlace: new element 2010-08-20 17:24:23 -0700 David Schleef * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogorc.orc: cog: Add fast paths for colorspace conversion 2010-08-20 17:23:17 -0700 David Schleef * configure.ac: configure: require Orc 0.4.7 2010-08-13 21:58:01 -0700 David Schleef * tools/element-maker: * tools/gstelement.c: element-maker: Fix up GstElement 2010-08-13 21:54:54 -0700 David Schleef * ext/cog/cogvirtframe.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogorc.orc: cog: Improvements in colorspace and scaler Add fast paths for YUV->YUV conversions and Orc code for all. Use Orc for horizontal resampling. 2010-06-11 14:39:30 -0700 David Schleef * ext/cog/Makefile.am: * ext/cog/gstcog.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogfilter.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: cog: minor cleanups Improve element descriptions, remove unused files, code cleanup. 2010-09-03 10:03:04 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.args.new: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.signals.new: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Back to development Temporarily disable -DGST_DISABLE_DEPRECATED for git builds until the code is updated for the GST_FLOW_IS_* macro deprecations. 2010-09-01 22:05:43 +0200 Andoni Morales Alastruey * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxstream.c: * gst/mpegtsmux/tsmux/tsmuxstream.h: mpegtsmux: Initialize PES packet before getting the header size. The PES header length is calculated before setting the dynamic flags, returning a wrong value. Small frames that should be sent in a single TS packet are spawned to a new packet because of that error. For audio streams where a single frame can cope in one TS packet it introduces a huge overhead. For a 100B packet, we prepare a TS packet with a payload of(100+9)B. Then, we write the TS header using this value in tsmux_write_ts_header, and call tsmux_stream_get_data(). The dynamic flags where not set yet and now tsmux_stream_pes_header_length() returns 14B instead of 9B. The payload of the TS packet is 114B, 5B more than what was calculated. 109B are sent in a first packet and the remaining 5B are sent in another one. Fixes bug #628548. 2010-09-02 10:23:30 +0200 Sebastian Dröge * ext/cog/gstcogcolorspace.c: cogcolorspace: Classify as Filter/Converter/Video instead of effect Fixes bug #628570. 2010-09-01 18:30:17 +0200 Thibault Saunier * gst/videosignal/gstvideoanalyse.c: videoanalyse: Use correct element classification This is no effect but an analyzer. Fixes bug #628527. === release 0.10.20 === 2010-09-03 00:23:02 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.20 2010-09-03 00:21:06 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update for release 2010-09-03 00:19:33 +0100 Tim-Philipp Müller * po/LINGUAS: * po/el.po: * po/gl.po: * po/ro.po: * po/sl.po: po: update translations 2010-09-03 00:01:21 +0100 Tim-Philipp Müller * gst-plugins-bad.doap: doap: reference git repository instead of CVS repository 2010-09-02 22:39:33 +0100 Tim-Philipp Müller * ext/rtmp/gstrtmpsrc.c: rtmpsrc: fix wrong use of GST_ELEMENT_ERROR 2010-08-30 16:01:36 +0200 Sebastian Dröge * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * ext/cog/gstcogorc-dist.c: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.19.5 pre-release 2010-08-30 15:20:08 +0200 Sebastian Dröge * tests/examples/camerabin/Makefile.am: camerabin: Don't install gst-camera.ui The examples are not meant to be installed and the executables of them are not installed anyway. Fixes bug #627918. 2010-08-25 22:56:03 -0400 Youness Alaoui * gst/rtpmux/gstrtpmux.c: rtpmux: Unlock the right mutex The mutex locked is for the 'mux' object, but we unlock the pad, which means that if the rtpmux gets a flush, then the object lock will stay locked forever, causing it to freeze the next time it tries to take it. Fixes bug #627991 2010-08-27 15:49:39 +1000 Jan Schmidt * configure.ac: configure: Bump neon requirement to 0.27.0 Needed in order to have ne_set_connect_timeout Fixes bug #625076 2010-08-21 21:42:04 +0200 Sebastian Dröge * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.19.4 pre-release 2010-08-16 12:36:24 +0200 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: autodetect out-of-order input timestamps and determine DTS accordingly Favour using input buffer timestamps for DTS, but fallback to using buffer duration (accumulation) if input ts detected out-of-order. Fixes #624212. 2010-08-20 11:09:19 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Avoid recombining RGB jpegs JFIF only allows YUV as colorspace, when we receive an RGB jpeg, we should just push it forward without adding the JFIF marker. Fixes #627413 2010-08-13 14:34:21 +0200 Philip Jägenstedt * ext/vp8/gstvp8dec.c: vp8dec: Set GstBaseVideoDecoder::packetized to TRUE as soon as possible This fixes an infinite loop if an EOS event is received before GstBaseVideoDecoder::start() is called, e.g. immediately when the pads are activated. Fixes bug #626815. 2010-08-13 17:24:25 +0300 Stefan Kost * common: Automatic update of common submodule From 3e8db1d to ec60217 2010-08-11 22:03:07 +0200 Olivier Crête * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstdilate.c: gaudieffects: Mark inline functions as static inline Otherwise it fails to correctly link them in some cases. https://bugzilla.gnome.org/show_bug.cgi?id=626670 2010-08-11 17:19:06 +0100 Tim-Philipp Müller * .gitignore: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsettings.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: 0.10.19.3 pre-release 2010-08-11 17:19:17 +0100 Tim-Philipp Müller * ext/gsettings/Makefile.am: gsettings: fix make distcheck Clean up file we generated at build time. 2010-08-11 12:09:37 +0100 Tim-Philipp Müller * tests/check/Makefile.am: checks: blacklist gsettings* elements for generic/states test When the test is run, the schema file won't be installed yet, and there doesn't seem to be an environment variable to set to force GSettings to look in a different directory. https://bugzilla.gnome.org/show_bug.cgi?id=626603 2010-08-11 00:23:02 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-coloreffects.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-zbar.xml: * ext/cog/gstcogorc-dist.c: * win32/common/config.h: 0.10.19.2 pre-release This commit is out of sequence, it really belongs between commits 15098331412ceb982c24b89bb4346354fb56433c (Automatic update of common submodule) and dd26f378b01d679834f12935efc7093fb5807956 (configure: Fix the CELT checks to ...) 2010-08-09 00:42:45 +0100 Tim-Philipp Müller * configure.ac: configure: bump core/base requirement to released versions This commit is out of sequence, it really belongs between commits 15098331412ceb982c24b89bb4346354fb56433c (Automatic update of common submodule) and dd26f378b01d679834f12935efc7093fb5807956 (configure: Fix the CELT checks to ...) 2010-08-09 00:42:25 +0100 Tim-Philipp Müller * configure.ac: configure: fix --disable-external This commit is out of sequence, it really belongs between commits 15098331412ceb982c24b89bb4346354fb56433c (Automatic update of common submodule) and dd26f378b01d679834f12935efc7093fb5807956 (configure: Fix the CELT checks to ...) 2010-08-08 17:09:22 +0100 Tim-Philipp Müller * tests/check/elements/jifmux.c: checks: skip jifmux tests if required elements aren't available This commit is out of sequence, it really belongs between commits 15098331412ceb982c24b89bb4346354fb56433c (Automatic update of common submodule) and dd26f378b01d679834f12935efc7093fb5807956 (configure: Fix the CELT checks to ...) 2010-08-11 11:52:44 +0200 Sebastian Dröge * gst/legacyresample/Makefile.am: legacyresample: Link against $(LIBM) for rint() and friends 2010-08-11 11:51:16 +0200 Sebastian Dröge * m4/gsettings.m4: gsettings: Add gsettings.m4 for the gsettings macros 2010-08-11 11:50:05 +0200 Sebastian Dröge * gst/invtelecine/Makefile.am: invtelecine: Link against $(LIBM) for sqrt() and friends 2010-08-11 11:39:35 +0200 Sebastian Dröge * configure.ac: configure: Fix the CELT check to actually succeed if CELT >= 0.5 is available Also remove the AC_MSG_RESULTS([no]), pkg-config does this for us already. 2010-08-10 10:58:46 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From bd2054b to 3e8db1d 2010-08-09 17:20:11 +0200 Filippo Argiolas * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gstsquare.h: geometrictransform: add a "zoom" parameter to square filter https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-09 16:55:43 +0200 Filippo Argiolas * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gstsquare.h: geometrictransform: make square "width" and "height" customizable https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-09 10:03:20 +0200 Filippo Argiolas * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstmirror.h: geometrictransform: add a "mode" property to mirror filter Add a "mode" enum property to mirror that defines how to split the frame and with side reflect. https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-09 08:52:51 +0200 Filippo Argiolas * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstbulge.h: geometrictransform: add a "zoom" parameter to bulge filter Rework bulge mapping function to give more predictable results. Now the bulge is done dividing by a scale factor that smoothsteps from "zoom" at the center to 1.0 at "radius". https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-05 16:16:37 +0200 Filippo Argiolas * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gststretch.h: geometrictransform: add an "intensity" parameter to stretch filter https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-05 12:43:15 +0200 Filippo Argiolas * gst/geometrictransform/gsttunnel.c: geometrictransform: make tunnel "radius" customizable https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-05 12:29:16 +0200 Filippo Argiolas * gst/geometrictransform/gstbulge.c: geometrictransform: make bulge "radius" customizable https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-05 12:25:04 +0200 Filippo Argiolas * gst/geometrictransform/gststretch.c: geometrictransform: make stretch "radius" customizable https://bugzilla.gnome.org/show_bug.cgi?id=625908 2010-08-08 23:56:43 +0200 Carl-Anton Ingmarsson * sys/vdpau/mpeg4/mpeg4util.c: vdpaumpeg4dec: fix typo in default_non_intra_quant_matrix 2010-07-14 11:03:35 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpau.c: * sys/vdpau/mpeg4/gstmpeg4frame.c: * sys/vdpau/mpeg4/gstmpeg4frame.h: * sys/vdpau/mpeg4/gstvdpmpeg4dec.c: * sys/vdpau/mpeg4/gstvdpmpeg4dec.h: * sys/vdpau/mpeg4/mpeg4util.c: * sys/vdpau/mpeg4/mpeg4util.h: vdpau: add mpeg4 part2 decoder 2010-08-08 12:46:01 +0100 Tim-Philipp Müller * tests/check/elements/id3mux.c: checks: skip id3mux unit tests that need id3demux if id3demux is not available 2010-08-08 12:26:55 +0100 Tim-Philipp Müller * configure.ac: configure: build and dist new coloreffects plugin Fixes make distcheck. 2010-08-08 12:01:31 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Only check the plugin filenames, not the directory names 2010-08-08 11:56:42 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Don't try to register/load the same frei0r plugin at different locations twice This could happen because for example /usr/lib is linked to /usr/lib64 and both are loaded. The frei0r specification says that the plugin init function must only be called once and for some plugin weird things (including crashes) are happening. Fixes bug #623710. 2010-08-06 01:56:29 +0100 Tim-Philipp Müller * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: align actual default values for properties with defaults in param spec https://bugzilla.gnome.org/show_bug.cgi?id=621404 2010-08-06 12:14:04 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpdevice.c: * sys/vdpau/gstvdp/gstvdpdevice.h: vdpau: fix destruction of GstVdpDevice when it failed to open only close display in finalize and check if vdp_decoder_destroy is available before we use it 2010-08-05 23:55:00 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: vdpausink: use separate mutex for device locking we can't use GST_OBJECT_LOCK since that cause problems when we try to post errors, due to gst_element_post_message also taking the GST_OBJECT_LOCK 2010-08-06 11:04:57 +0100 David Hoyt * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: neonhttpsrc: add connect-timeout and read-timeout properties https://bugzilla.gnome.org/show_bug.cgi?id=625076 2010-08-06 10:44:24 +0100 Tim-Philipp Müller * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: * tests/check/elements/neonhttpsrc.c: neonhttpsrc: add "cookies" property Based on patch by: Sameer Naik https://bugzilla.gnome.org/show_bug.cgi?id=625174 2010-07-25 17:04:12 +0200 Andoni Morales Alastruey * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: close our own window when changing the window id If we created the window, it needs to be closed after setting a new window id. https://bugzilla.gnome.org/show_bug.cgi?id=574290 2010-07-25 17:01:19 +0200 Raimo Jarvi * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: allow changing window ID whilst in PLAYING state https://bugzilla.gnome.org/show_bug.cgi?id=574290 2010-08-06 03:19:16 +0200 Olivier Crête * gst/frei0r/gstfrei0r.c: frei0r: Load plugins in /usr/{local/,}lib{32,64}/frei0r-1 too Loads the plugins in more paths where they could be installed by multilib distributions. Fixes #623710 2010-08-05 13:57:11 +0300 Stefan Kost * common: Automatic update of common submodule From a519571 to bd2054b 2010-08-03 10:08:34 +0200 Filippo Argiolas * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstcirclegeometrictransform.c: * gst/geometrictransform/gstcirclegeometrictransform.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: geometrictransform: make ciclegt "radius" property relative Make the "radius" property of CircleGeometricTransform relative. This is more coherent with the way [x,y]-center properties are handled and allow to set a radius without knowing the video size. Radius is defined with respect to the circle circumscribed about the video rectangle so that a point in the center has radius 0.0 and one in a vertex has radius 1.0. Note that this is not a regression from the previous absolute way of defining the radius as a user who knows the video size can easily calculate the relative radius and set that. https://bugzilla.gnome.org/show_bug.cgi?id=625959 2010-08-04 23:50:53 +0100 Tim-Philipp Müller * gst/id3tag/id3tag.c: id3mux: minor code clean-up Add helper function to write text frames with just one string. 2010-08-04 23:44:47 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: .gitignore: ignore more unit test binaries 2010-06-14 20:07:33 +1000 Jonathan Matthew * gst/id3tag/id3tag.c: * tests/check/Makefile.am: * tests/check/elements/id3mux.c: id3mux: add support for beats-per-minute tag Write beats per minute into the TBPM frame, and add unit test for id3mux, based on id3v2mux unit test. https://bugzilla.gnome.org/show_bug.cgi?id=621523 2010-08-04 19:26:51 +0200 Sebastian Dröge * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-aiffparse.xml: configure: Check if the compiler supports ISO C89 or C99 and which parameters are required This first checks what is required for ISO C99 support and sets the relevant compiler parameters and if no C99 compiler is found, it checks for a C89 compiler. This enables us to check for and use C89/C99 functions that gcc hides from us without the correct compiler parameters. 2010-08-04 10:15:00 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-coloreffects.xml: coloreffects: Add to the documentation 2010-08-04 10:11:11 +0200 Sebastian Dröge * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstplugin.c: coloreffects: Minor cleanup 2010-08-04 10:09:53 +0200 Sebastian Dröge * gst/coloreffects/gstcoloreffects.c: coloreffects: Improve property description a bit 2010-08-04 10:08:24 +0200 Sebastian Dröge * gst/coloreffects/gstcoloreffects.c: coloreffects: Don't use the fixed_caps func on the pads coloreffects can renegotiate during playback without any problems. 2010-08-03 14:39:22 +0200 Filippo Argiolas * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstcoloreffects.h: coloreffects: add ayuv support Currently implemented switching from yuv to rgb, looking up rgb from the table in the usual way, getting back to yuv. With luma lookup presets (sepia, heat, xray) a color space conversion is saved directly looking up rgb for a given Y and converting to yuv. Probably this latter step can even be made faster precalculating a luma to yuv table in an outer loop. https://bugzilla.gnome.org/show_bug.cgi?id=625817 2010-08-01 23:03:24 +0200 Filippo Argiolas * configure.ac: * gst/coloreffects/Makefile.am: * gst/coloreffects/gstcoloreffects.c: * gst/coloreffects/gstcoloreffects.h: * gst/coloreffects/gstplugin.c: coloreffects: new plugin for lookup table color mapping Implements a color lookup table filter with 4 presets: - heat: fake heat camera effect - sepia: sepia toning - xray: invert + shade to blue - xpro: cross process https://bugzilla.gnome.org/show_bug.cgi?id=625817 2010-08-03 10:29:36 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: docs: Add lots of gaudieffects/geometrictransform symbols to the docs 2010-08-02 11:30:50 +0200 Filippo Argiolas * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstfisheye.c: * gst/geometrictransform/gstfisheye.h: * gst/geometrictransform/plugin.c: geometrictransform: new filter "fisheye" Ports gleffects "fisheye" filter to geometrictransform. Fake fisheye lens filter. Somewhat empiric implementation because I didn't find any good algorithm that does it with nice results. https://bugzilla.gnome.org/show_bug.cgi?id=625722 2010-08-02 11:12:42 +0200 Filippo Argiolas * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstmirror.c: * gst/geometrictransform/gstmirror.h: * gst/geometrictransform/plugin.c: geometrictransform: new filter "mirror" Ports gleffects "mirror" filter to geometrictransform. Simple yet effective mirror effect, splits the image into halves and reflect the first into the second. https://bugzilla.gnome.org/show_bug.cgi?id=625722 2010-08-02 11:01:31 +0200 Filippo Argiolas * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstsquare.c: * gst/geometrictransform/gstsquare.h: * gst/geometrictransform/plugin.c: geometrictransform: new filter "square" Ports gleffects "square" filter to geometrictransform. Maps a region around the center into a zoomed square and smoothly get back to normal zoom. With faces it makes a funny "cube-face" effect. https://bugzilla.gnome.org/show_bug.cgi?id=625722 2010-08-02 10:46:44 +0200 Filippo Argiolas * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gsttunnel.c: * gst/geometrictransform/gsttunnel.h: * gst/geometrictransform/plugin.c: geometrictransform: new filter "tunnel" Ports gleffects "tunnel" filter to geometrictransform. Do nothing in a circle around the center and zoom outside. https://bugzilla.gnome.org/show_bug.cgi?id=625722 2010-08-02 09:39:51 +0200 Filippo Argiolas * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstbulge.c: * gst/geometrictransform/gstbulge.h: * gst/geometrictransform/plugin.c: geometrictransform: new filter "bulge" Ports gleffects "bulge" filter to geometrictransform. Adds a protuberance around the center point. https://bugzilla.gnome.org/show_bug.cgi?id=625722 2010-08-02 09:17:03 +0200 Filippo Argiolas * gst/geometrictransform/Makefile.am: * gst/geometrictransform/geometricmath.c: * gst/geometrictransform/geometricmath.h: * gst/geometrictransform/gststretch.c: * gst/geometrictransform/gststretch.h: * gst/geometrictransform/plugin.c: geometrictransform: new filter "stretch" Ports gleffects "stretch" filter to geometrictransform. Shrinks the image around the center and gradually return to normal zoom creating funny caricatures. https://bugzilla.gnome.org/show_bug.cgi?id=625722 2010-08-02 18:33:46 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpau.c: vdpau: set back plugin ranks to GST_RANK_NONE the previous change was not meant to slip in 2010-08-02 18:23:11 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: slightly fix GstBaseVideoDecoder timestamping clear timestamps on flush and properly calculate the frame's end offset 2010-08-01 12:32:31 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpvideobuffer.c: vdpau: init debug category in gst_vdp_video_buffer_get_type 2010-08-02 20:41:12 +1000 Jan Schmidt * docs/plugins/inspect/plugin-gaudieffects.xml: * gst/gaudieffects/Makefile.am: * gst/gaudieffects/blur-example.py: * gst/gaudieffects/gstgaussblur.c: * gst/gaudieffects/gstgaussblur.h: * gst/gaudieffects/gstplugin.c: * gst/gaudieffects/gstplugin.h: gaudieffects: Add Gaussian Blur effect, and brief example. 2010-07-30 23:59:10 +0200 Alessandro Decina * ext/rtmp/gstrtmpsrc.c: rtmpsrc: fix warning on osx. 2010-07-30 22:27:49 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdp/gstvdpdevice.c: * sys/vdpau/gstvdp/gstvdpdevice.h: * sys/vdpau/gstvdpau.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpvideopostprocess.c: vdpau: add error reporting to device creation 2010-07-30 16:54:40 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: vdpau: fix small typo in GstBaseVideoDecoder 2010-07-30 14:47:43 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: vdpau: use gst_vdp_yuv_to_video_caps in GstVdpVideoSrcPad to transform set caps this way we'll keep other all other fields in the caps which we didn't take in account when we manually created the "video/x-vdpau-video" caps 2010-07-30 14:44:09 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdputils.c: * sys/vdpau/gstvdp/gstvdputils.h: * sys/vdpau/gstvdp/gstvdpvideobuffer.c: * sys/vdpau/gstvdp/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideopostprocess.c: vdpau: rename gst_vdp_video_buffer_parse_yuv_caps and move it to gstvdputils.h 2010-07-30 14:07:22 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: vdpau: GstVdpOutputSrcPad use gst_pad_alloc when outputting video/x-raw-rgb we implement "acceptcaps" to prevent us from getting a buffer with different width and height from what we requested. 2010-07-30 11:29:16 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdputils.c: vdpau: properly remove "chroma-type" field from transformed caps 2010-07-30 11:27:27 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: use GstVdp[Video|Output]BufferPool to cache our buffers This way we'll reuse the GstVdp[Video|Output]Buffers if they're of the same size and chroma-type/rgba-format. Also remove gst_vdp_output_src_pad_negotiate and set a "setcaps" function on GstVdpOutputSrcPad instead, leaving negotiation to GstVdpVideoPostProcess. 2010-07-30 11:20:35 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: vdpausink: use GstVdpOutputBufferPool to alloc our buffers This way we'll reuse our GstVdpOutputBuffers if they're of the same size and rgba-format 2010-07-30 11:16:09 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: vdpau: use GstVdpVideoBufferPool in GstVdpVideoSrcPad We also don't pad_alloc our GstVdpVideoBuffers anymore since we don't support downstream negotation anyway. 2010-07-30 11:06:17 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/Makefile.am: * sys/vdpau/gstvdp/gstvdpoutputbuffer.c: * sys/vdpau/gstvdp/gstvdpoutputbuffer.h: * sys/vdpau/gstvdp/gstvdpoutputbufferpool.c: * sys/vdpau/gstvdp/gstvdpoutputbufferpool.h: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdpsink.c: vdpau: add GstVdpOutputBufferPool GstVdpVideoOutputPool is a subclass of GstVdpBufferPool that caches GstVdpOutputBuffers 2010-07-30 11:01:15 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/Makefile.am: * sys/vdpau/gstvdp/gstvdpvideobuffer.c: * sys/vdpau/gstvdp/gstvdpvideobuffer.h: * sys/vdpau/gstvdp/gstvdpvideobufferpool.c: * sys/vdpau/gstvdp/gstvdpvideobufferpool.h: * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideopostprocess.c: vdpau: add GstVdpVideoBufferPool GstVdpVideoBufferPool is a subclass of GstVdpBuffer that caches GstVdpVideoBuffers 2010-07-30 10:55:56 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/Makefile.am: * sys/vdpau/gstvdp/gstvdpbuffer.c: * sys/vdpau/gstvdp/gstvdpbuffer.h: * sys/vdpau/gstvdp/gstvdpbufferpool.c: * sys/vdpau/gstvdp/gstvdpbufferpool.h: vdpau: add GstVdpBufferPool base class GstVdpBufferPool will be used to cache GstVdp[Video|Output]Buffers since creating these can be a costly operation on some hardware. 2010-07-28 21:39:12 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.h: * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideopostprocess.c: vdpau: remove GstVdpOutputSrcPad "template-caps" property instead we do as GstVdpVideoSrcPad and use the "templ" property of GstPad, which enable us to change the signature of gst_vdp_output_src_pad_new to match gst_pad_new_from_template 2010-07-28 21:15:46 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdpvideopostprocess.c: vdpau: remove GstVdpOutputSrcPad code to retrieve the device from downstream we now no longer try to get the GstVdpDevice from downstream since it in practice didn't give us anything and complicates the code alot. Nevertheless if device distribution should be done there's probably a lot better ways to do it. Instead we now simply aquire the device in vdpauvideopostprocess when we're going into PAUSED. 2010-07-27 23:24:43 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdp/gstvdpdecoder.h: * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdp/gstvdpvideosrcpad.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: cleanup GstVdpDecoder opening of it's GstVdpDevice we now no longer try to get the GstVdpDevice from downstream since it in practice didn't give us anything and complicates the code alot. Nevertheless if device distribution should be done there's probably a lot better ways to do it. 2010-07-27 23:17:09 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: vdpau: fix GstBaseVideoDecoder returning wrong GstStateChangeReturn when gst_base_video_decoder_[start|stop] fails we now return GST_STATE_CHANGE_FAILURE instead of returning what the parent class returns 2010-07-27 15:33:00 +0200 Carl-Anton Ingmarsson * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpaumpegdec: remove unneeded setting of buffer flags GstBaseVideoDecoder sets GST_VIDEO_BUFFER_TFF for us and GST_BUFFER_FLAG_DELTA_UNIT doesn't make sense for decoded frames. 2010-07-29 16:08:03 +0200 Andoni Morales * sys/dshowsrcwrapper/gstdshow.cpp: dshowvideosrc: don't make a range if min==max Fixes bug #625138 2010-07-29 10:38:58 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: actually work when we have small buffers coming in available_fast is not what we want and it will never get to discover packet size if 188 byte buffers are being picked up. 2010-07-28 18:36:53 +0200 Tim-Philipp Müller * .gitignore: .gitignore: ignore gsettings xml schema file 2010-07-28 18:34:15 +0200 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-gaudieffects.xml: * docs/plugins/inspect/plugin-geometrictransform.xml: * docs/plugins/inspect/plugin-ivfparse.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-shm.xml: * docs/plugins/inspect/plugin-videomaxrate.xml: docs: add more plugins and elements to the docs 2010-07-28 17:46:53 +0200 Tim-Philipp Müller * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: ivfparse: fix up macros and function names to match guidelines 2010-07-28 17:34:02 +0200 Tim-Philipp Müller * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstdodge.h: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: gaudieffects: fix structure names to comply with the plugin moving guidelines 2010-07-28 16:15:53 +0200 Marc-André Lureau * gst/qtmux/gstqtmux.c: qtmux: use caps bitrate at last chance If we didn't get the stream's bitrate from one of the atoms, try getting it from the caps as a last resort. https://bugzilla.gnome.org/show_bug.cgi?id=625496 2010-07-28 16:12:11 +0200 Marc-André Lureau * gst/qtmux/atoms.c: qtmux: btrt - max bitrate before average According to iso base media file format, the max bitrate is before the avg https://bugzilla.gnome.org/show_bug.cgi?id=625496 2010-07-27 18:23:30 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Reset the segment on FLUSH_STOP and when going back to READY 2010-07-27 18:07:00 +0200 Tim-Philipp Müller * sys/vdpau/gstvdp/Makefile.am: vdpau: dist new header file Fix make distcheck. 2010-07-23 19:41:29 +0200 Julien Moutte * sys/dshowvideosink/dshowvideofakesrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: dshowvideosink: Improvements contributed from the Moovida projet. * Inherit from GstVideoSink * Implement GstNavigation interface * Proper COM initialization for threaded environments * Fix Window resource leak * Add EVR support for better video scaling on Windows Vista and above * Only apply PAR scaling when the keep_aspect_ratio property is set to stay consistent with the other Linux sinks * Prevent an infinite loop with the wndproc chain * Fix debugging messages to use the object instance 2010-07-23 00:28:49 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdp/gstvdpdecoder.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: add gst_vdp_decoder_render and gst_vdp_decoder_init_decoder 2010-07-22 09:21:33 +0200 Sebastian Dröge * tests/icles/metadata_editor.c: examples: Use cairo instead of gdk_draw_* API Fixes bug #625003. 2010-07-12 22:37:47 -0300 Luis de Bethencourt * configure.ac: * gst/gaudieffects/Makefile.am: * gst/gaudieffects/gstburn.c: * gst/gaudieffects/gstburn.h: * gst/gaudieffects/gstchromium.c: * gst/gaudieffects/gstchromium.h: * gst/gaudieffects/gstdilate.c: * gst/gaudieffects/gstdilate.h: * gst/gaudieffects/gstdodge.c: * gst/gaudieffects/gstdodge.h: * gst/gaudieffects/gstexclusion.c: * gst/gaudieffects/gstexclusion.h: * gst/gaudieffects/gstplugin.c: * gst/gaudieffects/gstplugin.h: * gst/gaudieffects/gstsolarize.c: * gst/gaudieffects/gstsolarize.h: gaudieffects: Adds new plugin 'gaudieffects' Adds the new 'gaudieffects' plugin, originally found here: http://github.com/luisbg/gaudi_effects Contains the following video effect elements: burn, chromium, dilate, dodge, exclusion and solarize. Thanks to Jan Schmidt for the reviewing and refactoring 2010-07-19 21:53:30 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: try to calculate framerate if we don't get one from upstream 2010-07-19 11:34:39 +0200 Thijs Vermeir * sys/vdpau/gstvdp/gstvdpdevice.c: vdpau: fix segfault when vdpau device could not be created 2010-07-18 21:15:34 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: fix problem when encountering GST_NAL_AU_DELIMITER 2010-07-08 09:56:43 +0200 Sebastian Dröge * sys/wasapi/gstwasapisrc.c: wasapisrc: Use new gst_audio_clock_new_full() 2010-07-08 09:55:51 +0200 Sebastian Dröge * ext/alsaspdif/alsaspdifsink.c: alsaspdifsink: Use new gst_audio_clock_new_full() 2010-07-15 13:23:52 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: calculate width and height from bitstream info 2010-07-15 11:10:03 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264parser.c: vdpauh264dec: fix usage of g_bit_storage 2010-07-14 11:19:05 +0200 Carl-Anton Ingmarsson * sys/vdpau/mpeg/mpegutil.c: vdpaumpegdec: rename zigzag matrix 2010-07-14 11:17:49 +0200 Carl-Anton Ingmarsson * configure.ac: * sys/vdpau/h264/gsth264parser.c: vdpauh264dec: use g_bit_storage instead of log2 log2 caused compile issues on certain platforms 2010-07-13 00:40:36 -0300 Thiago Santos * ext/gsettings/Makefile.am: gsettings: Fix maintainer-clean when it is not available Do not use @GSETTINGS_RULES@ if gsettings is not available to avoid maintainer-clean failing. 2010-07-11 10:47:37 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0r.h: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rfilter.h: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rmixer.h: * gst/frei0r/gstfrei0rsrc.c: * gst/frei0r/gstfrei0rsrc.h: frei0r: Use correct order of directories to search for plugins And don't fail if a plugin was already registered. Frei0r allows plugins in directories with higher importance to override plugins from directories with lower importance. 2010-07-10 16:52:10 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8enc: Add support for enabling automatic insertion of alt-ref frames by the encoder 2010-07-10 16:51:53 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Fix handling of invisible/alt ref frames 2010-07-10 15:50:50 +0200 Sebastian Dröge * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: Fix memory leak The timestamps are only used if the output adapter is used, not if complete frames are provided by the decoder and finish_frame() is called and even in the case where the output adapter is used they might not be used and are leaked. 2010-07-10 15:46:51 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/vp8dec.c: vp8dec: Add simple unit test for vp8dec 2010-07-10 15:46:43 +0200 Sebastian Dröge * tests/check/elements/vp8enc.c: vp8enc: Improve unit test a bit 2010-07-10 15:32:29 +0200 Sebastian Dröge * tests/check/elements/vp8enc.c: vp8enc: Also check the output caps in the unit test 2010-07-10 15:29:46 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/vp8enc.c: vp8enc: Add simple unit test 2010-07-09 17:44:56 +0300 David Hoyt * gst/aiff/aiffmux.c: aifmmux: use alternative way to check for inf MSVC emits a divide-by-zero error when compiling aiffmux.c on line 205. Fixes #623881. 2010-07-08 21:53:35 +0100 David Hoyt * sys/winks/gstksvideosrc.c: winks: fix compilation by using the right function Fixes #623883. 2010-07-08 17:58:16 +0200 Víctor Manuel Jáquez Leal * gst/jpegformat/gstjpegparse.c: jpegparse: fix exif frame size Skip the correct number of bytes when reading exif data Fixes #623854 2010-07-08 15:07:25 +0200 Sebastian Dröge * ext/timidity/gstwildmidi.c: wildmidi: Correctly initialize properties with the default values again 2010-07-08 07:57:55 +0200 Sebastian Dröge * ext/timidity/gstwildmidi.c: wildmidi: Use PROP_ instead of ARG_ for property enums and use G_PARAM_STATIC_STRINGS Also don't use G_PARAM_CONSTRUCT, it does not make sense for elements. 2010-07-07 23:06:43 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Fix viewfiner-sink property for bins Correctly iterate viewfinder-sink children when it is a bin. Fixes #623802 2010-07-06 14:48:08 +0530 Arun Raghavan * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: qtmux: Write 'btrt' atom for H.264 media if possible This writes out the optional 'btrt' atom (MPEG4BitrateBox) for H.264 media if either or both of average and maximum bitrate are available for the stream. https://bugzilla.gnome.org/show_bug.cgi?id=623678 2010-07-05 14:09:50 +0530 Arun Raghavan * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: Write avg/max bitrate to ESDS if available This collects the 'bitrate' and 'maximum-bitrate' tags on the corresponding pad and uses these to populate these fields in the ESDS where applicable. https://bugzilla.gnome.org/show_bug.cgi?id=623678 2010-07-07 10:33:18 -0700 Michael Smith * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdecwrapper: reset flow return state tracker after flush to avoid spurious errors after flushing in some cases. 2010-07-07 08:37:12 +0200 Sebastian Dröge * configure.ac: * ext/timidity/gstwildmidi.c: wildmidi: Add support for wildmidi 0.2.3 Fixes bug #623722. 2010-07-01 10:56:19 +0200 Philippe Normand * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: dshowvideosink: Update renderer aspect ratio after force-aspect-ratio property update. A new virtual method has been added to the RendererSupport class. It is called during the initial renderer configuration and each time the force-aspect-ratio property of the sink is updated. Fixes bug #623272. 2010-07-07 00:15:22 +0200 Andoni Morales Alastruey * sys/dshowdecwrapper/gstdshowaudiodec.cpp: dshowaudiodec: Fix compilation error Closes #623713 2010-07-06 13:15:27 +0100 Tim-Philipp Müller * gst/asfmux/gstasfmux.c: asfmux: only use g_warning() when setting the old is-live property, not when reading it Don't want warnings in e.g. gst-inspect. 2010-07-06 10:53:04 +0200 Edward Hervey * po/POTFILES.in: po: Use proper gsettings schema file 2010-07-05 11:52:56 +0200 Mark Nauwelaerts * tests/check/elements/jpegparse.c: tests: fix caps leak in jpegparse unit test 2010-07-05 11:48:08 +0200 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: fix skipping extra 0xff markers In particular, this makes the jpegparse unit test pass again. Also add a debug statement. Fixes #622690. 2010-07-05 10:09:36 +0200 Sebastian Dröge * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: celt: Improve debugging 2010-07-05 10:08:30 +0200 Sebastian Dröge * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: celtenc: Add support for setting the prediction mode and the start band 2010-07-05 09:53:33 +0200 Sebastian Dröge * configure.ac: celt: Add check for celt 0.8 2010-07-05 09:52:18 +0200 Sebastian Dröge * configure.ac: * ext/celt/gstceltenc.c: celt: Remove support for celt < 0.5 celt 0.5 was released more than a year ago and the bitstream is incompatible with the current one anyway. 2010-07-05 09:47:38 +0200 Sebastian Dröge * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: celt: Fix compilation with celt 0.8 Fixes bug #623550. 2010-07-05 09:32:30 +0200 Alessandro Decina * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosrc.c: gsettings: fix some more warnings 2010-07-05 09:28:49 +0200 Alessandro Decina * ext/gsettings/gstgsettingsaudiosink.c: gsettings: fix a compiler warning 2010-07-03 16:15:34 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/gsettings/Makefile.am: * ext/gsettings/gstgsettings.h: * ext/gsettings/gstgsettingsaudiosink.c: * ext/gsettings/gstgsettingsaudiosink.h: * ext/gsettings/gstgsettingsaudiosrc.c: * ext/gsettings/gstgsettingsaudiosrc.h: * ext/gsettings/gstgsettingsvideosink.c: * ext/gsettings/gstgsettingsvideosink.h: * ext/gsettings/gstgsettingsvideosrc.c: * ext/gsettings/gstgsettingsvideosrc.h: * ext/gsettings/gstswitchsink.c: * ext/gsettings/gstswitchsink.h: * ext/gsettings/gstswitchsrc.c: * ext/gsettings/gstswitchsrc.h: * ext/gsettings/org.freedesktop.gstreamer.default-elements.gschema.xml.in: * ext/gsettings/plugin.c: * po/POTFILES.in: gsettings: Initial version of GSettings plugin This provides audio/video sources and sinks. Fixes bug #616265. 2010-07-03 17:48:20 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-lv2.xml: docs: Integrate VP8 documentation 2010-07-03 17:47:29 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8dec.h: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: vp8: Add initial documentation, based on the theoradec/theoraenc documentation 2010-07-03 17:34:58 +0200 Sebastian Dröge * ext/vp8/Makefile.am: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8dec.h: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8enc.h: * ext/vp8/plugin.c: vp8: Move structure definitions, etc to public header files for gtk-doc 2010-07-02 12:45:20 +0200 Edward Hervey * gst/qtmux/gstqtmux.c: qtmux: Don't use bogus codec/format tags https://bugzilla.gnome.org/show_bug.cgi?id=623365 2010-07-01 15:19:12 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: rtpmux: Add support for GstBufferList Factor out most of the buffer handling and implement a chain_list function. Also, the DTMF muxer has been modified to just have a function to accept or reject a buffer instead of having to subclass both chain and chain_list. 2010-07-01 15:15:49 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Don't leak invalid buffers 2010-06-14 15:15:09 -0400 Olivier Crête * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/videomaxrate/videomaxrate.c: * gst/videomaxrate/videomaxrate.h: videomaxrate: Add to docs 2010-06-11 18:31:05 -0400 Olivier Crête * gst/videomaxrate/videomaxrate.c: videomaxrate: Add fixates_caps 2010-06-10 20:36:29 -0400 Olivier Crête * gst/videomaxrate/videomaxrate.c: videomaxrate: Accept wider caps 2010-06-10 20:25:01 -0400 Olivier Crête * gst/videomaxrate/videomaxrate.c: * gst/videomaxrate/videomaxrate.h: videomaxrate: Make period over which to average configurable 2010-06-10 20:43:16 -0400 Olivier Crête * gst/videomaxrate/videomaxrate.c: videomaxrate: Simplify transform_caps 2010-06-10 20:14:01 -0400 Olivier Crête * gst/videomaxrate/videomaxrate.c: videomaxrate: Use basetransform correctly 2010-06-10 20:08:14 -0400 Olivier Crête * gst/videomaxrate/videomaxrate.c: * gst/videomaxrate/videomaxrate.h: videomaxrate: Make plugin actually work by using an average 2010-06-10 19:17:00 -0400 Olivier Crête * configure.ac: * gst/videomaxrate/Makefile.am: * gst/videomaxrate/videomaxrate.c: * gst/videomaxrate/videomaxrate.h: videomaxrate: Import plugin Import plugin from PsiMedia, based on my work 2010-07-01 16:28:57 -0300 Thiago Santos * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: signal-fps-measurements is writable signal-fps-measurements is a readwrite property, not read-only. Also adds some more debugging logs. 2010-06-30 18:59:23 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: add gst-ffmpeg to whitelist as well The mxf tests use some ffmpeg elements if they're available. 2010-06-30 18:52:12 +0100 Tim-Philipp Müller * tests/check/Makefile.am: tests: add plugin loading whitelist to test environment Only want to load core/-base/-good/-ugly/-bad plugins here. 2010-06-30 18:20:13 +0100 Sebastian Pölsterl * gst/mpegdemux/mpegtsparse.c: mpegtsparse: don't free PAT structure which may still be needed later This is a problem if you tune to a channel which uses pid X and later tune to another channel where X is used for another table (e.g. PMT). The code that does that was actually already there but never used because the pat structure was freed before. The commit that introduced those lines intended to fix a memory leak, but we clean things up elsewhere. Fixes #622725. 2010-06-30 18:19:00 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: update inspect info, now sorted and escaped 2010-06-30 17:54:45 +0100 Tim-Philipp Müller * .gitignore: .gitignore: ignore temporary orc files 2010-06-29 11:21:06 +0200 Sebastian Dröge * configure.ac: * sys/vdpau/h264/gsth264parser.c: vdpau: Check for log2 and only use it if it's available 2010-06-28 16:20:09 +0100 Tim-Philipp Müller * autogen.sh: * configure.ac: Bump automake requirement to 1.10 and autoconf to 2.60 For maintainability reasons, $(builddir) and other things. See #622944 and #570428. 2010-06-28 12:00:55 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264frame.c: vdpauh264dec: don't use deprecated g_ptr_array_free incase glib >= 2.22 2010-06-28 11:19:27 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: vdpauvideopostprocess: fix resizing of output 2010-06-28 11:08:56 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264frame.c: vdpauh264dec: don't use glib 2.22 functions 2010-06-27 20:29:06 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: change GstBaseVideoDecoder state api 2010-06-27 10:52:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264dpb.c: vdpauh264dec: free frames on finalize in GstH264DPB 2010-06-27 09:55:22 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: add display property to GstVdpDecoder 2010-06-27 01:27:28 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gsth264frame.c: * sys/vdpau/h264/gsth264frame.h: * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: rename GstVdpH264Frame to GstH264Frame 2010-06-27 00:36:25 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdpvideopostprocess.c: vdpau: fix error handling when plugging "vdpauvideopostprocess ! fakesink" 2010-06-27 00:35:11 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdp/gstvdpdecoder.h: * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdp/gstvdpvideosrcpad.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: add error parameter to gst_vdp_video_src_pad_get_device 2010-06-28 10:47:52 +0200 Sebastian Dröge * sys/vdpau/Makefile.am: vdpau: Link to $(LIBM) for log2 and friends 2010-06-27 19:22:39 +0200 Sebastian Dröge * gst/legacyresample/resample_functable.c: * gst/legacyresample/resample_ref.c: legacyresample: Include _stdint.h for int16_t and friends 2010-06-27 17:46:44 +0200 Robert Swain * ext/cog/cogframe.c: * ext/cog/cogvirtframe.c: cog: Use g_malloc() instead of malloc() malloc() needs stdlib.h, which isn't included here and the memory is freed later with g_free() anyway. 2010-06-27 11:24:37 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: * gst/ivfparse/gstivfparse.c: * gst/jpegformat/gstjifmux.c: assrender, ivfparse, jpegformat: fix compiler warnings with debugging disabled in core 2010-06-27 10:41:16 +0200 Sebastian Dröge * tests/examples/camerabin/gst-camera.c: * tests/icles/metadata_editor.c: tests: Fix build with GTK+ < 2.17.7 gtk_widget_get_allocation() was added in that version. 2010-06-27 10:36:58 +0200 Sebastian Dröge * configure.ac: * tests/examples/scaletempo/demo-gui.c: configure: Require GTK+ >= 2.14 for the example 2010-06-27 07:40:50 +0200 Sebastian Dröge * tests/examples/camerabin/gst-camera.c: * tests/icles/metadata_editor.c: tests: Don't use deprecated GTK API to fix the build with GTK+ 3.0 2010-06-26 21:02:53 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdp/Makefile.am: * sys/vdpau/gstvdp/gstvdp.c: * sys/vdpau/gstvdp/gstvdpdecoder.c: * sys/vdpau/gstvdp/gstvdpdecoder.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegdec.h: vdpau: add GstVdpDecoder base class 2010-06-26 19:02:00 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: add gst_h264_dpb_set_output_func function 2010-06-25 20:19:20 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: Write uint tags that don't have a complement Write uint tags that have complements (e.g. track-number/ track-count) even when we only have one of them available and set the other one to 0. Fixes #622484 2010-06-25 11:02:33 -0300 Thiago Santos * ext/metadata/metadataexif.c: * ext/metadata/metadataiptc.c: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparseutil.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatypes.c: * ext/metadata/metadataxmp.c: metadata: Include config.h in metadata*.c files Include config.h in metadataexif.c in metadata plugin so that HAVE_EXIF gets defined and exif metadata is properly generated. Also adds config.h to all .c files missing it in metadata plugin Fixes #622692 2010-06-24 20:21:15 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: Warn if preroll value is too big Post a warning when the preroll value is greater than the streams duration 2010-06-24 23:57:16 +0100 Tim-Philipp Müller * sys/vdpau/basevideodecoder/Makefile.am: vdpay: fix build in uninstalled setup Add GST_PLUGINS_BASE_CFLAGS to CFLAGS so it finds the gst/video/video.h headers in an uninstalled setup. Also reshuffle order. 2010-06-24 18:32:44 -0300 Thiago Santos * gst/asfmux/gstasfobjects.c: asfmux: Make metadata writable before setting it Before copying metadata from one buffer to another, make sure the destination is metadata-writable. 2010-06-24 22:14:38 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: fix unitialized variable 2010-06-24 22:06:56 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gstnalreader.c: * sys/vdpau/h264/gstnalreader.h: vdpauh264dec: fix initalization of GstNalReader cache 2010-06-24 12:37:36 -0300 Thiago Santos * gst/debugutils/.gitignore: * gst/debugutils/Makefile.am: * gst/debugutils/debugutils-marshal.list: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: Adds a signal to inform measurements to apps Adds a signal for applications to receive the fps measurements made instead of only printing them to the frame/stdout. This signal is only emited if the signal-fps-measurements property is set to TRUE 2010-06-24 10:59:32 -0300 Thiago Santos * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: Adds max-fps and min-fps property Adds 2 properties for getting the maximum and minimum fps values measured 2010-06-24 10:24:27 -0300 Thiago Santos * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: Use G_PARAM_STATIC_STRINGS in all properties Add G_PARAM_STATIC_STRINGS to the properties that are missing it 2010-06-24 10:23:02 -0300 Thiago Santos * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: Add fps-update-interval property Use a property to set/get the fps update interval instead of having a hardcoded value. 2010-06-24 16:20:23 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/Makefile.am: vdpau: rename GstBaseVideoDecoder to SatBaseVideoDecoder using CFLAGS 2010-06-24 15:23:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/basevideodecoder/Makefile.am: * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/basevideodecoder/gstbasevideoutils.h: * sys/vdpau/basevideodecoder/gstvideoframe.c: * sys/vdpau/basevideodecoder/gstvideoframe.h: * sys/vdpau/basevideodecoder/satbasevideodecoder.h: * sys/vdpau/basevideodecoder/satvideoframe.h: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/h264/gstvdph264frame.c: * sys/vdpau/h264/gstvdph264frame.h: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegdec.h: * sys/vdpau/mpeg/gstvdpmpegframe.c: * sys/vdpau/mpeg/gstvdpmpegframe.h: Revert "vdpau: rename GstBaseVideoDecoder to SatBaseVideoDecoder" This reverts commit aa0444f204157c22c11a742547c9e68a9eaecc80. 2010-06-24 15:09:33 +0300 Stefan Kost * common: Automatic update of common submodule From 35617c2 to a519571 2010-06-24 13:18:55 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/basevideodecoder/Makefile.am: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/basevideodecoder/gstvideoframe.h: * sys/vdpau/basevideodecoder/satbasevideodecoder.c: * sys/vdpau/basevideodecoder/satbasevideodecoder.h: * sys/vdpau/basevideodecoder/satbasevideoutils.h: * sys/vdpau/basevideodecoder/satvideoframe.c: * sys/vdpau/basevideodecoder/satvideoframe.h: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/h264/gstvdph264frame.c: * sys/vdpau/h264/gstvdph264frame.h: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegdec.h: * sys/vdpau/mpeg/gstvdpmpegframe.c: * sys/vdpau/mpeg/gstvdpmpegframe.h: vdpau: rename GstBaseVideoDecoder to SatBaseVideoDecoder 2010-06-23 22:33:05 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264parser.c: vdpauh264dec: use bitshifts instead of pow 2010-06-23 22:21:18 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: add interlaced = false to sink caps we don't support interlaced content yet 2010-06-23 22:18:53 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmp: All read return values smaller than zero are failures 2010-06-23 21:10:03 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264parser.c: vdpauh264dec: fix parsing of scaling lists 2010-06-23 21:09:42 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gstnalreader.c: vdpauh264dec: fix reading of signed exp golomb 2010-06-22 15:49:15 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: fixup decoder timestamping 2010-06-22 14:52:00 +0200 Carl-Anton Ingmarsson * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: vdpau: remove parse_codec_data from GstBaseVideoDecoder 2010-06-22 14:25:17 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264parser.c: vdpauh264dec: fix initialization of fallback scaling matrix 2010-06-22 14:17:28 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gsth264parser.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264frame.h: vdpauh264dec: improve further 2010-06-17 15:20:51 +0200 Carl-Anton Ingmarsson * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gstvdph264dec.c: vdpauh264dec: now works for simple streams 2010-06-17 15:20:03 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdp/gstvdpvideosrcpad.h: * sys/vdpau/mpeg/gstvdpmpegdec.c: vdpau: change gst_vdp_video_src_pad_get_device behaviour it now creates the device if it's not available 2010-06-16 23:12:43 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/h264/gsth264dpb.c: * sys/vdpau/h264/gsth264dpb.h: * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gsth264parser.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/h264/gstvdph264frame.h: vdpau: more work on h264 decoder 2010-06-10 12:13:50 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/basevideodecoder/gstvideoframe.h: * sys/vdpau/h264/gsth264parser.c: * sys/vdpau/h264/gsth264parser.h: * sys/vdpau/h264/gstnalreader.c: * sys/vdpau/h264/gstnalreader.h: * sys/vdpau/h264/gstvdph264dec.c: * sys/vdpau/h264/gstvdph264dec.h: * sys/vdpau/h264/gstvdph264frame.c: * sys/vdpau/h264/gstvdph264frame.h: vdpau: add beginning of h264 decoder 2010-06-09 15:43:43 +0200 Carl-Anton Ingmarsson * configure.ac: * sys/vdpau/Makefile.am: * sys/vdpau/basevideodecoder/Makefile.am: * sys/vdpau/basevideodecoder/gstbasevideodecoder.c: * sys/vdpau/basevideodecoder/gstbasevideodecoder.h: * sys/vdpau/basevideodecoder/gstbasevideoutils.h: * sys/vdpau/basevideodecoder/gstvideoframe.c: * sys/vdpau/basevideodecoder/gstvideoframe.h: * sys/vdpau/gstvdp/Makefile.am: * sys/vdpau/gstvdp/gstvdp.c: * sys/vdpau/gstvdp/gstvdp.h: * sys/vdpau/gstvdp/gstvdpdevice.c: * sys/vdpau/gstvdp/gstvdpdevice.h: * sys/vdpau/gstvdp/gstvdpoutputbuffer.c: * sys/vdpau/gstvdp/gstvdpoutputbuffer.h: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdp/gstvdpoutputsrcpad.h: * sys/vdpau/gstvdp/gstvdputils.c: * sys/vdpau/gstvdp/gstvdputils.h: * sys/vdpau/gstvdp/gstvdpvideobuffer.c: * sys/vdpau/gstvdp/gstvdpvideobuffer.h: * sys/vdpau/gstvdp/gstvdpvideosrcpad.c: * sys/vdpau/gstvdp/gstvdpvideosrcpad.h: * sys/vdpau/gstvdpau.c: * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: * sys/vdpau/mpeg/gstvdpmpegdec.c: * sys/vdpau/mpeg/gstvdpmpegdec.h: * sys/vdpau/mpeg/gstvdpmpegframe.c: * sys/vdpau/mpeg/gstvdpmpegframe.h: * sys/vdpau/mpeg/mpegutil.c: * sys/vdpau/mpeg/mpegutil.h: vdpau: base vdpaumpegdec on GstBaseVideoDecoder 2010-06-08 13:36:53 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: fix small bug 2010-05-15 22:47:41 +0200 Carl-Anton Ingmarsson * sys/vdpau/mpegutil.c: vdpaumpegdec: use READ_UINT[8|16|32] macros 2010-06-04 12:24:16 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: vdpau: remove gst_vdp_video_src_pad_set_caps 2010-06-23 21:46:42 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Do some sanity checks before accepting an URI Fixes bug #622369. 2010-06-17 10:58:55 -0300 Thiago Santos * tests/check/elements/jifmux.c: jifmux: Adds image orientation tags tests Adds tests for image orientation tags to jifmux 2010-06-23 10:38:54 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: obtain correct upstream timestamp ... for optional downstream use. 2010-06-22 12:28:38 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: add new h264 caps attribute alignment See #606662. 2010-06-21 23:48:59 +0300 Stefan Kost * ext/timidity/gstwildmidi.c: wildmidi: fix previous commit We were leaking the element refcount and not the pad one. 2010-06-21 22:33:54 +0300 Stefan Kost * ext/timidity/gstwildmidi.c: wildmidi: don't leak the element refcount 2010-06-21 19:39:54 +0200 Edward Hervey * gst/qtmux/gstqtmux.c: qtmux: Remove the pad from our internal list before calling collectpads Previously we would end up with the collectpaddata structure already freed. This would result in a bogus iteration of mux->sinkpads (all the GstQTPad being freed) and it wouldn't be removed from that list. Finally, due to it not being removed from that list, we would end up calling a bogus gst_qt_mux_pad_reset on those structures => SEGFAULT 2010-06-21 10:21:04 -0300 Thiago Santos * gst/camerabin/Makefile.am: * gst/camerabin/camerabindebug.h: * gst/camerabin/camerabingeneral.h: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: Move debug category declaration to a separate file Having GST_DEBUG_CATEGORY and GST_DEBUG_CATEGORY_EXTERN together might lead to 'undefined symbol' problems. This commit moves the _EXTERN to a separate new file. 2010-06-21 11:13:20 +0200 Thijs Vermeir * gst/h264parse/gsth264parse.c: Revert "h264parse: add parsed field to src caps" This reverts commit 54edae4f1f2119cf492ffe44f936f99e133af7dc. See this bug for more information: https://bugzilla.gnome.org/show_bug.cgi?id=606662 2010-06-17 08:42:53 +1000 Austin Lund * gst/mpegvideoparse/mpegpacketiser.c: mpegvideoparse: Remove redundant log message 2010-06-20 10:39:39 +0200 Thijs Vermeir * gst/h264parse/gsth264parse.c: h264parse: add parsed field to src caps 2010-06-18 14:37:05 -0300 Thiago Santos * gst/id3tag/id3tag.c: id3tag: Use gst_tag_list_peek_string_index Replace _get_string_index with _peek_string_index to avoid a string copy 2010-06-18 18:41:59 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: also handle 3-byte bytestream sync code 2010-06-17 10:52:31 +0200 Thijs Vermeir * gst/mpegdemux/gstsectionfilter.c: mpegdemux: improve debug output 2010-06-16 10:31:19 +0200 Benjamin Otte * gst/pnm/gstpnmdec.c: pnmdec: Don't crash if no valid input was parsed yet https://bugzilla.redhat.com/show_bug.cgi?id=603771 2010-06-11 10:53:26 +1000 Austin Lund * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: Added debugging output for mpegpacketiser 2010-06-15 16:50:05 +0200 Edward Hervey * common: Automatic update of common submodule From 9339ccc to 35617c2 2010-06-15 16:54:28 +0300 Stefan Kost * common: Automatic update of common submodule From 5adb1ca to 9339ccc 2010-06-15 15:34:05 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: fix seek event ref handling 2010-06-15 15:33:37 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: prevent arithmetic overflows in pull mode buffer cache handling 2010-06-15 15:32:34 +0200 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: fix seek handling Allow a few more seek event type combinations, and really use the result of gst_segment_set_seek to perform the seek. Also add some debug. 2010-06-15 16:35:35 +0300 Stefan Kost * common: Automatic update of common submodule From 57c89b7 to 5adb1ca 2010-06-15 15:49:26 +0300 Stefan Kost * common: Automatic update of common submodule From c804988 to 57c89b7 2010-06-12 09:02:29 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Implement multipass encoding Fixes bug #621348. 2010-06-15 11:20:21 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: sprinkle some branch prediction 2010-06-15 11:16:47 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: handle FLUSH_STOP event 2010-06-15 11:16:34 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpeg4videoparse/mpeg4videoparse.h: mpeg4videoparse: add config-interval parameter to re-insert config in stream Add a new config-interval property to instruct the parser to insert config (VOSH, VOS, etc) at periodic intervals in the stream (when a GOP or VOP-I is encountered). Based on patch by Fixes #621205. 2010-06-15 17:16:12 +1000 Jan Schmidt * gst/mpegvideoparse/mpegpacketiser.c: mpegvideoparse: Apply previous timestamp when there isn't any newer. If the current incoming packet didn't carry a timestamp, but a previous packet had one we didn't yet use, then apply that timestamp to the next picture. Fixes: #618336 2010-06-14 17:01:03 +0200 Sebastian Dröge * configure.ac: * tests/examples/mxf/mxfdemux-structure.c: configure: Require GLib 2.20 2010-06-14 15:56:24 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Set VP8E_SET_CPUUSED to 0 This setting controls how much CPU can be used by the encoder, specified in fractions of 16. Negative values mean strict enforcement of this while positive values are adaptive. The default value is -4, which means that we're not running as fast as possible and probably are wasting some quality. 0 is the recommended default by libvpx upstream. 2010-06-14 15:51:30 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Use VPX defines for REALTIME, GOOD/BEST quality deadlines instead of our own These are the values used for the speed property. 2010-06-14 15:46:58 +0200 Mark Nauwelaerts * ext/dts/gstdtsdec.c: dtsdec: prevent compiler warning if orc not present 2010-05-31 18:30:36 +0200 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: handle FLUSH_STOP sink event 2010-05-31 18:30:19 +0200 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: optimize image parsing Use adapter API for scanning and peeking to reduce buffer copying. See #583047. 2010-06-14 15:32:26 +0200 Sebastian Dröge * ext/dts/gstdtsdec.c: dtsdec: Call orc_init() before trying to get target flags 2010-06-14 14:53:33 +0200 Sebastian Dröge * configure.ac: configure: Check for orc instead of liboil 2010-06-14 14:51:31 +0200 Sebastian Dröge * ext/dts/Makefile.am: * ext/dts/gstdtsdec.c: dtsdec: Use orc for CPU feature detection 2010-06-14 14:48:02 +0200 Sebastian Dröge * gst/mpegdemux/Makefile.am: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Don't use liboil functions glibc memcpy() will be faster than liboil's/orc's for now anyway and we can use orc's later, after orc has support for loop unrolling. 2010-06-14 14:47:47 +0200 Sebastian Dröge * gst/legacyresample/Makefile.am: * gst/legacyresample/resample.c: * gst/legacyresample/resample_functable.c: * gst/legacyresample/resample_ref.c: legacyresample: Don't include liboil headers, they're not used anyway 2010-06-14 13:26:49 +0200 Sebastian Dröge * configure.ac: configure: Use GLIB_EXTRA_CFLAGS 2010-06-14 13:04:59 +0200 Sebastian Dröge * common: Automatic update of common submodule From 7a0fdf5 to c804988 2010-06-14 12:49:40 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: add option to insert SPS/PPS in stream Add a new config-interval property to insert SPS and PPS at periodic intervals in the stream (when an IDR is encountered). Based on patch by Fixes #620978. 2010-06-09 15:32:14 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: also collect SPS and PPS nalu in codec_data 2010-06-14 11:34:15 +0200 Sebastian Dröge * common: Automatic update of common submodule From 6da3bab to 7a0fdf5 2010-06-13 08:28:05 +0200 Sebastian Dröge * ext/xvid/gstxvid.c: xvid: Don't use deprecated 15/16 bit RGB masks 2010-06-12 08:28:54 +0200 Sebastian Dröge * common: Automatic update of common submodule From 733fca9 to 6da3bab 2010-05-22 10:35:33 +0100 Tim-Philipp Müller * sys/vcd/vcdsrc.c: vcdsrc: minor clean-up Use gst_uri_has_protocol(). 2010-06-11 15:29:43 -0300 Thiago Santos * configure.ac: * tests/check/Makefile.am: * tests/check/elements/jifmux.c: jifmux: Fix tests building Only build jifmux tests if libexif headers are present 2010-06-09 19:16:03 -0700 David Schleef * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * ext/cog/gstcogorc.orc: cog: use glib instead of stdint types 2010-06-09 18:39:38 -0700 David Schleef * configure.ac: configure: use m4 macro for Orc check 2010-06-05 16:02:41 +0200 Philip Jägenstedt * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: remove spurious warning 2010-06-10 14:17:24 +0100 Tim-Philipp Müller * configure.ac: configure: require core/base git for the new image tags and helper functions 2010-05-10 10:47:06 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/jifmux.c: tests: jifmux: Adds jifmux exif tags tests Adds a basic unit test for jifmux to test that exif tags are writen properly. This test uses libexif. Fixes #614872 2010-04-28 23:52:12 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: jpegformat: Add exif support Adds exif writing support to jifmux. Adds parsing support to jpegparse. Fixes #614872 2010-06-09 12:40:21 -0700 David Schleef * common: Automatic update of common submodule From fad145b to 733fca9 2010-06-09 12:34:10 -0700 David Schleef * common: Automatic update of common submodule From 47683c1 to fad145b 2010-06-09 20:49:10 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Fix timestamps after a seek 2010-06-08 14:33:56 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: asfmux: Deprecate 'is-live' and add 'streamable' property Following the similar change in flvmux, this commit adds 'streamable' property and deprecated 'is-live' for a better/less wrong name. 2010-05-13 12:15:27 +0200 Andoni Morales Alastruey * gst/asfmux/gstasfmux.c: asfmux: don't set the 'seekable' flag if we are streaming Fixes #618522 2010-04-29 10:46:49 +0200 Andoni Morales Alastruey * gst/asfmux/gstasfmux.c: asfmux: write preroll info in the header at initialization This value doesn't need to be updated and is usefull in a streaming context Fixes #618522 2010-04-26 13:33:48 +0200 Andoni Morales Alastruey * gst/asfmux/gstasfmux.c: asfmux: put headers in streamheader for streaming Fixes #618522 2010-06-08 13:59:45 +0200 Marc-André Lureau * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: start pmt at 0x020 as suggested by Zaheer 2010-06-08 13:59:08 +0200 Marc-André Lureau * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: take all the pmt in the streamheaders 2010-06-08 09:14:01 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Do not assert on set_property to NULL for elements Check if the value is NULL before reffing them in set_property for 'GstElement' properties 2010-06-08 08:41:49 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Do not assert on null caps property If camerabin receives a null caps as 'filter-caps' argument, use the default value 2010-06-07 22:56:17 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: Use _CAST macro Replace default type casting macro with the faster direct _CAST macro 2010-06-07 22:21:10 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstcirclegeometrictransform.c: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: geometrictransform: Make properties controllable Makes the element's properties controllable and threadsafe. Fixes #620825 2010-06-07 17:39:07 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Remove page-url and swf-url properties It's possible to include all those options in the URL already by appending the options and separating them by spaces, e.g. rtmp://somewhere/something opt1=val1 opt2=val2 2010-06-07 17:30:47 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Fix memory leaks 2010-06-07 11:15:26 -0400 Olivier Crête * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfdetect.h: dtmfdetect: Only works with rate=8000, fix in caps 2010-06-07 07:58:22 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Fix crash in 'filename' property Do not crash when filename property is set to NULL, use an empty string instead. 2010-06-07 07:38:33 -0300 Thiago Santos * ext/kate/gstkateenc.c: * ext/kate/gstkatespu.c: kate: Run gst-indent on .c files kate plugin has some indentation problems, run gst-indent on them and fix it 2010-06-06 22:34:55 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/geometricmath.c: * gst/geometrictransform/geometricmath.h: * gst/geometrictransform/gstmarble.c: * gst/geometrictransform/gstmarble.h: * gst/geometrictransform/plugin.c: marble: Adds 'marble' element to geometrictransform Adds a new element that does a marbling effect to geometrictransform plugin 2010-06-06 14:35:44 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: Use explicit formats from gstvideo Use explicit format macros from gstvideo to avoid exposing unsupported formats on template pads. Using the macros also give us complete caps (width/height/framerate). And add support for AYUV. Fixes #620717 2010-06-05 19:38:44 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstdiffuse.c: * gst/geometrictransform/gstdiffuse.h: * gst/geometrictransform/plugin.c: diffuse: Adds diffuse element to geometrictransform Adds the 'diffuse' element to geometrictransform. It moves the pixels of the image in random directions 2010-06-05 19:20:06 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: geometrictransform: Make map precalculation optional Adds a variable to be set to allow subclasses to enable or disable precalculation of the pixels mapping 2010-06-06 15:32:39 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Add some braces to improve readability 2010-06-06 15:29:34 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Improve timestamp handling a bit 2010-06-06 15:24:23 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: rtmpsrc: Add support for seeking 2010-06-06 13:57:06 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: rtmpsrc: Handle timestamps and the position query This is not very accurate but better than nothing. The demuxer after the source knows more accurate timestamps. 2010-06-06 08:30:09 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: rtmpsrc: Allocate and free the RTMP instance in start/stop 2010-06-04 22:36:16 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: rtmpsrc: Add properties for setting the swfUrl and pageUrl properties These are required for some streams unfortunately. 2010-06-04 22:04:53 +0200 Sebastian Dröge * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: rtmpsrc: Major cleanup and reorganization 2010-06-04 08:14:42 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/rtmp/Makefile.am: * ext/rtmp/README: * ext/rtmp/gstrtmpsrc.c: * ext/rtmp/gstrtmpsrc.h: * gst/rtmp/Makefile.am: * gst/rtmp/amf.c: * gst/rtmp/amf.h: * gst/rtmp/bytes.h: * gst/rtmp/dh.h: * gst/rtmp/dhgroups.h: * gst/rtmp/handshake.h: * gst/rtmp/hashswf.c: * gst/rtmp/http.h: * gst/rtmp/log.c: * gst/rtmp/log.h: * gst/rtmp/parseurl.c: * gst/rtmp/rtmp.c: * gst/rtmp/rtmp.h: * gst/rtmp/rtmp_sys.h: rtmp: Move to ext and drop internal librtmp copy We really don't want this in gst-plugins-bad because of legal complexities around RTMP and possible problems for distributions. Add README that explains how to build librtmp to be suitable for linking to the GStreamer plugin. 2010-06-02 00:45:06 +0100 Bastien Nocera * configure.ac: * gst/rtmp/Makefile.am: * gst/rtmp/amf.c: * gst/rtmp/amf.h: * gst/rtmp/bytes.h: * gst/rtmp/dh.h: * gst/rtmp/dhgroups.h: * gst/rtmp/gstrtmpsrc.c: * gst/rtmp/gstrtmpsrc.h: * gst/rtmp/handshake.h: * gst/rtmp/hashswf.c: * gst/rtmp/http.h: * gst/rtmp/log.c: * gst/rtmp/log.h: * gst/rtmp/parseurl.c: * gst/rtmp/rtmp.c: * gst/rtmp/rtmp.h: * gst/rtmp/rtmp_sys.h: rtmp: Add RTMP source plugin https://bugzilla.gnome.org/show_bug.cgi?id=566604 2010-06-05 11:04:45 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: Set output buffer data to 0 Initialize output buffer data to 0 before doing the transform. 2010-06-05 10:58:00 -0300 Thiago Santos * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gstwaterripple.c: geometrictransform: Descriptions and default values Improve some properties and element descriptions and changes some default properties values. 2010-06-04 16:14:02 -0400 Olivier Crête * sys/shm/gstshmsink.c: shmsink: Verify that pipe exists before resizing it 2010-06-04 15:54:33 -0400 Olivier Crête * sys/shm/shmalloc.c: * sys/shm/shmalloc.h: * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shm: Add copyright notices to shmalloc.[ch] and shmpipe.[ch] 2010-06-04 15:53:20 -0300 Thiago Santos * gst/geometrictransform/geometricmath.c: * gst/geometrictransform/geometricmath.h: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstcircle.h: * gst/geometrictransform/gstcirclegeometrictransform.c: * gst/geometrictransform/gstcirclegeometrictransform.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstkaleidoscope.h: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstpinch.h: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsphere.h: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gsttwirl.h: * gst/geometrictransform/gstwaterripple.c: * gst/geometrictransform/gstwaterripple.h: geometrictransform: Remove trailing whitespace Remove trailing whitespace from geometrictransform files 2010-06-03 00:24:50 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstwaterripple.c: * gst/geometrictransform/gstwaterripple.h: * gst/geometrictransform/plugin.c: waterripple: Adds new waterripple element to geometrictransofmr Adds an water ripple distortion element to geometrictransform 2010-06-02 23:55:41 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstsphere.c: * gst/geometrictransform/gstsphere.h: * gst/geometrictransform/plugin.c: sphere: Adds new 'sphere' element to geometrictransform Adds a new element to do 'sphere' effect into geometrictransform plugin 2010-06-02 22:01:31 -0300 Thiago Santos * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gsttwirl.c: geometrictransform: adds some properties to base class Adds a property to select what to do with pixels that are mapped out of edges: ignore, clamp or wrap. 2010-06-02 18:58:42 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/geometricmath.c: * gst/geometrictransform/geometricmath.h: * gst/geometrictransform/gstcircle.c: * gst/geometrictransform/gstcircle.h: * gst/geometrictransform/plugin.c: circle: Adds circle element to geometrictransform plugin Adds the new 'circle' element to geometrictransform plugin 2010-06-02 01:21:23 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/geometricmath.c: * gst/geometrictransform/geometricmath.h: * gst/geometrictransform/gstkaleidoscope.c: * gst/geometrictransform/gstkaleidoscope.h: * gst/geometrictransform/plugin.c: kaleidoscope: Adds new element 'kaleidoscope' Adds new kaleidoscope element to geometrictransform plugin 2010-06-02 00:48:15 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gsttwirl.c: * gst/geometrictransform/gsttwirl.h: * gst/geometrictransform/plugin.c: gsttwirl: Adds new element twirl Adds a new element to geometrictransform plugin: twirl 2010-06-02 00:34:36 -0300 Thiago Santos * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstcirclegeometrictransform.c: * gst/geometrictransform/gstcirclegeometrictransform.h: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstpinch.h: geometrictransform: Adds a intermediary baseclass circlegeometrictransform Adds an intermediary baseclass named gstcirclegeometrictransform to keep common properties code for filters that operate on a circular area. 2010-05-30 12:50:56 -0300 Thiago Santos * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstpinch.h: pinch: Some optimization using the prepare func Small optimization by precalculating the center of the effect, also use newly added _CAST macro. 2010-05-30 12:36:08 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: geometrictransform: Adds prepare function and cleanup Adds a prepare function to make subclasses precalculate values that will be used throughout the mapping functions. Also adds a missing cleanup to fix a memleak 2010-05-26 21:39:21 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: geometrictransform: Precalculate mapping array Precalculate when setting caps the warping map to avoid recalculating it every buffer 2010-05-26 18:29:15 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: geometrictransform: Accept any rgb or gray Using gstvideo functions geometrictransform can handle rgb or gray, put that on template caps 2010-05-26 18:22:02 -0300 Thiago Santos * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: * gst/geometrictransform/gstpinch.c: geometrictransform: Rename some variables for clarity Renames some variables and adds a minimum doc to the mapping function for a little clarity. Also uses gstvideo functions for the row and pixel strides instead of hardcoded values 2010-05-24 23:57:05 -0300 Thiago Santos * configure.ac: * gst/geometrictransform/Makefile.am: * gst/geometrictransform/gstgeometrictransform.c: * gst/geometrictransform/gstgeometrictransform.h: * gst/geometrictransform/gstpinch.c: * gst/geometrictransform/gstpinch.h: * gst/geometrictransform/plugin.c: geometrictransform: New plugin for geometric transforms Adds a new plugin that has elements that perform geometric transformations to images. By geometric transformations I mean that the operations are functions that given the output pixel position, get the pixel position in the input image. This pixel is then copied from input to output. The gstgeometrictransform baseclass makes it easy to write such elements. It boils down to write the mapping function and exposing properties Already added the first of the elements, 'pinch'. It's a common effect in image editors, like gimp (distort -> pinch) 2010-06-03 23:19:35 -0700 David Schleef * tools/element-maker: * tools/gobject.c: * tools/gstbasesink.c: * tools/gstbasesrc.c: tools: flesh out element-maker templates 2010-06-03 18:14:05 -0700 David Schleef * gst/bayer/gstbayer2rgb.c: bayer2rgb: handle other bayer formats 2010-06-03 18:14:57 -0700 David Schleef * gst/bayer/gstrgb2bayer.c: * gst/bayer/gstrgb2bayer.h: rgb2bayer: handle multiple bayer formats 2010-06-03 15:53:04 -0700 David Schleef * gst/bayer/Makefile.am: * gst/bayer/gstbayer.c: * gst/bayer/gstrgb2bayer.c: * gst/bayer/gstrgb2bayer.h: bayer: Add rgb2bayer element Mostly for testing/completeness. 2010-06-03 20:51:57 +0100 Tim-Philipp Müller * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: shm: fix debug messages Misc. printf format fixes and missing arguments. 2010-06-03 15:27:03 -0400 Olivier Crête * sys/shm/gstshmsink.c: shmsink: Make static function static 2010-06-03 15:26:52 -0400 Olivier Crête * sys/shm/gstshmsink.c: * sys/shm/gstshmsrc.c: shm: Use gst_element_class_set_details_simple 2010-06-03 14:42:06 -0400 Olivier Crête * configure.ac: * sys/Makefile.am: * sys/shm/Makefile.am: * sys/shm/gstshm.c: * sys/shm/gstshmsink.c: * sys/shm/gstshmsink.h: * sys/shm/gstshmsrc.c: * sys/shm/gstshmsrc.h: * sys/shm/shmalloc.c: * sys/shm/shmalloc.h: * sys/shm/shmpipe.c: * sys/shm/shmpipe.h: shm: Move to sys/ since it doesn't exist on windows 2010-06-03 14:41:55 -0400 Olivier Crête * gst/shm/gstshmsrc.c: shmsrc: Fix indentation 2010-06-03 14:22:36 -0400 Olivier Crête * gst/shm/gstshmsink.c: * gst/shm/shmpipe.c: * gst/shm/shmpipe.h: shmsink: Print errors if fchmod fails 2010-04-07 19:05:37 -0400 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Fix crash when sp_close_shm is called with self == NULL. If sp_open_shm errors out trying to open a shm area, it would crash when trying to free the area. The RETURN_ERROR macro calls sp_shm_area_dec with self == NULL. sp_shm_area_dec calls sp_shm_close, with self == NULL, which it then tries to access a parameter of without checking. This patch checks to make sure self != NULL before accessing that parameter. 2010-04-07 19:05:15 -0400 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Update code standard 2010-02-03 13:50:13 +0200 Olivier Crête * gst/shm/gstshmsrc.c: shmsrc: Add socket path to error message 2010-02-02 17:40:09 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Remove wrong test inversion 2010-02-02 17:35:26 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Verify that accept succeeds 2010-02-02 17:35:15 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Fix one byte overflow 2010-02-02 11:11:06 +0200 Olivier Crête * gst/shm/gstshmsink.c: * gst/shm/gstshmsrc.c: shmsrc: Improve debug prints 2010-01-26 12:34:34 +0200 Olivier Crête * gst/shm/gstshmsink.c: shmsink: Get potentially modified after opening shmpipe 2010-01-26 12:32:56 +0200 Olivier Crête * gst/shm/shmpipe.c: * gst/shm/shmpipe.h: shm: Try alternate paths for the socket 2010-01-29 11:06:44 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Don't pretend the path is random 2010-01-29 10:57:27 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Create shm area exclusively 2010-01-28 15:34:44 +0200 Olivier Crête * gst/shm/shmalloc.h: * gst/shm/shmpipe.c: * gst/shm/shmpipe.h: shmalloc: Make it build in non-glib world 2010-01-28 12:19:07 +0200 Olivier Crête * gst/shm/gstshmsrc.c: * gst/shm/gstshmsrc.h: shmsrc: Make the shmpipe life independant of the element states 2010-01-28 11:57:34 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Simplify handling of random paths 2010-01-28 11:36:01 +0200 Olivier Crête * gst/shm/gstshmsrc.c: shmpipe: Remove useless attrib 2010-01-28 11:31:11 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Ref client shmarea when a buffer is received in it 2010-01-28 11:30:11 +0200 Olivier Crête * gst/shm/shmpipe.c: shmpipe: Don't dec old shm area when new one is added Its ref will be dropped when the "close" message arrives 2010-01-27 11:49:34 +0200 Olivier Crête * gst/shm/gstshmsrc.c: shmsrc: Lock uses of shmpipe 2010-01-26 14:20:35 +0200 Olivier Crête * gst/shm/gstshmsrc.c: shmsrc: Add is-live property 2009-11-03 20:03:24 -0500 Olivier Crête * gst/shm/shmpipe.c: shm: Print details on errors 2009-11-03 18:33:35 -0500 Olivier Crête * gst/shm/gstshmsink.c: * gst/shm/shmpipe.c: shm: Make valgrind happy 2009-11-03 16:31:37 -0500 Olivier Crête * gst/shm/gstshmsink.c: shmsink: Don't block on EOS in non-blocking mode 2009-11-03 16:09:35 -0500 Olivier Crête * gst/shm/shmpipe.c: shm: Block if required 2009-10-30 18:24:58 +0000 Olivier Crête * gst/shm/gstshm.h: * gst/shm/gstshmsink.c: * gst/shm/gstshmsink.h: shmsink: Port to ShmPipe 2009-10-30 12:37:50 +0000 Olivier Crête * gst/shm/gstshmsrc.c: * gst/shm/gstshmsrc.h: shmsrc: Port to ShmPipe 2009-10-29 19:18:25 +0000 Olivier Crête * gst/shm/Makefile.am: * gst/shm/shmalloc.c: * gst/shm/shmalloc.h: * gst/shm/shmpipe.c: * gst/shm/shmpipe.h: shm: Add shmpipe implementation 2009-04-29 16:33:46 -0400 Olivier Crête * configure.ac: * gst/shm/Makefile.am: * gst/shm/gstshm.c: * gst/shm/gstshm.h: * gst/shm/gstshmsink.c: * gst/shm/gstshmsink.h: * gst/shm/gstshmsrc.c: * gst/shm/gstshmsrc.h: shm: Add shm based sink and src These two elements (shmsink and shmsrc) communicate buffers using POSIX shared memory. They also communicate the caps. The source currently acts as a live source and ignores the timestamps coming from the sink. It also does not transfer the tags. 2010-06-03 15:51:18 +0530 Arun Raghavan * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Some checks to avoid asserts gst_mpeg_descriptor_find() expects the description field to be non-NULL. This fixes a couple of calls where the value being passed is not verified to be non-NULL first. https://bugzilla.gnome.org/show_bug.cgi?id=620456 2010-06-03 10:49:40 +0100 Tim-Philipp Müller * ext/vp8/gstvp8enc.c: vp8enc: fix printf format warning in log message gstvp8enc.c:564: error: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’ gstvp8enc.c:744: error: format ‘%d’ expects type ‘int’, but argument 8 has type ‘size_t’ 2010-06-03 10:43:20 +0100 Tim-Philipp Müller * gst/rtpmux/gstrtpdtmfmux.c: rtpmux: fix missing debug log message argument 2010-06-02 22:07:31 -0700 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: add an assert to placate gcc-4.5 2010-06-02 19:46:50 -0700 David Schleef * gst-libs/gst/video/gstbasevideoparse.c: basevideoparse: fix warning 2010-06-02 19:38:35 -0700 David Schleef * gst-libs/gst/video/gstbasevideoparse.c: basevideoparse: remove bogus api 2010-06-02 17:54:42 -0700 David Schleef * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: remove gst_base_video_state_from_caps 2010-06-02 17:40:17 -0700 David Schleef * gst-libs/gst/video/gstbasevideoutils.c: basevideo: remove compatibility code 2010-06-02 16:06:20 -0700 David Schleef * configure.ac: configure: Orc is not required 2010-06-02 16:01:28 -0700 David Schleef * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoparse.c: * gst-libs/gst/video/gstbasevideoutils.c: basevideo: use debug category for each class 2009-10-05 15:47:58 +0100 Jan Schmidt * gst-libs/gst/video/gstbasevideoutils.c: basevideo: Fail if caps don't contain a framerate field Return false from the caps parsing function if there is no framerate field in the provided caps Merging previous commit into current codebase. 2010-06-02 13:31:46 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: basevideodecoder: create new segments if missing 2009-09-17 10:50:40 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Add a warning Merging previous commit into current codebase. 2009-07-03 16:08:38 +0100 Tim-Philipp Müller * ext/vp8/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoparse.h: * gst-libs/gst/video/gstbasevideoutils.h: basevideo, vp8: guard unstable API with GST_USE_UNSTABLE_API Add some guards and fat warnings to the header files with still unstable API, so people who just look at the installed headers know that it actually is unstable API. Merging previous commit into current codebase. 2010-06-02 19:52:07 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Clear adapter when flushing 2010-06-02 19:45:29 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Stop decoding if can't push 2010-06-02 19:44:31 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Flush adapter right ater using it 2009-11-18 11:14:28 -0500 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: No need to do a try allocation 2009-11-18 11:08:25 -0500 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Document paused-mode property 2009-10-12 20:19:38 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: mimic: Use log loglevel for messages that are shown on every frame 2009-10-12 20:09:34 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: mimdec: Remove object lock usage, stream lock is enough 2009-10-12 20:08:12 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Output framerate is unknown 2009-10-12 20:06:13 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: mimdec: Remove local state variable from instance 2009-10-12 19:57:50 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Remove useless variable 2009-10-12 19:56:54 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Make caps a lot stricter 2009-10-12 19:52:35 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Set delta_unit flag on intra frames 2009-10-12 19:50:52 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: mimic: Initialize encoder/decoders in state change and setcaps where possible 2009-10-12 19:36:29 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: mimic: Fix element details 2009-10-12 19:31:38 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimic: Hold element lock while accessing the clock 2009-10-12 19:29:17 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimic: Refactor tcp header creation to not make a separate buffer 2009-10-12 19:18:20 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimic: Function can't fail 2009-10-12 19:17:30 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: mimic: Remove C++ style comments 2009-10-12 19:16:26 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: mimic: Use GST_ELEMENT_ERROR when returning a flow error 2009-10-12 18:54:59 -0400 Olivier Crête * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.h: mimic: Fix GST_MIM_*_CLASS macros 2009-10-12 18:47:35 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimic: Warn if paused-mode is toggled while playing 2009-10-12 18:39:06 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: mimic: Add GST_DEBUG_FUNCPTR where appropriate 2009-10-12 18:36:58 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: * ext/mimic/gstmimic.c: mimic: Rename functions/macros to match class names 2010-05-10 18:37:55 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: Add some debug messages 2010-05-07 18:56:57 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: rtpdtmfmux: Remove stream-lock event handling 2010-05-07 18:54:49 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: Update doc for simplification 2010-05-07 18:42:06 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: Remove rtpdtmfmux stream-lock code 2010-05-07 18:40:30 -0400 Olivier Crête * tests/check/elements/rtpmux.c: tests: Change tests to not use the priority pads instead of the events 2010-05-06 19:51:59 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: rtpdtmfmux: Drop buffers on non-priority sinks when something is incoming on the priority sink 2010-05-06 18:11:40 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: rtpdtmfmux: Add priority sink pads 2010-05-07 17:15:47 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: Cleanup event function 2010-05-07 16:42:22 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: * tests/check/elements/rtpmux.c: rtpmux: Aggregate incoming segments 2010-05-06 19:09:48 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: Update documentation 2010-05-06 18:10:45 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: rtpmux: Simplify request pad creation 2010-06-02 12:16:56 -0700 David Schleef * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoparse.c: basevideo: make printf formats portable 2010-06-02 11:41:25 -0700 David Schleef * configure.ac: Update Orc requirement to 0.4.4.1 2010-06-02 11:31:26 -0700 David Schleef Merge branch 'hacking' 2010-05-22 18:14:09 -0700 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: Add verify-field-flags property When enabled, check that the video matches the field flags on the incoming buffers. 2010-05-22 11:36:37 -0700 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: remove old code 2010-05-22 11:30:54 -0700 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: Add 4:2:2 formats 2010-05-22 00:44:40 -0700 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: Change format table Add format name, phase table. 2010-03-09 12:32:42 -0800 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: Add multiple pulldown formats 2010-05-21 23:39:06 -0700 David Schleef * gst/invtelecine/Makefile.am: * gst/invtelecine/gstinvtelecine.c: invtelecine: handle different frame sizes 2010-05-24 12:55:16 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideodecoder: (in vp8) Mark discont buffers 2010-06-02 05:51:41 +0400 Руслан Ижбулатов * gst/ivfparse/gstivfparse.c: ivfparse: Fix format string warning Fixes #620324 2010-06-01 23:50:03 -0700 David Schleef * tests/icles/Makefile.am: cog: remove old tests 2010-06-01 23:34:05 -0700 David Schleef * tests/check/Makefile.am: tests: Add orc tests to check Makefile 2010-06-01 16:55:17 -0700 David Schleef * configure.ac: * ext/cog/Makefile.am: * ext/cog/cogframe.c: * ext/cog/cogvirtframe.c: * ext/cog/gstcogorc-dist.c: * ext/cog/gstcogorc-dist.h: * ext/cog/gstcogorc.orc: cog: use common/orc.mak 2010-05-16 10:24:22 +0200 Sebastian Dröge * ext/schroedinger/gstschroenc.c: schro: Fix segfault on EOS 2010-05-14 01:21:08 -0700 David Schleef * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: schro: fix for base video updates 2010-05-16 10:15:53 +0200 Sebastian Dröge * ext/dirac/gstdiracenc.cc: dirac: Fixes for base video encoder changes 2010-06-01 15:54:51 -0700 David Schleef * ext/vp8/Makefile.am: * ext/vp8/gst/video/gstbasevideocodec.c: * ext/vp8/gst/video/gstbasevideocodec.h: * ext/vp8/gst/video/gstbasevideodecoder.c: * ext/vp8/gst/video/gstbasevideodecoder.h: * ext/vp8/gst/video/gstbasevideoencoder.c: * ext/vp8/gst/video/gstbasevideoencoder.h: * ext/vp8/gst/video/gstbasevideoparse.c: * ext/vp8/gst/video/gstbasevideoparse.h: * ext/vp8/gst/video/gstbasevideoutils.c: * ext/vp8/gst/video/gstbasevideoutils.h: * ext/vp8/gst/video/gstvideocompat.c: * ext/vp8/gst/video/gstvideocompat.h: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoparse.c: * gst-libs/gst/video/gstbasevideoparse.h: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: Move base video from vp8 to gst-libs 2010-06-01 23:49:31 -0700 David Schleef * common: Automatic update of common submodule From 17f89e5 to 47683c1 2010-06-01 22:55:11 -0700 David Schleef * common: Automatic update of common submodule From fd7ca04 to 17f89e5 2010-05-26 06:52:15 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8utils.h: vp8: Use VPX_PLANE_* instead of PLANE_* 2010-05-24 11:04:02 +0200 Sebastian Dröge * ext/vp8/gstvp8utils.h: vp8: Add compatilibity defines to work with older versions of libvpx too 2010-05-23 09:28:13 +0200 Philip Jägenstedt * ext/vp8/gstvp8enc.c: vp8dec: s/IMG_FMT_I420/VPX_IMG_FMT_I420/ This corresponds to upstream libvpx commit 6cd4a10e167203d1deb79abf60ee72599e97891b 2010-05-22 12:55:45 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Allow a maximum keyframe distance of 0, i.e. all frames are keyframes 2010-05-22 09:08:46 +0200 Sebastian Dröge * gst/ivfparse/gstivfparse.c: ivfparse: Send an initial NEWSEGMENT event 2010-05-22 09:02:26 +0200 Sebastian Dröge * configure.ac: * gst/ivfparse/Makefile.am: * gst/ivfparse/gstivfparse.c: ivfparse: Integrate into the build system 2010-05-22 08:56:34 +0200 Sebastian Dröge * gst/ivfparse/gstivfparse.c: * gst/ivfparse/gstivfparse.h: ivfparse: Add simple IVF parser This only supports VP8 so far. Fixes bug #619158. 2010-05-22 08:45:35 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Set decoder deadline from the QoS information 2010-06-01 10:18:06 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-zbar.xml: * win32/common/config.h: Back to development === release 0.10.19 === 2010-05-31 02:10:58 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-segmentclip.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-vp8.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-zbar.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.19 2010-05-31 02:10:08 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2010-05-31 01:52:17 +0100 Tim-Philipp Müller * docs/plugins/Makefile.am: docs: add some distclean rules to fix distcheck Stolen from gtk-doc.m4 and not found in gtk-doc-plugin.m4. We need them because we do have libs/interfaces stuff as well now (namely GstPhotography). 2010-05-31 00:33:16 +0100 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: fix build of gtk-doc scanner 2010-05-28 16:35:12 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Move debug output one line above where the packet is still valid 2010-05-28 15:53:30 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Correctly ignore non-frame packets from the encoder Fixes bug #619916. 2010-05-21 14:01:34 +0100 Tim-Philipp Müller * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: change profile and level strings to something nicer-looking This is more in line with what we do elsewhere, even if it doesn't resemble the offical abbreviations exactly. See #616078. 2010-05-25 16:37:58 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: plug a few memory leaks Fixes #619617. 2010-05-26 14:11:15 +0100 Tim-Philipp Müller * configure.ac: * win32/common/config.h: 0.10.18.3 pre-release 2010-05-26 14:03:20 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/camerabin.dot: * docs/plugins/camerabin.png: * docs/plugins/figures/Makefile.am: docs: fix dist/distcheck issues with camerabin figures Move figures into docs/plugins as well, to avoid issues with make dist and make distcheck (make distdir will not first descend into child directories). Out-of-source build seems to still work as well. 2010-05-26 12:36:21 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update translations 2010-05-26 11:55:47 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 357b0db to fd7ca04 2010-05-07 16:42:12 +0400 Руслан Ижбулатов * configure.ac: * ext/mplex/Makefile.am: mplex: add MPLEX_LDFLAGS variable So mingw32 users can hack around a compiler/linker bug. Fixes #617145 2010-05-25 00:27:17 +0100 Zaheer Abbas Merali * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: fix crash if downstream is unliked mpeg_packetizer_get_block() in some circumstances (here: if downstream was unlinked) returns a block but does not set the buffer causing mpegvideoparse_drain_avail() to cause invalid memory access. Fixes #619502. 2010-05-24 17:41:40 -0300 Thiago Santos * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-app.xml: * gst-libs/gst/app/.gitignore: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp-marshal.list: * gst-libs/gst/app/gstappbuffer.c: * gst-libs/gst/app/gstappbuffer.h: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst/app/Makefile.am: * gst/app/gstapp.c: Removing remaining gstapp* There are some remaining gstapp* living unlinked from the build scripts. Remove them. 2010-05-24 19:21:32 -0300 Thiago Santos * tests/check/Makefile.am: camerabin: Fix test build Adds missing -bad cflags to camerabin tests. 2010-05-23 19:17:41 +0100 Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: mpegtspacketizer: fix minor memory leak Don't leak language code. Fixes #619444. 2010-05-21 20:48:34 -0700 David Schleef * ext/cog/gstcogcolorspace.c: cogcolorspace: resample YUV->YUV conversions Fixes a segfault (bug #618044). 2010-04-08 16:05:11 +0100 Bastien Nocera * sys/vcd/vcdsrc.c: vcdsrc: change VCD URI handler to the DVD scheme The current URI parsing code doesn't allow setting the "device" from which the VCD should be read. Use the same structure as the DVD URI handling instead, so that devices can be passed in the URI, as well as track number. Up the rank of the VCD plugin so that it can be auto-plugged and used by Totem. https://bugzilla.gnome.org/show_bug.cgi?id=340986 2010-05-22 07:44:27 +0200 Sebastian Dröge * ext/vp8/gst/video/gstbasevideodecoder.c: basevideodecoder: Take the frame duration into account when calculating the earliest time This formula is used in many other elements too. Fixes bug #619318. 2010-05-22 07:35:01 +0200 Sebastian Dröge * ext/vp8/gst/video/gstbasevideodecoder.c: basevideodecoder: Reset QoS values when necessary 2010-05-22 09:35:24 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Use GST_VIDEO_CAPS_YUV(I420) instead of handwritten I420 caps for the pad template Fixes bug #619344. 2010-05-21 20:53:36 +0200 Philip Jägenstedt * ext/vp8/gst/video/gstbasevideodecoder.c: * ext/vp8/gst/video/gstbasevideodecoder.h: * ext/vp8/gst/video/gstbasevideoutils.h: * ext/vp8/gstvp8dec.c: vp8dec: drop late frames after decoding them This saves a memcpy, which is always something. 2010-05-21 21:28:29 +0200 Philip Jägenstedt * ext/vp8/gstvp8enc.c: vp8enc: threads property Increasing from 1 to 2 threads on an Thinkpad X60s decreased encode time in a test from ~24 s to ~19 s, so this is quite useful. Ideally we should let 0 be the default and automatically match the number of CPU cores (or something). 2010-05-21 15:17:46 +0200 Philip Jägenstedt * ext/vp8/gstvp8enc.c: vp8enc: add mode property to switch between CBR/VBR Always using CBR when bitrate is used isn't that great, VBR mode can produce meaningful results too. 2010-05-21 10:54:57 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Only enable postprocessing if the decoder supports it 2010-05-21 08:23:58 +0200 Philip Jägenstedt * ext/vp8/plugin.c: vp8: typo: s/HAVE_VP8_DECODER/HAVE_VP8_ENCODER/ Fixup for bug #619172. 2010-05-21 08:13:06 +0200 Philip Jägenstedt * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: vp8: move #ifdef HAVE_VP8_ENCODER/DECODER Otherwise we'll try including e.g. which doesn't exist. 2010-05-20 16:49:03 +0200 Philip Jägenstedt * configure.ac: vp8: link with -lm -lpthread when testing for vp8 encoder/decoder Fixup for bug #619172. 2010-05-20 20:06:09 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Write GStreamer element and version in the vorbiscomment vendor string 2010-05-20 16:49:03 +0200 Sebastian Dröge * configure.ac: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/vp8/plugin.c: vp8: Only enable the encoder or decoder if it's available in libvpx Fixes bug #619172. 2010-05-20 10:19:54 +0200 Philip Jägenstedt * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/vp8/plugin.c: vp8: exlcude dec/enc based on CONFIG_VP8_DECODER/ENCODER This may not be very autotoolish, but works with libvpx in the state that libvpx is actually in. Moved the debug init to the elements themselves to minimize amount of #ifdefs 2010-05-20 15:59:57 +0200 Mark Nauwelaerts * docs/plugins/Makefile.am: docs: fix html image location for out-of-source build 2010-05-20 09:24:53 +0200 Philip Jägenstedt * ext/vp8/gstvp8enc.c: vp8enc: Limit max-latency to 25 to match libvpx From libvpx/vp8/encoder/onyx_int.h: #define MAX_LAG_BUFFERS (CONFIG_REALTIME_ONLY? 1 : 25) While we don't need to be tied to what libvpx does internally, it doesn't make sense to pretend to support longer frame lags than are actually possible. 2010-05-20 09:56:25 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8utils.c: vp8: Undef HAVE_CONFIG_H before including libvpx headers A public libvpx header includes private headers if this is defined, causing compilation failures because the private headers are not installed of course. 2010-05-20 08:53:12 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Some more minor adjustments for the Ogg mapping 2010-05-19 17:12:55 -0700 David Schleef * configure.ac: * ext/audiofile/Makefile.am: * ext/dirac/Makefile.am: * ext/resindvd/Makefile.am: * ext/schroedinger/Makefile.am: * ext/sndfile/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/signalprocessor/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst/aiff/Makefile.am: * gst/asfmux/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/camerabin/Makefile.am: * gst/dvdspu/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/videomeasure/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * tests/examples/camerabin/Makefile.am: Split out GST_PLUGINS_BAD_CFLAGS from GST_CFLAGS Move include directives for gst-libs into GST_PLUGINS_BAD_CFLAGS, and fix all the Makefiles that use it. This is so that all the include directories are added in the proper order: first the directories in srcdir/builddir, then gst-plugins-base dirs, then gstreamer dirs. If the order is wrong, installed headers may be used instead of local headers and/or uninstalled headers from -base. 2010-05-19 23:02:19 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Fix memory leak 2010-05-19 21:34:42 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Adjust Ogg mapping for the changes 2010-05-12 18:50:34 -0700 David Schleef * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: qtmux: Add VP8 2010-05-19 18:12:18 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Add properties to control the VP8 decoder post processing feature This is disabled by default for now. 2010-05-19 17:16:54 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Rename keyframe-interval to max-keyframe-distance And use default settings for buffer sizes until we expose this somehow. 2010-05-19 17:13:17 +0200 Sebastian Dröge * ext/vp8/Makefile.am: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/vp8/gstvp8utils.c: * ext/vp8/gstvp8utils.h: vp8: Improve error handling and debug output 2010-05-19 14:46:48 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: vp8: Use correct strides and plane offsets for GStreamer 2010-05-18 14:47:54 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Implement GstTagSetter interface 2010-05-18 14:33:49 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Fix setting of the keyframe flag on encoded frames 2010-05-18 14:30:15 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Post an error message on the bus if encoder initialization fails 2010-05-18 14:28:55 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Fix memory leaks and fail if initializing the decoder fails 2010-05-18 02:44:54 -0700 David Schleef * ext/vp8/gstvp8enc.c: vp8enc: Set timebase Also misc cleanup. 2010-05-16 10:36:12 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Fix decoding of invisible frames 2010-05-14 14:26:34 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Update the latency when initializing the encoder 2010-05-14 14:02:53 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Correctly initialize stream info before peeking at the stream Otherwise peeking will fail and we'll get invalid values 2010-05-14 11:01:29 +0200 Sebastian Dröge * ext/vp8/gstvp8dec.c: vp8dec: Make sure to pass a keyframe as first frame to the decoder, copy output frames only once and require width/height/etc on the input caps 2010-05-14 10:30:18 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Add support for invisible frames and the Ogg mapping 2010-05-14 01:14:46 -0700 David Schleef * ext/vp8/gstvp8dec.c: vp8dec: Fix reset after seeking Also remove some unused code. 2010-05-13 21:19:32 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Set frame numbers as buffer offsets 2010-05-13 21:18:08 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Always get as many frames as possible from the encoder 2010-05-13 21:08:03 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Fill the oldest pending frame instead of the newest 2010-05-13 20:20:32 +0200 Sebastian Dröge * ext/vp8/gstvp8enc.c: vp8enc: Correctly set delta unit flag for non-keyframes 2010-05-13 01:04:04 -0700 David Schleef * configure.ac: * ext/Makefile.am: * ext/vp8/Makefile.am: * ext/vp8/gst/video/gstbasevideocodec.c: * ext/vp8/gst/video/gstbasevideocodec.h: * ext/vp8/gst/video/gstbasevideodecoder.c: * ext/vp8/gst/video/gstbasevideodecoder.h: * ext/vp8/gst/video/gstbasevideoencoder.c: * ext/vp8/gst/video/gstbasevideoencoder.h: * ext/vp8/gst/video/gstbasevideoparse.c: * ext/vp8/gst/video/gstbasevideoparse.h: * ext/vp8/gst/video/gstbasevideoutils.c: * ext/vp8/gst/video/gstbasevideoutils.h: * ext/vp8/gst/video/gstvideocompat.c: * ext/vp8/gst/video/gstvideocompat.h: * ext/vp8/gstvp8dec.c: * ext/vp8/gstvp8enc.c: * ext/vp8/plugin.c: vp8: Add encoder/decoder 2010-05-18 21:32:22 +0200 Alessandro Decina * gst/h264parse/gsth264parse.c: h264parse: fix wrong timestamps in some cases after seeking. Reset ->last_outbuf_dts on flush-stop. Fixes #619064. 2010-05-17 16:26:03 +0100 Zaheer Abbas Merali * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix memory corruption when parsing adaptation field 2010-05-17 11:52:45 +0100 Tim-Philipp Müller * ext/Makefile.am: * ext/polyp/Makefile.am: * ext/polyp/plugin.c: * ext/polyp/polypsink.c: * ext/polyp/polypsink.h: Remove unused polyp audio plugin code polypaudio was renamed to pulseaudio ages ago. Fixes #618867. 2010-05-15 15:37:59 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: resindvd: Check for dvdnav and dvdread libraries 2010-05-15 01:18:52 +0200 Benjamin Otte * tests/examples/camerabin/Makefile.am: examples: Don't install camerabin examples 2010-05-15 00:19:17 +0100 Tim-Philipp Müller * configure.ac: * win32/common/config.h: 0.10.18.2 pre-release 2010-05-14 18:31:52 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: docs: remove more cruft related to plugins that have been moved to -good 2010-05-14 18:25:13 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From 4d67bd6 to 357b0db 2010-05-14 16:53:20 +0100 Tim-Philipp Müller * configure.ac: configure: fix --disable-external 2010-05-14 01:55:41 +0100 Tim-Philipp Müller * Makefile.am: build: add old shave files in common to 'cruft' files 2010-05-13 14:42:48 +0200 Sebastian Dröge * gst/festival/gstfestival.c: festival: Only close the connection if it's opened 2010-05-13 14:41:08 +0200 Ivan Zderadicka * gst/festival/gstfestival.c: festival: Don't open an infinite number of connections to the server and close connections Fixes bug #618527. 2010-05-13 12:55:29 +0200 Wim Taymans * ext/jack/gstjackaudiosrc.c: jacksrc: make sure we always read nframes Error out when we are asked to read a different size that what was configured as the jack period size because that would mean something else is wrong. Fixes #618409 2010-05-11 17:56:31 -0400 Tristan Matthews * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackaudiosrc.h: jack: improve process_cb 2010-05-11 13:52:51 -0400 Joshua M. Doe * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0r.h: frei0r: Fix setting of boolean values Setting boolean type parameters from gst-launch failed because of improper handling of type conversions. Fixes bug #618388. 2010-05-12 13:00:16 +0200 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: mpegtsparse: parse TDT table in mpegts. Some tables in MPEG-TS do not have a crc in the spec, so also mpegtsparse is not calculating crc for sections with table_id 0x70 - 0x72 because they do not have a CRC in the spec. See EN300468. Parse Time and Date table and output bus message. 2010-05-11 16:03:26 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: remove oss4 strings 2010-05-11 15:33:54 +0100 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/inspect/plugin-oss4.xml: * gst-plugins-bad.spec.in: * po/POTFILES.in: * sys/Makefile.am: * sys/oss4/Makefile.am: * sys/oss4/oss4-audio.c: * sys/oss4/oss4-audio.h: * sys/oss4/oss4-mixer-enum.c: * sys/oss4/oss4-mixer-enum.h: * sys/oss4/oss4-mixer-slider.c: * sys/oss4/oss4-mixer-slider.h: * sys/oss4/oss4-mixer-switch.c: * sys/oss4/oss4-mixer-switch.h: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-mixer.h: * sys/oss4/oss4-property-probe.c: * sys/oss4/oss4-property-probe.h: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-sink.h: * sys/oss4/oss4-soundcard.h: * sys/oss4/oss4-source.c: * sys/oss4/oss4-source.h: * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/test-oss4.c: Remove oss4 plugin It has been moved to gst-plugins-good. See #614305. 2010-05-11 14:02:33 +0100 Tim-Philipp Müller * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-imagefreeze.xml: * gst/imagefreeze/Makefile.am: * gst/imagefreeze/gstimagefreeze.c: * gst/imagefreeze/gstimagefreeze.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/imagefreeze.c: Remove imagefreeze plugin/element. It has been moved to gst-plugins-good. See #613786. 2010-05-11 13:15:37 +0100 Tim-Philipp Müller * tests/check/pipelines/tagschecking.c: tests: don't fail tagschecking test if qtdemux is not available or too old 2010-05-11 13:08:41 +0100 Tim-Philipp Müller * Makefile.am: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-debugutilsbad.xml: * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstcapssetter.c: * gst/debugutils/gstcapssetter.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/capssetter.c: Remove capssetter element It has been moved to gst-plugins-good. See #617739. 2010-05-11 10:04:50 +0200 Sebastian Dröge * configure.ac: configure: Check for GTK+ 3.0 and if it's not available for GTK+ 2.0 2010-05-11 10:01:23 +0200 Sebastian Dröge * tests/examples/scaletempo/demo-gui.c: scaletempo: Don't use deprecated GTK symbols in the demo 2010-05-07 19:15:31 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Don't try to re-send the same event more than once 2010-05-07 22:53:17 +0300 Stefan Kost * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: jpegformat: make the intention of the elements more clear 2010-05-07 13:57:12 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: Revert "jifmux: Merge xmp and tagsetter tags." This reverts commit 4e5c4122349031264bf47e6af9338f8ae0236d5f. jifmux shouldn't be able to handle jif and shouldn't expect any xmp on its data. So, no need to handle them. 2010-05-07 12:42:23 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Merge xmp and tagsetter tags. When the current file already has tags, they shouldn't be ignored, parse them and merge with the tagsetter ones. 2010-05-07 11:07:34 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Reject buffers without caps jifmux expects whole jpeg pictures in buffers, so it should reject buffers without caps. 2010-05-07 10:59:22 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Be safe and check bytewriter returns Check GstByteWriter returns to know when recombining the image failed and log a warning. 2010-05-07 10:13:54 -0300 Thiago Santos * gst/jpegformat/gstjifmux.c: jifmux: Avoid adding 2 xmp packets jifmux was only appending a new xmp packet to the stream, it should replace if there is already one. 2010-05-07 10:58:49 +0300 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: add freeze to plugin docs 2010-05-07 08:12:43 +0200 Sebastian Dröge * examples/mpts_test2.c: * tests/examples/mpegtsmux/mpts_test2.c: mpegtsmux: Move multi-program muxing example at least to the correct directory But it doesn't work out of the box because of hardcoded paths. 2010-05-06 13:51:22 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimic: Push out newsegment from current timestamp if the incoming ts is valid Push out newsegment event with the timestamp from the incoming buffer if the incoming buffers have a valid timestamp but no valid newsegment event has been through. 2010-05-06 22:38:22 +1000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Apply caps to generated buffers Avoid the new warning from the core about not being able to apply caps to NAV packet buffers, where resindvdsrc holds a ref. 2010-05-06 13:12:32 +0200 Sebastian Dröge * gst/debugutils/gstcapssetter.c: * gst/debugutils/gstcapssetter.h: capssetter: Some minor cleanup 2010-05-06 09:51:15 +0200 Sebastian Dröge * ext/libmms/gstmms.c: mmssrc: Use the escaped location for the RTSP redirect message gst_uri_get_location() unescapes the location, which could result in an invalid RTSP URI. 2010-05-06 09:48:00 +0200 Sebastian Dröge * ext/libmms/gstmms.c: mmssrc: Check URI for validity and work around URI parsing bugs in libmms Fixes bug #617650. 2010-05-06 08:08:06 +0200 Sebastian Dröge * ext/libmms/gstmms.c: mmssrc: Some random cleanup 2010-05-05 12:23:56 +0200 Sebastian Dröge * gst/imagefreeze/gstimagefreeze.c: imagefreeze: Set fixed caps on the correct pad This makes the sink getcaps function actually used instead of using the fixed caps function for it. 2010-05-01 12:31:51 +0100 Tim-Philipp Müller * tests/examples/camerabin/.gitignore: Add new camerabin test binary to .gitignore 2010-05-01 15:00:27 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.h: vdpau: fix small typo 2010-05-01 14:58:30 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdp.h: vdpau: add leftover gstvdp.h 2010-05-01 14:45:04 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: fix crasher on setting properties before we're in READY 2010-04-29 22:43:59 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpoutputsrcpad.c: vdpau: remove debug code 2010-04-29 22:24:35 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideosrcpad.c: vdpau: small api cleanup merge gst_vdp_video_buffer_get_allowed_[video|yuv]_caps into gst_vdp_video_buffer_get_allowed_caps 2010-04-22 12:57:30 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpoutputsrcpad.h: vdpau: small fixes 2010-04-22 12:52:42 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpau.c: vdpau: add back gstvdpau.c 2010-03-17 21:02:07 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: vdpau: add gst_vdp_init function where we register types 2010-03-17 20:59:08 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpoutputbuffer.c: * sys/vdpau/gstvdpoutputbuffer.h: * sys/vdpau/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdpoutputsrcpad.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpau: add better error handling to GstVdpOutputSrcPad gst_vdp_output_src_pad_push, gst_vdp_output_src_pad_alloc_buffer and gst_vdp_output_src_pad_get_device now take a GError parameter to be able to signal errors to the caller 2009-11-28 23:58:57 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: vdpau: make GstVdpVideoSrcPad(Class)? private 2009-11-28 23:55:09 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: follow GstVdpVideoSrcPad changes 2009-11-28 23:52:15 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: vdpau: remove template-caps propery form GstVdpVideoSrcPad GstVdpVideoSrcPad now use the template property of GstPad instead. Also changed the _new function to be like gst_pad_new_from_template. 2010-05-01 01:16:50 +0400 Руслан Ижбулатов * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsrc.c: Fix warnings in directdrawsink and directsoundsrc Fixes #617331 2010-04-30 19:03:58 +0100 Tim-Philipp Müller * configure.ac: Bump core/base requirements to released versions 2010-04-29 16:33:44 +0200 Mark Nauwelaerts * gst/jpegformat/gstjpegparse.c: jpegparse: improve buffer scanning Specifically, when scanning for entropy data segment length and needing more data, do not rescan from start next time around, but resume at last position. See also #583047. 2010-04-27 10:48:32 -0400 Tristan Matthews * ext/jack/Makefile.am: * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackutil.c: * ext/jack/gstjackutil.h: jack: implement multichannel support correctly for jackaudiosrc Fixes parts of bug #616541. 2010-04-29 13:18:58 +0100 Brian Cameron * sys/oss4/oss4-sink.c: * sys/oss4/oss4-sink.h: oss4sink: implement GstStreamVolume interface and add mute and volume properties OSS4 supports per-stream volume control, so expose this using the right API, so that playbin2 and applications like totem can make use of it (instead of using a volume element for volume control). Fixes #614305. 2010-04-29 04:42:21 +0400 Руслан Ижбулатов * ext/kate/gstkateenc.c: * ext/kate/gstkatespu.c: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/timidity/gsttimidity.c: * gst/dccp/gstdccp.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/wininet/gstwininetsrc.c: Fix printf format strings for gcc 4.5 Done on Windows/MinGW. Fixes #617146 2010-04-27 11:21:16 +0300 Stefan Kost * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackringbuffer.h: jack: remove empty dispose and finalize methods 2010-04-27 10:59:00 +0300 Stefan Kost * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: jack: don't leak caps Add dispose methods to clear caps. 2010-04-27 10:34:24 +0300 Stefan Kost * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: jack: don't use GST_DEBUG_FUNCPTR for gobject vmethods 2010-04-26 15:06:09 +0300 Stefan Kost * ext/ladspa/gstladspa.c: * ext/lv2/gstlv2.c: ladspa,lv2: don't fail in plugin_init when having 0 elements If we fail, the plugin scanner will blacklist us. 2010-04-23 14:41:17 +0100 Tim-Philipp Müller * common: Automatic update of common submodule From fc85867 to 4d67bd6 2010-04-20 16:58:33 +0300 Lasse Laukkanen * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: add meaningful names for queue elements inside camerabin 2010-04-20 15:37:03 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: also set short configuration data in codec_data That is, header configuration may start at Video Object (startcode), rather than at Visual Object Sequence, which is catered for and parsed, so let's also take it as codec_data if no more available. Fixes (remainder of) #572551. 2010-04-19 19:04:24 -0300 Thiago Santos * gst/camerabin/gstcamerabin.c: camerabin: Avoid crashing when setting zoom in NULL Avoid setting zoom in NULL state because the source is not set yet and this leads to a crash. It is set on READY > PAUSED anyway. 2010-04-18 14:51:35 +0530 Arun Raghavan * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: Export profile and level in caps This exports profile and level in caps for MPEG 2 streams. https://bugzilla.gnome.org/show_bug.cgi?id=616078 2010-04-16 19:45:16 +0200 Sebastian Dröge * ext/resindvd/gstmpegdefs.h: resindvdbin: Use GST_FLOW_CUSTOM_SUCCESS instead of some integer Fixes compiler warnings with gcc 4.5. This is the same as commit 5a51dbd. 2010-04-16 19:43:59 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdefs.h: mpegdemux: Use GST_FLOW_CUSTOM_SUCCESS instead of some integer Fixes compiler warning with gcc 4.5. 2010-04-16 19:42:00 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: Revert "mpegpsdemux: Workaround new gcc 4.5 compiler warning" This reverts commit a331228eccfb8c66493fa3c8c49338c79cf4642c. 2010-04-16 19:41:46 +0200 Sebastian Dröge * ext/resindvd/gstmpegdemux.c: Revert "resindvdbin: Apply gcc 4.5 compiler warning workaround to the mpegpsdemux copy" This reverts commit 65b0f75d1b3119316b2dcaf5bff4dfd2bd824cc1. 2010-04-15 21:44:23 +0200 Sebastian Dröge * ext/metadata/metadataexif.c: metadata: Another workaround for enum values that are not actually member of the enum 2010-04-15 21:40:19 +0200 Sebastian Dröge * ext/resindvd/gstmpegdemux.c: resindvdbin: Apply gcc 4.5 compiler warning workaround to the mpegpsdemux copy Same as a331228eccfb8c66493fa3c8c49338c79cf4642c. 2010-04-15 21:38:54 +0200 Sebastian Dröge * sys/vdpau/gstvdpvideopostprocess.c: vdpau: Initialize possibly uninitialized variable 2010-04-15 21:35:15 +0200 Sebastian Dröge * sys/dvb/gstdvbsrc.c: dvbsrc: Actually compare the state and not the state change return from _get_state() 2010-04-15 21:26:45 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: Workaround new gcc 4.5 compiler warning gcc 4.5 warns when comparing some integer with an enum value, in the case of GstFlowReturn this is valid though. We should later add GST_FLOW_CUSTOM_OK1, GST_FLOW_CUSTOM_OK2, etc. after new core is released. 2010-04-15 20:50:58 +0200 Sebastian Dröge * gst/cdxaparse/gstcdxaparse.c: cdxaparse: Compare the correct variable to GST_SEEK_TYPE_SET 2010-04-15 07:24:16 -0300 Thiago Santos * configure.ac: configure: Drop -Wcast-align Commit message copied from core's commit from Benjamin Otte: 246f5dba96a5b50bb74621af67b30942cca72af5 Apparently gcc warns that GstMiniObject is not castable to GstEvent/Message/Buffer due to them containing 64bit variables, even though ARM hackers claim that those only need 4byte alignment. And as long as gcc behaves that way, this warning is not very useful. So we'll remove the warning until this problem is fixed. Fixes #615698 2010-04-15 13:20:42 +0300 Adam Endrodi * gst/camerabin/gstcamerabin.c: camerabin: reset software zooming if not set by the photo interface Otherwise both software (videoscal+videocrop) and hardware zooming would be used. 2010-04-14 16:42:57 -0700 David Schleef * gst/invtelecine/gstinvtelecine.c: invtelecine: Fix up element details 2010-04-14 16:32:34 -0700 David Schleef * Makefile.am: * configure.ac: * tools/Makefile.am: * tools/base.c: * tools/element-maker: * tools/gobject.c: * tools/gstaudiofilter.c: * tools/gstaudiosink.c: * tools/gstaudiosrc.c: * tools/gstbaseaudiosink.c: * tools/gstbaseaudiosrc.c: * tools/gstbasertpdepayload.c: * tools/gstbasertppayload.c: * tools/gstbasesink.c: * tools/gstbasesrc.c: * tools/gstbasetransform.c: * tools/gstcddabasesrc.c: * tools/gstelement.c: * tools/gstpushsrc.c: * tools/gsttagdemux.c: * tools/gstvideosink.c: tools: Add element-maker Add a script that creates elements based on any of the GStreamer base classes. It isn't very user friendly at the moment, one needs to edit the script to make it work properly. Each base class has a template file describing what to put into the constructed element. Eventually, these templates should be moved to reside with the base class source and installed to a well-known directory, where an installed script could find them. The template files use the .c ending so editors know they are C source, but gst-indent doesn't handle them correctly. So they need to be committed with -n. Ugh. I'll try to figure out a fix for that soon. 2010-04-13 20:32:50 -0300 Thiago Santos * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * gst/camerabin/gstcamerabinphotography.c: camerabin: Add video-capture-width/height/framerate properties Adds video-capture-width, video-capture-height and video-capture-framerate properties to allow applications to get/set those values. Getting was not possible before this patch, and setting was done through the set-video-resolution-fps action, which sets the properties and promptly resets the video source to use them. Fixes #614958 2010-04-13 18:33:40 -0300 Thiago Santos * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: Adds image-capture-width/height properties Adds image-capture-width and image-capture-height properties to camerabin, allowing the user to get/set them. Getting was not possible before and setting was done through the set-image-resolution action, which shouldn't now just set the properties. Fixes #614958 2010-04-13 15:59:04 -0300 Thiago Santos * gst-libs/gst/interfaces/photography.c: * gst/camerabin/gstcamerabin.c: camerabin: photography: Spring G_PARAM_STATIC_STRINGS Sprinkle some G_PARAM_STATIC_STRINGS over the properties in GstPhotography interface and in camerabin 2010-03-02 14:04:44 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * tests/check/elements/camerabin.c: camerabin: add block-after-capture property for viewfinder blocking Adds block-after-capture property to block running viewfinder after capturing. This property is useful if application wants to display capture preview and avoid running viewfinder on background. Based on a patch by Tommi Myöhänen 2010-02-09 14:52:49 +0200 Lasse Laukkanen * tests/examples/camerabin/gst-camerabin-test.c: examples: camerabin: add viewfinder-filter and filter caps properties Adds support for setting filter-caps and viewfinder-filter properties in the gst-camerabin-test application 2010-01-26 15:18:24 +0200 Tommi Myöhänen * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabinphotography.c: * tests/check/elements/camerabin.c: GstPhotography: Add flicker and focus mode settings to photography API Adds flicker and focus mode settings to photography API and also implement it in camerabin. 2009-11-26 12:12:06 +0200 Teemu Katajisto * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camerabin-test.c: camerabin: add gst-camerabin-test command line test tool gst-camerabin-test tool can be used to capture still images and video clips using camerabin element. 2009-11-16 15:02:03 +0200 Teemu Katajisto * gst/camerabin/camerabinimage.c: camerabin: do not set imagebin sinkpad twice If we already have a sinkpad, do not get a new one 2009-11-16 15:13:31 +0200 Teemu Katajisto * tests/check/elements/camerabin.c: camerabin: update unit tests Add testing of setting and getting of camerabin property elements and add post-processing elements to pipeline. 2009-11-13 16:42:44 +0200 Teemu Katajisto * tests/check/elements/camerabin.c: camerabin: add unit tests for setting different flags when capturing Adds some tests that use flags for capturing to asure it works with flags set or not. 2009-10-28 17:37:56 +0200 Teemu Katajisto * tests/check/elements/camerabin.c: camerabin: add paused video capture file validity check in unit test Also check that the file captured in the paused capture unit test is playable. 2009-10-19 14:31:54 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * tests/check/elements/camerabin.c: camerabin: add viewfinder-filter property Adds a new property called viewfinder-filter to camerabin. This property is used to add a filter to process the video flow right before the viewfinder sink. Also updates test to check property exists. 2009-10-21 18:02:27 +0300 Lasse Laukkanen * tests/check/elements/camerabin.c: camerabin: set videotestsrc pattern to white in unit test Lower complexity of encoding and videotestsrc redrawing in order to prevent unit test timeouts. 2009-10-14 14:01:34 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: proxy video source photography interface property notify signals If photography interface properties change in video source, notify the application by emitting notify for respective camerabin properties. 2009-10-14 14:42:01 +0300 Teemu Katajisto * tests/check/elements/camerabin.c: camerabin: New unit tests Add unit tests for camerabin properties setting and getting, adds one for video capturing with pause. Also does some c99 variable declaration fixes. 2009-10-14 14:01:05 +0300 Shenghua Liu * tests/check/elements/camerabin.c: camerabin: update unit test to have test on recording snapshot preview Adds a small check to verify that the preview image message is being sent on video recording. 2009-09-21 17:47:20 +0300 Lasse Laukkanen * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabinphotography.c: camerabin: add api to query supported image capture resolution Adds new property 'image-capture-supported-caps' to GstPhotography to query the supported image capture caps. Also implement it in camerabin. 2009-07-02 18:03:57 +0300 René Stadler * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinimage.h: * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: rename function and variable names, update documentation Get rid of user_* prefix internally, use app_* instead. 2009-09-16 15:11:49 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: add video-source-filter property Add video-source-filter property that can be used to inject application specific gstreamer element to camerabin pipeline. The video-source-filter element will process all frames coming from video source. One could add image analyzers to collect information about the stream, or add image enhancers to improve capture quality, for example. 2010-04-12 18:07:29 +0200 Edward Hervey * tests/check/elements/aacparse.c: * tests/check/elements/amrparse.c: check: Don't re-declare 'GList *buffers' in the tests It's an external which lives in gstcheck.c. Redeclaring it makes some compilers/architectures think the 'buffers' in the individual tests are a different symbol... and therefore we end up comparing holodecks with oranges. 2010-02-18 18:19:50 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: don't try adapting image capture resolution if no source-resize flag If source-resize flag is disabled then set resolution to image capture caps according to capture resolution video source element produces. Otherwise we write wrong resolution to image metadata. 2010-01-05 15:13:02 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: Fix capturing flag handling after image has been captured Make sure capturing flag is unset and image-captured message is sent before sending eos event to image bin and saving the image to a file. 2009-11-04 13:24:13 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: fix setting filter-caps property in NULL state Split _set_capsfilter_caps() into two parts so that we can call one part regardless of the element state. 2009-09-11 09:38:51 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: improve image done signal emission Use g_idle_add_full() with G_PRIORITY_HIGH to emit image done signal, g_idle_add() is more likely to starve with higher priority events. 2010-04-12 12:42:06 +0200 Edward Hervey * configure.ac: configure: Remove -Wundef flag Same fix as for #615161 2010-04-12 09:16:19 +0200 Sebastian Dröge * sys/vdpau/Makefile.am: vdpau: Correctly link to the local libgstvdp-0.10 by using the libtool archive 2010-04-09 09:14:02 -0300 Thiago Santos * tests/check/Makefile.am: tests: camerabin: enable camerabin tests Re-enabling camerabin tests, they are passing. 2010-04-09 11:22:55 +0200 Sebastian Dröge * common: Automatic update of common submodule From fdf023d to fc85867 2010-04-08 12:00:10 +0200 Edward Hervey * tests/check/elements/jpegparse.c: tests: Fix compilation error on macosx 2010-04-08 10:45:33 +0100 Tim-Philipp Müller * sys/oss4/oss4-audio.c: oss4: 8-bit PCM audio caps don't need an endianness field 2010-04-08 10:40:02 +0100 Tim-Philipp Müller * sys/oss4/oss4-audio.c: oss4: don't iterate the formats table twice for each entry When iterating the formats table, we can just pass the whole entry to our helper function, which avoids iterating the table again to find the entry structure from the passed format id. 2010-03-30 11:43:04 +0100 Tim-Philipp Müller * sys/oss4/oss4-audio.c: oss4: also accept formats not natively supported Also accept formats that are not natively supported by the hardware, OSS4 can convert them internally. List the native formats first in the caps though, to express our preference for the native formats. We need this in order to support the case properly where the audio hardware supports only e.g. little endian PCM, but the host is big endian, since many audio elements only support native endianness and make the reasonable assumption that any audiosink will be able to handle audio in native endianness. Based on patch by Jerry Tan Fixes #614317. 2010-04-08 08:48:35 +0100 Tim-Philipp Müller * ext/soundtouch/Makefile.am: soundtouch: use $(LIBM) in Makefile.am instead of -lm 2010-04-08 01:42:23 +0100 Tim-Philipp Müller * gst/invtelecine/gstinvtelecine.c: invtelecine: fix print format in debug message 2010-04-08 01:41:31 +0100 Tim-Philipp Müller * ext/assrender/gstassrender.c: assrender: pass constant string as format string to printf Fix compiler warning about non-string literal being passed as first argument to print. 2010-03-26 18:56:49 +0000 Arun Raghavan * gst/audioparsers/gstbaseparse.c: baseparse: Don't emit bitrate tags too early We wait to parse a minimum number of frames (10, arbitrarily) before emiting bitrate tags so that our early estimates are not wildly inaccurate for streams that start with a silence. If the stream ends before that, we just emit the tags anyway. While it _would_ be nicer to be specify the threshold to start pushing the tags in terms of duration, this would introduce more complexity than this merits. https://bugzilla.gnome.org/show_bug.cgi?id=614991 2010-04-07 11:22:43 +0200 Benjamin Otte * ext/metadata/metadataexif.c: metadata: fix crash when converting units x/y-resolution are fractions, so setting them using float values is not a good idea. https://bugzilla.redhat.com/show_bug.cgi?id=577655 2010-04-05 10:33:26 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Add support for BlueRay style DTS Fixes bug #614259. 2010-04-04 20:23:00 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Add support for the two DTS HD stream types Fixes bug #614259. 2010-04-02 19:52:25 +0200 Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: mpegtspacketizer: Additionally use the CRC to check if tables are duplicates The current code just uses table id, subtable extension and version number to check if the section has been seen before. However, this comparison is not sufficient, causing actually new tables being dismissed. Fixes bug #614479. 2010-04-02 19:48:56 +0200 Sebastian Dröge * gst/h264parse/gsth264parse.c: h264parse: Correctly clean up internal state for reuse Fixes bug #614591. 2010-04-02 19:19:23 +0200 Sebastian Dröge * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Make sure that the buffer metadata is writable before setting caps Fixes bug #614349. 2010-04-02 19:09:40 +0200 Sebastian Dröge * sys/dvb/gstdvbsrc.c: dvbsrc: Use uint instead of int for frequency and symbol-rate properties The kernel API specifies them as uint32 and frequencies/symbol-rates greater than 2^31 are actually needed sometimes. Fixes bug #614475. 2010-03-30 01:17:15 +0100 Tim-Philipp Müller * common: * ext/Makefile.am: * gst/Makefile.am: * sys/Makefile.am: build: build plugins and examples in parallel where possible, if make -jN is used 2010-03-30 01:16:32 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: update for string changes and new comment 2010-03-30 01:14:58 +0100 Tim-Philipp Müller * sys/oss4/oss4-mixer.c: oss4: add comment for translators Not that that will make these strings much better. Also remove i18n marker where it doesn't make sense. 2010-03-27 09:46:30 +0000 Tim-Philipp Müller * gst/qtmux/gstqtmuxplugin.c: qtmux: use GStreamer package name and origin in the plugin info 2010-03-29 14:49:06 +0200 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: fix writing NALU prefix for byte-stream output format Specifically, input may already be in byte-stream format, so sync bytes should not be misinterpreted as NALU size. 2010-03-29 10:00:57 +1100 Jan Schmidt * ext/spc/gstspc.h: openspc: Fix build warning Add a prototype for gst_spc_dec_get_type 2010-03-26 18:58:35 +0100 Sebastian Dröge * gst/audioparsers/gstflacparse.c: * gst/audioparsers/gstflacparse.h: flacparse: Optionally check the overall frame checksums too before accepting a frame as valid This is optional because it's a quite expensive operation and it's very unlikely that a non-frame is detected as frame after the header CRC check and checking all bits for valid values. The overall frame checksums are mainly useful to detect inconsistencies in the encoded payload. 2010-03-26 18:42:28 +0100 Sebastian Dröge * gst/audioparsers/gstflacparse.c: flacparse: Check the CRC-8 of the headers before accepting a frame as valid This makes false-positives during seeking much less likely and detection of them much faster. 2010-03-26 18:20:24 +0100 Sebastian Dröge * gst/audioparsers/gstbaseparse.c: baseparse: Set the last stop to the buffer starttime if the duration is invalid ...instead of not setting it at all. 2010-03-26 18:19:00 +0100 Joshua M. Doe * gst/audioparsers/gstbaseparse.c: baseparse: Send NEWSEGMENT event with correct start and position Instead of taking the last stop (which could be buffer endtime instead of starttime) always take the buffer starttime. Fixes bug #614016. 2010-03-26 16:49:01 +0000 Arun Raghavan * gst/audioparsers/gstflacparse.c: flacparse: Fix buffer refcount issue When called from the GST_FLAC_PARSE_STATE_HEADERS case, gst_flac_parse_hand_headers() does a gst_buffer_set_caps() on a buffer with refcount > 1. This change handles this case by making the buffer metadata_Writable. https://bugzilla.gnome.org/show_bug.cgi?id=614037 2010-03-26 12:04:48 +0000 Tim-Philipp Müller * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: add missing space to debug message 2010-03-26 08:41:46 +0000 Tim-Philipp Müller * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: don't use function that doesn't exist Fixes the build. 2010-03-25 23:48:09 +0200 Stefan Kost * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: divx: add const to fix compiler warnings 2010-03-25 23:30:29 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: add boolean return to _process Avoid trying to push results if processing failed anyway. 2010-03-25 23:28:25 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: remove useless g_assert g_malloc and co would terminate when out of memory. No need to check after it. 2010-03-25 23:24:36 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: add more logging 2010-03-25 23:12:37 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: register function pointers just once Avoid re-registering those for each wrapped ladpsa/lv2 element. 2010-03-25 23:07:46 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: add rate to caps 2010-03-25 23:04:41 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: rename log category to be less ambigous 2010-03-25 22:59:18 +0200 Stefan Kost * ext/lv2/README: lv2: add more examples 2010-03-25 22:58:47 +0200 Stefan Kost * gst/dtmf/gstdtmfdetect.c: dtmfdetect: if we tell that we handle gap flags, then do so 2010-03-25 22:55:32 +0200 Stefan Kost * gst/dtmf/gstdtmfdetect.c: dtmfdetect: use glib types 2010-03-25 22:54:49 +0200 Stefan Kost * gst/dtmf/gstdtmfdetect.c: dtmfdetect: fix classification 2010-03-25 22:53:20 +0200 Stefan Kost * gst/dtmf/gstdtmfdetect.c: dtmfdetect: reformat message docs Use a list like in other element docs as an untweaked docbook table look ugly. 2010-03-25 17:09:17 +0000 Tim-Philipp Müller * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: audioparsers: remove unused GstBaseParseClassPrivate structure 2010-03-25 12:55:02 +0000 Arun Raghavan * gst/audioparsers/gstflacparse.c: flacparse: Make bitrate estimation more accurate This implements the get_frame_overhead() vfunc so that baseparse can make more accurate bitrate estimates. 2010-03-25 11:48:46 +0000 Arun Raghavan * gst/audioparsers/gstaacparse.c: aacparse: Fix bitrate calculation This patch adds the get_frame_overhead() vfunc so that baseparse can accurately calculate the min/avg/max bitrates for aacparse. Note: The bitrate was being incorrectly calculated for ADTS streams (it's not in the header as the code suggests). 2010-03-25 11:22:58 +0000 Arun Raghavan * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: audioparsers: Add bitrate calculation to baseparse This makes baseparse keep a running average of the stream bitrate, as well as the minimum and maximum bitrates. Subclasses can override a vfunc to make sure that per-frame overhead from the container is not accounted for in the bitrate calculation. We take care not to override the bitrate, minimum-bitrate, and maximum-bitrate tags if they have been posted upstream. We also rate-limit the emission of bitrate so that it is only triggered by a change of >10 kbps. 2010-03-23 17:34:30 -0300 Thiago Santos * tests/check/pipelines/tagschecking.c: tests: tagschecking: New tags tests Adds new tags checking tests. 2010-03-25 00:20:54 +0000 Tim-Philipp Müller * gst/qtmux/gstqtmux.c: qtmux: init debug category before using it 2010-03-24 18:54:57 +0100 Edward Hervey * common: Automatic update of common submodule From 55cd514 to c1d07dd 2010-03-24 17:05:14 +0100 Andoni Morales * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowvideosrc: Add support for YUY2 input format Fix bug #613708 2010-03-24 16:15:37 +0200 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.types: * gst-libs/gst/interfaces/photography.c: docs: add photography iface to docs We normaly have separate libs docs, not done becasue of lazyness here yet. 2010-03-24 16:05:20 +0200 Stefan Kost * gst/jpegformat/gstjpegparse.c: jpegformat: add blank line to fix generated xml 2010-03-24 15:59:53 +0200 Stefan Kost * ext/jack/gstjackaudiosrc.c: jack: fix element name in section doc blob 2010-03-24 15:05:50 +0100 Benjamin Otte * ext/modplug/gstmodplug.cc: modplug: Define WORDS_BIGENDIAN to avoid undefined warning https://bugzilla.gnome.org/show_bug.cgi?id=613795 2010-03-24 12:16:07 +0100 Benjamin Otte * configure.ac: Use pkgconfig to detect dvdnav The previously used dvdnav-config script was broken in a lot of distros. 2010-03-24 00:27:34 +0000 Tim-Philipp Müller * ext/kate/gstkatetiger.c: kate: fix yet another compiler warning 2010-03-23 19:56:48 -0400 Tristan Matthews * gst/pnm/gstpnmdec.c: * sys/osxvideo/osxvideosrc.c: * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/codecmapping.c: * sys/qtwrapper/qtutils.c: * sys/qtwrapper/qtutils.h: osx: more compiler warning fixes Avoid new warnings. Fixes #613758. 2010-03-23 14:15:53 -0300 Thiago Santos * tests/check/elements/faac.c: tests: faac: Fix build Fixes build of faac due to functions not being static nor having being declared in headers. (No previous prototype error) Probably due to added -Wmissing-prototypes 2010-03-23 11:10:05 +0100 Sebastian Dröge * ext/amrwbenc/gstamrwbenc.c: amrwbenc: Fix compiler warning 2010-03-23 09:14:03 +0000 Tim-Philipp Müller * ext/cog/cog.orc: cog: touch cog.orc to force regeneration of cogorc.[ch] .. with new Makefile.am rules, which should fix the build without the need to do a 'manual' make clean after updating. 2010-03-23 01:41:31 +0100 Benjamin Otte * sys/wininet/gstwininetsrc.c: wininet: Fix warnings 2010-03-23 01:30:54 +0100 Benjamin Otte * sys/directdraw/gstdirectdrawsink.c: directdraw: Fix warnings 2010-03-23 01:15:27 +0100 Benjamin Otte * configure.ac: Remove -Wundef for Windows Windows headers tend to check _MSC_VER uncondtionally in some places, but use #ifdef _MSC_VER in other places. 2010-03-23 01:14:33 +0100 Benjamin Otte * configure.ac: Add a bunch of warning flags None of them trigger any warning 2010-03-23 01:11:42 +0100 Benjamin Otte * gst/aiff/aiffmux.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/dccp/gstdccp.c: Fixes for -Waggregate-return The flag wasn't added due to libexif using aggregate return values. 2010-03-22 18:02:39 +0200 Stefan Kost * gst-libs/gst/gettext.h: * gst/videomeasure/gstvideomeasure.c: i18n: build fixes: #if -> #ifdef for ENABLE_NLS 2010-03-22 18:01:27 +0200 Stefan Kost * gst-libs/gst/gst-i18n-plugin.h: i18n: fix the build Don't include locale.h which we include in gettext.h if needed. Guard the include like we do in the simillar headers in core. 2010-03-22 16:56:03 +0100 Benjamin Otte * configure.ac: * ext/jack/gstjackaudiosrc.c: * ext/neon/gstneonhttpsrc.c: * ext/timidity/gstwildmidi.c: * gst/librfb/d3des.c: * gst/mpegdemux/gstmpegdesc.c: * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegpsmux/psmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/qtmux/atoms.c: * tests/check/elements/amrparse.c: * tests/check/elements/capssetter.c: * tests/check/generic/states.c: * tests/examples/camerabin/gst-camera.c: * tests/examples/directfb/gstdfb.c: * tests/icles/metadata_editor.c: Add -Wold-style-definition and fix the warnings 2010-03-22 16:21:31 +0100 Benjamin Otte * configure.ac: * gst/mxf/mxfmux.c: Add -Wformat-nonliteral -Wformat-security flags and fix the warnings 2010-03-22 16:13:12 +0100 Benjamin Otte * sys/oss4/oss4-mixer.c: oss4: Refactor code to make it look more modern A side effect is that it passes -Wformat-nonliteral and doesn't read invalid memory in some cases, like when the mixer track contains a % sign or there is a number but not a known mixer name. 2010-03-22 14:09:24 +0100 Benjamin Otte * sys/oss4/oss4-mixer.c: oss4: Avoid g_quark_to_string (g_quark_from_string ()) madness We to the strdup inside gst_oss4_mixer_control_get_translated_name() instead of in the only caller. 2010-03-22 13:50:30 +0100 Sebastian Dröge * ext/ladspa/gstladspa.c: ladspa: Fix compiler warnings 2010-02-02 15:49:29 +0530 Arun Raghavan * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: Parse bitrate and emit as tag This patch picks up the bitrate for the stream from the MPEG sequence header and emits it as a tag on the source pad. Fixes #599298. 2010-03-22 12:38:02 +0000 Tim-Philipp Müller * ext/soundtouch/gstbpmdetect.cc: soundtouch: build fixes: #if -> #ifdef 2010-03-22 13:16:33 +0100 Benjamin Otte * configure.ac: * ext/cdaudio/gstcdaudio.c: * ext/directfb/dfbvideosink.c: * ext/jp2k/gstjasperdec.c: * ext/jp2k/gstjasperenc.c: * ext/libmms/gstmms.c: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatamux.c: * ext/mythtv/gstmythtvsrc.c: * ext/neon/gstneonhttpsrc.c: * ext/resindvd/resindvdbin.c: * ext/timidity/gsttimidity.c: * ext/xvid/gstxvid.c: * ext/xvid/gstxvid.h: * gst/adpcmenc/adpcmenc.c: * gst/dataurisrc/gstdataurisrc.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/festival/gstfestival.h: * gst/id3tag/id3tag.c: * gst/mpegdemux/mpegtspacketizer.c: * gst/mxf/mxftypes.c: * gst/qtmux/atoms.c: * gst/qtmux/gstqtmuxmap.h: * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: * gst/sdp/gstsdpdemux.c: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: * sys/vcd/vcdsrc.c: * tests/check/elements/asfmux.c: * tests/check/elements/autoconvert.c: * tests/check/elements/mplex.c: * tests/check/elements/qtmux.c: * tests/check/elements/selector.c: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camera.h: * tests/examples/scaletempo/demo-gui.c: * tests/examples/scaletempo/demo-main.c: Add -Wwrite-strings and fix its warnings 2010-03-22 12:30:01 +0100 Benjamin Otte * configure.ac: * ext/ladspa/gstladspa.c: * ext/mpeg2enc/gstmpeg2encoptions.cc: * gst/nsf/fmopl.h: * tests/check/pipelines/metadata.c: Add -Wundef and fix the warnings 2010-03-22 12:03:56 +0100 Benjamin Otte * tests/check/pipelines/.gitignore: Update .gitignore 2010-03-22 12:02:16 +0100 Benjamin Otte * configure.ac: * ext/apexsink/gstapexsink.c: * ext/cdaudio/gstcdaudio.c: * ext/dc1394/gstdc1394.c: * ext/jp2k/gstjasperdec.c: * ext/jp2k/gstjasperenc.c: * ext/kate/gstkatetag.c: * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatamux.c: * ext/metadata/metadataparseutil.h: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst/camerabin/gstcamerabin.c: * gst/cdxaparse/gstcdxaparse.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/freeze/gstfreeze.c: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: * gst/librfb/gstrfbsrc.c: * gst/mpegdemux/mpegtspacketizer.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/sdp/gstsdpdemux.c: * gst/subenc/gstsrtenc.c: Add -Wredundant-decls flag and fix warnings from it 2010-03-22 08:47:57 +0100 Sebastian Dröge * ext/gme/gstgme.h: gme: Fix compiler warning 2010-03-22 08:45:27 +0100 Sebastian Dröge * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpoutputbuffer.c: * sys/vdpau/gstvdpoutputbuffer.h: * sys/vdpau/gstvdpoutputsrcpad.h: vdpau: Fix compiler warnings 2010-03-21 23:10:08 +0100 Benjamin Otte * ext/cog/Makefile.am: * ext/cog/cogvirtframe.c: * ext/cog/generate_tables.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogutils.c: orc: Fix warnings 2010-03-21 23:00:48 +0100 Benjamin Otte * tests/examples/scaletempo/demo-gui.c: examples: Fix warnings 2010-03-21 22:48:13 +0100 Benjamin Otte * sys/directdraw/gstdirectdrawsink.c: directdraw: Fix warnings 2010-03-21 22:46:00 +0100 Benjamin Otte * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camera.h: gst-camera: Add a header declaring the functions from the ui file 2010-03-21 22:10:47 +0100 Benjamin Otte * tests/icles/Makefile.am: * tests/icles/metadata_editor.h: tests: Add file I forgot to check in 2010-03-21 22:09:20 +0100 Benjamin Otte * sys/acmmp3dec/acmmp3dec.c: acmmp3dec: fix warnings 2010-03-21 21:53:44 +0100 Benjamin Otte * sys/acmenc/acmenc.c: Fix acmenc for warning flags 2010-03-21 21:39:18 +0100 Benjamin Otte * configure.ac: * ext/cdaudio/gstcdaudio.c: * ext/dc1394/gstdc1394.c: * ext/dirac/gstdiracenc.cc: * ext/flite/gstflitetestsrc.c: * ext/jack/gstjack.h: * ext/metadata/gstmetadata.c: * ext/metadata/gstmetadatademux.h: * ext/metadata/gstmetadatamux.h: * ext/mythtv/gstmythtvsrc.c: * ext/resindvd/resindvdsrc.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: * ext/schroedinger/gstschroutils.c: * ext/sdl/sdlaudiosink.c: * gst-libs/gst/video/gstbasevideoutils.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/aiff/aiffmux.c: * gst/asfmux/gstasfmux.c: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: * gst/bayer/gstbayer2rgb.c: * gst/dccp/gstdccp.c: * gst/dtmf/gstrtpdtmfdepay.h: * gst/dvdspu/gstdvdspu.c: * gst/invtelecine/gstinvtelecine.c: * gst/legacyresample/resample.c: * gst/legacyresample/resample.h: * gst/librfb/rfbdecoder.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.h: * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegvideoparse.h: * gst/mve/gstmvedemux.c: * gst/mve/gstmvedemux.h: * gst/mve/gstmvemux.c: * gst/mve/gstmvemux.h: * gst/mve/mveaudiodec.c: * gst/mve/mveaudioenc.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmpeg.c: * gst/nsf/nes_apu.c: * gst/nsf/nsf.c: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/atomsrecovery.c: * gst/qtmux/descriptors.c: * gst/sdp/gstsdpdemux.c: * gst/siren/common.c: * gst/siren/common.h: * gst/siren/dct4.c: * gst/siren/dct4.h: * gst/siren/huffman.c: * gst/siren/huffman.h: * gst/siren/rmlt.c: * gst/siren/rmlt.h: * gst/tta/gstttadec.c: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/vmnc/vmncdec.c: * sys/dvb/cam.c: * sys/dvb/cam.h: * sys/dvb/camapplicationinfo.c: * sys/dvb/camapplicationinfo.h: * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camresourcemanager.c: * sys/dvb/camresourcemanager.h: * sys/dvb/camsession.c: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camtransport.c: * sys/dvb/dvbbasebin.h: * sys/dvb/parsechannels.c: * sys/oss4/oss4-mixer.c: * sys/vcd/vcdsrc.h: * tests/check/elements/aacparse.c: * tests/check/elements/amrparse.c: * tests/check/elements/asfmux.c: * tests/check/elements/assrender.c: * tests/check/elements/autoconvert.c: * tests/check/elements/camerabin.c: * tests/check/elements/faad.c: * tests/check/elements/imagefreeze.c: * tests/check/elements/jpegparse.c: * tests/check/elements/mpeg2enc.c: * tests/check/elements/mplex.c: * tests/check/elements/ofa.c: * tests/check/elements/qtmux.c: * tests/check/elements/rtpmux.c: * tests/check/elements/selector.c: * tests/check/elements/timidity.c: * tests/check/generic/states.c: * tests/check/pipelines/metadata.c: * tests/check/pipelines/tagschecking.c: * tests/icles/metadata_editor.c: Add -Wmissing-declarations -Wmissing-prototypes to configure flags And fix all warnings 2010-03-21 21:37:37 +0100 Benjamin Otte * gst/siren/common.c: * gst/siren/dct4.c: * gst/siren/decoder.c: * gst/siren/encoder.c: * gst/siren/huffman.c: * gst/siren/rmlt.c: siren: Run gst-indent script Includes running dos2unix on decoder.c 2010-03-21 21:29:47 +0100 Benjamin Otte * tests/check/elements/kate.c: tests: Fix kate test It was failing due to the new buffer_metadata_writable checks added to the core recently. 2010-03-21 18:59:30 +0100 Benjamin Otte * gst/legacyresample/Makefile.am: * gst/legacyresample/resample_chunk.c: legacyresample: remove unused file 2010-03-21 17:54:26 +0100 Benjamin Otte * configure.ac: configure: s/GST_CVS/GST_GIT/ 2010-03-19 16:47:15 +0100 Sebastian Dröge * ext/cog/generate_tables.c: cog: Generate correct YUV->RGB tables Fixes: #613332. 2010-03-19 11:10:40 +0100 Wim Taymans * gst/sdp/gstsdpdemux.c: sdpdemux: disable loop and auto multicast join Disable loopback of packets. Disable autojoin of multicast groups in the sink because the source already does that on the shared socket. 2010-03-18 17:30:26 +0100 Benjamin Otte * ext/alsaspdif/alsaspdifsink.c: * ext/amrwbenc/gstamrwbenc.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.c: * ext/audiofile/gstafsrc.h: * ext/audioresample/gstaudioresample.c: * ext/cdaudio/gstcdaudio.c: * ext/celt/gstceltenc.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogfilter.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: * ext/dc1394/gstdc1394.c: * ext/dirac/gstdiracdec.cc: * ext/dirac/gstdiracenc.cc: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/flite/gstflitetestsrc.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/hermes/gsthermescolorspace.c: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: * ext/jp2k/gstjasperdec.c: * ext/jp2k/gstjasperenc.c: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/ladspa/gstladspa.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: * ext/lv2/gstlv2.c: * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatamux.c: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/nas/nassink.c: * ext/neon/gstneonhttpsrc.c: * ext/polyp/polypsink.c: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnaudiomunge.c: * ext/resindvd/rsnparsetter.c: * ext/resindvd/rsnstreamselector.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsrc.c: * ext/spc/gstspc.c: * ext/swfdec/gstswfdec.c: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkinenc.c: * ext/theora/theoradec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * ext/zbar/gstzbar.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst/adpcmdec/adpcmdec.c: * gst/adpcmenc/adpcmenc.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: * gst/audiobuffer/gstaudioringbuffer.c: * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstamrparse.c: * gst/bayer/gstbayer2rgb.c: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: * gst/cdxaparse/gstcdxaparse.c: * gst/chart/gstchart.c: * gst/colorspace/gstcolorspace.c: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/gstcapssetter.c: * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/filter/gstiir.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: * gst/h264parse/gsth264parse.c: * gst/hdvparse/gsthdvparse.c: * gst/invtelecine/gstinvtelecine.c: * gst/legacyresample/gstlegacyresample.c: * gst/librfb/gstrfbsrc.c: * gst/liveadder/liveadder.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/mpegtsparse.c: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegvideoparse/mpegvideoparse.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvemux.c: * gst/nsf/gstnsf.c: * gst/nuvdemux/gstnuvdemux.c: * gst/overlay/gstoverlay.c: * gst/passthrough/gstpassthrough.c: * gst/pcapparse/gstpcapparse.c: * gst/playondemand/gstplayondemand.c: * gst/qtmux/gstqtmoovrecover.c: * gst/qtmux/gstqtmux.c: * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/scaletempo/gstscaletempo.c: * gst/sdp/gstsdpdemux.c: * gst/selector/gstinputselector.c: * gst/selector/gstoutputselector.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: * gst/smooth/gstsmooth.c: * gst/smoothwave/gstsmoothwave.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: * gst/valve/gstvalve.c: * gst/vbidec/gstvbidec.c: * gst/videodrop/gstvideodrop.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * gst/vmnc/vmncdec.c: * sys/acmenc/acmenc.c: * sys/acmmp3dec/acmmp3dec.c: * sys/cdrom/gstcdplayer.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsrc.c: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dvb/dvbbasebin.c: * sys/dvb/gstdvbsrc.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/fbdev/gstfbdevsink.c: * sys/osxvideo/osxvideosrc.c: * sys/qcam/gstqcamsrc.c: * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/videodecoders.c: * sys/vcd/vcdsrc.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisrc.c: * sys/winks/gstksvideosrc.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 17:11:59 +0100 Benjamin Otte * gst/virtualdub/LICENSE: * gst/virtualdub/Makefile.am: * gst/virtualdub/gstvirtualdub.c: * gst/virtualdub/gstvirtualdub.h: * gst/virtualdub/gstxsharpen.c: * gst/virtualdub/virtualdub.vcproj: virtualdub: Remove THe plugin is so hopelessly outdated, it's just not worth keeping. 2010-03-18 17:04:59 +0100 Benjamin Otte * ext/xine/Makefile.am: * ext/xine/gstxine.h: * ext/xine/xine.c: * ext/xine/xineaudiodec.c: * ext/xine/xineaudiosink.c: * ext/xine/xinecaps.c: * ext/xine/xineinput.c: Remove xine plugin code The plugin is unmaintained (even worse than Xine ;)) 2010-03-18 16:17:10 +0100 Benjamin Otte * tests/examples/gob/Makefile.am: * tests/examples/gob/gst-identity2.gob: Remove gob examples They were outdated and wouldn't have compiled anymore. 2010-03-17 11:30:34 -0700 David Schleef * ext/cog/cogvirtframe.c: cog: Fix off-by-one in 444->420 conversion Fixes #613160. 2010-03-17 14:29:31 +0300 Руслан Ижбулатов * ext/cog/gstlogoinsert.c: cog: Use "(png_infopp) NULL" instead of png_infopp_NULL 2010-03-17 14:23:41 +0300 Руслан Ижбулатов * ext/cog/gstlogoinsert.c: cog: Use png_get_io_ptr() instead of accessing io_ptr directly 2010-03-17 14:21:53 +0300 Руслан Ижбулатов * configure.ac: cog: Check for libpng >= 1.2 instead of libpng12 2010-03-16 23:46:04 +0200 Stefan Kost * docs/plugins/inspect/plugin-xdgmime.xml: docs: the xdgmime plugin was merged into typefinders 2010-03-16 23:43:02 +0200 Stefan Kost * ext/neon/gstneonhttpsrc.c: neon,dvd: also use g_value_set_static_string() here for static strings 2010-03-15 10:13:19 +0000 Tim-Philipp Müller * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix minor memory leak in property getter Don't leak the string returned by g_strjoinv(). While we're at it, use GString to assemble the string to be returned. 2010-03-15 09:24:17 +0000 Tim-Philipp Müller * sys/dvb/gstdvbsrc.c: dvbsrc: use g_value_set_static_string() where possible 2010-03-15 12:17:37 -0700 David Schleef * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: cog: disable code that causes an orcc crash Revert this after orc release and version bump. 2010-03-15 11:54:02 +0100 Sebastian Dröge * gst/imagefreeze/gstimagefreeze.c: imagefreeze: Only start the task after a seek if a buffer was received already 2010-03-15 01:46:45 -0700 David Schleef * ext/cog/gstlogoinsert.c: cog: comment on previous bad commit message The recent commit "logoinsert checkpoint FIXME" should actually read: Fix logoinsert variable names. 2010-03-15 01:26:25 -0700 David Schleef * ext/cog/cog.orc: * ext/cog/cogframe.c: * ext/cog/cogframe.h: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: cog: implement chroma-site Determine chroma site position from the caps and use it when upsampling/downsampling chroma. 2010-03-14 18:56:06 -0700 David Schleef * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/generate_tables.c: * ext/cog/gstcogcolorspace.c: cogcolorspace: implement color-matrix handling 2009-10-08 15:18:41 -0700 David Schleef * ext/cog/gstlogoinsert.c: cog: logoinsert checkpoint FIXME 2009-10-30 15:35:36 -0700 David Schleef * ext/cog/cogframe.c: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: cog: Add n_taps to chroma upsampling 2010-03-13 18:54:05 +0000 Tim-Philipp Müller * gst/asfmux/gstasfmux.c: asfmux: fix typo in property description 2010-03-13 06:03:32 +0100 Raimo Järvi * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: Update caps when the sequence header changes Fixes bug #612687. 2010-03-12 19:30:48 +0100 Mark Nauwelaerts * gst/camerabin/gstcamerabin.c: camerabin: activate video bin before feeding data to it Fixes #612615. 2010-03-12 11:28:51 -0300 Thiago Santos * tests/check/pipelines/tagschecking.c: tests: tagschecking: Improvements and new geo-location tests Makes some improvements to tagschecking.c, making it use fakesrc instead of videotestsrc and allowing to set input caps so that more muxers can be used. Previously we could only use those that accepted raw video caps. Also adds some tests for geo-location tags 2010-03-12 10:53:36 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: Use xmp on mp4mux and gppmux too Do not restrict xmp to qtmux, but use it too on mp4mux and gppmux 2010-03-12 13:59:12 +0100 Edward Hervey * common: Automatic update of common submodule From e272f71 to 55cd514 2010-03-12 09:52:57 +0100 Edward Hervey * gst/jpegformat/gstjpegparse.c: jpegparse: Fix unitialized variable on macosx 10.5 2010-03-11 21:32:28 +0200 Stefan Kost * configure.ac: * gst/jpegformat/Makefile.am: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: jpegformat: add xmp reading and writing support Bump needed base version for new xmp helper library. Use xmp helpers in jpegparse and jifmux. 2010-03-12 08:23:46 +0000 Sebastian Dröge * configure.ac: configure: Fix merge mistake 2010-02-28 19:41:02 +0100 Sebastian Dröge * configure.ac: * gst/segmentclip/Makefile.am: * gst/segmentclip/gstaudiosegmentclip.c: * gst/segmentclip/gstaudiosegmentclip.h: * gst/segmentclip/gstsegmentclip.c: * gst/segmentclip/gstsegmentclip.h: * gst/segmentclip/gstvideosegmentclip.c: * gst/segmentclip/gstvideosegmentclip.h: * gst/segmentclip/plugin.c: segmentclip: Add audio/video buffer segment clip elements These elements clip the audio/video buffers to the configured segment for the case when the upstream elements don't do this correctly. 2010-02-28 16:08:14 +0100 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/imagefreeze.c: imagefreeze: Add some unit tests 2010-02-28 16:04:31 +0100 Sebastian Dröge * gst/imagefreeze/gstimagefreeze.c: imagefreeze: Set undefined framerate in sink getcaps function 2010-02-28 15:02:02 +0100 Sebastian Dröge * gst/imagefreeze/gstimagefreeze.c: imagefreeze: Implement reverse playback and set buffer offsets 2010-02-27 17:37:22 +0100 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-imagefreeze.xml: imagefreeze: Add to the docs 2010-02-27 17:33:05 +0100 Sebastian Dröge * configure.ac: * gst/imagefreeze/Makefile.am: * gst/imagefreeze/gstimagefreeze.c: * gst/imagefreeze/gstimagefreeze.h: imagefreeze: Add still frame stream generator element 2010-03-05 13:33:37 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/pipelines/tagschecking.c: check: tagschecking: tests for tags serialization in muxers Adds a check unit test that aims to test tags serialization and deserialization consistency (in muxers). It provides a basic function that allows one to easily specify tags, a muxer and a demuxer and a test will be done to check if the tags have been consistently muxed and demuxed 2010-02-22 16:45:34 -0300 Thiago Santos * gst/qtmux/Makefile.am: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: qtmux: add xmp support Adds xmp metatags adding to qtmux. Fixes #609539 2010-03-11 09:29:53 -0300 Thiago Santos * configure.ac: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadataxmp.c: metadata: Remove _XMP_GEO_* tags Removes GST_TAG_XMP_GEO_LOCATION_COUNTRY, GST_TAG_XMP_GEO_LOCATION_CITY and GST_TAG_XMP_GEO_LOCATION_SUBLOCATION from metadata's private tags as those are now present at -core tags. Fixes #612410 2010-03-11 17:17:15 +0000 Tim-Philipp Müller * gst/qtmux/gstqtmoovrecover.c: qtmux: fix GST_ELEMENT_ERROR usage We need to pass (NULL) rather than NULL for empty arguments. 2010-03-11 17:58:25 +0100 Edward Hervey * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjpegparse.c: jpegformat: Fix unitialized variables 2010-03-10 11:50:47 -0600 Rob Clark * gst/dccp/gstdccp.c: fix compile error with trace macro Note that this one isn't a problem with normal trace macros, but causes problems with some replacement trace macros that I use, which expect the format string to be appendable (ie "foo "fmt in the macro) https://bugzilla.gnome.org/show_bug.cgi?id=612454 2010-03-10 11:49:22 -0600 Rob Clark * ext/alsaspdif/alsaspdifsink.c: fix trace macro typo https://bugzilla.gnome.org/show_bug.cgi?id=612454 2010-03-10 10:26:27 -0600 Rob Clark * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: fix compile error gst/mpeg4videoparse/mpeg4videoparse.c:689: warning: comparison is always true due to limited range of data type https://bugzilla.gnome.org/show_bug.cgi?id=612454 2010-03-10 10:23:23 -0600 Rob Clark * gst/qtmux/gstqtmoovrecover.c: qtmux: fix compile error gst/qtmux/gstqtmoovrecover.c:268: warning: format not a string literal and no format arguments https://bugzilla.gnome.org/show_bug.cgi?id=612454 2010-03-11 11:21:10 +0100 Benjamin Otte * common: Automatic update of common submodule From df8a7c8 to e272f71 2010-03-11 11:29:16 +0200 Stefan Kost * ext/metadata/gstbasemetadata.c: * ext/metadata/gstmetadatamux.c: * ext/metadata/metadataexif.c: * ext/metadata/metadataiptc.c: * ext/metadata/metadatatypes.c: * ext/metadata/metadataxmp.c: metadata: don't check for NULL when calling g_free. g_free does the check already. Also small code logic cleanup and whitespace fix. 2010-03-11 11:28:14 +0200 Stefan Kost * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatamux.c: metadata: remove empty setter/getter vmethod implementations 2010-03-11 11:14:53 +0200 Stefan Kost * gst/invtelecine/gstinvtelecine.c: invtelecine: inlcude stdlib.h for abs() 2010-02-17 13:11:18 +0200 Stefan Kost * ext/metadata/TODO: metadata: update bug status 2009-09-08 09:13:07 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: refactor cropping and adapting captured images 2009-09-10 13:41:40 +0300 Teemu Katajisto * gst/camerabin/camerabingeneral.c: * gst/camerabin/gstcamerabin.c: camerabin: fix NULL -> READY state change failure handling. In some error situations the NULL -> READY state change failed and camerabin elements were not destroyed. 2010-02-17 11:51:26 +0200 Lasse Laukkanen * gst/camerabin/camerabinpreview.c: camerabin: don't use gst_bus_poll() when creating preview image Avoid using gst_bus_poll() as the docs recommend. Use gst_bus_timed_pop_filtered() instead. 2010-03-10 21:01:20 +0100 Benjamin Otte * configure.ac: Update for recent changes to common submodule This just replaces every "$ERROR_CFLAGS" usage with a usage of "$WARNING_CFLAGS $ERROR_CFLAGS" to get the same functionality as previously. Actually using that separation will happen later. 2010-03-10 21:52:20 +0100 Benjamin Otte * common: Automatic update of common submodule From 9720a7d to df8a7c8 2010-03-10 20:44:07 +0100 Benjamin Otte * common: Automatic update of common submodule From 0b6e072 to 9720a7d 2010-03-10 16:10:06 +0100 Benjamin Otte * common: Automatic update of common submodule From 7cc5eb4 to 0b6e072 2010-03-10 11:33:10 +0100 Benjamin Otte * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-apexsink.xml: * docs/plugins/inspect/plugin-invtelecine.xml: * docs/plugins/inspect/plugin-nsf.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-vmnc.xml: docs: Update to match recent commits 2010-03-10 01:10:27 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 7aa65b5 to 7cc5eb4 2009-12-08 16:36:16 -0500 Tristan Matthews * ext/dc1394/gstdc1394.c: dc1394: list valid iso-speeds in help and validate speeds in set_property. 2009-12-08 16:05:14 -0500 Tristan Matthews * ext/dc1394/gstdc1394.c: dc1394: check iso-speed values in set_property, ignore if invalid 2009-12-08 15:37:03 -0500 Tristan Matthews * ext/dc1394/gstdc1394.c: * ext/dc1394/gstdc1394.h: dc1394: add iso-speed property Add iso-speed property which allows for higher bandwidth dc video. Automatically set to b-mode as needed. Fixes #603745. 2010-03-09 19:48:44 +0100 Víctor Manuel Jáquez Leal * gst/selector/Makefile.am: inputselector: fix the LDFLAGS 2010-03-09 21:38:59 +0000 Sebastian Dröge * common: Automatic update of common submodule From 44ecce7 to 7aa65b5 2010-03-09 21:26:14 +0000 Sebastian Dröge * ext/schroedinger/gstschroenc.c: schroenc: Only enable framestats code with schro >= 1.0.9 2010-02-28 10:42:38 +0100 Sebastian Dröge * gst/frei0r/Makefile.am: * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: frei0r: Sync properties to the controller if one was set 2010-02-27 19:08:49 +0100 Sebastian Dröge * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: frei0r: Protect set/get property and processing functions from concurrent access The frei0r documentation says that these functions must not be called on the same instance from different threads at the same time. All other functions are guaranteed to be threadsafe. 2010-02-26 16:40:25 +0100 Sebastian Dröge * ext/cog/Makefile.am: * pkgconfig/Makefile.am: * tests/icles/Makefile.am: build: Make some more rules silent if requested 2010-02-26 15:45:57 +0100 Sebastian Dröge * configure.ac: configure: Use automake 1.11 silent rules instead of shave if available This makes sure that we use something that is still maintained and also brings back libtool 1.5 support. 2010-02-26 15:25:57 +0100 Sebastian Dröge * tests/check/elements/assrender.c: assrender: Add test for correct I420 rendering 2010-03-09 12:33:37 -0800 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: Add frame-stats message 2010-03-08 21:00:21 -0800 David Schleef * configure.ac: * gst/invtelecine/Makefile.am: * gst/invtelecine/gstinvtelecine.c: invtelecine: Add invtelecine element Automatic inverse telecine element. Right now, it clumsily attempts to rearrange video fields into frames that don't have combing effects, and only works with 60i/24p content at 720x480. Later, it will handle other pulldown variations, change caps and smooth timestamps appropriately. 2010-03-01 13:49:39 +0100 Benjamin Otte * ext/apexsink/gstapexplugin.c: apexsink: Use "apexsink" for plugin name 2010-03-01 13:47:32 +0100 Benjamin Otte * gst/vmnc/vmncdec.c: wmnc: Update description 2010-03-01 13:22:06 +0100 Benjamin Otte * gst/nuvdemux/gstnuvdemux.c: nuvdemux: Update plugin description 2010-03-01 13:18:59 +0100 Benjamin Otte * gst/nsf/gstnsf.c: nsf: Name the plugin nsf, not nsfdec The plugin in gstnsf.so should be named nsf, not nsfdec. 2010-03-08 12:23:48 -0300 Tiago Katcipis * ext/soundtouch/gstpitch.cc: soundtouch: removing very annoying g_print() in pitch element Fixes #612208. 2010-03-09 17:50:29 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * win32/common/config.h: Back to development === release 0.10.18 === 2010-03-06 01:49:26 +0000 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.18 2010-03-06 01:39:58 +0000 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2010-03-03 23:42:28 +0000 Tim-Philipp Müller * configure.ac: * win32/common/config.h: 0.10.17.4 pre-release 2010-02-22 19:38:15 -0300 Thiago Santos * gst/qtmux/gstqtmuxmap.c: qtmux: Rename 'avc-sample' to 'avc' in caps Fixes #606662 2010-02-22 19:24:06 -0300 Thiago Santos * gst/h264parse/gsth264parse.c: h264parse: Replace 'avc-sample' with 'avc' in caps Fixes #606662 2010-02-28 23:14:36 +0000 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins.args: docs: remove bits that refer to plugins that have been moved 2010-02-26 18:06:24 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Drop text buffers before the segment start and clip running time end to the segment stop 2010-02-27 11:23:14 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Consume text buffers if they're to be displayed in the next 500ms Instead of only consuming them if they're to be display now. Consuming them then might make following buffers with the same timestamp to be too late. 2010-02-26 11:50:25 -0800 Michael Smith * gst/qtmux/gstqtmux.c: qtmux: Take lock around use of (non-threadsafe) tagsetter interface. 2010-02-24 02:03:11 +0000 Tim-Philipp Müller * configure.ac: * win32/common/config.h: 0.10.17.3 pre-release 2010-02-23 18:16:48 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Protect libass structures from concurrent access from multiple threads Fixes bug #608751. 2010-02-23 17:28:00 +0100 Sebastian Dröge * configure.ac: configure: Call $PKG_CONFIG instead of pkg-config to fix cross compilation 2010-02-22 16:51:00 -0300 Thiago Santos * gst/qtmux/atoms.c: qtmux: write all udta children atoms UDTA might have META and other children atoms together, write them all. 2010-02-22 10:48:11 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: Use internal sink pads list Due to GstCollectPads sink pads list being not reliably iteratable (when not inside the collected function) this patch adds a sink pads list to qtmux to be used when iterating sink pads on reset function. Fixes #609055 2010-02-21 19:57:19 +0000 Tim-Philipp Müller * ext/faad/Makefile.am: faad: fix Makefile.am some more FAAD_CFLAGS and _LIBS should be at the end, and -lgstaudio-0.10 should go right after GST_PLUGINS_BASE_LIBS. 2010-02-19 15:17:11 +0100 Sebastian Dröge * ext/faad/Makefile.am: faad: Link with libgstbase for GstAdapter Also fix order of CFLAGS and LIBS 2010-02-19 08:58:33 +0000 Tim-Philipp Müller * configure.ac: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.17.2 pre-release 2010-02-19 08:58:06 +0000 Tim-Philipp Müller * tests/icles/.gitignore: .gitignore: ignore generated cog files 2010-02-19 10:32:33 +0000 Tim-Philipp Müller * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: fix NULL ref and error handling if no video sink is found If no video sink is set and autovideosink is not available for some reason, post a proper error message on the bus when failing to change state, and don't try to gst_object_ref() NULL pointers. Fixes generic/states unit test when distchecking. 2009-12-10 16:30:26 -0500 Stephen Depooter * ext/celt/gstceltenc.c: celt: fix compile against earlier CELT versions Check the existence of the CELT_SET_COMPLEXITY symbol before trying to use it. Fixes compilation against libcelt 0.4.0. Fixes #604311. 2010-02-17 12:34:38 +0200 Stefan Kost * gst/jpegformat/gstjpegparse.c: jpegparse: return offset+length from _get_image_length(). _find_end_marker() find the position of the marker. EOI has a fixed length of 2 bytes that where missing. Fixes #608998 2010-02-17 01:34:45 +0000 Tim-Philipp Müller * tests/check/elements/.gitignore: .gitignore: ignore new faad unit test 2010-02-17 01:29:40 +0000 Tim-Philipp Müller * gst/jpegformat/gstjpegparse.c: jpegparse: fix invalid memory access See bug #608998. 2010-02-16 22:23:45 +0100 Sebastian Dröge * tests/check/elements/assrender.c: assrender: Fix unit test to actually check for everything to work correctly 2010-02-16 22:22:39 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: If no codec data is set, still initialize the ass track 2010-02-16 21:41:38 +0100 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/assrender.c: assrender: Add simple unit test This renders a test string on top of a red video stream and checks if the text is only rendered at the correct timestamps. 2010-02-16 20:38:31 +0100 Sebastian Dröge * tests/check/elements/ofa.c: ofa: Fix warning message parsing 2010-02-16 16:49:39 +0000 Tim-Philipp Müller * ext/faad/gstfaad.c: faad: guard against codec_data field with a NULL buffer in caps Fixes #609478. 2010-02-16 17:13:09 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: qtmux: prevent leaking hdlr name 2010-02-16 16:24:12 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: qtmux: support for ALAC Fixes #580731. 2010-02-16 14:19:04 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: qtmux: refactor building stsd entry 'wave' extension 2010-02-16 10:00:50 +0000 Tim-Philipp Müller * gst-plugins-bad.spec.in: Update .spec file: shapewipe and ivorbisdec have been moved elsewhere 2010-02-16 09:49:05 +0200 Stefan Kost * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: docs: unify doc style Use gtkdoc syntax and add short desc for the examples. 2010-02-15 23:43:05 +0000 Tim-Philipp Müller * configure.ac: configure: fix up GST_CXXFLAGS properly We don't want C specific flags in GST_CXXFLAGS, so base it on the GST_CFLAGS that only contains the pkg-config CFLAGS but none of the GST_OPTION_CFLAGS. Also, we only need the local includes once. 2010-02-15 23:17:57 +0200 Stefan Kost * configure.ac: configure: base GST_CXXFLAGS on --cflags from pkg-config pkg-config sets GST_CFLAGS and GST_LIBS. We need to use CFLAGS as a starting point for for both C and CXX settings. 2010-02-15 12:57:55 +0000 Tim-Philipp Müller * ext/cog/gstcogmse.c: cogmse: fix printf format and a few ref leaks 2010-02-15 12:46:25 +0000 Tim-Philipp Müller * ext/Makefile.am: * m4/Makefile.am: * m4/gst-ivorbis.m4: build: remove somem more ivorbis cruft 2010-02-15 11:55:07 +0100 Mark Nauwelaerts * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-tremor.xml: * ext/Makefile.am: * ext/ivorbis/Makefile.am: * ext/ivorbis/vorbis.c: * ext/ivorbis/vorbisdec.c: * ext/ivorbis/vorbisdec.h: * ext/ivorbis/vorbisenc.h: * ext/ivorbis/vorbisfile.c: Moved 'ivorbis(dec)' from -bad to -base. Fixes #609063. 2010-02-15 09:36:05 +0100 Edward Hervey * gst/hdvparse/gsthdvparse.c: hdvparse: Fix field error. Spotted by Burkhard Plaum 2010-02-15 01:26:09 +0000 Tim-Philipp Müller * tests/check/elements/jpegparse.c: tests: fix caps leak in jpegparse unit test 2010-02-13 15:28:39 +0000 Tim-Philipp Müller * configure.ac: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/dataurisrc.c: tests: add unit test for dataurisrc Requires fixes from core git, so bump core requirement to git as well. 2010-02-14 23:18:12 +0100 Sebastian Dröge * common: Automatic update of common submodule From 96dc793 to 44ecce7 2010-02-14 15:22:05 +0100 Benjamin Otte * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camera.ui: examples: Call gst_ensure_native_window() for gst-camera Fixes spurious SEGVs due to multithreading conflicts in client-side-window Gtk versions. 2010-02-14 13:43:04 +0100 Benjamin Otte * tests/examples/camerabin/gst-camera.c: examples: Use gtk functions instead of libX11 functions in camerabin Gets around the need to link to libX11 directly and provides the same functionality. To boost, it's more portable, too! 2010-02-14 13:41:57 +0100 Benjamin Otte * tests/examples/directfb/Makefile.am: examples: Properly link to libm 2010-02-13 11:00:03 +0000 Tim-Philipp Müller * Makefile.am: Add shapewipe examples directory to CRUFT_DIRS 2010-02-12 11:35:02 +0100 Sebastian Dröge * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-jpegformat.xml: * docs/plugins/inspect/plugin-lv2.xml: * docs/plugins/inspect/plugin-qtmux.xml: docs: Update documentation 2010-02-12 11:21:23 +0100 Sebastian Dröge * Makefile.am: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-shapewipe.xml: * gst/shapewipe/Makefile.am: * gst/shapewipe/gstshapewipe.c: * gst/shapewipe/gstshapewipe.h: * tests/check/Makefile.am: * tests/check/elements/shapewipe.c: * tests/examples/Makefile.am: * tests/examples/shapewipe/Makefile.am: * tests/examples/shapewipe/shapewipe-example.c: Moved 'shapewipe' from -bad to -good Fixes bug #584536. 2010-02-11 21:57:49 +0100 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/faad/gstfaad.c: faad: add documentation 2010-02-11 20:37:55 +0100 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/faad.c: faad: add unit test 2010-02-11 20:21:38 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: fix documentation typo 2010-02-11 20:21:17 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: remove some redundant code ... and move and modify some debug logging. 2010-02-10 23:29:23 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: drain sync pending frames when appropriate 2010-02-10 23:14:48 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: send tags exactly once when init'ed 2010-02-10 23:14:21 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: refactor some partial stream reset 2010-02-10 22:14:07 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: correctly estimate average bps Count consumed bytes and corresponding duration atomically, rather than letting bytecount run ahead of what has been decoded. Fixes #440476. 2010-02-10 21:49:00 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: give up after some number of decoding failures 2010-02-10 21:37:12 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: do not attempt to sync indefinitely 2010-02-10 21:12:07 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: use adapter rather than temporary buffer 2010-02-10 19:14:19 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: objectify debug statements and adjust some levels 2010-02-10 18:46:16 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: refactor src caps (re)negotiation and reflow some error exits 2010-02-09 23:35:20 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: remove defunct and otherwise obsolete code 2010-02-09 23:25:13 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: faad: refactor reset 2010-02-09 22:46:32 +0100 Mark Nauwelaerts * ext/faad/gstfaad.c: * ext/faad/gstfaad.h: faad: use an in struct segment rather than a separately allocated one 2010-02-10 10:52:53 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Preserve the input color values in all cases 2010-02-10 10:50:49 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Scale mask alpha values by the source alpha values 2010-02-10 10:42:32 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Fix ARGB processing 2010-02-10 10:34:24 +0100 Sebastian Dröge * tests/examples/shapewipe/shapewipe-example.c: shapewipe: Print some more details on error/warning messages 2010-02-09 15:20:36 +0100 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Never flush more bytes than available This could happen if the input doesn't contain any MPEG TS data and the complete adapter content should be skipped. 2010-02-08 11:51:52 -0300 Thiago Santos * gst/qtmux/atomsrecovery.c: qtmux: atomsrecovery: Fix compilation problem Fixes a compilation error due to unused function result. 2010-02-08 08:26:33 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Improve/add debug output 2010-02-08 08:20:44 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Always hold the mask mutex before signalling the GCond 2010-02-08 08:19:48 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Move chain function error cases at the end of the function and add useful debug output 2010-02-08 08:12:11 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: * gst/shapewipe/gstshapewipe.h: shapewipe: Fix race condition during shutdown that can lead to a deadlock 2010-02-08 08:11:33 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Drop mask buffer on FLUSH events 2010-02-08 08:09:55 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: * gst/shapewipe/gstshapewipe.h: shapewipe: Update copyright year 2010-02-08 08:08:44 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Don't reset properties when going PAUSED->READY Also use defines for the default values of the properties. 2010-02-07 11:09:45 +0100 David Hoyt * ext/rsvg/gstrsvgdec.c: rsvgdec: fix compilation with MSVC MSVC doesn't like #if #else within statements. Fixes #609215. 2010-01-26 17:08:04 +0000 Vincent Penquerc'h * ext/kate/gstkatedec.c: katedec: don't escape special characters Don't escape special characters, as we'll send the buffer as text/plain rather than text/x-pango-markup; this avoids e.g. quotes from appearing as " in the rendered subtitles. See bug #600929. 2010-01-24 11:14:15 +0000 Vincent Penquerc'h * ext/kate/gstkatetiger.c: kate: rename the tiger overlay element's sink pad to 'subtitle_sink' As this is what playbin2 expects. See bug #600929. 2010-02-07 10:19:06 +0100 Tim-Philipp Müller * gst/jpegformat/gstjpegformat.c: jpegparse: lower rank to NONE so it is not autoplugged for decoding This element is too new and too untested to have it autoplugged. 2010-02-05 17:25:59 +0100 Sebastian Dröge * tests/check/elements/jpegparse.c: jpegparse: Fix unit test The parsed buffers have a framerate of 1/1. Fixes bug #608998. 2010-02-05 10:18:39 +0100 Mark Nauwelaerts * ext/metadata/metadatatypes.c: metadata: append_sorted should really append sorted ... which means that identical offset_orig should preserve the order in which they are appended. 2010-02-05 10:16:27 +0100 Mark Nauwelaerts * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatamux.c: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparseutil.c: metadata: use a non-DEFAULT proper debug category in helper files 2010-02-04 19:45:42 +0100 Julien Moutte * gst/mpegtsmux/mpegtsmux_h264.c: mpegtsmux: Fix a potential unref of a NULL pointer. At first iteration we don't have any cached SPS/PPS buffer to free. 2010-02-02 11:43:22 -0500 Marc-André Lureau * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: add PAT/PMT in streamheader The check for PAT/PMT buffers was suggested by Zaheer Abbas Merali. https://bugzilla.gnome.org/show_bug.cgi?id=608896 2010-02-03 13:31:22 +0100 Marc-André Lureau * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmuxcommon.h: mpegtsmux: add pat-interval and pmt-interval properties https://bugzilla.gnome.org/show_bug.cgi?id=608896 2010-02-03 13:41:27 +0100 Marc-André Lureau * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: fix PAT/PMT insertion frequency The current code is comparing timestamps with different clock. Let's use only the clock for PTS values. Also rename frequency to interval, to avoid confusion. And remove documentation about value 0, which won't work like documented. https://bugzilla.gnome.org/show_bug.cgi?id=608896 2010-01-27 16:29:00 +0100 Marc-André Lureau * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: marking non-delta unit, including pre-sections This patch address the issue observed with KF timestamps and delta flag. When a section is appended before the keyframe, it is not marked as non-delta. It's preferable to mark the first buffer non-delta. This patch also simplify the initial patch written by thomas, since it does not clutter tsmux/ with a delta flag passed around only for GStreamer convenience. https://bugzilla.gnome.org/show_bug.cgi?id=604908 2010-02-03 15:07:08 +0200 Stefan Kost * gst/jpegformat/Makefile.am: * gst/jpegformat/gstjifmux.c: * gst/jpegformat/gstjifmux.h: * gst/jpegformat/gstjpegformat.c: * gst/jpegformat/gstjpegformat.h: jpegformat: add a basic jifmuxer The new element can chop and reassemble the markers. I implements the tagsetter and for now can serialize some tags to jpeg comments. 2009-12-12 16:07:15 -0300 Thiago Santos * gst/qtmux/Makefile.am: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/atomsrecovery.c: * gst/qtmux/atomsrecovery.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmoovrecover.c: * gst/qtmux/gstqtmoovrecover.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxplugin.c: qtmux: Adds moov recovery feature Adds a new property to qtmux that sets a path to a file to write and update data about the moov atom (that is not writen till the end of the file). If the pipeline/app crashes during execution it might be possible to recover the movie using the qtmoovrecover element. qtmoovrecover is an element that is also a pipeline. It is not meant to be used with other elements (it has no pads). It is merely a tool/utilitary to recover unfinished qtmux files. Fixes #601576 2010-02-02 11:22:06 +0200 Stefan Kost * gst/jpegformat/gstjpegformat.h: * gst/jpegformat/gstjpegparse.c: jpegparse: improve parsing Handle more app maker. Print app marker names to debug log. Remember last_marker when parsing to avoid reparsing from the very begin. 2010-02-02 12:23:24 +0100 Julien Moutte * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/mpegtsmux_h264.c: * gst/mpegtsmux/mpegtsmux_h264.h: mpegtsmux: generate SPS/PPS header once and fix overflow Some H264 packets can be as small as 5 bytes for repeated frames. In such a situation the output buffer size was not big enough (5*2) to fit the SPS/PPS header and the start codes. This corrupts the ES stream. We now generate the SPS/PPS only once which is much more optimal and we now know the size of the header to calculate the output buffer size more safely. 2010-02-02 01:44:20 +0100 Grigori Goronzy * ext/assrender/gstassrender.c: assrender: instruct libass to use light autohinting Fixes bug #608753. 2010-02-02 08:53:53 +0100 Eric Appleman * ext/assrender/gstassrender.c: assrender: Don't scan current working directory recursively for fonts This can take a very long time and also libass will overwrite files if there's an embedded font with the same filename as an existing file. Fixes bug #575878 and #608706. 2010-02-01 16:26:36 -0800 David Hoyt * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: don't crash on invalid AM_MEDIA_TYPE 2010-01-27 19:06:53 -0800 Michael Smith * gst/qtmux/atoms.c: qtmux: for fixed-sample size streams (PCM audio, etc) don't allocate an enormous buffer that we then won't use at all. 2010-01-27 15:37:37 -0800 Michael Smith * gst/qtmux/gstqtmux.c: qtmux: handle muxing adpcm correctly. 2010-01-22 13:36:04 -0800 Michael Smith * gst/qtmux/atoms.c: qtmux: Set the mdia hdlr name field to what quicktime uses. Fix writing it since it's not null-terminated. Improves compatibility with some hardware players. 2010-01-22 13:30:07 -0800 Michael Smith * gst/qtmux/gstqtmux.c: qtmux: endianness in gstreamer is an int, not boolean. 2010-01-16 13:17:08 -0800 Michael Smith * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: parse more forms of codec_data 2010-02-01 22:37:39 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: code cleanups More logging and comments. Rename some vars for consistency. Fully init port struct. 2010-02-01 22:32:32 +0200 Stefan Kost * ext/ladspa/gstladspa.c: * ext/lv2/gstlv2.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: signalprocessor,lv2,ladspa: move sample-rate to baseclass We need the sample-rate in baseclass for upcomming timestamp changes. 2010-02-01 22:24:52 +0200 Stefan Kost * ext/lv2/README: * ext/lv2/gstlv2.c: lv2: shorter element names Cut off the protocol part from the uri. Also just g_Strdup, instead of printf the name. 2010-02-01 17:46:29 +0200 Stefan Kost * gst/jpegformat/gstjpegparse.c: jpegparse: provide a getcaps function for src pad and improve setcaps Previously jpegparse was failing in decodebin as the caps we were setting where not setting all caps fields. We need the own getcaps function to report what we actualy accept. 2010-02-01 17:16:16 +0200 Stefan Kost * gst/jpegformat/gstjpegparse.c: jpegparse: extract comment and post as metadata 2010-02-01 15:04:28 +0200 Stefan Kost * gst/jpegformat/Makefile.am: * gst/jpegformat/gstjpegformat.h: * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: jpegformat: code cleanups Move the jpeg marker defines to a header (to be used for jifmux). Rewrite some comments. Use gst_element_class_set_details_simple(). Add more logging. 2010-01-31 22:21:42 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: simpify property registration Avoid type cheking casts for each property. Use a running index. 2010-01-31 22:16:18 +0200 Stefan Kost * gst-libs/gst/signalprocessor/Makefile.am: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: use the gst-controller, add some basic timestamping Atleast for FX we now have timestamps and can sync the controller. Still need timestamps for sources. 2010-01-31 22:14:04 +0200 Stefan Kost * ext/ladspa/gstladspa.c: ladspa: simplify property registration Don't do checking cast for each parameter. Use a running index. 2010-01-31 22:13:06 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: use plugin dependency registry api 2010-01-31 22:11:40 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: lookup GQuark just once instead for each plugin+1 2010-01-31 22:08:33 +0200 Stefan Kost * ext/ladspa/gstladspa.c: ladspa: lookup GQuark just once and not for each plugin+1 2010-01-31 22:07:09 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: these are not gtk-doc comments 2010-01-31 22:05:30 +0200 Stefan Kost * ext/ladspa/Makefile.am: * ext/ladspa/gstladspa.c: * ext/lv2/Makefile.am: * ext/lv2/gstlv2.c: ladspa/lv2: link and init to gst-controller 2010-01-31 15:53:27 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: new is a c++ keyword, better logging Use pad instead of new for the pad var. Also use pad as object in to debug logging. 2010-01-30 15:19:30 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 15d47a6 to 96dc793 2010-01-29 12:25:08 +0200 Stefan Kost * gst/jpegformat/Makefile.am: * gst/jpegformat/gstjpegformat.c: * gst/jpegformat/gstjpegparse.c: jpegformat: move plugin part to speparate file, so that we can add the jifmux 2010-01-29 11:39:50 +0200 Stefan Kost * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-jpegformat.xml: docs: update of the plugin docs, adding new introspect data 2009-08-19 12:22:30 +0200 Arnout Vandecappelle * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/jpegformat/Makefile.am: * gst/jpegformat/gstjpegparse.c: * gst/jpegformat/gstjpegparse.h: * tests/check/Makefile.am: * tests/check/elements/jpegparse.c: jpegparse: new jpeg parser element. FIxes #583098 Parse JPEG images, extracts its metadata, set caps and packetize an image per buffer. 2010-01-28 15:00:32 +0200 Stefan Kost * tests/examples/camerabin/gst-camera.c: camerabin-example: cleanups for mainloop and state-changes. Fixes #608042 Start camerabin via idle handler to have the mainloop already running. Avoid some unnecessary state changes. Cleanup the bus usage when restarting. 2010-01-28 14:57:06 +0200 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: don't log NULL caps, also downgrade to DEBUG as it is very verbose This debug log entry was also not ment to be used in the failure case. 2010-01-28 00:07:14 +0000 Tim-Philipp Müller * gst/dataurisrc/gstdataurisrc.c: dataurisrc: add start function so we can error out properly if no uri is set Also save a set URI after it has been parsed successfully, so that _get_uri() actually works. 2010-01-27 23:46:32 +0000 Tim-Philipp Müller * gst/dataurisrc/gstdataurisrc.c: dataurisrc: don't post error message when setting the URI failed There's a gboolean return for that, and the messages don't really add anything useful. 2010-01-27 23:39:14 +0000 Tim-Philipp Müller * gst/dataurisrc/gstdataurisrc.c: dataurisrc: must release the object lock before using GST_ELEMENT_ERROR 2010-01-27 23:34:34 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: add more debug and remove "\n" from debug logging 2010-01-27 23:29:44 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: better gobject properties Use lv2:symbol as a base for the property name and lv2:name for nick and blurb. 2010-01-26 17:54:28 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: qtmux: streamline moov data memory storage In particular, use arrays rather than (double) linked lists. 2010-01-14 11:50:33 +0100 Mark Nauwelaerts * docs/plugins/gst-plugins-bad-plugins.hierarchy: * gst/audioparsers/gstbaseparse.c: audioparsers: rename baseparse GType name to avoid possible conflicts 2010-01-14 12:06:03 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: use correct h264_parse prefix in function name 2010-01-27 12:08:48 +0100 Vincent GENIEUX * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: dvbsrc: fix element shutdown on bad reception When we have a bad reception, avoid going into an infinite loop by setting a shutdown flag when shutting down. Fixes #607747 2010-01-26 13:44:04 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: g_free is NULL safe 2010-01-25 19:06:53 -0300 Thiago Santos * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstrtpasfpay.c: rtpasfpay: Fix packet length semantics Following the ed4d08189ea6e19a50e029e60da52d3583c39fbb commit, this one fixes rtpasfpay to use packet length as the payloaded data length, but also accepting it as the full packet size for compatibility with other implementations due to the lack of clarity of the spec in this part. 2010-01-21 10:51:16 -0300 Håkon Skjelten * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * gst/asfmux/gstasfobjects.h: asfmux: Compatibility with WMSP in WMP Makes the asfmux content compatible with WMSP and does some hacks to make it playable in WMP, it doesn't accept data objects with 0 size indicating that we don't know its size, though the spec says it should be possible. Fixes #607555 2010-01-25 23:06:59 +0200 Stefan Kost * tests/examples/camerabin/gst-camera.c: camerabin-example: remove maemo comment and log filename The maemo fixme is not needed anymore. Log the choosen filename to help people finding the files. 2010-01-25 23:04:38 +0200 Stefan Kost * gst/camerabin/camerabingeneral.c: camerabin: ref element before removing from the bin to resurrect This function is not supposed to dispose the element in the case of failure as the caller is using the elements name in the error message. Also add some more input parameter checks in the form of g_return_val_if_fail 2010-01-25 12:21:34 +0100 Sebastian Dröge * gst/selector/gstinputselector.c: Revert "inputselector: Protect g_object_notify() with the object's mutex" This reverts commit 7e067615ffb5614f068f7753c10dde99afe49c3c, it's causing deadlocks with playbin2. 2010-01-25 12:12:32 +0100 Sebastian Dröge * gst/dataurisrc/gstdataurisrc.c: dataurisrc: Remove role attribute from links 2010-01-25 11:56:33 +0100 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-adpcmenc.xml: * docs/plugins/inspect/plugin-audioparsersbad.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-dataurisrc.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-vdpau.xml: * gst/dataurisrc/gstdataurisrc.c: dataurisrc: Add docs and integrate into build system Fixes again bug #596885. 2010-01-25 11:12:47 +0100 Sebastian Dröge * gst/dataurisrc/Makefile.am: * gst/dataurisrc/gstdataurisrc.c: * gst/dataurisrc/gstdataurisrc.h: dataurisrc: Add data: URI source element This is slightly based on the WebKit data: URI source but supports more parts of RFC 2397. Fixes bug #596885. 2010-01-25 07:42:56 +0100 Sebastian Dröge * configure.ac: * gst/dataurisrc/Makefile.am: dataurisrc: Add directory for data: URI source 2010-01-25 11:36:48 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: create valid gobject property names. Fixes #602528 We cannot use the names as we get them from lv2 for the gparamspec name, only for nick/blurb. Apply same algorithms like elsewhere (ladspa) for name. 2010-01-25 11:49:46 +0200 Stefan Kost * gst/mxf/mxfup.c: mxf: add a return to fix the build when turning assert off 2010-01-25 11:48:29 +0200 Stefan Kost * ext/ivorbis/vorbisdec.c: * gst/mxf/mxfup.c: * win32/common/config.h: Revert "mxf: add a return to fix the build when turning assert off" This reverts commit 68ca62b369fc1b77adae85d9d805457fe4e3b562. 2010-01-22 17:45:20 +0200 Stefan Kost * ext/ivorbis/vorbisdec.c: * gst/mxf/mxfup.c: * win32/common/config.h: mxf: add a return to fix the build when turning assert off 2010-01-24 20:53:00 +0100 Kipp Cannon * gst/selector/gstinputselector.c: inputselector: Protect g_object_notify() with the object's mutex This works around the thread unsafety of g_object_notify() Fixes bug #607513. 2010-01-22 10:48:26 +0100 Alessandro Decina * ext/faac/gstfaac.c: faac: fix warnings under OS X.. 2010-01-22 10:46:51 +0100 Alessandro Decina * configure.ac: Don't build osxvideosrc and qtwrapper in Snow Leopard. QuickTime isn't available anymore in OS X Snow Leopard. 2010-01-22 02:23:30 +0000 Tim-Philipp Müller * gst/pnm/gstpnmutils.h: pnm: use same media type as other elements gdkpixbuf and our new typefinder in -base use image/x-portable-*. 2010-01-22 02:22:56 +0000 Tim-Philipp Müller * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: pnm: make element details a bit more descriptive 2010-01-22 02:19:24 +0000 Tim-Philipp Müller * gst/pnm/gstpnm.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmenc.h: * gst/pnm/gstpnmutils.c: * gst/pnm/gstpnmutils.h: pnm: add copyright notice 2010-01-22 02:10:08 +0000 Tim-Philipp Müller * gst/pnm/gstpnm.c: pnm: move typefinding into -base 2010-01-11 01:18:16 +0000 Tim-Philipp Müller * tests/examples/camerabin/gst-camera.c: tests: refactor weird bus sync handler code in camerabin example 2010-01-21 18:11:34 +0100 Thijs Vermeir * ext/Makefile.am: flite: build and dist flite plugin fixing "make dist" 2010-01-21 15:58:11 +0100 Sebastian Dröge * gst/mxf/mxftypes.c: mxf: Correctly initialize memory 2010-01-20 13:30:48 +0100 Benjamin Otte * ext/lv2/gstlv2.c: * ext/theora/theoradec.h: * ext/zbar/gstzbar.h: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/qtmux/descriptors.c: * gst/qtmux/descriptors.h: * gst/qtmux/properties.c: [cleanup] Various style and cleanups Various fixes for gtk-doc warnings and making functions without arguments take void as parameter. 2010-01-20 13:29:52 +0100 Benjamin Otte * sys/oss4/oss4-mixer.c: [oss4] Fix compiler warning about unused return value 2010-01-20 00:54:51 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 358cf5c to 15d47a6 2010-01-18 10:57:42 +0100 Sebastian Dröge * gst/cdxaparse/gstcdxaparse.c: cdxaparse: Fix buffer leak Fixes bug #607285. 2010-01-16 15:32:47 -0800 David Schleef * ext/faac/gstfaac.c: faac: Fix channel layout Adjusted the channel mappings to agree with the default channel mappings in the spec, which is presumably what faac is using. Fixes #607105. 2010-01-16 15:32:02 -0800 David Schleef * ext/flite/gstflitetestsrc.c: flite: handle samplesperbuffer 2010-01-16 12:43:43 -0800 David Schleef * configure.ac: * ext/Makefile.am: * ext/flite/Makefile.am: * ext/flite/gstflite.c: * ext/flite/gstflitetestsrc.c: flite: Add flitetestsrc Flite is a speech synthesizer library (BSD-ish license). This element negotiates a (possibly) multichannel audio stream, and then continually outputs buffers naming the number and position of the channel. It's kinda crappy, but I needed it for testing purposes. 2010-01-16 17:02:52 +0100 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Make sure that property names always start with a letter Otherwise GLib throws assertions 2010-01-16 16:52:11 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Replace floating point arithmetic in the inner processing loops by integer arithmetic 2010-01-16 13:05:58 +0100 Sebastian Dröge * ext/faac/gstfaac.c: faac: Only accept specific channel layouts as required by AAC Fixes bug #607105. 2010-01-16 11:41:20 +0100 Sebastian Dröge * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera.c: * tests/icles/Makefile.am: examples: Fix build and signal connection for GtkBuilder stuff 2010-01-16 11:26:15 +0100 Sebastian Dröge * configure.ac: configure: Check for gmodule-export-2.0 for GtkBuilder 2010-01-16 11:23:00 +0100 Sebastian Dröge * tests/icles/Makefile.am: * tests/icles/metadata_editor.c: icles: Link with GTK+ 2010-01-16 11:16:05 +0100 Sebastian Dröge * configure.ac: configure: Require GTK+ >= 2.12 for GtkBuilder GTK+ 2.12 is already older than 2 years so this shouldn't be a problem for anybody. Also it's only used in examples. 2010-01-16 06:57:26 +0100 Javier Jardón * configure.ac: * gst-plugins-bad.spec.in: * po/POTFILES.skip: * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera-perf.glade: * tests/examples/camerabin/gst-camera-perf.ui: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camera.ui: * tests/icles/Makefile.am: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.ui: tests: Port from libglade to GtkBuilder Fixes bug #601108. 2010-01-15 21:34:02 +0100 Julien Moutte * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: don't set an invalid framerate. When fixed_vop_rate is not set we can not set a framerate based on vop_time_increment_resolution as it would most likely be wrong. Don't set any framerate on the caps in that case. 2010-01-14 08:09:03 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/gstqtmux.c: qtmux: Actually use new caps info on renegotiation Following the previous qtmux commit, this patch tries to use the new info added to the caps to fill the 'trak' atom's fields and children atoms. This way qtmux will use the late added 'codec_data' when h264parse adds it in the following pipeline: videotestsrc num-buffers=200 ! x264enc byte-stream=true ! \ h264parse output-format=0 ! qtmux ! \ filesink location=test.mov 2010-01-13 23:33:51 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/gstqtmux.c: qtmux: Do caps renegotiation when it only adds fields Qtmux can accept caps renegotiation if the new caps is a superset of the old one, meaning upstream added new info to the caps. This patch still doesn't make qtmux update any atoms info from the new info, but at least it doesn't reject the new caps anymore. A pipeline that reproduces this use case is: videotestsrc num-buffers=200 ! x264enc byte-stream=true ! \ h264parse output-format=0 ! qtmux ! \ filesink location=test.mov 2010-01-14 12:59:21 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Improve debug output a bit and simplify code 2010-01-14 12:56:12 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Make sure that the video buffer is writable before writing to it 2010-01-14 12:47:15 +0100 Wim Taymans * ext/apexsink/gstapexsink.c: apexsink: change volume property to a double Change the volume property from int to a double so that playbin2 can use it. Keep the volume internally as a percent for now with the default 75% mapped to a volume of 1.0. some cleanups, add some FIXME and comments. Fixes #606878 2010-01-13 19:30:45 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: provide request pads under wider conditions Fixes #606859. 2010-01-13 10:35:00 -0300 Thiago Santos * gst/qtmux/gstqtmuxmap.c: qtmux: Only accept avc-sample h264 qtmux and mp4mux should only accept h264 in avc-sample format 2010-01-13 09:42:12 -0300 Thiago Santos * gst/h264parse/gsth264parse.c: h264parse: Add stream-format to caps Adds the new stream-format field to h264parse caps Fixes #606662 2010-01-13 00:38:47 +0000 Tim-Philipp Müller * Makefile.am: * common: build: include cruft.mak and add recently-merged plugins to cruft list 2010-01-12 23:53:18 +0000 Tim-Philipp Müller * ext/libmms/gstmms.c: mmssrc: post error message in addition to redirect when connect fails When we can't connect to the server, we should still post a proper error message on the bus, so that applications that don't handle the redirect messsage get a proper error message (and a hint to look for the redirect). Fixes #606636. 2010-01-12 15:45:14 -0300 Thiago Santos * gst/h264parse/gsth264parse.c: h264parse: Correctly rewrite all nal prefixes When converting to byte-stream do not forget to rewrite all nal prefixes instead of only the first one. 2010-01-12 19:33:37 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: improve faac configuration In particular, align configuration some more with reference binary faac. Fixes #606726. 2010-01-12 14:51:02 -0300 Thiago Santos * gst/mpegtsmux/mpegtsmux_h264.c: mpegtsmux: Fix mistake on previous commit Use the correct variables and variable format in the warning message 2010-01-12 18:55:53 +0100 Edward Hervey * gst/audioparsers/gstflacparse.c: flacparse: Initialize variables. Fixes build on $#@*( macosx 2010-01-12 17:05:13 +0100 Edward Hervey * tests/check/Makefile.am: tests: Add neonhttpsrc to the list of elements ignored for state-change Setting neonhttpsrc to PAUSED/PLAYING requires a running http server on localhost. 2010-01-12 09:58:48 -0300 Thiago Santos * gst/h264parse/gsth264parse.c: h264parse: remove codec_data if output is bytestream codec_data should be removed from the src pad caps if the output is in bytestream format Fixes #606657 2010-01-12 09:35:24 -0300 Thiago Santos * gst/mpegtsmux/mpegtsmux_h264.c: mpegtsmux: Do not crash on misinterpreted h264 Avoid crashing when bytestream h264 is interpreted as avc format h264 Fixes #606657 2010-01-11 22:41:57 +0300 ������ ��������� * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstamrparse.c: * gst/h264parse/gsth264parse.c: * gst/mpegdemux/Makefile.am: win32: Include config.h before anything else. Fix mpegdemux LIBADD Because config.h defines __MSVCRT_VERSION__, which should be defined before inclusion of any system header. Also fixes mpegdemux Makefile.am LIBADD typo. Fixes #606665 2010-01-12 00:46:27 +0300 Руслан Ижбулатов * configure.ac: * gst/librfb/rfbdecoder.c: * gst/librfb/vncauth.c: librfb: port rfbsrc to MinGW Fixes #606677 2010-01-11 13:20:26 -0300 Thiago Santos * gst/audioparsers/gstaacparse.c: aacparse: Also add stream-format to template caps Do not forget to add stream-format to template caps off aacparse 2010-01-11 13:13:41 -0300 Thiago Santos * ext/faac/gstfaac.c: * gst/audioparsers/gstaacparse.c: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: * tests/check/elements/aacparse.c: Rename aac's stream-format 'none' to 'raw' Renames aac's stream-format from previous commits from none to raw 2010-01-11 16:09:38 +0100 Руслан Ижбулатов * configure.ac: configure: include into msacm.h conftest 2010-01-11 12:10:02 -0300 Thiago Santos * tests/check/elements/aacparse.c: aacparse: update tests to stream-format changes Updates aacparse unit tests to check for stream-format correctness as well. 2010-01-11 10:51:18 -0300 Thiago Santos * gst/audioparsers/gstaacparse.c: aacparse: Add stream-format to output caps Adds stream-format field to output caps 2010-01-11 10:34:32 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: qtmux: Only accept stream-format='none' aac Only accept raw aac streams (stream-format=none) to avoid generating invalid files. Fixes #604925 2010-01-11 09:48:34 -0300 Thiago Santos * ext/faac/gstfaac.c: faac: Add format to output caps Adds 'stream-format' to output caps to inform if the stream is adts or raw. This makes it possible for muxers to reject input streams on caps if they don't support adts instead of generating a invalid file. Fixes #604925 2010-01-11 01:02:59 +0000 Tim-Philipp Müller * ext/resindvd/gstmpegdemux.c: resindvd: fix unaligned access in this copy of mpegdemux as well See #606371. 2010-01-11 00:59:38 +0000 Tim-Philipp Müller * gst/vmnc/vmncdec.c: vmnc: use existing macros to avoid alignment issues 2010-01-11 00:57:41 +0000 Tim-Philipp Müller * gst/librfb/rfbdecoder.c: rfbsrc: use existing macros to avoid alignment issues 2010-01-11 00:24:59 +0000 Tim-Philipp Müller * gst/asfmux/gstasfobjects.c: asfmux: fix alignment and endianness issue 2010-01-11 00:16:18 +0000 Tim-Philipp Müller * ext/zbar/gstzbar.c: zbar: use GST_MAKE_FOURCC to create FOURCC 2010-01-10 10:06:55 -0300 Linqiang Pu * gst/mpegdemux/gstmpegdemux.c: mpegdemux: fix allignment issue Use GST_READ_UINT32_BE instead of GUINT32_FROM_BE to fix int allignment issues on ARM Fixes #606371 2010-01-08 16:06:38 +0000 Marc-André Lureau * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: only video can have non-delta-unit 2009-12-18 14:14:17 +0100 Thomas Vander Stichele * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/tsmux/tsmux.c: * gst/mpegtsmux/tsmux/tsmux.h: mpegtsmux: mark delta-unit on outgoing buffers Signed-off-by: Marc-André Lureau 2010-01-07 17:54:28 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: optimize src caps updating 2010-01-07 17:47:03 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: fix framerate calculation ... and also remove a superfluous duplicate debug statement. 2010-01-07 17:42:24 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: fix regression in output buffer timestamping Specifically, properly mark a buffer (NALU or AU) to start a frame or not. 2010-01-06 11:20:06 -0800 Michael Smith * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: avoid crash if vos < 5 bytes. 2009-12-13 13:53:14 +0000 Tim-Philipp Müller * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: fix typo in property description 2009-12-13 13:49:38 +0000 Tim-Philipp Müller * gst/mpegdemux/Makefile.am: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix language extraction The descriptor contains ISO 639-2 language codes, but we want two-letter ISO 639-1 codes in GST_TAG_LANGUAGE. 2009-12-05 18:16:47 +0000 Tim-Philipp Müller * tests/examples/camerabin/gst-camera.c: examples: make camerabin test application handle errors when starting up Instead of hanging forever in a _get_state() in case an error occurs when starting up camerabin, bail out and print an error message. Also remove unnecessary _get_state() when shutting down the pipeline. 2010-01-05 18:44:45 +0100 Mark Nauwelaerts * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-audioparsersbad.xml: audioparsers: add some missing documentation pieces 2010-01-05 16:10:13 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: documentation fix 2010-01-05 15:05:05 +0100 Mark Nauwelaerts * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstbaseparse.c: audioparsers: documentation fixes 2010-01-05 15:04:38 +0100 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/audioparsers/gstac3parse.c: ac3parse: add documentation 2010-01-05 14:48:49 +0100 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/audioparsers/gstflacparse.c: * gst/audioparsers/gstflacparse.h: flacparse: add documentation 2009-12-21 18:29:43 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: perform additional frame checks when resyncing 2010-01-05 16:35:52 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: fix (multiple channel) frame parsing 2010-01-05 16:35:44 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: declare unparsed input and parsed output 2009-12-21 18:19:23 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: fix scanning for next syncword 2009-12-21 18:18:39 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: adjust seek handling and newsegment sending Perform sanity check on type of seek, and only perform one that is appropriately supported. Adjust downstream newsegment event to first buffer timestamp that is sent downstream. 2009-12-21 11:59:45 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: minor refactor cleanup Also add some debug logging. 2009-12-18 21:05:11 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: locate next sync code more efficiently 2009-12-18 21:04:12 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: baseparse takes care of handling leftover pieces 2009-12-18 21:02:40 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: implement leftover draining in pull mode 2009-12-17 12:45:36 +0100 Mark Nauwelaerts * gst/audioparsers/gstflacparse.c: flacparse: set _OFFSET and _OFFSET_END on outgoing buffers 2009-12-17 12:44:20 +0100 Mark Nauwelaerts * gst/audioparsers/Makefile.am: * gst/audioparsers/gstflacparse.c: * gst/audioparsers/gstflacparse.h: * gst/audioparsers/plugin.c: * gst/flacparse/Makefile.am: * gst/flacparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.h: * gst/flacparse/gstflac.c: audioparsers: move 'flacparse' into it 2009-12-16 18:38:33 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: provide default conversion using bps if no fps available Also store estimated duration as such, rather than pretending otherwise (e.g. set by subclass). 2010-01-04 10:23:37 +0100 Sebastian Dröge * ext/modplug/gstmodplug.cc: modplug: Fix indention 2009-12-29 17:28:06 +0200 Kaj-Michael Lang * ext/modplug/gstmodplug.cc: modplug: Allow 1-2 channels for 16 and 32 bit depths, not only for 8 bits. Fixes bug #605721. 2009-12-29 16:07:59 +0200 Kaj-Michael Lang * ext/modplug/gstmodplug.cc: * ext/modplug/gstmodplug.h: modplug: Allow 32 bit depth, modplugs native format. Fixes bug #605720. 2010-01-02 17:33:57 +0100 Arnaud Patard * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Handle eac3 in PMT When the stream type is set to private data, gst-mpegtsdemux is trying to find audio descriptors in PMT and look for AC3 (tag 0x6a) but doesn't look for EAC3 (tag 0x7a). Handle this case too. Fixes bug #605904. 2009-12-30 21:50:32 +0100 Alessandro Decina * gst/h264parse/gsth264parse.c: h264parse: fix caps handling in _update_src_caps. 2009-12-28 11:34:35 +0200 Stefan Kost * gst/qtmux/gstqtmux.h: qtmux: also add .h file changes to unbreak the build 2009-12-27 23:51:50 +0200 Stefan Kost * gst/qtmux/gstqtmux.c: qtmux: use correct names from template for request pads The pads where names pad0, pad1, ... 2009-12-27 23:32:58 +0200 Stefan Kost * gst/qtmux/gstqtmux.c: qtmux: move errors _new_pad to the end 2009-12-21 19:12:42 +0100 Mark Nauwelaerts * common: Automatic update of common submodule From 47cb23a to 14cec89 2009-12-21 13:58:30 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: Accept non-paired uint tags Adds support for unpaired unsigned interger tags 2009-12-21 12:05:37 -0300 Thiago Santos * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: qtmux: Adds new tags Maps more tags that are already posted by qtdemux Fixes #599759 2009-12-18 16:16:46 +0100 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: only raw output needs codec_data in caps 2009-12-18 13:30:29 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: check for remaining data when draining in push mode 2009-12-18 13:30:07 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: baseparse: fix pull mode cache size comparison 2009-12-18 13:01:17 +0100 Edward Hervey * gst/audioparsers/gstac3parse.c: ac3parse: Fix unitialized variable. 2009-12-17 11:04:28 -0300 Thiago Santos * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: Internal sink improvements Does some general improvements with the internal sink handling. 1) Do not remove and re-add the ghostpad when changing internal sink 2) Only instantiate the default sink when changing from NULL to READY if there is no other available 3) Avoid changing the internal sink if not on NULL state Fixes #598682 2009-12-17 07:54:04 -0300 Thiago Santos * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: Minor fixes Downgrade a warning message to debug. Remove an already fixed FIXME and add a note about (not-)using fpsdisplaysink in autovideosink. Change the created ghostpad to use the name "sink" as it is advertised in the pad template. 2009-12-17 14:46:01 +0000 Christian Schaller * gst-plugins-bad.spec.in: * gst/audioparsers/Makefile.am: Update spec file and fix ac3parser header listing in Makefile.am 2009-12-17 01:05:28 +0000 Tim-Philipp Müller * tests/icles/Makefile.am: tests: try to fix 'make dist' when cog is not installed 2009-12-16 18:32:42 -0300 Thiago Santos * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: fix setting sync on child bin Use GST_IS_BIN instead of G_OBJECT_TYPE to check if the internal sink is a bin. Using the later won't work when the sink is not a bin directly (but inherits from one, like autovideosink). Fixes #604280 2009-12-15 13:08:08 +0100 Philippe Normand * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: check the sync property exists on embedded sink(s) Follow-up on 4111d6321f140eb7790620ab42e5cf1d9413b56a, the video sink(s) used by fpsdisplaysink might not have the sync property. So we check its existence to avoid warning from g_object_set() at runtime. Fixes #604280 2009-12-10 22:20:45 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: qtmux: support more of j2k Reads the new caps added to qtdemux by commit c917d65e6df0b5d585f905c7ad78a8a0a44b2cb0 and adds its corresponding atoms. Also adds support for image/x-jpc as it is the same as image/x-jp2, except that the buffers need to be boxed inside a jp2c isom box before muxing. To solve this the QTPads now have a function that (if not NULL) is called when a buffer is collected. This function returns a replacement to the current collected buffer. Fixes #598916 2009-12-14 16:16:08 +0100 Sebastian Dröge * ext/cog/Makefile.am: cog: Table generation utility needs to link to -lm too 2009-12-14 16:08:01 +0100 Sebastian Dröge * configure.ac: * ext/cog/cog.orc: cog: Don't build orc_memcpy() and depend on orc >= 0.4.3 for orc_memcpy() In the latest release this function is already defined. 2009-12-10 16:53:19 -0300 Thiago Santos * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: Maps 'classification' tag for 3gpp files Adds the mapping of 'classification' tags to writing of 'clsf' atoms for gppmux. Based on a patch by: Lasse Laukkanen 2009-12-10 22:49:13 -0300 Philippe Normand * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: expose video sink using a property Exposes the internally used sink as video-sink property and makes the default one to be autovideosink instead of the hardcoded xvimagesink Fixes #604280 2009-12-11 16:32:48 -0800 Peter van Hardenberg * configure.ac: * gst-plugins-bad.spec.in: * gst/adpcmenc/Makefile.am: * gst/adpcmenc/adpcmenc.c: adpcmenc: add new adpcm encoder element. 2009-12-11 10:25:16 -0800 Michael Smith * gst/audioparsers/gstbaseparse.c: audioparse: fix a format string as reported on irc. 2009-12-10 10:10:15 -0800 Michael Smith * gst/adpcmdec/adpcmdec.c: adpcmdec: make power of 2 more accurate. 2009-12-10 12:56:47 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: fix caps parameters setting Also consider PPS when selecting SPS to pick parameters from. Only update caps when settings actually changed, and when these are valid. 2009-12-08 18:57:49 +0100 Mark Nauwelaerts * ext/ivorbis/vorbisdec.c: * ext/ivorbis/vorbisdec.h: ivorbis: also cater for traditional 16-bit width sample output 2009-12-10 10:40:10 +0100 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Don't do pointer dereferences in the processing loop Lowers the time taken there in my testcase from 6.91% to 6.20% as measured by callgrind. 2009-11-18 16:38:33 +0100 unknown * gst/rtpmux/gstrtpmux.c: rtpmux: update the current_ssrc from the caps Fixes #604101 2009-12-09 14:42:21 +0100 Håvard Graff * gst/rtpmux/gstrtpmux.c: rtpmux: release pads when disposing Because of an allocated priv (GstRTPMuxPadPrivate), the element will leak memory if not gst_rtp_mux_release_pad() is called. This would previously only happen if release_request_pad() was called explicitly, somthing that should not be neccesary. Fixes #604099 2009-12-09 13:40:43 +0100 Wim Taymans * gst/rtpmux/gstrtpdtmfmux.c: dtmfmux: method name cleanups 2009-12-09 09:57:58 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Implement srcpad query function to always forward to the video sinkpad 2009-12-09 09:55:32 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Proxy buffer allocation on video sinkpad to the srcpad ...and add getcaps function to the video sinkpad. 2009-12-09 09:51:20 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Implement srcpad event functions for seeking and correct event forwarding Copied from textoverlay. 2009-12-08 17:59:04 -0800 Michael Smith * gst/qtmux/atoms.c: * gst/qtmux/gstqtmux.c: qtmux: remove c++ comments and add some more comments. 2009-12-08 17:55:56 -0800 Michael Smith * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: qtmux: add ima adpcm support 2009-12-08 17:55:13 -0800 Stephen McNamara * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: don't leak filter_media_event 2009-11-23 16:34:50 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: ensure sufficient data available for parsing 2009-10-29 15:19:04 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: extract and use some more details for Enhanced Ac-3 streams 2009-10-29 15:18:37 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: baseparse: custom bufferflag indicates not to count frame in stats 2009-10-28 14:08:43 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: perform additional frame checks when resyncing 2009-10-28 14:07:17 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: inform base parser of frame duration 2009-10-27 16:16:50 +0100 Mark Nauwelaerts * gst/audioparsers/gstac3parse.c: ac3parse: improve src caps settings 2009-11-27 17:59:03 +0100 Mark Nauwelaerts * gst/audioparsers/Makefile.am: * gst/audioparsers/gstac3parse.c: * gst/audioparsers/gstac3parse.h: * gst/audioparsers/plugin.c: ac3parse: initial version MARGINAL rank for now; might take some time for some (useful) framed=true/false to appear here and there. 2009-11-26 18:34:45 +0100 Mark Nauwelaerts * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstamrparse.h: amrparse: use (default) time handling of baseparser class 2009-11-26 18:15:21 +0100 Mark Nauwelaerts * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * gst/amrparse/Makefile.am: * gst/amrparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.h: * gst/audioparsers/Makefile.am: * gst/audioparsers/gstamrparse.c: * gst/audioparsers/gstamrparse.h: * gst/audioparsers/plugin.c: audioparsers: move 'amrparse' into it 2009-11-27 17:27:32 +0100 Mark Nauwelaerts * gst/audioparsers/gstbaseparse.c: audioparsers: reference GstBaseParse now lives here 2009-11-28 18:13:31 +0100 Mark Nauwelaerts * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * gst/aacparse/Makefile.am: * gst/audioparsers/Makefile.am: * gst/audioparsers/gstaacparse.c: * gst/audioparsers/gstaacparse.h: * gst/audioparsers/gstbaseparse.c: * gst/audioparsers/gstbaseparse.h: * gst/audioparsers/plugin.c: audioparsers: rename 'aacparse' plugin to generic 'audioparsers' plugin 2009-11-26 17:04:43 +0100 Mark Nauwelaerts * gst/aacparse/Makefile.am: * gst/aacparse/gstaacparse.c: * gst/aacparse/plugin.c: aacparse: separate plugin registration and rename plugin 2009-11-26 17:04:36 +0100 Mark Nauwelaerts * gst/aacparse/gstaacparse.c: aacparse: ensure sufficient data available before accessing 2009-11-05 14:31:40 +0100 Mark Nauwelaerts * gst/aacparse/gstaacparse.c: * gst/aacparse/gstaacparse.h: aacparse: use (default) time handling of baseparser class 2009-10-29 15:19:35 +0100 Mark Nauwelaerts * gst/aacparse/gstaacparse.c: aacparse: fixup comments to C-style 2009-10-29 16:05:00 +0100 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: baseparse: reset passthrough mode to default (disabled) on activation 2009-10-29 15:16:59 +0100 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: baseparse: ensure buffer metadata is writable 2009-10-28 14:06:13 +0100 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: * gst/aacparse/gstbaseparse.h: baseparse: fix/enhance DISCONT marking In particular, consider DISCONT == !sync, and allow subclass to query sync state, as it may want to perform additional checks depending on whether sync was achieved earlier on. Also arrange for subclass to query whether leftover data is being drained. 2009-11-23 15:48:25 +0100 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: * gst/aacparse/gstbaseparse.h: baseparse: add timestamp handling, and default conversion In particular, (optionally) provide baseparse with a notion of frames per second (and therefore also frame duration) and have it track frame and byte counts. This way, subclass can provide baseparse with fps and have it provide default buffer time metadata and conversions, though subclass can still install callbacks to handle such itself. 2009-10-28 12:02:03 +0100 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: baseparse: documentation fixes 2009-10-28 12:00:08 +0100 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: baseparse: use_fixed_caps for src pad After all, stream is as-is, and there is little molding to downstream's taste that can be done. If subclass can and wants to do so, it can still override as such. 2009-12-08 14:46:35 +0100 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-lv2.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Add docs and integrate into the docs build system 2009-12-08 14:06:23 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: For synchronizing the text, take the video running time of the next frame This makes sure that libass already has all text buffers for the next frame at the time when the next frame is processed. Without this text buffers might be one frame late or not shown at all if they're only shown for a single frame. 2009-12-08 11:26:02 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Fix I420 mode and enable it 2009-12-08 11:25:39 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Fix compilation with older libass versions 2009-12-07 10:21:32 -0800 Michael Smith * sys/dshowvideosink/dshowvideosink.h: dshowvideosink: spell things more betterer. 2009-12-07 10:09:19 -0800 Stephen McNamara * sys/dshowvideosink/dshowvideosink.h: dshowvideosink: add virtual destructor for internal helper class. 2009-12-07 18:35:40 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Don't unref buffers twice 2009-12-07 18:30:05 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Improve embedded font usage For this add some new mimetypes and also check the filename extension. Fixes bug #603938. 2009-12-07 18:03:26 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Disable I420 support for now, it doesn't work reliable yet 2009-12-07 17:04:04 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Add support for I420 2009-12-07 15:31:41 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Optimize blit function and add support for all other non-alpha RGB formats Also make sure to not write behind array bounds. 2009-12-07 14:35:55 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Fix attachment tag handling and move it into a separate function ...to prevent code duplication. 2009-12-07 14:26:46 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Update text last stop after checking if timestamp/duration is valid 2009-12-07 14:23:22 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: If an ASS track was allocated already only feed new codec_data to it instead of recreating 2009-12-07 14:05:22 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Lots of random cleanup and some minor memleak fixes 2009-12-07 13:40:56 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Extract embedded fonts from the subtitle streams if requested 2009-12-07 13:26:39 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Don't let libass print stuff on stderr but proxy the messages to the GStreamer debugging system 2009-12-05 11:25:15 +0000 Tim-Philipp Müller * configure.ac: * ext/apexsink/Makefile.am: apexsink: clean up and fix configure logic and Makefile.am Check for openssl and libcrypto using pkg-config and don't build the plugin if those are not available. Also, fix the CFLAGS/LIBS order in Makefile.am and use the detected LIBS instead of hard-coding -lcrypto in the Makefile.am. Should fix #601417. 2009-12-01 15:07:49 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 87bf428 to 47cb23a 2009-12-01 14:09:29 +0100 Sebastian Dröge * configure.ac: configure: Call AG_GST_PLATFORM for GST_EXTRA_MODULE_SUFFIX This is used in the frei0r plugin already but never defined anywhere. Fixes bug #602524. 2009-12-01 14:17:22 +0100 Sebastian Dröge * common: Automatic update of common submodule From da4c75c to 87bf428 2009-11-27 18:55:58 +0100 Edward Hervey * common: Automatic update of common submodule From 53a2485 to da4c75c 2009-11-27 14:38:04 +0200 Teemu Katajisto * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabinphotography.c: * gst/camerabin/gstcamerabinphotography.h: camerabin: photography interface properties. Fixes #573370 (partially) Added GObject properties to photography interface and implemented them in camerabin. Changed zooming to check if video-source has zoom property. 2009-02-23 23:18:33 +0200 René Stadler * Makefile.am: * configure.ac: * pkgconfig/Makefile.am: * pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in: * pkgconfig/gstreamer-plugins-bad.pc.in: Add pkgconfig files for photography interface library. 2009-10-28 12:47:19 +0200 Teemu Katajisto * gst/camerabin/Makefile.am: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinimage.h: * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: * gst/camerabin/gstcamerabin-enum.c: * gst/camerabin/gstcamerabin-enum.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: add flags property. Fixes #573370 (partially) Adds flags property to enable runtime configuration of conversion and scaling elements. Also adds flag for disabling audio completely. 2009-10-27 16:28:25 +0200 Teemu Katajisto * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: camerabin: remove timeoverlay build-time definition 2009-11-26 15:33:32 -0600 Wim Taymans * sys/vdpau/Makefile.am: vdpau: fix build 2009-11-25 21:41:27 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: replace _scale with _scale_round Use the rounding version for improved sync between streams. Small variations in the duration when muxing might lead to cumullative wrong timestamping when demuxing. Fixes #602936 2009-11-24 16:16:56 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: use timestamps for muxing Try to use timestamps even when the stream has out of order timestamps, only fall back to durations when we detect an out of order buffer. Improves sync between streams. 2009-11-24 14:34:51 +0200 Stefan Kost * ext/metadata/gstmetadatamux.c: metadata: fix classification 2009-11-18 11:38:50 +0100 Xavier Queralt Mateu * gst/mpegdemux/mpegtspacketizer.c: Expose lang codes in pmt 2009-11-22 19:30:43 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: optional transforming from bytestream to sample format (or vice versa) 2009-11-20 18:31:39 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: refactor a bit into a reset function 2009-11-20 18:49:56 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: provide w/h from stream in src caps if not in sink caps 2009-11-06 12:58:33 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: h264parse: parse SPS some more (e.g. for width/height) 2009-11-22 19:34:25 +0100 Mark Nauwelaerts * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: optionally output AUs rather than NALUs That is, Access Units (frames/fields) instead of (possibly) parts thereof. 2009-11-23 10:32:41 +0100 Edward Hervey * po/POTFILES.in: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: po: remove ext/resindvd/rsnbasesrc.c 2009-11-23 09:35:30 +0100 Edward Hervey * win32/common/config.h: win32: pre-release=>git 2009-11-23 09:17:39 +0100 Edward Hervey * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: vdpau: Fix includes 2009-11-22 22:54:27 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: vdpauvideopostprocess: convert to 1/1 pixel-aspect-ratio for rgb too 2009-11-22 22:34:19 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: vdpausink: intersect allowed caps with our template caps 2009-11-22 22:31:38 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: vdpau: fix gst_vdp_[video|yuv]_to_output_caps to also add rgb caps 2009-11-22 22:30:19 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: use GstVdpVideoSrcPad 2009-11-22 22:29:58 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpoutputbuffer.c: * sys/vdpau/gstvdpoutputbuffer.h: vdpau: add functions to GstVdpOutputBuffer needed for rgb download 2009-11-22 22:28:18 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpoutputsrcpad.c: * sys/vdpau/gstvdpoutputsrcpad.h: vdpau: add GstPad subclass GstVdpOutputSrcPad GstVdpOutputSrcPad is a subclass of GstPad that is used for pushing out GstVdpOutputBuffers. It takes care of caps negotiation and conversion to video/x-raw-rgb. 2009-11-22 22:24:12 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: gstvdpvideosrcpad: add "template-caps" property The property limits the available output caps 2009-11-22 22:18:55 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideobuffer.c: gstvdpvideobuffer: fix typo 2009-11-21 02:51:39 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: gstvdpvideosrcpad: replace get_pad_template() with get_template_caps() 2009-11-21 01:10:50 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: gstvdpvideosrcpad: don't recreate caps in getcaps 2009-11-21 00:13:46 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideosrcpad.c: * sys/vdpau/gstvdpvideosrcpad.h: vdpau: add GstPad subclass GstVdpVideoSrcPad GstVdpVideoSrcPad takes care of caps negotiation and conversion of GstVdpVideoBuffers to the negotiated output format. 2009-10-27 22:04:10 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpsink.c: vdpausink: rework presentation blocking a bit instead of blocking until the previous surface has been displayed, we new only add surfaces to the queue if it's idle. 2009-10-27 21:18:04 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: split up chain function 2009-10-27 20:57:05 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: implement basic qos handling 2009-10-16 00:16:24 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: vdpaumpegdec: add display property 2009-10-08 23:38:24 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: vdpau: remove unused functions 2009-10-08 20:25:40 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpau: use local libgstvdp headers 2009-10-08 20:23:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpvideoyuv.h: * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: remove now unneeded vdpauvideoyuv and vdpauyuvvideo elements 2009-10-08 20:19:57 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: add display property 2009-10-08 20:13:24 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: vdpausink: add debug output 2009-10-08 20:13:04 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: add support for video/x-raw-yuv input 2009-10-07 10:25:46 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: add src_getcaps func this way we can return only the caps we really support, since we're able to query vdpau about it 2009-10-07 00:13:00 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: vdpaumpegdec: add support for negotation of x-raw-yuv output 2009-10-04 19:27:56 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpvideoyuv.h: * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: create a libgstvdp library. The library contains GstVdpDevice GstVdpVideoBuffer and GstVdpOutputBuffer. The library will (apart from the plugins here) be used by the upcoming gst-ffmpeg vdpau support. 2009-10-03 14:30:41 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: check for sink element returning wrong buffer type 2009-10-02 01:04:02 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: vdpau: remove unneeded gst_vdp_video_buffer_add_reference function 2009-09-24 22:26:58 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: fix longname 2009-11-22 19:30:58 +0000 Tim-Philipp Müller * ext/mimic/Makefile.am: * gst/autoconvert/Makefile.am: * gst/dtmf/Makefile.am: * gst/liveadder/Makefile.am: * gst/rtpmux/Makefile.am: * gst/siren/Makefile.am: * gst/valve/Makefile.am: Clean up LDFLAGS, LIBS, CFLAGS Fix order, fix variables that don't exist, like GST_LIBS_LIBS, use $(LIBM) instead of -lm, and move _LIBS from LDFLAGS to LIBADD. Spotted by Havard Graff. 2009-11-22 19:02:23 +0000 Tim-Philipp Müller * ext/cog/cogutils.h: cog: include our own _stdint.h instead of 2009-11-20 11:13:58 +0000 Tim-Philipp Müller * gst/librfb/d3des.c: * gst/librfb/vncauth.c: librfb: include our own _stdint.h not stdint.h 2009-11-21 17:31:53 +0100 Jan Schmidt * ext/resindvd/Makefile.am: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: * ext/resindvd/rsnbasesrc.c: * ext/resindvd/rsnbasesrc.h: resindvd: Remove local basesrc copy Use the real version of basesrc instead of a local copy now that it supports the seamless segment feature that resin needs. 2009-11-20 13:41:27 -0800 Michael Smith * tests/icles/Makefile.am: tests/icles: make cog test program depend on USE_COG. Fixes build without orc. 2009-11-20 20:55:15 +0100 David Schleef * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: cog: convert some params to consts in orc code 2009-11-20 17:33:21 +0100 Julien Moutte * gst/frei0r/gstfrei0rmixer.c: frei0r: Fix compilation warnings. 2009-11-20 17:32:44 +0100 Julien Moutte * gst/amrparse/gstbaseparse.c: amrparse: Fix compilation warnings 2009-11-20 17:32:13 +0100 Julien Moutte * gst/aacparse/gstbaseparse.c: aacparse: Fix compilation warnings 2009-11-20 10:31:47 -0500 Olivier Crête * gst/dtmf/tone_detect.h: dtmf: Use _stdint.h from configure https://bugzilla.gnome.org/show_bug.cgi?id=602465 2009-11-20 13:13:36 +0100 David Schleef * ext/cog/Makefile.am: * tests/icles/Makefile.am: cog: Add orc test code for cog Also look for cog.orc source file in the right place. 2009-11-19 20:33:07 -0500 Olivier Crête * gst/dtmf/tone_detect.c: * gst/dtmf/tone_detect.h: dtmf: Update dtmfdetect to make it MSVC friendly https://bugzilla.gnome.org/show_bug.cgi?id=602465 2009-11-19 18:28:52 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: fix missing debug argument Adds a missing debug argument 2009-11-19 23:01:29 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: set the audio-channel positions again, but now in _setup Readd the code that was reverted for the release. We now set audio-channel positions if any on the pad caps and not on the templates. 2009-11-19 22:59:17 +0200 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: remove commented out code that we don't need anymore 2009-11-17 00:39:50 +0200 Stefan Kost * tests/check/generic/states.c: tests: make state-change test timeout longer if wrappers are enabled When ladspa || lv2 are enabled one could quickly get to 500 elements. 2009-11-17 00:37:28 +0200 Stefan Kost * gst/real/gstrealaudiodec.c: realaudiodec: reindent and make valgrind happy The state-change tests reported access to uninitialized memory. 2009-11-16 22:07:31 +0200 Stefan Kost * ext/ladspa/gstladspa.c: ladspa: only use g_return_val_if_fail for checking pre-conditions g_return_* can be disabled. Still we want to check for failed instance creation. 2009-11-16 22:05:16 +0200 Stefan Kost * ext/lv2/gstlv2.c: lv2: only use g_return_val_if_fail for checking pre-conditions g_return_* can be disabled. Still we want to check for failed instance creation. 2009-11-16 21:52:32 +0200 Stefan Kost * ext/ladspa/gstladspa.c: ladspa: remove left-over comment 2009-11-16 21:50:20 +0200 Stefan Kost * ext/ladspa/gstladspa.c: * ext/lv2/gstlv2.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: signalprocessor: change _setup to pass whole caps and not just sampling_rate This allows to get rid of the sampling_rate variable in the base-class. Also now subclasses can modify the caps to actualy negotiate. This is needed to e.g. set audio-channel positions. 2009-11-19 11:36:14 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: fix misinforming debug statement 2009-11-19 11:14:57 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: ensure writable buffer metadata before setting caps 2009-11-19 10:31:11 +0000 Tim-Philipp Müller * common: Automatic update of common submodule From 0702fe1 to 53a2485 2009-11-18 20:06:06 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: improving debug messages Improves debug messages for asfmux 2009-10-29 08:36:02 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: qtmux: support for SVQ3 Adds support for muxing SVQ3 content. Usually this format has decoder info that must be passed in the 'seqh' field in the caps. It is also good to add the gama atom to make quicktime not crash. Fixes #587922 2009-11-18 18:00:37 +0100 Edward Hervey * ext/jp2k/gstjp2k.c: jp2k: Raise rank of encoder to MARGINAL 2009-11-18 18:00:23 +0100 Edward Hervey * ext/gsm/gstgsm.c: gsm: Raise rank of encoder to PRIMARY 2009-11-18 18:00:00 +0100 Edward Hervey * ext/amrwbenc/gstamrwb.c: amrwbenc: Raise rank to SECONDARY 2009-11-18 17:59:21 +0100 Edward Hervey * ext/dirac/gstdirac.cc: dirac: Raise rank of encoder to MARGINAL We'll prefer to use schroedinger if available, but in case it's not available we still have the libdirac option 2009-11-18 17:58:53 +0100 Edward Hervey * ext/xvid/gstxvid.c: xvid: Raise rank of encoder to SECONDARY 2009-11-18 17:58:39 +0100 Edward Hervey * gst/aiff/aiff.c: aiff: Raise rank of muxer to PRIMARY 2009-11-18 17:57:59 +0100 Edward Hervey * gst/mve/gstmve.c: mve: Raise rank of muxer to PRIMARY 2009-11-18 17:57:25 +0100 Edward Hervey * gst/asfmux/gstasfmux.c: asfmux: Raise rank to PRIMARY 2009-11-18 13:41:36 +0000 Tim-Philipp Müller * configure.ac: configure: bump core requirements to 0.10.25.1 as well Make implicit requirement explicit. 2009-11-17 16:31:09 +0100 Yaakov Selkowitz * ext/ladspa/Makefile.am: * ext/lv2/Makefile.am: signalprocessor: Use correct CFLAGS for the signalprocessor headers in LV2/LADSPA This makes sure that the headers from the source tree are taken and not accidentially installed system headers in the case of builddir!=srcdir. Fixes bug #602161. 2009-11-18 03:09:18 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnaudiomunge.c: * gst/dvdspu/Makefile.am: * gst/dvdspu/gstdvdspu.c: resindvd, dvdspu: Use new still-frame API from gst-plugins-base Replace the current custom DVD still-frame events with new event creation/parsing API from libgstvideo. 2009-11-18 02:16:03 +0000 Jan Schmidt * configure.ac: bump gst-plugins-base requirement to 0.10.25.1 2009-11-18 02:04:19 +0000 Jan Schmidt * gst/aiff/Makefile.am: * gst/aiff/aiff.c: Revert "aiff: Disable aiff muxer for this release." This reverts commit 7426be70ffb113f02e37407ea989e60b638b2f00. Re-enable the aiff muxer now that gst-plugins-bad 0.10.17 is out and we can rely on gst-plugins-base from git. 2009-11-17 17:25:14 -0300 Thiago Sousa Santos * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: asfmux: handle streams with different start times Prevents losing sync when remuxing streams with different start times. The smallest start time is selected as the base time and all timestamps are subtracted from it to get the actual time to be used when muxing and building indexes Fixes #586848 2009-11-17 09:26:05 -0300 Thiago Sousa Santos * gst/qtmux/gstqtmux.c: qtmux: do not leak a string Frees a string after use. Also does some code organization 2009-11-16 14:57:53 -0300 Thiago Sousa Santos * gst/qtmux/atoms.c: qtmux: do not add size to the pointer variable Do not wrongly add the result of the function to the pointer to the buffer size. Instead, check the result to see if the serialization was ok. Based on a patch by: "Carsten Kroll " Fixes #602106 2009-11-06 10:34:39 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: handle 'late' streams When muxing streams, some can start later than others. qtmux now handle this by adding an empty edts entry with the duration of the 'lateness' to the stream's trak. It tolerates a stream to be up to 0.1s late. Fixes #586848 2009-11-05 21:35:56 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: qtmux: adds the EDTS and ELTS atoms to atoms.c These atoms will be useful for signaling streams that start later in the file. As well for adding edit lists if needed sometime later. 2009-11-17 17:59:56 -0800 Michael Smith * gst/adpcmdec/adpcmdec.c: adpcmdec: decode adpcm without explicit length, as found in qt. 2009-11-15 03:21:56 +0000 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Forward the still frame event downstream Forward still-frame events downstream so elements like deinterlace can use them. 2009-11-14 00:31:29 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Guard against a divide-by-zero error. https://bugzilla.gnome.org/show_bug.cgi?id=600263 2009-11-18 01:46:38 +0000 Jan Schmidt * configure.ac: * win32/common/config.h: Back to development -> 0.10.17.1 2009-11-17 01:53:54 +0000 Jan Schmidt * gst-plugins-bad.doap: Add 0.10.17 release to the doap file === release 0.10.17 === 2009-11-17 01:25:47 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiff.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * win32/common/config.h: Release 0.10.17 2009-11-17 01:13:36 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-11-15 21:46:01 +0200 Stefan Kost * ext/ladspa/gstladspa.c: * ext/lv2/gstlv2.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: signalprocessor: don't set channel positions in template-caps, Fixes #601775 Revert the changes that added audio positions to template caps. We have an un- fortunate limitation in core that does not allow to do it. Keep a few things commented out, so that the channel position can later on be set in setcaps. 2009-11-13 02:18:31 +0000 Jan Schmidt * configure.ac: * po/ky.po: * po/lv.po: * po/sv.po: * win32/common/config.h: 0.10.16.3 pre-release 2009-11-11 10:58:29 +0100 Sebastian Dröge * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: celt: Port to 0.7 API Fixes bug #600724. 2009-11-11 10:54:25 +0100 Sebastian Dröge * configure.ac: * ext/celt/gstceltenc.c: celt: Make celt version checks better extensible 2009-11-09 19:20:21 +0000 Jan Schmidt * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.16.2 pre-release 2009-11-09 19:08:49 +0000 Jan Schmidt * gst/aiff/Makefile.am: * gst/aiff/aiff.c: aiff: Disable aiff muxer for this release. The aiff muxer relies on GstByteWriter API added after 0.10.25. Disable it for this release. Revert this commit after gst-plugins-bad 0.10.17 2009-11-09 14:10:20 +0000 Jan Schmidt * gst/asfmux/Makefile.am: asfmux: Uncomment --disable-static flag For some reason that libtool flags line that prevents building the static lib was commented out. Reported by Mart Raudsepp on IRC. 2009-11-09 11:49:15 +0100 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Remove useless variables and fix a uninitialized variable compiler warnings Merged from gst-plugins-base, dfd51aa82a9e1c9924375183796eab70e574a231. 2009-11-09 11:48:39 +0100 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Make sure that running_time->timestamp calculation never becomes negative Merged from gst-plugins-base, f3653854585864a09d35e037853407332ea6901f. 2009-11-09 11:48:00 +0100 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Use the start time (i.e. timestamp) as the last stop Using the end time makes it impossible to replace buffers, which is a big problem for subtitles that could have very long durations. Merged from gst-plugins-base, 27034be4611231cc55fa3d3e253baa40c6bff41d. 2009-11-09 11:47:15 +0100 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Improve debugging Merged from gst-plugins-base. 2009-11-07 12:29:15 +0100 Edward Hervey * ext/jp2k/gstjasperenc.c: jp2kenc: Fix klass (s/Decoder/Encoder/) 2009-11-06 15:31:26 +0100 Chris Hills * sys/dvb/gstdvbsrc.c: dvbsrc: Add support for DVB-T/DVB-C with DVB API 3.3 2009-11-06 11:44:50 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: The text and video duration should only compared as running time too The end times of the text and video buffers could be different than their start running time + duration because of different rates. 2009-11-06 09:16:18 +0100 Sebastian Dröge * ext/kate/gstkate.c: kate: Lower tiger's rank to NONE again It's not well tested yet and doesn't handle segments and text/video synchronization properly yet. Autoplugging it will cause failures. 2009-11-06 07:12:03 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Reset segments on FLUSH_STOP events 2009-11-05 17:41:53 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Improve debugging 2009-11-06 00:46:12 -0300 Thiago Santos * gst/qtmux/atoms.c: * gst/qtmux/gstqtmux.c: qtmux: Adding some ifs for protection Adding somes ifs to protect against warning conditions that might happen when upstream element is not sane Fixes #600895 2009-11-05 13:40:38 -0300 Thiago Santos * gst/scaletempo/gstscaletempo.c: scaletempo: properly update new segments Scaletempo was missing an update of 'stop' in new segment parameters when pushing it downstream, which caused files to end earlier when rate < 1. Fixes #599903 Based on patch by: Bastian Hecht 2009-11-05 23:17:58 +0000 Tim-Philipp Müller * ext/timidity/gstwildmidi.c: timidity: printf format fixes 2009-11-05 22:03:51 +0000 Tim-Philipp Müller * ext/mythtv/gstmythtvsrc.c: mythtv: printf format fixes 2009-11-05 21:58:38 +0000 Tim-Philipp Müller * ext/libmms/gstmms.c: mms: printf format fixes 2009-11-05 21:51:07 +0000 Tim-Philipp Müller * ext/kate/gstkateenc.c: * ext/kate/gstkatespu.c: kate: printf format fixes 2009-11-05 21:47:05 +0000 Tim-Philipp Müller * ext/resindvd/gstmpegdemux.c: resindvd: printf format fixes 2009-11-05 21:45:07 +0000 Tim-Philipp Müller * sys/dvb/dvbbasebin.c: dvbbasebin: printf format fixes 2009-11-05 21:44:51 +0000 Tim-Philipp Müller * ext/directfb/dfbvideosink.c: directfb: printf format fixes 2009-11-05 21:44:39 +0000 Tim-Philipp Müller * ext/alsaspdif/alsaspdifsink.c: alsaspdifsink: printf format fixes 2009-11-05 17:13:36 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Update last stop for the subtitles 2009-11-05 17:06:18 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Synchronize text and video by taking the running time instead of the stream time 2009-11-05 16:44:09 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Keep track of the subtitle segments 2009-11-05 16:41:56 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: If the video segment is not in TIME format don't accept it 2009-11-04 22:52:19 -0500 Olivier Crête * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: dtmfdetect: Add dtmfdetects to plugins docs 2009-11-04 22:19:58 -0500 Olivier Crête * gst/dtmf/Makefile.am: * gst/dtmf/gstdtmf.c: * gst/dtmf/gstdtmfdetect.c: * gst/dtmf/gstdtmfdetect.h: * gst/dtmf/tone_detect.c: * gst/dtmf/tone_detect.h: dtmfdetect: Add DTMF tone detector It looks at raw audio data and emits messages when DTMF is detected. The dtmf detector is the same Goertzel implementation used in FreeSwitch and Asterisk. It is in the public domain. 2009-11-05 13:53:46 +0100 Wim Taymans * gst/selector/gstinputselector.c: Revert "inputselector: use get_caps_reffed()" This reverts commit 49ec4f796a0e3f88a851708782c853baf4b05724. We can't use this new function yet. 2009-11-05 13:29:55 +0100 Wim Taymans * gst/selector/gstinputselector.c: inputselector: use get_caps_reffed() 2009-11-05 13:17:27 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Drop too late text buffer immediately Also improve debugging a bit and drop buffers without valid timestamp or duration because we can't handle them. 2009-11-05 12:25:25 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Fix race condition that results in a deadlock on shutdown 2009-11-04 22:21:35 -0500 Olivier Crête * gst/dtmf/gstdtmfsrc.c: dtmfsrc: Reject empty caps 2009-11-04 22:21:22 -0500 Olivier Crête * gst/dtmf/gstdtmfsrc.c: dtmfsrc: Use log level for repeated debug messages 2009-11-04 20:05:17 -0500 Olivier Crête * gst/dtmf/gstdtmfsrc.c: dtmfsrc: Allow for any samplerate 2009-11-04 23:32:07 +0000 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Fix previous commit: ensure we take a ref on the features 2009-11-04 15:21:50 +0000 Jan Schmidt * ext/resindvd/rsnbasesrc.c: * gst/autoconvert/gstautoconvert.c: resindvd,autoconvert: Avoid depending on 0.10.26 API Wait until after the next release to bump the core requirement. Until then, don't use gst_plugin_feature_list_copy and gst_pad_peer_get_caps_refed. 2009-11-02 17:06:53 +0000 Jan Schmidt * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: resindvd: Remove old code and obsolete comments Remove some disabled code paths and obsolete FIXME comments 2009-10-14 15:47:27 -0400 Gabriel Millaire * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: celtdec : chain_parse_data : check validity of timestamp, create a new one if needed celtenc : default framesize is 480 setcaps : gets framesize and set caps enc_chain : sets framesize in caps Added frame-size to static caps of audio/x-celt Replaced GST_DEBUG_OBJECT by GST_LOG_OBJECT in enc_chain setcaps: get frame-size from int instead of string setcaps: use default value for frame-size 2009-11-04 17:13:34 +0100 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: mpegdemux: Fix pointer-differences printout There is unfortunately no G_*_FORMAT conversion specifier for differences of pointers in glib, and we can't rely either on all platforms being 64bit. So let's just cast the difference to a gint and be done with it. 2009-11-04 13:55:04 +0000 Jan Schmidt * po/Makevars: po: Don't create backup .po files As well as preventing creation of useless backup files, it works around a bug in gettext 0.17 on OS/X 2009-11-04 15:57:40 +0100 Wim Taymans * ext/cdaudio/gstcdaudio.c: cdaudio: fix properties Fix properties and allow setting the device property. 2009-11-04 13:11:44 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Return WRONG_STATE from the subtitle chain when flushing 2009-11-04 13:07:27 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Unlock and free any pending subtitle buffers on FLUSH_START 2009-11-04 12:50:18 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Synchronize subtitle buffers with the video Fixes bug #600662. 2009-11-04 00:21:19 +0200 Stefan Kost * gst/selector/gstinputselector.c: inputselector: also add inline to the proto to fix the build 2009-11-04 00:19:20 +0200 Stefan Kost * ext/zbar/gstzbar.c: zbar: include quality and check count, fixes #600461 We report the relative quality in the message and we also use the cache to skip early detects and doubles. 2009-11-03 18:14:12 +0100 Edward Hervey * gst/selector/gstinputselector.c: gst: Remove dead assignments and resulting unused variables Merged from gst-plugins-base, 8cd1b5209b68944e1be56ca8bb69e46d4abb7a34. 2009-11-03 18:12:21 +0100 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Use the same iterate internal links function as in gst-plugins-base 2009-11-03 18:11:13 +0100 Tim-Philipp Müller * gst/selector/gstinputselector.c: Remove GST_DEBUG_FUNCPTR where they're pointless There's not much point in using GST_DEBUG_FUNCPTR with GObject virtual functions such as get_property, set_propery, finalize and dispose, since they'll never be used by anyone anyway. Saves a few bytes and possibly a sixteenth of a polar bear. Merged from gst-plugins-base, 6f4c1ac58341ee189225d313ddfe9ae24a65c88c. 2009-11-03 18:09:55 +0100 David Schleef * gst/selector/gstinputselector.c: Remove Ronald Bultje from Authors field Replaced with "GStreamer maintainers " or just removed, depending on the number of other authors. Merged from gst-plugins-base, 0e9bc5125aca546d773ed1002df573dd8e2dc136. 2009-11-03 18:08:05 +0100 Wim Taymans * gst/selector/gstinputselector.c: inputselector: set output caps before pushing Set the output caps on the srcpad before pushing the buffer because else core will do a rather expensive check to see if we can actually accept those caps on the srcpad. Merged from gst-plugins-base, bdfb4b46d746ef298fcf44260879c342af4cafa3. 2009-11-03 18:06:11 +0100 Wim Taymans * gst/selector/gstinputselector.c: inputselector: install an acceptcaps function Install a custom acceptcaps function instead of using the default expensive check. We accept whatever downstream accepts so we pass along the acceptcaps call to the downstream peer. Merged from gst-plugins-base, 5b72f2adf996739036e8d9b5f91005455d1fface. 2009-11-03 15:08:02 +0100 Sebastian Dröge * ext/kate/gstkatetiger.c: tiger: Make sure that tiger is not autoplugged by decodebin2 It's not really a decoder... 2009-11-03 14:50:15 +0100 Sebastian Dröge * ext/kate/gstkate.c: kate: Change ranks of katedec and tiger to PRIMARY to be autoplugged 2009-11-03 14:49:44 +0100 Sebastian Dröge * ext/kate/gstkatetiger.c: tiger: Change name of the subtitle sink template and classification This will make sure that subtitleoverlay can work with tiger. 2009-11-02 11:33:19 +0000 Jan Schmidt * gst/autoconvert/gstautoconvert.c: resindvd: Take a copy of the passed plugin features Clarify the ownership of the internal plugin feature list by making a copy of any passed list. Avoids crashes when freeing a passed list, or leaks caused by not freeing any internally built list. 2009-11-02 10:20:40 +0000 Jan Schmidt * ext/resindvd/rsnbasesrc.c: resindvd: Fix an oversight from updating the copy of basesrc Plugins need gst-i18n-plugin.h, not gst-i18n-lib.h 2009-11-01 15:56:54 +0000 Tim-Philipp Müller * ext/soundtouch/gstpitch.cc: pitch: remove pointless gst_element_no_more_pads() 2009-11-01 23:17:02 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Use gst_base_src_new_seamless_segment() When switching to a new seamless segment, use the new gst_base_src_new_seamless_segment() function, because elements can't send themselves seek events from the streaming thread. 2009-11-01 23:16:18 +0100 Jan Schmidt * ext/resindvd/rsnbasesrc.c: * ext/resindvd/rsnbasesrc.h: resindvd: Add gst_base_src_new_seamless_segment() to GstBaseSrc copy Add a new function to the internal copy of GstBaseSrc for starting a new seamless segment. 2009-11-01 19:21:38 +0100 Jan Schmidt * ext/resindvd/Makefile.am: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: * ext/resindvd/rsnbasesrc.c: * ext/resindvd/rsnbasesrc.h: * ext/resindvd/rsnpushsrc.c: * ext/resindvd/rsnpushsrc.h: resindvd: Update the base source copy This breaks seamless segment updates, causing deadlocks, to be fixed in subsequent commits. 2009-11-02 02:48:18 +0100 Jan Schmidt * gst/dvdspu/gstspu-pgs.c: dvdspu: Fix PGS window parsing Fix a problem introduced in the last PGS parsing patch by skipping the window count byte after reading it. 2009-11-01 20:42:44 +0200 René Stadler * gst/aiff/aiffparse.c: aiff: fix aiffparse debug category variable name Fixes missing symbol when compiling with debugging, since this is now in sync with the plugin_init in aiff.c. 2009-11-01 20:41:03 +0200 René Stadler * gst/aiff/aiff.c: aiff: init plugin debug category Fixes assertion (or unused variable warning with DISABLE_NLS). 2009-10-31 19:42:50 +0000 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-aiff.xml: * gst/aiff/aiffmux.h: * gst/aiff/aiffparse.h: aiff: add aiff elements to docs 2009-10-31 19:37:08 +0000 Tim-Philipp Müller * gst/aiff/aiff.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: aiff: gratuitious clean-ups: canonicalise function names, structs and defines 2009-10-31 17:50:54 +0000 Tim-Philipp Müller * gst/aiff/Makefile.am: * gst/aiff/aiff.c: * gst/aiff/aiffmux.c: * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: aiff: enable new aiff muxer Fixes #598763 even more. 2009-10-17 22:58:03 +0100 Robert Swain * gst/aiff/aiffmux.c: * gst/aiff/aiffmux.h: aiff: add basic AIFF muxer Fixes #598763. 2009-10-31 17:25:15 +0000 Tim-Philipp Müller * gst/aiff/Makefile.am: * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: aiff: remove unused includes and fix flags order in Makefile.am Also remove GST_PLUGINS_BASE_LIBS from LIBADD since we don't need to link against any of the -base libs (we just use a define from the gstaudio headers). 2009-10-31 17:20:53 +0000 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-aiff.xml: * gst-plugins-bad.spec.in: * gst/aiff/Makefile.am: * gst/aiff/aiffparse.c: * gst/aiff/aiffparse.h: * gst/aiffparse/Makefile.am: * po/POTFILES.in: aiff: rename 'aiffparse' plugin to 'aiff' 2009-10-08 19:06:26 -0400 Olivier Crête * tests/check/elements/rtpmux.c: tests: Add test for rtpdtmfmux locking 2009-09-28 19:54:53 -0400 Olivier Crête * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rtpmux.c: tests: Add unit test for rtpmux 2009-09-28 13:36:44 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Don't ignore requested pad name 2009-10-29 16:42:34 -0700 Michael Smith * tests/check/Makefile.am: tests: Use GST_PLUGINS_BASE_{CFLAGS,LIBS} for camerabin tests. 2009-10-29 16:34:23 -0700 Michael Smith * sys/osxvideo/Makefile.am: * sys/osxvideo/osxvideoplugin.c: osxvideosrc: change a .m file containing only C code to a .c file. Makes building this easier. 2009-10-27 22:08:42 +0000 Jan Schmidt * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Don't send new-segment with start time == -1 When sending new-segment to a stream, ensure that there is either a valid PCR, or else wait until there's a PTS on the stream (dropping packets if needed) in order to avoid generating an invlaid new-segments event. https://bugzilla.gnome.org/show_bug.cgi?id=595161 2009-10-28 16:22:13 +0200 Teemu Katajisto * tests/check/elements/camerabin.c: camerabin: use raw audio/video in unit tests Removes dependency to ogg/vorbis/theora when running camerabin unit tests. 2009-10-28 17:37:44 +0100 Julien Isorce * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: cleanup push buffer callback 2009-10-27 14:31:39 -0700 Michael Smith * gst/id3tag/id3tag.c: id3mux: glib doesn't reliably null-terminate wide-character encodings in g_convert, so write the null-terminator separately and explicitly. 2009-10-18 14:20:07 +0300 Stefan Kost * ext/lv2/gstlv2.c: lv2: fix pad direction for ungrouped ports Classic copy'n'paste bug. 2009-10-27 16:37:53 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: fix tag writing bug g_convert seems to add a single null terminating byte to the end of the string, even when the output is UTF16, we force the second 0 byte when copying to the output buffer. This issue was causing random crashes because it was assumed that the string resulting from g_convert had 2 extra bytes, but it has only one. 2009-10-27 11:51:05 -0700 Michael Smith * sys/directsound/gstdirectsoundsrc.c: * tests/icles/output-selector-test.c: * win32/vs6/gst_plugins_bad.dsw: * win32/vs8/gst-plugins-bad.sln: * win32/vs8/libgstdirectdraw.vcproj: Remove executable bits from non-executable files. 2009-10-27 00:22:42 +0000 Jan Schmidt * ext/resindvd/rsnstreamselector.c: * ext/resindvd/rsnstreamselector.h: resindvd: Remove extra new-segment in rsnstreamselector. Send discont. All the input pads for the resin stream selectors have the same source, and receive/send the same segment info, so there's no need to send a segment when switching and activating a different pad. Removing it makes on-the-fly audio track switching work properly. After switching audio track, mark the next buffer discont. 2009-10-26 20:55:15 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Avoid a deadlock. Improve chapter seek. Avoid a potential deadlock that happens when a call to gst_clock_id_wait_async() immediately calls the callback. Improve previous chapter seeking slightly by avoiding 'segment start != -1' assertions when there is no previous chapter and the seek therefore fails. 2009-10-26 12:19:32 +0000 Jan Schmidt * ext/resindvd/rsnstreamselector.c: resindvd: lower a debug message to log level. 2009-10-26 11:00:34 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Add a keypress mapping for switching audio track For debugging purposes, make keys 1-8 switch audio track. 2009-10-24 12:54:19 +0100 Jan Schmidt * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/autoconvert.c: autoconvert: Add a simple unit test Set up an autoconvert with 2 factories, and check that it can switch between them when the caps change. 2009-10-24 14:29:33 +0100 Jan Schmidt * ext/resindvd/rsndec.c: resindvd: Set the new initial-identity property on autoconvert https://bugzilla.gnome.org/show_bug.cgi?id=599469 2009-10-24 12:38:14 +0100 Jan Schmidt * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: Support installing identity as the initial child Add the 'initial-identity' property, which inserts identity for at startup for event passing, and replaces it with a new child when the first buffer (and caps) actually arrives. https://bugzilla.gnome.org/show_bug.cgi?id=599469 2009-10-24 11:18:59 +0100 Jan Schmidt * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: Cache incoming new segment events and push to children. Cache incoming new-segment info. When installing a child element, inform it of the current segment info. https://bugzilla.gnome.org/show_bug.cgi?id=599469 2009-10-26 00:41:55 +0000 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Add some debug in factory caps intersection 2009-10-24 11:05:47 +0100 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Simple fixes. Free the plugin feature list on dispose. Output a debug message when downstream returns a fatal flow result Fix awkward wording in a debug warning. 2009-10-24 10:27:03 +0100 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Gratuitously move GST_OBJECT_LOCK into a macro Create GST_AUTOCONVERT_LOCK/UNLOCK macros that (for now) just call GST_OBJECT_LOCK. 2009-10-15 13:32:32 +0100 Robert Swain * ext/faac/gstfaac.c: faac: Use definitions for default values Makes changing the defaults easier and more fool-proof in the future. Fixes #598552 2009-10-15 13:17:46 +0100 Robert Swain * ext/faac/gstfaac.c: faac: Change default AAC Profile to Low Complexity (LC) as this is more widely supported 2009-10-15 13:15:40 +0100 Robert Swain * ext/faac/gstfaac.c: faac: Change the param_spec default value for allowed block types to match the gst_faac_init value of 'normal' as this is better 2009-10-20 10:57:28 -0300 Thiago Santos * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: check width/height range Checks if the width/height that are to be set on src pad caps are within valid range of [16,4096] 2009-10-16 10:47:32 -0300 Thiago Santos * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: gppmux: Add support for 3gr6 Keep track of the chunk durations to be able to add 3gr6 brand if it is a faststart file and the longest chunk is smaller than a sec. Implemented according to 3gpp TS 26.244 v6.4.0 (2005-09) Fixes #584361 2009-10-15 21:11:16 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: Only push ftyp later (in faststart mode) In faststart mode, there is no need to send the ftyp right at the beginning of the stream. Waiting and sending it only later (when the moov atom is ready to be sent) provides us with more information about the stream and we can better select the compatible brands. 2009-10-15 17:51:39 -0300 Thiago Santos * gst/qtmux/gstqtmux.c: qtmux: Improve error message Improve error message when we can't get or estimate the timestamp/duration of a buffer 2009-10-26 00:42:16 +0000 Jan Schmidt * win32/common/config.h: win32: Commit bumped version number 2009-10-24 16:31:26 -0400 Wim Taymans * gst/camerabin/camerabingeneral.c: camerabin: fix build 2009-10-19 15:54:29 +0300 Teemu Katajisto * tests/check/elements/camerabin.c: camerabin: fix for gstreamer core unit test framework update Set camerabin state to NULL in the each test case end. 2009-10-19 14:54:59 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabinphotography.c: * tests/check/elements/camerabin.c: * tests/examples/camerabin/gst-camera-perf.c: * tests/examples/camerabin/gst-camera.c: camerabin: remove abbreviations from the property names. Fixes #573370 (partialy) Also rename their use in tests and examples. 2009-10-16 11:50:22 +0300 Stefan Kost * gst-libs/gst/interfaces/Makefile.am: * gst/camerabin/Makefile.am: * gst/selector/Makefile.am: build: use gst-glib-gen.mak to fix the glib build rules. The build rules in glib-gen.mak were using pattern rules in a non save way. 2009-10-16 11:21:05 +0300 Stefan Kost * ext/cog/.gitignore: * tests/check/elements/.gitignore: * tests/examples/camerabin/.gitignore: gitignore: ignore more 2009-10-15 17:45:00 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: set camerabin to READY before accessing the elements 2009-10-14 17:42:43 +0300 Stefan Kost * ext/timidity/gstwildmidi.c: wildmidi: use G_DIR_SEPARATOR_S instead of hardcoded slashes 2009-10-15 17:17:41 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: code cleanups Align element initialisation. This should be re-thought, g_object_new zeros things already. Harmonize the element getters for the src/sinks to return what we actualy use. 2009-10-15 16:41:12 +0300 Tommi Myöhänen * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinpreview.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: implement video preview creation Completes preview creation mechanism to be able to provide a preview image for video clips too. 2009-10-15 16:15:03 +0300 Stefan Kost * configure.ac: * gst/camerabin/camerabingeneral.c: * gst/camerabin/camerabingeneral.h: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: set camerabin default sources/sinks like in playbin2. Fixes #574434 This uses same approach like in playbin, namely checking for user defined element, auto{audio,video}{sink,src} and finally DEFAULT_{AUDIO,VIDEO}{SRC,SINK} defines from config.h. 2009-10-15 15:59:23 +0300 Stefan Kost * ext/ladspa/gstladspa.c: ladspa: don't reference freed pointer when building portnames 2009-10-08 15:18:04 -0700 David Schleef * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/generate_tables.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstlogoinsert.c: cog: Add color matrix to RGB->YCbCr conversion 2009-10-08 14:33:28 -0700 David Schleef * ext/cog/Makefile.am: * ext/cog/cogframe.h: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/generate_tables.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstlogoinsert.c: cog: Add color matrix selection to cogcolorspace Eventually hook it up to caps via gstvideo 2009-10-08 13:24:36 -0700 David Schleef * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/gstcogcolorspace.c: cog: Improve RGB<->YCbCr matrixing YCbCr->RGB now has a 'bits' setting, which controls the number of bits used for the matrix coefficients. Choices are 6 or 8. 6 is low quality, but faster. RGB->YCbCr now works. Always works in 8 bit, since it's the same speed as 6 bit. 2009-10-08 13:23:53 -0700 David Schleef * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: cog: Fix AYUV unpacking 2009-10-07 16:30:26 -0700 David Schleef * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: cog: hacking to improve matrix quality 2009-10-24 20:33:27 +0200 Edward Hervey * configure.ac: configure.ac: And back to development we go === release 0.10.16 === 2009-10-23 23:16:45 +0100 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.16 2009-10-23 23:15:31 +0100 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-10-23 11:00:53 +0300 Kaj-Michael Lang * ext/zbar/gstzbar.c: Fix start/stop typo 2009-10-23 10:48:25 +0100 Thomas Green * configure.ac: configure: also build neonhttpsrc with libneon-29.x Fixes #599332. 2009-10-23 10:18:12 +0200 Edward Hervey * ext/schroedinger/gstschroenc.c: schroenc: Use guint64 instead of uint64_t. Fixes #599355 2009-10-22 14:00:10 +0100 Jan Schmidt * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: Revert "dshowsrcwrapper: cleanup push buffer callback" gst-plugins-bad is still frozen for general commits. This reverts commit 2e4131926f2726fe8fee5c39dd9357f14764d0cb. 2009-10-22 14:26:30 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: cleanup push buffer callback 2009-10-22 11:43:17 +0100 Tim-Philipp Müller * gst/mpegpsmux/Makefile.am: mpegpsmux: some minor build fixes CLFAGS -> CFLAGS, and fix order of variables while we're at it. 2009-10-22 00:50:37 +0100 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Take the object lock fewer times When starting up and creating the list of element factories, only take the object lock twice instead of 3 times. 2009-10-21 23:06:56 +0100 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Don't hold the object lock when pushing When pushing out cached events, don't hold the object lock. Avoids deadlocks starting up DVD playback. 2009-10-22 11:10:28 +0200 Sebastian Dröge * ext/faac/Makefile.am: faac: Link with libgstbase for GstAdapter Fixes bug #599272. === release 0.10.15 === 2009-10-21 17:14:34 +0100 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gmedec.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst-plugins-bad.doap: * win32/common/config.h: release 0.10.15 2009-10-21 16:51:09 +0100 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-10-16 14:37:02 -0700 Michael Smith * gst/id3tag/id3tag.c: id3tag: actually write image to APIC tag. 2009-10-16 12:30:59 +0100 Jan Schmidt * configure.ac: * win32/common/config.h: 0.10.14.4 pre-release 2009-10-16 11:53:14 +0100 Jan Schmidt * sys/vdpau/Makefile.am: dist: Include vdpsink.h in the tarball to fix the dist. 2009-10-16 11:08:05 +0100 Jan Schmidt * ext/dts/gstdtsdec.c: dtsdec: Use gst_buffer_ref/unref, not gst_object_ref/unref properly fixes: #598274 2009-10-16 01:26:10 +0100 Jan Schmidt * gst/autoconvert/gstautoconvert.c: autoconvert: Use gst_pad_peer_accept_caps instead of gst_pad_set_caps. gst_pad_set_caps on the internal source pad always succeeds, because caps propagate to the peer with buffers, not immediately. Using gst_pad_peer_accept_caps properly checks whether the actual sub-element can accept caps when they change. https://bugzilla.gnome.org/show_bug.cgi?id=575568 2009-10-16 01:09:49 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Re-send audio stream select on re-configuration When the layout of the audio streams changes, re-send the current audio stream selection event, in order to trigger switching to the new stream properly. https://bugzilla.gnome.org/show_bug.cgi?id=575568 2009-10-16 00:50:31 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Fix a small flaw - if any audio stream exists, use it Don't create a dummy audio stream if only non-AC3 tracks exist. 2009-10-16 10:16:33 +0300 Stefan Kost * common: Automatic update of common submodule From 85d1530 to 0702fe1 2009-10-15 23:48:53 +0100 Jan Schmidt * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.14.3 pre-release 2009-10-14 11:06:46 +0100 Jan Schmidt * ext/resindvd/rsndec.c: resindvd: Fix decoder pad template to allow LPCM The pad template in the new switching decoder is too restrictive, preventing the LPCM decoder from being selected. https://bugzilla.gnome.org/show_bug.cgi?id=575568 2009-10-14 10:41:38 +0200 Edward Hervey * common: Automatic update of common submodule From a3e3ce4 to 85d1530 2009-10-13 13:05:50 +0100 Jan Schmidt * ext/resindvd/rsnaudiomunge.c: resindvd: Don't leak a reference to the parent in rsnaudiomunge Don't leak a reference to the pad parent in the sink pad event handler in rsnaudiomunge. https://bugzilla.gnome.org/show_bug.cgi?id=598263 2009-10-13 13:04:47 +0100 Jan Schmidt * ext/dts/gstdtsdec.c: dtsdec: Fix reference leak on all input buffers in 'dvd mode' https://bugzilla.gnome.org/show_bug.cgi?id=598274 2009-10-13 16:01:26 +0200 Peter Christoffersen * ext/faad/gstfaad.c: faad2: Don't leak element reference in the setcaps function Fixes bug #598139. 2009-10-12 14:27:57 +0100 Jan Schmidt * ChangeLog: * configure.ac: * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/eu.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.14.2 pre-release 2009-10-12 12:29:44 +0200 Josep Torra * ext/faad/gstfaad.c: faad: fixes warning in macosx snow leopard 2009-10-12 09:06:37 +0300 Stefan Kost * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: jack: ensure segtotal is at least 2 Not only adjust buffer-time and avoid segtotal=0, but instead ensure segtotal is atleast 2. Do same change on jacksrc. We could also check the latency and buffer time configured by the client and adjust buffer-time so that we get to the same number of segments. 2009-10-12 00:51:27 +0300 Stefan Kost * ext/jack/gstjackaudiosink.c: jack: don't crash in ringbuffer with SIGFPE on small buffer-times Jack overrides user-specified latency-time with the one it gets from jack itself. It also needs to adjust buffer-time somewhat to avoid segtotal being 0 2009-10-11 22:10:04 +0300 Stefan Kost * ext/metadata/metadataexif.c: metadata: init variables metadatamux_exif_get_exif_from_tag() does not neccesarily init the passed variables. 2009-10-03 21:35:02 +0300 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessor: use the type define like everywhere else 2009-10-03 21:31:55 +0300 Stefan Kost * gst-libs/gst/signalprocessor/gstsignalprocessor.c: signalprocessort: register debug category just once Previously we were trying to register it for every subclass. 2009-10-11 14:10:59 +0200 Josep Torra * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstpitch.cc: soundtouch: fixes warnings on macosx snow leopard 2009-10-11 14:02:26 +0200 Josep Torra * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: schroedinger: fix warnings on macosx snow leopard 2009-10-11 13:56:43 +0200 Josep Torra * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxpng.c: metadata: fix warnings in macosx snow leopard 2009-10-11 13:51:58 +0200 Josep Torra * ext/libmms/gstmms.c: mms: fixes warning in macosx snow leopard 2009-10-11 13:46:00 +0200 Josep Torra * ext/dirac/gstdiracenc.cc: dirac: fix warning in macosx snow leopard 2009-10-11 13:13:56 +0200 Josep Torra * gst/nuvdemux/gstnuvdemux.c: * gst/speed/gstspeed.c: speed: fix warnings in macosx snow leopard 2009-10-11 13:07:19 +0200 Josep Torra * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: fix warning in macosx snow leopard 2009-10-11 12:56:29 +0200 Josep Torra * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/mpegtspacketizer.c: mpegdemux: fix warnings in macosx snow leopard 2009-10-11 11:35:23 +0200 Josep Torra * gst/dtmf/gstrtpdtmfdepay.c: dtmf: fix warnings in macosx snow leopard 2009-10-11 11:27:08 +0200 Josep Torra * gst/amrparse/gstamrparse.c: * gst/amrparse/gstbaseparse.c: amrparse: fix warnings in macosx snow leopard 2009-10-11 11:22:11 +0200 Josep Torra * gst/aacparse/gstaacparse.c: * gst/aacparse/gstbaseparse.c: aacparse: fix warnings in macosx snow leopard 2009-10-11 11:14:16 +0200 Josep Torra * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoparse.c: basevideo: fix warnings in macosx snow leopard 2009-10-09 13:18:31 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: * gst/dvdspu/gstdvdspu.c: assrender/dvdspu: Increase ranks to PRIMARY 2009-10-09 09:19:06 +0200 Sebastian Dröge * gst/dvdspu/gstdvdspu.c: dvdspu: Include SubPicture in the classification 2009-10-09 09:18:04 +0200 Sebastian Dröge * ext/assrender/gstassrender.c: assrender: Make classification a bit more accurate Change from "Filter/Effect/Video" to "Mixer/Video/Overlay/Subtitle" 2009-10-08 19:51:31 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/capssetter.c: capssetter: add unit test 2009-10-08 11:00:49 +0100 Jan Schmidt * common: Automatic update of common submodule From 19fa4f3 to a3e3ce4 2009-10-07 16:29:08 -0700 David Schleef * ext/schroedinger/gstschroparse.c: schro: remove unused include of liboil.h 2009-10-07 15:43:22 +0300 Stefan Kost * ext/metadata/metadataxmp.c: metadata: don't copy trailing NULL of strings in xmp metadata Also useing g_strdup, fixes the malloc <-> g_free mismatch. 2009-10-07 15:26:12 +0300 Stefan Kost * ext/cog/gstcms.c: * ext/directfb/dfb-example.c: * ext/libmms/gstmms.c: * ext/resindvd/resindvdsrc.c: * gst/mpegtsmux/mpegtsmux.c: * gst/videomeasure/gstvideomeasure_collector.c: * sys/dvb/gstdvbsrc.c: * tests/examples/camerabin/gst-camera-perf.c: build: fprintf, sprintf, sscanf need stdio.h 2009-09-18 18:45:09 -0400 Olivier Crête * tests/check/Makefile.am: * tests/check/pipelines/.gitignore: * tests/check/pipelines/mimic.c: tests: Add test for mimic elements 2009-09-18 17:47:58 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Remove invalid todo 2009-10-06 18:36:15 +0200 Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: Ignore emphasis on/off bytes, and do fallback string encoding. For fallback, try ISO 8859-9 encoding if ISO 6637 failed. Add more debug calls. 2009-10-05 17:04:28 -0700 David Schleef * ext/dirac/gstdiracenc.cc: dirac: various fixes - Work around BaseEncoder bug not tracking frame index early. - Fix conversion of UYVY, YUY2, AYUV to internal format. 2009-10-05 16:16:34 -0700 David Schleef * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Revert "Call GstBaseVideoEncoder::start/stop during pad [de]activation." This reverts commit 4c087bcb072dcc9847b11c00123cf93c5e541dcb. The reverted commit changes the order that set_format() and start() are called, which is incorrect. The correct order is set_format(), start(), handle_frame()..., stop() 2009-10-05 13:33:22 -0700 David Schleef * gst-libs/gst/video/gstbasevideoencoder.c: basevideo: Free frame using utility function 2009-10-05 21:11:18 +0100 Jan Schmidt * ext/dirac/gstdiracenc.cc: diracenc: Fix caps unlinked negotiation move caps related code to gst_dirac_enc_set_format, and use the source pad template to get allowed caps when there is no peer pad. 2009-10-05 19:49:06 +0100 Jan Schmidt * ext/schroedinger/gstschroenc.c: schroenc: When the source pad isn't linked, use the pad template For negotiation, use the source pad pad template when it doesn't have a peer. 2009-10-05 15:47:58 +0100 Jan Schmidt * gst-libs/gst/video/gstbasevideoutils.c: basevideo: Fail if caps don't contain a framerate field Return false from the caps parsing function if there is no framerate field in the provided caps 2009-10-05 11:15:03 -0700 Michael Smith * gst/id3tag/id3tag.c: id3mux: Write UTF-16 byte order marker correctly. 2009-10-05 16:39:37 +0200 Alessandro Decina * ext/schroedinger/gstschroenc.c: schroenc: move caps related code to gst_schro_enc_set_format. 2009-10-05 15:28:47 +0200 Alessandro Decina * configure.ac: Depend on gtk-x11 explicitly. Fixes the build on OSX if gtk+-quartz is installed. 2009-10-05 15:26:15 +0200 Alessandro Decina * sys/qtwrapper/audiodecoders.c: Fix compilation warning with gcc-4.2. 2009-10-05 11:47:56 +0100 Jan Schmidt * tests/check/elements/.gitignore: Add faac test binary to the git ignores 2009-10-05 11:47:01 +0100 Jan Schmidt * ext/dirac/Makefile.am: * ext/schroedinger/Makefile.am: Use GST_CXXFLAGS and GST_CFLAGS to pull in local gst-libs includes. Move the GST_CXXFLAGS and GST_CFLAGS to the start of the includes set to pull in the local gst-libs from there first, instead of listing it explicitly. 2009-10-05 11:02:16 +0100 Jan Schmidt * ext/dirac/Makefile.am: * ext/schroedinger/Makefile.am: Fix CFLAGS and LDFLAGS for dirac/schrodinger Include the local headers and libs before ones outside this module. 2009-10-02 16:35:09 -0700 David Schleef * ext/dirac/Makefile.am: * ext/dirac/gstdiracenc.cc: * gst-libs/gst/video/gstbasevideoencoder.c: dirac: convert to BaseVideoEncoder 2009-09-27 14:25:39 -0700 David Schleef * ext/cog/Makefile.am: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/gstcms.c: * ext/cog/gstcms.h: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogscale.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: cog: hacking Add RGB to YCbCr matrixing Add tiny color management system (CMS) for video Add quality level for colorspace 2009-09-25 18:14:28 -0700 David Schleef * ext/cog/cogvirtframe.c: cog: reset cache instead of returning NULL Returning NULL makes things crash. Resetting the cache makes things run slow. Still an underlying bug somewhere, but not critical. 2009-09-23 13:17:54 -0700 David Schleef * ext/celt/gstceltdec.c: * ext/celt/gstceltdec.h: celtdec: Handle lookahead, discont 2009-10-02 19:08:21 +0300 Stefan Kost * ext/faac/gstfaac.c: * gst/videomeasure/gstvideomeasure_ssim.c: * tests/examples/camerabin/gst-camera-perf.c: build: add missing stdlib include to fix the build 2009-10-02 14:25:50 +0200 Alessandro Decina * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: Add GstBaseVideoDecoder::set_sink_caps vfunc. 2009-10-02 12:40:02 +0200 Alessandro Decina * gst-libs/gst/video/gstbasevideodecoder.c: Call GstBaseVideoDecoder::start/stop during pad [de]activation. 2009-10-01 16:06:02 +0200 Alessandro Decina * gst-libs/gst/video/gstbasevideoencoder.c: Don't ignore the value returned from GstBaseVideoEncoder::set_format. 2009-10-01 16:12:15 +0200 Alessandro Decina * ext/schroedinger/gstschroenc.c: Fix schroenc for refcount change in GstBaseVideoEncoder. 2009-10-01 15:50:55 +0200 Alessandro Decina * gst-libs/gst/video/gstbasevideoencoder.c: Unref frame->sink_buffer in gst_base_video_encoder_finish_frame 2009-10-01 16:11:46 +0200 Alessandro Decina * ext/schroedinger/gstschroenc.c: Make gst_schro_enc_handle_frame return GstFlowReturn. 2009-10-01 16:26:22 +0200 Alessandro Decina * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: Make GstBaseVideoEncoder::handle_frame return GstFlowReturn 2009-10-01 16:24:50 +0200 Alessandro Decina * gst-libs/gst/video/gstbasevideoencoder.c: Call GstBaseVideoEncoder::start/stop during pad [de]activation. 2009-10-02 12:04:28 +0200 Alessandro Decina * gst/videosignal/gstvideodetect.c: Fix a compiler warning. 2009-10-02 13:02:31 +0300 Stefan Kost * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: zbar: post a message instead of printing the code to stdout Docment the message format that we sent. Add a property to turn message sending off. 2009-10-02 11:23:49 +0300 Stefan Kost * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-lv2.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xvid.xml: docs: update plugin doc scan files 2009-10-02 11:22:48 +0300 Stefan Kost * ext/zbar/gstzbar.c: zbar: cleanups Use start/stop to manage the cache. Few code cleanups and comments. 2009-10-02 11:09:11 +0300 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-cog.xml: * docs/plugins/inspect/plugin-pnm.xml: * docs/plugins/inspect/plugin-videomeasure.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-zbar.xml: docs: add zbar plugin 2009-10-02 10:37:43 +0300 Stefan Kost * ext/Makefile.am: zbar: add new plugin to the build here too 2009-10-02 10:32:37 +0300 Stefan Kost * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: keep list sorted 2009-10-02 07:46:17 +0200 Sebastian Dröge * configure.ac: configure.ac: Fix build system, zbar is no dependency-less plugin 2009-10-01 23:51:04 +0300 Stefan Kost * configure.ac: * ext/zbar/Makefile.am: * ext/zbar/gstzbar.c: * ext/zbar/gstzbar.h: zbar: wrap zbar library as a image analyzer zbar is a bar code scanner library. 2009-10-01 17:19:54 +0100 Christian F.K. Schaller * gst-plugins-bad.spec.in: * win32/MANIFEST: update spec file with latest changes and remove file from MANIFEST which isn't there any longer 2009-09-02 15:26:15 +0300 Tommi Myöhänen * ext/metadata/metadataxmp.c: metadata: change XMP location tags to start with capitals 2009-08-25 10:10:15 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: fix deadlock when error occurs at video recording startup 2009-08-27 14:35:26 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: camerabin: handle preview-caps only in image mode and only when they change This prevents camerabin to create preview pipeline every time when application re-sets the same caps again. 2009-08-25 09:35:07 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: don't send multiple EOS events to video pipeline 2009-08-22 17:09:39 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabinphotography.c: camerabin: fix scene mode setting Camerabin caches photography settings, but it didn't take into account that scene mode setting may change other settings as well. So, config needs to be read back from device after scene mode is set. 2009-08-21 09:14:31 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: camerabin: allow mode parameter setting in NULL state 2009-08-20 17:55:26 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: allow capture resolution to be set in NULL state 2009-09-10 15:16:23 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: camerabin: fix image queue parameter setting Camerabin incorrectly used G_GUINT64_CONSTANT macro for setting "max-size-buffers" and "max-size-bytes" properties in image queue, even when they aren't 64bit integers. 2009-08-12 11:10:55 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: camerabin: fix warning with g_object_get and join separate g_object_sets into one 2009-07-31 11:57:12 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: camerabin: reset active-pad in output-selector after READY state Camerabin sets itself to READY state during resolution change. This operation makes output-selector to forget its currently active pad, so it must be set again after state change. 2009-06-29 15:23:25 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: don't reset capsfilters or zoom if error occurs If an error occurs, application should set pipeline to NULL, and updating zoom can actually block message handling if video device driver has failed and video src element supports zooming using photography interface and S_CROP. 2009-10-01 17:17:03 +0300 René Stadler * gst/videomeasure/Makefile.am: videomeasure: link with libm 2009-10-01 15:09:27 +0200 Sebastian Dröge * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: resindvdbin: If no suitable audio decoder is found play the DVD without audio 2009-10-01 14:54:43 +0200 Sebastian Dröge * ext/resindvd/resindvdbin.c: resindvdbin: Also post missing element messages if any other element is missing 2009-10-01 14:52:06 +0200 Sebastian Dröge * ext/resindvd/Makefile.am: * ext/resindvd/resindvdbin.c: resindvdbin: Post missing decoder messages if one is missing For video this is an error, for audio only a warning. 2009-10-01 14:40:56 +0200 Sebastian Dröge * ext/resindvd/resindvdbin.c: resindvdbin: Use the new video decoder This makes resindvdbin work with other MPEG video decoders than mpeg2dec, for example the FFMPEG or Fluendo MPEG decoders. 2009-10-01 14:37:43 +0200 Sebastian Dröge * ext/resindvd/Makefile.am: * ext/resindvd/resindvdbin.c: * ext/resindvd/rsndec.c: * ext/resindvd/rsndec.h: resindvdbin: Rename files 2009-10-01 14:36:23 +0200 Sebastian Dröge * ext/resindvd/rsnaudiodec.c: * ext/resindvd/rsnaudiodec.h: resindvdbin: Refactor audio decoder and add a (MPEG) video decoder 2009-10-01 13:29:03 +0200 Sebastian Dröge * ext/resindvd/rsnaudiodec.c: rsnaudiodec: Get desired sink caps from the pad template 2009-10-01 10:54:15 +0200 Sebastian Dröge * ext/rsvg/gstrsvgdec.c: rsvg: Unpremultiply Cairo's ARGB to match GStreamer's 2009-09-25 12:20:50 +0400 Руслан Ижбулатов * gst/videomeasure/gstvideomeasure_collector.c: Take offset gaps into account. Prevents measurecollector from crashing when frame numbers are not consecutive. Fixes bug #596285. 2009-09-29 15:47:13 +0200 Marc-André Lureau * gst/qtmux/atoms.c: qtmux: fix flags_as_uint to flags[] 2009-09-30 15:47:17 +0200 Sebastian Dröge * ext/resindvd/resindvdbin.c: resindvdbin: Create external srcpads from the static pad templates 2009-09-22 12:16:37 +0100 Jan Schmidt * gst/dvdspu/gstspu-pgs.c: dvdspu: Improve PGS parsing Improve (slightly) the interpretation of PGS set-window blocks to avoid printing warnings about unused bytes when there are multiple window definitions. 2009-09-22 01:16:47 +0100 Jan Schmidt * gst/dvdspu/gstspu-pgs.c: dvdspu: Fix rendering and add guards Fix the rendering when we hit the right hand side of the display area, by resetting to the correct X coordinate, and add some more guards against bad PGS data. 2009-09-08 00:01:28 +0300 René Stadler * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * gst/videosignal/gstvideomark.h: videosignal: change pattern data type to uint64, add property and message field Keeps the old uint typed value support for compatibility. 2009-09-06 05:36:46 +0300 René Stadler * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: videosignal: allow pattern-count property to be 0 2009-09-04 22:50:34 +0300 René Stadler * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: videosignal: add support for packed YUV formats 2009-09-04 22:30:27 +0300 René Stadler * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideodetect.h: * gst/videosignal/gstvideomark.c: * gst/videosignal/gstvideomark.h: videosignal: add support for all planar YUV formats, using gstvideo 2009-09-06 02:44:05 +0300 René Stadler * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: videosignal: add bound checks 2009-09-04 16:25:05 +0300 René Stadler * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: videosignal: remove unused macros 2009-09-26 17:23:02 +0200 Sebastian Dröge * ext/resindvd/resindvdbin.c: resindvdbin: Use gst_caps_can_intersect() because it's faster 2009-09-26 17:21:35 +0200 Sebastian Dröge * ext/resindvd/rsnaudiodec.c: * ext/resindvd/rsnaudiodec.h: rsnaudiodec: Use ghost pads and always forward application/x-gst-dvd events immediately Fixes bug #582779. 2009-09-26 17:19:32 +0200 Jan Schmidt * ext/resindvd/resindvdbin.c: * ext/resindvd/rsnaudiodec.c: resindvdbin: Use autoconvert in rsnaudiodec and build a list of possible decoders Partially fixes bug #582779. 2009-09-25 16:54:10 +0200 Mark Nauwelaerts * gst/amrparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.h: * gst/flacparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.h: baseparse: sync baseparse change 2009-09-25 17:02:53 +0200 Mark Nauwelaerts * gst/aacparse/gstaacparse.c: * gst/aacparse/gstbaseparse.c: * gst/aacparse/gstbaseparse.h: aacparse: forego (bogus) parsing of already parsed (raw) input 2009-09-25 11:07:02 +0200 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Use new single iterator for the internally linked pads This fixes a deadlock and removes some useless code. 2009-09-25 11:04:01 +0200 Sebastian Dröge * ext/resindvd/rsnstreamselector.c: rsnstreamselector: Use new single object iterator for the internally linked pads This prevents an ugly deadlock. 2009-09-25 10:50:31 +0200 Sebastian Dröge * ext/resindvd/resindvdbin.c: * ext/resindvd/rsnbasesrc.c: resindvdbin: Don't block the external ghost pads but only their targets 2009-09-24 11:26:29 -0700 David Schleef * ext/cog/Makefile.am: cog: use BUILT_SOURCES instead of temp library 2009-09-23 12:32:54 +0200 Alessandro Decina * gst/adpcmdec/adpcmdec.c: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfparse.c: * gst/h264parse/gsth264parse.c: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mxf/mxfmpeg.c: * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: Fix warnings with gcc 4.0.1. 2009-09-22 12:25:13 +0100 Tim-Philipp Müller * configure.ac: configure: fix --disable-external again 2009-09-22 13:44:14 +0300 Stefan Kost * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: Revert "LV2 preset support." This reverts commit c95f59cd2dc129899b37fecaa52c89db3d8a5ef8. 2009-09-22 13:43:57 +0300 Stefan Kost * ext/lv2/gstlv2.c: Revert "Fix property index when setting preset." This reverts commit 0a6b22b1917af8a89db1981a0f5df3dcee78b1dd. 2009-09-22 13:23:25 +0300 Stefan Kost * ext/cog/Makefile.am: cog: fix the build Add a uninstalled convinience libtool library containing the generated sources. Add that as a dependency to the plugin. 2009-08-17 17:21:41 -0400 Dave Robillard * ext/lv2/gstlv2.c: Fix property index when setting preset. 2009-08-17 17:06:40 -0400 Dave Robillard * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: LV2 preset support. 2009-09-22 08:11:36 +0200 Lutz Mueller * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmutils.c: pnm: Handle ASCII encoded PNM data that is split over multiple buffers Also: - unref buffers after gst_buffer_span - fix scanning of header if header data is split over several buffers Fixes bug #595700. 2009-09-21 11:33:50 -0700 David Schleef * ext/cog/cogtables.c: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/generate_tables.c: * ext/cog/gstcogscale.c: cog: Add quality setting to cogscale 2009-09-21 09:35:30 -0700 David Schleef * ext/cog/Makefile.am: * ext/cog/cog.orc: * ext/cog/cogvirtframe.c: cog: (re-)implement 1/2/4-tap scaling 2009-09-21 09:30:44 -0700 David Schleef * ext/cog/cogframe.h: * ext/cog/cogvirtframe.c: cog: Fix the virtual frame line cache 2009-09-21 09:49:23 -0700 David Schleef * ext/celt/gstceltenc.c: celtenc: VBR requires celt-0.6.0 2009-09-21 12:06:55 +0200 Edward Hervey * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Specify that psi table is static const. This avoids re-allocating it every single time we go into it. Roughly 10% performance boost in overall tsparse processing time. 2009-09-20 17:53:24 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: Revert "mpegtsparse: use fixed size array rather than dynamically allocating" This reverts commit ae75b6f3666512887ae526f16a1ad41bbf2517ac. 2009-09-20 15:30:59 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: mpegtsparse: use fixed size array rather than dynamically allocating 2009-09-20 15:18:46 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: mpegtsparse: replace streams hashtable with an array of streams 2009-09-20 14:08:50 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: unref caps on dispose, reset packet size on _reset 2009-09-20 13:15:14 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: mpegtsparse: make sure packetsize is set on caps of buffers 2009-09-20 12:38:00 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: mpegtsparse: detect packetsize and don't just assume 188 bytes. 2009-09-19 14:10:28 -0700 David Schleef * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: celtenc: Add complexity, cbr, and max-bitrate properties 2009-09-19 13:32:19 -0700 David Schleef * configure.ac: * ext/cog/Makefile.am: * ext/cog/cog.orc: * ext/cog/cogframe.c: * ext/cog/cogorc.c: * ext/cog/cogorc.h: * ext/cog/cogvirtframe.c: * ext/cog/gstcogcolorspace.c: cog: autogenerate code, colorspace improvements 2009-09-18 20:27:44 -0700 David Schleef * ext/cog/cogframe.c: * ext/cog/cogvirtframe.c: * ext/cog/gstcog.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogfilter.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogutils.c: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: cog: remove // comments 2009-09-16 20:39:52 +0200 Edward Hervey * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Don't use GstIterator, do change detection ourselves. Using a GstIterator is slow because we have to create/destroy that iterator every single time. We just do the threadsafe cookie check and list iteration ourselves. 2009-09-15 23:18:43 +0200 Edward Hervey * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Avoid type-checking casts in tight loops 2009-09-15 23:12:33 +0200 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: mpegtspacketizer: Make next_packet() return an enum. This avoids calling an extra gst_adapter_available() in a tight loop. 2009-09-15 23:11:01 +0200 Edward Hervey * gst/mpegdemux/mpegtsparse.c: mpegtsparse: More branch prediction macros 2009-09-15 20:49:39 +0200 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtsparse.c: mpegtspacketizer: Spread branch prediction macros 2009-09-15 19:16:36 +0200 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtsparse.c: mpegtsparse/mpegtspacketizer: Register and use GQuark for structures. 2009-09-15 18:57:25 +0200 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: mpegtspacketizer: Initialize debugging in _get_type There's no need for an extra function since all debuggin will require a MpegTSPacketizer which means that the GType will be created, therefore move the debug category initialization there. 2009-09-15 23:09:21 +0200 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: mpegtspacketizer: memset structure instead of individually setting fields to 0 2009-09-15 23:08:13 +0200 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: mpegtspacketizer: Remove g_return_if_fail It's overkill for code only used by one element. 2009-09-15 19:44:46 +0200 Edward Hervey * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtsparse.c: mpegtspacketizer/parse: Don't use gst_structure_to_string() for debugging. There's GST_PTR_FORMAT for that, and too bad for the systems that don't have support for that. It just costs too much cpu. 2009-09-15 19:00:30 +0200 Edward Hervey * gst/mpegtsparse/.gitignore: * gst/mpegtsparse/Makefile.am: * gst/mpegtsparse/gstmpegdesc.c: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtspacketizer.h: * gst/mpegtsparse/mpegtsparse.c: * gst/mpegtsparse/mpegtsparse.h: * gst/mpegtsparse/mpegtsparsemarshal.list: gst: Remove dead mpegtsparse directory. This was seriously confusing. Also, the code is in gst/mpegdemux/ 2009-09-18 14:25:49 -0700 David Schleef * configure.ac: * ext/Makefile.am: * ext/cog/Makefile.am: * ext/cog/cog.h: * ext/cog/cogframe.c: * ext/cog/cogutils.h: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/gstcog.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogfilter.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/cog/gstcogutils.c: * ext/cog/gstcogutils.h: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: cog: fixes to make cog work inside -bad 2009-09-18 15:06:57 -0700 David Schleef * gst/videomeasure/Makefile.am: videomeasure: fix line endings 2009-09-18 15:06:36 -0700 David Schleef * gst/videomeasure/Makefile.am: videomeasure: fix distcheck 2009-09-17 18:16:35 -0700 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: quiet debugging message in last commit 2009-09-17 18:15:28 -0700 David Schleef * ext/schroedinger/gstschroenc.c: schroenc: Keep track of granule offset 2009-08-31 10:36:46 -0700 David Schleef * configure.ac: * ext/cog/Makefile.am: * ext/cog/cogframe.c: * ext/cog/cogframe.h: * ext/cog/cogorc.c: * ext/cog/cogorc.h: * ext/cog/cogvirtframe.c: * ext/cog/cogvirtframe.h: * ext/cog/gstcog.c: * ext/cog/gstcogcolorspace.c: * ext/cog/gstcogdownsample.c: * ext/cog/gstcogfilter.c: * ext/cog/gstcogmse.c: * ext/cog/gstcogscale.c: * ext/cog/gstcogutils.c: * ext/cog/gstcogutils.h: * ext/cog/gstcolorconvert.c: * ext/cog/gstlogoinsert.c: Copy cog plugin and video library from cog project 2009-09-17 16:54:57 -0700 David Schleef * ext/schroedinger/gstschrodec.c: schrodec: Fix resync bug due to adapter API change gst_adapter_masked_scan_uint32() changed slightly from when this element was in Schroedinger. Oops. 2009-09-17 16:57:16 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: debug at new segment events 2009-09-17 16:54:14 -0700 David Schleef * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: Set DISCONT on buffers 2009-09-17 10:50:40 -0700 David Schleef * gst-libs/gst/video/gstbasevideodecoder.c: basevideo: Add a warning 2009-09-17 10:49:13 -0700 David Schleef * ext/celt/gstceltenc.c: celtenc: don't limit bit rate 2009-09-17 09:38:02 +0200 Lutz Mueller * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: pnm: Add ASCII decoding support ...and make the ASCII output of the encoder a bit more pretty. Fixes bug #595409. 2009-09-17 09:35:00 +0200 Sebastian Dröge * configure.ac: pnm: Remove the experimental status from the pnm plugin 2009-08-14 18:08:56 -0400 Dave Robillard * ext/lv2/gstlv2.c: More tolerate port group support, plugin cleanup. Gracefully handle plugins with illegal groups that contain no symbol by treating ports in that group normally (i.e. as if they weren't part of a group). The port groups spec mandates that groups have a valid unique symbol, but plugins aren't perfect... Make (conceptually) static plugin variables actually (C) static, and clean up SLV2 related things with a GCC shared library destructor, if GCC is in use. 2009-08-12 01:07:57 -0400 Dave Robillard * ext/lv2/gstlv2.c: Make mono warning visible in public documentation. 2009-08-12 01:03:32 -0400 Dave Robillard * ext/ladspa/gstladspa.c: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: Multi-channel support with channel positions. This queries port roles from the LV2 data and converts it into GStreamer channel positions. This should allow any type of multi-channel plugin (including beyond stereo, e.g. surround) to work fine in GStreamer, and with elements that require channel positions to be explicitly stated. 2009-08-10 23:12:24 -0400 Dave Robillard * ext/lv2/gstlv2.c: Add documentation for LV2 element. 2009-08-10 23:04:47 -0400 Dave Robillard * ext/ladspa/gstladspa.c: Fix typo in LADSPA element documentation. 2009-07-21 15:45:06 -0400 Dave Robillard * configure.ac: Bump SLV2 dependency to 0.6.6. 2009-07-10 21:52:30 -0400 Dave Robillard * ext/lv2/calf-lv2-port-groups.patch: * ext/lv2/swh-lv2-port-groups.patch: Add swh and calf LV2 port group patches. 2009-07-03 20:00:11 -0400 Dave Robillard * ext/ladspa/gstladspa.c: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: Working multi-channel pads for LV2 plugins. 2009-06-27 00:25:38 -0400 Dave Robillard * ext/lv2/gstlv2.c: Allocate a static predicate for pg:inGroup. 2009-06-25 17:25:52 -0400 Dave Robillard * ext/lv2/gstlv2.c: Only allocate lv2:inPlaceBroken predicate once. 2009-06-25 15:10:24 -0400 Dave Robillard * gst-libs/gst/signalprocessor/gstsignalprocessor.c: Eliminate use of static mono pad template. 2009-06-25 15:07:05 -0400 Dave Robillard * ext/lv2/gstlv2.c: Separate port discovery from pad template creation. This first counts ports (using the builtin slv2 functions to do so rather than manually as before), then creates descriptors for each port and finds all port groups. Only then are pad templates created (towards using group information for creating multi-channel pads). 2009-06-25 12:34:03 -0400 Dave Robillard * ext/lv2/gstlv2.c: Use silly glib types :). 2009-06-20 19:52:26 -0400 Dave Robillard * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: Query and store port group information. Replace port index arrays with a struct for holding more information than just indices (e.g. groups). 2009-05-25 22:15:56 -0400 Dave Robillard * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: Working basic LV2 signal processing. LV2 plugins, short of any surprises, should work with the same basic functionality as LADSPA plugins. 2009-05-25 20:43:10 -0400 Dave Robillard * ext/lv2/gstlv2.c: Set class inPlaceBroken property. 2009-09-17 09:43:37 +0300 Stefan Kost * ext/ivorbis/vorbisdec.c: docs: fix example and mention difference to vorbisdec 2009-09-02 11:11:20 +0100 Jan Schmidt * sys/vdpau/gstvdpvideopostprocess.c: vdpau: Fix bogus check before unreffing 2009-09-01 19:48:43 +0100 Jan Schmidt * configure.ac: vdpau: Fix pkg-config test If the pkg-config check doesn't succeed, test with the old method instead of bailing out of configure with an error. 2009-08-20 00:16:02 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: handle pixel-aspect-ratio better the implementation is not entirely correct since we assume that the sink element's pixel-aspect-ratio is 1/1 2009-08-19 22:52:34 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: remove par from caps since we don't handle it yet 2009-08-19 22:40:48 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: vdpauvideopostprocess: don't remove interlaced flag in video_to_output_caps() 2009-08-19 22:23:17 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: add inverse-telecine property 2009-08-19 22:03:11 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: fix noise-reduction property getter 2009-08-19 22:02:19 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: add sharpening property 2009-08-17 23:42:50 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.h: vdpau: remove gst_vdp_device_new from header 2009-08-17 23:42:21 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: vdpausink: fix error handling if gst_vdp_get_device returns NULL 2009-08-17 23:39:52 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: vdpau: add back vdpausink and vdpauvideopostprocess 2009-08-17 23:39:14 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: vdpdevice: fix error handling and threadsafety return NULL incase of initalization errors and guard hashtable access with a mutex 2009-07-17 22:50:18 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: get correct number of needed frames if we're doing noise reduction 2009-07-17 22:48:23 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: small indent fix 2009-07-15 20:18:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: fix gst_byte_reader_masked_scan_uint32 usage 2009-07-04 19:48:42 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvidepostprocess: remove boolean noise-reduction property Use the float one to determine if we should enable noise reduction or not 2009-07-04 15:46:02 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: add support for noise reduction 2009-07-04 13:59:36 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: vdpauvideopostprocess: add support for deinterlacing The code is roughly modeled after the deinterlace plugin 2009-07-02 17:11:10 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: vdpausink: add myself to copyright 2009-07-02 14:01:16 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideopostprocess.c: vdpauvideopostprocess: s/gst_vdp_vpp_set_caps/gst_vdp_vpp_sink_setcaps 2009-07-01 23:12:20 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: use gst_byte_reader_masked_scan_uint32 instead of our own version 2009-07-01 00:20:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: vdpau: use G_N_ELEMENTS instead of hardcoding array sizes 2009-07-01 00:13:14 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: vdpau: use G_N_ELEMENTS instead of NULL terminating array 2009-06-30 23:55:13 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpoutputbuffer.c: * sys/vdpau/gstvdpoutputbuffer.h: * sys/vdpau/gstvdpsink.c: * sys/vdpau/gstvdpsink.h: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideopostprocess.c: * sys/vdpau/gstvdpvideopostprocess.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpyuvvideo.c: vdpau: add new vdpausink and vdpauvideopostprocess elements vdpausink is as the name implies a sink which takes vide/x-vdpau-output buffers and outputs it to the screen. vdpauvideopostprocess is an element which takes video/x-vdpau-video buffers and outputs video/x-vdpau-output buffers. The element can also do things like deinterlacing and other postprocessing but this is not implemented yet. 2009-06-29 22:50:42 +0200 Carl-Anton Ingmarsson * configure.ac: vdpau: check for vdpau with pkg-config first 2009-06-24 17:51:58 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpvideoyuv.c: vdpau: split gst_vdp_mpeg_dec_reset into start and stop 2009-06-24 11:36:28 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: don't put the GstVdpDevice in the caps 2009-06-23 23:03:52 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpvideoyuv.h: * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: make GstVdpVideoYUV implement pad_alloc also change GstVdpMpegDec and GstVdpYUVVideo to make use of this 2009-06-23 17:26:22 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpyuvvideo.c: vdpau: add support for YUY2 2009-06-23 17:16:25 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpyuvvideo.c: vdpau: add support for UYVY 2009-06-23 16:57:45 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: factor out common caps calculation and put it in gstvdputils.[ch] 2009-06-22 23:25:55 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdputils.c: * sys/vdpau/gstvdputils.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpyuvvideo.c: vdpau: refactor GstVdpVideoYUV and GstVdpYUVVideo 2009-06-22 22:17:48 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: make GstVdpYUVVideo inherit from GstBaseTransform 2009-06-22 11:00:40 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideoyuv.c: vdpau: fixup some debug prints 2009-06-22 10:57:25 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpvideoyuv.h: vdpau: make GstVdpVideoYUV inherit from GstBaseTransform 2009-09-16 08:22:19 +0200 Lutz Mueller * gst/pnm/gstpnm.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmutils.c: * gst/pnm/gstpnmutils.h: pnm: Support ASCII format for encoding and handle unsupported formats better in the decoder Fixes bug #595215. 2009-09-15 23:32:06 +0100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Handle base_time when sending segment updates. Don't send bogus new segment update events when the stream doesn't start at 0. Fixes broken seeking in some files. Fixes: #594812 2009-08-18 13:35:59 +0200 Zaheer Abbas Merali * gst/mpegdemux/gstsectionfilter.c: mpegtsdemux, mpegtsparse: max section length is 4093 not 1021. 2009-08-18 01:08:03 +0200 Zaheer Abbas Merali * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: add pad for DVB Subtitling pads 2009-09-13 19:39:59 +0200 Sebastian Dröge * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: pnm: Use correct rowstride for 8 bit grayscale too 2009-09-13 19:33:57 +0200 Sebastian Dröge * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: pnm: Correctly convert from/to GStreamer rowstride 2009-09-13 19:17:15 +0200 Sebastian Dröge * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: pnm: Fix caps 8 bit grayscale caps have no endianness field and the caps name of GST_VIDEO_CAPS_RGB is still "video/x-raw-rgb" and not GST_VIDEO_CAPS_RGB. 2009-09-13 19:13:24 +0200 Lutz Mueller * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmenc.h: pnm: Lots of bugfixes (1) Fix examples. (2) Add support for gray images. (3) Remove "use_fixed_caps" which doesn't seem to be useful. (4) Do proper negotiation in the encoder. (5) Fix memleak in the setcaps function in the encoder. (6) Keep a link to the src pad in the encoder now that we need it more often. Partially fixes bug #164870. 2009-09-12 18:57:05 +0100 Christian Schaller * gst/h264parse/gsth264parse.c: Fix factory information for h264parse, add missing Video 2009-09-11 14:38:46 -0700 Michael Smith * gst/aiffparse/aiffparse.c: aiffparse: Fix an off-by-8 bug in parsing the AIFF data size. This led to overreading by 8 bytes, giving an audible glitch at the end of a file (except when the file didn't have a trailing chunk of some sort). 2009-09-08 20:52:09 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Use GST_TIME_FORMAT in debug statement. 2009-09-08 09:20:00 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Reset stream->last_time when flushing. This fixes naive seeking a tiny bit (by basically hinting at _data_cb that it shouldn't expect the incoming buffers to be the ones just after the previous ones). Without this, seeking by more than 10mins forward would just end up in an endless loop. 2009-09-08 09:18:42 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Sprinkle branch prediction macros. 2009-09-10 12:12:26 -0700 Michael Smith * gst/id3tag/id3tag.c: id3tag: When writing id3v2.3, do not use UTF-8. UTF-8 is only permitted in v2.4. So instead use ISO-8859-1 for ascii-only strings, and UTF16 otherwise. Also, do not null terminate strings in text frames, except where required. These two allow windows media player to play (and correctly read tags) files created by id3mux. 2009-07-23 16:13:28 -0700 Michael Smith * gst/adpcmdec/adpcmdec.c: adpcmdec: complete ima adpcm support. 2009-07-23 11:59:39 -0700 Michael Smith * gst/adpcmdec/adpcmdec.c: adpcmdec: checkpoint for incomplete IMA ADPCM support. 2009-09-10 12:02:21 +0200 Sebastian Dröge * gst/videomeasure/gstvideomeasure.c: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_ssim.c: videomeasure: Fix format strings and include correct i18n header 2009-09-10 11:58:02 +0200 Sebastian Dröge * gst/videomeasure/gstvideomeasure.c: * gst/videomeasure/gstvideomeasure.h: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_collector.h: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videomeasure/gstvideomeasure_ssim.h: videomeasure: Fix indention, line endings and use LRN's real name 2009-09-09 19:14:27 +0400 Руслан Ижбулатов * configure.ac: * gst/videomeasure/Makefile.am: * gst/videomeasure/gstvideomeasure.c: * gst/videomeasure/gstvideomeasure.h: * gst/videomeasure/gstvideomeasure_collector.c: * gst/videomeasure/gstvideomeasure_collector.h: * gst/videomeasure/gstvideomeasure_ssim.c: * gst/videomeasure/gstvideomeasure_ssim.h: videomeasure: Initial version of videomeasure plugin This plugin contains elements for calculating metrics of video streams, intended for objective video codec comparison. At the moment only SSIM metric is implemented (why would you need anything else anyway?). Also contains a helper videomeasure_collector element that collects measurement events and outputs them into a file (to be used with gst-launch). Other metrics may be implemented in the future along with a base class for all measurers. Fixes bug #594321. 2009-09-10 08:54:23 +0200 Sebastian Dröge * configure.ac: pnm: Mark PNM plugin as experimental because it doesn't work well yet 2009-09-10 08:53:46 +0200 Sebastian Dröge * gst/pnm/gstpnmdec.c: pnmdec: Partially fix negotiation issues and refcount leaks 2009-09-10 08:48:12 +0200 Sebastian Dröge * gst/pnm/Makefile.am: * gst/pnm/gstpnmenc.c: pnmenc: Fix negotiation issues and refcount leaks 2009-09-10 08:29:06 +0200 Sebastian Dröge * gst/pnm/gstpnm.c: pnm: Fix typefinder caps 2009-09-10 08:23:22 +0200 Lutz Mueller * configure.ac: * gst/pnm/Makefile.am: * gst/pnm/gstpnm.c: * gst/pnm/gstpnmdec.c: * gst/pnm/gstpnmdec.h: * gst/pnm/gstpnmenc.c: * gst/pnm/gstpnmenc.h: * gst/pnm/gstpnmutils.c: * gst/pnm/gstpnmutils.h: pnm: Add PNM encoder and decoder elements Fixes bug #164870. 2009-09-10 07:56:25 +0200 Sebastian Dröge * ext/ladspa/Makefile.am: * ext/lv2/Makefile.am: * gst-libs/gst/signalprocessor/Makefile.am: signalprocessor: Fix various build/dist issues Install the headers, version the library with @GST_MAJORMINOR@, add all required libraries to _LIBADD instead of _LDFLAGS, and add GST_*_LDFLAGS to _LDFLAGS. Fixes bug #594715. 2009-09-09 14:34:03 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowvideosrc: cache device caps 2009-09-09 12:41:17 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * win32/vs9/libgstdshowsrcwrapper.vcproj: dshowvideosrc: use IEnumMediaTypes when IAMStreamConfig is not usable For some device drivers IAMStreamConfig is not supported. But EnumMediatypes does not provide range size and framerate. 2009-09-06 11:50:39 +0200 Mark Nauwelaerts * tests/check/Makefile.am: * tests/check/elements/faac.c: faac: add unit test 2009-09-08 22:24:12 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: add some debug statements for discrepancy cases and plug memleak 2009-09-06 11:49:17 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: sprinkle some more G_(UN)LIKELY 2009-09-06 11:44:27 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: enforce sync between wrapper view of data and encoder returned data 2009-09-05 21:35:35 +0200 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: add faac to documentation 2009-09-05 21:35:19 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: add some documentation 2009-08-31 19:31:57 +0200 Havard Graff * gst/selector/gstoutputselector.c: outputselector: make GST_FORMAT_TIME the default segment format 2009-08-31 19:33:50 +0200 Havard Graff * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: remove unused variable to fix compiler warning Fixes bug #594278. 2009-09-08 15:16:44 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Fix usage of __always_inline__ attribute This attribute can't be used for function declarations because it needs the function body. Instead of a forward declaration of functions, move the function itself above it's first use. Fixes bug #594489 and compilation with gcc 4.3 and earlier. 2009-09-07 17:33:15 +0200 Marc-André Lureau * ext/assrender/gstassrender.c: assrender: Fix compilation with libass = 0.9.6 Fixes bug #594382. 2009-09-07 19:08:08 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: fix aspect-ratio parsing in VO 2009-09-07 16:20:23 +0200 Mark Nauwelaerts * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: also consider user_data pieces when parsing VO(S) 2009-09-07 16:44:52 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * win32/vs9/gst-plugins-bad.sln: * win32/vs9/libgstdshowsrcwrapper.vcproj: dshowsrcwrapper: add support both Unicode and MBCS 2009-09-07 15:44:16 +0200 Julien Isorce * win32/vs8/gst-plugins-bad.sln: * win32/vs9/gst-plugins-bad.sln: * win32/vs9/libgstdshowsrcwrapper.vcproj: dshowsrcwrapper: upgrade frozen build to vs9 2009-09-07 15:21:28 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: dshowsrcwrapper: indent dshowsrcwrapper.cpp 2009-09-07 15:12:55 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: Revert "dshowsrcwrapper: remove unused extern C" This reverts commit d3c88d637d7e7d60f1437ccd3dfc23b37e2a320e. Reverting this since the entry point isn't found because of C++ build. 2009-09-07 10:59:53 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowsrcwrapper: indent 2009-09-07 10:51:28 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: convert line ended characters to LF 2009-09-07 10:38:39 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: dshowsrcwrapper: remove unused extern C 2009-09-07 10:31:54 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowsrcwrapper: go back to previous mode 2009-09-05 10:22:52 +0200 Sebastian Dröge * common: Automatic update of common submodule From 00a859e to 19fa4f3 2009-09-04 19:17:06 +0200 Sebastian Dröge * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: wildmidi/timidity: Add audio/riff-midi to the src pad template caps 2009-09-04 17:32:34 +0200 Wim Taymans * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: siren: fix setting caps on the output pad Also set the caps on the output pad when the input buffers don't have caps. 2009-09-04 17:27:52 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: * ext/timidity/gstwildmidi.h: wildmidi: cleanups and fix seeking Remove time_per_frame, it's too inaccurate. Fix convert for -1 values. Use scaling to convert samples to time. Fix segment handling. Fix seeking. Fix buffer clipping (not yet enabled) Protect the WildMidi library with the object lock to avoid races when changing properties. Fix offsets on output buffers, for raw audio the offset contains the sample position not byte position. Add better DISCONT handling. Fixes #519001 2009-09-04 16:29:53 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowvideosrc: move VIDEO_STREAM_CONFIG_CAPS to GstCapturePinMediaType 2009-09-04 14:11:33 +0100 christian schaller Merge branch 'master' of ssh://uraeus@git.freedesktop.org/git/gstreamer/gst-plugins-bad 2009-09-04 14:10:55 +0100 christian schaller * gst-plugins-bad.spec.in: Update spec file 2009-09-04 13:13:39 +0200 Josep Torra * ext/neon/gstneonhttpsrc.c: neonhttpsrc: handle all redirection http status codes 2009-09-04 12:53:36 +0200 Josep Torra * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: in seeking use a factor for SCR interpolation Fixes seeking on clips where PTS are unalignded with SCR. 2009-09-04 12:40:40 +0200 Wim Taymans * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: sirendec: rewrite sirendec Add setcaps and event functions. Add state change functions to clean variables. Use adapter. Add timestamps and duration on outgoing buffers. Add DISCONT handling. 2009-09-04 12:40:07 +0200 Wim Taymans * gst/siren/gstsirenenc.c: sirenenc: cleanups 2009-09-04 12:35:31 +0200 Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: set specific caps for lpcm in private stream In the clips that I've found those streams, the lpcm header is different than the DVD case. Then the decoder need to know this in order to be able parse it. 2009-09-04 12:30:18 +0200 Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: added autodetect of packet size and removed m2ts mode property 2009-09-04 12:08:45 +0200 Julien Isorce Merge branch 'master' of ssh://cap@git.freedesktop.org/git/gstreamer/gst-plugins-bad 2009-09-04 12:08:02 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowvideosrc: move default video caps into GstCapturePinMediaType 2009-09-04 12:02:18 +0200 Josep Torra * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: some more handling of VC1 and EAC3 If the PMT have the register descriptor HDMV assume EAC3 For VC1 make the code more aligned to RP227. 2009-07-16 10:06:36 +0100 Vincent Penquerc'h * gst/dvdspu/gstspu-vobsub-render.c: Try to fit subtitles within the video frame when they're too large 2009-09-01 21:30:35 -0400 Olivier Crête * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: pcapparse: Set the GStreamer timestamp according to the pcap timestamps 2009-09-03 19:04:33 +0200 Wim Taymans * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: sirenenc: fix events and caps Add an event function that clears the adapter. Add a setcaps function to configure caps on the srcpad. Remove the instance variable for the caps. 2009-09-03 18:43:26 +0200 Wim Taymans * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: sirenenc: fix timestamping Handle DISCONT and reset adapter. code cleanups. Put timestamps and discont flags on output buffers. Fix error handling. Remove bogus object locks, it's all protected by the STREAM_LOCK. 2009-09-03 17:49:41 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowvideosrc: factorize dshow format to gst caps conversion 2009-09-03 17:20:47 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: dshowsrcwrapper: remove cplusplus condition 2009-09-03 17:12:26 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowvideosrc: factorize dshow video format parsing 2009-09-03 15:45:06 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: If stream type is AC3 and no EAC3 descriptor is found assume AC3 2009-09-03 15:40:14 +0200 Josep Torra * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Implement EAC3 handling according some ATSC specs. Fixes bug #594030. 2009-09-03 00:28:16 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/inspect/plugin-xdgmime.xml: * gst-plugins-bad.spec.in: * gst/xdgmime/Makefile.am: * gst/xdgmime/gstxdgmime.c: xdgmime: move xdg typefinder to the other typefinders in -base Remove the xdgmime plugin which now barely contains any code at all and move the functionality into gst-plugins-base next to the other typefinders. 2009-09-02 13:35:02 +0100 Tim-Philipp Müller * gst/mpegpsmux/mpegpsmux.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegsmux, mpegpsmux: fix unused variable warning with the debugging system in core disabled 2009-09-01 12:41:19 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Stream type 0x81 is normal AC3, not EAC3 Not sure what the stream type for EAC3 is though. Fixes bug #593059. 2009-08-30 23:07:30 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: refactor slightly and remove superfluous code 2009-08-30 23:06:24 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: faac: freshen up caps negotiation Perform sink and src caps negotiation during caps negotation, and also cater for re-negotiation. 2009-08-30 23:00:35 +0200 Mark Nauwelaerts * ext/faac/gstfaac.c: * ext/faac/gstfaac.h: faac: rewrite data caching and timestamp handling Also fixes #593348. 2009-08-31 18:55:52 +0200 Peter Kjellerstedt * configure.ac: configure: A little clean up. Reorder the list of AM_CONDITIONAL()s used when --disable-external is specified to match the actual order of the plug-ins earlier in the file. 2009-08-31 18:49:16 +0200 Peter Kjellerstedt * configure.ac: configure: Allow --disable-external to be specified again. 2009-08-31 18:47:44 +0200 Peter Kjellerstedt * configure.ac: configure: Allow --disable-kate to actually be specified. 2009-08-31 18:41:59 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: cleanup error handler 2009-08-31 18:34:03 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: free the adapter 2009-08-31 18:32:07 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: cleanups 2009-08-31 18:21:34 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: allow for push mode operation Fixes #586929 2009-08-31 18:20:00 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: * ext/timidity/gstwildmidi.h: wildmidi: use state machine Use a state machine to keep track of the current state. Add chain function and event function on the sinkpad. Remove some unused code. 2009-08-31 17:38:28 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: remove useless function calls 2009-08-31 17:33:32 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: * ext/timidity/gstwildmidi.h: wildmidi: set caps on pad Set the caps on the pad and use those caps instead of keeping a separate caps pointer around. Fix some whitespace. 2009-08-31 17:27:39 +0200 Wim Taymans * ext/timidity/gstwildmidi.c: wildmidi: fix whitespace 2009-08-31 16:07:03 +0100 Tim-Philipp Müller * ext/kate/Makefile.am: kate: fix typo in Makefile.am GST_PLUGIN_BASE_LIBS should be GST_PLUGINS_BASE_LIBS. Fixes #593683. 2009-08-31 13:31:16 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flacparse.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegpsmux.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rsvg.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: docs: update plugin docs for git version 2009-08-31 13:14:02 +0100 Tim-Philipp Müller * ext/gme/gstgme.c: * ext/metadata/gstbasemetadata.c: * ext/metadata/metadata.c: * ext/mplex/gstmplex.cc: * ext/rsvg/gstrsvgdec.c: * gst/aiffparse/aiffparse.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegvideoparse/mpegpacketiser.c: * gst/mxf/mxfmux.c: * gst/nuvdemux/gstnuvdemux.c: GstAdapter is not a GstObject and should be freed with g_object_unref() 2009-08-31 13:00:04 +0100 Tim-Philipp Müller * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: use an old-fashioned array instead of GPtrArray for mux->programs Using GPtrArray for a fixed-sized array is a bit pointless and makes for ugly code. 2009-08-31 10:48:35 +0200 Sebastian Dröge * gst/mpegpsmux/mpegpsmux_aac.c: * gst/mpegpsmux/mpegpsmux_aac.h: * gst/mpegpsmux/mpegpsmux_h264.c: * gst/mpegpsmux/mpegpsmux_h264.h: mpegpsmux: Add missing files to fix compilation Fixes bug #593625. 2009-08-10 01:14:19 +0800 Lin YANG * examples/mpts_test2.c: mpegtsmux: Test program of mpts support is added 2009-07-22 20:27:36 +0800 Lin YANG * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: Minor fixes 2009-07-22 20:25:42 +0800 Lin YANG * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: mux->programs: use GPrtArray instead of GArray 2009-07-11 19:29:53 +0800 Lin YANG * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: mpegtsmux_collected(): calculate PCR for programs 2009-07-11 19:15:12 +0800 Lin YANG * gst/mpegtsmux/mpegtsmux.c: mpegtsmux: mpegtsmux_create_streams(): create multi streams 2009-07-11 19:13:23 +0800 Lin YANG * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: MpetTsPadData: add prog_id and ref to its program 2009-07-11 19:09:17 +0800 Lin YANG * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: Extend mux->program to a GArray programs 2009-07-11 17:44:54 +0800 Lin YANG * gst/mpegtsmux/mpegtsmux.c: * gst/mpegtsmux/mpegtsmux.h: mpegtsmux: Add new property prog-map to the muxer 2009-08-18 12:14:46 +0200 Sebastian Dröge * gst/h264parse/gsth264parse.c: h264parse: Free the PPS buffers too 2009-08-17 18:03:00 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: compute timestamp 2009-08-17 17:58:46 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: recognize more types of NAL Also recognizes NALs carrying VCL (i.e. visible pictures). We typically only compute timestamps for such NALs 2009-08-17 17:56:26 +0800 Lin YANG * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: parser init & finalize 2009-08-17 17:53:43 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: decode slice header 2009-08-17 17:53:11 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: decode SEI 2009-08-17 17:52:47 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: decode SEI: picture timing info 2009-08-17 17:52:12 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: decode SEI: buffering period 2009-08-17 17:51:36 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: decode PPS 2009-08-17 17:51:10 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: decode SPS 2009-08-17 17:50:33 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: SPS: decode vui params 2009-08-17 17:50:02 +0800 Lin YANG * gst/h264parse/gsth264parse.c: h264parse: SPS: decode hrd params 2009-08-17 17:44:38 +0800 Lin YANG * gst/h264parse/gsth264parse.h: h264parse: Start slice header parsing work 2009-08-17 17:43:51 +0800 Lin YANG * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: Start SEI parsing work 2009-08-17 17:42:06 +0800 Lin YANG * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: Start PPS parsing work 2009-08-17 17:38:59 +0800 Lin YANG * gst/h264parse/gsth264parse.c: * gst/h264parse/gsth264parse.h: h264parse: Start SPS parsing work 2009-08-11 12:00:10 +0200 Lin Yang * configure.ac: * gst/mpegpsmux/Makefile.am: * gst/mpegpsmux/bits.h: * gst/mpegpsmux/crc.h: * gst/mpegpsmux/mpegpsmux.c: * gst/mpegpsmux/mpegpsmux.h: * gst/mpegpsmux/psmux.c: * gst/mpegpsmux/psmux.h: * gst/mpegpsmux/psmuxcommon.h: * gst/mpegpsmux/psmuxstream.c: * gst/mpegpsmux/psmuxstream.h: mpegpsmux: Add MPEG PS muxer 2009-08-13 16:45:55 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/rsvg/Makefile.am: * ext/rsvg/gstrsvg.c: * ext/rsvg/gstrsvgdec.c: * ext/rsvg/gstrsvgdec.h: rsvg: Add RSVG SVG decoder plugin This supports - decoding single SVG images and a stream of SVG images with a given framerate - lossless scaling of SVG images - ARGB output 2009-08-31 09:11:34 +0200 Sebastian Dröge * configure.ac: * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: assrender: Fix compilation with libass >= 0.9.7 and fix aspect ratio setting Fixes bug #575261. 2009-08-30 22:20:55 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxftypes.c: mxf: Unconditionally use GLib 2.16 API 2009-08-30 22:17:53 +0200 Sebastian Dröge * configure.ac: * gst/xdgmime/Makefile.am: * gst/xdgmime/gstxdgmime.c: * gst/xdgmime/xdgmime/xdgmime.c: * gst/xdgmime/xdgmime/xdgmime.h: * gst/xdgmime/xdgmime/xdgmimealias.c: * gst/xdgmime/xdgmime/xdgmimealias.h: * gst/xdgmime/xdgmime/xdgmimecache.c: * gst/xdgmime/xdgmime/xdgmimecache.h: * gst/xdgmime/xdgmime/xdgmimeglob.c: * gst/xdgmime/xdgmime/xdgmimeglob.h: * gst/xdgmime/xdgmime/xdgmimeicon.c: * gst/xdgmime/xdgmime/xdgmimeicon.h: * gst/xdgmime/xdgmime/xdgmimeint.c: * gst/xdgmime/xdgmime/xdgmimeint.h: * gst/xdgmime/xdgmime/xdgmimemagic.c: * gst/xdgmime/xdgmime/xdgmimemagic.h: * gst/xdgmime/xdgmime/xdgmimeparent.c: * gst/xdgmime/xdgmime/xdgmimeparent.h: xdgmime: Always use GLib instead of xdgmime Now that we depend on GLib 2.16 we can as well use it's internal copy of the xdgmime instead of our own. 2009-08-30 22:13:26 +0200 Sebastian Dröge * gst/id3tag/id3tag.c: id3tag: Unconditionally use GLib 2.16 API 2009-08-19 17:18:25 +0200 Sebastian Dröge * ext/resindvd/rsnstreamselector.c: rsnstreamselector: Use iterate internal links instead of deprecated get internal links 2009-08-19 17:05:32 +0200 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Use iterate internal links instead of deprecated get internal links 2009-08-30 23:38:45 +0100 Tim-Philipp Müller * configure.ac: * win32/common/config.h: Back to hacking -> 0.10.14.1 === release 0.10.14 === 2009-08-30 00:24:47 +0100 Tim-Philipp Müller * common: common: update common to a version that includes a fixed mangle-tmpl.py Which is needed to build the plugin docs for the frei0r plugin (and was included in the 0.10.14 release tarball). 2009-08-29 19:35:31 +0100 Tim-Philipp Müller * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-asfmux.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-kate.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mimic.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-schro.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-vdpau.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.14 2009-08-29 19:02:36 +0100 Tim-Philipp Müller * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-08-26 01:21:27 +0100 Tim-Philipp Müller * configure.ac: * win32/common/config.h: 0.10.13.5 pre-release 2009-08-26 01:18:00 +0100 Руслан Ижбулатов * configure.ac: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: * sys/directsound/gstdirectsoundsrc.c: directdraw, directsound: unify CFLAGS and fix configure checks for DirectX-based plugins One set of CFLAGS for all DirectX-based plugins. Correct header/library checks for DirectX-based-plugins. Remove unused variable and label in directsoundsrc. Fixes #593068. 2009-08-26 00:26:42 +0100 Arek Korbik * ext/schroedinger/gstschroenc.c: schroenc: set right OFFSET and OFFSET_END on header buffers to make oggmux happy Without this oggmux will just keep buffering output pages in some cases. Fixes #593024. 2009-08-25 23:44:50 +0400 Руслан Ижбулатов * ext/resindvd/Makefile.am: * gst/rawparse/Makefile.am: resindvd, rawparse: fix LDFLAGS for gst-plugins-base libs Fixes #593063. 2009-08-24 20:06:27 +0100 Tim-Philipp Müller * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.13.4 pre-release 2009-08-24 18:16:15 +0100 Tim-Philipp Müller * ext/amrwbenc/gstamrwbenc.c: amrwbenc: use different element GType name to avoid conflict with previous plugin Use a different GType name for the element to avoid 'cannot register existing type' warnings when running 'make check' in the unpacked tarball with the old amrwb plugin also installed as system plugin under the old name (it used to be called 'amrwrb' and now it's 'amrwbenc'). 2009-08-24 14:37:28 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: use of default debug category and better dshow errors readability 2009-08-21 01:17:18 +0100 Tim-Philipp Müller * tests/icles/test-oss4.c: tests: fix test-oss4 to treat an empty device name the same as a NULL name 2009-08-18 15:48:09 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Write FOURCC as 32bit 2009-08-15 17:54:50 -0700 David Schleef * REQUIREMENTS: remove a bunch of junk from REQUIREMENTS 2009-08-14 20:20:41 +0100 Tim-Philipp Müller * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.13.3 pre-release 2009-08-14 14:10:23 +0100 Tim-Philipp Müller * configure.ac: configure: disable ass plugin for libass >= 0.9.7 because of API changes See #575261. 2009-08-12 18:33:22 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: asfmux: Do not mess up GstCollectData list asfmux was messing up with the GstCollectData list of its GstCollectPads when sorting the list inplace. This patch makes it copy the list before sorting it, leaving the GstCollectPads list as is. Fixes #591610 2009-08-12 12:23:30 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: USE GST_WRITE_*_LE macros 2009-08-12 12:21:33 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Refuse to go playing in paused-mode without clock Only try to use the clock in if paused-mode is set and refuse to go playing in paused-mode without it. Fixes bug #591538 2009-08-11 16:42:51 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: dtmfsrc: Empty event queue on finalize 2009-08-11 16:39:42 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: dtmf: Use GSlice for internal event structures 2009-08-11 16:23:20 -0400 Tim-Philipp Müller * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Cleanup events on finalize Problem found by Laurent Glayal Fixes bug #591440 2009-08-11 16:23:20 -0400 Tim-Philipp Müller * gst/dtmf/gstrtpdtmfsrc.c: rtpdtmfsrc: Cleanup events on finalize Problem found by Laurent Glayal Fixes bug #591440 2009-08-12 10:28:32 +0100 Tim-Philipp Müller * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpdevice.c: * tests/check/Makefile.am: vdpau: blacklist for generic states test, and demote to GST_RANK_NONE These elements are not fit for autoplugging, so demoting to RANK_NONE. Also blacklisting for generic states test, since fixing these elements up to do some minimal error handling seems to be a bit more work. Partially fixes #591538. 2009-08-11 18:01:37 +0100 Tim-Philipp Müller * configure.ac: * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/lv.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.13.2 pre-release. 2009-08-11 15:27:34 +0100 Tim-Philipp Müller * MAINTAINERS: Add myself to MAINTAINERS file and update Wim's e-mail. 2009-08-11 14:17:32 +0100 Christian Schaller * gst-plugins-bad.spec.in: Update spec file with latest changes 2009-08-11 12:42:28 +0100 Tim-Philipp Müller * ext/kate/gstkateenc.c: * tests/check/elements/kate.c: kateenc: error out if category has not been set and check for obviously wrong values 2009-08-11 02:46:54 +0100 Tim-Philipp Müller * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * gst-plugins-bad.spec.in: * gst/rtpmanager/.gitignore: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/gstrtpbin-marshal.list: * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpmanager.c: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpptdemux.h: * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/rtpmanager/gstrtpssrcdemux.h: * gst/rtpmanager/rtpjitterbuffer.c: * gst/rtpmanager/rtpjitterbuffer.h: * gst/rtpmanager/rtpsession.c: * gst/rtpmanager/rtpsession.h: * gst/rtpmanager/rtpsource.c: * gst/rtpmanager/rtpsource.h: * gst/rtpmanager/rtpstats.c: * gst/rtpmanager/rtpstats.h: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rtpbin.c: * tests/check/elements/rtpbin_buffer_list.c: Move rtpmanager from -bad to -good. 2009-08-11 09:05:35 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: .gitignore: ignore asfmux unit test binary 2009-08-11 09:00:37 +0100 Tim-Philipp Müller * tests/check/Makefile.am: checks: disable unit tests that are flaky or don't work with core git camerabin test seems to time out with core git, so disabling because chances are the problem is in the test and the core git stuff will be released before we can fix the code in the test. neonhttpsrc unit test is a bit flaky, it tends to fail the first time when called (the host/url it checks for seems to be down as well/anyway). 2009-08-10 22:16:37 +0100 Tim-Philipp Müller * gst/mixmatrix/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: Remove execute flags from source files 2009-08-09 02:04:46 +0100 Tim-Philipp Müller * configure.ac: configure: bump core/base requirements to released version To avoid confusion. 2009-08-10 16:35:36 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: can list more than 1 device something like the following code now works: vector getVideoDeviceNames() { vector l_name; string property; GstElement* videodevicesrc = create_element("dshowvideosrc", "videodevicesrc"); GstPropertyProbe* probe = GST_PROPERTY_PROBE (videodevicesrc); GValueArray* va = gst_property_probe_get_values_name (probe, "device-name"); if (va) { for(size_t i=0; i < va->n_values; ++i) { GValue* v = g_value_array_get_nth(va, i); string name(g_value_get_string(v)); l_name.push_back(name); } } if (videodevicesrc) gst_object_unref(GST_OBJECT (videodevicesrc)); return l_name; } 2009-08-10 16:17:41 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: dshowaudiosrc: handles device-name property 2009-08-10 16:03:17 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: dshowsrcwrapper: add a helper function to check a media type 2009-08-10 14:32:03 +0200 Julien Isorce Merge branch 'master' of ssh://cap@git.freedesktop.org/git/gstreamer/gst-plugins-bad 2009-08-10 13:21:09 +0100 Tim-Philipp Müller * ext/Makefile.am: spc: fix typo in Makefile.am and build the right plugin (spc not gme) 2009-08-10 14:23:14 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: dshowvideosrc: can use other video sizes and framerates than the defaults Even if the device could capture several video sizes at several framerates, without this commit, it was only possible to use one video size and one framerate: the default directshow values. 2009-08-10 11:40:13 +0200 Julien Isorce * win32/vs8/gst-plugins-bad.sln: * win32/vs8/libgstdirectsound.vcproj: directsoundsrc: add vs8 project 2009-08-10 11:36:41 +0200 Julien Isorce * sys/directsound/gstdirectsoundsrc.c: directsoundsrc: LF and indent 2009-08-09 15:20:48 +0200 Sebastian Dröge * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: Cache events and send them downstream once an element was selected 2009-08-09 14:55:26 +0200 Sebastian Dröge * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: Small cleanups 2009-08-09 12:25:01 +0200 Julien Isorce * sys/directdraw/gstdirectdrawsink.c: directdrawsink: Fix crash when exposing in GST_STATE_READY Fixes bug #541962. 2009-08-08 22:14:53 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Don't answer the SEEKING query if we don't know the answer yet A bitrate!=-1 is required for seeking but the bitrate is only calculated after the second PCR was read. Fixes bug #590446. 2009-08-08 21:20:01 +0200 Sebastian Dröge * ext/spc/gstspc.c: spc: Lower rank to SECONDARY to make the gme plugin the default 2009-08-08 21:17:37 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/spc/Makefile.am: * ext/spc/gstspc.c: * ext/spc/gstspc.h: * ext/spc/tag.c: * ext/spc/tag.h: spc: Add the OpenSPC spc plugin again The gme plugin obsoletes it but it might still be useful for users that don't have gme yet or prefer openspc for some reason. 2009-08-08 12:20:55 +0100 Tim-Philipp Müller * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: kate: some minor clean-ups Print flow return as string in log message; if we check the return value of gst_buffer_new_and_alloc() we should use the _try() function that might actually return NULL. Post error message when returning GST_FLOW_ERROR. Use portable GLib macros to print 64-bit integers. Don't use 0LL, that's also not portable (and unneeded here). 2009-08-08 10:30:11 +0200 Sebastian Dröge * gst/rawparse/gstvideoparse.c: videoparse: Only provide very fundamental caps in the pad template We can't easily know which caps will can be used because we rely on libgstvideo's support for video formats. 2009-08-08 10:27:52 +0200 Sebastian Dröge * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: rawparse: Small cleanups and implement SEEKING query 2009-08-08 08:27:24 +0200 Sebastian Dröge * gst/rawparse/gstaudioparse.c: audioparse: Small cleanups 2009-08-08 07:59:16 +0200 Sebastian Dröge * gst/rawparse/Makefile.am: * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: videoparse: Use libgstvideo for everything instead of our own calculations Also make RGB usage easier by providing xRGB, RGBx, etc. formats instead of requiring to set red_mask and friends. 2009-08-07 19:12:26 +0200 Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix a memory leak 2009-08-07 19:00:23 +0200 Josep Torra * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: added VC1, EAC3 and LPCM related to blueray/hdmv 2009-08-07 18:35:42 +0200 Josep Torra * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: added caps for AAC and fixed playback of a clip with LPCM 2009-08-07 18:17:28 +0200 Josep Torra * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegpsdemux: improved demuxer performance Increased performance doing pull_range in blocks of 32Kb instead of 4Kb. Caching the value of gst_adapter_available instead of calling it 3 times. Added some comments with the header descriptions. Peek enough data to avoid a corner case where could be readed data outside the buffer. Speed up some more inlining some functions and keeping another stream pointer list to be used as iterator. Sprinkle branch prediction macros accross the code. Handling the seeking with flush in pull mode in the proper way. 2009-08-07 14:41:31 +0200 Sebastian Dröge * ext/gme/Makefile.am: * ext/gme/gstgme.c: * ext/gme/gstgme.h: gmedec: Use GstAdapter instead of many buffer joins This reduces the number of reallocations and memcpys drastically. Also free the input data as soon as it's complete and passed to GME as it's not needed anymore. 2009-08-07 13:07:17 +0200 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: prevent infinite loop when draining 2009-08-07 13:06:28 +0200 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: fix minor memory leak 2009-08-07 13:04:18 +0200 Mark Nauwelaerts * gst/flacparse/gstbaseparse.c: flacparse: sync baseparse (some more) 2009-08-07 09:21:04 +0200 Sebastian Dröge * ext/gme/gstgme.c: gmedec: Add caps for all supported file formats to the srcpad template 2009-08-07 07:23:07 +0200 Sebastian Dröge * ext/gme/gstgme.c: gme: Don't add empty string tags 2009-08-07 07:01:11 +0200 Sebastian Dröge * ext/gme/gstgme.c: gme: Fix caps name again 2009-08-07 06:59:55 +0200 Sebastian Dröge * ext/gme/gstgme.c: * ext/gme/gstgme.h: gme: Rename everything from SPC to GME 2009-08-07 06:59:41 +0200 Sebastian Dröge * ext/spc/Makefile.am: * ext/spc/gstspc.c: * ext/spc/gstspc.h: * ext/spc/tag.c: * ext/spc/tag.h: spc: Really remove old SPC code 2009-08-07 06:56:54 +0200 Sebastian Dröge * ext/gme/Makefile.am: * ext/gme/gstgme.c: * ext/gme/gstgme.h: * ext/gme/tag.c: * ext/gme/tag.h: gme: Use gme for tags and duration parsing 2009-08-07 06:41:43 +0200 Sebastian Dröge * configure.ac: * ext/Makefile.am: * ext/gme/Makefile.am: * ext/gme/gstgme.c: * ext/gme/gstgme.h: * ext/gme/tag.c: * ext/gme/tag.h: spc: Rename SPC plugin to GME as preparation for enabling support for non-SPC gaming console sound files. 2009-08-06 21:42:02 +0200 Sebastian Dröge * ext/spc/gstspc.c: spcdec: Forward all unknown src events upstream and don't restrict to SPC 2009-08-06 19:26:21 +0200 ric * gst/rtpmanager/rtpsource.c: rtpsource: avoid buffer leak on bad seqnum Fixes #590797 2009-08-05 09:36:00 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: mpeg[pt]sdemux: Fix SEEKING query Send the BYTES based query downstream, not the orignal one. 2009-08-04 12:58:35 +0200 Jan Urbanski * gst/qtmux/gstqtmux.c: qtmux: Don't require endianness field for 8 bit raw audio Fixes bug #590360. 2009-08-04 10:18:46 +0200 Sebastian Dröge * configure.ac: * ext/spc/gstspc.c: spc: Make the SPC plugin work with the latest libgme release gme_enable_accuracy() was added in SVN trunk and is not yet in any release. 2009-08-04 10:06:54 +0200 Michael Pyne * configure.ac: * ext/spc/gstspc.c: * ext/spc/gstspc.h: spc: Use the portable libgme instead of x86-only OpenSPC library This will later allow us to play other gaming console files that are supported by libgme. Fixes bug #576800. 2009-06-12 17:22:22 +0100 Tim-Philipp Müller * gst/flacparse/Makefile.am: * gst/flacparse/gstbitreader.c: * gst/flacparse/gstbitreader.h: * gst/flacparse/gstbytereader.c: * gst/flacparse/gstbytereader.h: * gst/flacparse/gstflacparse.c: flacparse: remove internal bitreader and bytereader now that these are in libgstbase 2009-07-31 11:27:03 +0300 Tommi Myöhänen * gst/selector/gstoutputselector.c: outputselector: check for pending srcpad in _get_property() If there is a pending srcpad, return it instead of active srcpad in gst_output_selector_get_property() function. 2009-07-30 14:17:59 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabin.c: camerabin: Set camerasrc to READY state instead of PAUSED when acquiring allowed caps 2009-07-31 07:16:02 +0200 Sebastian Dröge * sys/directdraw/gstdirectdrawsink.c: directdraw: Fix indention 2009-07-31 02:05:41 +0400 Руслан Ижбулатов * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: directdraw: Implement GstNavigation interface Fixes bug #590208. 2009-07-31 00:19:19 -0300 Thiago Santos * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/asfmux/gstrtpasfpay.c: rtpasfpay: set padding field to 0 on rtp asf packets The ASF RTP spec demands that packets have their padding removed and the padding size field set to 0 for packets when puting them inside the RTP packets 2009-07-30 00:19:18 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: Set video stream seekable property to true Video stream always have indexes, so they are all seekable 2009-07-30 00:12:45 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: Removing useless TODOs After testing in windows and linux, this audio correction field made no difference so far. All example files I got only had zeroes in this field 2009-07-30 00:04:43 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: Fixes video stream properties object Fixes stream properties object creation for video content 2009-07-29 19:07:27 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: asfmux: accept pad requests a little longer asfmux now start rejecting pad requests after it pushes the first buffer, before this, it was rejecting after going to paused 2009-07-29 18:44:11 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: adds support to vc-1 streams 2009-07-29 17:23:31 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Remove empty finalize 2009-07-29 16:02:58 +0200 Sebastian Dröge * configure.ac: configure.ac: Fix macro name 2009-07-29 15:35:03 +0200 Joni Valtanen * configure.ac: * sys/Makefile.am: * sys/directsound/Makefile.am: * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsrc.c: * sys/directsound/gstdirectsoundsrc.h: directsoundsrc: Add DirectSound source plugin Fixes bug #344129. 2009-07-28 22:51:39 -0300 Thiago Santos * tests/check/Makefile.am: * tests/check/elements/asfmux.c: asfmux: First basic check unit tests Adds simple asfmux unit tests, that test pad creation and pushing a single buffer through them 2009-07-28 21:37:04 -0300 Thiago Santos * gst/asfmux/gstasfmux.c: asfmux: Forcing pad names to be video_%02d and audio_%02d like 2009-07-28 18:18:20 +0200 Wim Taymans * gst/rtpmanager/rtpsource.c: rtpsource: allow for NULL caps on buffers Add the NULL caps check where it matters and also cover another case of potential NULL caps. Fixes #590030 2009-07-28 11:59:56 -0400 Olivier Crête * gst/rtpmanager/rtpsource.c: rtpsource: Incoming buffers do not always have caps 2009-07-27 14:03:59 +0300 Tommi Myöhänen * gst/camerabin/gstcamerabinphotography.c: camerabin: photo iface setter functions return TRUE when used in NULL state We cache the values and apply then when possible. 2009-07-27 08:25:37 +0300 Tommi Myöhänen * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: * gst/camerabin/gstcamerabin.c: camerabin: do not put video pipeline into READY when start recording camerabin: remember probe IDs and disconnect them when destroying pipelines 2009-07-27 19:59:32 +0200 Sebastian Dröge * ext/amrwbenc/gstamrwbenc.c: amrwbenc: Fix compilation 2009-07-27 19:55:27 +0200 Iago Toral * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-amrwbenc.xml: * ext/Makefile.am: * ext/amrwb/Makefile.am: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbparse.c: * ext/amrwb/gstamrwbparse.h: * ext/amrwbenc/GstAmrwbEnc.prs: * ext/amrwbenc/Makefile.am: * ext/amrwbenc/README: * ext/amrwbenc/gstamrwb.c: * ext/amrwbenc/gstamrwbenc.c: * ext/amrwbenc/gstamrwbenc.h: amrwb: Remove AMR-WB parser and decoder and rename encoder plugin from amrwb to amrwbenc Partially fixes bug #584890. 2009-07-27 15:46:23 +0200 Wim Taymans * gst/rtpmanager/rtpsession.c: rtpsession: avoid doing lip-sync in BYE When we get a BYE packet, don't do lip-sync with the SR inside because some senders have trouble constructing valid SR packets after BYE. 2009-07-27 15:33:04 +0200 Julien Isorce * win32/MANIFEST: * win32/vs6/gst_plugins_bad.dsw: * win32/vs7/gst-plugins-bad.sln: * win32/vs7/libgstdirectdraw.vcproj: * win32/vs8/libgstdirectdraw.vcproj: directdrawsink: update vs8 build also remove directdrawsink from vs6 and vs7 build 2009-07-27 14:52:57 +0200 Julien Isorce * sys/dshowsrcwrapper/Makefile.am: * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowinterface.h: * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * sys/dshowsrcwrapper/gstdshowvideosrc.h: * sys/dshowsrcwrapper/libgstdshow.def: * win32/vs8/libdshowsrcwrapper.vcproj: dshowsrcwrapper: remove use of IGstDshowInterface 2009-07-27 13:17:20 +0200 Wim Taymans * gst/rtpmanager/rtpsession.c: rtpbin: don't do lip-sync after a BYE After a BYE packet from a source, stop forwarding the SR packets for lip-sync to rtpbin. Some senders don't update their SR packets correctly after sending a BYE and then we break lip-sync. We prefer to let the jitterbuffers drain with the current lip-sync instead. 2009-07-27 12:43:02 +0200 Wim Taymans * gst/rtpmanager/rtpsession.c: rtpbin: only reconsider once for BYE When iterating the sources of a BYE packet, don't signal a reconsideration for each of them but signal after we handled all sources. 2009-07-25 12:19:07 +0100 Tim-Philipp Müller * ext/kate/gstkatespu.c: kate: break up macros into multiple lines 2009-07-24 21:54:59 +0100 Vincent Penquerc'h * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatespu.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkateutil.c: kate: use GST_ELEMENT_ERROR for error reporting See #525743. 2009-07-24 14:52:28 -0300 Thiago Santos * configure.ac: * gst/asfmux/Makefile.am: * gst/asfmux/gstasf.c: * gst/asfmux/gstasfmux.c: * gst/asfmux/gstasfmux.h: * gst/asfmux/gstasfobjects.c: * gst/asfmux/gstasfobjects.h: * gst/asfmux/gstasfparse.c: * gst/asfmux/gstasfparse.h: * gst/asfmux/gstrtpasfpay.c: * gst/asfmux/gstrtpasfpay.h: asfmux: Adds new plugin asfmux Adds the brand new asfmux plugin, containing 3 elements: asfmux, rtpasfpay and asfparse. This plugin was developed as a GSoC 2009 project, with David Schleef as the mentor and Thiago Santos as the student. 2009-07-24 08:25:03 +0100 Jan Schmidt * win32/MANIFEST: win32: Fix the distcheck after dshowsrcwrapper rearrangements Remove old files from the win32 manifest, and add the new one. 2009-07-24 07:40:17 +0200 Sebastian Dröge * ext/musepack/gstmusepackdec.c: musepackdec: Implement SEEKING query 2009-07-24 01:00:34 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Revert "docs: fix docs build again" It's not needed any longer after Stefan's updates in the common module. This reverts commit 09c550a172a2c8a76f0b48f2f8ce11070598f66c. 2009-07-24 00:42:53 +0300 Stefan Kost * common: Automatic update of common submodule From fedaaee to 94f95e3 2009-07-23 17:57:14 +0100 Tim-Philipp Müller * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: docs: fix docs build again There is no element called 'ladspa', so there won't be a -details file for it. 2009-07-23 09:58:38 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: mpegdemux: Remove some backward compatibility code Also we always require liboil so use it unconditionally. 2009-07-23 09:52:36 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: mpegdemux: Implement query type function for the src pads 2009-07-20 22:13:11 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Lock element before unlocking 2009-07-20 22:08:52 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Fix leaks Use gst_pad_new_from_static_template() to not leak the pad template Also properly chain up the finalize to the parent 2009-07-20 22:08:24 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Use gst_pad_new_from_static_template Prevents leak found by valgrind 2009-07-20 21:52:59 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Unref clockid 2009-07-20 14:00:17 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Don't overwrite valid timestamps 2009-07-20 13:45:54 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: Revert "mimdec: Ignore the timestamps inside the buffers" This reverts commit 5e051fa98aeebdce2eca6b321ec1929e6f8fdf61. 2009-07-21 15:33:41 -0400 Olivier Crête * gst/rtpmanager/rtpsession.c: rtpsession: Free conflicting addresses on finalize 2009-07-21 15:31:33 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Free the pad private data on pad release Free the pad private data on pad release instead of using a weak ref, which is not thread safe. Also, lock the content of the pad private using the element's object lock. 2009-07-22 14:19:18 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Ignore errors pushing out new segments The following buffer push will return more valuable information. 2009-07-22 18:01:12 +0300 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-frei0r.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-lv2.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * ext/ladspa/gstladspa.c: docs: add docs for ladspa and update plugin docs Add also inspect files for lv2 and frei0r (no docs yet). 2009-07-22 17:05:29 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: more perf-test cleanups Remove some obsolete exmaples. Add video-width/height. Use proper api for setting still image resolution. Fix stopping random tests on bin-state-changes. Remove the memdup in snapshot again, as its not needed (pixbuf goes out of scope with the buffer). 2009-07-22 11:45:21 +0100 Tim-Philipp Müller * sys/dshowsrcwrapper/Makefile.am: dshowsrcwrapper: update Makefile.am for source file renames as well 2009-07-21 13:37:20 +0100 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/pcapparse/gstpcapparse.h: docs: add pcapparse to docs 2009-07-22 12:34:36 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: dshowaudiosrc: do not remove a range of length 0 2009-07-22 12:24:46 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowaudiosrc.cpp: * win32/vs8/libdshowsrcwrapper.vcproj: dshowaudiosrc: converts code to C++ 2009-07-22 11:01:49 +0200 Julien Isorce * sys/dshowsrcwrapper/gstdshowvideosrc.cpp: * win32/vs8/libdshowsrcwrapper.vcproj: dshowvideosrc: converts code to C++ 2009-07-22 00:33:22 +0300 Stefan Kost * gst/mpegdemux/gstmpegdemux.c: mpegdemux: don't add a base_time==-1 to segment positions Fixes assertion about newsegment with start=-1. 2009-07-21 17:48:33 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: small speedup in software zoom Force crop on even pixel position to avoid slowpath in crop & scale. 2009-07-21 16:48:26 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: we need to copy the data in the example gdk_pixbuf_new_from_data does not copy the data. 2009-07-21 11:28:20 +0300 Stefan Kost * ext/lv2/Makefile.am: make: remove whitespace after trailing backslash 2009-07-21 12:42:33 +0100 Vincent Penquerc'h * ext/kate/gstkatespu.h: kate: fix time conversion from DVD style timestamps. 2009-07-21 13:51:20 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Implement SEEKING query 2009-07-21 13:39:21 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: Implement SEEKING query Fixes bug #588944. 2009-07-21 13:33:58 +0200 Sebastian Dröge * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Implement SEEKING query Partially fixes bug #588944. 2009-07-21 13:17:06 +0200 Sebastian Dröge * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Free the PMT before setting a new one 2009-07-21 13:14:00 +0200 Mikael Magnusson * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Remove old PES PIDs when receiving PAT tables Fixes bug #583470. 2009-07-21 11:10:49 +0200 Julien Isorce * win32/vs8/libdshowsrcwrapper.vcproj: dshowsrcwrapper: fix relative path 2009-07-21 10:49:37 +0200 Julien Isorce * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/dshow/Makefile.am: * gst-libs/gst/dshow/gstdshowfakesrc.cpp: * gst-libs/gst/dshow/gstdshowfakesrc.h: * gst-libs/gst/dshow/gstdshowinterface.cpp: * sys/dshowsrcwrapper/Makefile.am: * sys/dshowsrcwrapper/gstdshow.cpp: * sys/dshowsrcwrapper/gstdshow.h: * sys/dshowsrcwrapper/gstdshowaudiosrc.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowfakesink.cpp: * sys/dshowsrcwrapper/gstdshowfakesink.h: * sys/dshowsrcwrapper/gstdshowinterface.h: * sys/dshowsrcwrapper/gstdshowsrcwrapper.cpp: * sys/dshowsrcwrapper/gstdshowsrcwrapper.h: * sys/dshowsrcwrapper/gstdshowvideosrc.c: * sys/dshowsrcwrapper/gstdshowvideosrc.h: * sys/dshowsrcwrapper/libgstdshow.def: * win32/common/libgstdshow.def: * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libdshowsrcwrapper.dsp: * win32/vs8/gst-plugins-bad.sln: * win32/vs8/libdshowsrcwrapper.vcproj: start refactoring of dshowsrcwrapper -remove gst-libs/gst/dshow -fakesource is moved from gst-libs/gst/dshow to sys/dshowsrcwrapper -some minor changes (C/C++ check and includes) to make the plugin compile again. 2009-07-21 01:06:19 +0100 Tim-Philipp Müller * ext/kate/gstkateutil.c: kate: use new GST_TAG_SUBITLE_CODEC tag instead of GST_TAG_CODEC 2009-07-21 00:54:47 +0100 Tim-Philipp Müller * ext/kate/gstkateenc.c: * ext/kate/gstkateutil.c: * tests/check/elements/kate.c: katedec: only put primary language tag in GST_TAG_LANGUAGE Only put primary language into GST_TAG_LANGUAGE, and convert to lower case, ie. only use "en" of "en_GB". This is per our tag documentation and hence what apps expect. Also add example to kateenc property description so people know a language code is wanted here. 2009-07-21 00:04:28 +0100 Tim-Philipp Müller * ext/kate/gstkatedec.c: katedec: add comment why we dont' support application/x-kate here for now 2009-07-20 13:54:49 +0100 Vincent Penquerc'h * ext/kate/Makefile.am: * ext/kate/README: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkatespu.c: * ext/kate/gstkatespu.h: katedec: create SPU format images from suitable background images Make katedec fabricate dvd-style subpictures for subtitle overlay bitmaps, for easier playbin2 integration (#588638). 2009-07-20 16:24:23 +0100 ogg.k.ogg.k * ext/kate/gstkatetag.c: * ext/kate/gstkateutil.c: * tests/check/Makefile.am: * tests/check/elements/kate.c: kate: fix some minor memory leaks Makes 'make check-valgrind' work for the kate unit test (#525743) 2009-07-20 16:39:42 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: add code in test to store snapshots for manual verification Use gdk_pixbuf to save the image in perf-test. Also remove some obsolute commented out code. 2009-07-20 16:24:05 +0300 Stefan Kost * gst/camerabin/camerabinpreview.c: camerabin: log formats in preview image conversion 2009-07-20 16:21:06 +0300 Stefan Kost * gst/camerabin/camerabinvideo.c: camerabin: remove unused variable assignment Result is not needed here, but variable is used later on. Also remove double new lines in function. 2009-07-20 16:20:15 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: check query return result before using it 2009-07-20 16:19:40 +0300 Stefan Kost * ext/metadata/metadataexif.c: metadata: don't dereference the pointer before the validity check 2009-07-20 10:17:07 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: improve perf test robustness and add comments 2009-07-20 12:25:15 +0100 Vincent Penquerc'h * ext/kate/gstkateenc.c: kateenc: also recognise the new recommended 'SUB' category Move the check for 'simple' subtitles category to a separate routine and add in the new recommended SUB category (#525743). 2009-07-20 11:41:40 +0100 Vincent Penquerc'h * ext/kate/gstkateenc.c: * ext/kate/gstkateenc.h: kateenc: keep bitmap/palette/region around when on the spot encoding is not possible due to an unknown end time Fixes valgrind unitialized value report. See #525743. 2009-07-19 23:45:02 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-kate.xml: docs: add inspect info for kate plugin Should fix the docs build. 2009-07-19 23:35:05 +0100 Tim-Philipp Müller * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetag.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkateutil.c: kate: add some FIXMEs 2009-07-19 23:32:07 +0100 Tim-Philipp Müller * ext/kate/gstkate.c: katedec: demote to GST_RANK_NONE for now There are still some autoplugging issues to sort out, and it needs some testing. 2009-07-19 23:29:19 +0100 Tim-Philipp Müller * tests/check/Makefile.am: * tests/check/elements/.gitignore: checks: add kate unit tests to valgrind blacklist for now And add check binary to ignore list. 2009-07-19 23:16:07 +0100 Tim-Philipp Müller * ext/kate/gstkateparse.c: * ext/kate/gstkateutil.c: kate: make sure to free some more stuff 2009-07-19 22:29:19 +0100 Tim-Philipp Müller * ext/kate/gstkate.h: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetiger.c: * ext/kate/gstkateutil.c: * tests/check/elements/kate.c: kate: fix up for additional subtitle/x-kate media type 2009-07-13 22:38:43 +0100 Tim-Philipp Müller * ext/kate/gstkate.c: kate: remove local kate typefinder, use the one in -base 2009-07-10 18:45:28 +0100 Tim-Philipp Müller * ext/kate/gstkate.c: * ext/kate/gstkate.h: * ext/kate/gstkatedec.c: * ext/kate/gstkateenc.c: * ext/kate/gstkateparse.c: * ext/kate/gstkatetiger.c: kate: change media type to subtitle/x-kate and update define accordingly 2009-02-15 18:35:04 +0000 Vincent Penquerc'h * LICENSE_readme: * REQUIREMENTS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/Makefile.am: * ext/kate/Makefile.am: * ext/kate/README: * ext/kate/gstkate.c: * ext/kate/gstkate.h: * ext/kate/gstkatedec.c: * ext/kate/gstkatedec.h: * ext/kate/gstkateenc.c: * ext/kate/gstkateenc.h: * ext/kate/gstkateparse.c: * ext/kate/gstkateparse.h: * ext/kate/gstkatetag.c: * ext/kate/gstkatetag.h: * ext/kate/gstkatetiger.c: * ext/kate/gstkatetiger.h: * ext/kate/gstkateutil.c: * ext/kate/gstkateutil.h: * gst-plugins-bad.spec.in: * tests/check/Makefile.am: * tests/check/elements/kate.c: add new Kate plugin, for Kate overlay streams katedec: Kate decoder (text only) kateenc: Kate encoder (text and DVD SPU only) katetag: Kate tagger kateparse: Kate parser tiger: Kate renderer using the Tiger rendering library Fixes #525743. 2009-07-19 15:37:50 +0100 Tim-Philipp Müller * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: real: differentiate between 'module does not exist' and genuine module opening errors Don't log a GST_ERROR if one of the codec modules we were looking for doesn't exist. That's not a genuine error, but somewhat expected. 2009-07-18 08:43:37 +0200 Matijs van Zuijlen * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Fix integer overflow This breaks playback of files >4 GB as the offset was a guint before. Changing it to a guint64 fixes this. 2009-07-17 15:47:10 +0300 Stefan Kost * ext/metadata/gstbasemetadata.c: metadata: reset state if there is something to reset The condition was wrong and as such the element was writing the same tags on subsequent images if reused. 2009-07-17 15:45:32 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: use gst_caps_replace instead of separate calls This fixes setting snapshot caps back to NULL also. 2009-07-17 15:38:06 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: implemnet two more tests Add tests for videorecording startup and capture startup delay. 2009-07-17 09:36:15 +0100 Zaheer Merali * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: add component tag to the video component structure in eit 2009-07-16 17:27:09 -0400 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Don't pretend to be ML20 if paused 2009-07-16 16:06:26 -0400 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: mimdec: Ignore the timestamps inside the buffers 2009-07-16 15:43:46 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Don't try to parse the header before dropping the paused frames 2009-07-16 15:43:15 -0400 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Print the incoming fourcc on errors 2009-06-19 20:13:53 +1000 Austin Lund * sys/dvb/gstdvbsrc.c: Increased the length of time for tuning in gstdvbsrc.c. Some devices take a while to tune and 500ms was too short to detect successful tuning. As well as waiting for 5 seconds each 100ms the status is checked and the loop is broken out of when tuning has suceeded. 2009-07-16 19:49:26 +0200 Aleksey Yulin * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Don't use PIDs > MPEGTS_MAX_PID The mpegtsdemux streams array only has MPEGTS_MAX_PID entries and accessing one afterwards will result in crashes. Fixes bug #575672. 2009-07-16 18:14:18 +0300 Zeeshan Ali (Khattak) * ext/metadata/gstmetadatamux.c: Add more debug output to metadatamux 2009-07-16 12:03:32 +0200 Josep Torra * gst/mpegdemux/gstpesfilter.c: pesfilter: Permit unbounded packets for 0xfd (extended stream id). Added parsing of PES extension related data. Fixes some VC1 related issues. 2009-07-16 13:55:14 +0100 Jan Schmidt * sys/oss4/oss4-mixer.c: oss4: Attempt to fix a compiler warning Don't store a const gchar * in a non-const gchar * local var. Also, make the translation string function static since it's only used in the one file. 2009-07-15 18:10:04 +0100 Jan Schmidt * ext/metadata/metadataexif.c: metadata: Fix some compiler warnings Cast some debug string parameters so that they don't cause mismatched type warnings. 2009-07-15 16:17:35 +0100 Jan Schmidt * sys/vdpau/gstvdpmpegdec.c: vdpau: Fix a compiler warning about uninitialised variable use. 2009-06-10 19:21:21 +0100 Garrett D'Amore * sys/oss4/oss4-audio.c: * sys/oss4/oss4-mixer-slider.c: * sys/oss4/oss4-mixer-switch.c: * sys/oss4/oss4-mixer.c: oss4: Enhancements to the mixer and audio output Code cleanups, general improvements, support for the new mixer flags in latest gst-plugins-base. Fixes: #584252 Patch By: Brian Cameron Patch By: Garrett D'Amore 2009-07-15 18:27:39 +0100 Zaheer Merali * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: add component tag to structure for component message 2009-07-15 17:44:10 +0300 Stefan Kost * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: camerabin: use nonbuffered io to save memcopies We write large blocks anyway, so no extra buffering please. Also use one g_object_set to set multiple properties on same object. 2009-07-15 12:20:17 +0300 Stefan Kost * gst/camerabin/TODO: camerabin: track todo items 2009-07-15 11:17:36 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: leave image/video bin in ready when changing mode 2009-07-14 14:10:55 +0200 Sebastian Dröge * gst/amrparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.h: amrparse: Sync baseparse changes 2009-07-14 14:08:04 +0200 Sebastian Dröge * gst/aacparse/gstbaseparse.c: * gst/aacparse/gstbaseparse.h: aacparse: Add function for the baseparse subclass to push buffers downstream Also handle the case gracefully where the subclass decides to drop the first buffers and has no caps set yet. It's still required to have valid caps set when the first buffer should be passed downstream. 2009-07-14 14:07:44 +0200 Sebastian Dröge * gst/aacparse/gstbaseparse.c: baseparse: Fix seek event leaking 2009-07-14 10:44:58 +0200 Stefan Kost * ext/metadata/metadatatags.c: metadata: fix copy'n'paste in tag description 2009-07-13 18:04:14 -0700 David Schleef * ext/schroedinger/gstschroenc.c: schro: Add enum types for schroedinger settings 2009-06-30 16:31:12 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Don't send empty language code strings Ignore empty language codes on some poorly coded DVDs, rather than setting empty strings into our outgoing taglist. 2009-07-13 12:24:04 -0400 Olivier Crête * common: Automatic update of common submodule From 5845b63 to fedaaee 2009-07-10 21:42:19 +0100 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Only enable paused mode if the property is true 2009-07-10 13:03:54 +0100 Tim-Philipp Müller * ext/ivorbis/Makefile.am: * ext/ivorbis/vorbisdec.c: ivorbis: extract vorbis comments Fixes #575818. 2009-07-08 17:59:29 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Add BGRA support for video in/output 2009-07-08 15:26:07 +0200 Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: mpegtsdemux: Fix double free The hash table already makes sure that the stream is correctly free'd when elements are removed. Fixes bug #587819. 2009-07-08 10:16:19 +0100 Miguel Àngel Farré * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: parse component tag 2009-07-08 10:11:52 +0100 Miguel Àngel Farré * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: parse carousel identifier descriptor 2009-07-07 15:28:04 +0100 Zaheer Abbas Merali * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: add parsing of data broadcast descriptors 2009-07-07 20:28:09 +0200 Sebastian Dröge * gst-libs/gst/video/Makefile.am: basevideo: Link with libgstvideo for some used functions 2009-07-07 19:18:16 +0100 Olivier Crête * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: mimenc: Send pause frames when paused 2009-07-07 19:15:42 +0100 Olivier Crête * ext/mimic/gstmimdec.c: mimdec: Ignore pause frames 2009-07-07 18:27:36 +0100 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Put keyframe/paused flags in tcp header 2009-07-07 18:18:06 +0100 Olivier Crête * ext/mimic/gstmimenc.c: mimenc: Put timestamp on the header buffer 2009-07-07 18:22:54 +0100 Olivier Crête * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: mimenc: Retimestamp to the running time 2009-07-06 17:17:22 +0100 Olivier Crête * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: mimenc: Save the segment 2009-07-06 16:24:59 +0100 Olivier Crête * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: mimenc: Add property for the paused mode 2009-07-03 16:08:38 +0100 Tim-Philipp Müller * ext/schroedinger/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoparse.h: * gst-libs/gst/video/gstbasevideoutils.h: basevideo, schroedinger: guard unstable API with GST_USE_UNSTABLE_API Add some guards and fat warnings to the header files with still unstable API, so people who just look at the installed headers know that it actually is unstable API. 2009-07-02 15:58:00 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: fix sdt parsing. fix parsing of everything for each service from eit schedule flag on and also add a running-status parameter to the bus message structure. 2009-07-02 11:24:48 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: * gst/shapewipe/gstshapewipe.h: shapewipe: Add support for ARGB video input/output 2009-07-01 10:55:12 -0700 David Schleef * configure.ac: * ext/Makefile.am: * ext/schroedinger/Makefile.am: * ext/schroedinger/gstschro.c: * ext/schroedinger/gstschrodec.c: * ext/schroedinger/gstschroenc.c: * ext/schroedinger/gstschroparse.c: * ext/schroedinger/gstschroutils.c: * ext/schroedinger/gstschroutils.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/video/Makefile.am: * gst-libs/gst/video/gstbasevideocodec.c: * gst-libs/gst/video/gstbasevideocodec.h: * gst-libs/gst/video/gstbasevideodecoder.c: * gst-libs/gst/video/gstbasevideodecoder.h: * gst-libs/gst/video/gstbasevideoencoder.c: * gst-libs/gst/video/gstbasevideoencoder.h: * gst-libs/gst/video/gstbasevideoparse.c: * gst-libs/gst/video/gstbasevideoparse.h: * gst-libs/gst/video/gstbasevideoutils.c: * gst-libs/gst/video/gstbasevideoutils.h: basevideo: move from -base Also move schroedinger plugin. This creates a new library, gstbasevideo-0.10, which will probably be merged back into gstvideo-0.10 when this is moved back to -base. 2009-07-01 12:55:03 +0200 Wim Taymans * gst/rtpmanager/rtpsource.c: rtpbin: use new method for netaddress to string 2009-06-29 17:24:58 +0100 Jan Schmidt * ext/Makefile.am: dist: Add lv2 plugin to the dist 2009-06-29 16:37:01 +0100 Jan Schmidt * tests/examples/Makefile.am: dist: Add the camerabin examples subdirectory to the dist 2009-06-29 18:48:33 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: * tests/check/elements/rtpbin.c: rtpbin: do better cleanup of the src ghostpads Connect to the pad-removed signal of the ptdemux elements so that we remove the ghostpads for them. Fixes cleanup when going to NULL as well as when releasing the sinkpads. Fixes #561752 2009-06-29 17:48:13 +0200 Wim Taymans * docs/plugins/gst-plugins-bad-plugins-docs.sgml: docs: remove old element 2009-05-28 19:08:40 +0200 Wim Taymans * gst/rtpmanager/rtpsession.c: rtpsession: add a comment 2009-06-29 16:37:54 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpsession.c: rtpbin: add SDES property Remove all individual SDES properties and use one sdes property that takes a GstStructure instead. This will allow us to add more custom stuff to the SDES messages later. 2009-06-29 16:21:05 +0200 Wim Taymans * gst/rtpmanager/rtpsession.c: * gst/rtpmanager/rtpsession.h: * gst/rtpmanager/rtpsource.c: * gst/rtpmanager/rtpsource.h: rtpbin: add SDES property that takes GstStructure Remove all individual SDES properties and use one sdes property that takes a GstStructure instead. This will allow us to add more custom stuff to the SDES messages later. 2009-06-02 17:46:08 +0200 Wim Taymans * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpclient.h: * gst/rtpmanager/gstrtpmanager.c: rtpbin: removed old gstrtpclient 2009-06-29 12:23:59 +0200 Andoni Morales * ext/sdl/sdlvideosink.c: sdl: only include sys/time.h when we have it Fixes #586956 2009-06-29 12:02:19 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: frei0r: Correctly clean up elements to be reusable and not leak memory 2009-06-29 11:59:13 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rfilter.h: frei0r: In the filter plugins create the frei0r instances in create() before playback starts 2009-06-29 11:56:59 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rmixer.c: frei0r: In the mixer plugins create the frei0r instances in create() before playback starts 2009-06-29 11:54:26 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rsrc.c: frei0r: In the src plugins create the frei0r instances in create() before playback starts 2009-06-29 11:50:44 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rfilter.c: frei0r: Use fixed caps on the filter pads This is required because we have to create a new frei0r instance for any caps changes and the instances can have history. Just creating a new instance during playback can result in bad output right after the caps change. 2009-06-27 09:51:01 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Set the default property values correctly 2009-06-26 18:35:06 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: code cleanups Downgrade a WARNING to INFO. Use a bit more compact code. Add a fixme comment. 2009-06-26 18:34:36 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: just ref caps, we don't need a writable copy 2009-06-26 18:33:47 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: no need to ref and unref this temporarily 2009-06-26 18:32:40 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: don't leak sink_caps if they would be any-caps 2009-06-26 18:31:51 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: don't leak preview images 2009-06-26 18:30:01 +0300 Stefan Kost * gst/camerabin/gstcamerabin.c: camerabin: don't leak viewfinder-caps 2009-06-26 16:07:43 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: make shot2shot test more reliable We can only trigger next shot (in the test) when current is captured and saved. 2009-06-26 13:10:12 +0300 Stefan Kost * gst/camerabin/camerabinvideo.c: camerabin: insert a few blank lines for readability 2009-06-26 13:09:27 +0300 Stefan Kost * gst/camerabin/camerabinpreview.c: camerabin: don't leak messages and element refs in preview 2009-06-26 15:10:05 +0100 Jan Schmidt * autogen.sh: autogen.sh: Use printf instead of 'echo -n'. Check for automake-1.1[01] Check for more automake command variants. Use printf instead of 'echo -n' for portability 2009-06-26 13:42:51 +0100 Jan Schmidt * common: Automatic update of common submodule From f810030 to 5845b63 2009-06-26 09:30:22 +0100 Changwoo Ryu * gst/freeze/Makefile.am: freeze: don't build plugin static lib Pass --tag=disable-static to libtool like we do for other plugins. Fixes #587023. 2009-06-25 12:31:32 -0400 Dave Robillard * ext/lv2/gstlv2.c: Use GST_WARNING instead of fprintf. 2009-05-30 11:18:21 -0400 Dave Robillard * ext/lv2/README: Add LV2 quick start README. 2009-06-25 19:23:16 +0300 Stefan Kost * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: don't leak requestpads Requestpads need to be released and unreffed. Add a comment in one case where we intentionaly don't unref. 2009-06-25 19:21:47 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: sync first test more safely Don't use gst_element_get_state() to wait for PLAYING, Use the bus-handler insteader and asynchronously schedule next test. 2009-06-25 16:41:49 +0200 Mark Nauwelaerts * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-debugutilsbad.xml: * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/gstcapssetter.c: * gst/debugutils/gstcapssetter.h: capssetter: import element into -bad 2009-06-25 08:38:21 +0200 Edward Hervey * gst/qtmux/atoms.c: qtmux: Remove unused variable. 2009-06-25 08:38:10 +0200 Edward Hervey * gst/qtmux/gstqtmux.c: qtmux: Fix debug statement. 2009-06-24 18:56:28 +0300 Stefan Kost * tests/examples/camerabin/gst-camera-perf.c: camerabin: add target-times option to specify test times Have some reasonable default times. Add a commandline option to override defaults. Interpret target-time=0 as skip-test. 2009-06-23 13:01:52 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: buffer-alloc support fixes to image and video bin handling Keep image bin in PAUSED state in image mode except when processing/saving (PLAYING/READY). Change output-selector to view finder before setting video bin to READY. Fix filename sent with img-done signal. 2009-06-23 13:01:13 +0300 Lasse Laukkanen * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: camerabin: fix setting mute when video bin elements haven't been created 2009-06-16 18:12:29 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: set image bin to PAUSED when starting capture Set image bin to PAUSED also when starting capture using photography interface. 2009-04-21 10:55:36 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: leave v4l2camsrc "capture-mode" as video mode when pausing 2009-06-24 15:14:33 +0100 Jan Schmidt * common: Automatic update of common submodule From f3bb51b to f810030 2009-06-22 03:55:27 +0100 Jan Schmidt * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpvideoyuv.c: VDPAU: Move I420/YV12 to the front of the caps. Add debug. Make I420/YV12 caps be preferred when downloading to YUV buffers, when possible, by listing them first in the set of output caps. Add some debug in the caps selection code. 2009-06-23 18:01:18 +0200 Mark Nauwelaerts * ext/xvid/gstxvidenc.c: xvidenc: also allow video/mpeg on output caps. Fixes #377784. 2009-06-23 18:23:13 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Correctly handle 0/1 fps 2009-06-22 23:50:49 +0300 Stefan Kost * ext/ladspa/Makefile.am: * ext/ladspa/gstladspa.h: * ext/lv2/Makefile.am: * ext/lv2/gstlv2.h: signalprocessor: use $(top_builddir) instead of relative paths 2009-06-22 23:49:03 +0300 Stefan Kost * gst/camerabin/Makefile.am: camerabin: add local include dir to CFLAGS 2009-04-28 23:24:45 -0400 Dave Robillard * configure.ac: * ext/Makefile.am: * ext/ladspa/Makefile.am: * ext/ladspa/gstladspa.h: * ext/lv2/Makefile.am: * ext/lv2/gstlv2.c: * ext/lv2/gstlv2.h: * gst-libs/gst/Makefile.am: * gst-libs/gst/signalprocessor/.gitignore: * gst-libs/gst/signalprocessor/Makefile.am: * gst-libs/gst/signalprocessor/gstsignalprocessor.c: * gst-libs/gst/signalprocessor/gstsignalprocessor.h: Working LV2 plugin discovery. - Separate gstsignalprocessor into a separate library (not sure if this is in the right place, but it works for now anyway) - Create LV2 element based on LADSPA element, port most discovery functionality 2009-03-29 13:31:21 -0400 Dave Robillard * ext/ladspa/gstladspa.h: Fix inconsistent style (trivial test commit). 2009-03-29 13:23:02 -0400 Dave Robillard * configure.ac: Add configure check for SLV2. 2009-06-22 22:01:22 +0300 Stefan Kost * tests/check/elements/camerabin.c: camerabin: debug log only change 2009-06-22 18:35:21 +0300 Stefan Kost * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadataxmp.c: metadata: map more tags and fix reading of xmp tags Register xmp schemas for photoshop and iptc. Map a few location tags there. Add more dc tags. Fix reading xmp tag by iteration over known schemas. Add some more debug logging. 2009-06-16 17:12:27 +0300 Stefan Kost * tests/check/elements/camerabin.c: camerabin: more cleanup in tests Add more debug logging. Remove unused mutex and cond. 2009-06-12 14:26:24 +0300 Stefan Kost * gst/camerabin/camerabingeneral.c: * gst/camerabin/camerabingeneral.h: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: * gst/camerabin/gstcamerabin.c: camerabin: code cruft removal and debug logs Remove unused code. Add lots of debug loging. Change comments for local functions to not use /** gtk-doc start style. 2009-06-12 10:40:48 +0300 Stefan Kost * configure.ac: * tests/examples/Makefile.am: * tests/examples/camerabin/.gitignore: * tests/examples/camerabin/Makefile.am: * tests/examples/camerabin/gst-camera-perf.c: * tests/examples/camerabin/gst-camera-perf.glade: * tests/examples/camerabin/gst-camera.c: * tests/examples/camerabin/gst-camera.glade: camerabin: add camerabin examples gst-camera is a gtk-test app to play with the imagecapture and videorecording. gst-camera-perf is a tool to run various scenarios and take time meassurements (e.g. shot-to-shot). Also sort the output files in configure.ac a bit to be in alphabetical order. 2009-06-10 11:15:01 +0300 Stefan Kost * ext/metadata/metadataexif.c: metadata: fix conversion of geo coordinates Coordinate conversion has been verified with exiv2 and some webpages. Minutes wher totally off and seconds were not used at all. 2009-06-22 11:19:07 +0200 Wim Taymans * gst/h264parse/gsth264parse.c: h264parse: detect and fix for bad NALU sizes when in AVC mode a nalu size seems invalid, assume the NALU has the size of the available data instead of looping forever. Fixes #586354 2009-06-19 21:20:26 +0100 Jan Schmidt * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpvideoyuv.c: VDPAU: Add some debug statements 2009-06-18 17:06:23 +0100 Jan Schmidt * sys/vdpau/Makefile.am: VDPAU: Fix build flags to pull in gst-plugins-base libs 2009-06-15 18:33:06 +0100 Jan Schmidt * sys/vdpau/gstvdpvideoyuv.c: VDPAU: Refactor the error path to a common output, and fix a leak. Don't leak the input buffer on errors. Add some debug statements. 2009-06-15 18:29:56 +0100 Jan Schmidt * sys/vdpau/gstvdpmpegdec.c: VDPAU: Fix up caps in vdpaumpegdec. Remove extra semicolon Fix a typo in the caps for the VDPAU mpeg decoder (chroma_type->chroma-type) and use the GST_VDP_VIDEO_CAPS for the pad template. Remove a stray semicolon. 2009-06-12 16:39:39 +0100 Jan Schmidt * configure.ac: * sys/vdpau/Makefile.am: VDPAU: Enhance the configure tests Check for the VDPAU headers in /usr/include/nvidia as they are on some platforms (Fedora/rpmfusion). Also check that the libvdpau library is available. 2009-06-09 23:14:26 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: use fixed src caps 2009-06-08 14:35:29 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: vdpaumpegdec: drop all frames before a GOP when we seek 2009-06-08 14:15:03 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: small cleanup 2009-06-07 23:46:38 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpmpegdec.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideoyuv.h: * sys/vdpau/gstvdpyuvvideo.h: vdpau: s/IS_VDPAU/IS_VDP 2009-06-07 01:25:01 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: send newsegment event if only the rate has been updated 2009-06-07 01:12:50 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: vdpaumpegdec: use mutex to protect mpeg_dec->seeking from concurrent access 2009-06-07 00:55:55 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: use gst_pad_get_parent for threadsafety 2009-06-06 21:27:52 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: further work on seeking 2009-06-05 23:11:18 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/mpegutil.c: vdpaumpegdec: small cleanups 2009-06-05 22:28:02 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdec.c: vdpaumpegdec: set GST_BUFFER_FLAG_DELTA_UNIT on non I_FRAME's 2009-06-05 21:48:28 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpmpegdec.c: * sys/vdpau/gstvdpmpegdec.h: vdpaumpegdec: rename gstvdpmpegdecoder.[ch] to gstvdpmpegdec.[ch] 2009-06-05 21:46:08 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: rename GstVdpMpegDecoder to GstVdpMpegDec 2009-06-05 21:42:30 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: pass buffer size directly to gst_vdp_mpeg_decoder_decode 2009-06-05 21:18:47 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: small cleanup 2009-06-05 21:16:48 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: calculate byterate from the size of the incoming data 2009-06-05 19:08:24 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: print frame_nr in debug print 2009-06-05 18:28:17 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: interlaced fixes 2009-06-05 18:18:38 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: only set base duration once 2009-06-05 17:53:16 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: don't send the EVENT_NEWSEGMENT downstream if we're seeking 2009-06-05 17:43:49 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: implement seeking 2009-06-05 11:54:17 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: change a GST_DEBUG to GST_WARNING 2009-06-05 11:52:32 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: remove unused broken_gop field 2009-06-05 11:51:41 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: add new gst_vdp_mpeg_decoder_flush for flushing the decoder 2009-06-05 11:24:34 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: use GSE_DEBUG_FUNCPTR 2009-06-05 11:20:56 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: don't drop discont buffers 2009-06-05 11:17:16 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpaumpegdec: handle GST_QUERY_POSITION and GST_QUERY_DURATION 2009-06-04 21:17:40 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpaumpegdec: calculate correct duration from data in MPEG_PACKET_EXT_PICTURE_CODING 2009-06-04 19:30:02 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: fix so that the first frame in a raw mpegvideo stream get timestamp 0 2009-06-04 19:17:14 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpdecoder.h: * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vpdaumpegdec: remove useless GstVdpDecoder baseclass 2009-06-04 18:11:06 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpaumpegdec: use GstBitReader to parse bitstream 2009-05-06 23:07:00 +0200 Carl-Anton Ingmarsson * gst/mpegvideoparse/mpegvideoparse.c: * sys/vdpau/gstvdp.c: vdpau: change element rank for testing purposes set mpegvideoparse rank to primary and vdpaumpegdec to primary - 1 to get vdpaumpegdec correctly plugged into playbin 2009-05-05 23:19:56 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpmpegdecoder.c: vdpau: add debug on GstVdpDevice destroy 2009-05-05 23:13:25 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: small code cleanup 2009-05-05 23:08:51 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: remove unnused GstVdpBFrame struct 2009-05-05 23:07:06 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: vdpaumpegdec: fix small typo in debug print 2009-05-05 18:54:31 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpdecoder.h: vdpaumpegdec: fixup timestamping of outgoing buffers 2009-05-05 18:45:07 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: don't add forward_reference if the frame is an I_FRAME 2009-05-05 18:37:50 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: set correct timestamps 2009-05-05 17:30:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: remove unneeded locking since we know do StateChange correctly 2009-05-05 17:28:19 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpdecoder.h: * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: s/GST_TYPE_VDPAU/GST_TYPE_VDP/g 2009-05-05 17:20:16 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpvideoyuv.h: * sys/vdpau/gstvdpyuvvideo.h: vdpau: s/GST_TYPE_VDPAU/GST_TYPE_VDP/g 2009-05-05 17:15:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: fixup state change 2009-05-05 16:29:24 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: vdpau: init "vdpaudevice" debug catoegory in gst_vdp_get_device 2009-05-05 08:11:03 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: hold the lock in change_state 2009-05-03 21:52:49 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: vdpaumpegdec: the B_FRAME decoding was completely wrong, fix it the buffers don't come in output order so fix the decoder to handle this add new gst_vdp_video_buffer_add_reference method to GstVdpVideoBuffer to be able to keep buffers alive. Ie. a B_FRAME need to have both the forward reference and the backward reference alive during it's lifetime. add mutex to protect for threadsafety issues when we reset the decoder in FLUSH_STOP 2009-04-30 21:58:01 +0200 Carl-Anton Ingmarsson * sys/vdpau/mpegutil.c: vdpaumpegdec: set full_pel_forward_vector to 0 when pic_type == P_FRAME 2009-04-27 21:30:59 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: drop frames if we haven't got an I_FRAME yet 2009-04-27 20:57:12 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: vdpau: set vdpauvideoyuv and vdpauyuvvideo to GST_RANK_PRIMARY 2009-04-27 20:50:11 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: destroy the VdpDecoder and reset the decoder on state change 2009-04-27 20:45:11 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: vdpau: fix error where we forgot to pass a trailing NULL to g_object_new 2009-04-27 20:21:44 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: vdpau: close display on finalize 2009-04-27 20:18:52 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: vdpau: small fixes init create GstVdpDevice on GST_STATE_CHANGE_READY_TO_PAUSED instead of on GST_STATE_CHANGE_NULL_TO READY add back incrementing of frame_nr 2009-04-27 20:15:07 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdevice.c: vdpau: use g_once_init_enter instead of g_once 2009-04-27 18:34:53 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: if available use incoming buffer timestamp as output timestamp 2009-04-27 15:12:26 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: clear the adapter when we reset the decoder 2009-04-26 23:25:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpdecoder.h: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpvideoyuv.h: * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: fixup renaming the rename work done in commit 24cf84d06b2f4b2edec3383b198441a07829618b didn't include typecasts. This commit fixes this. 2009-04-26 23:20:30 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: reset decoder on GST_EVENT_FLUSH_STOP 2009-04-26 22:05:11 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: reset decoder when we get a discont buffer 2009-04-26 20:40:45 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: add "MPEG_PACKET_EXT_PICTURE_CODING" debug statement 2009-04-22 23:35:07 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpaumpegdec: handle broken_gop field 2009-04-22 21:04:58 +0200 Carl-Anton Ingmarsson * sys/vdpau/mpegutil.c: vdpaumpegdec: convert all manual parsing to use read_bits instead 2009-04-22 20:28:19 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: remove unneded gst_buffer_ref and the accompanying gst_buffer_unref 2009-04-22 20:25:55 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: fixup error where we set forward_reference instead of backward_reference 2009-04-16 23:43:24 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/mpegutil.c: vdpaumpegdec: handle multiple B_FRAMEs in a row 2009-04-16 22:30:27 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: more B_FRAME work 2009-04-16 22:06:50 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdec: inital support at handling B_FRAMES 2009-04-15 23:49:07 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: fixup GstFlowReturn propagation a bit 2009-04-15 23:38:53 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpaumpegdec: parse PICTURE_CODING_EXTENSION alternate_scan bit 2009-04-15 23:31:33 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/mpegutil.c: vdpaumpegdec: fixup quantmatrix extension parsing 2009-04-15 18:17:54 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdec: correct some default values mpeg1 now give nearly correct output :) 2009-04-15 17:52:27 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdecoder: remove unused slice field 2009-04-14 23:47:40 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpvideobuffer.h: vdpau: rename "video/vdpau-video" caps to "video/x-vdpau-video" 2009-04-14 21:07:32 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpdecoder.h: vdpau: remove "silent" property from GstVdpDecoder 2009-04-14 21:05:44 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpdecoder.c: vdpau: don't set element details in GstVdpDecoder 2009-04-14 21:04:59 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpmpegdecoder.c: vdpaumpegdecoder: rename to "vdpaumpegdec" 2009-04-14 19:08:53 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: vdpaumpegdecoder: remove unnecesary want_slice field 2009-04-13 22:21:03 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdp.c: vdpau: small cosmetical fix 2009-04-13 22:19:20 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdp.c: * sys/vdpau/gstvdpdecoder.c: * sys/vdpau/gstvdpdecoder.h: * sys/vdpau/gstvdpdevice.c: * sys/vdpau/gstvdpdevice.h: * sys/vdpau/gstvdpmpegdecoder.c: * sys/vdpau/gstvdpmpegdecoder.h: * sys/vdpau/gstvdpvideobuffer.c: * sys/vdpau/gstvdpvideobuffer.h: * sys/vdpau/gstvdpvideoyuv.c: * sys/vdpau/gstvdpvideoyuv.h: * sys/vdpau/gstvdpyuvvideo.c: * sys/vdpau/gstvdpyuvvideo.h: vdpau: rename all files and objects from Vdpau to Vdp 2009-04-13 21:23:38 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaumpegdecoder.c: vdpau: decode slices when we get the next picture header. MPEG2 now kindof works. 2009-04-13 21:11:54 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: * sys/vdpau/mpegutil.c: vdpau: small improvement to mpeg decoder 2009-04-13 20:04:21 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudevice.c: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: * sys/vdpau/gstvdpauvideoyuv.c: * sys/vdpau/gstvdpauvideoyuv.h: * sys/vdpau/gstvdpauyuvvideo.c: * sys/vdpau/gstvdpauyuvvideo.h: vdpau: remove unused "silent" properties 2009-04-13 19:36:53 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpauvideoyuv.c: * sys/vdpau/gstvdpauyuvvideo.c: vdpau: implement GstVdpauVideoBuffer -> I420 conversion 2009-04-09 16:54:27 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudevice.h: * sys/vdpau/gstvdpauvideoyuv.c: * sys/vdpau/gstvdpauyuvvideo.c: vdpau: move definition of the VdpChromaType array and the VdpauFormats to gstdevice.h 2009-04-07 21:51:48 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaumpegdecoder.c: vdpau: small fix set vdp_info.forward_reference to VDP_INVALID handle when unreffing the old buffer 2009-04-07 20:46:49 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpau.c: * sys/vdpau/gstvdpaudevice.c: * sys/vdpau/gstvdpaudevice.h: * sys/vdpau/gstvdpauvideoyuv.c: * sys/vdpau/gstvdpauyuvvideo.c: * sys/vdpau/gstvdpauyuvvideo.h: vdpau: add new GstVdpauYUVVideo element the GstVdpauYUVVideo element takes raw YUV video and outputs GstVdpauVideoBuffers 2009-04-04 22:45:09 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpauvideoyuv.c: vdpau: VideoYUV unref buffer in chain so that we don't leak them MpegDecoder parse sequence headers 2009-04-04 22:05:11 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaumpegdecoder.c: vdpau: remove some unneded includes 2009-04-04 22:03:23 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpau.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpauvideoyuv.c: vdpau: move plugin definition to a new gstvdpau.c file fix up debug categories 2009-04-04 20:53:35 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: * sys/vdpau/gstvdpauvideobuffer.c: * sys/vdpau/gstvdpauvideobuffer.h: * sys/vdpau/gstvdpauvideoyuv.c: * sys/vdpau/gstvdpauvideoyuv.h: vdpau: add new GstVdpauVideoYUV element GstVdpauDecoder now pushes GstVdpauVideoBuffers instead of doing VdpSurface -> YUV conversion. To get YUV data you now put in a GstVdpauVideoYUV element which takes GstVdpauVideoBuffers and outputs YUV data. 2009-04-03 17:59:02 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaumpegdecoder.c: vdpau: small indent fix 2009-04-03 17:58:25 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudevice.c: vdpau: remove obosolete FIXME and some debug prints from gstvdpaudevice.c 2009-04-03 17:53:21 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudevice.h: vdpau: commit rename of gst-vdpau-device.h to gstvdpaudevice.h 2009-04-03 17:52:20 +0200 Carl-Anton Ingmarsson * sys/vdpau/gst-vdpau-device.c: vdpau: remove gst-vdpau-device.c 2009-04-03 17:51:16 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpaudevice.c: vdpau: rename gst-vdpau-device.[ch] to gstvdpaudevice.[ch] 2009-04-01 21:42:56 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: vdpau: change all references of "gst_vdpaudecoder*" to "gst_vdpau_decoder" 2009-04-01 21:40:14 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaumpegdecoder.c: vdpau: make the decoder clean up after itself 2009-04-01 21:26:45 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: vdpau: remove extra \ from Makefile.am 2009-04-01 21:19:18 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gst-vdpau-device.c: * sys/vdpau/gst-vdpau-device.h: * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: vdpau: add gstvdpaudevice for abstracting vdpau initalization 2009-03-31 22:54:14 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaumpegdecoder.h: vdpau: remove comment 2009-03-31 22:53:40 +0200 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpau: MPEG1 decoding know gives recognizable output 2009-03-29 15:28:06 +0200 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpau: create VdpDecoder in set_caps add more functions for parsing mpeg 2009-03-27 17:11:04 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/vdpauvariables.h: vdpau: store vdpau function pointers in a local structure 2009-03-27 16:55:19 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: * sys/vdpau/mpegutil.c: * sys/vdpau/mpegutil.h: vdpau: extract mpeg2 profile from codec_data 2009-03-26 21:04:48 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: vdpau: extract mpeg version 2009-03-25 20:41:46 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpauh264decoder.c: * sys/vdpau/gstvdpauh264decoder.h: * sys/vdpau/gstvdpaumpegdecoder.c: vdpau: add version specification to mpegdecoder caps 2009-03-25 20:38:27 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaumpegdecoder.c: * sys/vdpau/gstvdpaumpegdecoder.h: vdpau: focus on mpeg instead of h264 2009-03-25 19:59:06 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/vdpauvariables.h: vdpau: rough try at implementing pushinf of YV12 buffers 2009-03-24 22:26:56 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: vdpau: remove obsolete comment 2009-03-23 21:36:55 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/vdpauvariables.h: vdpau: init vdpau in GST_STATE_CHANGE_NULL_TO_READY add gst_vdpaudecoder_push_video_surface to vdpaudecoder.h 2009-03-23 20:47:00 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: vdpau: add stubs for pushing VdpVideoSurfaces to the src pad 2009-03-21 22:06:12 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpauh264decoder.c: vdpau: update VdpauH264Decoder element description 2009-03-20 21:26:11 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: vdpau: changle gstvdpaudecoder.c classification 2009-03-20 21:24:40 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: * sys/vdpau/gstvdpauh264decoder.c: * sys/vdpau/gstvdpauh264decoder.h: * sys/vdpau/vdpauvariables.h: vdpau: implement downstream caps negotiation 2009-03-15 21:23:35 +0100 Carl-Anton Ingmarsson * sys/vdpau/gstvdpaudecoder.c: vdpau: small indentation fix 2009-03-15 21:21:49 +0100 Carl-Anton Ingmarsson * sys/vdpau/Makefile.am: * sys/vdpau/gstvdpaudecoder.c: * sys/vdpau/gstvdpaudecoder.h: vdpau: add basic base class for vdpau decoders 2009-03-14 10:43:28 +0100 Carl-Anton Ingmarsson * configure.ac: * sys/Makefile.am: * sys/vdpau/Makefile.am: add new vdpau directory 2009-06-19 19:09:19 +0200 Branko Subasic * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/rtpsession.c: * gst/rtpmanager/rtpsession.h: * gst/rtpmanager/rtpsource.c: * gst/rtpmanager/rtpsource.h: * tests/check/Makefile.am: * tests/check/elements/rtpbin_buffer_list.c: rtpbin: add support for buffer-list Add support for sending buffer-lists. Add unit test for testing that the buffer-list passed through rtpbin. fixes #585839 2009-06-18 12:13:28 +0200 Mark Nauwelaerts * gst/aacparse/gstaacparse.c: aacparse: ADIF: do not send bogus timestamps, leave to downstream (decoder) 2009-06-11 15:54:42 +0200 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: qtmux: only use (64-bit) extended (mdat) atom size if needed. Fixes #585319. 2009-06-10 14:46:14 +0200 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: set default movie timescale to microsecond units 2009-06-10 13:24:20 +0200 Mark Nauwelaerts * gst/qtmux/atoms.c: qtmux: compress/optimize stsc writing 2009-06-10 12:42:44 +0200 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: qtmux: add 3GP style tagging (and refactor appropriately) 2009-06-01 23:00:44 +0200 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: qtmux (and variants): handle pixel-aspect-ratio. Fixes #584358. 2009-06-19 17:04:13 +0100 Tim-Philipp Müller * ext/mythtv/gstmythtvsrc.c: * gst/mpegtsmux/mpegtsmux.c: Fix previous commit so that things still work with debug logs enabled 2009-06-19 16:21:28 +0100 Tim-Philipp Müller * ext/apexsink/gstapexsink.c: * ext/directfb/dfbvideosink.c: * ext/libmms/gstmms.c: * ext/metadata/metadataexif.c: * ext/mythtv/gstmythtvsrc.c: * ext/resindvd/resindvdsrc.c: * ext/sdl/sdlvideosink.c: * gst/dvdspu/gstdvdspu.c: * gst/liveadder/liveadder.c: * gst/mpegtsmux/mpegtsmux.c: * gst/mpegvideoparse/mpegvideoparse.c: * gst/rtpmanager/gstrtpjitterbuffer.c: * sys/oss4/oss4-mixer.c: Make build without warnings with debugging disabled 2009-06-16 21:34:56 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: frei0r: Make plugin scanning more robust 2009-06-16 21:27:38 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Make sure to only register plugins that have valid propert types 2009-06-16 19:42:41 +0200 Sebastian Dröge * configure.ac: * gst/frei0r/gstfrei0rfilter.c: frei0r: Remove custom get_unit_size implementation This is already handled by the default one from GstVideoFilter 2009-06-15 17:05:36 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rfilter.c: frei0r: Fix the klass of the filter elements 2009-06-14 19:41:27 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rsrc.c: frei0r: Free type names 2009-06-14 19:35:29 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rmixer.c: frei0r: Unref the GstCollectPads instance on finalize 2009-06-14 19:27:03 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rsrc.c: frei0r: Don't allow caps changes in PLAYING/PAUSED Most frei0r source plugins generate output based on previous output and creating a new instance on caps changes will let the output start at 0 again. 2009-06-14 19:21:34 +0200 Sebastian Dröge * gst/frei0r/Makefile.am: * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rmixer.c: * gst/frei0r/gstfrei0rmixer.h: freir0: Add support for frei0r mixer plugins 2009-06-13 10:06:57 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rsrc.c: frei0r: Destroy the f0r_instance_t in stop() 2009-06-12 22:04:14 +0200 Sebastian Dröge * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rsrc.c: frei0r: Add the frei0r plugin type to the element name This makes it easier to distinguish generators from filters, etc 2009-06-12 22:00:20 +0200 Sebastian Dröge * gst/frei0r/Makefile.am: * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0rsrc.c: * gst/frei0r/gstfrei0rsrc.h: frei0r: Add support for frei0r source/generator plugins 2009-06-12 15:13:29 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Allow the complete double range for double properties The spec restricts it to [0,1] but some plugins are using the complete double range. 2009-06-12 15:07:26 +0200 Sebastian Dröge * gst/frei0r/gstfrei0r.c: frei0r: Use better property nicks 2009-06-12 14:59:28 +0200 Sebastian Dröge * configure.ac: * gst/frei0r/Makefile.am: * gst/frei0r/frei0r.h: * gst/frei0r/gstfrei0r.c: * gst/frei0r/gstfrei0r.h: * gst/frei0r/gstfrei0rfilter.c: * gst/frei0r/gstfrei0rfilter.h: frei0r: First version of a frei0r wrapper plugin Currently this only supports frei0r filters. 2009-06-14 20:00:51 +0200 Maximilian Högner * gst/scaletempo/gstscaletempo.c: scaletempo: Explicitely cast to signed integers to fix a segfault Fixes bug #585660. 2009-06-09 19:14:41 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: * gst/shapewipe/gstshapewipe.h: shapewipe: Implement basic QoS This change is based on Tim's QoS implementation for jpegdec. 2009-06-09 18:45:19 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Proxy queries on the video pads to the correct peers 2009-06-09 18:37:43 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Proxy bufferalloc on the video sinkpad 2009-06-09 18:25:13 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Try to work inplace if possible This saves one new, large allocation per frame for the most cases. 2009-06-16 18:46:49 +0100 Tim-Philipp Müller * gst/mxf/mxfdemux.c: mxfdemux: fix stray semicolons that mess up if statement 2009-06-11 13:42:20 +0100 Jan Schmidt * common: * docs/plugins/Makefile.am: docs: Bump common to correct upload-doc.mak, fix a comment in the doc Makefile 2009-06-18 20:33:00 +0100 Jan Schmidt * configure.ac: * win32/common/config.h: Back to development -> 0.10.13.1 2009-06-18 08:53:12 +0100 Jan Schmidt * gst-plugins-bad.doap: Add 0.10.13 release entry to the doap file === release 0.10.13 === 2009-06-18 08:29:56 +0100 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * win32/common/config.h: Release 0.10.13 2009-06-17 21:56:56 +0100 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-06-16 17:09:26 +0300 Stefan Kost * gst/camerabin/camerabinimage.c: camerabin: reset filename after capture to avoid racy when capturing again If we don't reset the filename we cannot check if we still expect the filename for a subsequent capture pass. The imagebin would good to paused and we set the filename in that state. This trigers an error-message and would capture to the old filename. 2009-06-12 10:29:20 +0300 Stefan Kost * tests/check/Makefile.am: * tests/check/elements/camerabin.c: camerabin: cleanups in the tests Sprinkle more logging to make it easier to follow. Specify a low framerate and capture resolution to avoid tests timing out. Make the sinks sync to test closer to reality. Fix Makefile to use uninstalled interface. 2009-06-12 10:26:30 +0300 Stefan Kost * gst/camerabin/camerabinimage.c: * gst/camerabin/gstcamerabin.c: camerabin: set imagebin to PAUSED on capture and delayed filename setting We need to set imagebin to PAUSED to not fail the bufferalloc. We also need to keep the filesinks state locked until we have the filename for the run. 2009-06-12 10:14:27 +0300 Stefan Kost * gst/selector/gstoutputselector.c: outputselector: do the pad_alloc for the pad that is pending and have a fallback We should do the pad_alloc for the pending pad if any, as we will switch to that pad on next _chain() call. Also do a fallback alloc, if there is no output yet to not fail state transitions in dynamic pipelines. 2009-06-11 16:00:36 +0100 Jan Schmidt * win32/common/config.h: win32: Bump win32 config.h version number too 2009-06-05 22:43:50 +0100 Jan Schmidt * configure.ac: * po/LINGUAS: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ja.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.12.3 pre-release 2009-06-06 21:28:27 +0400 LRN * gst/debugutils/Makefile.am: Added base libs to debug utils makefile Fixes #585015 2009-06-07 10:55:59 +0200 Edward Hervey * tests/check/pipelines/metadata.c: tests/metadata: Don't try tags we can't handle. Fixes #584945 2009-06-06 19:28:07 +0200 Edward Hervey * gst/hdvparse/Makefile.am: hdvparse: Link against libm because we use pow(). 2009-06-06 13:53:04 +0100 Jan Schmidt * tests/examples/Makefile.am: examples: Don't build the mxf example if GTK isn't present. 2009-06-06 13:17:49 +0100 Jan Schmidt * ext/apexsink/gstapexraop.c: * ext/apexsink/gstapexsink.c: apexsink: Fix compiler warnings Fix compile warnings on solaris from bzero not being declared (use memset instead), and strict-aliasing warnings (use a temporary variable). 2009-06-06 02:35:35 +0100 Tim-Philipp Müller * gst/id3tag/id3tag.c: id3mux: init genre field in ID3v1 tag to an invalid number So that it is not interpreted as 'Blues' if no genre is to be written. 2009-06-06 01:05:49 +0100 Tim-Philipp Müller * gst/id3tag/gstid3mux.c: id3mux: don't write ID3v1 tag until specifically instructed to do so ID3v1 tags are one of the most broken and ill-designed things that exist on this planet. Let's not write them by default. 2009-06-06 00:58:46 +0100 Tim-Philipp Müller * gst/id3tag/id3tag.c: id3mux: don't write empty ID3v1 tag 2009-06-06 00:39:10 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-id3tag.xml: * gst/id3tag/Makefile.am: * gst/id3tag/gstid3mux.c: * gst/id3tag/gstid3mux.h: * gst/id3tag/gsttagmux.c: * gst/id3tag/id3tag.c: * gst/id3tag/id3tag.h: id3tag: rename new id3tag element to id3mux replacing the one removed from -ugly 2009-06-05 23:52:05 +0100 Jan Schmidt * gst/nsf/nes6502.c: nsf: Fix compiler warning on Solaris. A SEC() macro already exists on Solaris, causing warnings about redefining it. 2009-06-05 22:20:46 +0200 Edward Hervey * gst/hdvparse/gsthdvparse.c: hdvparse: Fix the build on Commander Thaytan's S10SP 2009-06-05 19:53:09 +0100 Jan Schmidt * tests/check/elements/.gitignore: gitignore: Ignore shapewipe unit test binary 2009-06-05 19:32:26 +0100 Jan Schmidt * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-x264.xml: * ext/Makefile.am: * ext/x264/GstX264Enc.prs: * ext/x264/Makefile.am: * ext/x264/gstx264enc.c: * ext/x264/gstx264enc.h: * gst-plugins-bad.spec.in: * tests/check/Makefile.am: * tests/check/elements/.gitignore: Moved 'x264enc' from -bad to -ugly 2009-06-05 21:17:55 +0300 Stefan Kost * gst/camerabin/Makefile.am: * tests/check/Makefile.am: camerabin: fix link order Move local version up in the link order. 2009-06-05 20:22:17 +0200 Edward Hervey * gst/hdvparse/gsthdvparse.c: hdvparse: Emit a GST_MESSAGE_ELEMENT with some goodness in it. 2009-06-05 10:49:41 +0200 Edward Hervey * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: Add methods to get names of various values. 2009-06-05 10:48:52 +0200 Edward Hervey * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Fix HDV private stream definition/caps. 2009-06-05 10:47:41 +0200 Edward Hervey * gst/hdvparse/gsthdvparse.c: hdvparse: Rewrite from scratch. Handle both hdv-a and hdv-v This time we analyze a lot more information. Still need to re-add the message emission. 2009-06-05 16:48:04 +0200 Wim Taymans * ext/celt/gstceltenc.c: celtenc: correct framesize range A CELT framesize can be between 64 and 512 samples. Fix a typo in the bitrate property description. 2009-05-27 11:33:01 +0300 Lasse Laukkanen * gst/camerabin/Makefile.am: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinimage.h: * gst/camerabin/camerabinpreview.c: * gst/camerabin/camerabinpreview.h: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * tests/check/elements/camerabin.c: camerabin: preview image sending optimization * decouple image capturing from image post-processing and encoding * post image-captured message after image is captured * post preview-image message with snapshot of captured image 2009-05-19 16:58:36 +0300 Lasse Laukkanen * gst/camerabin/camerabinimage.c: camerabin: don't lose post processing element in first reset 2009-05-12 12:49:33 +0300 Lasse Laukkanen * gst/camerabin/camerabingeneral.c: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinvideo.c: camerabin: add debug including dot graph writing 2009-05-05 14:19:46 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: unblock if error occurs during capture 2009-05-04 10:33:18 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabinphotography.c: camerabin: ignore night mode handling if already in night mode 2009-05-04 10:32:10 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: stop ongoing capture if changing resolution 2009-04-23 18:15:43 +0300 Lasse Laukkanen * gst/camerabin/camerabinvideo.c: camerabin: limit the size of video bin queue leading to view finder We don't want to show old buffers in view finder. 2009-04-22 12:29:14 +0300 Lasse Laukkanen * gst/camerabin/Makefile.am: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabinxoverlay.c: * gst/camerabin/gstcamerabinxoverlay.h: camerabin: don't proxy gst xoverlay interface Default view finder sink in camerabin is autovideosink which doesn't support xoverlay iface. If application decides to use another sink that supports xoverlay, then it can use the interface directly. 2009-04-20 17:06:14 +0300 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * gst/camerabin/gstcamerabinphotography.c: camerabin: allow configuring photography settings when in NULL state Cache the photography settings if set in NULL state and apply them later 2009-04-20 17:05:49 +0300 Lasse Laukkanen * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photography: add functions to set/get all settings with one call 2009-03-09 18:00:45 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: crop still image capture frame if necessary If incoming still image capture frame aspect ratio differs from aspect ratio that application requested, then apply crop to the frame. 2009-06-05 10:25:26 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-adpcmdec.xml: * docs/plugins/inspect/plugin-hdvparse.xml: * docs/plugins/inspect/plugin-id3tag.xml: docs: add inspect files for new plugins 2009-06-05 10:16:23 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-rawparse.xml: docs: fix build of plugin docs by updating inspect templates The xml inspect data of the debugutilsbad plugin didn't contain the data for the fpsdisplaysink element (someone probably ran 'make udpate' in docs/plugins with the old libgstfpsdisplaysink.so from before the rename still around). 2009-06-05 10:34:30 +0100 Tim-Philipp Müller * docs/plugins/xml/element-fpsdisplaysink-details.xml: Revert "docs: add doc file fro new plugin" This reverts commit 039ef3eb072555b7ca38fc351ca386bb680ccccc. We don't track the stuff in xml/ in git. 2009-06-05 11:18:31 +0300 Stefan Kost * docs/plugins/xml/element-fpsdisplaysink-details.xml: docs: add doc file fro new plugin 2009-06-01 16:31:42 +0300 Lasse Laukkanen * gst/selector/gstoutputselector.c: output-selector: serialize setting and actual changing of new active pad 2009-05-04 12:29:54 +0300 Lasse Laukkanen * gst/selector/gstoutputselector.c: output-selector: unref latest buffer also when resending has been disabled 2009-04-16 17:32:03 +0300 Lasse Laukkanen * gst/selector/gstoutputselector.c: output-selector: keep ref to buffer for resending only if explicitly requested 2009-06-04 19:08:16 +0200 Wim Taymans * gst/selector/gstinputselector.c: inputselector: don't leak pads in iterator 2009-06-04 16:29:31 +0100 Jan Schmidt * gst/mpegdemux/gstmpegdesc.c: mpegdemux: Add a GST_MEMDUMP line in the descriptor parsing Make it possible to see descriptor contents in the debug output (GST_DEBUG=mpegtsdesc:9), and remove a stray semi-colon. 2009-06-04 16:11:16 +0100 Jan Schmidt * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Avoid passing the custom GST_FLOW_NEED_MORE_DATA upstream Don't return GST_FLOW_NEED_MORE_DATA from the chain function at the end of files. 2009-06-04 08:56:29 +0200 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Notify when the tags property of the selector sinkpads changes First part of bug #584686. 2009-06-04 08:56:14 +0200 Sebastian Dröge * tests/check/elements/shapewipe.c: shapewipe: Increase timeout of the unit test 2009-06-03 23:35:36 +0100 Tim-Philipp Müller * configure.ac: Bump core/base requirements to released versions 2009-06-02 11:36:01 +0100 Christian Schaller * gst-plugins-bad.spec.in: add two new plugins to spec file 2009-06-02 11:23:37 +0100 Christian Schaller * gst/dvdspu/Makefile.am: dvdspu: add missing header to Makefile.am: gstspu-common.h 2009-06-02 01:09:32 +0100 Tim-Philipp Müller * ext/dirac/Makefile.am: dirac: use GST_CXXFLAGS instead of GST_CFLAGS for c++ compilers Fixes compiler message about passing -Wdeclaration-after-statement to the C++ compiler. 2009-06-01 15:53:27 +0100 Tim-Philipp Müller * gst/aacparse/gstaacparse.c: aacparse: fix sample rate extraction from codec data In one case we extracted the sample rate index from the codec data and saved it as sample rate rather than getting the real sample rate from the table. Fix that, and also make sure we don't access non-existant table entries by adding a small helper function that guards against out-of-bounds access in case of invalid input data. 2009-06-01 14:02:33 +0100 Tim-Philipp Müller * gst/aacparse/gstaacparse.c: * gst/amrparse/gstamrparse.c: aacparse, amrparse: remove bogus gst_pad_fixate_caps() calls 2009-06-01 13:56:18 +0100 Tim-Philipp Müller * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: propagate return value of GstBaseParse::set_sink_caps() gst_base_parse_sink_setcaps() presumably should fail if the subclass returns FALSE from its ::set_sink_caps() function. 2009-06-01 13:47:01 +0100 Tim-Philipp Müller * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: don't try to GST_LOG an already-freed caps string The proper way to log caps is via GST_PTR_FORMAT anyway. 2009-06-01 13:05:35 +0100 Tim-Philipp Müller * gst/aacparse/gstaacparse.c: * tests/check/elements/aacparse.c: aacparse: set channels and rate on output caps, and keep codec_data Create output caps from input caps, so we maintain any fields we might get on the input caps, such as codec_data or rate and channels. Set channels and rate on the output caps if we don't have input caps or they don't contain such fields. We do this partly because we can, but also because some muxers need this information. Tagreadbin will also be happy about this. 2009-06-01 22:42:08 +0200 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmuxmap.c: gppmux: enhance ftyp brand heuristic. Fixes #584360. 2009-06-01 21:24:27 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Fix some issues that were exposed by the new unit test 2009-06-01 21:24:12 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/shapewipe.c: shapewipe: Add unit test for shapewipe 2009-05-31 21:33:01 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-shapewipe.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst/shapewipe/gstshapewipe.c: shapewipe: Add documentation and integrate into the build system 2009-05-31 20:24:44 +0100 Tim-Philipp Müller * gst/sdp/gstsdpdemux.c: sdpdemux: include glib.h before checking if G_OS_WIN32 is defined 2009-05-31 20:23:19 +0100 Tim-Philipp Müller * .gitignore: .gitignore: ignore new shapewipe example binary 2009-05-31 18:23:50 +0200 Edward Hervey * gst/hdvparse/gsthdvparse.c: hdvparse: Setting rank to NONE so it doesn't get picked up by playbin2. 2009-05-31 18:23:08 +0200 Edward Hervey * gst/hdvparse/gsthdvparse.c: hdvparse: Emit application message with the parsed information. 2009-05-31 14:15:11 +0200 Edward Hervey * configure.ac: * gst/hdvparse/Makefile.am: * gst/hdvparse/gsthdvparse.c: * gst/hdvparse/gsthdvparse.h: hdvparse: New element for parsing private/hdv-a1 streams. 2009-05-29 21:07:26 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: shapewipe: Adjust border to still have everything transparent at 1.0 and the other way around 2009-05-29 16:55:25 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: * tests/examples/shapewipe/shapewipe-example.c: shapewipe: Divide the border value by two, otherwise we use a twice a wide border 2009-05-29 16:51:50 +0200 Sebastian Dröge * gst/shapewipe/gstshapewipe.c: * gst/shapewipe/gstshapewipe.h: * tests/examples/shapewipe/shapewipe-example.c: shapewipe: Add border property to allow smooth borders ...and use a border of 0.01 in the example application. 2009-05-29 15:44:51 +0100 Jan Schmidt * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Fix bogus uninitialised variable access Typo in the previous commit 2009-05-29 15:01:42 +0100 Jan Schmidt * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Use the ISO 639 language code descriptor to send tags. If there is an ISO 639 language descriptor for a stream, send a language code tag so that players can show a meaningful language for the audio and subtitle streams. 2009-05-29 16:00:16 +0200 Sebastian Dröge * tests/examples/shapewipe/Makefile.am: shapewipe: Fix Makefile of the example application 2009-05-29 15:32:24 +0200 Sebastian Dröge * configure.ac: * gst/shapewipe/Makefile.am: * gst/shapewipe/gstshapewipe.c: * gst/shapewipe/gstshapewipe.h: * tests/examples/Makefile.am: * tests/examples/shapewipe/Makefile.am: * tests/examples/shapewipe/shapewipe-example.c: shapewipe: Add a simple shapewipe transition filter & example application 2009-05-28 17:37:44 -0400 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Transform the right session sdes message Fixes #584165 2009-05-28 17:33:10 -0400 Olivier Crête * gst/rtpmanager/rtpsource.c: Add ssrc to application/x-rtp-source-sdes structure 2009-05-28 23:12:13 +0100 Tim-Philipp Müller * gst/rawparse/gstaudioparse.c: audioparse: add support for A-Law and µ-Law 2009-05-28 23:08:17 +0100 Tristan Matthews * gst/dvdspu/gstspu-pgs.c: gstspu: Fix compiler warnings on OS/X Fix some warnings for format string args and uninitialized vars on OS/X Fixes: #584164 Signed-off-by: Jan Schmidt 2009-05-28 13:56:10 +0200 Mark Nauwelaerts * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: qtmux: use different stsd atom type for H263 for ISO and QT variants Fixes #584114. 2009-05-28 13:07:37 +0200 Mark Nauwelaerts * configure.ac: soundtouch: fix detection of libsoundtouch >= 1.4 2009-05-28 13:09:24 +0200 Mark Nauwelaerts * gst/amrparse/gstamrparse.c: * gst/amrparse/gstamrparse.h: amrparse: consider header size in byte <-> time conversions 2009-05-26 19:43:53 +0200 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: baseparse: fix debug category 2009-05-28 10:38:50 +0300 Stefan Kost * gst/selector/gstoutputselector.h: selector: remove not needed instance var (previous commit). 2009-05-11 16:12:54 +0300 Stefan Kost * ext/jack/gstjackaudioclient.c: * ext/jack/gstjackaudiosink.c: jack: when stopping playback, do one more cycle to flush the port. Fixes #582167 The gst_jack_audio_client_set_active() flags the port as deactivating and uses a GCond to wait until the jack_process_cb() has run once more and cleared the flag. This way the client zero's the buffer. This happens if one manyally go to PAUSED and then to READY, while leting the mainloop run inbetween. 2009-05-28 10:12:58 +0300 Stefan Kost * gst/selector/gstoutputselector.c: * gst/selector/gstoutputselector.h: outputselector: implement pad_alloc on active pad. 2009-05-27 22:54:51 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnaudiomunge.c: resindvd: Create all the audio streams of all formats Enable creation of the demuxer pads for all audio streams, even types we don't yet support. This means that unsupported types (LPCM, DTS) are output, but not linked to anything yet. If only unsupported streams are available, the user hears silence instead of having the pipeline not pre-roll correctly. This is a prerequisite for hooking up the automatic decoder switching. 2009-05-27 11:03:14 +0200 Wim Taymans * gst/rtpmanager/rtpsource.c: rtpsouce: the network address is in network order Bring the network address in netowkr byte order to the host order. 2009-05-27 00:51:45 +0100 Jan Schmidt * gst/dvdspu/gstspu-pgs.c: gstspu: Convert g_warnings to GST_ERROR, and fix format specifiers Use G_GSSIZE_FORMAT for printing pointer differences, which should work on both 32-bit and 64-bit systems. Use GST_ERROR instead of g_warning for printing messages about unknown packet contents. 2009-05-27 00:47:05 +0100 Jan Schmidt * gst/dvdspu/gstspu-vobsub-render.c: gstspu: Fix a nasty regression, with DVDs randomly crashing Use the local wrapper function when clearing the compositing buffers to ensure the correct portion is being cleared. 2009-05-26 19:38:54 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: LPCM streams are only from 0xa0 to 0xaf. Fix the same bug as the previous commit, but in resindvd's copy of mpegdemux. 2009-05-26 18:47:32 +0100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Only treat streams from 0xa0 to 0xaf as LPCM, not 0xa0..0xbf Don't treat some streams (Private Stream 2) as LPCM when they're not. Fixes playback of files that have private streams in them now that the PES filter emits such packets. 2009-05-26 18:43:18 +0100 Tim-Philipp Müller * gst/dvdspu/gstspu-pgs.c: dvdspu: fix printf formats to avoid compiler warnings 2009-05-26 17:19:35 +0100 Jan Schmidt * common: Automatic update of common submodule From 6ab11d1 to c572721 2009-05-23 23:19:05 +0100 Jan Schmidt * gst/dvdspu/Makefile.am: * gst/dvdspu/gstdvdspu-render.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/dvdspu/gstspu-common.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-pgs.h: * gst/dvdspu/gstspu-vobsub-render.c: * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: gstspu: Implement PGS rendering and alpha blending Refactor the DVD subpicture compositing, switching it to 8-bit alpha calculations. Reuse some of the resulting code to implement PGS subpicture blending. Implement parsing and collecting of composition objects properly, but assuming a single active window and colour palette for now. I need more PGS samples. 2009-05-22 11:13:59 +0100 Jan Schmidt * gst/dvdspu/Makefile.am: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstspu-vobsub.c: * gst/dvdspu/gstspu-vobsub.h: dvdspu: Move a bunch of vobsub specific logic to a separate file. Start separating out the vobsub logic in preparation for creating separate renderer objects for each subpicture format. 2009-05-22 11:12:52 +0100 Jan Schmidt * gst/dvdspu/gstspu-pgs.c: dvdspu: Add copyright header and includes to the PGS handler 2009-05-22 10:15:44 +0100 Jan Schmidt * gst/dvdspu/gstspu-pgs.c: dvdspu: Make the PGS dumping less verbose 2009-05-21 23:45:43 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Collect entire PGS packets and queue as events Collect fragmented PGS packets and submit as complete events for processing at the correct moment. 2009-05-20 08:55:40 +0100 Jan Schmidt * gst/dvdspu/Makefile.am: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/dvdspu/gstspu-pgs.c: * gst/dvdspu/gstspu-pgs.h: dvdspu: Add simple PGS handler that dumps the packet info Add setcaps logic on the subpicture sink pad for configuring which subpicture format is arriving. Add the first piece of PGS subpicture handling by dumping the stream contents out to the terminal as the packets arrive. Add some more debug. Don't calculate the running time for our subpicture packets twice, once is enough. 2009-05-21 15:22:58 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Add a simple default colour table. When we're not provided with a palette in advance, draw with a grey colour or two, instead of YUV green. 2009-05-21 11:13:54 +0100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: Add sparse stream filling. First stab at sending new-segment events to effect sparse stream updates. 2009-05-21 00:41:47 +0100 Jan Schmidt * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegdemux: Add support for outputting sub-picture streams found in files. Output subpicture streams when they are found on the private stream ID. Don't strip off the first byte of such packets when pushing. 2009-05-20 08:50:37 +0100 Jan Schmidt * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: * gst/mpegdemux/gstpesfilter.h: mpegtsdemux: Add mapping for DVD and Bluray subpicture streams. Add output subpicture pads for DVD (video/x-dvd-subpicture) and Bluray PGS (subpicture/x-pgs) streams. Remove an unused variable from the PES filter. 2009-05-25 00:25:07 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Fix subpicture timing in some cases Make sure we send events to all pads. Unmark the notlinked flag on freshly selected pads to ensure they get data. 2009-05-22 14:02:38 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Try a different approach to segment filling. Restore the old segment update behaviour, and instead extend the close segment stop time if the SCR (last_stop) overruns the calculated stop position. 2009-05-21 11:10:13 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Minor change to inline a function in the demuxer 2009-05-20 19:31:24 +0100 Jan Schmidt * tests/check/Makefile.am: states: Ignore the camerabin for the states test It accesses the video device, which isn't generally desirable for the state test. 2009-05-22 13:07:38 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Don't accidentally lose the colour palette when flushing the SPU Fixes racy startup on DVDs where it sometimes gets entirely the wrong set of colours in the menus and subtitles. 2009-05-26 15:40:52 +0200 Wim Taymans * gst/rtpmanager/rtpsource.c: rtpsource: byteswap the port from GstNetAddress Since the port in GstNetAddress is in network order we might need to byteswap it before adding it to the source statistics. 2009-05-11 19:30:34 +0200 Edward Hervey * gst/mpegdemux/gstpesfilter.c: gstpesfilter: Directly use gst_adapter_take_buffer(). 2009-05-25 16:27:34 +0200 Edward Hervey * gst/mpegdemux/gstpesfilter.c: gstpesfilter: Don't peek the adapter if we don't have enough data. 2009-05-25 16:25:42 +0200 Edward Hervey * gst/mpegdemux/gstpesfilter.c: gstpesfilter: Don't skip private streams PES but push them out. The one thing we *DO* need to do for those streams is to skip all the PTS/DTS/Scrambling/DSM/extension/... handling. 2009-05-25 15:21:52 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Ignore NULL packets as early as possible. This avoids: * creating a MpegTSStream structure for nothing * processing packet data for nothing 2009-05-25 15:21:12 +0200 Edward Hervey * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Add mapping for HDV private streams 2009-05-25 17:24:32 +0200 Mathias Hasselmann * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: neonhttp: add property to support SS cerificates Add a property to support self-signed certificates in neonhttpsrc. This property is FALSE by default. Fixes #511097 2009-05-25 13:46:29 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: rtpbin: remove ptdemux ghostpads 2009-05-25 13:33:20 +0200 Wim Taymans * tests/check/elements/rtpbin.c: tests: add receive rtpbin unit test 2009-05-25 11:18:57 +0200 Wim Taymans * ext/x264/gstx264enc.c: * ext/x264/gstx264enc.h: x264enc: add multipass-cache-file property Fixes #583627 2009-05-23 13:11:28 +0100 Christian Schaller * gst-plugins-bad.spec.in: Update spec file 2009-05-22 16:56:52 -0700 Michael Smith * common: * configure.ac: * gst/adpcmdec/Makefile.am: * gst/adpcmdec/adpcmdec.c: adpcmdec: Add new plugin for ms-adpcm decoding. 2009-05-20 16:46:49 +0200 Edward Hervey * gst/mpegvideoparse/mpegpacketiser.c: * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: mpegvideoparse: Detect interlaced content and set it on outgoing caps. I also added the parsing of all the other bits in the sequence extension header in case we need it later. 2009-05-22 16:41:19 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: rtpbin: add to new signal to remove SSRC pads 2009-05-22 16:35:20 +0200 Ali Sabil * gst/rtpmanager/gstrtpbin-marshal.list: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/rtpmanager/gstrtpssrcdemux.h: ssrcdemux: emit signal when pads are removed Add action signal to clear an SSRC in the ssrc demuxer. Add signal to notify of removed ssrc. See #554839 2009-05-22 15:45:19 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: rtpbin: use our ghostpads instead of its target Since we keep a reference to our ghostpads, we can use them to track sessions. This avoid us having to mess with the target of the ghostpad. 2009-05-22 15:37:29 +0200 Wim Taymans * tests/check/elements/rtpbin.c: tests: more rtpbin checks 2009-05-22 15:36:17 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: rtpbin: don't warn when getting request pads twice Allow getting the request pads multiple times, just return the previously created pads. 2009-05-22 13:47:30 +0200 Wim Taymans * gst/rtpmanager/rtpsource.c: rtpsource: add RTP and RTCP source address Add the RTP and RTCP sender addresses in the stats structure. 2009-05-22 13:45:15 +0200 Wim Taymans * gst/rtpmanager/gstrtpsession.c: rtpsession: reuse source code for SDES Reuse the RTPSource object property instead of duplicating code. 2009-05-22 13:44:17 +0200 Wim Taymans * tests/check/elements/rtpbin.c: tests: add more rtpbin tests 2009-05-22 12:23:27 +0200 Wim Taymans * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/rtpbin.c: tests: add rtpbin unit test Add the beginnings of an rtpbin unit test Add some more stuff to .gitignore 2009-05-22 12:20:13 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: rtpbin: set target state on new elements Set the state on newly added elements to the state of the parent. Add some debug info and do some cleanups 2009-05-22 11:59:17 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: rtpbin: unref requests pads after releasing 2009-05-21 16:00:46 +0200 Wim Taymans * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: fix memleaks and refcounts Use correct constants for PID_type so that we clear the right filter. provide_clock must return a ref to a clock. 2009-05-22 09:55:20 +0100 Tim-Philipp Müller * autogen.sh: * configure.ac: autotools: move -Wno-portability for automake to configure.ac 2009-05-22 09:54:57 +0100 Tim-Philipp Müller * gst/id3tag/gstid3tag.c: * gst/id3tag/gstid3tag.h: * gst/id3tag/id3tag.c: id3tag: canonicalise function names 2009-05-22 09:51:29 +0100 Tim-Philipp Müller * gst/id3tag/gstid3tag.c: * gst/id3tag/gstid3tag.h: * gst/id3tag/gsttagmux.c: id3tag: change GType to GstId3Tag so it doesn't conflict with the id3tag plugin in -ugly 2009-05-22 01:29:33 +0100 Tim-Philipp Müller * win32/common/config.h: win32: update config.h 2009-05-22 01:27:09 +0100 Tim-Philipp Müller * gst/id3tag/gsttagmux.c: id3tag: register GType of the base class with a less generic name .. so we can easily move the base class into -base later without causing GType name conflicts. 2009-05-22 01:04:02 +0100 Tim-Philipp Müller * common: * m4/gst-fionread.m4: m4: fix 'suspicious cache value id' warnings in gst-fionread.m4 And update common to pull in a related fix from there. 2009-05-22 01:43:50 +0200 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Implement releasing the streams See #561752 2009-05-22 01:16:11 +0200 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Keep jb signals handler Keep the signal handlers so they can be disconnected at release time See #561752 2009-05-22 01:12:57 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: rtpbin: use the right lock for the sessions Use the right lock when iterating the sessions. 2009-05-22 01:03:55 +0200 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Free session if request pads are released Free the session when all the request pads are released. Don't mess with the session list in free_session as it is called from a foreach on that list. Set the state of the upstream element to NULL first. See #561752 2009-05-22 00:51:53 +0200 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Implement relasing of the rtp recv pad 2009-05-22 00:44:51 +0200 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Implement releasing of rtp send pads 2009-05-22 00:34:36 +0200 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Implement release of the recv rtcp pad See #561752 2009-05-22 00:16:19 +0200 Olivier Crête * gst/rtpmanager/gstrtpbin.c: rtpbin: Implement releasing of rtcp src pad See #561752 2009-05-18 23:38:59 +0100 Jan Schmidt * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: dtsdec: Reconcile element code with a52dec changes Re-work the dtsdec element code to unify it with changes made it a52dec, including support for reverse playback and dynamic channel negotiation on the source pad. 2009-05-21 21:35:32 +0100 Jan Schmidt * win32/common/config.h: win32: Update the win32 config.h 2009-05-18 23:21:47 +0200 Wim Taymans * gst/sdp/gstsdpdemux.c: * gst/sdp/gstsdpdemux.h: sdpdemux: rework RTCP sending and RTP receiving When we are dealing with multiast, create the udp src and sink elements pointing to the multicast addresses. When we are doing unicast, receive data on the local ports and don't send RTCP because we don't know where we have to send it. Fixes #583188 2009-05-21 13:15:46 -0700 Michael Smith * configure.ac: * gst/id3tag/Makefile.am: * gst/id3tag/gstid3tag.c: * gst/id3tag/gstid3tag.h: * gst/id3tag/gsttagmux.c: * gst/id3tag/gsttagmux.h: * gst/id3tag/id3tag.c: * gst/id3tag/id3tag.h: id3tag: Add new id3 tagging plugin, supports v1, v2.3, and v2.4. By default, does v1 and v2.3, but there are properties to select. Will hopefully replace id3mux, id3v2mux, in the not-too-distant future. 2009-05-21 21:02:55 +0100 Jan Schmidt * configure.ac: Back to hacking -> 0.10.12.1 === release 0.10.12 === 2009-05-20 22:31:54 +0100 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-debugutilsbad.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.12 2009-05-20 20:44:12 +0100 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-05-20 17:10:40 +0200 Edward Hervey * gst/mxf/mxfmetadata.c: mxf: Fix frame_layout for non-interlaced formats. Fixes #583337 2009-05-16 01:58:33 +0100 Jan Schmidt * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.11.3 pre-release 2009-05-16 01:53:15 +0100 Jan Schmidt * win32/MANIFEST: win32: Add directdraw project files to the win32 manifest 2009-05-16 01:14:23 +0100 Jan Schmidt * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-directdraw.xml: * sys/Makefile.am: Moved 'directdraw' from -good to -bad 2007-06-15 09:13:55 +0000 Jan Schmidt [MOVED FROM GOOD] win32/vs6/: Mark *.dsp & *.dsw as binary files and convert to DOS line endings, as they don't load into VS6 correctly... Original commit message from CVS: * win32/vs6/autogen.dsp: * win32/vs6/gst_plugins_good.dsw: * win32/vs6/libgstalaw.dsp: * win32/vs6/libgstalpha.dsp: * win32/vs6/libgstalphacolor.dsp: * win32/vs6/libgstapetag.dsp: * win32/vs6/libgstaudiofx.dsp: * win32/vs6/libgstauparse.dsp: * win32/vs6/libgstautodetect.dsp: * win32/vs6/libgstavi.dsp: * win32/vs6/libgstcutter.dsp: * win32/vs6/libgstdirectdraw.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs6/libgsteffectv.dsp: * win32/vs6/libgstflx.dsp: * win32/vs6/libgstgoom.dsp: * win32/vs6/libgsticydemux.dsp: * win32/vs6/libgstid3demux.dsp: * win32/vs6/libgstinterleave.dsp: * win32/vs6/libgstjpeg.dsp: * win32/vs6/libgstlevel.dsp: * win32/vs6/libgstmatroska.dsp: * win32/vs6/libgstmedian.dsp: * win32/vs6/libgstmonoscope.dsp: * win32/vs6/libgstmulaw.dsp: * win32/vs6/libgstmultipart.dsp: * win32/vs6/libgstqtdemux.dsp: * win32/vs6/libgstrtp.dsp: * win32/vs6/libgstrtsp.dsp: * win32/vs6/libgstsmpte.dsp: * win32/vs6/libgstspeex.dsp: * win32/vs6/libgstudp.dsp: * win32/vs6/libgstvideobalance.dsp: * win32/vs6/libgstvideobox.dsp: * win32/vs6/libgstvideocrop.dsp: * win32/vs6/libgstvideoflip.dsp: * win32/vs6/libgstvideomixer.dsp: * win32/vs6/libgstwaveform.dsp: * win32/vs6/libgstwavenc.dsp: * win32/vs6/libgstwavparse.dsp: Mark *.dsp & *.dsw as binary files and convert to DOS line endings, as they don't load into VS6 correctly otherwise. 2007-02-11 15:26:49 +0000 Sébastien Moutte [MOVED FROM GOOD] Makefile.am: Add win32 MANIFEST Original commit message from CVS: * Makefile.am: Add win32 MANIFEST * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: Clear unused code and add comments. Remove yuv from template caps, it only supports RGB actually. Implement XOverlay interface and remove window and fullscreen properties. Add debug logs. Test for blit capabilities to return only the current colorspace if the hardware can't blit for one colorspace to another. * sys/directsound/gstdirectsoundsink.c: Add some debugs. * win32/MANIFEST: Add VS7 project files and solution. * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libgstdirectdraw.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs6/libgstqtdemux.dsp: Update project files. 2006-11-01 10:19:18 +0000 Sergey Scobich [MOVED FROM GOOD] sys/: Wait until the window is created before using it; guard unistd.h includes with HAVE_UNISTD_H. (#366523) Original commit message from CVS: Patch by: Sergey Scobich * sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_window_thread), (gst_directdrawsink_create_default_window): * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.c: Wait until the window is created before using it; guard unistd.h includes with HAVE_UNISTD_H. (#366523) * win32/vs8/libgstdirectdraw.vcproj: * win32/vs8/libgstdirectsound.vcproj: Update project files. 2006-07-24 21:43:06 +0000 Sébastien Moutte [MOVED FROM GOOD] sys/directsound/gstdirectsoundsink.*: Add an attenuation property that will directly attenuate the directsound buffer. Original commit message from CVS: * sys/directsound/gstdirectsoundsink.h: * sys/directsound/gstdirectsoundsink.c: Add an attenuation property that will directly attenuate the directsound buffer. Change the size of the directsound secondary buffer to a half second. Add more debug logs. Add a lock to protect dsound buffer write access. Fix a bad implementation of reset. * sys/directsound/gstdirectdrawsink.c: * sys/directsound/gstdirectdrawsink.h: Add a keep_aspect_ratio property. Do not use overlay if not supported. Add more debug logs. Remove overwrite of WM_ERASEBKGND message handling. It was not redrawing border when keep_aspect_ratio was enabled. * win32/common/config.h: update version waiting an auto-generated config.h 2006-03-03 23:45:23 +0000 Sébastien Moutte [MOVED FROM GOOD] sys/: sinks are now using GST_RANK_PRIMARY to be used with autodectection Original commit message from CVS: * sys/directdraw: * sys/directsound: sinks are now using GST_RANK_PRIMARY to be used with autodectection * win32/vs6: project files updated to fix some bugs * win32/vs7: * win32/vs8: vs7 and vs8 project files added 2006-01-05 23:17:44 +0000 Sébastien Moutte * win32/vs6/libgstdirectdraw.dsp: [MOVED FROM GOOD] added sys/directdraw added sys/directsound added win32/vs6/gst_plugins_bad.dsw added win32/vs6/libgstdirectsound.dsp ... Original commit message from CVS: 2006-01-05 Sebastien Moutte * added sys/directdraw * added sys/directsound * added win32/vs6/gst_plugins_bad.dsw * added win32/vs6/libgstdirectsound.dsp * added win32/vs6/libgstdirectdraw.dsp * added win32/common/config.h 2009-02-27 20:40:31 +0100 LRN * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] directdrawsink: Fix type mismatches Fixes bug #573343. 2009-01-29 11:07:59 +0200 Stefan Kost * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] Remove version numbers from a few gst-launch examples. The majority of the examples doe not use -0.10 and this will also help us to maintain the docs. 2009-01-29 10:10:08 +0200 Stefan Kost * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] Update and add documentation for platform specific plugins (sys). Link to properties. Correct titles for examples. Fix examples. 2008-11-04 12:28:34 +0000 Stefan Kost [MOVED FROM GOOD] Don't install static libs for plugins. Fixes #550851 for -good. Original commit message from CVS: * ext/aalib/Makefile.am: * ext/annodex/Makefile.am: * ext/cairo/Makefile.am: * ext/dv/Makefile.am: * ext/esd/Makefile.am: * ext/flac/Makefile.am: * ext/gconf/Makefile.am: * ext/gdk_pixbuf/Makefile.am: * ext/hal/Makefile.am: * ext/jpeg/Makefile.am: * ext/ladspa/Makefile.am: * ext/libcaca/Makefile.am: * ext/libmng/Makefile.am: * ext/libpng/Makefile.am: * ext/mikmod/Makefile.am: * ext/pulse/Makefile.am: * ext/raw1394/Makefile.am: * ext/shout2/Makefile.am: * ext/soup/Makefile.am: * ext/speex/Makefile.am: * ext/taglib/Makefile.am: * ext/wavpack/Makefile.am: * gst/alpha/Makefile.am: * gst/apetag/Makefile.am: * gst/audiofx/Makefile.am: * gst/auparse/Makefile.am: * gst/autodetect/Makefile.am: * gst/avi/Makefile.am: * gst/cutter/Makefile.am: * gst/debug/Makefile.am: * gst/effectv/Makefile.am: * gst/equalizer/Makefile.am: * gst/flx/Makefile.am: * gst/goom/Makefile.am: * gst/goom2k1/Makefile.am: * gst/icydemux/Makefile.am: * gst/id3demux/Makefile.am: * gst/interleave/Makefile.am: * gst/law/Makefile.am: * gst/level/Makefile.am: * gst/matroska/Makefile.am: * gst/median/Makefile.am: * gst/monoscope/Makefile.am: * gst/multifile/Makefile.am: * gst/multipart/Makefile.am: * gst/oldcore/Makefile.am: * gst/qtdemux/Makefile.am: * gst/replaygain/Makefile.am: * gst/rtp/Makefile.am: * gst/rtsp/Makefile.am: * gst/smpte/Makefile.am: * gst/spectrum/Makefile.am: * gst/udp/Makefile.am: * gst/videobox/Makefile.am: * gst/videocrop/Makefile.am: * gst/videofilter/Makefile.am: * gst/videomixer/Makefile.am: * gst/wavenc/Makefile.am: * gst/wavparse/Makefile.am: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: * sys/oss/Makefile.am: * sys/osxaudio/Makefile.am: * sys/osxvideo/Makefile.am: * sys/sunaudio/Makefile.am: * sys/v4l2/Makefile.am: * sys/waveform/Makefile.am: * sys/ximage/Makefile.am: Don't install static libs for plugins. Fixes #550851 for -good. 2008-08-21 21:56:19 +0000 Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc, gst_directdraw_sink_bufferpool_clear): Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc, gst_directdraw_sink_bufferpool_clear): Fix two more buffer ref leaks. 2008-08-21 15:28:09 +0000 Ole André Vadla Ravnås [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c: Fix buffer ref leak. Original commit message from CVS: Patch by: Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_show_frame): Fix buffer ref leak. 2008-05-07 15:33:52 +0000 Haakon Sporsheim [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_setup_ddraw): Do IDirectDrawClipper_SetHWnd() if the window I... Original commit message from CVS: patch by: Haakon Sporsheim * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_setup_ddraw): Do IDirectDrawClipper_SetHWnd() if the window ID has already been set after creating the clipper. 2008-05-07 15:28:06 +0000 Haakon Sporsheim [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame): Added checking of surface lost case after an uns... Original commit message from CVS: patch by: Haakon Sporsheim * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame): Added checking of surface lost case after an unsuccessful IDirectDrawSurface7_Lock() call. If surface is lost, return GST_FLOW_OK. 2008-05-07 15:19:47 +0000 Haakon Sporsheim * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame, Original commit message from CVS: patch by: Haakon Sporsheim * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_show_frame, WndProc, gst_directdraw_sink_window_thread): Improved Windows message loop and fixed window destruction issue. When the window which DirectDraw is rendering to is destroyed, the render/show_frame function will return GST_FLOW_ERROR. Partially fixes #520885. 2008-05-07 15:09:10 +0000 Haakon Sporsheim [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_set_caps): Fixed mid stream resolution change bug, the offscr... Original commit message from CVS: patch by: Haakon Sporsheim * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_set_caps): Fixed mid stream resolution change bug, the offscreen surface is now released when set_caps is called. Partially fixes #520885. 2008-05-07 14:56:22 +0000 Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc): Make it so that gst_directdraw_sink_buffer_alloc uses the right width/height. Especially when looking through the pool of buffers, make sure that the width/height of caps is used instead of the already negotiated dimensions. For example if a buffer with different caps is requested, i.e. higher resolution, the caller would get a buffer with the old dimensions and thus corrupt the heap. 2008-05-07 14:43:39 +0000 Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc): Clear the flags on recycled buffers from buffer_alloc. Partially fixes #520885. The right fix this time. 2008-05-07 14:39:45 +0000 Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc): Reverting previous commit, it had it all mixed up, was for a different patch (major automation screw-up). Sorry! 2008-05-07 13:48:28 +0000 Ole André Vadla Ravnås * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c (gst_directdraw_sink_buffer_alloc): Clear the flags on recycled buffers from buffer_alloc. Partially fixes #520885. 2008-02-12 12:22:48 +0000 Sebastian Dröge [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c: Properly chain up finalize functions. Fixes bug #515980. Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c: (gst_ddrawsurface_class_init), (gst_ddrawsurface_finalize), (gst_directdraw_sink_finalize): Properly chain up finalize functions. Fixes bug #515980. 2008-01-07 16:41:00 +0000 Tim-Philipp Müller [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c: FALSE is not a gpointer. Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_window_thread): FALSE is not a gpointer. 2008-01-05 21:20:08 +0000 Julien Moutte [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c: Make sure we create our internal window only when we need it. That will give a ch... Original commit message from CVS: 2008-01-05 Julien Moutte * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_set_window_id), (gst_directdraw_sink_set_caps), (gst_directdraw_sink_change_state), (gst_directdraw_sink_buffer_alloc), (gst_directdraw_sink_draw_borders), (gst_directdraw_sink_show_frame), (gst_directdraw_sink_setup_ddraw), (gst_directdraw_sink_window_thread), (gst_directdraw_sink_get_ddrawcaps), (gst_directdraw_sink_surface_create): Make sure we create our internal window only when we need it. That will give a chance to the application to get the prepare-xwindow-id bus message. Draw black borders when keeping aspect ratio. Handle the case where our rendering window disappears (closed or errors) like other sinks do. Various 80 columns fixes, improve state change order. That element could need some more love. 2007-09-22 08:12:57 +0000 Thomas Vander Stichele * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: [MOVED FROM GOOD] fix header and comments Original commit message from CVS: fix header and comments 2007-06-14 12:14:24 +0000 Jan Schmidt [MOVED FROM GOOD] Make sure to dist everything needed for win32 builds. Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: * sys/waveform/Makefile.am: Make sure to dist everything needed for win32 builds. 2007-06-08 16:31:15 +0000 Jan Schmidt [MOVED FROM GOOD] Rename the keep-aspect-ratio property to force-aspect-ratio to make it consistent with xvimagesink and ximagesink. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_class_init): Rename the keep-aspect-ratio property to force-aspect-ratio to make it consistent with xvimagesink and ximagesink. 2007-05-24 08:35:23 +0000 Vincent Torri [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.*: Fix more warnings when compiling with MingW (#439914). Original commit message from CVS: Patch by: Vincent Torri * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_buffer_alloc), (gst_directdraw_sink_show_frame), (gst_directdraw_sink_check_primary_surface), (gst_directdraw_sink_check_offscreen_surface), (EnumModesCallback2), (gst_directdraw_sink_get_ddrawcaps), (gst_directdraw_sink_surface_create): * sys/directdraw/gstdirectdrawsink.h: Fix more warnings when compiling with MingW (#439914). 2007-05-20 14:59:46 +0000 Tim-Philipp Müller [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.c: Bunch of small fixes: remove static function that doesn't exist; declare another ... Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c: (gst_ddrawsurface_finalize), (gst_directdraw_sink_buffer_alloc), (gst_directdraw_sink_get_ddrawcaps), (gst_directdraw_sink_surface_create): Bunch of small fixes: remove static function that doesn't exist; declare another one that does; printf format fix; use right macro when specifying debug category; remove a bunch of unused variables; #if 0 out an unused chunk of code (partially fixes #439914). 2007-05-15 17:22:58 +0000 Tim-Philipp Müller [MOVED FROM GOOD] Add DIRECTDRAW_CFLAGS and DIRECTSOUND_CFLAGS to Makefile.am; save and restore the various flags in the directdraw/dir... Original commit message from CVS: * configure.ac: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: Add DIRECTDRAW_CFLAGS and DIRECTSOUND_CFLAGS to Makefile.am; save and restore the various flags in the directdraw/directsound detection section. Apparently improves cross-compiling for win32 with mingw32 under some circumstances (#437539). 2007-04-29 13:56:18 +0000 Thomas Vander Stichele * sys/directdraw/gstdirectdrawsink.c: [MOVED FROM GOOD] 80 char police Original commit message from CVS: 80 char police 2007-03-11 22:23:04 +0000 Sébastien Moutte [MOVED FROM GOOD] sys/directdraw/gstdirectdrawsink.*: Handle display mode changes during playback. Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: Handle display mode changes during playback. 2007-02-27 12:02:03 +0000 Christian Schaller * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: [MOVED FROM GOOD] update copyright statements Original commit message from CVS: update copyright statements 2007-02-18 18:00:51 +0000 Sébastien Moutte [MOVED FROM GOOD] sys/directdraw/: Prepare the plugin to move to good: Original commit message from CVS: * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: Prepare the plugin to move to good: Remove unused/untested code (rendering to an extern surface, yuv format rendering).Use GST_(DEBUG/*)_OBJECT macros Rename all functions from gst_directdrawsink to gst_directdraw_sink. Add gtk doc section Fix a bug in gst_directdraw_sink_show_frame, memcpy line by line respecting destination surface stride. * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsink.c: * sys/directsound/gstdirectsoundsink.h: Prepare the plugin to move to good: Rename all functions from gst_directsoundsink to gst_directsound_sink. Add gtk doc section * win32/common/config.h.in: * win32/MANIFEST: Add config.h.in 2007-02-11 15:26:49 +0000 Sébastien Moutte [MOVED FROM GOOD] Makefile.am: Add win32 MANIFEST Original commit message from CVS: * Makefile.am: Add win32 MANIFEST * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: Clear unused code and add comments. Remove yuv from template caps, it only supports RGB actually. Implement XOverlay interface and remove window and fullscreen properties. Add debug logs. Test for blit capabilities to return only the current colorspace if the hardware can't blit for one colorspace to another. * sys/directsound/gstdirectsoundsink.c: Add some debugs. * win32/MANIFEST: Add VS7 project files and solution. * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libgstdirectdraw.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs6/libgstqtdemux.dsp: Update project files. 2007-01-03 19:54:33 +0000 Vincent Torri [MOVED FROM GOOD] Add directdrawsink to build and dist it, so it gets built when compiling with MingW on win32 and the required headers... Original commit message from CVS: Patch by: Vincent Torri * configure.ac: * sys/Makefile.am: * sys/directdraw/Makefile.am: Add directdrawsink to build and dist it, so it gets built when compiling with MingW on win32 and the required headers and libraries are available (fixes: #392313). * sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_center_rect), (gst_directdrawsink_show_frame), (gst_directdrawsink_setup_ddraw), (gst_directdrawsink_surface_create): Comment out some unused things and fix some printf format issues in order to avoid warnings when buildling with MingW (#392313). 2006-11-01 10:19:18 +0000 Sergey Scobich [MOVED FROM GOOD] sys/: Wait until the window is created before using it; guard unistd.h includes with HAVE_UNISTD_H. (#366523) Original commit message from CVS: Patch by: Sergey Scobich * sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_window_thread), (gst_directdrawsink_create_default_window): * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.c: Wait until the window is created before using it; guard unistd.h includes with HAVE_UNISTD_H. (#366523) * win32/vs8/libgstdirectdraw.vcproj: * win32/vs8/libgstdirectsound.vcproj: Update project files. 2006-07-24 21:43:06 +0000 Sébastien Moutte [MOVED FROM GOOD] sys/directsound/gstdirectsoundsink.*: Add an attenuation property that will directly attenuate the directsound buffer. Original commit message from CVS: * sys/directsound/gstdirectsoundsink.h: * sys/directsound/gstdirectsoundsink.c: Add an attenuation property that will directly attenuate the directsound buffer. Change the size of the directsound secondary buffer to a half second. Add more debug logs. Add a lock to protect dsound buffer write access. Fix a bad implementation of reset. * sys/directsound/gstdirectdrawsink.c: * sys/directsound/gstdirectdrawsink.h: Add a keep_aspect_ratio property. Do not use overlay if not supported. Add more debug logs. Remove overwrite of WM_ERASEBKGND message handling. It was not redrawing border when keep_aspect_ratio was enabled. * win32/common/config.h: update version waiting an auto-generated config.h 2006-06-12 10:53:26 +0000 Tim-Philipp Müller [MOVED FROM GOOD] ext/libmms/gstmms.c: Set caps on outgoing buffers. Original commit message from CVS: * ext/libmms/gstmms.c: (gst_mms_create): Set caps on outgoing buffers. * sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_init): Comment out unused global instance variable. 2006-06-01 22:00:26 +0000 Stefan Kost [MOVED FROM GOOD] Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.h: * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbenc.h: * ext/amrwb/gstamrwbparse.h: * ext/arts/gst_arts.h: * ext/artsd/gstartsdsink.h: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.h: * ext/audioresample/gstaudioresample.h: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.h: * ext/dirac/gstdiracdec.h: * ext/directfb/dfbvideosink.h: * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.h: * ext/dts/gstdtsdec.h: * ext/faac/gstfaac.h: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.h: * ext/ivorbis/vorbisenc.h: * ext/libfame/gstlibfame.h: * ext/nas/nassink.h: * ext/neon/gstneonhttpsrc.h: * ext/polyp/polypsink.h: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.h: * ext/shout/gstshout.h: * ext/snapshot/gstsnapshot.h: * ext/sndfile/gstsf.h: * ext/swfdec/gstswfdec.h: * ext/tarkin/gsttarkindec.h: * ext/tarkin/gsttarkinenc.h: * ext/theora/theoradec.h: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.h: * ext/xine/gstxine.h: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.h: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstcdxastrip.h: * gst/colorspace/gstcolorspace.h: * gst/festival/gstfestival.h: * gst/freeze/gstfreeze.h: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/modplug/gstmodplug.h: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg2sub/gstmpeg2subt.h: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/multifilesink/gstmultifilesink.h: * gst/overlay/gstoverlay.h: * gst/playondemand/gstplayondemand.h: * gst/qtdemux/qtdemux.h: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.h: * gst/smooth/gstsmooth.h: * gst/smoothwave/gstsmoothwave.h: * gst/spectrum/gstspectrum.h: * gst/speed/gstspeed.h: * gst/stereo/gststereo.h: * gst/switch/gstswitch.h: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.h: * gst/videodrop/gstvideodrop.h: * gst/xingheader/gstxingmux.h: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.h: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.h: * sys/qcam/gstqcamsrc.h: * sys/vcd/vcdsrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-04-25 21:56:38 +0000 Stefan Kost [MOVED FROM GOOD] Define GstElementDetails as const and also static (when defined as global) Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cdaudio/gstcdaudio.c: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init): * ext/faac/gstfaac.c: (gst_faac_base_init): * ext/faad/gstfaad.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbisfile.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: (gst_mms_base_init): * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init): * ext/nas/nassink.c: (gst_nassink_base_init): * ext/neon/gstneonhttpsrc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.c: * ext/swfdec/gstswfdec.c: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkinenc.c: * ext/theora/theoradec.c: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init): * gst/chart/gstchart.c: * gst/colorspace/gstcolorspace.c: * gst/deinterlace/gstdeinterlace.c: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init): * gst/festival/gstfestival.c: * gst/filter/gstbpwsinc.c: * gst/filter/gstiir.c: * gst/filter/gstlpwsinc.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: (gst_puzzle_base_init): * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg2sub/gstmpeg2subt.c: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/multifilesink/gstmultifilesink.c: * gst/overlay/gstoverlay.c: * gst/passthrough/gstpassthrough.c: * gst/playondemand/gstplayondemand.c: * gst/qtdemux/qtdemux.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/smooth/gstsmooth.c: * gst/smoothwave/gstsmoothwave.c: * gst/spectrum/gstspectrum.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/switch/gstswitch.c: * gst/tta/gstttadec.c: (gst_tta_dec_base_init): * gst/tta/gstttaparse.c: (gst_tta_parse_base_init): * gst/vbidec/gstvbidec.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/virtualdub/gstxsharpen.c: * gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init): * gst/y4m/gsty4mencode.c: * sys/cdrom/gstcdplayer.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsink.c: * sys/glsink/glimagesink.c: * sys/qcam/gstqcamsrc.c: * sys/v4l2/gstv4l2src.c: * sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init): * sys/ximagesrc/ximagesrc.c: Define GstElementDetails as const and also static (when defined as global) 2006-04-01 10:09:11 +0000 Thomas Vander Stichele * sys/directdraw/gstdirectdrawplugin.c: [MOVED FROM GOOD] rework build; add translations for v4l2 Original commit message from CVS: rework build; add translations for v4l2 2006-03-03 23:45:23 +0000 Sébastien Moutte [MOVED FROM GOOD] sys/: sinks are now using GST_RANK_PRIMARY to be used with autodectection Original commit message from CVS: * sys/directdraw: * sys/directsound: sinks are now using GST_RANK_PRIMARY to be used with autodectection * win32/vs6: project files updated to fix some bugs * win32/vs7: * win32/vs8: vs7 and vs8 project files added 2006-01-05 23:17:44 +0000 Sébastien Moutte * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: [MOVED FROM GOOD] added sys/directdraw added sys/directsound added win32/vs6/gst_plugins_bad.dsw added win32/vs6/libgstdirectsound.dsp ... Original commit message from CVS: 2006-01-05 Sebastien Moutte * added sys/directdraw * added sys/directsound * added win32/vs6/gst_plugins_bad.dsw * added win32/vs6/libgstdirectsound.dsp * added win32/vs6/libgstdirectdraw.dsp * added win32/common/config.h 2009-05-15 10:45:45 +0100 Jan Schmidt * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: Fix resetting of the sink in NULL Reset the fpsdisplaysink in NULL by removing the textoverlay if we created it. Fixes: #582633 2009-05-16 00:17:00 +0100 Jan Schmidt * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-y4menc.xml: * gst/y4m/Makefile.am: * gst/y4m/gsty4mencode.c: * gst/y4m/gsty4mencode.h: * gst/y4m/y4menc.vcproj: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/y4menc.c: Moved 'y4menc' from -bad to -good 2009-05-15 18:24:41 +0100 Tim-Philipp Müller * po/Makevars: po: add Makevars magic so we don't get line numbers in *.po files This avoids the number one reason for local modifications in *.po files and and makes things less annoying when working with git (or any other VCS for that matter). 2009-05-15 01:54:44 -0300 Thiago Santos * gst/qtmux/atoms.c: [qtmux] Fixes segfault when adding a blob as first tag. Moves tags data initialization to the function that actually appends the tags to the list. Fixes #582702 Also fixes some style caught by the pre-commit hook. 2009-05-14 21:20:47 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Use a RW lock to protect metadata and add all pads at once without a lock held This makes it possible, among other things, to do a query in the pad-added callback. Fixes bug #582656. 2009-05-14 10:34:08 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Fix the argument order in a debug statement Make the debug statement correctly show the 'old' and 'new' button coordinates, instead of the wrong way around. 2009-05-14 09:53:25 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: resindvd: Make segment updates less aggressive. When updating a pad, send the update to half a second behind the SCR, which avoids ever updating the start time for a pad to beyond the end of the cell. Also, remember the last actual new-segment start time for each pad, and use it when closing the segment. 2009-05-13 12:47:43 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Rework button highlight calculation slightly When the current button number is higher than the number of available buttons, switch to the highest numbered button rather than the lowest. Also, don't throw errors when we fail to retrieve some button info from libdvdnav, just reset the highlight. 2009-05-12 23:42:00 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Send commands-changed on button change and handle commands query Send the commands-changed navigation message when the set of available DVD menu button actions changes, and handle the commands navigation query so that (e.g.) Totem can know about the available navigation commands. 2009-05-14 08:42:24 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Fix a leak of the DVD title string 2009-05-14 10:55:38 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Push update frame, if any, when entering stills. When entering a still frame generates an updated buffer, make sure to push it out, otherwise we may not put a frame onscreen with a rendered button, causing raciness as to whether buttons get drawn or not when jumping back to the menu on some discs. 2009-05-13 10:29:36 +0100 Jan Schmidt * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: resindvd: Fix raciness in rsndvdbin when initially creating pads Protect pad exposure with a preroll lock to avoid situations where no-more-pads is fired more than once, or fired just before the last pad is actually added. 2009-05-13 17:55:46 +0200 Wim Taymans * gst/y4m/gsty4mencode.c: y4menc: change my email change my email to something more current See #580783 2009-05-13 17:54:47 +0200 Wim Taymans * gst/y4m/gsty4mencode.c: y4menc: don't strip timestamps Fixes #582483 2009-05-13 10:47:23 +0200 Sebastian Dröge * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-deinterlace2.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * gst/deinterlace/.gitignore: * gst/deinterlace/Makefile.am: * gst/deinterlace/deinterlace.vcproj: * gst/deinterlace/gstdeinterlace.c: * gst/deinterlace/gstdeinterlace.h: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: * gst/deinterlace2/tvtime/greedyhmacros.h: * gst/deinterlace2/tvtime/linear.c: * gst/deinterlace2/tvtime/linearblend.c: * gst/deinterlace2/tvtime/mmx.h: * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/scalerbob.c: * gst/deinterlace2/tvtime/sse.h: * gst/deinterlace2/tvtime/tomsmocomp.c: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: * gst/deinterlace2/tvtime/vfir.c: * gst/deinterlace2/tvtime/weave.c: * gst/deinterlace2/tvtime/weavebff.c: * gst/deinterlace2/tvtime/weavetff.c: * gst/deinterlace2/tvtime/x86-64_macros.inc: Moved 'deinterlace2' from -bad to -good And remove old deinterlace plugin as deinterlace2 will be called deinterlace in -good. 2009-05-12 21:50:12 +0200 Sebastian Dröge * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-flv.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * gst/flv/Makefile.am: * gst/flv/gstflvdemux.c: * gst/flv/gstflvdemux.h: * gst/flv/gstflvmux.c: * gst/flv/gstflvmux.h: * gst/flv/gstflvparse.c: * gst/flv/gstflvparse.h: Moved 'flv' from -bad to -good 2009-05-12 00:50:01 +0100 Jan Schmidt * ChangeLog: * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.11.2 pre-release 2009-05-11 17:50:41 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: resindvd: Modify the segment update logic Send segment updates to the audio and subpicture pads more frequently, but less often to the video pad, where timestamps appear less often. This helps with gap filling on some DVDs. 2009-05-11 16:09:56 +0100 Jan Schmidt * ext/resindvd/rsnaudiomunge.c: resindvd: Increase the amount of filler audio generated When creating a filler audio buffer in rsnaudiomunge, generate a bit more, as audio sinks don't seem to preroll otherwise. This needs a better algorithm in general, to intelligently fill the gap, rather than hard-coding a value. 2009-05-11 14:17:42 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Manage timed still sequences better Make timed still frames work better by extending the current segment when needed, and restarting the still sequence with the correct remaining duration when the wait it interrupted by activation of a highlight NAV packet. 2009-05-11 11:06:03 +0100 Jan Schmidt * ext/resindvd/rsnaudiomunge.c: resindvd: Change the audiomunge debug output. Make sure we always show information about the segment events passing through, even when pre-roll audio buffers aren't going to be needed. 2009-05-11 11:04:25 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Make the debugging output a bit clearer. Display more info about custom DVD events in the debug messages. 2009-05-08 17:42:12 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Always push a frame at the start of a still frame, and fix a leak. Make sure to push the frame for a still frame, with discont = true and timestamp=none, so that it gets displayed by the sink. Also, don't leak each rendered video frame during still menus. 2009-05-08 17:40:48 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu-render.c: dvdspu: Add a guard when we don't have any subpicture buffer to render 2009-05-08 16:29:20 +0100 Jan Schmidt * ext/resindvd/rsnaudiomunge.c: resindvd: Rename the audio munger debug category Rename a debug category: rsn_audiomunge -> rsnaudiomunge. 2009-05-08 16:27:31 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Ensure we send a title tag in the first play section. 2009-05-08 16:06:01 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Simplify some stuff. Remove an unnecessary LOG message. Skip attempting to schedule a nav block unless we're in PLAYING. Take a lock slightly later, when we actually need it. Remove a noisy LOG message. 2009-05-08 14:23:48 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Remove per-menu description from the TITLE tag The part number reported while in a menu doesn't reflect the selected menu, so it's pointless to use it to report which menu we're in (Audio, Angle etc). Just report "DVD Menu" in the title tag instead. 2009-05-08 14:20:32 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Send title info message when current angle is switched. Make sure we send an update title tag when the current angle or available angles changes. 2009-05-08 10:43:27 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Implement navigation command change message and query Send messages when the available DVD navigation commands changes, and handle navigation commands and angles queries. 2009-05-11 16:59:20 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: Protect bitrate estimation against bogus values. If the estimated bitrate is lower than 188 bytes, there's most likely something completely wrong with the two samples. If that happens, force recalculation. Use guint64 for observation PCR, I saw cases where it would overflow. 2009-05-11 16:58:58 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Only take PCR from the active stream for bitrate estimation. 2009-05-11 16:40:46 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: Change debugging levels for very frequent messages. This allows debugging with mpegtsdemux:4 while being able to track what's going on (and avoid taking up as much cpu for debugging as for the actual demuxing process). 2009-05-09 09:57:47 +0200 Edward Hervey * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: Revert indentation and comment header file. One shouldn't run gst-indent on .h files, in this case it was un-beautifying the indentation :) 2009-05-10 21:21:36 +0200 Mark Nauwelaerts * gst/qtmux/gstqtmuxmap.c: gppmux: Add MPEG-4 part 2 to supported formats. Fixes #581593. 2009-05-10 17:17:15 +0200 Sebastian Dröge * configure.ac: faad: Fix configure check for the FAAD version The previous version matched things like 297 for version 2.7, etc which could be added to the file by other headers. Fixes bug #582074. 2009-05-10 11:17:17 +0200 Marc-Andre Lureau * autogen.sh: Run libtoolize before aclocal This unbreaks the build in some cases. Fixes bug #582021 2009-05-10 10:40:36 +0200 Tristan Matthews * gst/mxf/mxfmux.c: mxfmux: Fix uninitialized variable compiler warning This will always be set to something but gcc didn't detect this. Fixes bug #582013. 2009-05-09 23:47:39 +0100 Christian Schaller * ext/x264/GstX264Enc.prs: Remove wrong stuff from preset file 2009-05-09 15:48:54 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: Write metadata items in reference order This ensures that the metadata items are always written in the same order and that first comes the preface, then the identification linked from the preface, ... Some demuxers can't handle files where the metadata items are in random order. 2009-05-09 15:48:41 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Fix EOS logic again 2009-05-09 15:48:01 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Don't unref NULL buffers if pushing a buffer after the first failed 2009-05-09 12:42:25 +0100 Christian Schaller * ext/x264/GstX264Enc.prs: Add a more representative example preset file for x264 2009-05-08 18:24:28 +0100 Zaheer Merali * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: Add initial naive seeking support and fix duration query. Sync from gst-fluendo-mpegdemux and have seeking/duration query improvements in. No support however for wrapped around pcrs etc. but a start nonetheless. Also fix indentation issues. 2009-05-08 16:38:26 +0100 Christian Schaller * gst-plugins-bad.spec.in: Comment out preset not in yet 2009-05-08 15:39:24 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: * gst/deinterlace2/gstdeinterlace2.h: deinterlace2: Add a disabled mode for passthrough operation Also allow to change the mode in PAUSED and PLAYING by updating the caps if necessary. 2009-05-07 17:53:42 +0100 Christian Schaller * ext/faac/gstfaac.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/x264/gstx264enc.c: * gst/flv/gstflvdemux.c: * gst/mxf/mxf.c: * gst/qtmux/gstqtmux.c: Add ranks to various muxers and encoders in -bad 2009-05-07 17:34:36 +0100 Christian Schaller * gst-plugins-bad.spec.in: Update spec file 2009-05-07 13:12:34 +0200 Rov Juvano * tests/examples/scaletempo/demo-player.c: scaletempo: Don't require gconfaudiosink in the demo Fixes bug #537700. 2009-05-06 21:48:30 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Don't open all VTS ifo at the start Load each VTS ifo the first time the disc enters that VTS, rather than scanning them all at the start. 2009-05-06 21:19:13 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Send a title tag when we change chapter/menu/angle Allow apps like Totem to display a nicer title that reflects the current position on the disc. 2009-05-05 13:18:20 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Don't send highlight-reset messages when not needed Fix a small bug that results in the SPU highlight being reset more often than is necessary - ie, clearing it when it's already cleared. 2009-05-05 13:14:47 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: send angles-changed messages when appropriate When the current angle changes, or the number of available angles changes, send an angles-changed message to let the app know. 2009-05-05 11:34:26 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Make the next/prev angle switching cycle at the ends When the current angle is 1 and prev_angle is requested, loop to the maximum angle and vice versa for next_angle 2009-05-05 16:54:39 +0200 Arnout Vandecappelle * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: don't leak the config data Clear the config data when going to READY or when disposed. Fixes #581427 2009-05-05 16:48:37 +0200 Wim Taymans * gst/rtpmanager/gstrtpssrcdemux.c: rtpssrcdemux: drop unexpected RTCP packets We usually only get SR packets in our chain function but if an invalid packet contains the SR packet after the RR packet, we must not fail but simply ignore the malformed packet. Fixes #581375 2009-05-04 22:09:05 +0100 Zaheer Abbas Merali * gst/mpegdemux/mpegtsparse.c: * gst/mpegdemux/mpegtsparse.h: mpegtsparse: Remember pids that are meant to be stream pids. Fixes #569781 2009-05-04 12:37:31 +0200 Sebastian Dröge * ext/celt/gstceltenc.c: celt: Implement preset interface 2009-05-04 12:36:17 +0200 Sebastian Dröge * ext/dirac/gstdiracenc.cc: dirac: Implement preset interface 2009-05-04 12:34:59 +0200 Sebastian Dröge * ext/jp2k/gstjasperenc.c: jp2kenc: Implement preset interface 2009-05-04 12:33:41 +0200 Sebastian Dröge * ext/mpeg2enc/gstmpeg2enc.cc: mpeg2enc: Implement Preset interface 2009-05-04 12:31:58 +0200 Sebastian Dröge * ext/xvid/gstxvidenc.c: xvid: Implement Preset interface 2009-05-04 12:30:26 +0200 Sebastian Dröge * ext/faac/gstfaac.c: faac: Implement preset interface 2009-05-03 17:42:44 +0100 Vincent Genieux * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: mpegtsparse: Ignore subtable extension when parsing PAT Fixes #569673. 2009-05-03 17:21:22 +0100 Vincent Genieux * gst/mpegdemux/mpegtsparse.c: * gst/mpegdemux/mpegtsparse.h: mpegtsparse: make safe changing the program-numbers property dynamically Fixes #569437. 2009-05-03 14:28:51 +0200 Mark Nauwelaerts * ext/libmms/gstmms.c: mms: extend BaseSrc query handling rather than overriding 2009-04-27 22:39:15 +0200 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: fix (regression in) newsegment handling (aacparse, amrparse, flacparse). Fixes #580133. 2009-05-02 12:23:03 +0100 Zaheer Merali * sys/dvb/gstdvbsrc.c: dvbsrc: fix pes filter pid resetting 2009-05-01 02:26:22 +0100 Tim-Philipp Müller * ext/dts/gstdtsdec.h: dtsdec: cosmetic fix to header structure to make gtk-doc happy 2009-05-01 14:25:40 +0100 Tim-Philipp Müller * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/debugutils/fpsdisplaysink.c: docs: make fpsdisplaysink show up in the docs 2009-05-01 02:21:10 +0100 Tim-Philipp Müller * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: move private struct into plugin struct and use Gst namespace 2009-05-01 01:59:56 +0100 Tim-Philipp Müller * docs/plugins/inspect/plugin-debugutilsbad.xml: * gst/debugutils/Makefile.am: * gst/debugutils/debugutilsbad.c: * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: rename plugin (not element) to debugutilsbad Makes it easier to add further utils here without creating yet another plugin. 2009-05-01 14:28:23 +0100 Zaheer Merali * sys/dvb/gstdvbsrc.c: dvbsrc: unset pid filters correctly 2009-04-30 14:43:36 -0300 Thiago Santos * gst/qtmux/gstqtmuxmap.c: qtmux: changes caps of src pads to video/quicktime, variant=something Take a look at bug #580005 for further info. 2009-04-30 17:29:35 +0100 Christian Schaller Merge branch 'master' of ssh://uraeus@git.freedesktop.org/git/gstreamer/gst-plugins-bad 2009-04-30 17:28:47 +0100 Christian Schaller * gst-plugins-bad.spec.in: Update for new presets file 2009-04-30 17:08:52 +0100 Tristan Matthews * gst/debugutils/fpsdisplaysink.c: fpsdisplaysink: init variable to NULL to avoid compiler warning Fixes #580901. 2009-04-30 14:20:16 +0200 Wim Taymans * gst/dvdspu/gstdvdspu-render.c: * gst/dvdspu/gstdvdspu.h: dvdspu: do some basic clipping Add some basic clipping of the subtitle region when the subtitle is bigger than the image we should put it on. 2009-04-30 14:18:58 +0200 Wim Taymans * gst/dvdspu/gstdvdspu.c: dvdspu: don't EOS when the subtitle got EOS Don't forward the EOS on the subtitle pad as the video might still be running. 2009-04-30 13:45:30 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: fpsdisplay: code cleanup and plug overlay as needed Pluggin the text-ovelay causes some slowdowns and might need a colorspace converter. We now only check the text-overlay property whne goint to ready and plug or unplug the text-overlay at that time. If the property changes during playing, its not switched immediately. 2009-04-30 00:06:36 +0300 Stefan Kost * ext/x264/GstX264Enc.prs: * ext/x264/Makefile.am: * ext/x264/gstx264enc.c: x264enc: add preset support Add preset iface and a (dummy) preset file as a starting point. 2009-04-26 21:26:00 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnaudiodec.c: * ext/resindvd/rsnaudiomunge.c: resindvd: Convert some g_print to GST_LOG_OBJECT and friends, remove some others Trim down the g_print verbosity. 2009-04-26 21:29:27 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Add DVDFASTSTART env var to making some testing easier 2009-04-24 14:08:55 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Remove redundant modulo operation in the demuxer 2009-04-24 14:07:30 +0100 Jan Schmidt * ext/resindvd/gstmpegdemux.c: * ext/resindvd/resindvdsrc.c: resindvd: Map audio and subpicture logical streams to physical. The logical audio and subpicture stream number doesn't always correspond with the physical substream it is coming from. When configuring the demuxer pads, use the mapping table provided in each PGC to get the layout and ensure the demuxer creates the correct pads. 2009-04-29 18:52:20 +0100 Tristan Matthews * gst/flv/gstflvmux.c: flvmux: init variable to NULL to fix compiler warning Fixes #580786. 2009-04-29 16:57:36 +0200 Mark Nauwelaerts * ext/x264/gstx264enc.c: x264enc: add some documentation on profile 2009-04-29 13:56:07 +0200 Sebastian Dröge * gst/flv/gstflvmux.c: * gst/flv/gstflvparse.c: flv: Set/require the framed/parsed fields of the audio/mpeg caps to TRUE 2009-04-29 13:16:25 +0200 Sebastian Dröge * gst/flv/gstflvmux.c: flv: Always write at least the minimal tags and write the PAR as tags 2009-04-29 13:03:46 +0200 Sebastian Dröge * gst/flv/gstflvmux.c: * gst/flv/gstflvmux.h: flv: Add support for muxing some tags 2009-04-29 13:03:27 +0200 Sebastian Dröge * gst/flv/gstflvparse.c: flv: Add support for title tag 2009-04-29 09:40:41 +0200 Sebastian Dröge * gst/flv/gstflvparse.c: flv: Fix parsing of tags and add new mappings We shouldn't register a new GstTag for every unknown tag we find as this might lead to conflicts and also those tags are essentially unknown. Add mappings for some known tags and also convert string dates to GDate, as found in many FLV files. 2009-04-28 16:10:21 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Reject wrong caps 2009-04-28 16:03:19 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Fix leak Fixed a leak discovered by Laurent Glayal 2009-04-28 15:58:41 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Fix leak Fixed a leak discovered by Laurent Glayal 2009-04-27 11:09:08 +0200 Olivier Crete * gst/rtpmanager/rtpsource.c: rtpsouce: make WARNING into LOG Since neither rtpmanager nor any of the payloaders properly implement pad allocation, there is no way for the rtpmanager to inform downstream elements of the new SSRC if there is an SSRC collision. So the warning is emitted all the time and it is confusing. Fixes #580144 2009-04-27 11:06:01 +0200 Olivier Crete * gst/rtpmanager/rtpsession.c: rtpsession: notify when SSRC changes Emit a g_object_notify when the SSRc changes because of a collision. Fixes #580144 2009-04-27 10:04:51 +0100 Christian Schaller * gst-plugins-bad.spec.in: * gst/dccp/Makefile.am: Add new plugin to spec file and add missing header to gst/dccp/Makefile.am 2009-04-25 00:44:15 +0100 Tim-Philipp Müller * tests/check/elements/.gitignore: * tests/check/pipelines/.gitignore: tests: make git ignore new unit tests binaries 2009-04-25 00:42:44 +0100 Tim-Philipp Müller * win32/MANIFEST: win32: dist libgstdshow.def by adding it to win32/MANIFEST Fixes #578563. 2009-04-24 18:53:36 -0300 Thiago Santos * gst/qtmux/gstqtmuxmap.c: mp4mux: Changes src caps to application/x-iso-mp4 Fixes #580005 2009-04-24 16:01:44 +0100 Jan Schmidt * win32/common/config.h: win32: Commit the win32 config with bumped version number. Should have committed this when I unfroze the build last time, sorry. 2009-04-24 14:51:00 +0100 Jan Schmidt * tests/check/Makefile.am: check: exclude rsndvdbin from the states test 2009-04-24 15:42:27 +0300 Stefan Kost * configure.ac: soundtouch: fix configure to use proper shell syntax. fixes #580091 2009-04-23 17:33:25 +0100 Jan Schmidt * configure.ac: soundtouch: Fix compilation on newer libSoundTouch Newer libsoundtouch requires that we include an extra header that wasn't previously required, so define HAVE_SOUNDTOUCH_1_4 for newer builds so that it gets included. 2009-04-20 11:38:01 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: fpsdisplay: more cleanups Use normal gst-defines in PLUGIN_DEFINE. Shorten _start/stop method names. More ideas. Move debug category-init down to plugin-init. 2009-04-20 09:51:50 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: fpsdisplay: use a nicer font family 2009-04-20 10:24:37 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: fpsdisplay: various cleanups, docs and comments Remove unused base_init. Add basic doc blob. Reuse query object. Rename variables for clarity. Add comments and ToDos. 2009-04-20 09:49:32 +0300 Stefan Kost * gst/debugutils/fpsdisplaysink.c: fpsdisplay: remove iface proxy When we get bus messages for setting the xid, we have the real sink element instance as message_src. No need to proxy the xoverlay iface therefore (autovideosink does not do it either). Also we don't need to rewrite the message src of all messages from that sink. 2009-04-23 11:04:46 +0100 Jan Schmidt * gst/selector/gstinputselector.c: input-selector: Forward segment events for the active pad immediately. When a segment event is received on the active pad, forward it downstream immediately instead of deferring it until the next data buffer arrives. This fixes problems with segment updates never being sent downstream, like those needed for sparse streams, or for closing previously opened segments. This fixes playback of DVD menus with a still video frame and an audio track, for example. Fixes: #577843 2009-04-22 18:01:07 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Fix warning 2009-04-20 20:00:15 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Set different caps depending on the input 2009-04-22 16:25:07 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Only free pad private when pad is disposed 2009-04-22 19:52:05 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/flv/gstflvdemux.c: * gst/flv/gstflvdemux.h: * gst/flv/gstflvmux.c: * gst/flv/gstflvmux.h: flv: Add documentation to flvmux and flvdemux Partially fixes bug #573737. 2009-04-22 19:45:07 +0200 Sebastian Dröge * gst/mxf/mxfmux.h: mxf: Mark most fields of the instance struct as private 2009-04-22 19:43:22 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/deinterlace2/gstdeinterlace2.c: * gst/deinterlace2/gstdeinterlace2.h: deinterlace2: Add documentation and integrate into the build system 2009-04-22 19:24:43 +0200 Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-assrender.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-deinterlace2.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flv.xml: * docs/plugins/inspect/plugin-fpsdisplaysink.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst/mxf/mxfmux.c: mxf: Add documentation to mxfmux and update the docs 2009-03-19 15:37:17 -0700 LRN * ext/modplug/gstmodplug.cc: modplug: Use correct header file modplug's sndfile.h conflicts with libsndfile's sndfile.h, so we'll access it directly using modplug/sndfile.h. Fixes #573849 Signed-off-by: David Schleef 2009-03-19 15:29:04 -0700 LRN * m4/gst-sdl.m4: sdl: Use SDL static-libs for conftest Fixes: #573847. This fixes building with SDL on Windows. Signed-off-by: David Schleef 2009-03-19 14:55:26 -0700 LRN * ext/mpeg2enc/gstmpeg2encoptions.cc: mpeg2enc: Get number of processors on win32 Fixes #573848. Signed-off-by: David Schleef 2009-03-19 14:49:13 -0700 David Schleef * configure.ac: soundtouch: Add pkgconfig check for soundtouch-1.4 Fixes #573846. 2009-02-26 14:18:54 -0800 David Schleef * gst/rawparse/gstrawparse.c: * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: * gst/rawparse/gstvideoparse.h: Add interlaced support to videoparse Add a virtual method in rawparse to set buffer flags. This doesn't use API from unreleased -base, since it defines GST_VIDEO_BUFFER_TFF if it's not defined yet. 2009-04-21 22:13:12 +0100 Jan Schmidt * common: Automatic update of common submodule From b3941ea to 6ab11d1 2009-04-21 13:27:29 -0400 Olivier Crête Merge branch 'rtpmux-fixes' 2009-04-21 16:48:39 +0200 Edward Hervey * ext/libmms/gstmms.c: mmssrc: If the connection fails, emit a redirection msg to the rtsp equivalent. This should help fix the issue with Windows Media Server using rtsp... but still declaring the stream with mms:// 2009-04-21 16:08:55 +0200 Edward Hervey * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Only error out at EOS push failure if we don't have any streams. This should remove the bogus error messages while still keeping the original intent of this, which is to inform the pipeline/application/user that we could not find any valid streams. There are many reasons why pushing an event can fail, and not all of them are because there's no link downstream (it could be because it was blocked, or flushing). 2009-04-10 19:24:26 +0200 Zaheer Abbas Merali * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: add hack specific for itvhd itvhd masks its h264 video stream as a private stream making it harder for other set top boxes to decode. this checks for specific program number, video pid and stream type combination before declaring it as h264. 2009-04-10 19:06:55 +0200 Zaheer Abbas Merali * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: detect AC3 streams in PMT table add 'has-ac3' boolean to pmt bus message 2009-04-10 01:16:30 +0200 Zaheer Abbas Merali * gst/mpegdemux/gstmpegtsdemux.c: itv hd hack 2009-04-10 01:11:01 +0200 Zaheer Abbas Merali * gst/mpegdemux/gstmpegtsdemux.c: hack for itvhd sid to detect mpeg1 as h264 2009-04-20 18:41:39 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Remove useless caps mangling 2009-04-20 18:36:42 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: rtpmux: Rename variable for more clarity 2009-04-20 17:43:39 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: rtpmux: Use GST_BOILERPLATE 2009-04-20 17:42:40 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: * gst/rtpmux/gstrtpmux.c: rtpmux: Do the includes locally 2009-04-20 16:34:30 +0200 Andy Wingo * sys/osxvideo/osxvideosrc.c: patch over logic errors in osxvideosrc apple's compiler carps, with reason, about some constructs in osxvideosrc.c fix them. also it seems that for some reason this required a gst-indent run. whee 2009-04-20 13:09:46 +0200 Andy Wingo add osxvideosrc * configure.ac: * sys/Makefile.am: * sys/osxvideo/Makefile.am: Autoconfiscation. * sys/osxvideo/osxvideoplugin.m: * sys/osxvideo/osxvideosrc.h: * sys/osxvideo/osxvideosrc.c: Add osxvideosrc. Should fix #153684. Patch-by: Ole André Vadla Ravnås Patch-by: Ali Sabil Patch-by: Barracuda Networks 2009-04-19 17:18:35 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: deinterlace2: Make it possible to select interlacing autodetection or to enfore deinterlacing For this add a "mode" property that defaults to "interlaced" for now as most decoders/demuxers don't properly set the "interlaced" field on the caps yet. If this property is set to "auto" the element will work in passthrough mode unless the caps contain the "interlaced" field. 2009-04-18 23:42:57 +0100 Zaheer Merali * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: fix leak of GST_TYPE_LIST gvalue 2009-04-18 13:09:23 +0100 Zaheer Merali * gst/mpegdemux/mpegtsparse.c: mpegtsparse: fix leak in src_pad_query 2009-04-17 16:16:29 +0200 Wim Taymans * gst/rtpmanager/gstrtpsession.c: rtpsession: join the RTCP thread Avoid a case where a joinable thread would be left unjoined, which leaked the thread structure. Fixes #577318. 2009-04-17 15:39:59 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: deinterlace2: Use GST_(DEBUG|WARNING|ERROR)_OBJECT instead of the non-OBJECT ones 2009-04-17 15:39:36 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: deinterlace2: Reset history if DISCONT is set on the incoming buffer 2009-04-17 15:39:10 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: deinterlace2: Fix timestamps for buffers with RFF flag set 2009-04-16 22:14:15 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxf: Properly handle the new interlaced support from libgstvideo for (de)muxing 2009-04-16 17:41:37 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: * gst/deinterlace2/tvtime/greedyh.c: * gst/deinterlace2/tvtime/scalerbob.c: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/weave.c: * gst/deinterlace2/tvtime/weavebff.c: * gst/deinterlace2/tvtime/weavetff.c: deinterlace2: Rename line_length to row_stride and remove output_stride 2009-04-16 15:52:39 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: deinterlace2: Implement support for RFF and ONEFIELD buffer flags 2009-04-16 18:36:13 +0300 Stefan Kost * configure.ac: * gst/debugutils/Makefile.am: * gst/debugutils/fpsdisplaysink.c: * gst/debugutils/fpsdisplaysink.h: fpsdisplaysink: add a initial port of a sink with fps display This now works with a event probe. Needs some extra work. 2009-03-09 18:22:28 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: clean up and fix assertion fail when setting zoom in NULL state 2009-03-09 18:31:07 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: fix format matching when detecting allowed frame rate 2009-03-09 18:25:48 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: don't lose pending state when changing resolution 2009-02-27 17:12:38 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin-marshal.list: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * tests/check/elements/camerabin.c: camerabin: change img-done signal parameter from GString* to const gchar* Don't allow setting filename via img-done signal parameter but force app use filename property. Don't stop capture when setting filename property. Update check unit test based on the change. 2009-04-15 13:23:01 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: rtpmux: Add GST_DEBUG_FUNCPTRs 2009-04-15 13:15:55 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: Release locked pad on release_pad Release the special pad if the pad is removed from the muxer. 2009-04-15 13:09:27 -0400 Laurent Glayal * gst/rtpmux/gstrtpdtmfmux.c: rtpdtmfmux: Release special on pad dispose Fixes #577690 2009-04-15 18:14:48 +0200 Wim Taymans * gst/rtpmanager/gstrtpjitterbuffer.c: jitterbuffer: prevent overflow in EOS estimation Use a guint64 instead of a guint to hold a 64bit value to prevent completely bogues EOS estimation values due to overflows. 2009-04-15 17:44:17 +0200 Wim Taymans * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpbin.h: rtpbin: we should not provide a clock There is no need to provide a clock. 2009-04-15 17:28:56 +0200 Wim Taymans * gst/rtpmanager/gstrtpjitterbuffer.c: jitterbuffer: more estimated EOS fixes Do more accurate EOS estimate and guard against backward timestamps. 2009-04-15 17:25:02 +0200 Wim Taymans * gst/rtpmanager/gstrtpjitterbuffer.c: jitterbuffer: release lock before pushing EOS Make sure we release the jitterbuffer lock before we start pushing out data because else we might deadlock. 2009-04-15 15:46:44 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: * gst/deinterlace2/tvtime/greedyh.c: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: deinterlace2: Move output buffer from the instance struct to a function parameter 2009-04-15 15:33:17 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: * gst/deinterlace2/gstdeinterlace2.h: deinterlace2: Add initial support for automatic detection of the field order 2009-04-15 14:47:49 +0200 Sebastian Dröge * gst/deinterlace2/gstdeinterlace2.c: deinterlace2: Add support for YVYU colorspace This is the same as YUY2 with just Cr and Cb swapped. As we don't make a difference between them when deinterlacing this works. 2009-04-13 13:32:34 +0200 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Small cleanup 2009-04-10 18:00:06 +0100 Tim-Philipp Müller * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdec: fix compilation with the debugging system disabled One GST_DEBUG_CATEGORY_INIT should be enough anyway. Fixes #578562 (spotted by David Hoyt). 2009-04-09 23:53:39 +0200 Janin Kolenc * ext/x264/gstx264enc.c: * ext/x264/gstx264enc.h: x264enc: add force keyframe event handling Use the GstForceKeyUnit event to force a keyframe. Fixes #578112. 2009-04-08 11:52:46 -0700 Michael Smith * configure.ac: * sys/acmenc/Makefile.am: * sys/acmmp3dec/Makefile.am: acmenc, acmmp3dec, sdp: link to all requires libraries on win32. Add winsock for windows (for sdp). Link to all the plugins-base libs we indirectly use for acmmenc and acmmp3dec. 2009-04-07 15:50:37 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/pipelines/mxf.c: mxf: Add unit tests for checking if mxfmux ! mxfdemux pipelines are working without errors 2009-04-07 15:49:00 +0200 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't use invalid buffer offsets, instead assume offset == 0 2009-04-07 15:45:50 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxf: Fix comparison 2009-04-07 15:19:29 +0200 Sebastian Dröge * gst/mxf/mxfmetadata.c: * gst/mxf/mxful.c: * gst/mxf/mxful.h: Use UL database for all metadata ULs 2009-04-07 04:53:02 +0300 René Stadler * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: Fix slightly broken buffer-in-segment check (aacparse, amrparse, flacparse) 2009-04-05 03:50:19 +0300 René Stadler * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: baseparse: Fix push mode seeking (aacparse, amrparse) Sending the flush-start event forward before taking the stream lock actually works, in contrast to deadlocking in downstream preroll_wait (hunk 1). After that we get the chain function being stuck in a busy loop. This is fixed by updating the minimum frame size inside the synchronization loop because the subclass asks for more data in this way (hunk 2). Finally, this leads to a very probable crash because the subclass can find a valid frame with a size greater than the currently available data in the adapter. This makes the subsequent gst_adapter_take_buffer call return NULL, which is not expected (hunk 3). 2009-04-04 21:19:11 +0300 Felipe Contreras * common: Automatic update of common submodule From d0ea89e to b3941ea 2009-04-04 17:51:34 +0100 Tim-Philipp Müller * ext/bz2/Makefile.am: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: bz2: fix some refcount mistakes and do some cleaning up No need to unref buffers if pad_push returns something non-FLOW_OK. In fact, this will cause assertions or crashes. However, we do need to unref the input buffer whenever we don't pass it downstream. Also, a non-OK flow return is not an error, so don't post error messages on the bus - the pipeline may just be shutting down. Miscellaneous other clean-ups and crack removal. Plenty of work left for those who feel like it. 2009-04-04 14:54:25 +0200 Edward Hervey * common: Automatic update of common submodule From f8b3d91 to d0ea89e 2009-04-03 23:10:28 +0100 Tim-Philipp Müller * configure.ac: configure.ac: fix dvdnav version check Fixes #577864. This time for real. 2009-04-03 17:55:31 +0100 Tim-Philipp Müller * configure.ac: * ext/resindvd/resindvdsrc.h: resindvd: require libdvdnav >= 4.1.2 for dvdnav_get_current_time() Fixes #577864. 2009-04-03 10:29:53 +0100 Jan Schmidt * configure.ac: misc: Bump plugins-base requirement to 0.10.22.1 2009-04-01 17:41:40 +0100 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Send both the logical and physical substream ID in the stream change. When sending the stream change message(s) to the demuxer, also include the logical stream id along with the physical ID, so that the demuxer can remap logical->physical MPEG stream ID. 2009-04-01 02:23:20 +0100 Jan Schmidt * ext/resindvd/Makefile.am: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Use new GstNavigation functionality. Handle the new DVD commands, so that we can handle commands from a player to change angle, jump to menus etc. Use the new GstNavigation event parsing functions, instead of hand-rolled stuff. Send GstNavigation notification messages when the mouse enters a button or leaves it, so UI can turn the mouse cursor to a hand icon. 2009-03-30 01:07:49 +0100 Jan Schmidt * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: resindvd: Switch to using a hard-coded mpeg2dec, and change pad blocking a bit. Change the pad blocking behaviour during startup, and use a hard-coded mpeg2dec (for the moment), in order to make things work with playbin2. 2009-03-25 12:31:10 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Add newline to debug g_print statement 2009-03-25 02:20:12 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Make highlights work when jumping into menus Make the highlights re-appear correctly when jumping back into menus by making sure to set the flushing_seek flag for user-action initiated seeks. Fiddle some debug related to tracking down the issue. 2009-03-25 01:21:28 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Support multiangle titles. Add a workaround for an apparent libdvdnav bug where it loses nav packets during multiangle titles, and add some keypress bindings to switch the angle. 2009-03-18 09:35:12 +0000 Jan Schmidt * ext/resindvd/resindvdbin.c: resindvd: Add back in support for using hardcoded a52dec 2009-03-16 20:31:58 +0000 Jan Schmidt * ext/resindvd/gstmpegdemux.c: resindvd: Add some debug when creating the output pads in the demuxer 2009-03-10 10:39:22 +0000 Jan Schmidt * ext/resindvd/rsnaudiodec.c: resindvd: More hacking on the audio decoder. 2009-03-05 00:04:24 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Trim back the g_print debug - convert to GST_DEBUG and GST_LOG 2009-03-04 16:16:57 +0000 Jan Schmidt * ext/resindvd/resindvdbin.c: * ext/resindvd/rsnaudiodec.c: * ext/resindvd/rsnaudiodec.h: resindvd: Extend the Resin audio decoder element, and switch rsndvdbin to use it 2009-02-27 10:18:14 +0000 Jan Schmidt * ext/resindvd/Makefile.am: * ext/resindvd/rsnaudiodec.c: * ext/resindvd/rsnaudiodec.h: resindvd: First part of the re-plugging audio decoder 2009-02-27 09:42:35 +0000 Jan Schmidt * ext/resindvd/resindvdbin.c: resindvd: remove unused code path from the bin 2009-02-26 00:29:26 +0000 Jan Schmidt * ext/resindvd/resindvdbin.h: resindvd: Indent some things 2009-02-26 00:27:54 +0000 Jan Schmidt * ext/resindvd/rsnaudiomunge.c: * ext/resindvd/rsnwrappedbuffer.c: resindvd: Switch GST_BOILERPLATE to G_DEFINE_TYPE for no real reason. 2009-03-24 01:02:28 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: resindvd: Add faststart, and work around some multi-angle issues Add a 'fast-start' property to the rsndvdsrc element, that attempts to jump directly to the DVD menu when starting. Doesn't work correctly on all titles yet. Add workarounds for issues with multiple angles in libdvdnav: Use a heuristic to avoid detecting discontinuities during multiple-angle titles, it seems caused by libdvdnav losing some NAV packets in multiangle titles. Fix seeking in multi-angle titles by aligning our sector calculation logic with libdvdnav's. Also, use libdvdnav's dvdnav_get_current_time() method to determine the logical position of the current cell when it changes, as the cell_start value in the cell_change event provides a number that doesn't compensate for angle cell blocks. 2009-03-21 19:04:05 +0000 Jan Schmidt * ext/resindvd/resindvdsrc.c: resindvd: Small debug output change in the source element 2009-04-01 02:25:42 +0100 Jan Schmidt * gst/dvdspu/gstdvdspu.c: dvdspu: Add some debug Add a little bit of extra debug. Wrap a hardcoded #if 0 into a define instead. 2009-04-02 13:05:11 +0200 Sebastian Dröge * ext/jp2k/gstjasperenc.c: jp2enc: Unref peer caps after usage to fix a memory leak 2009-04-02 12:46:13 +0200 Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/mxfmux.c: mxfmux: Add unit tests 2009-04-01 15:45:22 +0100 Tim-Philipp Müller * gst/legacyresample/gstlegacyresample.c: legacyresample: fix negotiation so that upstream can actually fixate to downstream's rate If one side has a preference for a particular sample rate or set of sample rates, we should honour this in the caps we advertise and transform to and from, so that elements actually know about the other side's sample rate preference and can negotiate to it if supported. Also add unit test for this. 2009-03-31 16:07:46 +0200 Mark Nauwelaerts * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: baseparse: Delay newsegment as long as possible. If newsegment is sent (too) early, caps may not yet be fixed/set, and downstream may not have been linked. 2009-03-30 21:57:12 +0200 Mark Nauwelaerts * ext/mpeg2enc/gstmpeg2encoptions.cc: mpeg2enc: fix bitrate property settings Align bitrate property interpretation with usual mpeg2enc behaviour. Fixes #575736. 2009-03-27 21:39:05 +0000 Alan Falloon * configure.ac: configure.ac: make --disable-external work again 2009-03-27 19:37:47 +0000 Tim-Philipp Müller * ext/jp2k/gstjasperdec.c: * ext/jp2k/gstjasperdec.h: jp2kdec: implement basic QoS Don't try to decode frames that are going to be late anyway. 2009-03-27 17:44:57 +0100 Wim Taymans * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpjitterbuffer.h: rtpbin: add on_npt_stop signal Add the on_npt_stop signal to rtpbin and rtpjitterbuffer to notify the application that the NPT stop position has been reached. 2009-03-27 11:20:02 +0100 Wim Taymans * gst/selector/gstoutputselector.c: outputselector: reset state when going to READY Reset the last-buffer, the pending pad and the segment when going to the READY state. Fixes #576712. 2009-03-25 21:24:44 +0100 Mark Nauwelaerts * gst/qtmux/gstqtmux.c: qtmux: fix reusing element State change to READY and then back to PAUSED should still provide the proper structures as are otherwise freshly available following a request_new_pad. Pointed out by Thiago Santos. 2009-03-26 20:28:30 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: * gst/mxf/mxftypes.c: mxf: Fix compilation and compiler errors with GLib < 2.16.0 2009-03-26 14:26:34 +0100 Sebastian Dröge * gst/mxf/mxftypes.c: mxf: Fix "cast to pointer type of different size" compiler warning 2009-03-26 13:24:49 +0100 Sebastian Dröge * gst/mxf/mxftypes.c: mxf: Rename forgotten function to fix unresolved symbols error 2009-03-26 13:20:18 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfvc3.c: mxf: Use mxf_u{l,uid}_is_equal() and friends instead of memcmp() 2009-03-26 13:11:07 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdms1.h: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfmux.c: * gst/mxf/mxftypes.c: * gst/mxf/mxftypes.h: mxf: Differentiate between UL and UUID 2009-03-26 12:46:22 +0100 Sebastian Dröge * gst/mxf/Makefile.am: * gst/mxf/mxf.c: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfalaw.c: * gst/mxf/mxfalaw.h: * gst/mxf/mxfd10.c: * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfdv-dif.h: * gst/mxf/mxfessence.c: * gst/mxf/mxfessence.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfmpeg.h: * gst/mxf/mxfmux.h: * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.c: * gst/mxf/mxftypes.h: * gst/mxf/mxful.c: * gst/mxf/mxful.h: * gst/mxf/mxfup.c: * gst/mxf/mxfup.h: * gst/mxf/mxfvc3.c: * gst/mxf/mxfvc3.h: * gst/mxf/mxfwrite.c: mxf: Source files and #include cleanup 2009-03-26 12:10:05 +0100 Sebastian Dröge * configure.ac: * gst/xdgmime/Makefile.am: * gst/xdgmime/gstxdgmime.c: xdgmime: Use GIOs g_content_type_guess() if possible 2009-03-26 11:51:43 +0100 Sebastian Dröge * gst/mxf/mxfwrite.c: mxf: Use the UL database for some more ULs 2009-03-26 11:42:45 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxf: Remove some GLib < 2.14 compatibility stuff 2009-03-26 11:37:28 +0100 Руслан Ижбулатов * configure.ac: * sys/acmenc/Makefile.am: * sys/acmenc/acmenc.c: * sys/acmmp3dec/Makefile.am: * sys/acmmp3dec/acmmp3dec.c: acm: Port to MinGW Fixes bug #573595. 2009-03-26 11:33:50 +0100 Руслан Ижбулатов * configure.ac: * gst/xdgmime/Makefile.am: xdgmime: Link with winsock library to fix build with MinGW Partially fixes bug #573595. 2009-03-26 11:32:08 +0100 Руслан Ижбулатов * configure.ac: * gst/dccp/Makefile.am: * gst/dccp/gstdccp.c: * gst/dccp/gstdccp.h: * gst/dccp/gstdccp_common.h: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsink.h: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpclientsrc.h: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversink.h: * gst/dccp/gstdccpserversrc.c: * gst/dccp/gstdccpserversrc.h: dccp: Port DCCP plugin to MinGW Partially fixes bug #573595. 2009-03-26 11:23:30 +0100 Руслан Ижбулатов * configure.ac: dccp: Disable the dccp plugin if no pthread support is available Partially fixes bug #573595. 2009-03-26 08:13:10 +0100 Sebastian Dröge Merge branch 'mxfmux' 2009-03-26 08:12:02 +0100 Sebastian Dröge * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfvc3.c: mxfmux: Cleanup 2009-03-26 08:11:20 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: Fix handling of buffers with more than one edit unit and EOS handling 2009-03-25 23:04:13 +0200 Stefan Kost * ext/ladspa/gstsignalprocessor.c: * ext/ladspa/gstsignalprocessor.h: ladspa: comment signalprocessor class more and do minor code cleanups 2009-03-25 12:40:35 +0100 Sebastian Dröge * configure.ac: Require core >= 0.10.22.1 for %u pad template support 2009-03-24 15:23:03 +0100 Wim Taymans * gst/selector/gstinputselector.c: selector: merge the tags Merge the tags received on the input-selector sinkpads instead of only keeping the last one we saw. 2009-03-23 19:33:31 +0000 Jan Schmidt * NEWS: Fix version number in the NEWS file 2009-03-19 01:17:25 +0200 René Stadler * gst/aacparse/gstaacparse.c: aacparse: Fix busyloop when seeking. Fixes #575388 The problem is that after a discont, set_min_frame_size(1024) is called when detect_stream returns FALSE. However, detect_stream calls check_adts_frame which sets the frame size on its own to something larger than 1024. This is the same situation as in the beginning, so the base class ends up calling check_valid_frame in an endless loop. 2009-03-19 00:32:40 +0200 René Stadler * gst/aacparse/gstaacparse.c: aacparse: Refactor check_valid_frame to expose broken code Just moving code around and removing an unhelpful/misleading comment. 2009-03-23 11:17:39 +0100 Wim Taymans * gst/qtmux/gstqtmux.c: qtmux: fix includes for lseek -- 2009-03-20 14:20:16 +0100 LRN * gst/qtmux/gstqtmux.c: win32: fix seeking in large files Use _lseeki64() on Windows to seek in large files. Fixes #576021. 2009-03-16 11:21:02 +0100 Wim Taymans * ext/jack/gstjack.c: * ext/jack/gstjack.h: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: jack: Add new connection mode Add a new connection mode to jacksrc and jacksink. In this new auto-force connection mode jack will create as many ports as requested/needed in the pipeline and will then connect as many physical ports as possible, possibly leaving some ports unconnected. Also get rid of some leftover g_print. Fixes #575284. 2009-03-23 15:06:11 +0100 Sebastian Dröge * gst/mxf/mxfparse.c: mxf: Move some static const variables into functions 2009-03-13 19:42:18 +0100 Alessandro Decina * configure.ac: * ext/celt/gstceltenc.c: celtenc: build with celt 0.5. 2009-03-22 20:14:25 +0000 Jan Schmidt * configure.ac: back to development -> 0.10.11.1 2009-03-20 15:55:19 +0200 Stefan Kost * tests/check/Makefile.am: tests: reenable metadata test 2009-03-20 15:33:31 +0200 Stefan Kost * tests/check/Makefile.am: metadata: reenable test 2009-03-20 15:18:05 +0200 Stefan Kost * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.h: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataxmp.h: metdata: more logging and code cleanups Sprinkle more debug log statements into the code. Move some repeaded string constant into header files and use sizeof instead of manually counted bytes. Add comments. 2009-03-20 15:14:07 +0200 Stefan Kost * ext/metadata/metadatamuxjpeg.c: metadata: fix muxing jfifless jpeg. Fixes #574401 Don't error out when to be muxed jpeg has no jfif, as we can easily add it. 2009-03-20 15:10:22 +0200 Stefan Kost * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.h: * ext/metadata/metadataxmp.h: metadata: fix include guards 2009-03-20 15:04:16 +0200 Stefan Kost * ext/metadata/metadata.c: metadata: rework doc comment 2009-03-09 23:43:55 +0200 Stefan Kost * gst/autoconvert/Makefile.am: * gst/camerabin/Makefile.am: * gst/dtmf/Makefile.am: * gst/liveadder/Makefile.am: * gst/mxf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/qtmux/Makefile.am: * gst/rtpmux/Makefile.am: * gst/siren/Makefile.am: * gst/valve/Makefile.am: Makefile.am: no static libs for plugins 2009-03-22 15:58:50 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Fix error handling 2009-03-22 15:51:37 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: mxfmux: Fix some memory leaks, improve debugging and handle errors better 2009-03-22 15:35:42 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: mxfmux: Add an error state from which we return immediately Also improve debugging a bit. 2009-03-19 20:41:16 +0100 Sebastian Dröge * gst/mxf/mxful.c: mxf: Optimize mxf_ul_is_subclass() a bit 2009-03-19 14:30:34 +0100 Sebastian Dröge * gst/mxf/Makefile.am: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: * gst/mxf/mxful.c: * gst/mxf/mxful.h: mxf: Start implementing a central UL database and add some helper functions and use them 2009-03-17 14:27:50 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmux: Make sure to include a picture in the edit units when muxing MPEG2/MPEG4 2009-03-17 14:23:37 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfdemux: Remove accidentially committed g_assert_not_reached() 2009-03-16 17:49:40 +0100 Sebastian Dröge * gst/mxf/mxfup.c: mxf: Add support for muxing/demuxing subsampled YUV formats 2009-03-16 17:22:22 +0100 Sebastian Dröge * gst/mxf/mxfup.c: mxfdemux: Use correct width/height for stride conversions 2009-03-16 17:18:17 +0100 Sebastian Dröge * gst/mxf/mxfup.c: mxf: Implement stride transformations for raw video content for muxing and demuxing 2009-03-16 15:37:25 +0100 Sebastian Dröge * gst/mxf/mxfup.c: mxfdemux: Simplify caps selection by using a lookup table 2009-03-16 12:48:31 +0100 Sebastian Dröge * gst/mxf/mxfup.c: mxfmux: Add initial support for muxing raw picture essence 2009-03-16 12:15:46 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Only add an essence container UL once to the partition and preface 2009-03-16 12:07:20 +0100 Sebastian Dröge * gst/mxf/mxfup.c: mxfdemux: Add support for AYUV and v308 YUV colorspaces 2009-03-16 11:00:57 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmux: Use the correct edit rate instead of estimating it from the first buffer duration 2009-03-15 15:27:56 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Error out directly if pushing a packet downstream failed 2009-03-15 15:27:24 +0100 Sebastian Dröge * gst/mxf/mxfdv-dif.c: mxfmux: Add support for DV/DIF muxing and add framerate, etc to the caps when demuxing DV/DIF content 2009-03-15 15:27:03 +0100 Sebastian Dröge * gst/mxf/mxfmux.c: mxfmux: Add some debugging and error out on invalid input data 2009-03-14 19:59:39 +0100 Sebastian Dröge * gst/deinterlace/gstdeinterlace.c: deinterlace: Fix uninitialized variable compiler warnings 2009-03-11 19:38:26 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfmux: Add support for muxing MPEG audio and video 2009-03-11 19:38:02 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfdemux: Use correct caps type for AC3 audio (audio/x-ac3 instead of audio/ac3) 2009-03-11 19:34:12 +0100 Sebastian Dröge * gst/mxf/mxfjpeg2000.c: mxfmux: Add support for muxing JPEG2000 code streams 2009-03-11 19:33:54 +0100 Sebastian Dröge * gst/mxf/mxfvc3.c: mxfmux: Add support for muxing VC-3 (aka DNxHD) video 2009-03-11 19:33:38 +0100 Sebastian Dröge * gst/mxf/mxfalaw.c: mxfmux: Add support for muxing A-Law audio 2009-03-11 19:33:18 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: mxfmux: Add support for muxing raw audio 2009-03-11 19:32:16 +0100 Sebastian Dröge * configure.ac: * gst/mxf/Makefile.am: * gst/mxf/mxf.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmux.c: * gst/mxf/mxfmux.h: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: * gst/mxf/mxfwrite.c: * gst/mxf/mxfwrite.h: mxf: Add MXF muxer This muxer currently only supports OP1a and is probably not yet 100% complying to the standards. 2009-03-11 19:30:22 +0100 Sebastian Dröge * ext/jp2k/gstjasperenc.c: jp2kenc: Add width/height/fourcc to the pad template caps === release 0.10.11 === 2009-03-21 01:09:08 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-autoconvert.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-deinterlace2.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dirac.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flv.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.11 2009-03-20 23:37:39 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/tr.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files 2009-03-20 23:31:19 +0000 Jan Schmidt * sys/dshowdecwrapper/gstdshowvideodec.h: dshowdec: Add par_n and par_d to the object structure to fix compilation 2009-03-18 12:32:08 +0000 Jan Schmidt * configure.ac: * win32/common/config.h: 0.10.6.5 pre-release 2009-03-18 10:35:43 +0000 Jan Schmidt * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: mxfdemux: Fix build on GLib < 2.16 some more 2009-03-18 00:02:48 +0000 Jan Schmidt * configure.ac: 0.10.10.4 pre-release 2009-03-16 17:29:16 +0000 Zaheer Merali * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: mxf: Replace g_hash_table_get_values with code working with glib 2.6. Fixes #575565 2009-03-13 16:31:56 +0000 Jan Schmidt * configure.ac: * win32/common/config.h: 0.10.10.3 pre-release 2009-03-13 16:16:21 +0000 Jan Schmidt * po/fi.po: * po/id.po: * po/pt_BR.po: po: Update po files from upstream 2009-03-13 16:08:03 +0000 Jan Schmidt * po/LINGUAS: * po/tr.po: po: Add Turkish translation 2009-03-12 23:54:12 +0000 Tim-Philipp Müller * gst/xdgmime/gstxdgmime.c: xdgmime: make xdg typefinder more conservative The whole raison d'etre of this typefinder is to help avoid false positives when used in combination with our main typefinder in -base. Its task is not really to typefind audio/video files, even less so given that it detects *MIME* types, not GStreamer media types. Therefore, if this typefinder detects an audio or video type, don't even suggest it - our own typefinders are hopefully better at this and detect the right type of type on top of that, and even if they're not we really want to know about it and fix it. Fixes #575157. 2009-03-13 15:59:37 +0100 Wim Taymans * gst/rtpmanager/gstrtpsession.c: rtpbin: don't return FALSE on seek events Silently ignore the seek event instead of returning FALSE. 2009-03-13 10:07:18 +0000 Josep Torra * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: workaround to fix playback of certain malformed clips Added a workarround to permit play certain malformed clips where first SCR is greater than last SCR. Fixes bug #454228 2009-03-12 20:13:11 +0100 Edward Hervey * tests/check/Makefile.am: check: Disabling metadata unit test until #574401 is fixed. 2009-03-12 17:53:37 +0000 Christian Schaller * gst-plugins-bad.spec.in: add some more plugins the spec file 2009-03-11 13:04:36 +0000 Christian Schaller * gst-plugins-bad.spec.in: Update spec file with new plugins 2009-03-10 15:12:24 +0000 Tim-Philipp Müller * ext/directfb/dfbvideosink.c: dfbvideosink: include stdlib.h for abs() 2009-03-10 21:18:20 +0100 Josep Torra * gst/mpegdemux/gstmpegdemux.c: mpegdemux: Fixed a bug in the TS scanner. Fixes #574009 2009-03-10 00:22:55 +0000 Jan Schmidt * configure.ac: * po/af.po: * po/az.po: * po/bg.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: * win32/common/config.h: 0.10.10.2 pre-release 2009-03-10 00:10:09 +0000 Jan Schmidt * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-twolame.xml: * ext/Makefile.am: * ext/twolame/Makefile.am: * ext/twolame/gsttwolame.c: * ext/twolame/gsttwolame.h: * po/POTFILES.in: Moved twolame from Bad to Ugly 2009-03-09 23:13:00 +0000 Jan Schmidt * common: Automatic update of common submodule From 7032163 to f8b3d91 2009-03-08 12:05:24 +0100 Sebastian Dröge * common: Automatic update of common submodule From ffa738d to 7032163 2009-03-08 11:21:00 +0100 Sebastian Dröge * common: Automatic update of common submodule From 3f13e4e to ffa738d 2009-03-07 11:46:33 +0100 Sebastian Dröge * common: Automatic update of common submodule From 3c7456b to 3f13e4e 2009-03-07 10:46:40 +0100 Sebastian Dröge * common: Automatic update of common submodule From 57c83f2 to 3c7456b 2009-03-06 22:36:19 +0000 Jan Schmidt * gst/camerabin/gstcamerabin.c: * tests/check/elements/camerabin.c: camerabin: Make the tests pass when the camerabin can't initialise. The camerabin tests were throwing glib errors and hanging when gst-plugins-good elements (jpegenc, videocrop) can't found. 2009-03-06 21:14:48 +0000 Jan Schmidt * tests/check/elements/.gitignore: misc: Ignore the camerabin binary in the check/elements subdir 2009-03-06 19:22:58 +0000 Jan Schmidt * gst/camerabin/Makefile.am: camerabin: Partly fix distcheck Don't dist the generated marshal.h header by putting it in the headers list. 2009-03-07 00:20:28 +0200 Stefan Kost * tests/check/pipelines/metadata.c: metadata: change 'q' back to 'jpegenc' (my keyboard hates me) 2009-03-06 23:34:56 +0200 Stefan Kost * configure.ac: * ext/metadata/metadata.c: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadataparsejpeg.c: * tests/check/pipelines/metadata.c: metadata: cleanup, fix the test, add comments First do not build the plugin, if we have none of the backend, as it won't work then. Fix the miniobject_unref error in the test. Sprinkle a first handful of debug logs into the element code. 2009-03-06 20:02:21 +0100 Sebastian Dröge * tests/check/elements/legacyresample.c: legacyresample: Fix memory leak in the unit test by unreffing the caps 2009-03-06 17:46:37 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Store and use the seqnum of the currently running segment everywhere 2009-03-06 17:24:03 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxf: Don't even try to serialize DM frameworks as it will cause an assertion until this is finished 2009-03-06 12:42:50 +0100 Edward Hervey * ext/faad/gstfaad.c: faad: Use the public headers if faad2 >= 2.7. Fixes #573369 Since faad2-2.7, the public function prototypes are in sync with the actual function prototypes used internally in libfaad. 2009-03-06 11:08:18 +0100 Wim Taymans * ext/ladspa/gstladspa.c: ladspa: fix compilation when LRDF is missing -- 2009-03-05 22:55:17 +0200 Stefan Kost * configure.ac: * ext/ladspa/Makefile.am: ladspa: remove -ldl as we now use glibs gmodule. 2009-03-05 22:37:52 +0200 Stefan Kost * configure.ac: * ext/ladspa/Makefile.am: * ext/ladspa/gstladspa.c: ladspa: add initial liblrdf support. Get classification from rdf metadata. 2009-03-05 22:04:48 +0200 Stefan Kost * ext/mplex/gstmplex.cc: mplex: fix required version With this version it builds on opensuse 11.1. 2009-03-05 14:40:57 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxf: Don't use NULL GstStructures to prevent warnings Currently serializing of DM Frameworks is not supported yet by DMS1 and will give us NULL. 2009-03-04 21:30:30 +0000 Tim-Philipp Müller * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/photography.h: * gst/camerabin/Makefile.am: photography: declare interface as unstable API by means of a warning Application developers won't know right away which module an interface comes from, and may assume that it is covered by the usual GStreamer API guarantees, so make it as clear as possible that this particular API is still subject to change (should have done that with other libraries in -bad before too really). 2009-03-04 20:37:51 +0000 Tim-Philipp Müller * configure.ac: configure: detect faad's minor version and define FAAD2_MINOR_VERSION in config.h 2009-03-04 16:46:08 +0000 Tim-Philipp Müller * docs/plugins/inspect/plugin-valve.xml: * gst-plugins-bad.spec.in: * gst/valve/Makefile.am: valve: rename plugin file from libfsvalve.* to libgstvalve.* If you're running things uninstalled, you might need to manually remove the registry to get the plugin's features to show up correctly. Also, you probably want to do a make clean to get rid of the old plugin file. 2009-03-04 19:50:10 +0100 Edward Hervey * gst/real/gstreal.c: gsreal: bring down the rank of the real decoders to MARGINAL. Basically, at this point, the ffmpeg equivalent decoders perform way better, so we'll make the ffmpeg equivalents PRIMARY and these MARGINAL. 2009-03-04 18:42:15 +0000 Zaheer Merali * sys/dvb/gstdvbsrc.c: dvbsrc: make some docs up to date 2009-03-04 18:16:31 +0000 Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: mpegtsdemux: reset sync_lut_len to 0 on READY to NULL 2009-03-04 15:30:04 +0000 Christian Schaller Merge branch 'master' of ssh://uraeus@git.freedesktop.org/git/gstreamer/gst-plugins-bad 2009-03-04 15:28:46 +0000 Christian Schaller * docs/plugins/Makefile.am: * gst-plugins-bad.spec.in: * tests/examples/Makefile.am: docs/plugins/Makefile.am: add figures subdirectory tests/examples/Makefile.am: add mxf subdirectory gst-plugins.spec.in: add new plugins 2009-03-04 16:15:57 +0100 Peter Kjellerstedt * tests/check/Makefile.am: check: gst-plugins-bad.supp needs to be distributed. 2009-03-04 15:05:48 +0200 Stefan Kost * configure.ac: * ext/ladspa/gstladspa.c: ladspa: add LIBDIR/ladspa to search path and make path more portable Use glib defines for searchpath separators. Filter searchpath to avoid scanning path entries twice. Fix the return in ladspa_plugin_directory_search to return wheter we found a plugin. 2009-03-04 14:34:12 +0200 Stefan Kost * ext/ladspa/Makefile.am: * ext/ladspa/load.c: * ext/ladspa/search.c: * ext/ladspa/utils.h: ladspa: rewrite the directory scanning, fixes first part of #573370 Move the two function from search.c into gstladspa.c and make them static. Remove non needed arguments from function prototypes. Use glib api for simplicity and portability. 2009-03-04 11:14:18 +0100 LRN * ext/faad/gstfaad.c: faad: use gint8 instead of int8_t Use gint8 instead of int8_t to fix compilation. Fixes #573851. 2009-03-04 11:07:52 +0100 LRN * ext/gsm/gstgsmdec.c: gsmdec: Use G_BYTE_ORDER to fix Windows compile gstgsmdec relies on BYTE_ORDER, which is not available on Windows. Use G_BYTE_ORDER instead. Fixes #573850. 2009-03-03 14:30:53 -0500 Olivier Crête * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-mimic.xml: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: Add Doc for mimic plugin 2009-03-03 14:03:34 -0500 Olivier Crête * configure.ac: * ext/Makefile.am: * ext/mimic/gstmimic.c: Move mimic to -bad 2009-03-03 14:20:37 -0500 Olivier Crête * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: * ext/mimic/gstmimic.c: Re-indent to GST style 2008-07-25 22:47:26 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: [MOVED FROM GST-P-FARSIGHT] Only output a newsegment if the incoming newsegment isnt a time segment 20080725224726-3e2dc-f82b993c0fbfe8bd487d2f1962fec1d0b6564ebc.gz 2008-07-25 22:26:48 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: [MOVED FROM GST-P-FARSIGHT] Remove unused member variables 20080725222648-3e2dc-24649782a39462c7c3fef9d6270b3db4c4ace1bb.gz 2008-07-25 22:24:48 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Send out the right segment and use stored timestamps directly 20080725222448-3e2dc-e119bf09ede1cf187581d59176c8b35bafb731ae.gz 2008-07-25 19:48:33 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Skip non-keyframes before we get a keyframe 20080725194833-3e2dc-583df57c8ebce4b149a01768ed7d3737136a208f.gz 2008-07-25 19:33:58 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Ignore upstream newsegment events in mimdec 20080725193358-3e2dc-7c0f22386e0208a45eae9c1d7eb62e86f61d14ba.gz 2008-07-25 19:25:30 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] emit the right timestamp in the newsegment event 20080725192530-3e2dc-a3cc0ce73fca181caee323d699d8576df916e8d3.gz 2008-07-25 19:08:49 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Use video/x-mimic as the caps type 20080725190849-3e2dc-38e4acc9d4ad8231ed22f6cc4d7d8c2a8b5668e9.gz 2008-07-04 22:07:13 +0000 Olivier Crete * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: [MOVED FROM GST-P-FARSIGHT] Add proper locking to mimenc 20080704220713-3e2dc-6a22d1a423716e8b84bc3bda9986a1b4ff0c0d37.gz 2008-07-04 22:03:18 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Remove useless implementation of getcaps from mimdec 20080704220318-3e2dc-d81bc59b2308c5ad0d3144030c5650295e99f3c6.gz 2008-07-04 22:02:43 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: [MOVED FROM GST-P-FARSIGHT] Add proper locking to mimdec 20080704220243-3e2dc-71c157d82999dfb41bd62b4064b1887ab22e84c1.gz 2008-07-04 21:59:36 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Remove leak 20080704215936-3e2dc-22d992f98c9931f062662fc05f1ce65bc97f619a.gz 2008-07-04 21:55:50 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Reset the gst timestamp if the time different is too large 20080704215550-3e2dc-76eb3f600f2b977e916f7e1f654529ddaff06ac9.gz 2008-07-04 21:52:08 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Use the timestamp from the first buffer as the base 20080704215208-3e2dc-5822771f2694deda4a7cd5cdd3c38ab9eff7fa2d.gz 2008-07-04 21:49:35 +0000 Olivier Crete * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Store the timestamp in the header 20080704214935-3e2dc-90ec73df3225b41baa681ab691fb8bd47e17c780.gz 2008-07-04 21:19:43 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Re-indent mimdec 20080704211943-3e2dc-def1e0dacc4a45fe2b4afdcb903a1328c95117ac.gz 2008-07-04 21:15:11 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Simplify newsegment code 20080704211511-3e2dc-b98d1e5b31c23eb7912197f9364a31560d092c63.gz 2008-07-04 20:50:10 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: [MOVED FROM GST-P-FARSIGHT] Port mimic plugins to GST_BOILERPLATE 20080704205010-3e2dc-da41e5685ab9ceb67555d499125432cd12d5505d.gz 2008-07-04 20:41:12 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: * ext/mimic/gstmimic.c: [MOVED FROM GST-P-FARSIGHT] Remove trailing whitespace in mimic plugin 20080704204112-3e2dc-1ab4b913d58faa058742b01e083f7debd6877bb3.gz 2008-07-04 20:29:41 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: [MOVED FROM GST-P-FARSIGHT] Fix conflicts 20080704202941-3e2dc-7f5a38845b797e12d672551466e635d484cb6763.gz 2007-11-10 05:17:17 +0000 Olivier Crete * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Fix mimic enc chain function, return res for chain(), get the parent element with the proper accessor function, use the _OBJECT debugging macros 20071110051717-3e2dc-4726fcd19cc3d1121a4e13276a41f5f86dc1c9b1.gz 2007-11-10 05:14:27 +0000 Olivier Crete * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Make the _set_caps function of mimic enc more robust 20071110051427-3e2dc-381a71f2cbfdbf508e941b672e9058c82fabce24.gz 2007-11-10 05:14:01 +0000 Olivier Crete * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Remove the gst 0.9.1 ifdef 20071110051401-3e2dc-1f071d732d64573889977405995692d94b10a0d6.gz 2007-11-10 05:10:35 +0000 Olivier Crete * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Make caps gst 0.10 compliant 20071110051035-3e2dc-f7024bd3ecfb6794fe8d09dcb100ba0b4783df5d.gz 2007-11-10 05:09:50 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Use g_type_class_peek_parent instead of reffing the parent class directly 20071110050950-3e2dc-6d14ddd6ae3ceeeaa4e641b7b09613e442927f92.gz 2007-11-10 05:08:52 +0000 Olivier Crete * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Remove framesize properties on the mimic encoder 20071110050852-3e2dc-cb8165c073bfa981790dc91693fd1c483ea7b6ea.gz 2007-11-10 05:07:53 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Use the _OBJECT debug macros 20071110050753-3e2dc-560d22a86eea1108f1746d0123744d33812e94c9.gz 2007-11-10 05:03:51 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Use gst_pad_get_parent instead of looking into the GstObject directly 20071110050351-3e2dc-636f7d7737494f810047a8ee6927cde060bb4b4b.gz 2007-11-10 05:02:32 +0000 Olivier Crete * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Return back result of pad push 20071110050232-3e2dc-4a080d97963cd8ab6d528c4012d14353c1cfe97b.gz 2007-11-10 04:11:25 +0000 Olivier Crete * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: [MOVED FROM GST-P-FARSIGHT] Ole's port to gst 0.10 20071110041125-3e2dc-e2994c3bbe1578d98e4f707bd10f24fabf942c2b.gz 2008-12-11 17:54:18 -0500 Olivier Crête * ext/mimic/.git-darcs-dir: [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2008-02-11 22:24:31 +0000 Youness Alaoui * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Limit timestamp diff in case of a jump in the timestamps 20080211222431-4f0f6-726fc66403081533371f775954aab4c7b8fdc643.gz 2008-02-06 03:16:54 +0000 Youness Alaoui * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Make it back to 30 fps in caps 20080206031654-4f0f6-d8197e53888906805041e6552c0dd774c55e9e89.gz 2008-02-06 03:09:47 +0000 Youness Alaoui * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Fix timestamps in gst buffers sent by gstmimic 20080206030947-4f0f6-9dc7d9b1a92a717c71b1e490a5591f0e2ffe0dad.gz 2008-02-06 02:03:35 +0000 Youness Alaoui * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Fix framerate type in caps for gstmimic element 20080206020335-4f0f6-0d9e136039ad6b7b84982bdac242a059d50fbb66.gz 2006-03-24 20:16:19 +0000 philippe.kalaf@collabora.co.uk * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Fixed couple of compilation issues 20060324201619-2425b-bf339926f533aa4efece855fbbe94e59c7bb955f.gz 2006-03-24 19:57:20 +0000 philippe.kalaf@collabora.co.uk * ext/mimic/gstmimenc.c: [MOVED FROM GST-P-FARSIGHT] Calls to gst_pad_get_parent ref the object so it needs to be unreffed < hexa00@gmail.com 20060324195720-2425b-17928be34ee67f71efbaf62de76deba9ad13f0f2.gz 2006-02-14 21:00:27 +0000 philippe.kalaf@collabora.co.uk * ext/mimic/Makefile.am: [MOVED FROM GST-P-FARSIGHT] Separated ERROR_CFLAGS from GST_CFLAGS 20060214210027-2425b-1f9e6ed591c08e5907d02ef7ea9a8cf62bf29840.gz 2005-10-24 15:37:48 +0000 Philippe Khalaf * ext/mimic/gstmimdec.c: [MOVED FROM GST-P-FARSIGHT] Should not be done in dispose, moving to finalize 20051024153748-05459-9625fec05547c535bf5f3c66aebba84861b549aa.gz 2005-07-16 19:50:21 +0000 Philipe Kalaf * ext/mimic/.git-darcs-dir: * ext/mimic/Makefile.am: * ext/mimic/gstmimdec.c: * ext/mimic/gstmimdec.h: * ext/mimic/gstmimenc.c: * ext/mimic/gstmimenc.h: * ext/mimic/gstmimic.c: [MOVED FROM GST-P-FARSIGHT] Import from CVS to darcs 2009-03-03 14:32:38 -0500 Olivier Crête * docs/plugins/gst-plugins-bad-plugins-sections.txt: rtpmux: Ignore rtpmux get_type function for docs 2009-03-03 19:08:28 +0000 Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: mpegtsparse: fix memleak Fix memleak in mpegts_packetizer_clear where MpegTSPacketizerStream is not freed properly when using foreach_stream_clear function. 2009-03-03 18:28:10 +0000 Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: dynamically adjust the sync LUT table Make the sync LUT table adjusted dynamically according to the size of scanned data. Fixes demuxing buffers of any size. 2009-02-25 21:05:42 -0500 Olivier Crête * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-autoconvert.xml: * gst/autoconvert/Makefile.am: * gst/autoconvert/gstautoconvert.c: * gst/autoconvert/gstautoconvert.h: autoconvert: Import fsselector from gst-plugins-farsight as autoconvert fsselector is too close to selector, so import is as autoconvert. Not importing the history because the directory is also called gst/selector and it fails. 2009-03-02 10:57:35 +0100 Edward Hervey * gst/qtmux/gstqtmux.c: qtmux: Be a bit more verbose in our debug message when failing to renegotiate 2009-03-02 17:00:41 +0100 Sebastian Dröge * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: mxfdemux: Use arrays instead of lists for the metadata registries 2009-03-02 16:29:01 +0100 Sebastian Dröge * gst/xdgmime/gstxdgmime.c: xdgmime: Reduce probability to POSSIBLE 2009-03-02 16:27:55 +0100 Sebastian Dröge * gst/xdgmime/gstxdgmime.c: xdgmime: Add locking to the xdg_mime_* calls as it's not thread-safe 2009-03-01 20:18:30 +0100 Sebastian Dröge * gst/xdgmime/xdgmime/xdgmimealias.c: * gst/xdgmime/xdgmime/xdgmimecache.c: * gst/xdgmime/xdgmime/xdgmimeglob.c: * gst/xdgmime/xdgmime/xdgmimeicon.c: * gst/xdgmime/xdgmime/xdgmimeparent.c: xdgmime: Use g_pattern_match_simple() instead of fnmatch() for Win32 compatibility 2009-03-01 20:13:31 +0100 LRN * gst/xdgmime/xdgmime/xdgmimemagic.c: xdgmime: Fix unused variable compiler warning 2009-03-01 20:12:12 +0100 Sebastian Dröge * gst/xdgmime/xdgmime/xdgmimecache.c: xdgmime: Don't warn if we have no MMAP support 2009-03-01 20:11:07 +0100 Sebastian Dröge * gst/xdgmime/xdgmime/xdgmimecache.c: xdgmime: Use g_ntoh[ls] instead of the non-GLib functions for Win32 compatibility 2009-03-01 20:09:24 +0100 Sebastian Dröge * gst/xdgmime/xdgmime/xdgmimemagic.c: xdgmime: Use G_BYTE_ORDER instead of relying on LITTLE_ENDIAN to be defined 2009-03-01 20:02:12 +0100 Sebastian Dröge * ext/ladspa/Makefile.am: ladspa: Don't compile unused code from load.c 2009-02-28 23:47:02 +0000 Tim-Philipp Müller * gst/real/gstreal.c: realdec: use gst_plugin_add_dependency() 2009-02-28 15:23:07 -0800 Michael Smith * sys/acmenc/acmenc.c: acmenc: fix whitespace Convert to unix newlines, and reindent in some broken places. 2009-02-28 20:42:49 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxf: Fix memory leak gst_structure_id_set() will copy GstStructures instead of taking the ownership. 2009-02-28 20:39:42 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: mxf: Store the metadata type ID inside the class structure 2009-02-28 19:41:10 +0100 vanista * gst/mpegdemux/gstsectionfilter.c: mpegtsdemux: Fix memory leaks when PUSI is missed due to packet loss Fixes bug #573288. 2009-02-28 11:43:56 +0100 Edward Hervey * gst/nsf/fmopl.c: nsf: Don't write further than the limits of the table (size is 75, as defined in the header) gcc 4.3.3 found this one, I'm impressed. 2009-02-28 10:29:15 +0100 Sebastian Dröge * tests/examples/mxf/mxfdemux-structure.c: mxf: Don't use GLib 2.16 API unconditionally in the example 2009-02-27 20:43:25 +0100 Andrzej Polatyński * gst/videosignal/gstvideoanalyse.c: videoanalyse: Fix brightness calculation to not only use the first rowstride Fixes bug #573391. 2009-02-27 11:36:58 -0800 Michael Smith * gst/mpeg4videoparse/mpeg4videoparse.c: mpeg4videoparse: Use correct values for checking VO startcode. Fix compiler warning due to condition always being true - since we're only looking at the final byte of the startcode (not the leading 0x000001), only check for < 0x1f, not < 0x11f 2009-02-27 20:21:23 +0100 Sebastian Dröge * gst/xdgmime/gstxdgmime.c: xdgmime: Use empty caps for registering the typefinders with old core versions core before 0.10.22.1 produced assertions when storing typefind factories with NULL caps in the registry. 2009-02-26 15:40:26 +0100 Wim Taymans * gst/mpeg4videoparse/mpeg4videoparse.c: * gst/mpeg4videoparse/mpeg4videoparse.h: mpeg4videoparse: handle more formats We only need a Video Object Start code before we can start pushing out data. Search for this code also instead of only looking for VOS and VOP. Fixes #572551. 2009-02-27 12:03:23 +0000 Jan Schmidt Merge branch 'work' 2009-02-27 11:56:45 +0000 Jan Schmidt * docs/plugins/.gitignore: docs: Ignore some more generated files 2009-02-27 11:55:34 +0000 Jan Schmidt * ext/celt/gstceltdec.c: * ext/celt/gstceltdec.h: celtdec: Move define into the C file so it doesn't show up in the docs 2009-02-27 11:54:42 +0000 Jan Schmidt * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-dirac.xml: docs: Enroll dirac plugin into the docs 2009-02-27 11:39:56 +0000 Jan Schmidt * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/dts/gstdtsdec.c: dtsdec: Add some basic docs to the plugin 2009-02-27 10:16:57 +0000 Jan Schmidt * ext/apexsink/gstapexraop.c: apexsink: Use a union to avoid type-punning strict aliasing compiler warning. 2009-02-27 12:35:14 +0200 Stefan Kost * gst/camerabin/Makefile.am: * gst/camerabin/gstcamerabin-marshal.list: * gst/camerabin/gstcamerabin.c: * tests/check/elements/camerabin.c: camerabin: rework signaling and tests Revert the GString change. There are no marshallers for it. A better change is now described in http://bugzilla.gnome.org/show_bug.cgi?id=573370. Test should work again. 2009-02-27 11:24:37 +0200 Stefan Kost * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: revert last change and properly fix Baseparse internaly breaks the semantics of a _chain function by calling it with buffer==NULL. The reson I belived it was okay to remove it was that there is also an unchecked access to buffer later in _chain. Actually that code is wrong, as it most probably wants to set discont on the outgoing buffer. 2009-02-27 11:06:04 +0100 Edward Hervey * sys/qtwrapper/qtutils.c: qtwrapper: Only use _dump_mem() if requested. 2009-02-26 12:48:16 -0800 David Schleef * gst/rawparse/gstvideoparse.c: Add v210 format 2009-02-26 12:47:16 -0800 David Schleef * gst/rawparse/gstvideoparse.c: Fix incorrect "pixel_aspect_ratio" in caps Should be "pixel-aspect-ratio". 2009-02-26 18:46:00 +0100 Sebastian Dröge * configure.ac: * tests/examples/mxf/.gitignore: * tests/examples/mxf/Makefile.am: * tests/examples/mxf/mxfdemux-structure.c: mxf: Add example application to output the structural metadata tree into a GtkTreeView 2009-02-26 13:10:29 +0100 Olivier Crête * gst/rtpmanager/gstrtpsession.c: gstrtpbin: Don't forward revc events to sender Don't send events from the receiver to the sender side. Fixes #572900. 2009-02-26 11:02:06 +0200 Stefan Kost * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: * gst/flacparse/gstbaseparse.c: baseparse: remove checks for buffer==NULL Accordifn to docs for GstPadChainFunction buffer cannot be NULL. If we would leave the check, we would also need more such check below. 2009-02-25 15:06:07 +0000 Jan Schmidt * common: * configure.ac: build: Update shave init statement for changes in common. Bump common. 2009-02-25 15:24:13 +0200 Stefan Kost * tests/check/elements/neonhttpsrc.c: tests: add a timeout of 5 slightly above the default 2009-02-25 15:17:14 +0200 Stefan Kost * tests/check/elements/camerabin.c: camerabin: increase timeout and lower video recording length The video was recorded for too long for the test timeouts. Also the verification suite did not had custom timouts at all. Also split the verification for images and video to get better reporting. 2009-02-25 11:32:22 +0000 Jan Schmidt * common: Automatic update of common submodule From 9cf8c9b to a6ce5c6 2009-02-25 12:34:33 +0200 Stefan Kost * tests/check/Makefile.am: tests: blacklist dccp plugins. Unless one runs a very recent kernel, they can easily lockup the whole system. 2009-02-25 11:45:05 +0200 Stefan Kost * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/camerabin/gstcamerabin.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfsrc.c: * gst/rtpmanager/rtpjitterbuffer.c: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/selector/gstinputselector.c: docs: various doc fixes No short-desc as we have them in the element details. Also keep things (Makefile.am and sections.txt) sorted. Reword ambigous returns. No text after since please. 2009-02-25 11:34:45 +0100 Wim Taymans * gst/mpegdemux/gstmpegdemux.c: mpegdemux: don't ignore GstFlowReturn values don't ignore the return value of pull_range because we only get a valid non-NULL buffer when the return value is GST_FLOW_OK. Avoids a crash when the pipeline is shutting down. 2009-02-25 11:41:36 +0200 Stefan Kost * gst/camerabin/gstcamerabin-marshal.list: * gst/camerabin/gstcamerabin.c: camerabin: update signal marshaller and docs Use GString instead of GPointer for the marshaller as this is what the callback uses. Slightly reformat docs. 2009-02-25 11:38:58 +0200 Stefan Kost * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/figures/Makefile.am: * docs/plugins/figures/camerabin.dot: * docs/plugins/figures/camerabin.png: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-camerabin.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-deinterlace2.xml: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flv.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-gstsiren.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-liveadder.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-twolame.xml: * docs/plugins/inspect/plugin-valve.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xdgmime.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: docs: update docs to add camerabin and its figure 2009-02-25 11:00:55 +0200 Stefan Kost * tests/check/elements/camerabin.c: camerabin: get rid of // comment and explain 2009-02-25 10:46:10 +0200 Stefan Kost * tests/check/elements/camerabin.c: camerabin: update check unit test Use playbin2 for validation. Use tmp_dir for capturing. Wait with g_cond for burst capture finish. Cleanup some g_object_set. Add some logging to ease tracing. 2009-02-25 10:45:19 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: unblock correct pad in reset, support fakesink as view finder 2009-02-24 16:36:28 +0100 Sebastian Dröge * tests/examples/app/.gitignore: * tests/examples/app/Makefile.am: * tests/examples/app/appsink-src.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: * tests/examples/app/appsrc_ex.c: Remove tests/examples/app as it was moved to -base a long time ago 2009-02-24 16:33:51 +0100 Sebastian Dröge * Makefile.am: * configure.ac: * tests/Makefile.am: * tests/examples/Makefile.am: * tests/examples/app/.gitignore: * tests/examples/app/Makefile.am: * tests/examples/app/appsink-src.c: * tests/examples/app/appsrc-ra.c: * tests/examples/app/appsrc-seekable.c: * tests/examples/app/appsrc-stream.c: * tests/examples/app/appsrc-stream2.c: * tests/examples/app/appsrc_ex.c: * tests/examples/capsfilter/Makefile.am: * tests/examples/capsfilter/capsfilter1.c: * tests/examples/directfb/.gitignore: * tests/examples/directfb/Makefile.am: * tests/examples/directfb/decker.ttf: * tests/examples/directfb/dfblogo.png: * tests/examples/directfb/gstdfb.c: * tests/examples/gob/Makefile.am: * tests/examples/gob/gst-identity2.gob: * tests/examples/gstplay/.gitignore: * tests/examples/gstplay/Makefile.am: * tests/examples/gstplay/player.c: * tests/examples/indexing/.gitignore: * tests/examples/indexing/Makefile.am: * tests/examples/indexing/indexmpeg.c: * tests/examples/level/Makefile.am: * tests/examples/level/README: * tests/examples/level/demo.c: * tests/examples/level/plot.c: * tests/examples/scaletempo/.gitignore: * tests/examples/scaletempo/Makefile.am: * tests/examples/scaletempo/demo-gui.c: * tests/examples/scaletempo/demo-gui.h: * tests/examples/scaletempo/demo-main.c: * tests/examples/scaletempo/demo-player.c: * tests/examples/scaletempo/demo-player.h: * tests/examples/stats/Makefile.am: * tests/examples/stats/mp2ogg.c: * tests/examples/switch/.gitignore: * tests/examples/switch/Makefile.am: * tests/examples/switch/switcher.c: Move examples directory to tests/examples as in every other GStreamer module 2009-02-24 16:21:18 +0100 Sebastian Dröge * configure.ac: * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: dtsdec: Use new DCA functions/constants as not all distros package the compat dts.h For backward compatibility we define the DCA functions/constants to the old DTS functions/constants if we're building against libdts. 2009-02-24 15:26:27 +0100 Sebastian Dröge * configure.ac: * gst/xdgmime/Makefile.am: * gst/xdgmime/gstxdgmime.c: * gst/xdgmime/xdgmime/xdgmime.c: * gst/xdgmime/xdgmime/xdgmime.h: * gst/xdgmime/xdgmime/xdgmimealias.c: * gst/xdgmime/xdgmime/xdgmimealias.h: * gst/xdgmime/xdgmime/xdgmimecache.c: * gst/xdgmime/xdgmime/xdgmimecache.h: * gst/xdgmime/xdgmime/xdgmimeglob.c: * gst/xdgmime/xdgmime/xdgmimeglob.h: * gst/xdgmime/xdgmime/xdgmimeicon.c: * gst/xdgmime/xdgmime/xdgmimeicon.h: * gst/xdgmime/xdgmime/xdgmimeint.c: * gst/xdgmime/xdgmime/xdgmimeint.h: * gst/xdgmime/xdgmime/xdgmimemagic.c: * gst/xdgmime/xdgmime/xdgmimemagic.h: * gst/xdgmime/xdgmime/xdgmimeparent.c: * gst/xdgmime/xdgmime/xdgmimeparent.h: xdgmime: Add new typefinder based on xdgmime This typefinder is mostly useful to filter out any false positives by the other typefinders like the usual Word document misdetected as MP3 file. 2009-02-24 13:37:24 +0100 Sebastian Dröge * configure.ac: dts: Prefer libdca over libdts as it's the successor 2009-02-23 16:02:08 +0100 Edward Hervey * sys/qtwrapper/audiodecoders.c: qtwrapper: Fix build on macosx 2009-02-23 15:25:03 +0100 Edward Hervey * gst/liveadder/liveadder.c: liveadder: Fix build on macosx 2009-02-20 12:08:04 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: camerabin: Add aspect ratio capsfilter for view finder If dealing with larger frame sizes than view finder sink element accepts then maintain aspect ratio when scaling frames to fit. 2009-02-20 12:07:33 +0200 Lasse Laukkanen * gst/camerabin/gstcamerabin.c: camerabin: Scale incoming frames if their size does not match requested size If capture preparation in videosrc results in frame size different from requested size, then we need to scale them. 2009-02-20 12:03:03 +0200 Lasse Laukkanen * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: photo iface: Add caps object to preparation API for requested and actual capture format Allow requesting of certain format with prepare_for_capture() and return the actual format in GstPhotoCapturePrepared callback. 2009-02-23 11:49:07 +0000 Jan Schmidt * configure.ac: build: Add soundtouch's -lBPM to _LIBS, not _CFLAGS 2009-02-22 22:00:58 +0100 Edward Hervey * gst/dccp/gstdccpserversink.c: dccp: Fix "non-void without return value" compilation issue. 2009-02-22 19:17:30 +0000 Jan Schmidt * configure.ac: * ext/soundtouch/Makefile.am: * ext/soundtouch/gstbpmdetect.cc: Detect libsoundtouch 1.4 and higher. In libsoundtouch 1.4, libBPM appears to have been subsumed into libSoundTouch, and into the soundtouch namespace. 2009-02-22 18:12:19 +0000 Jan Schmidt * configure.ac: * docs/plugins/Makefile.am: Use shave for the build output 2009-02-22 18:41:08 +0100 Andoni Morales * configure.ac: * gst/camerabin/camerabingeneral.h: * gst/camerabin/gstcamerabin.c: camerabin: Fix compilation on Windows with Visual Studio Windows doesn't have strcasecmp so we should use g_ascii_strcasecmp here instead. Also Windows doesn't have sys/time.h so we first need to check if it actually exists and if not we should not include it. Fixes bug #572315. 2009-02-22 15:58:06 +0000 Jan Schmidt * common: Automatic update of common submodule From 5d7c9cc to 9cf8c9b 2009-02-22 14:58:36 +0100 Sebastian Dröge * ext/directfb/dfbvideosink.c: dfbvideosink: Don't use void * pointer arithmetic 2009-02-22 13:17:54 +0100 Edward Hervey * ext/xvid/gstxvid.c: xvid: Fix compilation warning 2009-02-21 11:13:50 -0800 David Schleef * common: Automatic update of common submodule From 80c627d to 5d7c9cc 2009-02-10 17:02:24 +0000 Olivier Crête * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-dtmf.xml: * docs/plugins/inspect/plugin-rtpmux.xml: * gst/rtpmux/Makefile.am: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmuxer.c: Moved rtpmux from gst-p-farsight to -bad 2009-02-20 17:45:50 -0500 Olivier Crête * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-qtmux.xml: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: * gst/rtpmux/gstrtpmuxer.c: Re-indent to Gst style 2009-02-10 19:11:15 +0000 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Document rtp muxer a bit 2009-02-20 13:30:49 -0500 Laurent Glayal * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: [MOVED FROM GST-P-FARSIGHT] Add signals before stream lock and after unlocking 2009-02-18 20:18:46 -0500 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Let ssrc through getcaps 2009-02-18 19:58:58 -0500 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Rename have_base to have_ts_base 2009-02-18 18:14:52 -0500 Olivier Crête * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] Protect the seqnum with object lock in rtpmux 2009-02-18 18:07:44 -0500 Olivier Crête * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] Remove unused sink_ts_base 2009-02-18 15:20:58 -0500 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Have getcaps to force the same clockrate on all pads 2009-02-18 17:05:13 -0500 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Validate RTP data in RTP Mux 2009-02-18 14:16:00 -0500 Olivier Crête * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] Remove unused clock-rate property 2009-02-18 13:56:36 -0500 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.h: [MOVED FROM GST-P-FARSIGHT] Clarify locking in rtpdtmfmux 2009-02-18 13:32:56 -0500 Laurent Glayal * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Missing format parameter 2008-12-11 17:54:18 -0500 Olivier Crête * gst/rtpmux/.git-darcs-dir: [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2008-12-01 17:55:22 -0500 Håvard Graff * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Update seqnum base in rtp muxer With help from Wim 2008-12-01 17:54:58 -0500 Håvard Graff * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Fix some more leaks 2008-12-01 17:48:29 -0500 Håvard Graff * gst/rtpmux/gstrtpdtmfmux.c: [MOVED FROM GST-P-FARSIGHT] Fix leak 2008-09-29 15:03:05 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Don't unref caps we don't know (thanks Wim) 2008-08-12 12:48:02 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Put per-buffer debug at level LOG 2008-08-12 12:47:14 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Make debug print accurate 2008-08-12 12:46:23 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Set our caps on the buffers 2008-08-12 12:46:07 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Take the clock-base stored from the last setcaps 2008-08-12 12:41:59 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Store the clock-base on setcaps 2008-08-12 12:30:52 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Add padprivate to the request pads 2008-08-12 12:23:32 -0400 Olivier Crête * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] Remove whitespace in gstrtpmux 2008-08-11 21:20:06 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Make indentation more correct 2008-08-11 21:05:34 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Fix typo 2008-08-11 21:03:22 -0400 Olivier Crête * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Set seqnum-base and clock-base in caps from rtpmuxer 2007-08-15 13:50:38 +0000 Zeeshan Ali * gst/rtpmux/gstrtpdtmfmux.c: [MOVED FROM GST-P-FARSIGHT] more debug 20070815135038-f3f1e-9c7a5490a525c6e8753cb1b8c03354df99132b5c.gz 2007-08-23 21:22:25 +0000 philippe.kalaf@collabora.co.uk * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Sync jitterbuffer with CVS -bad 20070823212225-2425b-0fe69bf72539678dda45d615a09f1cbf502cc71a.gz 2007-08-20 18:50:32 +0000 Youness Alaoui * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] missing comment 20070820185032-4f0f6-0ab67b6ac40dd4e35a8fe53f3cb6daff65ce43b9.gz 2007-07-12 19:53:36 +0000 Olivier Crete * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Make buffer writable before writing into it 20070712195336-3e2dc-91a5fb797cfa4919d4e2f9a728c6d6fbd3b83d93.gz 2007-07-06 20:24:59 +0000 Olivier Crete * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Set pads active when adding them to a potentially running element 20070706202459-3e2dc-a3731f885725594def0a7be997fc7b3a739ee967.gz 2007-06-07 12:01:21 +0000 Olivier Crete * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Fix multiple ref leaks (patches by SP GLE) 20070607120121-3e2dc-061e9ef7a47b1b84fa8f8092f4b8bcc0e6db8c8c.gz 2007-05-28 15:25:05 +0000 Zeeshan Ali * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] send event to all src pads 20070528152505-f3f1e-039216c73dc93f64c49962c77a0253cb9cfec4d3.gz 2007-05-28 12:37:49 +0000 Zeeshan Ali * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] print a warning if receive an error iterating sinkpads 20070528123749-f3f1e-4c1eb3f511b5610143610a65a94d117f2c3d2580.gz 2007-05-28 12:28:08 +0000 Zeeshan Ali * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] deal with all the gst_iterator_next() return values 20070528122808-f3f1e-d301644c3be7633ec6dc5e28596e9346d2da6a50.gz 2007-05-25 12:31:16 +0000 Zeeshan Ali * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Return correct value from the event handler 20070525123116-f3f1e-131b37b5f4521618fe2f1320409a47e65b35ad2d.gz 2007-05-25 10:27:09 +0000 Zeeshan Ali * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Ville's original patch to fix the traversal of dtmf event 20070525102709-f3f1e-6c41d1ef934068a4f4e810e7e981b420075b0c98.gz 2007-03-29 13:52:50 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Set the correct ts-offset on the get_prop value 20070329135250-65035-a43e222d91d57c0a61cb3287586aaa29abf78674.gz 2007-03-29 13:52:23 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Refactorize state_change 20070329135223-65035-23a0107b2e397710f035c6e88cc0e49b65bb4d5d.gz 2007-03-29 13:36:22 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] set SSRC on the packets 20070329133622-65035-1be6e0aa85a71389f7d257b9cd3e13a73d6b745b.gz 2007-03-29 13:19:36 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Code clean-up and more debug output 20070329131936-65035-9d499e209e0d7a409c3aa0d1040778babf076179.gz 2007-03-28 11:22:19 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] Use own clock-base 20070328112219-65035-1ba5fefbc65059e9b0c860528a31062ceb6a7331.gz 2007-03-23 16:31:39 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] Only accept RTP streams that have the same clock-rate 20070323163139-65035-fc0b17b0b8a7a041f48994c4f26e96568168bf95.gz 2007-03-22 16:15:52 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpdtmfmux.c: [MOVED FROM GST-P-FARSIGHT] Some more code-cleanups 20070322161552-65035-bda96165e146b4f1d5fea1cc9576a7ab3abebc9e.gz 2007-03-22 15:42:51 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] return newpad instead of NULL and warn if failed to create a pad 20070322154251-65035-cdb6651e61c2eb0205cc8c24693b43f98a2da718.gz 2007-03-22 12:41:32 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Refactorize the RTPMux code 20070322124132-65035-0a3278147546e33f687097a43b775b3f6aa99f93.gz 2007-03-22 12:14:53 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpdtmfmux.c: [MOVED FROM GST-P-FARSIGHT] Some more doc fixing 20070322121453-65035-12d602272217b51bd97df4e5790024c399622dd3.gz 2007-03-22 11:32:28 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpdtmfmux.c: [MOVED FROM GST-P-FARSIGHT] More Refactoring 20070322113228-65035-bae34a79599e7de5293ed77b022361ccff822bb9.gz 2007-03-22 11:31:54 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpdtmfmux.c: [MOVED FROM GST-P-FARSIGHT] More documentation 20070322113154-65035-624850541a5b5fc3df231204be5a83d07239db28.gz 2007-03-21 16:33:11 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpdtmfmux.c: [MOVED FROM GST-P-FARSIGHT] Refactor the event handler function 20070321163311-65035-987e7f25d1ab5335b79f44b277abf15e4e37d317.gz 2007-03-21 14:52:44 +0000 zeeshan.ali@nokia.com * gst/rtpmux/Makefile.am: * gst/rtpmux/gstrtpdtmfmux.c: * gst/rtpmux/gstrtpdtmfmux.h: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: * gst/rtpmux/gstrtpmuxer.c: [MOVED FROM GST-P-FARSIGHT] Add RTPDTMFMux element 20070321145244-65035-9a01390b0dee3398e53199a1fa1d9352004f338e.gz 2007-03-21 12:31:49 +0000 zeeshan.ali@nokia.com * gst/rtpmux/Makefile.am: * gst/rtpmux/gstrtpmux.c: * gst/rtpmux/gstrtpmux.h: [MOVED FROM GST-P-FARSIGHT] Remove DTMF-specific code from RTP muxer and make it extendable 20070321123149-65035-b8a8f55ff78eed8cbb0042e827885edfc5438242.gz 2007-03-20 12:05:24 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Put more helpful description 20070320120524-65035-db27a7cf6307b511aeb3d996d26e790e367a7bad.gz 2007-03-16 15:16:41 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] remove the (commented-out) code for blocking the pads 20070316151641-65035-0123af387951f88594797c722e882cfe70240aff.gz 2007-03-16 13:14:44 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Drop buffers instead of blocking the sinkpads 20070316131444-65035-9c1345ad96108881f455d4b55a7f623cd302d0ed.gz 2007-03-14 17:16:18 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Implement stream locking, needed for DTMF 20070314171618-65035-e4d24b1606ce0a3e2e739f01833f61e4d7555eac.gz 2007-03-14 10:20:58 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] use GST_*_OBJECT instead of g_* 20070314102058-65035-e2442888f2e3e5a3a7659ad7954a4fba34749ce2.gz 2007-03-14 10:18:54 +0000 zeeshan.ali@nokia.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] No need to manage pads, parent does that for us 20070314101854-65035-ef5f4abde227102a1128835ab325905eae4c3726.gz 2007-03-14 09:03:58 +0000 zeenix@gmail.com * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] Fix copyright header 20070314090358-d014a-3a6d3eeeaaf5cb8ca3bca6a33e99a551f598bd48.gz 2007-03-07 08:53:07 +0000 zeeshan.ali@nokia.com * gst/rtpmux/.git-darcs-dir: * gst/rtpmux/Makefile.am: * gst/rtpmux/gstrtpmux.c: [MOVED FROM GST-P-FARSIGHT] The first implementation of RTP muxer 20070307085307-65035-833402413f99cb3f8be4883e92bad4c8722510c9.gz 2009-02-20 18:16:02 -0500 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfsrc.c: Document rtpdtmfdepay a bit 2009-02-20 17:41:37 -0500 Olivier Crête * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-dtmf.xml: * gst/dtmf/gstdtmf.c: Moved dtmf elements from gst-plugins-farsight to -bad 2009-02-20 17:40:57 -0500 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfdepay.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: Fix up documentation blobs SGML 2009-02-20 17:37:43 -0500 Olivier Crête * gst/dtmf/gstdtmf.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfcommon.h: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: Re-indent to Gst style 2009-02-18 13:30:44 -0500 Laurent Glayal * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Missing format directive 2008-12-04 21:21:44 -0500 Olivier Crête * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: [MOVED FROM GST-P-FARSIGHT] Allow setting a maximum duration to a RTP DTMF event 2008-12-04 21:11:17 -0500 Olivier Crête * gst/dtmf/gstrtpdtmfdepay.c: [MOVED FROM GST-P-FARSIGHT] Improve the minimum quanta to make it impossible for the duration to fall down to 0 2008-12-01 18:31:48 -0500 Olivier Crête * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: [MOVED FROM GST-P-FARSIGHT] Allow setting a minimum size of a sound quanta in the dtmf depayloader 2008-12-11 17:54:18 -0500 Olivier Crête * gst/dtmf/.git-darcs-dir: [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2008-12-01 17:37:10 -0500 Håvard Graff * gst/dtmf/gstrtpdtmfdepay.c: [MOVED FROM GST-P-FARSIGHT] Do wierd casting of the volume to make MSVC happy 2008-10-15 16:21:50 -0400 Olivier Crête * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Clarify the documentation of the "event-type" field when specifying dtmf events 2008-07-22 21:39:38 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Remove g_debugs 20080722213938-3e2dc-44a82d017fe66f3112301c410aa0b543de6156ad.gz 2008-06-13 23:57:23 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Take rate from the peers caps if possible 20080613235723-3e2dc-15690ee42708c539e1be12e20e076a5613faea96.gz 2008-06-13 23:41:44 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Put the sample rate in dtmfsrc into a variable 20080613234144-3e2dc-e60070943bec829b703b8821c7aa4351a02deebe.gz 2008-06-13 23:30:06 +0000 Olivier Crete * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Take the clock-rate from the caps in rtpdtmfsrc 20080613233006-3e2dc-a7d4e918643f4f8c1bb2cc2678558c654025920e.gz 2008-04-28 22:22:37 +0000 Olivier Crete * gst/dtmf/Makefile.am: [MOVED FROM GST-P-FARSIGHT] Link modules with libm where required 20080428222237-3e2dc-b1e9120c1e9ca1a510bfd7c27e2d45f0d4a12504.gz 2008-04-12 23:44:18 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfdepay.c: [MOVED FROM GST-P-FARSIGHT] Fix byte ordering issues with dtmfsrc and rtpdtmfdepay.. use of G_STRINGIFY to avoid error on MSVC 20080412234418-4f0f6-4828d1613dfcd564afd236dfc8fb57a299092f83.gz 2008-03-20 19:14:38 +0000 Youness Alaoui * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: [MOVED FROM GST-P-FARSIGHT] Fix copyrights again, per smcv's advice.. 20080320191438-4f0f6-671c9db5d996a4601df017ceab4af6d16469c966.gz 2008-03-19 21:17:31 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Make it clear that dtmfsrc also takes named events as input 20080319211731-3e2dc-26c729f6dc8db27e71cf6b22646a81530dbf862f.gz 2008-03-20 18:48:41 +0000 Youness Alaoui * gst/dtmf/gstrtpdtmfdepay.c: [MOVED FROM GST-P-FARSIGHT] debug message made into errors because that's what they are... 20080320184841-4f0f6-8a2d283297b02713dade0ae4acaa5f6e0f67eace.gz 2008-03-20 18:39:37 +0000 Youness Alaoui * gst/dtmf/gstrtpdtmfdepay.c: [MOVED FROM GST-P-FARSIGHT] Clean unused stuff... 20080320183937-4f0f6-bcb841cdc07f9e9677512f4b50b4b659a58c6783.gz 2008-03-20 18:39:12 +0000 Youness Alaoui * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: [MOVED FROM GST-P-FARSIGHT] Fix copyrights 20080320183912-4f0f6-689365d5a406632e3d088fac74e4fb6f8a4eb0ea.gz 2008-03-20 01:13:01 +0000 Youness Alaoui * gst/dtmf/Makefile.am: * gst/dtmf/gstdtmf.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Adding support for rtpdtmfdepay 20080320011301-4f0f6-d36a5d24be20336e36c4796d75476c9b5ee1a7e1.gz 2008-03-19 19:32:51 +0000 Olivier Crete * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] encoding name has to be upper-case 20080319193251-3e2dc-1581b33be9b486e35ec4948009677ccd5ffdc098.gz 2008-03-20 00:51:47 +0000 Youness Alaoui * gst/dtmf/gstrtpdtmfcommon.h: * gst/dtmf/gstrtpdtmfdepay.c: * gst/dtmf/gstrtpdtmfdepay.h: [MOVED FROM GST-P-FARSIGHT] Adding necessary files for rtpdtmfdepay 20080320005147-4f0f6-550fe22f70152f3aab3dcd7a6b02cbf81e89232d.gz 2008-03-20 00:50:41 +0000 Youness Alaoui * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Fix typos 20080320005041-4f0f6-9d22fa5d155e35b605ea85b1fd9e7197a882a1f0.gz 2008-02-16 13:41:40 +0000 Sjoerd Simons * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] dtmfsrc: Correctly set the endianess in the caps to the machines endianess 20080216134140-93b9a-40a3a9d7ac1679c5e0dfd24a6b91e4aba6cc6496.gz 2007-09-17 17:52:33 +0000 Olivier Crete * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Search&Replace oops 20070917175233-3e2dc-57f579c4b890993f49fa8e9e6470a3eb79d2b922.gz 2007-09-17 17:51:33 +0000 Olivier Crete * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] events dont yet belong in the caps 20070917175133-3e2dc-fd1d83b7826b898110fc571ae7c3440f1887434d.gz 2007-09-17 16:08:20 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Add patch to make it work with maemo dsp sources that payload incorrectly 20070917160820-3e2dc-06b1b1d1b0918b30dabea5a0714cb732b3b8d8dd.gz 2007-09-17 04:26:49 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Oops, set to no preroll when playing->paused too 20070917042649-3e2dc-94adb6aa0617e815a6e233232dabb4bbc48dc82c.gz 2007-09-17 00:36:54 +0000 Olivier Crete * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Complete port to basesrc 20070917003654-3e2dc-db0f84dabd9dd1ac929a0461865b8aaa8ef91a77.gz 2007-09-17 00:24:12 +0000 Olivier Crete * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Add caps negotiation function 20070917002412-3e2dc-ca266816e9629746e9083c5bb8b7f73b94a9b2b0.gz 2007-09-17 00:16:59 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Properly free non-start events 20070917001659-3e2dc-a571777e3ecfb90989f87412f554aa10a31cc2ca.gz 2007-09-17 00:15:52 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Make interval and packet_redundancy into uint 20070917001552-3e2dc-60032e547b3669b87317c981d985c156aab91b40.gz 2007-09-16 19:44:08 +0000 Olivier Crete * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Make the rtp dtmf src use basesrc 20070916194408-3e2dc-734000130dce2434a014acf843d641ff0e60aa5a.gz 2007-09-16 19:41:01 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Make dtmf src code nicer 20070916194101-3e2dc-a8be8c509c65400d1d3962da02e67d15d2054316.gz 2007-09-16 19:40:52 +0000 Olivier Crete * gst/rtpdtmf/.git-darcs-dir: [MOVED FROM GST-P-FARSIGHT] Remove unused directory 20070916194052-3e2dc-44d7f4cb2f220761b65e2b9b6cec4b3c6f8be7c5.gz 2007-09-14 04:20:42 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Implement stopping in a nice thread safe way 20070914042042-3e2dc-1fe257ff4b72aca4b0eb5f285a14650b8df268c3.gz 2007-09-14 04:18:34 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Remove get_times (Wim says its only good for really fake sources) 20070914041834-3e2dc-fff4d5da2a145f19e7b610a1027d2c4d4bc5eae0.gz 2007-09-13 21:21:45 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] using the unlock method of basesrc 20070913212145-4f0f6-0e438a681bf1651c0cc0d8fa3269aed3f1668b6b.gz 2007-09-13 21:12:26 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] more debug 20070913211226-4f0f6-bc32b5828fc8e0323c8a6eee779a38145aacd593.gz 2007-09-13 20:46:14 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] added debugs 20070913204614-4f0f6-68c2a69ae7a1efca6e13c116dbad7f9b686f0242.gz 2007-09-13 19:20:53 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Make sure to unlock the thread when going to ready and to flush the queue when moving to paused or playing 20070913192053-4f0f6-76c3925380d1a30988286170535a65dea64a5583.gz 2007-09-13 17:55:20 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Changed dtmfsrc into a subclass of GstBaseSrc 20070913175520-4f0f6-16ca4bf93690072f3e836d1c8a5b52cf7a421916.gz 2007-09-04 22:57:53 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Add another fix for a possible race condition 20070904225753-4f0f6-5ba8c4260c002bb27eb98e9faba3c15799357b57.gz 2007-09-04 21:52:24 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Add comment to explain push back 20070904215224-3e2dc-d92ac1f403dcf571546a7c53f18809f840eea51d.gz 2007-09-04 20:55:09 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Properly do the locking to avoid race conditions with clock unscheduling 20070904205509-3e2dc-da19900b51af6aedb6547f4f392bef4d1061dec2.gz 2007-09-01 00:03:24 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] oups, I did it again... 20070901000324-4f0f6-3d8b46691ee520537b06c511a5e732f5b812b844.gz 2007-08-31 23:54:28 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] oups, sorry.. DTMF, not RTP_DTMF for this file... 20070831235428-4f0f6-00b606bfb4892e4f217c440b611cc794ab0de55a.gz 2007-08-31 23:44:13 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Fixes the deadlock when pausing the dtmfsrc and rtpdtmfsrc. Had to push something on the async queue to release the blocking async_queue_pop(). Thanks to Olivier for the solution. 20070831234413-4f0f6-793cf35fc43636e7275258cc7063fc068f5efa0a.gz 2007-08-28 22:15:34 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] ClockID when waiting for buffer is now unscheduled when stopping the task. Various fixes to avoid bugs (thanks to -Wall -Werror). Fixes to allow the merge of the branch. 20070828221534-4f0f6-b0d6a4fe48c4e2a16b9ff69cb310087c970ce48e.gz 2007-08-28 17:15:46 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Cleaned up the code a bit, no use of GST_* and return value verification from gst_* 20070828171546-4f0f6-bdeb4b1b7f99f9464aabe5c43bd4a4d2025262b6.gz 2007-08-27 19:56:10 +0000 Olivier Crete * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Fix overly long lines and tabs 20070827195610-3e2dc-396a3fa01e16f184e4109c71fe2deb6e516bdf0d.gz 2007-08-27 19:26:18 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] untabbified dtmfsrc 20070827192618-4f0f6-77d68070464f1b5f9a46cb6eec2d922340143c04.gz 2007-08-27 17:24:24 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Fix RTP timestamps by sending a new_segment event to the payloader 20070827172424-4f0f6-d20907e3d436d50bfe74eb4fc3d2d6d7b6b6dbc5.gz 2007-08-27 17:23:39 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Better handling of packets, we send the same duration for all packets to avoid huge packets when min duration defines are modified. 20070827172339-4f0f6-cc93304437ea376fff6458c74c46c19f6920d329.gz 2007-08-27 17:23:22 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Changing minimum values to work better on some gateways 20070827172322-4f0f6-5bf2bffa59a8244538dced795fa7d7649452ca91.gz 2007-08-22 20:16:53 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] The DTMF tone generator now respects the volume argument passed in the event 20070822201653-4f0f6-8b7ff874006e11f5a74d0fd91e5a9a43cd082ada.gz 2007-08-22 18:01:33 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] don't know why I did that... 20070822180133-4f0f6-6a7382f6c7d3630f91da384e1904763c7ea6fa1a.gz 2007-08-22 17:55:33 +0000 Youness Alaoui * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Ported the event queue work from dtmfsrc to rtpdtmfsrc Added a queue based system for the rtpdtmfsrc. Now it waits for start/stop messages on the queue, and makes sure that the minimum duty cycle (120ms) is respected between each tone, including inter-digit silence. 20070822175533-4f0f6-f27414c406f1f7b00c9a9084a988cf3a7930fe5c.gz 2007-08-22 17:54:44 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] ouch, printing with arguments but without %s.. that made it segfault a few times... 20070822175444-4f0f6-445ea6ce7a9668d04cf999af772a504ec74fb67a.gz 2007-08-22 17:51:26 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Moved the timestamp from the event to dtmfsrc structure since we have only one event at a time, so let's keep it stored in the dtmfsrc struct 20070822175126-4f0f6-53bcda2bd8ae8c56d29e62e69ac19a30e08ad350.gz 2007-08-20 20:38:26 +0000 Youness Alaoui * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Added a queue based system for the dtmfsrc. Now it waits for start/stop messages on the queue, and makes sure that the minimum duty cycle (120ms) is respected between each tone, including inter-digit silence. 20070820203826-4f0f6-750a22b612a5e495e767666934465c34fe32074b.gz 2007-08-20 18:48:52 +0000 Youness Alaoui * gst/dtmf/Makefile.am: * gst/dtmf/gstdtmf.c: * gst/dtmf/gstdtmfsrc.c: * gst/dtmf/gstdtmfsrc.h: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Added dtmfsrc, a DTMF Tone Generator, and made it part of the 'dtmf' plugin. 20070820184852-4f0f6-a0d85e67708290aebafa89ab79d3cedd5815b620.gz 2007-08-20 18:48:00 +0000 Youness Alaoui * gst/dtmf/.git-darcs-dir: * gst/dtmf/Makefile.am: * gst/dtmf/gstrtpdtmfsrc.c: * gst/dtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Moved rtpdtmf to dtmf directory 20070820184800-4f0f6-fa33ea974510161de8c9951c39087af3613b65a4.gz 2007-07-12 19:57:15 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Send all packet from the streaming thread, including the last one 20070712195715-3e2dc-6848c70a7f0137c91fa882a8efb6dbf83891ae13.gz 2007-07-12 19:55:28 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Put non-zero duration in first packet and put a minimum duration of 50ms 20070712195528-3e2dc-d46edeaab84fb55e74842bdcf4f8792dfcdb0457.gz 2007-07-12 16:23:28 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Fix RTP timestamp on dtmf packets 20070712162328-3e2dc-98c1303f4a52b891ce59bf88e07d29f4e2dfc974.gz 2007-07-11 15:52:02 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Only set marker on very first packet of an event 20070711155202-3e2dc-f7ea3abd2cb0ca2937ea4508e6e301baaa6e2154.gz 2007-07-11 15:51:57 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Send on packet start time 20070711155157-3e2dc-ee0e9fc13d35296593005267a2417dd65e790d29.gz 2007-07-11 15:50:56 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] RTP timestamp is the time of the beginning of the dtmf event 20070711155056-3e2dc-cb5cda73fbf7df1c545cb0321b0e339914c5897f.gz 2007-04-24 20:02:52 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] 80 column is enough for everyone 20070424200252-3e2dc-d1bc17266afff2599129a25d44338062372f7ea3.gz 2007-04-24 19:31:55 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Add redundancy and interval properties to rtpdtmfsrc (patch by SP GLE ) 20070424193155-3e2dc-66688001e7b529c46f108633cd9520347c3c8c3e.gz 2007-05-04 19:52:51 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Only send dtmf if the method is unspecified or is 1 20070504195251-3e2dc-b95b4b8e8dad87962cf39ec2ee67b6f1b619e9bd.gz 2007-03-08 22:35:59 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Make documentation consistent with itself 20070308223559-3e2dc-cc20fe571370bc51bf963cc3df1b8ab4a3ddc20b.gz 2007-04-12 20:04:35 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Use segment to calculate dtmfsrc rtp timestamp 20070412200435-3e2dc-b5cc26b12b6e8b89f131fd27f0e4627746e85697.gz 2007-04-02 12:46:35 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Clean-up and refactorize dtmfsrc code 20070402124635-65035-3d13244461c1dd1fcc96b74124ad7a74d2ff0144.gz 2007-03-30 15:43:03 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Ooops, little typo 20070330154303-3e2dc-9f6edcde24d30caea8ea876b24a3a680d40b2ea1.gz 2007-03-30 00:17:00 +0000 Olivier Crete * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Make it generate the proper rtp timestamps in sync with the live source 20070330001700-3e2dc-bbf954e4edec0615c4eee603fbc6ab8a7d89436f.gz 2007-03-29 11:42:57 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Increment the ts after setting the buffer's ts 20070329114257-65035-c8686ab4ce20b1f36f3dac120485ade5cd90aac9.gz 2007-03-29 10:39:46 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Calculate the rtp ts before gst ts get incremented 20070329103946-65035-f74e3a0140c57e941444bb837d6053ad1c3cf567.gz 2007-03-29 10:39:04 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Some code-cleanup 20070329103904-65035-db08cc7c3098b60a556d3809de912cd0e1a545c1.gz 2007-03-29 10:38:24 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Initialize the GstSegment at the right time 20070329103824-65035-9ab3a0a03c5f9329cd4625ae6567c2c1fd4a73d8.gz 2007-03-26 10:57:12 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Call set_caps when we have all the params 20070326105712-65035-3e3dfce0b50d61eafda846bee0a6d66c3541c6ed.gz 2007-03-23 16:29:22 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Set caps on the buffer before pushing it 20070323162922-65035-9e4be5449c79c0a459965ee07adb4a8143c4c1d5.gz 2007-03-14 17:17:56 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Request for stream lock when generating DTMF packets 20070314171756-65035-0b497dfac203ff4f579525485d5804e5f5093b3f.gz 2007-03-07 11:41:09 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Correct caps printout 20070307114109-65035-124202884918a9c8a803080d6967234539d24b97.gz 2007-02-16 12:06:06 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Add doc-section comments 20070216120606-65035-6e7d28721dc0872f3f55ba7ccd4fed3d66f8175f.gz 2007-02-15 13:48:53 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Add copyrights 20070215134853-65035-50fe5f8e999ae86a1e3ba0dbdece4911eb9dcca0.gz 2007-02-15 13:35:36 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] No need to handle downstream events 20070215133536-65035-648b791d404bf06900bd2698d925117c89743db9.gz 2007-02-15 12:26:55 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Attempt to correct event handling 20070215122655-65035-47070d9a28c08d9353b04d2d9301e29b7ee72b83.gz 2007-02-15 10:26:29 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: [MOVED FROM GST-P-FARSIGHT] Use pause_task instead of stop_task to avoid any possible deadlocks 20070215102629-65035-a48c773661e385a91e022e0ac1da0862c4206f85.gz 2007-02-15 10:10:30 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Put correct seq and timestamps on the packets 20070215101030-65035-7146a3c4a8d0feab513d13a207b2cdc5de311f03.gz 2007-02-14 13:55:01 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Fix the copyright notice 20070214135501-65035-e90753b1f6525f7b9c0ac2eb7e40cef7ca673e68.gz 2007-02-14 13:13:52 +0000 zeeshan.ali@nokia.com * gst/rtpdtmf/.git-darcs-dir: * gst/rtpdtmf/Makefile.am: * gst/rtpdtmf/gstrtpdtmfsrc.c: * gst/rtpdtmf/gstrtpdtmfsrc.h: [MOVED FROM GST-P-FARSIGHT] Add RTP DTMF event packet generator element and test app for it 20070214131352-65035-3c14a1047c3cd6696f3a716a62b21d3f4b9da62b.gz 2009-01-30 09:03:42 +0100 Edward Hervey * autogen.sh: autogen.sh: actually setting up a symbolic link for the pre-commit hook 2009-02-21 17:45:09 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Add read-only property to get the structural metadata 2009-02-21 17:40:01 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfdemux: Add MPEG video bitrate to the tags if available 2009-02-21 17:38:49 +0100 Sebastian Dröge * gst/mxf/Makefile.am: * gst/mxf/mxf.c: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfquark.c: * gst/mxf/mxfquark.h: * gst/mxf/mxftypes.h: mxfdemux: Post structural metadata tree as tag on the bus This will later be used to keep the structural metadata when remuxing an MXF file and can also be used in Pitivi for example to know the file structure and to select what should be used and played. 2009-02-21 16:09:27 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: mxfdemux: Fix calculation of AES3 bitrate tag 2009-02-21 16:05:48 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: mxfdemux: Add helper function to convert MXFraction to gdouble and use it 2009-02-21 16:00:39 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: mxfdemux: Only store the main descriptor in source packages For the tracks we still resolve the descriptors but the source package only contains the descriptor it really references instead of all subdescriptors of multiple descriptors. This makes it easier later to serialize the structural metadata again. 2009-02-17 17:37:49 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Set free'd memory to NULL to prevent a double free later in some cases 2009-02-15 09:51:25 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: mxfdemux: Don't use generic metadata parsers for unknown metadata, the results are useless anyway 2009-02-19 11:36:45 +0000 Zaheer Merali * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/flutspatinfo.c: * gst/mpegdemux/flutspatinfo.h: * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/flutspmtinfo.h: * gst/mpegdemux/flutspmtstreaminfo.c: * gst/mpegdemux/flutspmtstreaminfo.h: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: mpegtsdemux: s/fluts/mpegts Change all definitions from fluts to mpegts. 2009-02-10 18:58:40 +0000 Olivier Crête * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Add doc infrastructure to valve 2009-02-10 18:52:54 +0000 Olivier Crête * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: Document the GstValve 2009-02-10 18:03:26 +0000 Olivier Crête * configure.ac: * docs/plugins/inspect/plugin-valve.xml: Moved valve from gst-plugins-farsight to -bad 2009-02-10 17:57:16 +0000 Olivier Crête * gst/valve/gstvalve.c: Rename fsvalve to valve 2009-02-10 17:55:47 +0000 Olivier Crête * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: Re-indent valve in gst style 2008-12-13 00:31:45 -0500 Olivier Crête * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Ignore errors if dropping is set to true 2008-12-11 17:54:18 -0500 Olivier Crête * gst/valve/.git-darcs-dir: [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2008-12-10 17:00:33 -0500 Olivier Crête * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Add getcaps proxying to the valve 2008-08-20 14:11:02 -0400 Olivier Crête * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: [MOVED FROM GST-P-FARSIGHT] Rebase valve onto gstelement instead of basetransform 2008-08-19 18:49:51 -0400 Olivier Crête * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Revert "Fix refcounting issues in prepare_output_buffer" This reverts commit 65dd460f0a3a9c4882e638c86208f74ef62c3460. 2008-08-05 11:30:57 +0000 sjoerd@luon.net * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Fix refcounting issues in prepare_output_buffer 20080805113057-be0f2-9dc270781f0a0f21c616ed11dbd1f198fd1b326e.gz 2008-04-09 16:32:21 +0000 Olivier Crete * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Remove unused dispose method in valve 20080409163221-3e2dc-92ccb2db874e46e0d92c15520577c1be0e2bc617.gz 2007-12-19 20:32:30 +0000 Olivier Crete * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Dont hold the object lock while calling base alloc function 20071219203230-3e2dc-6519175d8d81496515b2d9060ac316650560f691.gz 2007-12-19 20:32:18 +0000 Olivier Crete * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: [MOVED FROM GST-P-FARSIGHT] Set the DISCONT flag after dropping buffers 20071219203218-3e2dc-bc5f03d88ff5837040b9214de016cc142776dfc2.gz 2007-12-19 00:57:39 +0000 Olivier Crete * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: [MOVED FROM GST-P-FARSIGHT] Use do the alloc_buffer function in the valve 20071219005739-3e2dc-2a0fdfa2f38f03ab4791fe5c4ab85e8790113683.gz 2007-11-21 20:08:58 +0000 Olivier Crete * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Only set passthrough to TRUE on newer versions of gst 20071121200858-3e2dc-b16cdeabbc3c0562c6fc7b11b9b9792c910f569e.gz 2007-11-21 18:17:29 +0000 Olivier Crete * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Compare minor, not major 20071121181729-3e2dc-a5997c3b7f5c86966370969714facf8ee242659d.gz 2007-10-26 22:37:49 +0000 Olivier Crete * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Make the valve element work with gst < 0.10.13 20071026223749-3e2dc-18f685a4e45fbdce677ac777586876fc719d7222.gz 2007-10-24 22:42:46 +0000 Olivier Crete * gst/valve/Makefile.am: * gst/valve/gstvalve.c: [MOVED FROM GST-P-FARSIGHT] Rename valve to fsvalve 20071024224246-3e2dc-c54216af2ef0ef3f1a2206d723e87be2a23ab8ed.gz 2007-10-24 22:41:47 +0000 Olivier Crete * gst/valve/.git-darcs-dir: * gst/valve/Makefile.am: * gst/valve/gstvalve.c: * gst/valve/gstvalve.h: [MOVED FROM GST-P-FARSIGHT] Add valve element 20071024224147-3e2dc-f28ab0c073e283894b65c22c4f44397c897dec01.gz 2009-02-10 19:20:26 +0000 Olivier Crête * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: Add some documentation to the siren enc/dec plugins 2009-02-10 19:20:19 +0000 Olivier Crête * gst/siren/gstsiren.h: * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: Re-indent the siren stuff to be gst style 2009-02-10 17:29:05 +0000 Olivier Crête * configure.ac: * docs/plugins/inspect/plugin-gstsiren.xml: Moved siren from gst-p-farsight to -bad 2009-02-10 17:23:38 +0000 Olivier Crête * gst/siren/Makefile.am: * gst/siren/gstrtpsirendepay.c: * gst/siren/gstrtpsirendepay.h: * gst/siren/gstrtpsirenpay.c: * gst/siren/gstrtpsirenpay.h: * gst/siren/gstsiren.c: Move siren rtp pay/depay to good 2008-12-11 17:54:18 -0500 Olivier Crête * gst/siren/.git-darcs-dir: [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2008-10-05 22:03:05 -0400 Olivier Crête * gst/siren/gstsirendec.c: [MOVED FROM GST-P-FARSIGHT] Add underscore to make the encoder like the decoder 2008-10-05 22:01:44 -0400 Olivier Crête * gst/siren/gstsirenenc.c: [MOVED FROM GST-P-FARSIGHT] Rename offset to out_offset to make its meaning clearer 2008-10-05 22:00:27 -0400 Olivier Crête * gst/siren/gstsirendec.c: [MOVED FROM GST-P-FARSIGHT] Check the size of the input buffer, not the output buffer 2008-09-16 15:40:04 -0400 Olivier Crête * gst/siren/gstsirendec.c: [MOVED FROM GST-P-FARSIGHT] Preserve timestamp 2008-07-04 22:21:03 +0000 Olivier Crete * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: [MOVED FROM GST-P-FARSIGHT] Remove useless checks, document locking 20080704222103-3e2dc-47a7f49c414f98a188ffc42b07189daf5147483b.gz 2008-07-04 22:17:43 +0000 Olivier Crete * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: [MOVED FROM GST-P-FARSIGHT] make sirenenc thread safe 20080704221743-3e2dc-f93da86438f753e14be25166aee45f8802f7d100.gz 2008-07-04 20:18:30 +0000 Olivier Crete * gst/siren/gstsirendec.c: * gst/siren/gstsirenenc.c: [MOVED FROM GST-P-FARSIGHT] Replace use GST_DEBUG_OBJECT in sirenenc 20080704201830-3e2dc-8f3e401aaa594c8cc5853b73f41ca5cb047ee2d3.gz 2008-07-04 20:17:44 +0000 Olivier Crete * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: * gst/siren/gstsirenenc.c: [MOVED FROM GST-P-FARSIGHT] Port sirendec to Gstelement 20080704201744-3e2dc-99bf7b86e42da363d8c826449d84b43751572d5e.gz 2008-07-04 20:04:54 +0000 Olivier Crete * gst/siren/gstsirenenc.c: [MOVED FROM GST-P-FARSIGHT] Release ref at the end of chain 20080704200454-3e2dc-386f2685882a74d01ce503f91396ea37506dbe83.gz 2008-07-04 20:03:15 +0000 Olivier Crete * gst/siren/gstsirenenc.c: [MOVED FROM GST-P-FARSIGHT] Remove useless call to peek_parent 20080704200315-3e2dc-6b30efd2d32b6ca96609f4bdc0c3e286f4441746.gz 2008-07-04 20:00:29 +0000 Olivier Crete * gst/siren/gstsirendec.c: [MOVED FROM GST-P-FARSIGHT] Make GstSirenEnc use GST_*_OBJECT appropriately 20080704200029-3e2dc-f68fdaaa8929039fd8413ff0bf8ff514f6e4fbe1.gz 2008-07-04 19:51:02 +0000 Olivier Crete * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: [MOVED FROM GST-P-FARSIGHT] Port sirenenc to gstelement 20080704195102-3e2dc-cd7687512ac560faaf15f53e1e262d1874a36cdf.gz 2008-04-28 22:22:37 +0000 Olivier Crete * gst/siren/Makefile.am: [MOVED FROM GST-P-FARSIGHT] Link modules with libm where required 20080428222237-3e2dc-b1e9120c1e9ca1a510bfd7c27e2d45f0d4a12504.gz 2008-04-12 23:43:25 +0000 Youness Alaoui * gst/siren/gstrtpsirendepay.c: [MOVED FROM GST-P-FARSIGHT] Removed debug output 20080412234325-4f0f6-36b946a7ca3ab4e5802917b8930f036c50a93a29.gz 2008-04-10 23:43:28 +0000 Youness Alaoui * gst/siren/common.h: [MOVED FROM GST-P-FARSIGHT] Oups, typo 20080410234328-4f0f6-962e375e78da05eab52892a57d3226fdd2ffc86d.gz 2008-04-10 07:01:16 +0000 Youness Alaoui * gst/siren/.git-darcs-dir: * gst/siren/Makefile.am: * gst/siren/common.c: * gst/siren/common.h: * gst/siren/dct4.c: * gst/siren/dct4.h: * gst/siren/decoder.c: * gst/siren/decoder.h: * gst/siren/encoder.c: * gst/siren/encoder.h: * gst/siren/gstrtpsirendepay.c: * gst/siren/gstrtpsirendepay.h: * gst/siren/gstrtpsirenpay.c: * gst/siren/gstrtpsirenpay.h: * gst/siren/gstsiren.c: * gst/siren/gstsiren.h: * gst/siren/gstsirendec.c: * gst/siren/gstsirendec.h: * gst/siren/gstsirenenc.c: * gst/siren/gstsirenenc.h: * gst/siren/huffman.c: * gst/siren/huffman.h: * gst/siren/huffman_consts.h: * gst/siren/rmlt.c: * gst/siren/rmlt.h: * gst/siren/siren7.h: [MOVED FROM GST-P-FARSIGHT] Added Siren encoder/decoder/payloader/depayloader 20080410070116-4f0f6-72ffbdbb262f07bfabd1e469973a01b3359bee45.gz 2009-02-10 18:46:03 +0000 Olivier Crête * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/liveadder/liveadder.h: Add liveadder to the docs 2009-02-10 18:38:11 +0000 Olivier Crête * gst/liveadder/liveadder.c: Document the liveadder 2009-02-10 16:18:32 +0000 Olivier Crête * configure.ac: * docs/plugins/inspect/plugin-liveadder.xml: * gst/liveadder/liveadder.c: * gst/liveadder/liveadder.h: Moved liveadder from gst-plugins-farsight to -bad Re-indent liveadder in gst style and add it to configure 2008-12-13 00:09:46 -0500 Olivier Crête * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Use log for message thats on every buffer 2008-12-11 17:54:18 -0500 Olivier Crête * gst/liveadder/.git-darcs-dir: [MOVED FROM GST-P-FARSIGHT] Remove .git-darcs-dir files 2008-08-27 17:16:27 +0200 Edward Hervey * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] liveadder : Handle jitter in incoming buffers Incoming buffers (especially those from an RTP connection) might have slight timestamp jitter. This is normally handled by audiosink (accepting up to 500ms of jitter). Here we accept a maximum jitter of 10ms. If a buffer is within 10ms of the expected time, we correct its timestamp. 2008-07-04 18:57:21 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Add handling of position query to liveadder 20080704185721-3e2dc-7a687e346e74b44fa847c5e5b6eb64c3e0949764.gz 2008-05-21 17:20:05 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Replace C99 llabs with C89 code 20080521172005-3e2dc-8e637d1daa0e27cc2edae1fdfd0dbf23896fb5bc.gz 2008-05-15 01:22:57 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Reset vars before restarting thread on flush stop 20080515012257-3e2dc-e3521752cf3eaf2b8767f4c620eadfc24a8e8e31.gz 2008-05-15 01:22:27 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Implement first version of seeking 20080515012227-3e2dc-7f53f78d1c3dfdcdb6e7ad53e6c7f16d5e998a05.gz 2008-05-15 01:21:42 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Add duration query from adder 20080515012142-3e2dc-2768199183bfb9d569be1389e382bedc02e3e95e.gz 2008-05-15 00:02:14 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Move flush stop inside where it belongs 20080515000214-3e2dc-cda5cddd1ead5c48a554e9e9bc75ae68437bcdfb.gz 2008-05-14 23:49:48 +0000 Olivier Crete * gst/liveadder/liveadder.c: * gst/liveadder/liveadder.h: [MOVED FROM GST-P-FARSIGHT] Have the liveadder remember if its playing or not 20080514234948-3e2dc-9064a27a54aef598444aa6ad6463345979120828.gz 2008-05-14 23:49:10 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Push out buffer if we're not playing while there is no clock 20080514234910-3e2dc-1096eb7dc3fada19afc81dcd536d9edc821d0da9.gz 2008-05-14 23:26:43 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Empty the queue on flush start 20080514232643-3e2dc-5a3f52a3fd3771164dea95bd14410d76b4fce2aa.gz 2008-05-14 23:17:52 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Reset pad private on flush stop 20080514231752-3e2dc-113fec2faafc2dc11c1eaa818cb488b71e601f9b.gz 2008-05-14 23:16:43 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Pass pad as pad to reset_pad_private 20080514231643-3e2dc-006960b9cdc3ce8e1f890dc6d194778cbc7c9736.gz 2008-05-02 19:10:04 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Print debug message if we return non-ok from chain 20080502191004-3e2dc-f1f7237c06c1158cf27e29d32a69de06f7112506.gz 2008-05-02 19:09:54 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Don't return EOS if we have no pads 20080502190954-3e2dc-41351225e909e6d0837a6a60e187d33ab186ad76.gz 2008-05-01 20:31:54 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Check that the format is NOT time 20080501203154-3e2dc-780e46b1f0fe76a66e2d79a2eb85d764ff5f182f.gz 2008-04-28 22:17:37 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Don't use g_queue_clear() 20080428221737-3e2dc-bb8e4748751c29e0857313a09f85067ab12c3fe4.gz 2008-05-01 20:09:40 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Pad push event after the lock has been unlocked 20080501200940-3e2dc-ae5fec5f79f32777bba649d0d700d49f7bedff40.gz 2008-05-01 18:25:54 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Create generic segment is none received and refuse non-time segments 20080501182554-3e2dc-ace5ca000414428d6d94478adc5927c9f91975df.gz 2008-04-29 14:08:02 +0000 Simon McVittie * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Add missing semicolon (did anyone test this?!) 20080429140802-53eee-41fdb4391eddb125b7e34019427cfa5dc8afd6c0.gz 2008-04-29 00:36:00 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Robustness check, make sure the queue is not empty before using the head element 20080429003600-4f0f6-708c654b65812caeb3612248dbe0b2e62567c250.gz 2008-04-29 00:34:12 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Remove useless condition 20080429003412-4f0f6-9e890ad0ac442791a8b22650a75cb754d7f2d723.gz 2008-04-29 00:03:39 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] check against audio_buffer_clip which can return NULL if the buffer is outside the clipping segment 20080429000339-4f0f6-7e4e31f066b87e29265ddb3978929e51efbff47d.gz 2008-04-28 23:49:48 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Fix object locking in setcaps 20080428234948-4f0f6-4586434b4308e114f495e926996fc19483c1056f.gz 2008-04-28 23:49:35 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Use g_cond_broadcast instead of g_cond_signal 20080428234935-4f0f6-e51fab31772b32f2fb080ad70c6bedefc5c26dc6.gz 2008-04-28 23:28:51 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Max latency should also be increased by our own latency 20080428232851-4f0f6-05f9a89403cd54211f2f4a6595704270eab9616f.gz 2008-04-28 22:36:06 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Fix deadlock on invalid timestamp error 20080428223606-3e2dc-963e48b33efaf84c16d4ec4b789a6dfb2d9358ad.gz 2008-04-28 16:19:58 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Added comment for clarity 20080428161958-4f0f6-cbaa166fbde99013b555c69ab48d964d75773a7f.gz 2008-04-28 16:12:35 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] added TODO comments 20080428161235-4f0f6-fbc78533d29d37b65add6f6046fec17ce5e30cae.gz 2008-04-28 15:59:27 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] check_eos will always return FALSE here.. 20080428155927-4f0f6-1a93e295d3df68a96367b75060a89a947efa8944.gz 2008-04-28 15:49:56 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] added comment on the no clock error 20080428154956-4f0f6-7e24ed31f9c822e4323b681a54bc23f03c1a325e.gz 2008-04-28 15:48:50 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] error if no clock is available 20080428154850-4f0f6-38fdc4134835c457d0054301579d8cd4cbd4989a.gz 2008-04-25 21:04:56 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] renaming unused arg 20080425210456-4f0f6-ab1cdc944c9bcd779504292b21dc1787d6cb62a1.gz 2008-04-25 20:39:38 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] removed unused user_data and commented line 20080425203938-4f0f6-787778475b646461da40f3e0000a10bc96e142bc.gz 2008-04-25 20:37:35 +0000 Youness Alaoui * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] remove unused cases and empty switch 20080425203735-4f0f6-c0442fcf57e3f08b81bc1be3d69f5cfa0257b52a.gz 2008-04-28 18:34:09 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Explicit the discont flag mangling 20080428183409-3e2dc-4db2505eeca033a634253b6c2d2f4f1398e9fcca.gz 2008-04-28 18:07:11 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Unref events when they are dropped 20080428180711-3e2dc-eb659787f179562f15402c819f188de398deef2d.gz 2008-04-24 22:46:27 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Use Glib G_{MAX,MIN}{U,}INT{8,16,32} macros 20080424224627-3e2dc-1036bc58b6b4db2f9f12831cdbae3bc613facbbf.gz 2008-04-21 03:26:14 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Unlock liveadder empty buffer gcond on flush 20080421032614-3e2dc-4ed29e1583ff684338ba5d7611f60b1a7eaff563.gz 2008-04-18 19:29:41 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Unref event instead of leaking it 20080418192941-3e2dc-352e25f6ab291612be1dc139790303a1333f65d7.gz 2008-04-03 17:09:56 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] non-perfect stream isnt an error, lets just log it 20080403170956-3e2dc-663f6af8ce067f44ca251a89aebf262d4b8a2869.gz 2008-04-03 16:54:31 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] We retimestamp to the running time, starting the segments from 0 should therefore work 20080403165431-3e2dc-d981ac2f9ea7fd3c8d2be4d22f1817cf78c614e4.gz 2008-04-03 16:54:15 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Do the min/max of the latencies correctly 20080403165415-3e2dc-c1124bd84e67cf8a911a14bb123b8731da9f4fc4.gz 2008-04-03 02:14:25 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Fix indentation 20080403021425-3e2dc-efd73a6eed0676e158af70484d4e5c42ea75de74.gz 2008-04-03 02:03:18 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Activate pads before adding them in case we're already playing 20080403020318-3e2dc-afd58f992c0b3057221b91034b2fcd91f296e52d.gz 2008-04-03 02:02:53 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] For latencies, use the min of the max and the max of the min (and the min wins if they cross) 20080403020253-3e2dc-dda7e471073ee75a6f60e845c3c546af9be19675.gz 2008-04-03 00:57:28 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Rename next_ts into expected_ts, make sure all buffers have a duration 20080403005728-3e2dc-8245ce1bfeebebfb8f75073253b3c0e3c4b5f596.gz 2008-04-03 00:40:12 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Don't try to set the discont flag if the duration of the previous incoming buffer was not valid 20080403004012-3e2dc-6f95520c928c347508bdf6188c873ed724ad2dd7.gz 2008-04-02 22:46:27 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Reset buffers offsets to none 20080402224627-3e2dc-d3ee8c7d0c14131017842d8159f7f684d0ccef6d.gz 2008-04-02 22:46:12 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Import adder src event handling 20080402224612-3e2dc-21a682b18fe18782bf7fa48983c13c1ad86dc5a1.gz 2008-03-31 18:44:21 +0000 Olivier Crete * gst/liveadder/liveadder.c: * gst/liveadder/liveadder.h: [MOVED FROM GST-P-FARSIGHT] Push out a simple newsegment event 20080331184421-3e2dc-69544b5b03ae3bb8c1e3f967974fd250d04056b5.gz 2008-03-31 18:44:04 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Don't return EOS if there is no sink pad 20080331184404-3e2dc-482a134b47eadcd9f1f9d144c02ab1145028fa07.gz 2008-03-31 17:11:16 +0000 Olivier Crete * gst/liveadder/liveadder.c: [MOVED FROM GST-P-FARSIGHT] Reduce locking a bit and cleanup code a bit 20080331171116-3e2dc-5ddfb0e459004780d3f7a660c64f58243936a844.gz 2008-03-29 00:45:18 +0000 Olivier Crete * gst/liveadder/.git-darcs-dir: * gst/liveadder/Makefile.am: * gst/liveadder/liveadder.c: * gst/liveadder/liveadder.h: [MOVED FROM GST-P-FARSIGHT] Add liveadder element 20080329004518-3e2dc-40e4746fe82bbc5a871f03fe6ff6048f436c9f85.gz 2009-02-16 16:08:31 +0100 Sebastian Dröge * ext/soundtouch/gstbpmdetect.cc: bpmdetect: Fix accidentally introduced stack overwriting introduced in last commit 2009-02-16 16:06:02 +0100 Sebastian Dröge * ext/soundtouch/gstbpmdetect.cc: bpmdetect: Save one memory allocation per stereo buffer 2009-02-13 12:18:48 -0800 Michael Smith * gst/scaletempo/gstscaletempo.c: scaletempo: Do not use void pointer arithmetic. 2009-02-12 17:31:50 -0800 Michael Smith * sys/dshowvideosink/dshowvideosink.cpp: dshowvideosink: Return ASYNC appropriately from change_state. Make sure we don't do the wrong thing when our base class is returning ASYNC in state changes. 2009-02-12 15:01:48 -0800 Michael Smith * sys/dshowdecwrapper/gstdshowaudiodec.cpp: dshowdecwrapper: fix compilation. Accidently merged part of one change; remove it. 2009-02-12 22:40:48 +0100 Julien Moutte * gst/mpegdemux/gstmpegdemux.c: Make the demuxer reusable in READY->PLAYING->READY->PLAYING cycles by flushing adapters correctly. 2009-02-12 10:53:56 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Also include the picture/sound/data essence coding in the unknown caps 2009-02-12 09:46:06 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Update TODO, we should support the drop-frame property of timecode tracks 2009-02-12 08:46:32 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfdemux: Fix resolval of identifications from the preface 2009-02-11 18:40:55 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: mxfdemux: Parse MXFTimestamp's milliseconds and add _to_string() function 2009-02-10 14:23:06 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Update TODO 2009-02-12 10:46:23 +0100 Mark Nauwelaerts * ext/metadata/gstbasemetadata.c: metadata: also post error message when returning error 2009-02-11 17:23:03 +0000 Christian Schaller * ext/Makefile.am: * gst-libs/gst/Makefile.am: * gst-plugins-bad.spec.in: Update spec file with latest changes, also add some missing disting directories to a couple of Makefiles.am files 2009-02-11 17:21:20 +0100 Sebastian Dröge * gst/selector/gstinputselector.c: inputselector: Fix compilation, activate_sinkpad() has no notify parameter 2009-02-10 16:22:54 -0800 Michael Smith * gst/selector/gstinputselector.c: input-selector: Activate and notify pad before processing events. Events should trigger pad selection if we don't already have an explicitly selected pad, so that events prior to first buffer don't get lost. 2009-02-11 01:54:03 +0200 René Stadler * gst/camerabin/gstcamerabin.c: camerabin: Sanitize constants used for element factory names. 2009-02-11 01:24:51 +0200 René Stadler * gst/camerabin/gstcamerabin.c: camerabin: Use v4l2src as default source. 2009-02-11 01:07:04 +0200 René Stadler * gst-libs/gst/interfaces/.gitignore: photography interface: .gitignore generated files. 2009-02-11 01:02:42 +0200 René Stadler * win32/common/photography-enumtypes.c: * win32/common/photography-enumtypes.h: photography interface: Move generated files to win32/common. 2009-02-11 00:28:53 +0200 René Stadler * gst/camerabin/.gitignore: camerabin: Add .gitignore to hide generated signal marshaller files. 2009-02-11 00:19:22 +0200 René Stadler * gst/camerabin/gstcamerabin.c: camerabin: Fix plugin details to use GST_PACKAGE_* values. 2009-02-11 00:15:43 +0200 René Stadler * gst/aacparse/gstaacparse.c: aacparse: Fix license specified in plugin details. 2009-02-10 12:28:58 -0800 Michael Smith * sys/dshowdecwrapper/gstdshowvideodec.cpp: dshowdecwrapper: Pass pixel aspect through from demuxers, if supplied. If the incoming caps have a pixel-aspect-ratio, ensure it's set on the output. Corrects PAR for many (but probably not all) files. 2009-02-10 12:26:25 -0800 Michael Smith * sys/dshowdecwrapper/gstdshowaudiodec.cpp: dshowdecwrapper: Make audio decoders have SECONDARY rank. These wrappers are not ideal, and for many of these formats there are better gstreamer elements available. So, make the rank SECONDARY. In particular, the mp3 decoder on winXP doesn't work very well. 2009-02-10 12:12:03 -0800 Michael Smith * sys/dshowdecwrapper/gstdshowaudiodec.c: * sys/dshowdecwrapper/gstdshowdecwrapper.c: * sys/dshowdecwrapper/gstdshowvideodec.c: dshowdecwrapper: Delete old .c files that are unused These old files are stale; the plugin was rewritten in c++ ages ago. Not sure why these are hanging around. 2009-02-10 10:17:43 +0100 Sebastian Dröge * ext/soundtouch/gstbpmdetect.cc: bpmdetect: Pass at most 2048 samples to SoundTouch's BPMDetect Internally BPMDetect assumes that at most 2048 samples are passed to it at once and stores those in a stack allocated static sized array. If we pass too many samples this will result in a buffer overflow resulting in heavy stack corruption and a crash. Fixes bug #570996. 2009-02-09 17:58:42 -0800 Michael Smith * sys/acmmp3dec/acmmp3dec.c: acmmp3dec: fix major memory leaks and clean up code. Unref incoming buffers when we're done. Reindent, clean up white space. Fix comments. 2009-02-09 18:14:14 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: After pulling the footer metadata reset essence track positions to 0 2009-02-09 17:55:05 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: When trying to find an essence track position try to find position+1 too By searching for the following position we will add the complete generic container (i.e. all tracks) at the same position to the index which should make finding positions for more than one track a bit faster. 2009-02-09 17:48:38 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: For new essence tracks only set the position to 0 if it starts in the current partition 2009-02-09 17:44:43 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Check if the length of the src/essence track arrays are 0, not the array itself 2009-02-09 17:25:35 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Make sure that the srcpad and essence track arrays always exist 2009-02-09 16:12:51 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Change some GST_ERRORs to something less critical 2009-02-09 16:09:22 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Only go into EOS and send segment-done after all tracks are finished 2009-02-09 16:09:12 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfup.c: mxfdemux: Update TODO 2009-02-09 15:48:20 +0100 Julien Moutte * gst/camerabin/Makefile.am: Fix build for camerabin. 2009-02-09 12:02:50 +0100 Edward Hervey * common: Bump revision to use for common submodule. 2009-01-30 16:09:30 +0100 Edward Hervey * .gitignore: * tests/check/elements/.gitignore: * tests/check/pipelines/.gitignore: More files to ignore 2009-02-05 23:06:23 +0200 Nokia Corporation * tests/check/Makefile.am: * tests/check/elements/camerabin.c: tests: Add camerabin unit tests. 2009-02-05 15:48:32 +0200 Nokia Corporation * configure.ac: * gst/camerabin/Makefile.am: * gst/camerabin/camerabingeneral.c: * gst/camerabin/camerabingeneral.h: * gst/camerabin/camerabinimage.c: * gst/camerabin/camerabinimage.h: * gst/camerabin/camerabinvideo.c: * gst/camerabin/camerabinvideo.h: * gst/camerabin/gstcamerabin-marshal.list: * gst/camerabin/gstcamerabin.c: * gst/camerabin/gstcamerabin.h: * gst/camerabin/gstcamerabincolorbalance.c: * gst/camerabin/gstcamerabincolorbalance.h: * gst/camerabin/gstcamerabinphotography.c: * gst/camerabin/gstcamerabinphotography.h: * gst/camerabin/gstcamerabinxoverlay.c: * gst/camerabin/gstcamerabinxoverlay.h: Add camerabin element. 2009-02-06 12:06:23 +0200 Nokia Corporation * configure.ac: * gst-libs/gst/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/interfaces/photography-enumtypes.c: * gst-libs/gst/interfaces/photography-enumtypes.h: * gst-libs/gst/interfaces/photography.c: * gst-libs/gst/interfaces/photography.h: Add photography interface. 2009-02-09 07:33:41 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix seeking to the end of file When seeking to a position where no new offset can be found or after the end of a track don't set the EOS flag to TRUE as we don't (and can't) push EOS downstream then. Instead set the current essence track position to then end of the essence track and let the loop or chain function set everything to EOS and push EOS downstream. Also restart the pad's task if resolving metadata failed (playback will continue as before) and return FALSE from the seek if no new offset could be found. 2009-02-08 21:52:03 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix last_stop calculation when seeking 2009-02-08 21:31:40 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfdemux: Resolve source package before accessing it's members 2009-02-08 21:23:03 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Correctly implement timestamping in all cases When the material package track and source package track edit rate are different the source package track edit rate applies to the stored essence and the material track edit rate only applies to the values in the track's sequence and components. 2009-02-08 21:22:17 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Correctly handle DURATION queries with a negative duration 2009-02-08 21:17:11 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: When changing to the component after the last component update the essence track position 2009-02-08 21:12:21 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Small cleanup and an additional check Update TODO list, reduce size of a stack allocated string and don't allow essence tracks with an invalid edit rate 2009-02-08 07:30:48 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfdemux: For material packages make sure that tracks resolve to source tracks 2009-02-07 10:38:26 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: * gst/mxf/mxfvc3.c: mxfdemux: Add support for non-standard Avid MXF files containing DNxHD essence Avid uses a custom essence container UL and custom essence element keys that are fortunately compatible with the generic container essence elements. Partially fixes bug #561922. 2009-02-07 10:13:54 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Make essence track creation a bit more robust against broken files Some files contain multiple tracks with the same track number but different track id inside the same source package. This is invalid and we simply ignore the second and following of such traacks now instead of overwriting the information of the first one. 2009-02-07 10:03:24 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfdemux: Don't include multiple descriptors in the track's descriptors 2009-02-07 09:27:13 +0100 Sebastian Dröge * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: mxfdemux: Add support for non-standard Avid MXF files containing DV essence Avid usually uses a custom essence container label for the essence descriptors and stores the actual codec that is used inside the picture essence coding field (and for sound probably in the sound essence coding field but I have no sample files with sound). Partially fixes bug #561922. 2009-02-06 11:57:46 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: mxfdemux: Add data definition for Avid vendor specific picture essence 2009-02-06 11:55:45 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: For tracks with no known mapping use dummy caps 2009-02-06 11:21:00 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Don't remove invalid new essence track twice from the GPtrArray 2009-02-06 11:09:11 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: mxfdemux: Implement keyframe detection for MPEG4 video streams 2009-02-06 10:46:47 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Handle some more special cases when setting the position when seeking 2009-02-06 10:46:09 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Adjust last_stop to the last keyframe when seeking 2009-02-06 10:06:59 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: mxfdemux: Fix logic for finding the previous keyframe 2009-02-06 09:53:13 +0100 Sebastian Dröge * gst/mxf/mxfd10.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfmpeg.h: mxfdemux: Add keyframe detection for MPEG2 video streams This is useful for seeking as we usually want to seek to the previous keyframe. The keyframe detection is done by parsing the MPEG2 elementary stream and if a GOP or I-frame packet is found we assume a keyframe in this edit unit. 2009-02-05 21:29:29 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: mxfdemux: Protect the metadata with a lock against concurrent access 2009-02-05 17:42:37 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: Random cleanup and smaller bugfixes Use gst_element_klass_set_details_simple(), install properties with static strings, create pads directly from the static pad templates, directly put the segment into the instance struct, use GST_MSECOND instead of numbers. The PAR is a GstFraction and not a double, use gst_structure_get_fraction(). Simplify setcaps() functions. 2009-02-05 17:00:30 +0100 Sebastian Dröge * ext/assrender/Makefile.am: * ext/assrender/gstassrender.c: Use GST_VIDEO_CAPS_RGB for the template caps 2009-02-05 16:57:55 +0100 Sebastian Dröge * ext/assrender/gstassrender.c: Fix compiler warnings 2009-02-05 16:54:01 +0100 Benjamin Schmitz * configure.ac: * ext/Makefile.am: * ext/assrender/Makefile.am: * ext/assrender/gstassrender.c: * ext/assrender/gstassrender.h: Add assrender plugin for rendering ASS/SSA subtitles This element has the advantage over subparse's ASS/SSA support that more features are supported, like fading, by using libass. Fixes bug #481075. 2009-02-05 10:50:27 +0100 Edward Hervey * tests/check/pipelines/metadata.c: metadata test: Fix wrong looping variable. Test is now valid (but fails). The inner looping was using the outer looping variable. 2009-02-04 18:11:03 -0800 Michael Smith * sys/qtwrapper/audiodecoders.c: Fix up things that the indent thingy complained about 2009-02-04 18:09:58 -0800 Michael Smith * sys/qtwrapper/audiodecoders.c: Fix major leaks in qtwrapper audio decoders. Free the decoder component and audiobufferlist when caps change, or when disposing element. 2009-02-04 17:50:51 -0800 Michael Smith * sys/dshowvideosink/dshowvideofakesrc.cpp: * sys/dshowvideosink/dshowvideofakesrc.h: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: Handle many more edge cases in dshowvideosink. Instrument various codepaths with debug messages. Handle (as best as I could see how - it's pretty nasty) moving a video window to another monitor. Add listening for directshow events. 2009-02-04 22:50:30 +0100 Josep Torra * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: mpegpsdemux: fixes clossing segment generation. Ensure that the clossing segment is generated correctly and being properly pushed. Added some GST_DEBUG to check it. Ensure that last_stop is updated in stream time. Calculate duration as delta of PTS as it seems more correct than delta of SCR in some clips that I tested. 2009-02-04 22:17:36 +0100 Josep Torra * gst/mpegdemux/gstmpegdemux.c: mpegpsdemux: several fixes on the seeking function in pul mode. Removed a line wrongly copy pasted in my previous commit. Avoid an unsigned integer overflow. Seek last_stop in stream time. Clamp last_stop in stream time between first and last SCR. Fixed a typo in the GST_DEBUG line and added some more info. 2009-02-04 16:20:40 +0100 Josep Torra * gst/mpegdemux/gstmpegdemux.c: Moved var declarations to the begin of function 2009-02-04 16:18:27 +0100 Josep Torra Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-bad 2009-02-04 16:11:23 +0100 Josep Torra * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: Improved seeking in pull mode. Some refactoring and small fixes 2009-02-04 11:11:31 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Update TODO 2009-02-04 11:09:26 +0100 Sebastian Dröge * gst/mxf/mxf.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxftypes.h: Post an UMID tag with the current package's UMID 2009-02-04 10:59:53 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Reset the current partition after seeking and NEWSEGMENT events 2009-02-04 10:53:52 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: In push mode play all remaining parts of the file on EOS if there are any 2009-02-04 10:37:20 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Add property to set the maximum allowed time difference between tracks 2009-02-04 10:27:03 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Always set the current package, not only when it was changed This is necessary as the current package link will be set to NULL when updated metadata is parsed and should be set here again. 2009-02-04 10:19:51 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Try to resolve all synchronization issues, not only the first 2009-02-03 17:47:10 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Remove some checks that will always be TRUE 2009-02-03 22:27:33 +0000 Tim-Philipp Müller * configure.ac: configure.ac: bump core/base requirements to released versions 2009-02-02 23:29:24 +0100 Josep Torra * gst/mpegvideoparse/mpegvideoparse.c: Also flush parser when a newsegment is received. Fixes loop in reverse mode. 2009-02-02 23:12:07 +0100 Josep Torra * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/gstpesfilter.c: Add pull mode to mpegpsdemux and report duration reading first and last PTS. Some random cleanups. 2009-02-02 17:44:33 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Cleanup playback package selection and notify about the current package 2009-02-02 16:23:30 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Update tags properly, especially on component switch 2009-02-02 16:05:14 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Error out if no pads could be created 2009-02-02 15:54:23 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Resolve metadata and update tracks if necessary before seeking 2009-02-02 15:54:00 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Don't go after the last component of a track 2009-02-02 15:53:32 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Return an error if updating an already existing pad fails 2009-02-02 07:44:12 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Fix seeking if the source clip duration is unknown 2009-02-01 16:59:25 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Add initial support for seeking in push mode 2009-02-01 16:58:51 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Fix deadlocks when seeking in pull mode failed and check new offset before using it 2009-02-01 16:58:01 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Update offset in push mode and handle events properly 2009-02-01 15:07:09 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Implement initial seeking support (pull mode only) 2009-01-31 11:29:20 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: Don't use GLib 2.16 API unconditionally 2009-01-30 19:52:59 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Check for EOS on all pads after adjusting the essence track durations 2009-01-30 19:33:56 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Fix duration calculation for essence tracks 2009-01-30 15:50:16 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Implement GstElement::query/get_query_types vfuncs 2009-01-30 15:34:10 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Reset all internal state in finalize 2009-01-29 20:27:28 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Improve EOS detection and fix push mode for the last pushed in buffer 2009-01-29 19:58:50 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Keep track of essence track position when playing source packages This ensures that the correct essence elements are played and that we seek to the correct essence elements. 2009-01-29 19:42:09 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Compensate for timestamp/duration rounding errors 2009-01-29 15:56:08 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Improve EOS logic to check all pads when pulling a packet returned EOS This makes sure that we finish all pads that are at EOS now instead of just finishing one and returning to this point over and over again. 2009-01-29 15:55:44 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Only push buffers for pads that are not more than 500ms before other pads 2009-01-29 15:39:40 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Improve EOS logic to only go into EOS after all tracks are finished 2009-01-28 17:34:57 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Update TODO list 2009-01-28 16:39:30 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Try to keep the timestamp difference between tracks lower than 500ms 2009-01-27 15:36:53 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Fix playback of atom files 2009-01-27 15:27:45 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Keep track of current playback position 2009-01-27 14:38:30 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: Set essence track positions to 0 if we're at the start partition 2009-01-27 14:25:26 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfd10.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfparse.h: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: Generate an index table for essence streams Generate an index table for essence streams during playback and make sure that only the correct essence elements are used for played tracks. Make it possible to have one essence stream used in multiple playback tracks. Fix some minor bugs. 2009-01-27 14:23:03 +0100 Sebastian Dröge * gst/mxf/mxfmetadata.c: Don't complain if the preface has no primary package set 2009-01-26 16:23:38 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfparse.c: Allow index table segments without primer pack When parsing an index table segment without a valid primer pack in this partition only parse the static local tags and ignore all dynamic ones. This allows us to use index table segments in some broken files. 2009-01-26 16:20:34 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Add essence track abstraction Add an abstraction to represent essence tracks and use this everywhere. This will later be used to keep track of positions and to generate/handle seek tables. Some random cleanup and renaming. 2009-01-26 14:47:31 +0100 Sebastian Dröge * gst/mxf/mxfparse.c: Fix parsing of index table segments Allocate memory for the pos tables and slice offsets of the index entries separately to a) fix alignment in weird cases and b) to actually have something to free() in the index table segment reset function. 2009-01-26 14:33:02 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxftypes.h: Improve detection of the end of the header metadata Header metadata is finished after partition.header_byte_count bytes after the first byte of the primer pack are handled. After this there can only be index table segments, filler packets, essence or the start of the next partition. This fixes playback of some files that have non-standard metadata packets in the header metadata. 2009-01-30 18:27:03 -0800 Michael Smith * gst/selector/gstinputselector.c: Unref event if we don't forward it, unref pads when done with them. 2009-01-30 22:28:11 +0200 Stefan Kost * docs/plugins/gst-plugins-bad-plugins-docs.sgml: Add releaseinfo with online url. 2009-01-30 18:20:17 +0000 Jan Schmidt * gst/dccp/gstdccp.c: Fix compilation on Forte. Dereference the pointer to the passed socket to check the actual fd when closing them. Cast an assignment to kill a warning. 2009-01-30 18:18:10 +0000 Jan Schmidt * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: Fix the return value of the default parse_frame function. Fix the return value of the default parse_frame function in both copies of GstBaseParse 2009-01-30 17:31:33 +0000 Jan Schmidt * common: Bump common 2009-01-30 08:54:42 +0100 Edward Hervey * autogen.sh: * common: Use a symbolic link for the pre-commit client-side hook 2009-01-29 17:59:35 -0200 Thiago Sousa Santos * sys/qtwrapper/audiodecoders.c: * sys/qtwrapper/codecmapping.h: * sys/qtwrapper/qtutils.h: * sys/qtwrapper/qtwrapper.h: qtwrapper: Fixes build at case sensitive systems. 2009-01-28 12:41:36 +0000 Josep Torra * gst/mpegdemux/gstpesfilter.c: mpegdemux: do not skip pes packets that we think are encrypted pes packets that claim to be encrypted may not be so, so treat as normal. Just log the flags. 2009-01-28 13:25:14 +0100 Mark Nauwelaerts * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmuxmap.c: Additional media type support in qtmux (and friends). Support AMR and H263 for both qtmux and gppmux, and add extensions in sample table description. 2009-01-28 12:27:42 +0000 Zaheer Merali * common: * gst/mpegdemux/gstpesfilter.c: Revert "mpegdemux: do not skip pes packets that we think are encrypted" This reverts commit d3e4e5598f6c3db444d0014597d383ed35a02998. 2009-01-28 12:06:49 +0000 Josep Torra * common: * gst/mpegdemux/gstpesfilter.c: mpegdemux: do not skip pes packets that we think are encrypted pes packets that claim to be encrypted may not be so, so treat as normal. Just log the flags. 2009-01-24 18:13:39 +0100 Hans de Goede * configure.ac: * docs/plugins/Makefile.am: * ext/Makefile.am: * ext/modplug/Makefile.am: * ext/modplug/gstmodplug.cc: * ext/modplug/gstmodplug.h: * gst/modplug/libmodplug/Makefile.am: * gst/modplug/libmodplug/README: * gst/modplug/libmodplug/changes.txt: * gst/modplug/libmodplug/fastmix.cpp: * gst/modplug/libmodplug/it_defs.h: * gst/modplug/libmodplug/load_669.cpp: * gst/modplug/libmodplug/load_amf.cpp: * gst/modplug/libmodplug/load_ams.cpp: * gst/modplug/libmodplug/load_dbm.cpp: * gst/modplug/libmodplug/load_dmf.cpp: * gst/modplug/libmodplug/load_dsm.cpp: * gst/modplug/libmodplug/load_far.cpp: * gst/modplug/libmodplug/load_it.cpp: * gst/modplug/libmodplug/load_j2b.cpp: * gst/modplug/libmodplug/load_mdl.cpp: * gst/modplug/libmodplug/load_med.cpp: * gst/modplug/libmodplug/load_mod.cpp: * gst/modplug/libmodplug/load_mt2.cpp: * gst/modplug/libmodplug/load_mtm.cpp: * gst/modplug/libmodplug/load_okt.cpp: * gst/modplug/libmodplug/load_psm.cpp: * gst/modplug/libmodplug/load_ptm.cpp: * gst/modplug/libmodplug/load_s3m.cpp: * gst/modplug/libmodplug/load_stm.cpp: * gst/modplug/libmodplug/load_ult.cpp: * gst/modplug/libmodplug/load_umx.cpp: * gst/modplug/libmodplug/load_wav.cpp: * gst/modplug/libmodplug/load_xm.cpp: * gst/modplug/libmodplug/mmcmp.cpp: * gst/modplug/libmodplug/modplug.cpp: * gst/modplug/libmodplug/modplug.h: * gst/modplug/libmodplug/snd_dsp.cpp: * gst/modplug/libmodplug/snd_flt.cpp: * gst/modplug/libmodplug/snd_fx.cpp: * gst/modplug/libmodplug/sndfile.cpp: * gst/modplug/libmodplug/sndfile.h: * gst/modplug/libmodplug/sndmix.cpp: * gst/modplug/libmodplug/stdafx.h: * gst/modplug/libmodplug/tables.cpp: * gst/modplug/libmodplug/tables.d: Build the modplug plugin against the modplug library and remove our copy Always build the modplug plugin against the system modplug library and remove our own copy. Using the system version has advantages if security issues or other critical bugs are found in libmodplug and our own copy wasn't really maintained anyway. Also our copy only contained some patches to use GLib types and functions. Fixes bug #568837. 2009-01-23 23:42:28 +0000 Jan Schmidt * .gitignore: * po/.gitignore: Add more to the gitignores 2009-01-23 14:02:26 +0000 Jan Schmidt * gst/rawparse/gstvideoparse.c: Make RGB masks unsigned in rawvideoparse Allow the full range of 32 bit masks for RGBA/RGB data by making sure the mask properties are unsigned. 2009-01-23 16:09:51 +0200 Stefan Kost * ext/timidity/README: Add README with midi related links. 2009-01-23 16:00:10 +0200 Stefan Kost * ext/faad/gstfaad.c: * gst/aacparse/gstaacparse.c: Log aac details found in codec_data. 2009-01-23 14:43:00 +0200 Stefan Kost * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/metadataexif.c: * ext/metadata/metadataexif.h: Configure byte order for EXIF. Fixes #568704 Exif blocks can be in differnt byte orders. Add an element property to select wich one should be written. 2009-01-23 12:46:28 +0100 Sebastian Dröge * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-aiffparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-apex.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dc1394.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-deinterlace2.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flv.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegdemux2.xml: * docs/plugins/inspect/plugin-mpegtsmux.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-ofa.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-pcapparse.xml: * docs/plugins/inspect/plugin-qtmux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-resindvd.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-twolame.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst/legacyresample/Makefile.am: * gst/legacyresample/buffer.c: * gst/legacyresample/buffer.h: * gst/legacyresample/debug.c: * gst/legacyresample/debug.h: * gst/legacyresample/functable.c: * gst/legacyresample/functable.h: * gst/legacyresample/gstlegacyresample.c: * gst/legacyresample/gstlegacyresample.h: * gst/legacyresample/resample.c: * gst/legacyresample/resample.h: * gst/legacyresample/resample_chunk.c: * gst/legacyresample/resample_functable.c: * gst/legacyresample/resample_ref.c: * tests/check/Makefile.am: * tests/check/elements/legacyresample.c: Rename audioresample files and types to legacyresample Finish the move/rename of audioresample to legacyresample to prevent any confusion. 2009-01-23 12:39:21 +0100 Sebastian Dröge * docs/plugins/inspect/plugin-speexresample.xml: * gst/speexresample/Makefile.am: * gst/speexresample/README: * gst/speexresample/arch.h: * gst/speexresample/fixed_generic.h: * gst/speexresample/gstspeexresample.c: * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_float.c: * gst/speexresample/speex_resampler_int.c: * gst/speexresample/speex_resampler_wrapper.h: Remove speexresample from -bad, it's in -base 2009-01-23 12:13:00 +0100 Wim Taymans * gst/rtpmanager/rtpstats.c: Send BYE packets immediatly for small sessions When the number of participants is less than 50, the RFC allows for sending the BYE packet immediatly instead of using the regular BYE timeout. Fixes #567828. 2009-01-23 11:50:29 +0100 Hans de Goede * configure.ac: * ext/libmms/gstmms.c: * ext/libmms/gstmms.h: Add seeking support to mmssrc. Fixes bug #469930. Add proper seeking support to mmssrc and clean up some code. This requires libmms >= 0.4. 2009-01-23 10:44:20 +0100 Brian Cameron * gst/modplug/Makefile.am: Link modplug plugin with -lm. Fixes bug #568483. 2009-01-23 10:11:52 +0100 Brian Cameron * configure.ac: * gst/dccp/gstdccp.c: Fix build on Solaris. Fixes bug #568480. Fix linking on Solaris by checking for the nsl and socket libraries which are needed for socket() and gethostbyname(). Don't initialize some fields of struct mh to NULL/0, they're already set to NULL/0 by a memset(). Also this fields don't exist on Solaris. 2009-01-22 14:37:21 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfparse.c: * gst/mxf/mxftypes.h: Store all partitions & primer packs in memory for faster access Store all partitions & primer packs in memory for faster access. This is later needed for fast seeking. Pre-fill the list of partitions with the content of the random index pack. Don't parse metadata of an partition twice. 2009-01-22 18:20:03 +0200 Stefan Kost * common: Update common snapshot. 2009-01-22 14:00:57 +0100 Wim Taymans * win32/common/config.h: Update config.h for development. 2009-01-22 13:46:44 +0100 Sebastian Dröge * common: Fix pre-commit hook 2009-01-22 13:39:34 +0100 Jan Urbanski * gst/flv/gstflvparse.c: Add support for ECMA arrays in script tags. Fixes bug #567965. Add support for ECMA arrays in script tags. This fixes seeking on some files that have the seek table stored inside an ECMA array instead of the normal array. 2009-01-22 13:33:14 +0100 Wim Taymans * gst/rtpmanager/gstrtpjitterbuffer.c: Unlock the jitterbuffer before pushing out the packet-lost events. Move some code before we do the unlock to make the jitterbuffer state consistent while we are unlocked. 2009-01-22 11:54:45 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: Fix UL for DTS and MPEG2 layer 1 2009-01-22 11:54:15 +0100 Sebastian Dröge * gst/mxf/mxfmpeg.c: Add support for AAC audio 2009-01-22 11:47:48 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdms1.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: Store MXF metadata in a hash table, keyed by UID Store the MXF metadata in a hash table, keyed by the instance UID. This simplifies resolval of the metadata and makes looping over all metadata sets unnecessary in most cases. Additionally parse metadata always. If we already have a metadata set with the same UID replace it only if the new metadata set is from a later offset. This fixes metadata parsing of files where following partitions don't have a complete copy of the previous metadata. 2009-01-22 11:44:46 +0100 Sebastian Dröge * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Build the random index pack while parsing If the file contains no random index pack or just an invalid one build the random index pack while parsing. 2009-01-22 11:43:56 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfalaw.c: * gst/mxf/mxfalaw.h: * gst/mxf/mxfd10.c: * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdms1.h: * gst/mxf/mxfdv-dif.c: * gst/mxf/mxfdv-dif.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: * gst/mxf/mxfup.c: * gst/mxf/mxfup.h: * gst/mxf/mxfvc3.c: * gst/mxf/mxfvc3.h: Update copyrights for 2009 2009-01-22 11:42:24 +0100 Sebastian Dröge * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdms1.h: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfparse.c: * gst/mxf/mxfparse.h: Simplify parsing of UL/UUID arrays Simplify parsing of UL/UUID arrays by abstracting it into a separate function. 2009-01-22 11:37:22 +0100 Sebastian Dröge * gst/mxf/mxf.c: * gst/mxf/mxfalaw.c: * gst/mxf/mxfd10.c: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdms1.h: * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmetadata.c: * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfup.c: * gst/mxf/mxfvc3.c: Implement parsing of DMS1 (SMPTE S380M) 2009-01-22 11:00:59 +0100 Sebastian Dröge * configure.ac: Disable the filter plugin from the build The filter plugin only contains a limited IIR filter element which is now obsoleted by the audioiirfilter element from gst-plugins-good/audiofx. 2009-01-22 11:56:34 +0000 Jan Schmidt * configure.ac: Back to devel -> 0.10.10.1 2009-01-22 06:12:55 +0100 Edward Hervey * autogen.sh: * common: Install and use pre-commit indentation hook from common 2009-01-21 12:22:54 +0100 Andy Wingo * configure.ac: Revert "add audiobuffer to the build" This reverts commit 1c6ac170b9f218c673c0daaf5c568c6000a37fc3. 2009-01-21 12:18:49 +0100 Andy Wingo add audiobuffer to the build * configure.ac: Add audiobuffer to the build. 2009-01-21 04:32:16 +0100 Edward Hervey * autogen.sh: autogen.sh : Use git submodule === release 0.10.10 === 2009-01-19 23:15:36 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-legacyresample.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mxf.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-twolame.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst-plugins-bad.doap: * po/LINGUAS: * win32/common/config.h: Release 0.10.10 Original commit message from CVS: Release 0.10.10 2009-01-19 22:41:58 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ky.po: * po/lt.po: * po/mt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2009-01-09 23:44:38 +0000 Jan Schmidt configure.ac: 0.10.9.3 pre-release Original commit message from CVS: * configure.ac: 0.10.9.3 pre-release 2009-01-09 22:09:06 +0000 David Schleef gst/mpegdemux/gstmpegtsdemux.c: Don't forward duration requests in BYTES, since the returned value doesn't mean anyth... Original commit message from CVS: * gst/mpegdemux/gstmpegtsdemux.c: Don't forward duration requests in BYTES, since the returned value doesn't mean anything. Fixes #566959 2009-01-09 21:59:48 +0000 David Schleef gst/qtmux/gstqtmuxmap.c: Add video/x-qt-part and video/x-m4-part to caps so schroenc/schroparse can use it. Fixes #5... Original commit message from CVS: * gst/qtmux/gstqtmuxmap.c: Add video/x-qt-part and video/x-m4-part to caps so schroenc/schroparse can use it. Fixes #566958 2009-01-09 16:49:57 +0000 Jan Schmidt ext/resindvd/resindvdsrc.c: Additional patch for resin fixes time-based seeking in titles that don't start at sector ... Original commit message from CVS: * ext/resindvd/resindvdsrc.c: Additional patch for resin fixes time-based seeking in titles that don't start at sector 0 in the VTS, and fixes interpretation of the cell elapsed time, so that it reports the correct time after the seek completes. Really fixes #566957. 2009-01-08 17:57:19 +0000 Brian Cameron ext/ladspa/search.c: Avoid searching (null) paths or crashing on platforms where printing a Original commit message from CVS: Based on Patch by: Brian Cameron * ext/ladspa/search.c: (LADSPAPluginSearch): Avoid searching (null) paths or crashing on platforms where printing a NULL string segfaults. Fixes #567004. 2009-01-08 12:42:18 +0000 Jan Schmidt ext/resindvd/: Add support for time based seeking. Original commit message from CVS: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: * ext/resindvd/rsnaudiomunge.c: Add support for time based seeking. Make setting dvd:// reset to the default device. Make the 'audiomunge' element send any new segment start before the 'gap filler' buffer it generates, and any segment closes after. Fixes: #566957 2009-01-08 09:40:22 +0000 Sebastian Dröge ext/ladspa/gstladspa.c: Add plugin dependency for the LADSPA plugin directories. Original commit message from CVS: * ext/ladspa/gstladspa.c: (plugin_init): Add plugin dependency for the LADSPA plugin directories. Fixes bug #566878. 2009-01-06 22:51:37 +0000 Jan Schmidt tests/check/Makefile.am: Dist test headers for amr and aac parsers. Original commit message from CVS: * tests/check/Makefile.am: Dist test headers for amr and aac parsers. Remove leftover lines mentioned speexresample tests. 2009-01-06 22:35:50 +0000 Michael Smith sys/acmmp3dec/Makefile.am: Fix typo in the opposite way to give the plugin a sensible name. Original commit message from CVS: * sys/acmmp3dec/Makefile.am: Fix typo in the opposite way to give the plugin a sensible name. 2009-01-06 22:16:56 +0000 Jan Schmidt sys/acmmp3dec/Makefile.am: Fix typo in the makefile target preventing disting. Original commit message from CVS: * sys/acmmp3dec/Makefile.am: Fix typo in the makefile target preventing disting. 2009-01-05 23:03:31 +0000 Jan Schmidt Remove AppSrc/AppSink that are moving to -base. Partially fixes #564421 Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-app.xml: * examples/Makefile.am: * examples/app/.cvsignore: * examples/app/Makefile.am: * examples/app/appsink-src.c: * examples/app/appsrc-ra.c: * examples/app/appsrc-seekable.c: * examples/app/appsrc-stream.c: * examples/app/appsrc-stream2.c: * examples/app/appsrc_ex.c: * gst-libs/gst/Makefile.am: * gst-libs/gst/app/.cvsignore: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp-marshal.list: * gst-libs/gst/app/gstappbuffer.c: * gst-libs/gst/app/gstappbuffer.h: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst/app/Makefile.am: * gst/app/gstapp.c: Remove AppSrc/AppSink that are moving to -base. Partially fixes #564421 2009-01-05 17:41:51 +0000 Zaheer Abbas Merali gst/mpegdemux/mpegtspacketizer.c: Guard interval is 4 if descriptor part shows binary 11 (3 not 4). Original commit message from CVS: * gst/mpegdemux/mpegtspacketizer.c: Guard interval is 4 if descriptor part shows binary 11 (3 not 4). 2009-01-05 17:30:55 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegdesc.h: Fix up satellite delivery subsystem defs. Original commit message from CVS: * gst/mpegdemux/gstmpegdesc.h: Fix up satellite delivery subsystem defs. 2009-01-05 17:26:00 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegdesc.h: Fix up terrestrial delivery system descriptor defs. Original commit message from CVS: * gst/mpegdemux/gstmpegdesc.h: Fix up terrestrial delivery system descriptor defs. They should be shifted otherwise wrong values are seen. 2009-01-05 13:41:07 +0000 Sebastian Dröge gst/mxf/: "Generation UID" and "This Generation UID" are different so handle them different. Also both are not part o... Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: (mxf_metadata_handle_tag), (mxf_metadata_preface_handle_tag), (mxf_metadata_identification_handle_tag), (mxf_metadata_content_storage_handle_tag), (mxf_metadata_essence_container_data_handle_tag), (mxf_metadata_generic_package_handle_tag), (mxf_metadata_track_handle_tag), (mxf_metadata_sequence_handle_tag), (mxf_metadata_structural_component_handle_tag), (mxf_metadata_generic_descriptor_handle_tag), (mxf_metadata_locator_handle_tag), (mxf_metadata_locator_class_init): * gst/mxf/mxfmetadata.h: "Generation UID" and "This Generation UID" are different so handle them different. Also both are not part of every metadata type. 2009-01-05 12:34:18 +0000 Sascha Hauer gst/bayer/gstbayer2rgb.c: Fix color offset calculation for 24bpp. Fixes bug #566613. Original commit message from CVS: Patch by: Sascha Hauer Luotao Fu * gst/bayer/gstbayer2rgb.c: (get_pix_offset), (gst_bayer2rgb_set_caps): Fix color offset calculation for 24bpp. Fixes bug #566613. 2009-01-05 11:28:49 +0000 vanista gst/mpegtsmux/: Improve muxing of AC3/h264 streams a bit. Fixes bug #550613. Original commit message from CVS: Patch by: vanista * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_create_stream): * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_write_pmt): * gst/mpegtsmux/tsmux/tsmuxstream.c: (tsmux_stream_new), (tsmux_stream_write_pes_header), (tsmux_stream_get_es_descrs): * gst/mpegtsmux/tsmux/tsmuxstream.h: Improve muxing of AC3/h264 streams a bit. Fixes bug #550613. 2009-01-05 10:34:03 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Don't allow negative or zero edit rates to prevent division by zero and we support negative edit ... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_pad_next_component): Don't allow negative or zero edit rates to prevent division by zero and we support negative edit rates anyway. 2009-01-05 10:28:58 +0000 Mark Nauwelaerts ext/x264/gstx264enc.c: Use hyphen in property name, perform safety buffer size check prior to mem access, and some mo... Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_class_init), (gst_x264_enc_header_buf), (gst_x264_enc_encode_frame): Use hyphen in property name, perform safety buffer size check prior to mem access, and some more parentheses in macro. 2009-01-05 10:22:29 +0000 Sebastian Dröge gst/mxf/: Fix compilation with debugging disabled. Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_handle_tag), (mxf_bwf_create_caps): * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_klv_packet): * gst/mxf/mxfmetadata.c: (mxf_metadata_handle_tag), (mxf_metadata_preface_handle_tag), (mxf_metadata_identification_handle_tag), (mxf_metadata_content_storage_handle_tag), (mxf_metadata_essence_container_data_handle_tag), (mxf_metadata_generic_package_handle_tag), (mxf_metadata_source_package_handle_tag), (mxf_metadata_track_handle_tag), (mxf_metadata_sequence_handle_tag), (mxf_metadata_structural_component_handle_tag), (mxf_metadata_source_clip_handle_tag), (mxf_metadata_dm_segment_handle_tag), (mxf_metadata_generic_descriptor_handle_tag), (mxf_metadata_file_descriptor_handle_tag), (mxf_metadata_generic_picture_essence_descriptor_handle_tag), (mxf_metadata_generic_sound_essence_descriptor_handle_tag), (mxf_metadata_generic_data_essence_descriptor_handle_tag), (mxf_metadata_multiple_descriptor_handle_tag): * gst/mxf/mxfparse.c: (mxf_partition_pack_parse), (mxf_index_table_segment_parse), (mxf_primer_pack_parse), (mxf_local_tag_add_to_hash_table): Fix compilation with debugging disabled. 2009-01-05 10:00:21 +0000 Mark Nauwelaerts configure.ac: Also mention jp2kenc as a jp2k plugin feature. Original commit message from CVS: * configure.ac: Also mention jp2kenc as a jp2k plugin feature. 2009-01-04 11:11:06 +0000 Sebastian Pölsterl sys/dvb/dvbbasebin.c: Fix some memory leaks. Fixes bug #566356. Original commit message from CVS: Patch by: Sebastian Pölsterl * sys/dvb/dvbbasebin.c: (dvb_base_bin_init), (dvb_base_bin_finalize), (dvb_base_bin_activate_program), (dvb_base_bin_pmt_info_cb), (dvb_base_bin_pad_added_cb), (dvb_base_bin_program_destroy): Fix some memory leaks. Fixes bug #566356. 2009-01-02 17:40:06 +0000 Olivier Crete gst/rtpmanager/: When an SSRC is found on the caps of the sender RTP, use this as the internal SSRC. Fixes #565910. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_setcaps_send_rtp), (create_send_rtp_sink): * gst/rtpmanager/rtpsession.c: (rtp_session_set_internal_ssrc): When an SSRC is found on the caps of the sender RTP, use this as the internal SSRC. Fixes #565910. 2009-01-02 16:50:53 +0000 Wim Taymans gst/rtpmanager/: Rename a method to better reflect what it really does. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_getcaps_send_rtp): * gst/rtpmanager/rtpsession.c: (check_collision), (rtp_session_schedule_bye_locked), (rtp_session_schedule_bye): * gst/rtpmanager/rtpsession.h: Rename a method to better reflect what it really does. 2009-01-02 11:00:17 +0000 Alessandro Decina ext/apexsink/Makefile.am: Move -lgcrypto from _LDFLAGS to _LIBADD. Original commit message from CVS: * ext/apexsink/Makefile.am: Move -lgcrypto from _LDFLAGS to _LIBADD. 2009-01-02 01:44:11 +0000 Alessandro Decina ext/apexsink/Makefile.am: Link against -lgcrpyto for RSA_new and RSA_free. Original commit message from CVS: * ext/apexsink/Makefile.am: Link against -lgcrpyto for RSA_new and RSA_free. * ext/faac/gstfaac.c: * ext/x264/gstx264enc.c: Fix compiler warnings. 2009-01-02 01:12:35 +0000 Alessandro Decina gst/mpegdemux/gstmpegdemux.c: Initialize scr_rate_n and scr_rate_d in order to fix compiler warnings. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: Initialize scr_rate_n and scr_rate_d in order to fix compiler warnings. 2008-12-31 08:53:02 +0000 Sebastian Dröge Implement support for OP2a/b/c and OP3a/b/c, i.e. tracks with more than a single component. This currently only works... Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_bwf_handle_essence_element), (mxf_aes3_handle_essence_element): * gst/mxf/mxfalaw.c: (mxf_alaw_handle_essence_element): * gst/mxf/mxfd10.c: (mxf_d10_picture_handle_essence_element), (mxf_d10_sound_handle_essence_element): * gst/mxf/mxfdemux.c: (gst_mxf_demux_pad_init), (gst_mxf_demux_choose_package), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_pad_next_component), (gst_mxf_demux_handle_generic_container_essence_element), (gst_mxf_demux_parse_footer_metadata), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_src_query): * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_handle_essence_element): * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_handle_essence_element): * gst/mxf/mxfmetadata.c: (mxf_metadata_sequence_init), (mxf_metadata_structural_component_init), (mxf_metadata_generic_picture_essence_descriptor_init): * gst/mxf/mxfmpeg.c: (mxf_mpeg_video_handle_essence_element), (mxf_mpeg_audio_handle_essence_element): * gst/mxf/mxfparse.h: * gst/mxf/mxfup.c: (mxf_up_handle_essence_element): * gst/mxf/mxfvc3.c: (mxf_vc3_handle_essence_element): * tests/check/elements/mxfdemux.c: (_sink_chain): Implement support for OP2a/b/c and OP3a/b/c, i.e. tracks with more than a single component. This currently only works for the case where the components are stored in playback order in the file. Set some more default/distinguished values for the structural metadata. Make some types more strict by choosing the correct subclasses. Set DISCONT flag on buffers after a component switch. Take the last partition from the random index pack for the footer partition of the header partition doesn't reference the footer partition. This gives us the final structural metadata for some more files in the beginning. 2008-12-29 18:22:26 +0000 Wim Taymans gst/mpegdemux/gstmpegdemux.c: Use the adjusted SCR for calculating the mux rate. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query), (gst_flups_demux_parse_pack_start): Use the adjusted SCR for calculating the mux rate. Don't update the rate estimation after a discont. 2008-12-29 17:55:18 +0000 Wim Taymans gst/mpegdemux/gstmpegdemux.*: The position member in the newsegment event corresponds to the stream_time of the segme... Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data): * gst/mpegdemux/gstmpegdemux.h: The position member in the newsegment event corresponds to the stream_time of the segment start position. 2008-12-29 17:30:03 +0000 Robin Stocker gst/mpegdemux/gstmpegdemux.c: Converting from time to bytes operates on the stream_time, not the SCR timeline. Original commit message from CVS: Patch by: Robin Stocker * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_src_query): Converting from time to bytes operates on the stream_time, not the SCR timeline. The position reporting should happen in stream_time, not the segment timestamp range. See #557161. 2008-12-29 16:45:20 +0000 Wim Taymans gst-libs/gst/app/gstappsrc.*: Add properties and methods to configure and retrieve the min and max latencies. Original commit message from CVS: * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_query), (gst_app_src_set_latencies), (gst_app_src_set_latency), (gst_app_src_get_latency), (gst_app_src_push_buffer_full): * gst-libs/gst/app/gstappsrc.h: Add properties and methods to configure and retrieve the min and max latencies. 2008-12-29 16:29:08 +0000 Sebastian Pölsterl gst/mpegdemux/mpegtspacketizer.c: Fix memleak. Fixes #565614. Original commit message from CVS: Patch by: Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: (mpegts_packetizer_parse_eit): Fix memleak. Fixes #565614. 2008-12-29 16:18:47 +0000 Sebastian Pölsterl gst/mpegdemux/mpegtspacketizer.c: Add a scrambled field to the service structures retrieved from SDT to determine if ... Original commit message from CVS: Patch by: Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: (mpegts_packetizer_parse_sdt): Add a scrambled field to the service structures retrieved from SDT to determine if a channel is scrambled. Fixes #565613. 2008-12-29 15:54:44 +0000 Damien Lespiau gst/pcapparse/: Patch to make gstpcapparse compile with mingw32 gcc. Fixes #565439. Original commit message from CVS: Patch by: Damien Lespiau * gst/pcapparse/Makefile.am: * gst/pcapparse/gstpcapparse.c: Patch to make gstpcapparse compile with mingw32 gcc. Fixes #565439. 2008-12-29 15:49:37 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Use method to get the internal SSRC. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_getcaps_send_rtp): Use method to get the internal SSRC. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (rtp_session_set_property), (rtp_session_get_property): Add property to congiure the internal SSRC of the session. Fixes #565910. 2008-12-29 15:21:58 +0000 Wim Taymans gst/rtpmanager/rtpsession.c: Only change the SSRC of the session and reset the internal source when the SSRC actually... Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (rtp_session_set_internal_ssrc): Only change the SSRC of the session and reset the internal source when the SSRC actually changed. See #565910. 2008-12-29 14:21:47 +0000 Wim Taymans gst/rtpmanager/rtpsource.*: When no payload was specified on the caps but there was a clock-rate, assume the clock-ra... Original commit message from CVS: * gst/rtpmanager/rtpsource.c: (rtp_source_init), (rtp_source_update_caps), (get_clock_rate): * gst/rtpmanager/rtpsource.h: When no payload was specified on the caps but there was a clock-rate, assume the clock-rate corresponds to the first payload type found in the RTP packets. Fixes #565509. 2008-12-23 16:32:05 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: With constant read failures, make sure we exit the read_device method. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: With constant read failures, make sure we exit the read_device method. 2008-12-23 15:26:30 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Post bus message with dvb read failure when unable to read from device. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Post bus message with dvb read failure when unable to read from device. 2008-12-23 12:25:47 +0000 Luotao Fu sys/fbdev/gstfbdevsink.c: Fix the Depth calculation. Original commit message from CVS: Patch by: Luotao Fu * sys/fbdev/gstfbdevsink.c: (gst_fbdevsink_getcaps): Fix the Depth calculation. Fixes #564114. 2008-12-23 11:39:59 +0000 Arnout Vandecappelle gst/rtpmanager/rtpjitterbuffer.*: Keep track of the last outgoing timestamp and of the last sender-side time. Timest... Original commit message from CVS: Patch by: Arnout Vandecappelle * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew): * gst/rtpmanager/rtpjitterbuffer.h: Keep track of the last outgoing timestamp and of the last sender-side time. Timestamps can only go forward if they do at the sender side, can only go back if they do at the sender side, and remain the same if they remain the same at the sender side. Fixes #565319. 2008-12-22 20:56:10 +0000 Sebastian Dröge gst/mxf/mxfmpeg.c: Add initial support for h.264 video (SMPTE RP2008). Original commit message from CVS: * gst/mxf/mxfmpeg.c: (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps): Add initial support for h.264 video (SMPTE RP2008). 2008-12-22 20:37:24 +0000 Sebastian Dröge gst/mxf/mxfmetadata.*: If resolving a metadata object failed the first time return Original commit message from CVS: * gst/mxf/mxfmetadata.c: (mxf_metadata_base_resolve): * gst/mxf/mxfmetadata.h: If resolving a metadata object failed the first time return FALSE for a second mxf_metadata_base_resolve() call instead of TRUE. 2008-12-22 10:14:35 +0000 Sebastian Dröge gst/mxf/: Cleanup of the includes. Original commit message from CVS: * gst/mxf/mxf.c: * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfd10.c: * gst/mxf/mxfdms1.c: * gst/mxf/mxfdms1.h: * gst/mxf/mxfmpeg.h: * gst/mxf/mxftypes.h: Cleanup of the includes. 2008-12-19 18:53:47 +0000 Mark Nauwelaerts gst/qtmux/gstqtmux.c: Do not tempt or suggest to violate gst_collect_pads API specification. Original commit message from CVS: * gst/qtmux/gstqtmux.c: (gst_qt_mux_change_state): Do not tempt or suggest to violate gst_collect_pads API specification. 2008-12-19 18:33:47 +0000 Mark Nauwelaerts gst/qtmux/: Dual license qtmux LGPL/MIT. Fixes #564232. Original commit message from CVS: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/descriptors.c: * gst/qtmux/descriptors.h: * gst/qtmux/fourcc.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: * gst/qtmux/properties.c: * gst/qtmux/properties.h: Dual license qtmux LGPL/MIT. Fixes #564232. 2008-12-19 10:06:24 +0000 Sebastian Dröge gst/mxf/: Add mxf_metadata_generic_sound_essence_descriptor_set_caps() to set rate and channels and use this for all ... Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_bwf_create_caps), (mxf_aes3_create_caps): * gst/mxf/mxfalaw.c: (mxf_alaw_create_caps): * gst/mxf/mxfd10.c: (mxf_d10_create_caps): * gst/mxf/mxfdemux.c: * gst/mxf/mxfmetadata.c: (mxf_metadata_source_package_resolve), (mxf_metadata_generic_picture_essence_descriptor_set_caps), (mxf_metadata_generic_sound_essence_descriptor_set_caps): * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: (mxf_mpeg_es_create_caps): Add mxf_metadata_generic_sound_essence_descriptor_set_caps() to set rate and channels and use this for all sound essence. Give some debug output when setting picture essence caps with invalid descriptor values. Fix height calculation from the frame layout a bit more and add a TODO to check if it's really correct now or if it needs more fixing (especially, does the framerate need adjustments?). 2008-12-18 17:49:08 +0000 Sebastian Dröge gst/mxf/: Add support for VC-3 (aka DNxHD essence, see SMPTE 2019-4). Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxf.c: (plugin_init): * gst/mxf/mxfvc3.c: (mxf_is_vc3_essence_track), (mxf_vc3_handle_essence_element), (mxf_vc3_create_caps), (mxf_vc3_init): * gst/mxf/mxfvc3.h: Add support for VC-3 (aka DNxHD essence, see SMPTE 2019-4). This is untested because of lack of sample files but should work fine. 2008-12-17 13:51:46 +0000 Wim Taymans Add appsrc and appsink documentation. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init): Add appsrc and appsink documentation. 2008-12-17 12:06:43 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: In push mode skip the run in again if we get buffers with an offset before the run in. This can h... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_chain): In push mode skip the run in again if we get buffers with an offset before the run in. This can happen on seeks for example. 2008-12-16 16:26:52 +0000 Stefan Kost Totally remove the internal taglists and fully use tagsetter. Fixes various tag muxing issues. Original commit message from CVS: * ext/celt/gstceltenc.c: * ext/celt/gstceltenc.h: * ext/metadata/gstmetadatamux.c: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: Totally remove the internal taglists and fully use tagsetter. Fixes various tag muxing issues. 2008-12-16 12:46:37 +0000 Sebastian Dröge tests/check/elements/mxfdemux.c: Increase the timeout to 3 minutes to prevent timeouts. Original commit message from CVS: * tests/check/elements/mxfdemux.c: (mxfdemux_suite): Increase the timeout to 3 minutes to prevent timeouts. 2008-12-16 12:37:15 +0000 Sebastian Dröge tests/check/elements/mxfdemux.*: Make sure the main loop is already running when handling the EOS event in pull mode.... Original commit message from CVS: * tests/check/elements/mxfdemux.c: (_sink_event): * tests/check/elements/mxfdemux.h: Make sure the main loop is already running when handling the EOS event in pull mode. This works around a race condition that can happen if the element goes into PLAYING, handles everything and sends EOS before the main loop is started. 2008-12-16 12:30:34 +0000 Sebastian Dröge gst/mxf/: Implement an essence element handling registry and use this instead of an hardcoded, large if-then-else block. Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_is_aes_bwf_essence_track), (mxf_bwf_handle_essence_element), (mxf_aes3_handle_essence_element), (mxf_bwf_create_caps), (mxf_aes3_create_caps), (mxf_aes_bwf_create_caps), (mxf_aes_bwf_init): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfalaw.c: (mxf_is_alaw_essence_track), (mxf_alaw_handle_essence_element), (mxf_alaw_create_caps), (mxf_alaw_init): * gst/mxf/mxfalaw.h: * gst/mxf/mxfd10.c: (mxf_is_d10_essence_track), (mxf_d10_picture_handle_essence_element), (mxf_d10_sound_handle_essence_element), (mxf_d10_create_caps), (mxf_d10_init): * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_generic_container_essence_element): * gst/mxf/mxfdv-dif.c: (mxf_is_dv_dif_essence_track), (mxf_dv_dif_handle_essence_element), (mxf_dv_dif_create_caps), (mxf_dv_dif_init): * gst/mxf/mxfdv-dif.h: * gst/mxf/mxfjpeg2000.c: (mxf_is_jpeg2000_essence_track), (mxf_jpeg2000_handle_essence_element), (mxf_jpeg2000_create_caps), (mxf_jpeg2000_init): * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmpeg.c: (mxf_is_mpeg_essence_track), (mxf_mpeg_video_handle_essence_element), (mxf_mpeg_audio_handle_essence_element), (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps), (mxf_mpeg_init): * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: (mxf_essence_element_handler_register), (mxf_essence_element_handler_find): * gst/mxf/mxfparse.h: * gst/mxf/mxfup.c: (mxf_is_up_essence_track), (mxf_up_handle_essence_element), (mxf_up_rgba_create_caps), (mxf_up_create_caps), (mxf_up_init): * gst/mxf/mxfup.h: Implement an essence element handling registry and use this instead of an hardcoded, large if-then-else block. 2008-12-16 10:50:40 +0000 Edward Hervey tests/check/Makefile.am: Blacklist rfbsrc from the state change test. Original commit message from CVS: * tests/check/Makefile.am: Blacklist rfbsrc from the state change test. 2008-12-16 09:59:38 +0000 Sebastian Dröge tests/check/: Add push and pull mode unit test for mxfdemux. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/mxfdemux.c: (_pad_added), (_sink_chain), (_sink_event), (_create_sink_pad), (_create_src_pad_push), (_src_getrange), (_src_query), (_create_src_pad_pull), (GST_START_TEST), (mxfdemux_suite): * tests/check/elements/mxfdemux.h: Add push and pull mode unit test for mxfdemux. 2008-12-16 08:35:05 +0000 Sebastian Dröge Add initial documentation for the MXF plugin and mxfdemux. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-mxf.xml: * gst/mxf/mxfdemux.c: * gst/mxf/mxfdemux.h: Add initial documentation for the MXF plugin and mxfdemux. 2008-12-16 08:21:29 +0000 Sebastian Dröge gst/mxf/: Rename MXFMetadataBase methods to reflect that they belong to Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_resolve_references): * gst/mxf/mxfmetadata.c: (mxf_metadata_base_resolve_default), (mxf_metadata_base_class_init), (mxf_metadata_base_parse), (mxf_metadata_base_resolve), (mxf_metadata_new), (mxf_metadata_preface_resolve), (mxf_metadata_content_storage_resolve), (mxf_metadata_essence_container_data_resolve), (mxf_metadata_generic_package_resolve), (mxf_metadata_source_package_resolve), (mxf_metadata_track_resolve), (mxf_metadata_sequence_resolve), (mxf_metadata_dm_segment_resolve), (mxf_metadata_generic_descriptor_resolve), (mxf_metadata_multiple_descriptor_resolve): * gst/mxf/mxfmetadata.h: Rename MXFMetadataBase methods to reflect that they belong to MXFMetadataBase and not MXFMetadata. 2008-12-15 18:12:26 +0000 Sebastian Dröge gst/mxf/: Return FALSE when parsing a metadata tag failed. Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_handle_tag), (mxf_metadata_aes3_audio_essence_descriptor_handle_tag): * gst/mxf/mxfmetadata.c: (mxf_metadata_multiple_descriptor_handle_tag): Return FALSE when parsing a metadata tag failed. Remove some useless return value assignments. 2008-12-15 17:27:00 +0000 Sebastian Dröge gst/mxf/: Convert the structural metadata to GstMiniObjects to make a lot of code easier and to make everything bette... Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxf.c: (plugin_init): * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_handle_tag), (mxf_metadata_wave_audio_essence_descriptor_init), (mxf_metadata_wave_audio_essence_descriptor_class_init), (mxf_metadata_aes3_audio_essence_descriptor_finalize), (mxf_metadata_aes3_audio_essence_descriptor_handle_tag), (mxf_metadata_aes3_audio_essence_descriptor_init), (mxf_metadata_aes3_audio_essence_descriptor_class_init), (mxf_is_aes_bwf_essence_track), (mxf_bwf_create_caps), (mxf_aes3_create_caps), (mxf_aes_bwf_create_caps), (mxf_aes_bwf_init): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfalaw.c: (mxf_is_alaw_essence_track), (mxf_alaw_create_caps), (mxf_alaw_init): * gst/mxf/mxfalaw.h: * gst/mxf/mxfd10.c: (mxf_is_d10_essence_track), (mxf_d10_create_caps), (mxf_d10_init): * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_find_package), (gst_mxf_demux_choose_package), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_metadata), (gst_mxf_demux_handle_generic_container_essence_element), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_src_query): * gst/mxf/mxfdemux.h: * gst/mxf/mxfdv-dif.c: (mxf_is_dv_dif_essence_track), (mxf_dv_dif_create_caps), (mxf_dv_dif_init): * gst/mxf/mxfdv-dif.h: * gst/mxf/mxfjpeg2000.c: (mxf_is_jpeg2000_essence_track), (mxf_jpeg2000_create_caps), (mxf_jpeg2000_init): * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmetadata.c: (mxf_metadata_base_finalize), (mxf_metadata_base_handle_tag), (mxf_metadata_base_resolve), (mxf_metadata_base_init), (mxf_metadata_base_class_init), (mxf_metadata_parse), (mxf_metadata_resolve), (mxf_metadata_handle_tag), (mxf_metadata_class_init), (mxf_metadata_init), (mxf_metadata_init_types), (mxf_metadata_register), (mxf_metadata_new), (mxf_metadata_preface_finalize), (mxf_metadata_preface_handle_tag), (mxf_metadata_preface_resolve), (mxf_metadata_preface_init), (mxf_metadata_preface_class_init), (mxf_metadata_identification_finalize), (mxf_metadata_identification_handle_tag), (mxf_metadata_identification_init), (mxf_metadata_identification_class_init), (mxf_metadata_content_storage_finalize), (mxf_metadata_content_storage_handle_tag), (mxf_metadata_content_storage_resolve), (mxf_metadata_content_storage_init), (mxf_metadata_content_storage_class_init), (mxf_metadata_essence_container_data_handle_tag), (mxf_metadata_essence_container_data_resolve), (mxf_metadata_essence_container_data_init), (mxf_metadata_essence_container_data_class_init), (mxf_metadata_generic_package_finalize), (mxf_metadata_generic_package_handle_tag), (mxf_metadata_generic_package_resolve), (mxf_metadata_generic_package_init), (mxf_metadata_generic_package_class_init), (mxf_metadata_material_package_resolve), (mxf_metadata_material_package_init), (mxf_metadata_material_package_class_init), (mxf_metadata_source_package_finalize), (mxf_metadata_source_package_handle_tag), (mxf_metadata_source_package_resolve), (mxf_metadata_source_package_init), (mxf_metadata_source_package_class_init), (mxf_metadata_track_finalize), (mxf_metadata_track_handle_tag), (mxf_metadata_track_resolve), (mxf_metadata_track_init), (mxf_metadata_track_class_init), (mxf_metadata_track_identifier_parse), (mxf_metadata_timeline_track_handle_tag), (mxf_metadata_timeline_track_init), (mxf_metadata_timeline_track_class_init), (mxf_metadata_event_track_handle_tag), (mxf_metadata_event_track_init), (mxf_metadata_event_track_class_init), (mxf_metadata_static_track_init), (mxf_metadata_static_track_class_init), (mxf_metadata_sequence_finalize), (mxf_metadata_sequence_handle_tag), (mxf_metadata_sequence_resolve), (mxf_metadata_sequence_init), (mxf_metadata_sequence_class_init), (mxf_metadata_structural_component_handle_tag), (mxf_metadata_structural_component_init), (mxf_metadata_structural_component_class_init), (mxf_metadata_timecode_component_handle_tag), (mxf_metadata_timecode_component_init), (mxf_metadata_timecode_component_class_init), (mxf_metadata_source_clip_handle_tag), (mxf_metadata_source_clip_resolve), (mxf_metadata_source_clip_init), (mxf_metadata_source_clip_class_init), (mxf_metadata_dm_source_clip_finalize), (mxf_metadata_dm_source_clip_handle_tag), (mxf_metadata_dm_source_clip_init), (mxf_metadata_dm_source_clip_class_init), (mxf_metadata_dm_segment_finalize), (mxf_metadata_dm_segment_handle_tag), (mxf_metadata_dm_segment_resolve), (mxf_metadata_dm_segment_init), (mxf_metadata_dm_segment_class_init), (mxf_metadata_generic_descriptor_finalize), (mxf_metadata_generic_descriptor_handle_tag), (mxf_metadata_generic_descriptor_resolve), (mxf_metadata_generic_descriptor_init), (mxf_metadata_generic_descriptor_class_init), (mxf_metadata_file_descriptor_handle_tag), (mxf_metadata_file_descriptor_init), (mxf_metadata_file_descriptor_class_init), (mxf_metadata_generic_picture_essence_descriptor_handle_tag), (mxf_metadata_generic_picture_essence_descriptor_init), (mxf_metadata_generic_picture_essence_descriptor_class_init), (mxf_metadata_generic_picture_essence_descriptor_set_caps), (mxf_metadata_generic_sound_essence_descriptor_handle_tag), (mxf_metadata_generic_sound_essence_descriptor_init), (mxf_metadata_generic_sound_essence_descriptor_class_init), (mxf_metadata_cdci_picture_essence_descriptor_handle_tag), (mxf_metadata_cdci_picture_essence_descriptor_init), (mxf_metadata_cdci_picture_essence_descriptor_class_init), (mxf_metadata_rgba_picture_essence_descriptor_finalize), (mxf_metadata_rgba_picture_essence_descriptor_handle_tag), (mxf_metadata_rgba_picture_essence_descriptor_init), (mxf_metadata_rgba_picture_essence_descriptor_class_init), (mxf_metadata_generic_data_essence_descriptor_handle_tag), (mxf_metadata_generic_data_essence_descriptor_init), (mxf_metadata_generic_data_essence_descriptor_class_init), (mxf_metadata_multiple_descriptor_finalize), (mxf_metadata_multiple_descriptor_handle_tag), (mxf_metadata_multiple_descriptor_resolve), (mxf_metadata_multiple_descriptor_init), (mxf_metadata_multiple_descriptor_class_init), (mxf_metadata_locator_init), (mxf_metadata_locator_class_init), (mxf_metadata_text_locator_finalize), (mxf_metadata_text_locator_handle_tag), (mxf_metadata_text_locator_init), (mxf_metadata_text_locator_class_init), (mxf_metadata_network_locator_finalize), (mxf_metadata_network_locator_handle_tag), (mxf_metadata_network_locator_init), (mxf_metadata_network_locator_class_init): * gst/mxf/mxfmetadata.h: * gst/mxf/mxfmpeg.c: (mxf_metadata_mpeg_video_descriptor_handle_tag), (mxf_metadata_mpeg_video_descriptor_init), (mxf_metadata_mpeg_video_descriptor_class_init), (mxf_is_mpeg_essence_track), (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps), (mxf_mpeg_init): * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: (mxf_index_table_segment_parse), (mxf_local_tag_add_to_hash_table): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: * gst/mxf/mxfup.c: (mxf_is_up_essence_track), (mxf_up_create_caps), (mxf_up_init): * gst/mxf/mxfup.h: Convert the structural metadata to GstMiniObjects to make a lot of code easier and to make everything better extensible. Add a "registry" for metadata handlers to improve extensibility even more and to remove metadata type specifics from mxfdemux. Clean up a lot of parts and add some more NULL checks. 2008-12-15 15:56:18 +0000 Stefan Kost ext/faac/gstfaac.c: Fix default for outputformat property. Original commit message from CVS: * ext/faac/gstfaac.c: Fix default for outputformat property. 2008-12-15 12:02:26 +0000 Wim Taymans examples/app/: Fix example to unref after emiting the push-buffer action. Original commit message from CVS: * examples/app/appsrc-ra.c: (feed_data): * examples/app/appsrc-seekable.c: (feed_data): * examples/app/appsrc-stream.c: (read_data): * examples/app/appsrc-stream2.c: (feed_data): Fix example to unref after emiting the push-buffer action. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_push_buffer_full), (gst_app_src_push_buffer), (gst_app_src_push_buffer_action): Don't take the ref on the buffer in push-buffer action because it's too awkward for bindings. Fixes #564482. 2008-12-13 16:26:39 +0000 Edward Hervey m4/Makefile.am: More .m4 that aren't shipped with gettext 0.17 anymore. Original commit message from CVS: * m4/Makefile.am: More .m4 that aren't shipped with gettext 0.17 anymore. 2008-12-13 13:00:10 +0000 Edward Hervey m4/Makefile.am: inttypes.m4 hasn't been available since gettext-0.15, and since we now require gettext >= 0.17 ... we... Original commit message from CVS: * m4/Makefile.am: inttypes.m4 hasn't been available since gettext-0.15, and since we now require gettext >= 0.17 ... we can remove it from the list of files to dist. 2008-12-13 08:06:33 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Add a generic handler for descriptive metadata so we can get some debug output and let users file... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_descriptive_metadata), (gst_mxf_demux_handle_klv_packet): Add a generic handler for descriptive metadata so we can get some debug output and let users file bugs for unsupport descriptive metadata schemes. 2008-12-12 10:29:31 +0000 Sebastian Dröge gst/mxf/: Major update of the TODO lists. There's still much to do. Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: * gst/mxf/mxfalaw.c: (mxf_alaw_create_caps): * gst/mxf/mxfdemux.c: * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_create_caps): * gst/mxf/mxfjpeg2000.c: * gst/mxf/mxfmpeg.c: * gst/mxf/mxfup.c: Major update of the TODO lists. There's still much to do. 2008-12-11 14:35:08 +0000 Sebastian Dröge gst/mxf/: Implement parsing of Event Tracks, Static Tracks, DM Segments and DM Source Clips as a preparation for desc... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_metadata_track), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfparse.c: (mxf_metadata_track_parse), (mxf_metadata_structural_component_parse), (mxf_metadata_structural_component_reset): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Implement parsing of Event Tracks, Static Tracks, DM Segments and DM Source Clips as a preparation for descriptive metadata support. Next step is to implement SMPTE S380M, "Descriptive Metadata Scheme-1". 2008-12-09 13:44:45 +0000 Sebastian Dröge gst/mxf/mxfjpeg2000.c: Implement detection of the colorspace used by the Original commit message from CVS: * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): Implement detection of the colorspace used by the JPEG2000 codestream. XYZ colorspace isn't supported by our decoders yet unfortunately. 2008-12-08 15:46:13 +0000 Sebastian Dröge gst/mxf/mxfparse.c: All frame layout values except 0 are for interlaced video, not only 1 and 2. Original commit message from CVS: * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): All frame layout values except 0 are for interlaced video, not only 1 and 2. 2008-12-08 15:28:58 +0000 Sebastian Dröge gst/mxf/: Remove the concept of "final" metadata, broken files have updated metadata in following partitions even if ... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_primer_pack), (gst_mxf_demux_handle_metadata_preface), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_choose_package), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_parse_footer_metadata), (gst_mxf_demux_handle_klv_packet): * gst/mxf/mxfdemux.h: * gst/mxf/mxftypes.h: Remove the concept of "final" metadata, broken files have updated metadata in following partitions even if the current partition is closed and complete. If there's a second primer pack inside a partition ignore the second one instead of throwing an error. Store the type of a track (audio, video, timestamp, ...) inside the track struct. Post no-more-pads only once for a stream and not a second time when switching the currently playing package. When updating all streams make sure that we could select and find a package instead of dereferencing NULL. Allow descriptive metadata inside metadata parts of a file when pulling the footer metadata too. Only switch the currently playing package if a new one was chosen and the metadata is in a resolved state. If the latter isn't true postpone the switch until the metadata is resolved. Pull the footer metadata directly after parsing the header partition pack if it's not closed or not complete instead of waiting until the next KLV packet. 2008-12-08 13:48:46 +0000 Sebastian Dröge gst/mxf/mxfup.c: Don't create a subbuffer, instead just change the buffer metadata of the input buffer. Original commit message from CVS: * gst/mxf/mxfup.c: (mxf_up_handle_essence_element): Don't create a subbuffer, instead just change the buffer metadata of the input buffer. 2008-12-07 20:12:33 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Rename GstMXFPad to GstMXFDemuxPad to prevent name clashes with the GstMXFMuxPad in the muxer (la... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_pad_finalize), (gst_mxf_demux_pad_class_init), (gst_mxf_demux_pad_init), (gst_mxf_demux_remove_pad), (gst_mxf_demux_reset_metadata), (gst_mxf_demux_combine_flows), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_generic_container_essence_element), (gst_mxf_demux_pull_random_index_pack), (gst_mxf_demux_loop), (gst_mxf_demux_src_query): Rename GstMXFPad to GstMXFDemuxPad to prevent name clashes with the GstMXFMuxPad in the muxer (later). Pull the random index pack only directly after skipping the run in and don't allocate an array for it if parsing it failed. 2008-12-07 18:52:54 +0000 Sebastian Dröge gst/mxf/mxfd10.c: Use the mapping data for storing the channel count and the width instead of parsing caps for every ... Original commit message from CVS: * gst/mxf/mxfd10.c: (mxf_d10_sound_handle_essence_element), (mxf_d10_create_caps): Use the mapping data for storing the channel count and the width instead of parsing caps for every buffer. 2008-12-07 18:39:41 +0000 Sebastian Dröge gst/mxf/mxfup.c: Handle the image start and end offsets, otherwise we output too large image buffers. Original commit message from CVS: * gst/mxf/mxfup.c: (mxf_up_handle_essence_element), (mxf_up_rgba_create_caps): Handle the image start and end offsets, otherwise we output too large image buffers. 2008-12-07 17:57:13 +0000 Sebastian Dröge gst/mxf/mxfmpeg.c: Set codec name tags for the MPEG audio essence. Original commit message from CVS: * gst/mxf/mxfmpeg.c: (mxf_mpeg_es_create_caps): Set codec name tags for the MPEG audio essence. 2008-12-07 17:16:29 +0000 Sebastian Dröge gst/mxf/: Add initial support for uncompressed video essence (SMPTE S384M). Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams): * gst/mxf/mxftypes.h: * gst/mxf/mxfup.c: (mxf_is_up_essence_track), (mxf_up_handle_essence_element), (mxf_up_rgba_create_caps), (mxf_up_create_caps): * gst/mxf/mxfup.h: Add initial support for uncompressed video essence (SMPTE S384M). * gst/mxf/mxfparse.c: (mxf_metadata_rgba_picture_essence_descriptor_handle_tag), (mxf_metadata_rgba_picture_essence_descriptor_reset): Fix parsing of the RGBA descriptor and add support for parsing the pixel layout. 2008-12-06 20:46:46 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: The previous partition field of the partition is relative to the current partition and not to the... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_parse_footer_metadata): The previous partition field of the partition is relative to the current partition and not to the offset of the header partition. 2008-12-06 19:46:05 +0000 Sebastian Dröge gst/mxf/mxfd10.c: Document decoding of the AES3 data and also skip the 32 bit header in the beginning of every buffer... Original commit message from CVS: * gst/mxf/mxfd10.c: (mxf_d10_sound_handle_essence_element): Document decoding of the AES3 data and also skip the 32 bit header in the beginning of every buffer, otherwise we get one broken audio channel. 2008-12-05 12:26:02 +0000 Sebastian Dröge gst/mxf/: Implement parsing of the generic data essence descriptor. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_metadata_generic_data_essence_descriptor), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfdemux.h: * gst/mxf/mxfparse.c: (mxf_metadata_generic_data_essence_descriptor_handle_tag), (mxf_metadata_generic_data_essence_descriptor_reset): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Implement parsing of the generic data essence descriptor. 2008-12-05 10:32:55 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Generalize some lines of codes that are more or less the same by a macro. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_resolve_references): Generalize some lines of codes that are more or less the same by a macro. 2008-12-04 20:11:17 +0000 Sebastian Dröge configure.ac: Apparently AC_CONFIG_MACRO_DIR breaks when using more than one macro directory, reverting last change. Original commit message from CVS: * configure.ac: Apparently AC_CONFIG_MACRO_DIR breaks when using more than one macro directory, reverting last change. 2008-12-04 19:50:10 +0000 Sebastian Dröge configure.ac: Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to our M4 macros. Original commit message from CVS: * configure.ac: Set AC_CONFIG_MACRO_DIR to common/m4 to point autoconf to our M4 macros. 2008-12-04 17:51:37 +0000 Michael Smith gst/selector/gstinputselector.c: Ensure we emit notify::active-pad when auto-selecting a pad due to it having activit... Original commit message from CVS: * gst/selector/gstinputselector.c: Ensure we emit notify::active-pad when auto-selecting a pad due to it having activity and us not having an existing active pad. Fixes #563147 2008-12-04 13:28:45 +0000 Sebastian Dröge gst/mxf/: Coding style fixes. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_resolve_references): * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_create_caps): * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): Coding style fixes. * gst/mxf/mxfmpeg.c: (mxf_mpeg_audio_handle_essence_element), (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps): Add support for MPEG, AC3, DTS audio. 2008-12-04 09:26:25 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Ignore zero sized essence elements. They're often inserted to fulfill the streaming requirements. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_generic_container_essence_element): Ignore zero sized essence elements. They're often inserted to fulfill the streaming requirements. 2008-12-04 08:50:48 +0000 Sebastian Dröge gst/mxf/mxfparse.c: Fix setting of the height/width and PAR of video streams. Original commit message from CVS: * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): Fix setting of the height/width and PAR of video streams. 2008-12-04 08:37:18 +0000 Sebastian Dröge gst/mxf/: Add support for SMPTE D10 essence (SMPTE 386M). Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfd10.c: (mxf_is_d10_essence_track), (mxf_d10_picture_handle_essence_element), (mxf_d10_sound_handle_essence_element), (mxf_d10_create_caps): * gst/mxf/mxfd10.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams): Add support for SMPTE D10 essence (SMPTE 386M). * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): Don't set width/height and PAR on the caps as those values are wrong for most files (height is sometimes the height of a field and aspect ratio is some random value). * gst/mxf/mxfaes-bwf.c: (mxf_bwf_create_caps), (mxf_aes3_create_caps): Fix calculation of block align if it isn't set in the descriptor. 2008-12-03 16:08:28 +0000 Sebastian Dröge gst/mxf/: Add support for AES3 audio (SMPTE 382M). Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_aes3_audio_essence_descriptor_handle_tag), (mxf_metadata_aes3_audio_essence_descriptor_reset), (mxf_aes3_handle_essence_element), (mxf_bwf_create_caps), (mxf_aes3_create_caps), (mxf_aes_bwf_create_caps): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_metadata_aes3_audio_essence_descriptor), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfdemux.h: Add support for AES3 audio (SMPTE 382M). * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_create_caps): * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): Fix coding style. 2008-12-03 13:17:41 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Improve debugging a bit. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_generic_container_essence_element): Improve debugging a bit. 2008-12-03 11:43:00 +0000 Sebastian Dröge gst/flv/gstflvparse.c: Check if strings are valid UTF8 before using them. Original commit message from CVS: * gst/flv/gstflvparse.c: (FLV_GET_STRING): Check if strings are valid UTF8 before using them. 2008-12-03 10:15:27 +0000 Sebastian Dröge gst/mxf/mxfparse.c: Remove FIXME, zero-ULs and UMIDs are really invalid and we can use them as "unset" value. Original commit message from CVS: * gst/mxf/mxfparse.c: Remove FIXME, zero-ULs and UMIDs are really invalid and we can use them as "unset" value. 2008-12-03 08:04:38 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Use a single "track_%u" src pad template and use the track ID of the playback package for the pad... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_base_init): Use a single "track_%u" src pad template and use the track ID of the playback package for the pad name instead of the track ID of the source package, as the latter could be the same for more than one track if they're in different packages. 2008-12-02 06:21:21 +0000 David Schleef ext/jp2k/gstjasperenc.c: Some compilers complain about uninitialized variable; add a g_assert_not_reached() Original commit message from CVS: * ext/jp2k/gstjasperenc.c: Some compilers complain about uninitialized variable; add a g_assert_not_reached() 2008-12-01 19:36:35 +0000 이문형 gst-libs/gst/app/gstappsrc.c: Don't forget to release the lock again if we bail out because some pad is flushing or w... Original commit message from CVS: Patch by: 이문형 * gst-libs/gst/app/gstappsrc.c: (gst_app_src_push_buffer): Don't forget to release the lock again if we bail out because some pad is flushing or we've reached EOS, otherwise things will lock up next time _push_buffer() is called (#562802). 2008-12-01 16:37:45 +0000 Mark Nauwelaerts gst/qtmux/atoms.c: Fix mj2 sample description metadata construction. Original commit message from CVS: * gst/qtmux/atoms.c: (build_jp2h_extension): Fix mj2 sample description metadata construction. 2008-12-01 15:50:40 +0000 Sebastian Dröge gst/mxf/mxfjpeg2000.c: Use new image/x-jpc caps for the raw JPEG2000 codestream. Original commit message from CVS: * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): Use new image/x-jpc caps for the raw JPEG2000 codestream. For now assume sRGB as colorspace, has to be read from the descriptor somehow later. 2008-12-01 15:48:13 +0000 Sebastian Dröge ext/jp2k/: Add image/x-jpc caps name for real, raw JPEG2000 codestream data. Original commit message from CVS: * ext/jp2k/gstjasperdec.c: (gst_jasper_dec_sink_setcaps): * ext/jp2k/gstjasperenc.c: (gst_jasper_enc_reset), (gst_jasper_enc_set_src_caps), (gst_jasper_enc_init_encoder), (gst_jasper_enc_sink_setcaps), (gst_jasper_enc_get_data): * ext/jp2k/gstjasperenc.h: Add image/x-jpc caps name for real, raw JPEG2000 codestream data. In 0.11 we should merge image/x-j2c and image/x-jpc and simply drop the non-standard boxing in the jasper elements and handle it in qtmux/qtdemux. image/x-jpc will be used by mxfdemux later. Also add support for JP2 output in jp2kenc. 2008-12-01 15:24:37 +0000 Sebastian Dröge gst/mxf/: Add the codec name, and if possible the avg bitrate, to the pad's taglist. Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_bwf_create_caps): * gst/mxf/mxfalaw.c: (mxf_alaw_create_caps): * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_generic_container_essence_element): * gst/mxf/mxfdv-dif.c: (mxf_dv_dif_create_caps): * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): * gst/mxf/mxfmpeg.c: (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps): Add the codec name, and if possible the avg bitrate, to the pad's taglist. 2008-12-01 14:25:19 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: If the preface references a primary package use this as the default playback package unless one w... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_choose_package): If the preface references a primary package use this as the default playback package unless one was specified by the "package" property. If there's no preface primary package still try to use the first material package. 2008-11-30 17:58:32 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: If there's no descriptor for the track in the track's source package and there's a single descrip... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_resolve_references): If there's no descriptor for the track in the track's source package and there's a single descriptor without a linked track assume that it belongs to this track. 2008-11-30 17:42:30 +0000 Sebastian Dröge gst/mxf/: Some random cleanup. Original commit message from CVS: * gst/mxf/mxfalaw.c: (mxf_is_alaw_essence_track): * gst/mxf/mxfalaw.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams): * gst/mxf/mxfjpeg2000.c: (mxf_is_jpeg2000_essence_track): * gst/mxf/mxfjpeg2000.h: * gst/mxf/mxfmpeg.c: (mxf_is_mpeg_essence_track), (mxf_mpeg_es_create_caps), (mxf_mpeg_create_caps): * gst/mxf/mxfmpeg.h: Some random cleanup. 2008-11-30 17:26:55 +0000 Sebastian Dröge gst/mxf/: Add property to select the top-level source package or material package that should be used for playback. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_remove_pads), (gst_mxf_demux_reset), (gst_mxf_demux_find_package), (gst_mxf_demux_choose_package), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_set_property), (gst_mxf_demux_get_property), (gst_mxf_demux_finalize), (gst_mxf_demux_class_init): * gst/mxf/mxfdemux.h: * gst/mxf/mxfparse.c: (mxf_umid_from_string): * gst/mxf/mxfparse.h: Add property to select the top-level source package or material package that should be used for playback. 2008-11-30 16:21:42 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Make sure that demux->offset has the correct value before calling any gst_mxf_demux_handle_* func... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_pull_random_index_pack): Make sure that demux->offset has the correct value before calling any gst_mxf_demux_handle_* functions. 2008-11-30 14:12:04 +0000 Sebastian Dröge gst/mxf/: Set the correct MPEG video version if possible and add support for MPEG4 video, including codec_data. Original commit message from CVS: * gst/mxf/mxfjpeg2000.c: (mxf_jpeg2000_create_caps): * gst/mxf/mxfmpeg.c: (mxf_mpeg_video_create_caps): Set the correct MPEG video version if possible and add support for MPEG4 video, including codec_data. 2008-11-29 20:25:06 +0000 Sebastian Dröge gst/mxf/: Add initial support for JPEG2000 encoded video essence. Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams): * gst/mxf/mxfjpeg2000.c: (mxf_is_jpeg2000_video_essence_track), (mxf_jpeg2000_handle_essence_element), (mxf_jpeg2000_create_caps): * gst/mxf/mxfjpeg2000.h: Add initial support for JPEG2000 encoded video essence. * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): Set the framerate in the video caps. 2008-11-29 20:07:11 +0000 Sebastian Dröge ext/jp2k/gstjasperdec.c: Don't unref the element instance if we don't own a reference. Original commit message from CVS: * ext/jp2k/gstjasperdec.c: (gst_jasper_dec_sink_setcaps): Don't unref the element instance if we don't own a reference. 2008-11-29 13:33:30 +0000 Sebastian Dröge Require gettext 0.17 because older versions don't mix with libtool 2.2. At build time an older gettext version will s... Original commit message from CVS: Patch by: Cygwin Ports maintainer * autogen.sh: * configure.ac: Require gettext 0.17 because older versions don't mix with libtool 2.2. At build time an older gettext version will still work. Fixes bug #556091. 2008-11-28 18:55:01 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Only try to pull the random index pack at the end of file one time and not for every single packe... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_pull_random_index_pack): Only try to pull the random index pack at the end of file one time and not for every single packet if it fails. 2008-11-28 18:13:30 +0000 Sebastian Dröge gst/mxf/: Add support for A-Law encoded audio essence (SMPTE 388M and 382M). Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfaes-bwf.c: (mxf_bwf_create_caps): * gst/mxf/mxfalaw.c: (mxf_is_alaw_audio_essence_track), (mxf_alaw_handle_essence_element), (mxf_alaw_create_caps): * gst/mxf/mxfalaw.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams): Add support for A-Law encoded audio essence (SMPTE 388M and 382M). 2008-11-28 14:22:50 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file with latest changes Original commit message from CVS: update spec file with latest changes 2008-11-28 11:24:24 +0000 Sebastian Dröge gst/mxf/: Implement parsing of index table segments, which will later be used for seeking. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset), (gst_mxf_demux_handle_index_table_segment): * gst/mxf/mxfdemux.h: * gst/mxf/mxfparse.c: (mxf_index_table_segment_parse), (mxf_index_table_segment_reset): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Implement parsing of index table segments, which will later be used for seeking. 2008-11-28 09:49:56 +0000 Sebastian Dröge Update audioresample documentation for the new element name. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mplex.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst/audioresample/gstaudioresample.c: Update audioresample documentation for the new element name. 2008-11-28 08:37:32 +0000 Sebastian Dröge gst/audioresample/gstaudioresample.c: And now also update the debug category from audioresample to legacyresample. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: And now also update the debug category from audioresample to legacyresample. 2008-11-27 19:27:04 +0000 Sebastian Dröge configure.ac: Remove speexresample from the build system too. Original commit message from CVS: * configure.ac: Remove speexresample from the build system too. 2008-11-27 19:22:42 +0000 Sebastian Dröge Remove old speexresample files. Original commit message from CVS: * gst/speexresample/Makefile.am: * gst/speexresample/README: * gst/speexresample/arch.h: * gst/speexresample/fixed_arm4.h: * gst/speexresample/fixed_arm5e.h: * gst/speexresample/fixed_bfin.h: * gst/speexresample/fixed_debug.h: * gst/speexresample/fixed_generic.h: * gst/speexresample/gstspeexresample.c: * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: * gst/speexresample/resample_sse.h: * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_double.c: * gst/speexresample/speex_resampler_float.c: * gst/speexresample/speex_resampler_int.c: * gst/speexresample/speex_resampler_wrapper.h: * tests/check/elements/speexresample.c: Remove old speexresample files. 2008-11-27 17:07:43 +0000 Sebastian Dröge docs/plugins/inspect/plugin-speexresample.xml: Remove old file. Original commit message from CVS: * docs/plugins/inspect/plugin-speexresample.xml: Remove old file. 2008-11-27 17:06:43 +0000 Sebastian Dröge docs/plugins/inspect/plugin-legacyresample.xml: Add missing file. Original commit message from CVS: * docs/plugins/inspect/plugin-legacyresample.xml: Add missing file. 2008-11-27 16:58:31 +0000 Sebastian Dröge Integrate the moved audioresample into the build system and rename it to legacyresample. Fixes bug #558124. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrparse.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-twolame.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst/audioresample/gstaudioresample.c: (plugin_init): * gst/audioresample/Makefile.am: * tests/check/Makefile.am: * tests/check/elements/audioresample.c: (setup_audioresample), (GST_START_TEST): Integrate the moved audioresample into the build system and rename it to legacyresample. Fixes bug #558124. 2008-11-27 16:26:39 +0000 Sebastian Dröge gst/mxf/: Implement parsing of the random index pack, which provides a seek table (including body sid) to the start o... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset), (gst_mxf_demux_handle_random_index_pack), (gst_mxf_demux_pull_random_index_pack), (gst_mxf_demux_loop): * gst/mxf/mxfdemux.h: * gst/mxf/mxfparse.c: (mxf_random_index_pack_parse): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Implement parsing of the random index pack, which provides a seek table (including body sid) to the start of partition packs. Later this will be used for reading all index table segments of the complete file efficiently. 2008-11-27 10:09:53 +0000 Sebastian Dröge gst/mxf/: Add fundamental support for DV-DIF essence streams. Original commit message from CVS: * gst/mxf/Makefile.am: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_klv_packet): * gst/mxf/mxfdv-dif.c: (mxf_is_dv_dif_essence_track), (mxf_dv_dif_handle_essence_element), (mxf_dv_dif_create_caps): * gst/mxf/mxfdv-dif.h: * gst/mxf/mxfparse.c: (mxf_is_descriptive_metadata): * gst/mxf/mxfparse.h: Add fundamental support for DV-DIF essence streams. Handle descriptive metadata packets as metadata packets. 2008-11-27 08:49:08 +0000 Sebastian Dröge gst/mxf/mxfdemux.*: Only try to pull the footer metadata once and not on every KLV packet if it failed before. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset), (gst_mxf_demux_handle_klv_packet): * gst/mxf/mxfdemux.h: Only try to pull the footer metadata once and not on every KLV packet if it failed before. 2008-11-26 12:40:18 +0000 Wim Taymans gst/rtpmanager/rtpsession.c: Make obtain_source return an aditional ref so that we don't lose our ref to it when a se... Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (obtain_source), (rtp_session_create_source), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_rr), (rtp_session_process_sdes), (rtp_session_process_bye): Make obtain_source return an aditional ref so that we don't lose our ref to it when a session cleanup occurs when we are emiting a signal. Emit the on_new_ssrc signal for the CSRC, not the SSRC. Fixes #562319. 2008-11-26 12:02:21 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Reset the sync parameters when clearing the payload type map too. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_reset_sync), (gst_rtp_bin_clear_pt_map): Reset the sync parameters when clearing the payload type map too. Fixes #562312. 2008-11-26 11:44:37 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.*: Remove a lot of per stream state that is not needed and pass new info in the method call. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (get_client), (gst_rtp_bin_reset_sync), (gst_rtp_bin_associate), (gst_rtp_bin_handle_sync), (create_stream), (gst_rtp_bin_class_init), (new_ssrc_pad_found): * gst/rtpmanager/gstrtpbin.h: Remove a lot of per stream state that is not needed and pass new info in the method call. Add signal to reset sync parameters. Avoid parsing the caps to get a clock_base, we get this from the sync signal now. 2008-11-26 11:30:28 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Properly combine flow returns of the source pads. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_pad_init), (gst_mxf_demux_reset_metadata), (gst_mxf_demux_combine_flows), (gst_mxf_demux_handle_generic_container_essence_element): Properly combine flow returns of the source pads. Improve debugging and reset pad fields together with the metadata to prevent invalid memory references. * gst/mxf/mxfparse.c: (mxf_metadata_preface_parse): Fix typo. 2008-11-26 10:37:34 +0000 Sebastian Dröge gst/mxf/: When memset'ing the descriptors to zeroes only touch the part of this descriptor, not it's parent type. Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_reset): * gst/mxf/mxfmpeg.c: (mxf_metadata_mpeg_video_descriptor_reset): * gst/mxf/mxfparse.c: (mxf_metadata_file_descriptor_handle_tag), (mxf_metadata_file_descriptor_reset), (mxf_metadata_generic_sound_essence_descriptor_reset), (mxf_metadata_generic_picture_essence_descriptor_reset), (mxf_metadata_cdci_picture_essence_descriptor_reset), (mxf_metadata_rgba_picture_essence_descriptor_reset), (mxf_metadata_multiple_descriptor_reset): * gst/mxf/mxfparse.h: When memset'ing the descriptors to zeroes only touch the part of this descriptor, not it's parent type. Set correct default values for all metadata fields. 2008-11-26 04:57:22 +0000 David Schleef gst/mpegdemux/gstmpegtsdemux.*: Enable latency code, since we're definitely after 0.10.12 Original commit message from CVS: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: Enable latency code, since we're definitely after 0.10.12 2008-11-25 18:28:18 +0000 Jonathan Matthew ext/spc/gstspc.c: Post an error and push EOS when we can't start playback for some reason. also avoid a crash when fe... Original commit message from CVS: Patch by: Jonathan Matthew * ext/spc/gstspc.c: (gst_spc_dec_sink_event), (spc_setup): Post an error and push EOS when we can't start playback for some reason. also avoid a crash when fed an empty file. Fixes #480543. 2008-11-25 16:37:50 +0000 Sebastian Dröge tests/check/elements/speexresample.c: Make unit test again faster to prevent timeouts with valgrind. Original commit message from CVS: * tests/check/elements/speexresample.c: (test_pipeline): Make unit test again faster to prevent timeouts with valgrind. 2008-11-25 15:12:06 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Fix event leak. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_event_send_rtcp_src): Fix event leak. 2008-11-25 14:49:34 +0000 Sebastian Dröge gst/mxf/: Set video dimensions and pixel aspect ratio on the caps. Original commit message from CVS: * gst/mxf/mxfmpeg.c: (mxf_mpeg_video_create_caps): * gst/mxf/mxfparse.c: (mxf_metadata_generic_picture_essence_descriptor_set_caps): * gst/mxf/mxfparse.h: Set video dimensions and pixel aspect ratio on the caps. 2008-11-25 10:26:11 +0000 Sebastian Dröge gst/mxf/: Add initial parsing of RGBA descriptors. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_reset_metadata), (gst_mxf_demux_handle_metadata_generic_descriptor), (gst_mxf_demux_handle_metadata_file_descriptor), (gst_mxf_demux_handle_metadata_multiple_descriptor), (gst_mxf_demux_handle_metadata_generic_picture_essence_descriptor), (gst_mxf_demux_handle_metadata_cdci_picture_essence_descriptor), (gst_mxf_demux_handle_metadata_rgba_picture_essence_descriptor), (gst_mxf_demux_handle_metadata_mpeg_video_descriptor), (gst_mxf_demux_handle_metadata_generic_sound_essence_descriptor), (gst_mxf_demux_handle_metadata_wave_audio_essence_descriptor), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfdemux.h: * gst/mxf/mxfparse.c: (mxf_metadata_rgba_picture_essence_descriptor_handle_tag), (mxf_metadata_rgba_picture_essence_descriptor_reset): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Add initial parsing of RGBA descriptors. Don't initialize descriptor GArray with zeroes. 2008-11-25 09:38:26 +0000 Sebastian Dröge gst/mxf/: Rewrite parsing of descriptors to go top-down instead of bottom-up which makes it possible to have the buff... Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_handle_tag): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_metadata_generic_descriptor), (gst_mxf_demux_handle_metadata_file_descriptor), (gst_mxf_demux_handle_metadata_multiple_descriptor), (gst_mxf_demux_handle_metadata_generic_picture_essence_descriptor), (gst_mxf_demux_handle_metadata_cdci_picture_essence_descriptor), (gst_mxf_demux_handle_metadata_mpeg_video_descriptor), (gst_mxf_demux_handle_metadata_generic_sound_essence_descriptor), (gst_mxf_demux_handle_metadata_wave_audio_essence_descriptor), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_metadata): * gst/mxf/mxfmpeg.c: (mxf_metadata_mpeg_video_descriptor_handle_tag): * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: (mxf_partition_pack_parse), (mxf_primer_pack_parse), (mxf_metadata_preface_parse), (mxf_metadata_identification_parse), (mxf_metadata_content_storage_parse), (mxf_metadata_essence_container_data_parse), (mxf_metadata_generic_package_parse), (mxf_metadata_track_parse), (mxf_metadata_sequence_parse), (mxf_metadata_structural_component_parse), (mxf_metadata_descriptor_parse), (mxf_metadata_generic_descriptor_handle_tag), (mxf_metadata_generic_descriptor_reset), (mxf_metadata_file_descriptor_handle_tag), (mxf_metadata_generic_sound_essence_descriptor_handle_tag), (mxf_metadata_generic_picture_essence_descriptor_handle_tag), (mxf_metadata_cdci_picture_essence_descriptor_handle_tag), (mxf_metadata_multiple_descriptor_handle_tag), (mxf_metadata_locator_parse): * gst/mxf/mxfparse.h: Rewrite parsing of descriptors to go top-down instead of bottom-up which makes it possible to have the buffer data non-writable. Improve debugging a bit. 2008-11-25 00:20:22 +0000 Michael Smith Add new directory for new acmmp3dec plugin Original commit message from CVS: * configure.ac: * sys/Makefile.am: Add new directory for new acmmp3dec plugin * sys/acmenc/Makefile.am: * sys/acmenc/acmmp3dec.c: Add new acmmp3dec plugin, which uses ACM for decoding mp3 on windows. 2008-11-24 11:31:27 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Make sure to only output generic container essence elements for a track if the body SID of the su... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_handle_generic_container_essence_element): Make sure to only output generic container essence elements for a track if the body SID of the surrounding partition is the same as the body SID of the track's source package. 2008-11-24 11:17:19 +0000 Julien Moutte gst/flv/gstflvdemux.c: Fix non key unit seeking by always going to the previous keyframe. Mark the discont flag when ... Original commit message from CVS: 2008-11-24 Julien Moutte * gst/flv/gstflvdemux.c: (gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull): Fix non key unit seeking by always going to the previous keyframe. Mark the discont flag when we've moved in the file. * gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate): MP3 streams are parsed already, makes autoplugged pipelines shorter. 2008-11-24 10:46:01 +0000 vanista gst/mpegtsmux/: Add initial support for muxing AC3/DTS/LPCM into MPEG TS. Original commit message from CVS: Patch by: vanista * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_create_stream): * gst/mpegtsmux/tsmux/tsmuxstream.c: (tsmux_stream_new): Add initial support for muxing AC3/DTS/LPCM into MPEG TS. Fixes bug #550613. 2008-11-24 10:41:13 +0000 Sebastian Dröge gst/mxf/: Allow non-MXF KLV packets and just drop them instead of throwing an error and handle 9 byte product version... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_pull_klv_packet), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_chain): * gst/mxf/mxfparse.c: (mxf_product_version_parse), (mxf_metadata_identification_parse), (mxf_metadata_content_storage_parse): Allow non-MXF KLV packets and just drop them instead of throwing an error and handle 9 byte product versions as written by Avid. This doesn't add support for the non-standard Avid MXF files but at least makes it possible to parse their header metadata. Fix a copy&paste error in debug output. 2008-11-23 17:50:08 +0000 Stefan Kost ext/jack/: Query port latencies for sink/src delays. Original commit message from CVS: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosrc.c: Query port latencies for sink/src delays. * ext/jack/gstjackbin.c: No printf please. 2008-11-23 11:25:30 +0000 Sebastian Dröge gst/mxf/mxfdemux.c: Actually we support a length stored inside 8 bytes but it must be smaller than G_MAXUINT for GstB... Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_pull_klv_packet), (gst_mxf_demux_chain): Actually we support a length stored inside 8 bytes but it must be smaller than G_MAXUINT for GstBuffer. 2008-11-23 11:16:36 +0000 Tal Shalif ext/resindvd/resindvdsrc.c: Fix format string. Fixes bug #561992. Original commit message from CVS: Patch by: Tal Shalif * ext/resindvd/resindvdsrc.c: (rsn_dvdsrc_prepare_streamsinfo_event): Fix format string. Fixes bug #561992. 2008-11-22 15:31:36 +0000 Wim Taymans gst/rtpmanager/rtpsession.c: Add property to configure the RTCP MTU. Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (rtp_session_init), (rtp_session_set_property), (rtp_session_get_property): Add property to configure the RTCP MTU. 2008-11-22 15:24:47 +0000 Wim Taymans gst/rtpmanager/rtpsession.c: Add G_PARAM_STATIC_STRINGS. Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (copy_source), (rtp_session_create_sources), (rtp_session_get_property): Add G_PARAM_STATIC_STRINGS. Add property to return a GValueArray of all known RTPSources in the session. * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), (rtp_source_create_sdes), (rtp_source_set_property), (rtp_source_get_property): Remove properties to set the various SDES items, an application is never supposed to change the RTPSource data. Change the SDES getter properties to one SDES property that returns all SDES items in a GstStructure. 2008-11-22 15:02:15 +0000 Sebastian Dröge tests/check/elements/speexresample.c: Make the unit test a bit faster to prevent timeouts, especially with valgrind. Original commit message from CVS: * tests/check/elements/speexresample.c: (GST_START_TEST): Make the unit test a bit faster to prevent timeouts, especially with valgrind. 2008-11-22 14:51:06 +0000 Sebastian Dröge gst/mxf/: Some more format string fixes and usage of guint instead of gint where negative values don't make sense. Original commit message from CVS: * gst/mxf/mxfdemux.c: (gst_mxf_demux_push_src_event), (gst_mxf_demux_handle_header_metadata_update_streams): * gst/mxf/mxfparse.c: (gst_mxf_ul_hash), (mxf_partition_pack_parse), (mxf_primer_pack_parse), (mxf_metadata_preface_parse), (mxf_metadata_content_storage_parse), (mxf_metadata_generic_package_parse), (mxf_metadata_sequence_parse), (mxf_metadata_generic_descriptor_parse), (mxf_metadata_multiple_descriptor_parse): Some more format string fixes and usage of guint instead of gint where negative values don't make sense. 2008-11-22 14:42:08 +0000 Sebastian Dröge gst/mxf/: Use guint instead of guint64 or gsize for all buffer sizes and use correct format strings for them. Only lo... Original commit message from CVS: * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_parse): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfdemux.c: (gst_mxf_demux_pull_range), (gst_mxf_demux_pull_klv_packet), (gst_mxf_demux_parse_footer_metadata), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_pull_and_handle_klv_packet), (gst_mxf_demux_chain): * gst/mxf/mxfmpeg.c: (mxf_metadata_mpeg_video_descriptor_parse): * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: (mxf_timestamp_parse), (mxf_fraction_parse), (mxf_utf16_to_utf8), (mxf_product_version_parse), (mxf_partition_pack_parse), (mxf_primer_pack_parse), (mxf_local_tag_parse), (mxf_metadata_preface_parse), (mxf_metadata_identification_parse), (mxf_metadata_content_storage_parse), (mxf_metadata_essence_container_data_parse), (mxf_metadata_generic_package_parse), (mxf_metadata_track_parse), (mxf_metadata_sequence_parse), (mxf_metadata_structural_component_parse), (mxf_metadata_generic_descriptor_parse), (mxf_metadata_file_descriptor_parse), (mxf_metadata_generic_sound_essence_descriptor_parse), (mxf_metadata_generic_picture_essence_descriptor_parse), (mxf_metadata_cdci_picture_essence_descriptor_parse), (mxf_metadata_multiple_descriptor_parse), (mxf_metadata_locator_parse): * gst/mxf/mxfparse.h: Use guint instead of guint64 or gsize for all buffer sizes and use correct format strings for them. Only local tag set sizes are still guint16 as they can't be larger. Only allow KLV packets of sizes below 1<<32 as GStreamer only uses guint for buffer sizes. The MXF standard allows packet sizes up to 1<<64. 2008-11-22 13:17:24 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Also unref the target pad for unknown pads. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_release_pad): Also unref the target pad for unknown pads. 2008-11-22 08:23:17 +0000 Sebastian Dröge gst/dccp/gstdccp.c: Use G_GSIZE_FORMAT instead of "%u" for a size_t variable in the format string to prevent a compil... Original commit message from CVS: * gst/dccp/gstdccp.c: (gst_dccp_socket_write): Use G_GSIZE_FORMAT instead of "%u" for a size_t variable in the format string to prevent a compiler warning. 2008-11-21 16:17:22 +0000 Olivier Crete gst/rtpmanager/gstrtpbin.c: Release the right pads on rtpbin. Fixes #561752. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_release_pad): Release the right pads on rtpbin. Fixes #561752. 2008-11-21 15:45:15 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: Add a "filter-length" property that maps to the quality values for compatibilty... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_class_init), (gst_speex_resample_set_property), (gst_speex_resample_get_property): Add a "filter-length" property that maps to the quality values for compatibilty with audioresample. 2008-11-21 10:37:13 +0000 Sebastian Dröge configure.ac: Remove the "experimental" flag from the deinterlace2 plugin. Original commit message from CVS: * configure.ac: Remove the "experimental" flag from the deinterlace2 plugin. 2008-11-21 10:27:15 +0000 Sebastian Dröge Add first version of an MXF demuxer. Currently it supports Original commit message from CVS: * configure.ac: * gst/mxf/Makefile.am: * gst/mxf/mxf.c: (plugin_init): * gst/mxf/mxfaes-bwf.c: (mxf_metadata_wave_audio_essence_descriptor_parse), (mxf_metadata_wave_audio_essence_descriptor_reset), (mxf_is_aes_bwf_essence_track), (mxf_bwf_handle_essence_element), (mxf_bwf_create_caps), (mxf_aes_bwf_create_caps): * gst/mxf/mxfaes-bwf.h: * gst/mxf/mxfdemux.c: (gst_mxf_pad_finalize), (gst_mxf_pad_class_init), (gst_mxf_pad_init), (gst_mxf_demux_flush), (gst_mxf_demux_remove_pad), (gst_mxf_demux_reset_mxf_state), (gst_mxf_demux_reset_metadata), (gst_mxf_demux_reset), (gst_mxf_demux_pull_range), (gst_mxf_demux_push_src_event), (gst_mxf_demux_handle_partition_pack), (gst_mxf_demux_handle_primer_pack), (gst_mxf_demux_handle_metadata_preface), (gst_mxf_demux_handle_metadata_identification), (gst_mxf_demux_handle_metadata_content_storage), (gst_mxf_demux_handle_metadata_essence_container_data), (gst_mxf_demux_handle_metadata_material_package), (gst_mxf_demux_handle_metadata_source_package), (gst_mxf_demux_handle_metadata_track), (gst_mxf_demux_handle_metadata_sequence), (gst_mxf_demux_handle_metadata_structural_component), (gst_mxf_demux_handle_metadata_generic_descriptor), (gst_mxf_demux_handle_metadata_file_descriptor), (gst_mxf_demux_handle_metadata_multiple_descriptor), (gst_mxf_demux_handle_metadata_generic_picture_essence_descriptor), (gst_mxf_demux_handle_metadata_cdci_picture_essence_descriptor), (gst_mxf_demux_handle_metadata_mpeg_video_descriptor), (gst_mxf_demux_handle_metadata_generic_sound_essence_descriptor), (gst_mxf_demux_handle_metadata_wave_audio_essence_descriptor), (gst_mxf_demux_handle_metadata_locator), (gst_mxf_demux_handle_header_metadata_resolve_references), (gst_mxf_demux_handle_header_metadata_update_streams), (gst_mxf_demux_handle_metadata), (gst_mxf_demux_handle_generic_container_system_item), (gst_mxf_demux_handle_generic_container_essence_element), (gst_mxf_demux_handle_random_index_pack), (gst_mxf_demux_handle_index_table_segment), (gst_mxf_demux_pull_klv_packet), (gst_mxf_demux_parse_footer_metadata), (gst_mxf_demux_handle_klv_packet), (gst_mxf_demux_pull_and_handle_klv_packet), (gst_mxf_demux_loop), (gst_mxf_demux_chain), (gst_mxf_demux_src_event), (gst_mxf_demux_src_query_type), (gst_mxf_demux_src_query), (gst_mxf_demux_sink_activate), (gst_mxf_demux_sink_activate_push), (gst_mxf_demux_sink_activate_pull), (gst_mxf_demux_sink_event), (gst_mxf_demux_change_state), (gst_mxf_demux_finalize), (gst_mxf_demux_base_init), (gst_mxf_demux_class_init), (gst_mxf_demux_init): * gst/mxf/mxfdemux.h: * gst/mxf/mxfmpeg.c: (mxf_metadata_mpeg_video_descriptor_parse), (mxf_metadata_mpeg_video_descriptor_reset), (mxf_is_mpeg_video_essence_track), (mxf_mpeg_video_handle_essence_element), (mxf_mpeg_video_create_caps): * gst/mxf/mxfmpeg.h: * gst/mxf/mxfparse.c: (mxf_is_mxf_packet), (mxf_is_partition_pack), (mxf_is_header_partition_pack), (mxf_is_body_partition_pack), (mxf_is_footer_partition_pack), (mxf_is_fill), (mxf_is_primer_pack), (mxf_is_metadata), (mxf_is_random_index_pack), (mxf_is_index_table_segment), (mxf_is_generic_container_system_item), (mxf_is_generic_container_essence_element), (mxf_is_generic_container_essence_container_label), (mxf_ul_is_equal), (mxf_ul_is_zero), (mxf_ul_to_string), (mxf_umid_is_equal), (mxf_umid_is_zero), (mxf_umid_to_string), (gst_mxf_ul_hash), (gst_mxf_ul_equal), (mxf_timestamp_parse), (mxf_timestamp_is_unknown), (mxf_timestamp_compare), (mxf_fraction_parse), (mxf_utf16_to_utf8), (mxf_product_version_parse), (mxf_partition_pack_parse), (mxf_partition_pack_reset), (_mxf_mapping_ul_free), (mxf_primer_pack_parse), (mxf_primer_pack_reset), (mxf_local_tag_parse), (gst_mxf_local_tag_free), (gst_metadata_add_custom_tag), (mxf_metadata_preface_parse), (mxf_metadata_preface_reset), (mxf_metadata_identification_parse), (mxf_metadata_identification_reset), (mxf_metadata_content_storage_parse), (mxf_metadata_content_storage_reset), (mxf_metadata_essence_container_data_parse), (mxf_metadata_essence_container_data_reset), (mxf_metadata_generic_package_parse), (mxf_metadata_generic_package_reset), (mxf_metadata_track_parse), (mxf_metadata_track_reset), (mxf_metadata_track_identifier_parse), (mxf_metadata_sequence_parse), (mxf_metadata_sequence_reset), (mxf_metadata_structural_component_parse), (mxf_metadata_structural_component_reset), (mxf_metadata_generic_descriptor_parse), (mxf_metadata_generic_descriptor_reset), (mxf_metadata_file_descriptor_parse), (mxf_metadata_file_descriptor_reset), (mxf_metadata_generic_sound_essence_descriptor_parse), (mxf_metadata_generic_sound_essence_descriptor_reset), (mxf_metadata_generic_picture_essence_descriptor_parse), (mxf_metadata_generic_picture_essence_descriptor_reset), (mxf_metadata_cdci_picture_essence_descriptor_parse), (mxf_metadata_cdci_picture_essence_descriptor_reset), (mxf_metadata_multiple_descriptor_parse), (mxf_metadata_multiple_descriptor_reset), (mxf_metadata_locator_parse), (mxf_metadata_locator_reset): * gst/mxf/mxfparse.h: * gst/mxf/mxftypes.h: Add first version of an MXF demuxer. Currently it supports MPEG video and raw audio and OP 1a/b/c. 2008-11-21 00:47:37 +0000 Michael Smith sys/dshowdecwrapper/gstdshowaudiodec.cpp: Fix flushing/seeking problems returning error code. Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: Fix flushing/seeking problems returning error code. Fix mp3 decoding with winXP (crashed randomly, occasionally). * sys/dshowdecwrapper/gstdshowvideodec.cpp: Fix problems when framerate is missing from video. 2008-11-20 18:41:34 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Pass the running time to the session when processing RTP packets. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (get_current_times), (rtcp_thread), (gst_rtp_session_chain_recv_rtp): Pass the running time to the session when processing RTP packets. Improve the time function to provide more info. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (rtp_session_init), (update_arrival_stats), (rtp_session_process_rtp), (rtp_session_process_sdes), (rtp_session_process_rtcp), (session_start_rtcp), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Mark the internal source with a flag. Use running_time instead of the more useless timestamp. Validate a source when a valid SDES has been received. Pass the current system time when processing SR packets. * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), (rtp_source_init), (rtp_source_create_stats), (rtp_source_get_property), (rtp_source_send_rtp), (rtp_source_process_rb), (rtp_source_get_new_rb), (rtp_source_get_last_rb): * gst/rtpmanager/rtpsource.h: Add property to get source stats. Mark params as STATIC_STRINGS. Calculate the bitrate at the sender SSRC. Avoid negative values in the round trip time calculations. * gst/rtpmanager/rtpstats.h: Update some docs and change some variable name to more closely reflect what it contains. 2008-11-20 16:01:27 +0000 Leandro Melo de Sales gst/dccp/: CodeStyle improvements and minor fixes to the DCCP plugin. Original commit message from CVS: patch by: Leandro Melo de Sales * gst/dccp/gstdccp.c: * gst/dccp/gstdccp.h: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsink.h: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversrc.c: * gst/dccp/gstdccpserversrc.h: CodeStyle improvements and minor fixes to the DCCP plugin. Fixes #553823. 2008-11-20 08:19:15 +0000 Sebastian Dröge gst/rtpmanager/gstrtpjitterbuffer.c: Initialize return value to fix compiler warning about uninitialized variable. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain_rtcp): Initialize return value to fix compiler warning about uninitialized variable. 2008-11-19 16:48:38 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Mark signal arg as static scope. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init): Mark signal arg as static scope. 2008-11-19 09:06:29 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Remove internal sync pad, use signals instead to get lip-sync notifications. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), (gst_rtp_bin_handle_sync), (create_stream), (free_stream), (new_ssrc_pad_found): Remove internal sync pad, use signals instead to get lip-sync notifications. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_base_init), (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_internal_links), (create_rtcp_sink), (remove_rtcp_sink), (gst_rtp_jitter_buffer_request_new_pad), (gst_rtp_jitter_buffer_release_pad), (gst_rtp_jitter_buffer_sink_rtcp_event), (gst_rtp_jitter_buffer_chain_rtcp), (gst_rtp_jitter_buffer_get_property): * gst/rtpmanager/gstrtpjitterbuffer.h: Make it possible to send SR packets to the jitterbuffer. Check if the SR timestamps are valid by comparing them to the RTP timestamps. Signal the SR packet and the timing information to listeners. * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_rtcp_chain), (gst_rtp_ssrc_demux_src_query): Remove some unused code. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew), (rtp_jitter_buffer_get_sync): * gst/rtpmanager/rtpjitterbuffer.h: Keep track of the last seen RTP timestamp so that we can filter out invalid SR packets. 2008-11-18 16:52:11 +0000 Alessandro Decina ext/metadata/gstbasemetadata.c: Avoid deadlock during pad activation. Original commit message from CVS: * ext/metadata/gstbasemetadata.c: Avoid deadlock during pad activation. Fixes #561241. 2008-11-18 01:09:09 +0000 David Schleef gst/qtmux/gstqtmux.c: Quiet a debugging message that I recently added. Original commit message from CVS: * gst/qtmux/gstqtmux.c: Quiet a debugging message that I recently added. 2008-11-17 19:47:32 +0000 Sebastian Dröge gst/rtpmanager/rtpsource.c: Fix GST_DEBUG call to only have as many arguments as required by the format string. Fixes... Original commit message from CVS: * gst/rtpmanager/rtpsource.c: (get_clock_rate): Fix GST_DEBUG call to only have as many arguments as required by the format string. Fixes a compiler warning. 2008-11-17 15:17:52 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Do not try to keep track of the clock-rate ourselves but simply get the value from the ji... Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain), (create_stream), (new_ssrc_pad_found): Do not try to keep track of the clock-rate ourselves but simply get the value from the jitterbuffer. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_get_sync): * gst/rtpmanager/gstrtpjitterbuffer.h: Add some debug info. Pass the clock-rate to the jitterbuffer. Also pass the clock-rate along with the rtp timestamp when getting the sync parameters. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): Fix some debug. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew), (rtp_jitter_buffer_get_sync): * gst/rtpmanager/rtpjitterbuffer.h: Keep track of clock-rate changes and return the clock-rate together with the rtp timestamps used for sync. Don't try to construct timestamps when we have no base_time. * gst/rtpmanager/rtpsource.c: (get_clock_rate): Request a new clock-rate when the payload type changes. Reset the jitter calculation when the clock-rate changes. 2008-11-17 09:33:50 +0000 Stefan Kost tests/check/elements/: Add missing files. Original commit message from CVS: * tests/check/elements/aacparse_data.h: * tests/check/elements/amrparse_data.h: Add missing files. 2008-11-15 02:56:31 +0000 David Schleef gst/qtmux/gstqtmux.*: Use dts from GST_BUFFER_OFFSET_END() for video/x-qt-part. Original commit message from CVS: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: Use dts from GST_BUFFER_OFFSET_END() for video/x-qt-part. 2008-11-14 23:01:56 +0000 David Schleef sys/qtwrapper/codecmapping.c: Add some of our favorite codecs. Original commit message from CVS: * sys/qtwrapper/codecmapping.c: Add some of our favorite codecs. 2008-11-14 21:44:32 +0000 Jan Schmidt gst/audioresample/gstaudioresample.c: Guard against a NULL dereference I somehow encountered - with a FLUSH_STOP arri... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Guard against a NULL dereference I somehow encountered - with a FLUSH_STOP arriving either before basetransform _start(), or after _stop(). * gst/typefind/gsttypefindfunctions.c: Make sure we never jump backwards when typefinding corrupt mov files. 2008-11-14 21:24:51 +0000 Mark Nauwelaerts gst/qtmux/: Revert previous commit. Original commit message from CVS: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/descriptors.c: * gst/qtmux/descriptors.h: * gst/qtmux/fourcc.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: * gst/qtmux/properties.c: * gst/qtmux/properties.h: Revert previous commit. 2008-11-14 20:38:18 +0000 Mark Nauwelaerts gst/qtmux/: Dual license LGPL/MIT, as apparently supposed to. Original commit message from CVS: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/descriptors.c: * gst/qtmux/descriptors.h: * gst/qtmux/fourcc.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: * gst/qtmux/properties.c: * gst/qtmux/properties.h: Dual license LGPL/MIT, as apparently supposed to. 2008-11-14 20:17:10 +0000 Mark Nauwelaerts gst/qtmux/: Cut detour in sample description extension construction. Original commit message from CVS: * gst/qtmux/atoms.c: (build_esds_extension), (build_mov_aac_extension), (build_jp2h_extension), (build_codec_data_extension): * gst/qtmux/atoms.h: * gst/qtmux/fourcc.h: * gst/qtmux/gstqtmux.c: (gst_qt_mux_audio_sink_set_caps), (gst_qt_mux_video_sink_set_caps): * gst/qtmux/gstqtmuxmap.c: (gst_qt_mux_map_format_to_header): Cut detour in sample description extension construction. Also actually implement ISO JPEG2000 mj2 format. 2008-11-14 19:52:24 +0000 Mark Nauwelaerts ext/x264/gstx264enc.c: Construct source caps in more conventional (and correct) manner. Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_set_src_caps): Construct source caps in more conventional (and correct) manner. 2008-11-14 16:15:43 +0000 Christian Schaller * ChangeLog: * configure.ac: * gst-plugins-bad.spec.in: no more egging the pudding Original commit message from CVS: no more egging the pudding 2008-11-14 14:23:02 +0000 Stefan Kost gst-libs/gst/play/: Remove cruft. This is not entered by make and its not even compilable. Original commit message from CVS: * gst-libs/gst/play/.cvsignore: * gst-libs/gst/play/play.h: * gst-libs/gst/play/play.vcproj: Remove cruft. This is not entered by make and its not even compilable. 2008-11-13 22:30:54 +0000 David Schleef ext/dirac/gstdiracenc.cc: Set pixel-aspect-ratio correctly in the encoder API, as well as some default gstreamerish c... Original commit message from CVS: * ext/dirac/gstdiracenc.cc: Set pixel-aspect-ratio correctly in the encoder API, as well as some default gstreamerish colorspace properties. Also, apparently, change a bunch of indentation. 2008-11-13 21:44:15 +0000 Mark Nauwelaerts ext/jp2k/: Add jp2kenc to jp2k plugin. Original commit message from CVS: * ext/jp2k/Makefile.am: * ext/jp2k/gstjasperdec.c: (gst_jasper_dec_class_init), (gst_jasper_dec_change_state): * ext/jp2k/gstjasperenc.c: (gst_jasper_enc_base_init), (gst_jasper_enc_class_init), (gst_jasper_enc_init), (gst_jasper_enc_reset), (gst_jasper_enc_set_src_caps), (gst_jasper_enc_init_encoder), (gst_jasper_enc_sink_setcaps), (gst_jasper_enc_get_data), (gst_jasper_enc_chain), (gst_jasper_enc_set_property), (gst_jasper_enc_get_property), (gst_jasper_enc_change_state): * ext/jp2k/gstjasperenc.h: * ext/jp2k/gstjp2k.c: (plugin_init): Add jp2kenc to jp2k plugin. 2008-11-13 21:31:14 +0000 Mark Nauwelaerts ext/jp2k/gstjasperdec.*: Make pad template caps reflect the supported formats. Original commit message from CVS: * ext/jp2k/gstjasperdec.c: (gst_jasper_dec_init), (gst_jasper_dec_reset), (gst_jasper_dec_negotiate), (gst_jasper_dec_get_picture): * ext/jp2k/gstjasperdec.h: Make pad template caps reflect the supported formats. Add or modify some debug statements, and slightly simplify image passing to encoding library. 2008-11-13 17:24:58 +0000 Wim Taymans gst/aacparse/gstaacparse.c: Don't autoplug aacparse until it works. Original commit message from CVS: * gst/aacparse/gstaacparse.c: (plugin_init): Don't autoplug aacparse until it works. 2008-11-13 15:48:54 +0000 Wim Taymans gst/rtpmanager/: Small cleanups and some more debug info. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_chain): * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew): Small cleanups and some more debug info. 2008-11-13 15:20:15 +0000 Stefan Kost tests/check/: Add unit tests for new parsers. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/aacparse.c: * tests/check/elements/amrparse.c: Add unit tests for new parsers. 2008-11-13 14:31:45 +0000 Stefan Kost docs/plugins/: Update docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-aacparse.xml: * docs/plugins/inspect/plugin-amrparse.xml: Update docs. 2008-11-13 14:21:39 +0000 Stefan Kost gst/: Fix baseparse type name. Original commit message from CVS: * gst/aacparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.c: Fix baseparse type name. 2008-11-13 12:59:34 +0000 Stefan Kost Add two new baseparse based parsers (aac and amr) from Bug #518857. Original commit message from CVS: * configure.ac: * gst/aacparse/Makefile.am: * gst/aacparse/gstaacparse.c: * gst/aacparse/gstaacparse.h: * gst/aacparse/gstbaseparse.c: * gst/aacparse/gstbaseparse.h: * gst/amrparse/Makefile.am: * gst/amrparse/gstamrparse.c: * gst/amrparse/gstamrparse.h: * gst/amrparse/gstbaseparse.c: * gst/amrparse/gstbaseparse.h: Add two new baseparse based parsers (aac and amr) from Bug #518857. 2008-11-12 10:32:24 +0000 Thijs Vermeir gst/librfb/rfbdecoder.c: Fix uninitialized warnings Original commit message from CVS: * gst/librfb/rfbdecoder.c: Fix uninitialized warnings 2008-11-11 19:31:35 +0000 Mark Nauwelaerts tests/check/: Add unit test for qtmux. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/qtmux.c: (setup_src_pad), (teardown_src_pad), (setup_qtmux), (cleanup_qtmux), (check_qtmux_pad), (GST_START_TEST), (qtmux_suite), (main): Add unit test for qtmux. 2008-11-11 19:24:12 +0000 Mark Nauwelaerts gst/qtmux/gstqtmux.c: Add some more safety/sanity checks in tag manipulation. Original commit message from CVS: * gst/qtmux/gstqtmux.c: (gst_qt_mux_add_metadata_tags): Add some more safety/sanity checks in tag manipulation. 2008-11-10 15:26:40 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Also configure the next expected output seqnum when we get a seqnum-base on the ... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain): Also configure the next expected output seqnum when we get a seqnum-base on the caps. 2008-11-10 14:53:45 +0000 Edward Hervey gst/: Wim, you're a bad boy. You don't want people to contact you or what? Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsrc.c: * gst/h264parse/gsth264parse.c: Wim, you're a bad boy. You don't want people to contact you or what? 2008-11-10 14:01:42 +0000 Thomas Vander Stichele gst/filter/gstiir.c: Fix name tag. Original commit message from CVS: * gst/filter/gstiir.c: Fix name tag. 2008-11-08 02:00:58 +0000 Thiago Sousa Santos Copy qtmux from revision 148 of the gst-qtmux repository. Original commit message from CVS: patch by: Thiago Sousa Santos * configure.ac: * gst/qtmux/Makefile.am: * gst/qtmux/atoms.c: * gst/qtmux/atoms.h: * gst/qtmux/descriptors.c: * gst/qtmux/descriptors.h: * gst/qtmux/fourcc.h: * gst/qtmux/ftypcc.h: * gst/qtmux/gstqtmux.c: * gst/qtmux/gstqtmux.h: * gst/qtmux/gstqtmuxmap.c: * gst/qtmux/gstqtmuxmap.h: * gst/qtmux/properties.c: * gst/qtmux/properties.h: Copy qtmux from revision 148 of the gst-qtmux repository. Fixes #550280. 2008-11-07 17:35:46 +0000 Wim Taymans gst-libs/gst/app/gstappsrc.*: Add is-live property. Original commit message from CVS: * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_push_buffer): * gst-libs/gst/app/gstappsrc.h: Add is-live property. Add some more docs. 2008-11-06 22:54:39 +0000 Thijs Vermeir Fix basic navigation events Original commit message from CVS: * configure.ac: * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.c: Fix basic navigation events 2008-11-06 14:05:55 +0000 Wim Taymans gst/deinterlace2/gstdeinterlace2.c: Bring properties into this century. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_class_init), (gst_deinterlace2_init), (gst_deinterlace2_set_property), (gst_deinterlace2_get_property): Bring properties into this century. 2008-11-06 13:00:54 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Set filters in PAUSED or PLAYING. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Set filters in PAUSED or PLAYING. 2008-11-06 12:17:08 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegtsdemux.c: Make private section pads have a caps set so they are not tried to be linked in parse... Original commit message from CVS: * gst/mpegdemux/gstmpegtsdemux.c: Make private section pads have a caps set so they are not tried to be linked in parse_launch for example. 2008-11-06 11:31:03 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegtsdemux.c: No need to reclaculate flush in this case. Original commit message from CVS: patch by: Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: No need to reclaculate flush in this case. Fixes some bad decode errors introduced. 2008-11-06 10:42:59 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegtsdemux.*: Fix typo. Original commit message from CVS: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: Fix typo. 2008-11-05 23:31:41 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.c: Fix RGB mask in caps Original commit message from CVS: * gst/librfb/gstrfbsrc.c: Fix RGB mask in caps 2008-11-05 22:25:25 +0000 Thijs Vermeir gst/librfb/: Add Hextile encoding Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Add Hextile encoding 2008-11-05 18:52:38 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegtsdemux.c: Heuristic approach when resyncing. Original commit message from CVS: patch by: Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: Heuristic approach when resyncing. 2008-11-05 18:11:55 +0000 Sebastian Pölsterl gst/mpegdemux/gstmpegdesc.c: Length should be a guint8 not a gint. Original commit message from CVS: patch by: Sebastian Pölsterl * gst/mpegdemux/gstmpegdesc.c: Length should be a guint8 not a gint. * gst/mpegdemux/mpegtspacketizer.c: Convert text to utf8 for each descriptor separately and not concatenate them first and convert after. 2008-11-04 20:26:00 +0000 Stefan Kost gst/modplug/gstmodplug.cc: Send tag event. Fixes #559286. Original commit message from CVS: * gst/modplug/gstmodplug.cc: Send tag event. Fixes #559286. 2008-11-04 18:03:55 +0000 Sebastian Pölsterl gst/mpegdemux/mpegtsparse.c: Fix another memleak. Original commit message from CVS: patch by: Sebastian Pölsterl * gst/mpegdemux/mpegtsparse.c: Fix another memleak. 2008-11-04 17:25:09 +0000 Sebastian Pölsterl Fix memleaks. Original commit message from CVS: patch by: Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: * sys/dvb/gstdvbsrc.c: Fix memleaks. 2008-11-04 12:42:30 +0000 Stefan Kost Don't install static libs for plugins. Fixes #550851 for -bad. Original commit message from CVS: * ext/alsaspdif/Makefile.am: * ext/amrwb/Makefile.am: * ext/apexsink/Makefile.am: * ext/arts/Makefile.am: * ext/artsd/Makefile.am: * ext/audiofile/Makefile.am: * ext/audioresample/Makefile.am: * ext/bz2/Makefile.am: * ext/cdaudio/Makefile.am: * ext/celt/Makefile.am: * ext/dc1394/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/divx/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/gsm/Makefile.am: * ext/hermes/Makefile.am: * ext/ivorbis/Makefile.am: * ext/jack/Makefile.am: * ext/jp2k/Makefile.am: * ext/ladspa/Makefile.am: * ext/lcs/Makefile.am: * ext/libfame/Makefile.am: * ext/libmms/Makefile.am: * ext/metadata/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/mythtv/Makefile.am: * ext/nas/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/polyp/Makefile.am: * ext/resindvd/Makefile.am: * ext/sdl/Makefile.am: * ext/shout/Makefile.am: * ext/snapshot/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spc/Makefile.am: * ext/swfdec/Makefile.am: * ext/tarkin/Makefile.am: * ext/theora/Makefile.am: * ext/timidity/Makefile.am: * ext/twolame/Makefile.am: * ext/x264/Makefile.am: * ext/xine/Makefile.am: * ext/xvid/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/dshow/Makefile.am: * gst/aiffparse/Makefile.am: * gst/app/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/bayer/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/chart/Makefile.am: * gst/colorspace/Makefile.am: * gst/dccp/Makefile.am: * gst/deinterlace/Makefile.am: * gst/deinterlace2/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/filter/Makefile.am: * gst/flacparse/Makefile.am: * gst/flv/Makefile.am: * gst/games/Makefile.am: * gst/h264parse/Makefile.am: * gst/librfb/Makefile.am: * gst/mixmatrix/Makefile.am: * gst/modplug/Makefile.am: * gst/mpeg1sys/Makefile.am: * gst/mpeg4videoparse/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mpegvideoparse/Makefile.am: * gst/mve/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/overlay/Makefile.am: * gst/passthrough/Makefile.am: * gst/pcapparse/Makefile.am: * gst/playondemand/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/rtjpeg/Makefile.am: * gst/rtpmanager/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdp/Makefile.am: * gst/selector/Makefile.am: * gst/smooth/Makefile.am: * gst/smoothwave/Makefile.am: * gst/speed/Makefile.am: * gst/speexresample/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/vbidec/Makefile.am: * gst/videodrop/Makefile.am: * gst/videosignal/Makefile.am: * gst/virtualdub/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * sys/acmenc/Makefile.am: * sys/cdrom/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * sys/fbdev/Makefile.am: * sys/oss4/Makefile.am: * sys/qcam/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/vcd/Makefile.am: * sys/wininet/Makefile.am: * win32/common/config.h: Don't install static libs for plugins. Fixes #550851 for -bad. 2008-11-04 08:24:10 +0000 Sebastian Pölsterl gst/mpegdemux/mpegtsparse.c: Fix memleak. Original commit message from CVS: patch by: Sebastian Pölsterl * gst/mpegdemux/mpegtsparse.c: Fix memleak. 2008-11-03 22:00:09 +0000 Jan Schmidt examples/scaletempo/.cvsignore: Add example to cvs ignores. Original commit message from CVS: * examples/scaletempo/.cvsignore: Add example to cvs ignores. 2008-11-03 21:27:31 +0000 Jan Schmidt sys/qtwrapper/audiodecoders.c: Fix mismatched signedness compiler warning. Original commit message from CVS: * sys/qtwrapper/audiodecoders.c: (open_decoder): Fix mismatched signedness compiler warning. 2008-11-03 08:55:49 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: Add TODO at the top of the file for enabling SSE/ARM specific optimizations and... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_convert_buffer): Add TODO at the top of the file for enabling SSE/ARM specific optimizations and choosing the fastest implementation at runtime. Add g_assert_not_reached() at two places that should really never be reached. 2008-11-02 09:19:24 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: Fix format string and arguments. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_check_discont): Fix format string and arguments. * gst/speexresample/resample_sse.h: Add missing file. 2008-11-01 21:37:06 +0000 Stefan Kost ext/resindvd/Makefile.am: Dist the play scripts. Original commit message from CVS: * ext/resindvd/Makefile.am: Dist the play scripts. 2008-11-01 19:38:36 +0000 Sebastian Dröge gst/speexresample/: Add missing headers to Makefile.am. Original commit message from CVS: * gst/speexresample/Makefile.am: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_base_init), (gst_speex_resample_get_funcs), (gst_speex_resample_convert_buffer), (_benchmark_int_float), (_benchmark_int_int), (_benchmark_integer_resampling), (plugin_init): * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: * gst/speexresample/speex_resampler_double.c: * gst/speexresample/speex_resampler_float.c: * gst/speexresample/speex_resampler_int.c: * gst/speexresample/speex_resampler_wrapper.h: Add missing headers to Makefile.am. Update copyright, years and my mail address. Benchmark the integer resampling implementation against the float implementation and use the faster one for 8/16 bit integer input. On most recent systems the floating point version is faster. 2008-10-31 18:39:37 +0000 Sebastian Dröge configure.ac: Use AC_TRY_COMPILE instead of AC_TRY_RUN as the result of the linking is what is interesting, not that ... Original commit message from CVS: * configure.ac: Use AC_TRY_COMPILE instead of AC_TRY_RUN as the result of the linking is what is interesting, not that it actually runs. Fixes cross-compilation and fixes bug #558639. 2008-10-30 19:54:38 +0000 Michael Smith sys/qtwrapper/audiodecoders.c: Add ALAC support. Original commit message from CVS: * sys/qtwrapper/audiodecoders.c: Add ALAC support. Fix decode of mono AAC files created by itunes. Set output format correctly (don't ask quicktime to resample for us). Use a larger decode buffer to avoid problems with large ALAC packets. Fix decode to loop until we have all output data. * sys/qtwrapper/qtutils.c: Fix includes so we compile on more OSes. 2008-10-30 15:31:59 +0000 Tim-Philipp Müller configure.ac: Require at least Gtk 2.8.0 for the demos (that's the oldest I can test with; I'm fairly certain Gtk 2.0... Original commit message from CVS: * configure.ac: Require at least Gtk 2.8.0 for the demos (that's the oldest I can test with; I'm fairly certain Gtk 2.0.0 is not good enough any longer); clean up some unused Gtk-related configure cruft. * examples/scaletempo/demo-gui.c: Define Gtk 2.12 function to noop when compiling against older Gtk. 2008-10-30 14:55:43 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: The length for the buffer conversion function is the number of audio frames, i.... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_convert_buffer): The length for the buffer conversion function is the number of audio frames, i.e. we need to multiply it by the number of channels to get the number of values. Also spotted by the unit test after running in valgrind. 2008-10-30 14:46:31 +0000 Sebastian Dröge tests/check/elements/speexresample.c: Add pipeline unit tests for testing all supported formats with up/downsampling ... Original commit message from CVS: * tests/check/elements/speexresample.c: (element_message_cb), (eos_message_cb), (test_pipeline), (GST_START_TEST), (speexresample_suite): Add pipeline unit tests for testing all supported formats with up/downsampling and different in/outrates. * gst/speexresample/gstspeexresample.c: (gst_speex_resample_push_drain), (gst_speex_resample_process): * gst/speexresample/speex_resampler_wrapper.h: Fix bugs identified by the testsuite. 2008-10-30 13:44:41 +0000 Sebastian Dröge gst/speexresample/: Add support for int8, int24 and int32 input by converting internally to/from int16 or double. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_stop), (gst_speex_resample_get_funcs), (gst_speex_resample_transform_size), (gst_speex_resample_convert_buffer), (gst_speex_resample_push_drain), (gst_speex_resample_process): * gst/speexresample/gstspeexresample.h: * gst/speexresample/speex_resampler_wrapper.h: Add support for int8, int24 and int32 input by converting internally to/from int16 or double. 2008-10-30 13:38:19 +0000 Jan Schmidt ext/resindvd/resindvdsrc.*: Better fix for #546319 and similar cases by explicitly registering when we're in playing ... Original commit message from CVS: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: Better fix for #546319 and similar cases by explicitly registering when we're in playing state or not. 2008-10-30 13:02:18 +0000 Stefan Kost ext/ladspa/gstladspa.c: Whitespace. Original commit message from CVS: * ext/ladspa/gstladspa.c: Whitespace. * ext/ladspa/gstsignalprocessor.c: Add a FIXME:. not sure if this code does the forwarding correctly. 2008-10-30 12:43:44 +0000 Sebastian Dröge Add support for double samples as input and refactor the usage of the different compilation flavors of the speex resa... Original commit message from CVS: * gst/speexresample/Makefile.am: * gst/speexresample/arch.h: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_stop), (gst_speex_resample_get_unit_size), (gst_speex_resample_get_funcs), (gst_speex_resample_init_state), (gst_speex_resample_update_state), (gst_speex_resample_reset_state), (gst_speex_resample_parse_caps), (_gcd), (gst_speex_resample_transform_size), (gst_speex_resample_set_caps), (gst_speex_resample_push_drain), (gst_speex_resample_process), (gst_speex_resample_transform), (gst_speex_resample_query), (gst_speex_resample_set_property): * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_double.c: * gst/speexresample/speex_resampler_wrapper.h: * tests/check/elements/speexresample.c: (setup_speexresample), (test_perfect_stream_instance), (GST_START_TEST), (test_discont_stream_instance): Add support for double samples as input and refactor the usage of the different compilation flavors of the speex resampler. 2008-10-30 12:13:18 +0000 Stefan Kost gst/scaletempo/gstscaletempo.c: Return the result of parent_class->event(). Original commit message from CVS: * gst/scaletempo/gstscaletempo.c: Return the result of parent_class->event(). 2008-10-30 11:50:52 +0000 Wim Taymans gst/audiobuffer/: Add first version of an audioringbuffer element that can be inserted in the pipeline to convert pus... Original commit message from CVS: * gst/audiobuffer/Makefile.am: * gst/audiobuffer/gstaudioringbuffer.c: (gst_int_ring_buffer_acquire), (gst_int_ring_buffer_release), (gst_int_ring_buffer_start), (gst_int_ring_buffer_base_init), (gst_int_ring_buffer_class_init), (gst_int_ring_buffer_init), (gst_int_ring_buffer_new), (gst_audio_ringbuffer_get_type), (gst_audio_ringbuffer_class_init), (gst_audio_ringbuffer_init), (gst_audio_ringbuffer_finalize), (gst_audio_ringbuffer_getcaps), (gst_audio_ringbuffer_setcaps), (gst_audio_ringbuffer_bufferalloc), (gst_audio_ringbuffer_handle_sink_event), (gst_audio_ringbuffer_render), (gst_audio_ringbuffer_chain), (gst_audio_ringbuffer_handle_src_event), (gst_audio_ringbuffer_handle_src_query), (gst_audio_ringbuffer_get_range), (gst_audio_ringbuffer_src_checkgetrange_function), (gst_audio_ringbuffer_sink_activate_push), (gst_audio_ringbuffer_src_activate_push), (gst_audio_ringbuffer_src_activate_pull), (gst_audio_ringbuffer_change_state), (gst_audio_ringbuffer_set_property), (gst_audio_ringbuffer_get_property), (plugin_init): Add first version of an audioringbuffer element that can be inserted in the pipeline to convert push-based upstream into a pull-based downstream. 2008-10-30 11:43:12 +0000 Stefan Kost gst/audioresample/gstaudioresample.c: Return the result of parent_class->event(). Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Return the result of parent_class->event(). 2008-10-30 00:17:12 +0000 Michael Smith gst/aiffparse/aiffparse.c: AIFF is always signed, even for 8 bit. Original commit message from CVS: * gst/aiffparse/aiffparse.c: AIFF is always signed, even for 8 bit. 2008-10-29 17:02:55 +0000 Wim Taymans gst-libs/gst/app/gstappsink.c: Fix the docs. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init): Fix the docs. 2008-10-29 16:53:54 +0000 Robin Stocker gst/real/gstrealvideodec.c: A RealVideo video inside a container (for example MKV) should use the Original commit message from CVS: Patch by: Robin Stocker * gst/real/gstrealvideodec.c: (gst_real_video_dec_setcaps): A RealVideo video inside a container (for example MKV) should use the PAR which is specified on the sinkpad caps. Fixes #558416. 2008-10-29 12:11:20 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.*: Rewrite timestamp tracking to make it more robust and guarantee a continous str... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_start), (gst_speex_resample_get_unit_size), (gst_speex_resample_push_drain), (gst_speex_resample_event), (gst_speex_resample_check_discont), (gst_speex_resample_process), (gst_speex_resample_transform): * gst/speexresample/gstspeexresample.h: Rewrite timestamp tracking to make it more robust and guarantee a continous stream. * tests/check/Makefile.am: * tests/check/elements/speexresample.c: (setup_speexresample), (cleanup_speexresample), (fail_unless_perfect_stream), (test_perfect_stream_instance), (GST_START_TEST), (test_discont_stream_instance), (live_switch_alloc_only_48000), (live_switch_get_sink_caps), (live_switch_push), (speexresample_suite): Add unit tests for speexresample based on the audioresample unit tests. 2008-10-29 01:00:22 +0000 Jan Schmidt ext/resindvd/resindvdsrc.c: Make sure to start the NAV packet processing when changing state to PLAYING by passing a... Original commit message from CVS: * ext/resindvd/resindvdsrc.c: Make sure to start the NAV packet processing when changing state to PLAYING by passing a flag that indicates the state change is in progress. Fixes: #546319 2008-10-28 20:06:27 +0000 Stefan Kost ext/resindvd/resin-play: Remove $@ to fix parse_launch warning Original commit message from CVS: * ext/resindvd/resin-play: Remove $@ to fix parse_launch warning * ext/resindvd/resin-play2: Add a version that uses deinterlace and xvimagesink. 2008-10-28 19:30:33 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.*: Some random cleanup, add G_LIKELY and friends, use GST_DEBUG_OBJECT instead of ... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_get_unit_size), (gst_speex_resample_fixate_caps), (gst_speex_resample_init_state), (gst_speex_resample_update_state), (gst_speex_resample_parse_caps), (gst_speex_resample_transform_size), (gst_speex_resample_set_caps), (gst_speex_resample_push_drain), (gst_speex_resample_event), (gst_speex_resample_check_discont), (gst_speex_fix_output_buffer), (gst_speex_resample_process), (gst_speex_resample_transform), (gst_speex_resample_query), (gst_speex_resample_set_property): * gst/speexresample/gstspeexresample.h: Some random cleanup, add G_LIKELY and friends, use GST_DEBUG_OBJECT instead of GST_DEBUG, ... 2008-10-28 18:44:44 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Implement position query in time format. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_query): Implement position query in time format. 2008-10-28 18:41:19 +0000 Sebastian Dröge gst/flv/: Put the GstSegment directly into the instance struct instead of allocating and free'ing it again. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_loop), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event), (gst_flv_demux_dispose), (gst_flv_demux_init): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp): Put the GstSegment directly into the instance struct instead of allocating and free'ing it again. Push tags already if only one pad was added, no need to wait for the second one. When generating our index set has_video and has_audio if we find video or audio in case the FLV header has incorrect data. 2008-10-28 16:28:45 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: Fixate to the nearest supported rate instead of the first one. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_class_init), (gst_speex_resample_fixate_caps), (gst_speex_resample_process): Fixate to the nearest supported rate instead of the first one. 2008-10-28 16:25:00 +0000 Sebastian Dröge gst/audioresample/gstaudioresample.c: Fixate the rate to the nearest supported rate instead of the first one. Fixes b... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init), (audioresample_fixate_caps): Fixate the rate to the nearest supported rate instead of the first one. Fixes bug #549510. 2008-10-28 11:46:28 +0000 Sebastian Dröge gst/speexresample/: Update Speex resampler with latest version from Speex GIT. Original commit message from CVS: * gst/speexresample/README: * gst/speexresample/arch.h: * gst/speexresample/fixed_arm4.h: * gst/speexresample/fixed_arm5e.h: * gst/speexresample/fixed_bfin.h: * gst/speexresample/fixed_debug.h: * gst/speexresample/fixed_generic.h: * gst/speexresample/resample.c: (compute_func), (main), (sinc), (cubic_coef), (resampler_basic_direct_single), (resampler_basic_direct_double), (resampler_basic_interpolate_single), (resampler_basic_interpolate_double), (update_filter), (speex_resampler_init_frac), (speex_resampler_process_native), (speex_resampler_magic), (speex_resampler_process_float), (speex_resampler_process_int), (speex_resampler_process_interleaved_float), (speex_resampler_process_interleaved_int), (speex_resampler_set_rate_frac), (speex_resampler_skip_zeros), (speex_resampler_reset_mem): * gst/speexresample/speex_resampler.h: Update Speex resampler with latest version from Speex GIT. 2008-10-28 01:53:49 +0000 Michael Smith gst/aiffparse/aiffparse.*: Calculate width from depth correctly. Original commit message from CVS: * gst/aiffparse/aiffparse.c: * gst/aiffparse/aiffparse.h: Calculate width from depth correctly. Read SSND header properly (fixes 24 bit AIFF reading). 2008-10-27 17:01:22 +0000 Mark Nauwelaerts ext/x264/gstx264enc.c: Adapt to slightly modified x264 API. Fixes #555238. Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_init_encoder): Adapt to slightly modified x264 API. Fixes #555238. 2008-10-27 16:32:49 +0000 Mark Nauwelaerts ext/faac/gstfaac.c: Prevent endless loop if buffer alloc error. Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_sink_event): Prevent endless loop if buffer alloc error. 2008-10-27 09:45:04 +0000 Sebastian Dröge gst/flv/: Don't memcpy() all data we want to push downstream, instead just create subbuffers and push them downstream. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_pull_header), (gst_flv_demux_create_index): * gst/flv/gstflvparse.c: (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp), (gst_flv_parse_tag_type), (gst_flv_parse_header): * gst/flv/gstflvparse.h: Don't memcpy() all data we want to push downstream, instead just create subbuffers and push them downstream. Fix some minor memory leaks. 2008-10-27 09:42:55 +0000 Sebastian Dröge configure.ac: Require CVS of core for the last change. Original commit message from CVS: * configure.ac: Require CVS of core for the last change. 2008-10-27 09:41:18 +0000 Sebastian Dröge gst/flv/Makefile.am: Fix (non-critical) syntax error and add all required CFLAGS and LIBS. Original commit message from CVS: * gst/flv/Makefile.am: Fix (non-critical) syntax error and add all required CFLAGS and LIBS. * gst/flv/gstflvparse.c: (FLV_GET_STRING), (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp), (gst_flv_parse_tag_type): Rewrite the script tag parsing to make sure we don't try to read more data than we have. Also use GST_READ_UINT24_BE directly and fix some minor memory leaks. This should make all crashes on fuzzed FLV files disappear. 2008-10-27 09:37:21 +0000 Sebastian Dröge gst/flv/gstflvparse.c: Properly check everywhere that we have enough data to parse and don't read outside the allocat... Original commit message from CVS: * gst/flv/gstflvparse.c: (FLV_GET_STRING), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_type), (gst_flv_parse_header): Properly check everywhere that we have enough data to parse and don't read outside the allocated memory region. 2008-10-27 09:35:34 +0000 Sebastian Dröge gst/flv/gstflvparse.c: If the caps change during playback and negotiation fails error out instead of trying to continue. Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): If the caps change during playback and negotiation fails error out instead of trying to continue. 2008-10-27 09:33:40 +0000 Sebastian Dröge gst/flv/: Add support for Speex audio and allow buffers without valid timestamp in the muxer. Original commit message from CVS: * gst/flv/gstflvmux.c: (gst_flv_mux_audio_pad_setcaps), (gst_flv_mux_request_new_pad), (gst_flv_mux_write_buffer), (gst_flv_mux_collected): * gst/flv/gstflvmux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate): Add support for Speex audio and allow buffers without valid timestamp in the muxer. 2008-10-27 09:32:03 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Don't post an error message on the bus if sending EOS downstream didn't work. Fixes bug #550454. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_loop), (gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull): Don't post an error message on the bus if sending EOS downstream didn't work. Fixes bug #550454. Fix seek event handling to look at the flags of the seek event instead of assuming some random flags, don't send segment-start messages when operating in push mode and push seek events upstream if we couldn't handle them. 2008-10-27 09:27:18 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Error out early if pulling a tag failed. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag): Error out early if pulling a tag failed. 2008-10-27 09:25:11 +0000 Sebastian Dröge gst/flv/: In pull mode we create our own index before doing anything else and don't use the index provided by some fi... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_create_index), (gst_flv_demux_loop): * gst/flv/gstflvparse.c: (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp): * gst/flv/gstflvparse.h: In pull mode we create our own index before doing anything else and don't use the index provided by some files (which are more than often incorrect and cause failed seeks). For push mode we still use the index provided by the file and extend it while doing the playback. 2008-10-27 09:20:01 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Instead of using gst_pad_event_default() use a small gst_pad_push_event() wrapper that only do... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_push_src_event), (gst_flv_demux_loop), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event): Instead of using gst_pad_event_default() use a small gst_pad_push_event() wrapper that only does what we want and is much more simple. 2008-10-27 09:14:45 +0000 Sebastian Dröge gst/flv/gstflvdemux.*: If our index was created by the element and not provided from the outside we should destroy it... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_change_state), (gst_flv_demux_set_index), (gst_flv_demux_init): * gst/flv/gstflvdemux.h: If our index was created by the element and not provided from the outside we should destroy it when starting a new stream to get all old entries removed. 2008-10-27 09:12:33 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Improve debugging a bit when pulling a buffer from upstream fails. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_pull_range): Improve debugging a bit when pulling a buffer from upstream fails. 2008-10-27 09:10:54 +0000 Sebastian Dröge gst/flv/: Close the currently playing segment from the streaming thread instead of the thread where the seek event is... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_dispose): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Close the currently playing segment from the streaming thread instead of the thread where the seek event is handled. 2008-10-27 08:57:27 +0000 David Härdeman gst/mpegdemux/mpegtspacketizer.c: Add support for the frequency list descriptor, which provides additional frequencie... Original commit message from CVS: Patch by: David Härdeman * gst/mpegdemux/mpegtspacketizer.c: (mpegts_packetizer_parse_nit): Add support for the frequency list descriptor, which provides additional frequencies that should be scanned by a DVB application. Fixes bug #557814. 2008-10-27 08:52:50 +0000 vanista gst/mpegtsmux/mpegtsmux.c: Fix EOS logic by correctly popping the collect pad buffers only when we've chosen to use t... Original commit message from CVS: Patch by: vanista * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_choose_best_stream): Fix EOS logic by correctly popping the collect pad buffers only when we've chosen to use them instead of popping them always and storing them in a private queue. Before the pipeline would deadlock if all pads go EOS at the same time. Fixes bug #557763. 2008-10-26 20:07:51 +0000 Jan Schmidt configure.ac: Back to development -> 0.10.9.1 Original commit message from CVS: * configure.ac: Back to development -> 0.10.9.1 === release 0.10.9 === 2008-10-24 22:45:11 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dccp.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-scaletempo.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.9 Original commit message from CVS: Release 0.10.9 2008-10-24 21:43:17 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/ca.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/id.po: * po/it.po: * po/ky.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-10-24 16:41:33 +0000 Jan Schmidt configure.ac: Commit 0.10.8.4 pre-release Original commit message from CVS: * configure.ac: Commit 0.10.8.4 pre-release 2008-10-20 14:19:17 +0000 Edward Hervey gst/mpegdemux/gstmpegdemux.c: Fix reverse playback regression. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data): Fix reverse playback regression. Fixes #557080 2008-10-19 12:39:30 +0000 Tim-Philipp Müller ext/apexsink/gstapexplugin.c: Set apexsink's rank to NONE so it doesn't get used by autoaudiosink (there's no point r... Original commit message from CVS: * ext/apexsink/gstapexplugin.c: (plugin_init): Set apexsink's rank to NONE so it doesn't get used by autoaudiosink (there's no point really). (#556588) 2008-10-16 17:12:04 +0000 Jan Schmidt configure.ac: 0.10.8.3 pre-release Original commit message from CVS: * configure.ac: 0.10.8.3 pre-release 2008-10-16 16:37:33 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegtsdemux.*: Properly handle some resync cases in the optimised buffering strategy. Original commit message from CVS: Patch by: Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: Properly handle some resync cases in the optimised buffering strategy. 2008-10-16 16:18:31 +0000 Michael Smith sys/acmenc/Makefile.am: Remove incorrect use of DIRECTSOUND_LDFLAGS Original commit message from CVS: 2008-10-16 Michael Smith * sys/acmenc/Makefile.am: Remove incorrect use of DIRECTSOUND_LDFLAGS 2008-10-16 15:21:15 +0000 Sebastian Dröge gst/flv/gstflvmux.c: Don't set video_codec to the value that actually should go into audio codec, otherwise we create... Original commit message from CVS: * gst/flv/gstflvmux.c: (gst_flv_mux_audio_pad_setcaps), (gst_flv_mux_write_buffer): Don't set video_codec to the value that actually should go into audio codec, otherwise we create invalid files. Fixes bug #556564. 2008-10-16 15:06:55 +0000 Stefan Kost Don't install static libs for plugins. Fixes #550851 for base. Original commit message from CVS: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/gio/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/pango/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst/adder/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/audiotestsrc/Makefile.am: * gst/ffmpegcolorspace/Makefile.am: * gst/gdp/Makefile.am: * gst/playback/Makefile.am: * gst/subparse/Makefile.am: * gst/tcp/Makefile.am: * gst/typefind/Makefile.am: * gst/videorate/Makefile.am: * gst/videoscale/Makefile.am: * gst/videotestsrc/Makefile.am: * gst/volume/Makefile.am: * sys/v4l/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: Don't install static libs for plugins. Fixes #550851 for base. 2008-10-16 14:54:36 +0000 Jan Schmidt tests/check/Makefile.am: Leave apexsink out of the states test. Original commit message from CVS: * tests/check/Makefile.am: Leave apexsink out of the states test. 2008-10-16 13:05:37 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Fix problem with using the output seqnum counter to check for input seqnum disco... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_flush_start), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Fix problem with using the output seqnum counter to check for input seqnum discontinuities. Improve gap detection and recovery, reset and flush the jitterbuffer on seqnum restart. Fixes #556520. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_insert): Fix wrong G_LIKELY. 2008-10-16 11:55:19 +0000 Jan Schmidt configure.ac: Commit 0.10.8.2 pre-release bump, that actually went out in a tarball on 2008-10-11 Original commit message from CVS: * configure.ac: Commit 0.10.8.2 pre-release bump, that actually went out in a tarball on 2008-10-11 2008-10-16 09:51:28 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Install event handler on the rtcp_src pad, make LATENCY event return Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_event_send_rtcp_src), (create_send_rtcp_src): Install event handler on the rtcp_src pad, make LATENCY event return TRUE. 2008-10-16 09:18:31 +0000 Edward Hervey gst/mpegdemux/gstmpegdemux.c: Make sure the mpegpsdemux element creates valid newsegment events. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data): Make sure the mpegpsdemux element creates valid newsegment events. Fixes #556428 2008-10-16 08:17:59 +0000 Sebastian Pölsterl gst/mpegdemux/mpegtspacketizer.c: Fixes segfault in get_encoding_and_convert. Original commit message from CVS: patch by: Sebastian Pölsterl * gst/mpegdemux/mpegtspacketizer.c: Fixes segfault in get_encoding_and_convert. Fixes #556482 2008-10-16 08:13:49 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegtsdemux.c: Fixes a segfault in the adaptation buffer size strategy. Original commit message from CVS: patch by: Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: Fixes a segfault in the adaptation buffer size strategy. Fixes #556440 2008-10-15 17:45:37 +0000 Edward Hervey gst/selector/gstinputselector.c: Gracefully handle the cases when we dont' have otherpad. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_input_selector_event), (gst_input_selector_query): Gracefully handle the cases when we dont' have otherpad. Fixes #556430 2008-10-14 15:13:05 +0000 Edward Hervey gst/aiffparse/aiffparse.c: Fix debugging category initialization. Original commit message from CVS: * gst/aiffparse/aiffparse.c: (plugin_init): Fix debugging category initialization. Fixes #556274 2008-10-14 14:53:41 +0000 Jan Schmidt ext/apexsink/gstapexsink.c: Fix some more format string compiler warnings (from OS/X) Original commit message from CVS: * ext/apexsink/gstapexsink.c: Fix some more format string compiler warnings (from OS/X) 2008-10-13 12:27:06 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec for latest plugins changes Original commit message from CVS: update spec for latest plugins changes 2008-10-13 07:35:25 +0000 Sebastian Dröge ext/apexsink/gstapexraop.c: Fix format string compiler warnings. Original commit message from CVS: * ext/apexsink/gstapexraop.c: (gst_apexraop_connect), (gst_apexraop_set_volume): Fix format string compiler warnings. 2008-10-12 21:52:27 +0000 Jan Schmidt sys/oss4/: Add some spaces in translateable strings. Original commit message from CVS: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-source.c: Add some spaces in translateable strings. Fixes: #555969 #555968 #555965 2008-10-12 17:08:10 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Fix regression of handling flow returns in pull mode. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag), (gst_flv_demux_pull_header): Fix regression of handling flow returns in pull mode. Fixes bug #556003. 2008-10-12 17:04:17 +0000 Sebastian Dröge ext/Makefile.am: Add apexsink to SUBDIRS. Fixes bug #555912. Original commit message from CVS: * ext/Makefile.am: Add apexsink to SUBDIRS. Fixes bug #555912. 2008-10-11 11:02:14 +0000 Jan Schmidt tests/check/pipelines/metadata.c: Make the metadata test not fail when jpegenc isn't available.... as it isn't here, ... Original commit message from CVS: * tests/check/pipelines/metadata.c: Make the metadata test not fail when jpegenc isn't available.... as it isn't here, because it's not in this module, and therefore not in the plugin path when the check runs. 2008-10-10 16:33:36 +0000 Sebastian Dröge gst/flv/gstflvparse.c: Use gst_pad_alloc_buffer_and_set_caps() to make sure we get a buffer with caps that we can wor... Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Use gst_pad_alloc_buffer_and_set_caps() to make sure we get a buffer with caps that we can work with (i.e. the pad's caps). Add non-keyframe video frames to the index too but without the keyframe flag. Add audio frames to the index only if we have no video stream. 2008-10-10 16:15:09 +0000 Sebastian Dröge gst/flv/gstflvparse.c: Create pads from the pad templates, use fixed caps on them and only activate them after the ca... Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Create pads from the pad templates, use fixed caps on them and only activate them after the caps are set. 2008-10-10 15:51:42 +0000 Sebastian Dröge configure.ac: Disable flacparse for this release as it's too buggy. Original commit message from CVS: * configure.ac: Disable flacparse for this release as it's too buggy. 2008-10-10 11:17:09 +0000 Jan Schmidt * gst/flacparse/gstbaseparse.c: Fix compiler warning on OS/X about parameters not matching the debug format string. Original commit message from CVS: 2008-10-10 Jan Schmidt * gst/flacparse/gstbaseparse.c (gst_base_parse_push_buffer), (gst_base_parse_update_upstream_durations): Fix compiler warning on OS/X about parameters not matching the debug format string. 2008-10-10 11:01:36 +0000 Jan Schmidt * ChangeLog: Fix compiler warning on OS/X about parameters not matching the debug format string. Original commit message from CVS: * gst/flacparse/gstbaseparse.c (gst_base_parse_push_buffer), (gst_base_parse_update_upstream_durations): Fix compiler warning on OS/X about parameters not matching the debug format string. 2008-10-09 19:38:52 +0000 Sebastian Dröge gst/deinterlace2/tvtime/tomsmocomp.c: Fix unused variable compiler warning when not building Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp.c: (gst_deinterlace_method_tomsmocomp_class_init): Fix unused variable compiler warning when not building X86 assembly. 2008-10-09 16:51:35 +0000 Christian Schaller * configure.ac: * gst-plugins-bad.spec.in: * tests/check/Makefile.am: fix various build files to allow for disting and update spec file with latest changes. Original commit message from CVS: fix various build files to allow for disting and update spec file with latest changes. 2008-10-09 16:20:26 +0000 Sebastian Dröge gst/flv/: Get an approximate duration of the file by looking at the timestamp of the last tag in pull mode. If we get... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_loop): * gst/flv/gstflvparse.c: (gst_flv_parse_tag_timestamp): * gst/flv/gstflvparse.h: Get an approximate duration of the file by looking at the timestamp of the last tag in pull mode. If we get (maybe better) duration from metadata later we'll use that instead. 2008-10-09 15:43:02 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Refactor _pull_range() logic with checks into a seperate function to make things a bit more re... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_pull_range), (gst_flv_demux_pull_tag), (gst_flv_demux_pull_header): Refactor _pull_range() logic with checks into a seperate function to make things a bit more readable. 2008-10-09 15:26:56 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Use gst_element_class_set_details_simple(). Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_chain), (gst_flv_demux_base_init): Use gst_element_class_set_details_simple(). If we get GST_FLOW_NOT_LINKED in the parse loop but at least one of the pads is linked continue the loop. 2008-10-09 10:01:37 +0000 Stefan Kost ext/amrwb/gstamrwbenc.*: Pass the discont flag from the input buffer on to the output buffer in the AMR encoder. Original commit message from CVS: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbenc.h: Pass the discont flag from the input buffer on to the output buffer in the AMR encoder. 2008-10-09 10:00:51 +0000 Sebastian Dröge gst/flv/gstflvparse.c: Correct caps for video codec id 5: It's On2 VP6 with alpha channel which needs a different dec... Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate), (gst_flv_parse_tag_audio), (gst_flv_parse_video_negotiate): Correct caps for video codec id 5: It's On2 VP6 with alpha channel which needs a different decoder and has different caps. Add support for audio codec id 14, which is MP3 with 8kHz sampling rate. Fix endianness and signedness for raw audio codec ids. Add support for alaw and mulaw audio. 2008-10-09 09:48:46 +0000 Sebastian Dröge gst/flv/gstflvdemux.c: Go out of the parse loop as soon as we get an error instead of parsing until the GstAdapter is... Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_chain): Go out of the parse loop as soon as we get an error instead of parsing until the GstAdapter is empty. Add some explanations about the header and tag size. Don't print synchronizing message if everything is fine. 2008-10-09 09:26:58 +0000 Sebastian Dröge gst/flv/: Add first version of a FLV muxer. The only missing feature is writing of stream metadata. Original commit message from CVS: * gst/flv/Makefile.am: * gst/flv/gstflvdemux.c: (plugin_init): * gst/flv/gstflvmux.c: (gst_flv_mux_base_init), (gst_flv_mux_class_init), (gst_flv_mux_init), (gst_flv_mux_finalize), (gst_flv_mux_reset), (gst_flv_mux_handle_src_event), (gst_flv_mux_handle_sink_event), (gst_flv_mux_video_pad_setcaps), (gst_flv_mux_audio_pad_setcaps), (gst_flv_mux_request_new_pad), (gst_flv_mux_release_pad), (gst_flv_mux_write_header), (gst_flv_mux_write_buffer), (gst_flv_mux_collected), (gst_flv_mux_change_state): * gst/flv/gstflvmux.h: Add first version of a FLV muxer. The only missing feature is writing of stream metadata. 2008-10-09 09:21:44 +0000 Stefan Kost ext/amrwb/gstamrwbparse.*: Add flush seek handler. Taken from recent armnbparse changes. Original commit message from CVS: * ext/amrwb/gstamrwbparse.c: * ext/amrwb/gstamrwbparse.h: Add flush seek handler. Taken from recent armnbparse changes. Sync the code more and use #defines for HEADER. 2008-10-09 08:43:41 +0000 Stefan Kost ext/amrwb/gstamrwbparse.*: Fix the duration query. Also set caps on the pads and buffers more correctly. Taken from r... Original commit message from CVS: * ext/amrwb/gstamrwbparse.c: * ext/amrwb/gstamrwbparse.h: Fix the duration query. Also set caps on the pads and buffers more correctly. Taken from recent armnbparse changes. 2008-10-08 16:20:26 +0000 Zaheer Abbas Merali gst/mpegdemux/: Add Fluendo to the Long Name. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegtsdemux.c: Add Fluendo to the Long Name. 2008-10-08 15:25:24 +0000 Zaheer Abbas Merali Move of mpegtsparse to mpegdemux. Original commit message from CVS: * configure.ac: * gst-plugins-bad.spec.in: * gst/mpegdemux/Makefile.am: * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/gstmpegdesc.c: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/mpegtspacketizer.c: * gst/mpegdemux/mpegtspacketizer.h: * gst/mpegdemux/mpegtsparse.c: * gst/mpegdemux/mpegtsparse.h: Move of mpegtsparse to mpegdemux. Fixes #555193. 2008-10-08 15:22:12 +0000 Zaheer Abbas Merali * gst/mpegtsparse/mpegtsparse.c: Move of mpegtsparse to mpegdemux Original commit message from CVS: Move of mpegtsparse to mpegdemux 2008-10-08 10:21:20 +0000 Sebastian Dröge gst/mpegdemux/gstmpegdemux.c: Prevent a division by zero if last mux rate was zero. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_send_data), (gst_flups_demux_parse_pack_start): Prevent a division by zero if last mux rate was zero. If we're going to send a NEWSEGMENT event but the segment start and the current buffer timestamp differ by more than a second we will start the NEWSEGMENT at the buffer timestamp. This fixes playback of the tv2-1_25.mpg file, which has 0 as first SCR but the first PTS are around 1 hour and 40 minutes. Fixes bug #553755. 2008-10-07 21:29:26 +0000 Jan Schmidt ext/resindvd/resindvdsrc.c: Fix next/prev chapter seeking at the beginning or end. Original commit message from CVS: * ext/resindvd/resindvdsrc.c: Fix next/prev chapter seeking at the beginning or end. Use 64-bit scaling utility functions for converting MPEG timestamps. 2008-10-07 18:54:41 +0000 Håvard Graff gst/rtpmanager/gstrtpbin-marshal.list: Add marshaller for new action signal. Original commit message from CVS: Patch by: Håvard Graff * gst/rtpmanager/gstrtpbin-marshal.list: Add marshaller for new action signal. * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_get_internal_session), (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: Add action signal to retrieve the internal RTPSession object. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_get_property), (gst_rtp_session_release_pad): Add property to access the internal RTPSession object. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (check_collision): * gst/rtpmanager/rtpsession.h: Add action signal to retrieve an RTPSource object by SSRC. See #555396. 2008-10-07 13:14:40 +0000 Stefan Kost gst/selector/gstoutputselector.c: Choose right pad for sending events. Fixes #555244 Original commit message from CVS: * gst/selector/gstoutputselector.c: Choose right pad for sending events. Fixes #555244 2008-10-07 11:33:10 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Release pads of the session manager. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (find_session_by_pad), (free_session), (gst_rtp_bin_dispose), (remove_recv_rtp), (remove_recv_rtcp), (remove_send_rtp), (remove_rtcp), (gst_rtp_bin_release_pad): Release pads of the session manager. Start implementing releasing pads of gstrtpbin. * gst/rtpmanager/gstrtpsession.c: (remove_recv_rtp_sink), (remove_recv_rtcp_sink), (remove_send_rtp_sink), (remove_send_rtcp_src), (gst_rtp_session_release_pad): Implement releasing pads in gstrtpsession. 2008-10-07 10:02:20 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Only update the seqnum-base when it was not already configured for the streams. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_parse_caps): Only update the seqnum-base when it was not already configured for the streams. 2008-10-06 16:01:49 +0000 Stefan Kost configure.ac Original commit message from CVS: * configure.ac * ext/metadata/README: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: Start using core geo tags (bump req). Fix handling of location references. * tests/check/Makefile.am: Sort blacklisted elements and remove moved ones. Add new test. * tests/check/pipelines/metadata.c: Add first tests for metadata element. * tests/icles/metadata_editor.c: Move free to correct place. 2008-10-06 15:53:01 +0000 Stefan Kost tests/check/generic/states.c: Stop test on state-change error. Should be applied on other modules if we agree that it... Original commit message from CVS: * tests/check/generic/states.c: Stop test on state-change error. Should be applied on other modules if we agree that it makes sense. 2008-10-06 12:01:14 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtsparse.c: Actually copy the structure passed in when assigning it because it gets freed straight... Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Actually copy the structure passed in when assigning it because it gets freed straight after the function call. Re: pat_info and pmt_info GstStructures. 2008-10-06 08:32:41 +0000 Zaheer Abbas Merali gst/mpegdemux/gstmpegtsdemux.c: Fix wrong firing of critical introduced by previous optimisation. Original commit message from CVS: Patch by: Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: Fix wrong firing of critical introduced by previous optimisation. 2008-10-03 17:11:12 +0000 Wim Taymans ext/faac/gstfaac.c: Warn and clamp to max bitrate for samplerate. Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_configure_source_pad): Warn and clamp to max bitrate for samplerate. Fixes #550486. 2008-10-03 09:11:16 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtsparse.c: Fix possible crash where pat is pointing to a freed structure. Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Fix possible crash where pat is pointing to a freed structure. 2008-10-03 05:57:58 +0000 Stefan Kost ext/metadata/: Add mapping of format and mime type to xmp. Original commit message from CVS: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataxmp.c: * ext/metadata/Makefile.am: Add mapping of format and mime type to xmp. 2008-10-02 14:42:25 +0000 Stefan Kost ext/metadata/: Reverting. Will need to wait for core 0.10.21 release. Original commit message from CVS: * ext/metadata/README: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: Reverting. Will need to wait for core 0.10.21 release. 2008-10-02 13:52:50 +0000 Stefan Kost ext/metadata/: Use core gsp tags. Original commit message from CVS: * ext/metadata/README: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: Use core gsp tags. 2008-09-30 17:03:14 +0000 Sebastian Dröge gst/flacparse/gstbaseparse.c: Add support for GstIndex. Original commit message from CVS: * gst/flacparse/gstbaseparse.c: (gst_base_parse_finalize), (gst_base_parse_class_init), (gst_base_parse_push_buffer), (gst_base_parse_change_state), (gst_base_parse_set_index), (gst_base_parse_get_index): Add support for GstIndex. 2008-09-30 16:41:15 +0000 Sebastian Dröge gst/flacparse/gstbaseparse.*: Provide a vfunc for the subclass to decide whether a frame is inside the segment or not... Original commit message from CVS: * gst/flacparse/gstbaseparse.c: (gst_base_parse_class_init), (gst_base_parse_push_buffer), (gst_base_parse_update_upstream_durations), (gst_base_parse_convert), (gst_base_parse_frame_in_segment): * gst/flacparse/gstbaseparse.h: Provide a vfunc for the subclass to decide whether a frame is inside the segment or not and add a default implementation. Fix approximate bitrate calculations. 2008-09-30 16:22:04 +0000 Sebastian Dröge gst/flacparse/gstbaseparse.c: Approximate the average bitrate, duration and size if possible and add a default conver... Original commit message from CVS: * gst/flacparse/gstbaseparse.c: (gst_base_parse_class_init), (gst_base_parse_init), (gst_base_parse_push_buffer), (gst_base_parse_update_upstream_durations), (gst_base_parse_chain), (gst_base_parse_loop), (gst_base_parse_activate), (gst_base_parse_convert), (gst_base_parse_query): Approximate the average bitrate, duration and size if possible and add a default conversion function which uses this for time<->byte conversions. * gst/flacparse/gstflacparse.c: (gst_flac_parse_get_frame_size): Fix parsing if upstream gives -1 as duration. 2008-09-30 15:08:52 +0000 Wim Taymans gst/rtpmanager/rtpsession.c: Ref the rtpsource object before we release the session lock when we emit the signals. Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_ssrc_active), (on_ssrc_sdes), (on_bye_ssrc), (on_bye_timeout), (on_timeout), (on_sender_timeout): Ref the rtpsource object before we release the session lock when we emit the signals. 2008-09-30 11:19:10 +0000 Ole André Vadla Ravnås sys/: New plugin for audio capture and playback using Windows Audio Session Original commit message from CVS: * sys/Makefile.am: * sys/wasapi/Makefile.am: * sys/wasapi/gstwasapi.c: * sys/wasapi/gstwasapisink.c: * sys/wasapi/gstwasapisink.h: * sys/wasapi/gstwasapisrc.c: * sys/wasapi/gstwasapisrc.h: * sys/wasapi/gstwasapiutil.c: * sys/wasapi/gstwasapiutil.h: New plugin for audio capture and playback using Windows Audio Session API (WASAPI) available with Vista and newer (#520901). Comes with hardcoded caps and obviously needs lots of love. Haven't had time to work on this code since it was written, was initially just a quick experiment to play around with this new API. 2008-09-30 10:43:54 +0000 Ole André Vadla Ravnås * ChangeLog: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: sys/dshowdecwrapper/gstdshowaudiodec.cpp Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.cpp (AudioFakeSink.DoRenderSample): Fix a couple of signed/unsigned comparison warnings. 2008-09-30 10:22:10 +0000 Ole André Vadla Ravnås sys/dshowdecwrapper/: Use the _T() macro to support both Unicode and MBCS. Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.h (AudioFakeSink.AudioFakeSink): * sys/dshowdecwrapper/gstdshowvideodec.h (VideoFakeSink.VideoFakeSink): Use the _T() macro to support both Unicode and MBCS. 2008-09-30 10:17:41 +0000 Ole André Vadla Ravnås ext/libmms/gstmms.c (plugin_init): Fix return type of the GstURIHandler::get_type() implementation. Original commit message from CVS: * ext/libmms/gstmms.c (plugin_init): Fix return type of the GstURIHandler::get_type() implementation. 2008-09-29 08:26:54 +0000 Sebastian Dröge Add FLAC parser, based on GstBaseParse. Also add the bit and byte reader that will be added to libgstbase later. Original commit message from CVS: * configure.ac: * gst/flacparse/Makefile.am: * gst/flacparse/gstbaseparse.c: (gst_base_parse_get_type), (gst_base_parse_base_init), (gst_base_parse_base_finalize), (gst_base_parse_finalize), (gst_base_parse_class_init), (gst_base_parse_init), (gst_base_parse_check_frame), (gst_base_parse_parse_frame), (gst_base_parse_bytepos_to_time), (gst_base_parse_sink_event), (gst_base_parse_sink_eventfunc), (gst_base_parse_src_event), (gst_base_parse_src_eventfunc), (gst_base_parse_is_seekable), (gst_base_parse_push_buffer), (gst_base_parse_handle_and_push_buffer), (gst_base_parse_drain), (gst_base_parse_chain), (gst_base_parse_pull_range), (gst_base_parse_loop), (gst_base_parse_sink_activate), (gst_base_parse_activate), (gst_base_parse_sink_activate_push), (gst_base_parse_sink_activate_pull), (gst_base_parse_set_duration), (gst_base_parse_set_min_frame_size), (gst_base_parse_get_querytypes), (gst_base_parse_query), (gst_base_parse_handle_seek), (gst_base_parse_sink_setcaps): * gst/flacparse/gstbaseparse.h: * gst/flacparse/gstbitreader.c: (gst_bit_reader_new), (gst_bit_reader_new_from_buffer), (gst_bit_reader_free), (gst_bit_reader_init), (gst_bit_reader_init_from_buffer), (gst_bit_reader_set_pos), (gst_bit_reader_get_pos), (gst_bit_reader_get_remaining), (gst_bit_reader_skip), (gst_bit_reader_skip_to_byte): * gst/flacparse/gstbitreader.h: * gst/flacparse/gstbytereader.c: (GDOUBLE_SWAP_LE_BE), (GFLOAT_SWAP_LE_BE), (gst_byte_reader_new), (gst_byte_reader_new_from_buffer), (gst_byte_reader_free), (gst_byte_reader_init), (gst_byte_reader_init_from_buffer), (gst_byte_reader_set_pos), (gst_byte_reader_get_pos), (gst_byte_reader_get_remaining), (gst_byte_reader_skip), (gst_byte_reader_get_uint8), (gst_byte_reader_get_int8), (gst_byte_reader_peek_uint8), (gst_byte_reader_peek_int8), (gst_byte_reader_get_uint24_le), (gst_byte_reader_get_uint24_be), (gst_byte_reader_get_int24_le), (gst_byte_reader_get_int24_be), (gst_byte_reader_peek_uint24_le), (gst_byte_reader_peek_uint24_be), (gst_byte_reader_peek_int24_le), (gst_byte_reader_peek_int24_be): * gst/flacparse/gstbytereader.h: * gst/flacparse/gstflac.c: (plugin_init): * gst/flacparse/gstflacparse.c: (gst_flac_parse_base_init), (gst_flac_parse_class_init), (gst_flac_parse_init), (gst_flac_parse_finalize), (gst_flac_parse_start), (gst_flac_parse_stop), (gst_flac_parse_get_frame_size), (gst_flac_parse_check_valid_frame), (gst_flac_parse_handle_streaminfo), (gst_flac_parse_handle_vorbiscomment), (gst_flac_parse_handle_picture), (_value_array_append_buffer), (gst_flac_parse_handle_headers), (gst_flac_parse_generate_headers), (gst_flac_parse_parse_frame): * gst/flacparse/gstflacparse.h: Add FLAC parser, based on GstBaseParse. Also add the bit and byte reader that will be added to libgstbase later. The FLAC parser is currently not 100% bug free and fails to get the correct frame size for some frames in some streams. 2008-09-27 01:12:30 +0000 Jan Schmidt ext/resindvd/: Add in Title/Chapter seeking, and simple but buggy audio and subtitle stream selection. Original commit message from CVS: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdsrc.c: * ext/resindvd/rsnstreamselector.c: Add in Title/Chapter seeking, and simple but buggy audio and subtitle stream selection. 2008-09-24 17:21:41 +0000 Michael Smith sys/dshowdecwrapper/: Prefer known-good filters, create directly by GUID if possible, fall back to creating highest-m... Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowfakesrc.cpp: * sys/dshowdecwrapper/gstdshowutil.cpp: * sys/dshowdecwrapper/gstdshowutil.h: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.h: Prefer known-good filters, create directly by GUID if possible, fall back to creating highest-merit filter otherwise. Fixes playback with random dshow filters installed in some cases. 2008-09-23 18:13:31 +0000 Wim Taymans gst/rtpmanager/: Fix some docs. Original commit message from CVS: * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_insert), (rtp_jitter_buffer_get_sync): * gst/rtpmanager/rtpsession.c: (on_sender_timeout), (session_cleanup): * gst/rtpmanager/rtpsource.c: Fix some docs. 2008-09-23 17:34:44 +0000 Zaheer Abbas Merali Patch from: Josep Torra Original commit message from CVS: Patch from: Josep Torra * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: Use a preallocated buffer per stream for PES packets sent on src pads. Adaptively adjust buffer size appropriately. 2008-09-17 14:47:12 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Clean up the debug logging code and #ifdef mess a bit: whether or not gstreamer debug mess... Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_start), (gst_neonhttp_src_send_request_and_redirect): Clean up the debug logging code and #ifdef mess a bit: whether or not gstreamer debug messages should be output should not depend on an element property; also, GST_ELEMENT_ERROR will leave a line in the log already, so merge the more useful debug log messages with the less useful error debug strings. 2008-09-17 14:22:38 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Don't post LIBRARY_INIT errors where we should be posting Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_start): Don't post LIBRARY_INIT errors where we should be posting RESOURCE OPEN_READ errors. Fixes #552506. 2008-09-17 13:59:21 +0000 Jan Schmidt Fix compiler warnings on OS/X Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (jack_process_cb): * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): Fix compiler warnings on OS/X 2008-09-17 09:06:57 +0000 Michael Krufky sys/dvb/gstdvbsrc.c: Add adapter_name for bus message in ATSC case. Fixes #552536. Original commit message from CVS: patch by: Michael Krufky * sys/dvb/gstdvbsrc.c: Add adapter_name for bus message in ATSC case. Fixes #552536. 2008-09-15 09:39:00 +0000 Stefan Kost ext/celt/gstceltenc.h: Help gtk-doc to parse this correctly. Original commit message from CVS: * ext/celt/gstceltenc.h: Help gtk-doc to parse this correctly. * gst/pcapparse/gstpcapparse.c: Add missing include. 2008-09-15 09:34:14 +0000 Stefan Kost examples/Makefile.am: Only built scaletempo example if we have gtk. Original commit message from CVS: * examples/Makefile.am: Only built scaletempo example if we have gtk. 2008-09-13 01:37:50 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Do not try to adjust the offset of streams for which we have not yet seen an SR packet. A... Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain): Do not try to adjust the offset of streams for which we have not yet seen an SR packet. Avoids large ts-offsets in some cases. 2008-09-10 23:15:11 +0000 Michael Smith sys/dshowdecwrapper/: Major rewrite of dshowdecwrapper. Converts code to Original commit message from CVS: * sys/dshowdecwrapper/Makefile.am: * sys/dshowdecwrapper/gstdshowaudiodec.c: * sys/dshowdecwrapper/gstdshowaudiodec.cpp: * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowdecwrapper.c: * sys/dshowdecwrapper/gstdshowdecwrapper.cpp: * sys/dshowdecwrapper/gstdshowdecwrapper.h: * sys/dshowdecwrapper/gstdshowfakesrc.cpp: * sys/dshowdecwrapper/gstdshowfakesrc.h: * sys/dshowdecwrapper/gstdshowutil.cpp: * sys/dshowdecwrapper/gstdshowutil.h: * sys/dshowdecwrapper/gstdshowvideodec.c: * sys/dshowdecwrapper/gstdshowvideodec.cpp: * sys/dshowdecwrapper/gstdshowvideodec.h: Major rewrite of dshowdecwrapper. Converts code to C++, moves to direct use of DirectShow base classes, make a lot of code clearer, simplify, etc. Fix decode of MP3 on Vista by working around an apparent bug in the decoder. 2008-09-10 12:05:39 +0000 Ole André Vadla Ravnås sys/winks/gstksclock.c (gst_ks_clock_worker_thread_func, gst_ks_clock_start): Original commit message from CVS: * sys/winks/gstksclock.c (gst_ks_clock_worker_thread_func, gst_ks_clock_start): Synchronize KS clock as a single-shot operation for now, there's not much point in doing it periodically until we're actually using the KS timestamps for anything else than just discarding old frames. * sys/winks/gstksvideosrc.c (gst_ks_video_src_open_device): Provide the GstClock when opening the device if we already have one. 2008-09-09 23:58:02 +0000 Ole André Vadla Ravnås sys/winks/gstksvideodevice.c (GST_DEBUG_IS_ENABLED, last_timestamp, gst_ks_video_device_prepare_buffers, gst_ks_video... Original commit message from CVS: * sys/winks/gstksvideodevice.c (GST_DEBUG_IS_ENABLED, last_timestamp, gst_ks_video_device_prepare_buffers, gst_ks_video_device_create_pin, gst_ks_video_device_set_state, gst_ks_video_device_request_frame, gst_ks_video_device_read_frame): Guard against capturing old frames by keeping track of the last timestamp and also zero-fill the buffers before each capture. Only assign a master clock if the pin hasn't already got one. Actually free buffers on the way down to avoid a huge memory leak, as this was previously done when changing state to ACQUIRE downwards and we now skip that state on the way down. Add some debug. * sys/winks/gstksvideosrc.c (DEFAULT_DEVICE_PATH, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_INDEX, KS_WORKER_LOCK, KS_WORKER_UNLOCK, KS_WORKER_WAIT, KS_WORKER_NOTIFY, KS_WORKER_WAIT_FOR_RESULT, KS_WORKER_NOTIFY_RESULT, KS_WORKER_STATE_STARTING, KS_WORKER_STATE_READY, KS_WORKER_STATE_STOPPING, KS_WORKER_STATE_ERROR, KsWorkerState, device_path, device_name, device_index, running, worker_thread, worker_lock, worker_notify_cond, worker_result_cond, worker_state, worker_pending_caps, worker_setcaps_result, worker_pending_run, worker_run_result, gst_ks_video_src_reset, gst_ks_video_src_apply_driver_quirks, gst_ks_video_src_open_device, gst_ks_video_src_close_device, gst_ks_video_src_worker_func, gst_ks_video_src_start_worker, gst_ks_video_src_stop_worker, gst_ks_video_src_change_state, gst_ks_video_src_set_clock, gst_ks_video_src_set_caps, gst_ks_video_src_timestamp_buffer, gst_ks_video_src_create): Remove ENABLE_CLOCK_DEBUG define, it's GST_LEVEL_DEBUG after all. Get rid of PROP_ENSLAVE_KSCLOCK and always slave the ks clock to the GStreamer clock, it doesn't seem to hurt and matches DirectShow's behavior. As an added bonus we usually get PresentationTime set for each frame, so we can expand on this later for smarter latency reporting (by looking at the diff between the timestamp from the driver and the time according to the GStreamer clock). Use an internal worker thread for opening the device, setting caps, changing its state and closing it. This way we're a lot more compatible with drivers that rely on hacks to do video-effects between the low-level NT API and the application. Ick. Start the ks clock and set the pin to KSSTATE_RUN on the first create() so that we'll hopefully get hold of the GStreamer clock from the very beginning. This way there's no chance that the timestamps will make a sudden jump in the beginning of the stream when we're running with a clock. * sys/winks/kshelpers.c (CHECK_OPTIONS_FLAG, ks_options_flags_to_string): Reorder the flags to match the headerfile order, and make the string a bit more compact. * sys/winks/ksvideohelpers.c (ks_video_probe_filter_for_caps): Avoid leaking KSPROPERTY_PIN_DATARANGES. 2008-09-09 17:56:10 +0000 Mark Nauwelaerts Add jp2k plugin. Fixes #550657. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/jp2k/Makefile.am: * ext/jp2k/gstjasperdec.c: (gst_jasper_dec_base_init), (gst_jasper_dec_class_init), (gst_jasper_dec_init), (gst_jasper_dec_reset), (gst_jasper_dec_sink_setcaps), (gst_jasper_dec_negotiate), (gst_jasper_dec_get_picture), (gst_jasper_dec_chain), (gst_jasper_dec_set_property), (gst_jasper_dec_get_property), (gst_jasper_dec_change_state), (plugin_init): * ext/jp2k/gstjasperdec.h: Add jp2k plugin. Fixes #550657. 2008-09-09 11:47:42 +0000 Edward Hervey gst/mpegdemux/: Fix conflicting public names in new mpeg demuxers. Original commit message from CVS: * gst/mpegdemux/flumpegdemux.c: (plugin_init): * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_sync_get_type), (gst_flups_demux_get_type), (gst_flups_demux_plugin_init): * gst/mpegdemux/gstmpegtsdemux.c: (gst_fluts_demux_get_type), (gst_fluts_demux_plugin_init): Fix conflicting public names in new mpeg demuxers. Fixes #550468 2008-09-09 01:14:10 +0000 Michael Smith gst/aiffparse/aiffparse.c: Support chunks in AIFF in any order in pull mode, and any order so long as we get COMM bef... Original commit message from CVS: * gst/aiffparse/aiffparse.c: Support chunks in AIFF in any order in pull mode, and any order so long as we get COMM before the actual data (SSND) in push mode. Fixes playback of AIFC files. 2008-09-08 20:27:23 +0000 Wim Taymans gst/selector/gstinputselector.c: Reset the selector state when going to READY. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_reset), (gst_input_selector_reset), (gst_input_selector_change_state): Reset the selector state when going to READY. 2008-09-05 13:52:34 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.*: Add signal to notify listeners when a sender becomes a receiver. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (on_sender_timeout), (create_session), (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain), (gst_rtp_bin_class_init), (gst_rtp_bin_request_new_pad): * gst/rtpmanager/gstrtpbin.h: Add signal to notify listeners when a sender becomes a receiver. Tweak lip-sync code, don't store our own copy of the ts-offset of the jitterbuffer, don't adjust sync if the change is less than 4msec. Get the RTP timestamp <-> GStreamer timestamp relation directly from the jitterbuffer instead of our inaccurate version from the source. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_get_sync): * gst/rtpmanager/gstrtpjitterbuffer.h: Add G_LIKELY macros, use global defines for max packet reorder and dropouts. Reset the jitterbuffer clock skew detection when packets seqnums are changed unexpectedly. * gst/rtpmanager/gstrtpsession.c: (on_sender_timeout), (gst_rtp_session_class_init), (gst_rtp_session_init): * gst/rtpmanager/gstrtpsession.h: Add sender timeout signal. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew), (rtp_jitter_buffer_insert), (rtp_jitter_buffer_get_sync): * gst/rtpmanager/rtpjitterbuffer.h: Add some G_LIKELY macros. Keep track of the extended RTP timestamp so that we can report the RTP timestamp <-> GStreamer timestamp relation for lip-sync. Remove server timestamp gap detection code, the server can sometimes make a huge gap in timestamps (talk spurts,...) see #549774. Detect timetamp weirdness instead by observing the sender/receiver timestamp relation and resync if it changes more than 1 second. Add method to report about the current rtp <-> gst timestamp relation which is needed for lip-sync. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (on_sender_timeout), (check_collision), (rtp_session_process_sr), (session_cleanup): * gst/rtpmanager/rtpsession.h: Add sender timeout signal. Remove inaccurate rtp <-> gst timestamp relation code, the jitterbuffer can now do an accurate reporting about this. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (rtp_source_update_caps), (calculate_jitter), (rtp_source_process_rtp): * gst/rtpmanager/rtpsource.h: Remove inaccurate rtp <-> gst timestamp relation code. * gst/rtpmanager/rtpstats.h: Define global max-reorder and max-dropout constants for use in various subsystems. 2008-09-05 11:07:32 +0000 Sebastian Pölsterl sys/dvb/gstdvbsrc.c: Add DVB Adapter name to structure sent over bus. Original commit message from CVS: patch by: Sebastian Pölsterl * sys/dvb/gstdvbsrc.c: Add DVB Adapter name to structure sent over bus. 2008-09-03 14:02:29 +0000 Christian Schaller * gst-plugins-bad.spec.in: add mpeg demuxer Original commit message from CVS: add mpeg demuxer 2008-09-02 17:43:42 +0000 Edward Hervey gst/mpegdemux/: Fix build on macosx. Original commit message from CVS: * gst/mpegdemux/gstmpegdemux.c: (gst_flups_demux_parse_pack_start): * gst/mpegdemux/gstmpegtsdemux.c: (gst_fluts_demux_data_cb): Fix build on macosx. 2008-09-02 12:04:32 +0000 Zaheer Abbas Merali Add Fluendo MPEG PS and TS demuxers to gst-plugins-bad. This is now dual licensed MPL and LGPL. Original commit message from CVS: * configure.ac: * gst/mpegdemux/Makefile.am: * gst/mpegdemux/flumpegdemux.c: * gst/mpegdemux/flutspatinfo.c: * gst/mpegdemux/flutspatinfo.h: * gst/mpegdemux/flutspmtinfo.c: * gst/mpegdemux/flutspmtinfo.h: * gst/mpegdemux/flutspmtstreaminfo.c: * gst/mpegdemux/flutspmtstreaminfo.h: * gst/mpegdemux/gstmpegdefs.h: * gst/mpegdemux/gstmpegdemux.c: * gst/mpegdemux/gstmpegdemux.h: * gst/mpegdemux/gstmpegdesc.c: * gst/mpegdemux/gstmpegdesc.h: * gst/mpegdemux/gstmpegtsdemux.c: * gst/mpegdemux/gstmpegtsdemux.h: * gst/mpegdemux/gstpesfilter.c: * gst/mpegdemux/gstpesfilter.h: * gst/mpegdemux/gstsectionfilter.c: * gst/mpegdemux/gstsectionfilter.h: Add Fluendo MPEG PS and TS demuxers to gst-plugins-bad. This is now dual licensed MPL and LGPL. 2008-09-02 11:23:02 +0000 Wim Taymans gst/mpegtsmux/mpegtsmux.c: Set caps on outgoing buffers. Original commit message from CVS: * gst/mpegtsmux/mpegtsmux.c: (new_packet_cb): Set caps on outgoing buffers. 2008-09-02 09:56:44 +0000 Tim-Philipp Müller Enable/fix up translations for these plugins. Original commit message from CVS: * ext/resindvd/plugin.c: (plugin_init): * ext/resindvd/resindvdsrc.c: * ext/twolame/gsttwolame.c: (plugin_init): * gst/aiffparse/aiffparse.c: (plugin_init): Enable/fix up translations for these plugins. * po/LINGUAS: Add 'ca' to LINGUAS. * po/POTFILES.in: * po/POTFILES.skip: Add more files for translation and more files which tools should skip. 2008-09-02 09:46:04 +0000 Edward Hervey gst/mpegtsmux/tsmux/tsmux.c: Fix build on macosx. Original commit message from CVS: * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_write_ts_header): Fix build on macosx. 2008-09-01 17:54:00 +0000 Christian Schaller * examples/Makefile.am: * gst-plugins-bad.spec.in: update spec file and add missing subdirs in Makefile.am Original commit message from CVS: update spec file and add missing subdirs in Makefile.am 2008-09-01 17:49:59 +0000 Sebastian Dröge gst/mpegtsmux/mpegtsmux_aac.c: Allocate a fixed size buffer on the stack instead of using malloc(). Original commit message from CVS: * gst/mpegtsmux/mpegtsmux_aac.c: (mpegtsmux_prepare_aac): Allocate a fixed size buffer on the stack instead of using malloc(). * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_new), (tsmux_free), (tsmux_program_new), (tsmux_program_free): * gst/mpegtsmux/tsmux/tsmuxstream.c: (tsmux_stream_new), (tsmux_stream_free), (tsmux_stream_consume), (tsmux_stream_add_data): Use GSlice. 2008-09-01 17:47:03 +0000 Sebastian Dröge gst/mpegtsmux/mpegtsmux.c: Add support for muxing MPEG4 video. Original commit message from CVS: * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_create_stream): Add support for muxing MPEG4 video. 2008-09-01 17:41:39 +0000 Edward Hervey gst/mpegtsmux/tsmux/: Fix build of mpegtsmux. Original commit message from CVS: * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxstream.h: Fix build of mpegtsmux. 2008-09-01 16:38:40 +0000 Sebastian Dröge Add Fluendo MPEG-TS muxer and libtsmux to gst-plugins-bad. This is renamed to mpegtsmux to prevent conflicts. Also al... Original commit message from CVS: * configure.ac: * gst/mpegtsmux/Makefile.am: * gst/mpegtsmux/mpegtsmux.c: (mpegtsmux_base_init), (mpegtsmux_class_init), (mpegtsmux_init), (mpegtsmux_dispose), (gst_mpegtsmux_set_property), (gst_mpegtsmux_get_property), (release_buffer_cb), (mpegtsmux_create_stream), (mpegtsmux_create_streams), (mpegtsmux_choose_best_stream), (mpegtsmux_collected), (mpegtsmux_request_new_pad), (mpegtsmux_release_pad), (new_packet_cb), (mpegtsdemux_prepare_srcpad), (mpegtsmux_change_state), (plugin_init): * gst/mpegtsmux/mpegtsmux.h: * gst/mpegtsmux/mpegtsmux_aac.c: (mpegtsmux_prepare_aac): * gst/mpegtsmux/mpegtsmux_aac.h: * gst/mpegtsmux/mpegtsmux_h264.c: (mpegtsmux_prepare_h264): * gst/mpegtsmux/mpegtsmux_h264.h: * gst/mpegtsmux/tsmux/Makefile.am: * gst/mpegtsmux/tsmux/crc.h: * gst/mpegtsmux/tsmux/tsmux.c: (tsmux_new), (tsmux_set_write_func), (tsmux_set_pat_frequency), (tsmux_get_pat_frequency), (tsmux_free), (tsmux_program_new), (tsmux_set_pmt_frequency), (tsmux_get_pmt_frequency), (tsmux_program_add_stream), (tsmux_program_set_pcr_stream), (tsmux_get_new_pid), (tsmux_create_stream), (tsmux_find_stream), (tsmux_packet_out), (tsmux_write_adaptation_field), (tsmux_write_ts_header), (tsmux_write_stream_packet), (tsmux_program_free), (tsmux_write_section), (tsmux_write_section_hdr), (tsmux_write_pat), (tsmux_write_pmt): * gst/mpegtsmux/tsmux/tsmux.h: * gst/mpegtsmux/tsmux/tsmuxcommon.h: * gst/mpegtsmux/tsmux/tsmuxstream.c: (tsmux_stream_new), (tsmux_stream_get_pid), (tsmux_stream_free), (tsmux_stream_set_buffer_release_func), (tsmux_stream_consume), (tsmux_stream_at_pes_start), (tsmux_stream_bytes_avail), (tsmux_stream_bytes_in_buffer), (tsmux_stream_get_data), (tsmux_stream_pes_header_length), (tsmux_stream_find_pts_dts_within), (tsmux_stream_write_pes_header), (tsmux_stream_add_data), (tsmux_stream_get_es_descrs), (tsmux_stream_pcr_ref), (tsmux_stream_pcr_unref), (tsmux_stream_is_pcr), (tsmux_stream_get_pts): * gst/mpegtsmux/tsmux/tsmuxstream.h: Add Fluendo MPEG-TS muxer and libtsmux to gst-plugins-bad. This is renamed to mpegtsmux to prevent conflicts. Also all relevant informations about copyright and license are added to the top of every file but apart from that no changes compared to the latest SVN versions happened. 2008-09-01 16:05:45 +0000 Edward Hervey tests/check/elements/audioresample.c: Now that GstBaseTransform is 'fixed' ... remove cruft from tests. Original commit message from CVS: * tests/check/elements/audioresample.c: (setup_audioresample), (fail_unless_perfect_stream), (test_perfect_stream_instance), (test_discont_stream_instance): Now that GstBaseTransform is 'fixed' ... remove cruft from tests. Add debugging for coherence. 2008-09-01 13:23:03 +0000 Wim Taymans gst/selector/gstinputselector.c: Reuse the get_linked_pads for both source and sinkpads because they are the same. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_input_selector_init), (gst_input_selector_event), (gst_input_selector_query): Reuse the get_linked_pads for both source and sinkpads because they are the same. Implement a custum event handler and get the internally linked pad directly instead of relying on the default (slower) implementation. 2008-08-31 15:01:32 +0000 Sebastian Dröge ext/celt/gstceltdec.c: Correctly take the granulepos from upstream if possible and correctly handle the granulepos in... Original commit message from CVS: * ext/celt/gstceltdec.c: (celt_dec_chain_parse_data): Correctly take the granulepos from upstream if possible and correctly handle the granulepos in various calculations: the granulepos is the sample number of the _last_ sample in a frame, not the first. * ext/celt/gstceltenc.c: (gst_celt_enc_sinkevent), (gst_celt_enc_encode), (gst_celt_enc_chain), (gst_celt_enc_change_state): * ext/celt/gstceltenc.h: Handle non-zero start timestamps in the encoder and detect/handle stream discontinuities. Fixes bug #547075. 2008-08-31 12:20:33 +0000 Rov Juvano Add scaletempo plugin, which allows to scale the speed of audio without changing the pitch by handling seeks with a r... Original commit message from CVS: Patch by: Rov Juvano * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-scaletempo.xml: * examples/scaletempo/Makefile.am: * examples/scaletempo/demo-gui.c: (pop_status_bar), (status_bar_printf), (demo_gui_seek_bar_format), (update_position), (demo_gui_seek_bar_change), (demo_gui_do_change_rate), (demo_gui_do_set_rate), (demo_gui_do_rate_entered), (demo_gui_do_toggle_advanced), (demo_gui_do_toggle_disabled), (demo_gui_do_seek), (demo_gui_do_play), (demo_gui_do_pause), (demo_gui_do_play_pause), (demo_gui_do_open_file), (demo_gui_do_playlist_prev), (demo_gui_do_playlist_next), (demo_gui_do_about_dialog), (demo_gui_do_quit), (demo_gui_request_set_stride), (demo_gui_request_set_overlap), (demo_gui_request_set_search), (demo_gui_rate_changed), (demo_gui_playing_started), (demo_gui_playing_paused), (demo_gui_playing_ended), (demo_gui_player_errored), (demo_gui_stride_changed), (demo_gui_overlap_changed), (demo_gui_search_changed), (demo_gui_set_player_func), (demo_gui_set_playlist_func), (build_gvalue_array), (create_action), (demo_gui_show_func), (demo_gui_set_player), (demo_gui_set_playlist), (demo_gui_show), (demo_gui_get_property), (demo_gui_set_property), (demo_gui_init), (demo_gui_class_init), (demo_gui_get_type): * examples/scaletempo/demo-gui.h: * examples/scaletempo/demo-main.c: (handle_error_message), (handle_quit), (main): * examples/scaletempo/demo-player.c: (no_pipeline), (demo_player_event_listener), (demo_player_state_changed_cb), (demo_player_eos_cb), (demo_player_build_pipeline), (_set_rate), (demo_player_scale_rate_func), (demo_player_set_rate_func), (_set_state_and_wait), (demo_player_load_uri_func), (demo_player_play_func), (demo_player_pause_func), (_seek_to), (demo_player_seek_by_func), (demo_player_seek_to_func), (demo_player_get_position_func), (demo_player_get_duration_func), (demo_player_scale_rate), (demo_player_set_rate), (demo_player_load_uri), (demo_player_play), (demo_player_pause), (demo_player_seek_by), (demo_player_seek_to), (demo_player_get_position), (demo_player_get_duration), (demo_player_get_property), (demo_player_set_property), (demo_player_init), (demo_player_class_init), (demo_player_get_type): * examples/scaletempo/demo-player.h: * gst/scaletempo/Makefile.am: * gst/scaletempo/gstscaletempo.c: (best_overlap_offset_float), (best_overlap_offset_s16), (output_overlap_float), (output_overlap_s16), (fill_queue), (reinit_buffers), (gst_scaletempo_transform), (gst_scaletempo_transform_size), (gst_scaletempo_sink_event), (gst_scaletempo_set_caps), (gst_scaletempo_get_property), (gst_scaletempo_set_property), (gst_scaletempo_base_init), (gst_scaletempo_class_init), (gst_scaletempo_init): * gst/scaletempo/gstscaletempo.h: * gst/scaletempo/gstscaletempoplugin.c: (plugin_init): Add scaletempo plugin, which allows to scale the speed of audio without changing the pitch by handling seeks with a rate!=1.0. Integrate it into the docs and add the example application for it. Fixes bug #537700. 2008-08-30 20:22:01 +0000 David Schleef ext/dirac/gstdiracenc.cc: Fix some memleaks. Original commit message from CVS: * ext/dirac/gstdiracenc.cc: Fix some memleaks. 2008-08-30 06:30:42 +0000 David Schleef ext/dirac/gstdiracenc.cc: Fix EOS handling. Clean up at object disposal. Handle 4:2:2 and 4:4:4 video. Original commit message from CVS: * ext/dirac/gstdiracenc.cc: Fix EOS handling. Clean up at object disposal. Handle 4:2:2 and 4:4:4 video. 2008-08-29 14:05:25 +0000 Jan Schmidt ext/resindvd/resindvdbin.c: Fix compiler warning on Forte. Original commit message from CVS: * ext/resindvd/resindvdbin.c: Fix compiler warning on Forte. 2008-08-29 13:57:39 +0000 Jan Schmidt configure.ac: Commit FIONREAD check, needed for the dccp src. Original commit message from CVS: * configure.ac: Commit FIONREAD check, needed for the dccp src. 2008-08-29 12:16:27 +0000 Christian Schaller * ext/Makefile.am: * gst-plugins-bad.spec.in: update spec file to include latest plugins, add apexsrc diretory to disted files Original commit message from CVS: update spec file to include latest plugins, add apexsrc diretory to disted files 2008-08-29 11:36:41 +0000 Edward Hervey ext/faac/gstfaac.*: Add code for calculating proper timestamp/duration for the trailing encoded buffers that faac wil... Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_init), (gst_faac_sink_event), (gst_faac_chain), (gst_faac_change_state): * ext/faac/gstfaac.h: Add code for calculating proper timestamp/duration for the trailing encoded buffers that faac will output when receiving EOS. 2008-08-29 08:57:14 +0000 Sebastian Dröge configure.ac: Fix CFLAGS and LIBS for the apexsink. Original commit message from CVS: * configure.ac: Fix CFLAGS and LIBS for the apexsink. 2008-08-28 22:02:28 +0000 Ole André Vadla Ravnås sys/winks/ksvideohelpers.c (ks_video_media_type_free): Avoid leaking the KSDATARANGE member of each KsVideoMediaType. Original commit message from CVS: * sys/winks/ksvideohelpers.c (ks_video_media_type_free): Avoid leaking the KSDATARANGE member of each KsVideoMediaType. 2008-08-28 17:16:51 +0000 Jan Schmidt gst/dccp/: Fix compilation on Solaris by including filio.h as needed. Original commit message from CVS: * gst/dccp/gstdccp.c: * gst/dccp/gstdccpclientsrc.c: Fix compilation on Solaris by including filio.h as needed. * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: Fix compilation with Forte - apparently it hates concatenating a macro argument that starts with an underscore?? 2008-08-28 17:01:30 +0000 Jérémie Bernard Add apexsink for audio output to Apple AirPort Express Wireless devices. Fixes bug #542510. Original commit message from CVS: Patch by: Jérémie Bernard * configure.ac: * ext/apexsink/LGPL-3.0.txt: * ext/apexsink/Makefile.am: * ext/apexsink/gstapexplugin.c: (plugin_init): * ext/apexsink/gstapexraop.c: (g_strdel), (gst_apexraop_send), (gst_apexraop_recv), (gst_apexraop_new), (gst_apexraop_free), (gst_apexraop_set_host), (gst_apexraop_get_host), (gst_apexraop_set_port), (gst_apexraop_get_port), (gst_apexraop_set_useragent), (gst_apexraop_get_useragent), (gst_apexraop_connect), (gst_apexraop_get_jacktype), (gst_apexraop_get_jackstatus), (gst_apexraop_close), (gst_apexraop_set_volume), (gst_apexraop_write_bits), (gst_apexraop_write), (gst_apexraop_flush): * ext/apexsink/gstapexraop.h: * ext/apexsink/gstapexsink.c: (gst_apexsink_jackstatus_get_type), (gst_apexsink_jacktype_get_type), (gst_apexsink_interfaces_init), (gst_apexsink_implements_interface_init), (gst_apexsink_mixer_interface_init), (gst_apexsink_interface_supported), (gst_apexsink_mixer_list_tracks), (gst_apexsink_mixer_set_volume), (gst_apexsink_mixer_get_volume), (gst_apexsink_base_init), (gst_apexsink_class_init), (gst_apexsink_init), (gst_apexsink_set_property), (gst_apexsink_get_property), (gst_apexsink_finalise), (gst_apexsink_open), (gst_apexsink_prepare), (gst_apexsink_write), (gst_apexsink_unprepare), (gst_apexsink_delay), (gst_apexsink_reset), (gst_apexsink_close): * ext/apexsink/gstapexsink.h: Add apexsink for audio output to Apple AirPort Express Wireless devices. Fixes bug #542510. 2008-08-28 15:21:45 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Send EOS when the session object instructs us to. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_send_rtcp), (gst_rtp_session_event_send_rtp_sink): Send EOS when the session object instructs us to. * gst/rtpmanager/rtpsession.c: (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Make it possible for the session manager to instruct us to send EOS. We currently will EOS when the session is a sender and when the sender part goes EOS. This is not entirely correct behaviour because the session could still participate as a receiver. Fixes #549409. 2008-08-28 01:03:24 +0000 Michael Smith gst/aiffparse/aiffparse.c: Read size of chunks preceeding the audio data with the correct endianness. Fixes playback ... Original commit message from CVS: * gst/aiffparse/aiffparse.c: Read size of chunks preceeding the audio data with the correct endianness. Fixes playback of some files. Fixes #538500 2008-08-28 00:25:28 +0000 Michael Smith Add an AIFF parsing element, heavily based on wavparse. Original commit message from CVS: * configure.ac: * gst/aiffparse/Makefile.am: * gst/aiffparse/aiffparse.c: * gst/aiffparse/aiffparse.h: Add an AIFF parsing element, heavily based on wavparse. 2008-08-27 21:33:07 +0000 Ole André Vadla Ravnås * ChangeLog: * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideosrc.c: sys/winks/gstksvideodevice.c (gst_ks_video_device_class_init, gst_ks_video_device_set_state): Original commit message from CVS: * sys/winks/gstksvideodevice.c (gst_ks_video_device_class_init, gst_ks_video_device_set_state): Don't set the pin state to KSSTATE_RUN from the streaming thread. Skip KSSTATE_ACQUIRE when changing pin state downwards. Be nice and specify G_PARAM_STATIC_STRINGS. Remove unused finalize method. * sys/winks/gstksvideosrc.c (DEFAULT_ENABLE_QUIRKS, PROP_ENABLE_QUIRKS, enable_quirks, gst_ks_video_src_class_init, gst_ks_video_src_init, gst_ks_video_src_finalize, gst_ks_video_src_get_property, gst_ks_video_src_set_property, gst_ks_video_src_reset, gst_ks_video_src_apply_driver_quirks, gst_ks_video_src_change_state, gst_ks_video_src_set_caps): First driver quirk: work around Logitech's hostile driver software to improve stability and performance. See comments for details. Provide a property to disable driver quirks (enabled by default). Be nice and specify G_PARAM_STATIC_STRINGS. Remove unused dispose method. Tweak include order. 2008-08-27 15:45:16 +0000 Wim Taymans gst/selector/gstinputselector.c: Implement the LATENCY query in a better way by taking the latency of all sinkpads an... Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_input_selector_init), (gst_input_selector_query): Implement the LATENCY query in a better way by taking the latency of all sinkpads and taking the min/max instead of just taking a random pad. 2008-08-26 12:33:16 +0000 Sebastian Dröge gst/deinterlace2/tvtime/tomsmocomp/: Unroll the loop to handle two bytes at once. This should give a small speedup an... Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: Unroll the loop to handle two bytes at once. This should give a small speedup and makes it possible to handle chroma and luma different which is needed later. 2008-08-26 11:18:38 +0000 Edward Hervey gst/dccp/gstdccpserversink.*: Don't put globals only used by one '.c' file in a header ! Original commit message from CVS: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversink.h: Don't put globals only used by one '.c' file in a header ! Declare it as static, fixes build on macosx. 2008-08-26 11:13:24 +0000 Edward Hervey gst/dccp/gstdccp.c: Whoops, that was one fix too much :) Original commit message from CVS: * gst/dccp/gstdccp.c: (gst_dccp_send_buffer): Whoops, that was one fix too much :) 2008-08-26 11:08:34 +0000 Edward Hervey gst/dccp/gstdccp.c: size_t's size varies by platform/architecture. Use glib convenience macro instead. Fixes build on... Original commit message from CVS: * gst/dccp/gstdccp.c: (gst_dccp_read_buffer), (gst_dccp_send_buffer), (gst_dccp_set_sock_windowsize): size_t's size varies by platform/architecture. Use glib convenience macro instead. Fixes build on macosx. Remove ending '\n' in debug statements. 2008-08-26 11:01:43 +0000 Edward Hervey gst/pcapparse/gstpcapparse.c: Remove unused code and fix includes. Original commit message from CVS: * gst/pcapparse/gstpcapparse.c: (gst_pcap_parse_class_init): Remove unused code and fix includes. 2008-08-25 14:37:45 +0000 Sebastian Dröge gst/deinterlace2/: First part of the C implementation of the tomsmocomp deinterlacing algorithm. This only supports s... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_class_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (gst_deinterlace_method_tomsmocomp_class_init): * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: First part of the C implementation of the tomsmocomp deinterlacing algorithm. This only supports search-effort=0 currently, is painfully slow and needs some cleanup later when all search-effort settings are implemented in C. 2008-08-24 22:05:48 +0000 Ole André Vadla Ravnås New plugin for low-latency video capture on Windows (#519935). Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/winks/Makefile.am: * sys/winks/gstksclock.c: * sys/winks/gstksclock.h: * sys/winks/gstksvideodevice.c: * sys/winks/gstksvideodevice.h: * sys/winks/gstksvideosrc.c: * sys/winks/gstksvideosrc.h: * sys/winks/kshelpers.c: * sys/winks/kshelpers.h: * sys/winks/ksvideohelpers.c: * sys/winks/ksvideohelpers.h: New plugin for low-latency video capture on Windows (#519935). Uses Kernel Streaming, the lowest level API for doing video capture on Windows (more or less just raw ioctls). 2008-08-24 16:55:48 +0000 Ole André Vadla Ravnås Added documentation blobs. Thanks to Stefan for noticing! Original commit message from CVS: * gst/pcapparse/gstpcapparse.c: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.c: Added documentation blobs. Thanks to Stefan for noticing! 2008-08-24 13:53:29 +0000 Ole André Vadla Ravnås New plugin: pcapparse (#520899). Original commit message from CVS: * configure.ac: * gst/pcapparse/Makefile.am: * gst/pcapparse/gstpcapparse.c: * gst/pcapparse/gstpcapparse.h: New plugin: pcapparse (#520899). 2008-08-24 13:23:44 +0000 Haakon Sporsheim New plugin: winscreencap (#463941). Original commit message from CVS: patch by: Haakon Sporsheim * configure.ac: * sys/Makefile.am: * sys/winscreencap/Makefile.am: * sys/winscreencap/gstdx9screencapsrc.c: * sys/winscreencap/gstdx9screencapsrc.h: * sys/winscreencap/gstgdiscreencapsrc.c: * sys/winscreencap/gstgdiscreencapsrc.h: * sys/winscreencap/gstwinscreencap.c: * sys/winscreencap/gstwinscreencap.h: New plugin: winscreencap (#463941). 2008-08-23 00:01:39 +0000 Michael Smith sys/dshowdecwrapper/gstdshowaudiodec.c: Flip mpeg1/mpeg2 arrays for mpeg audio. Detect which type the audio is correc... Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.c: Flip mpeg1/mpeg2 arrays for mpeg audio. Detect which type the audio is correctly, instead of backwards. No functional changes, since this mistake was completely self-consistent. 2008-08-22 06:27:57 +0000 Stefan Kost docs/plugins/gst-plugins-bad-plugins-docs.sgml: Add, but commented out xml/element-dc1394.xml. Its documented, but Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: Add, but commented out xml/element-dc1394.xml. Its documented, but I can't get it to be build. * ext/celt/gstceltdec.c: * ext/celt/gstceltenc.c: Fix doc warnings and reformat the doc block. 2008-08-21 13:22:38 +0000 Leandro Melo de Sales Add dccp plugin. Fixes #542390. Original commit message from CVS: patch by: Leandro Melo de Sales * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-dccp.xml: * gst/dccp/Makefile.am: * gst/dccp/gstdccp.c: * gst/dccp/gstdccp.h: * gst/dccp/gstdccpclientsink.c: * gst/dccp/gstdccpclientsink.h: * gst/dccp/gstdccpclientsrc.c: * gst/dccp/gstdccpclientsrc.h: * gst/dccp/gstdccpplugin.c: * gst/dccp/gstdccpserversink.c: * gst/dccp/gstdccpserversink.h: * gst/dccp/gstdccpserversrc.c: * gst/dccp/gstdccpserversrc.h: * tests/icles/dccp/README: * tests/icles/dccp/call/README: * tests/icles/dccp/call/DCCPClient.c: * tests/icles/dccp/call/DCCPServer.c: * tests/icles/dccp/file/DCCPClientSaveFile.c: * tests/icles/dccp/file/DCCPServerSendFile.c: * tests/icles/dccp/mic/DCCPClientPlayMic.c: * tests/icles/dccp/mic/DCCPServerMic.c: * tests/icles/dccp/mp3/DCCPClientPlayMP3.c: * tests/icles/dccp/mp3/DCCPServerSendMP3.c: * tests/icles/dccp/mp3Speex/DCCPClientPlaySpeexMP3.c: * tests/icles/dccp/mp3Speex/DCCPServerSendSpeexMP3.c: * tests/icles/dccp/mp3Stream/DCCPClientPlayMP3Stream.c: * tests/icles/dccp/mp3Stream/DCCPServerSendMP3Stream.c: Add dccp plugin. Fixes #542390. 2008-08-20 22:24:28 +0000 Tim-Philipp Müller configure.ac: Remove bits that presumably weren't supposed to be committed. Original commit message from CVS: * configure.ac: Remove bits that presumably weren't supposed to be committed. 2008-08-20 21:44:22 +0000 Michael Smith Add new windows ACM encoder wrapper. Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/acmenc/Makefile.am: * sys/acmenc/acmenc.c: Add new windows ACM encoder wrapper. 2008-08-18 11:13:07 +0000 Michael Krufky sys/dvb/: Add ATSC tunning and channels.conf parsing support. Original commit message from CVS: patch by: Michael Krufky * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: Add ATSC tunning and channels.conf parsing support. Fixes #537455 2008-08-13 21:58:08 +0000 Michael Smith sys/: Initialise COM with default flags. Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.c: * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowvideodec.c: * sys/dshowdecwrapper/gstdshowvideodec.h: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: Initialise COM with default flags. Only deinitialise if the initialisation was successful. 2008-08-13 14:31:02 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Reset rtp timestamp interpollation when we detect a gap when the clock_base changed. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain), (new_ssrc_pad_found): Reset rtp timestamp interpollation when we detect a gap when the clock_base changed. Don't try to adjust the ts-offset when it's too big (> 3seconds) * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_set_ssrc): * gst/rtpmanager/gstrtpsession.h: Add method to set session SSRC. * gst/rtpmanager/rtpsession.c: (check_collision), (rtp_session_set_internal_ssrc), (rtp_session_get_internal_ssrc), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Added debugging for the collision checks. Add method to change the internal SSRC of the session. * gst/rtpmanager/rtpsource.c: (rtp_source_process_rtp): Reset the clock base when we detect large jumps in the seqnums. 2008-08-12 16:13:15 +0000 Mark Nauwelaerts ext/x264/gstx264enc.*: Do not deal with duplicated input (timestamps). If needed, a generic element can do so. Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_reset), (gst_x264_enc_chain), (gst_x264_enc_encode_frame): * ext/x264/gstx264enc.h: Do not deal with duplicated input (timestamps). If needed, a generic element can do so. Do not manipulate input timestamps on the way out, since that shifts the timeline and A/V sync. 2008-08-12 15:41:48 +0000 Mark Nauwelaerts docs/plugins/gst-plugins-bad-plugins.args: Integrate new properties into documentation. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: Integrate new properties into documentation. * ext/x264/gstx264enc.c: (gst_x264_enc_class_init), (gst_x264_enc_init), (gst_x264_enc_init_encoder), (gst_x264_enc_set_property), (gst_x264_enc_get_property): Fix up API prior to eventual plugin move. API: GstX264Enc:pass (provides more options, and changed to enum) 2008-08-12 14:31:57 +0000 Mark Nauwelaerts Update and add documentation for mplex. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-mplex.xml: * ext/mplex/gstmplex.cc: Update and add documentation for mplex. * ext/mpeg2enc/gstmpeg2enc.cc: Documentation update. 2008-08-12 13:08:39 +0000 Mark Nauwelaerts Add documentation and unit test for x264enc. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/x264/gstx264enc.c: * tests/check/Makefile.am: * tests/check/elements/x264enc.c: (setup_x264enc), (cleanup_x264enc), (GST_START_TEST), (x264enc_suite), (main): Add documentation and unit test for x264enc. 2008-08-11 17:24:58 +0000 Mark Nauwelaerts ext/x264/gstx264enc.c: Allocate some buffers in more adaptive and economical fashion. Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_init), (gst_x264_enc_header_buf), (gst_x264_enc_encode_frame): Allocate some buffers in more adaptive and economical fashion. 2008-08-11 15:16:14 +0000 Mark Nauwelaerts configure.ac: Check for sufficiently up-to-date x264 API. Original commit message from CVS: * configure.ac: Check for sufficiently up-to-date x264 API. * ext/x264/gstx264enc.c: (gst_x264_enc_pass_get_type), (gst_x264_enc_base_init), (gst_x264_enc_class_init), (gst_x264_enc_init), (gst_x264_enc_init_encoder), (gst_x264_enc_set_property), (gst_x264_enc_get_property): * ext/x264/gstx264enc.h: Expose some more parameters of the x264 encoder as properties. 2008-08-11 07:20:15 +0000 Stefan Kost gst/rtpmanager/gstrtpbin.c: Print the pad-name in debug log. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: Print the pad-name in debug log. * sys/dshowsrcwrapper/gstdshowaudiosrc.c: * sys/dshowsrcwrapper/gstdshowvideosrc.c: Use "-" instead of "_" in property names. Can we call them just "device" like everywhere else? 2008-08-08 15:07:12 +0000 Mark Nauwelaerts ext/x264/gstx264enc.c: Coding style and layout; re-order some functions in more typical and natural flow. Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_log_callback), (gst_x264_enc_finalize), (gst_x264_enc_header_buf), (gst_x264_enc_set_src_caps), (gst_x264_enc_sink_set_caps), (gst_x264_enc_flush_frames): Coding style and layout; re-order some functions in more typical and natural flow. 2008-08-08 14:19:16 +0000 Mark Nauwelaerts ext/x264/: Use GQueue in stead of custom queue code. Original commit message from CVS: * ext/x264/Makefile.am: * ext/x264/gstx264enc.c: (gst_x264_enc_set_src_caps), (gst_x264_enc_sink_set_caps), (gst_x264_enc_init), (gst_x264_enc_reset), (gst_x264_enc_finalize), (gst_x264_enc_flush_frames), (gst_x264_enc_sink_event), (gst_x264_enc_chain), (gst_x264_enc_encode_frame), (gst_x264_enc_change_state), (gst_x264_enc_set_property): * ext/x264/gstx264enc.h: Use GQueue in stead of custom queue code. Factorize flushing out encoder delayed frames. Factorize initialization and state change reset. 2008-08-08 10:56:02 +0000 Mark Nauwelaerts Use configure-generated _stdint.h. Original commit message from CVS: * ext/x264/gstx264enc.h: * sys/fbdev/gstfbdevsink.c: Use configure-generated _stdint.h. 2008-08-08 10:13:36 +0000 Mark Nauwelaerts ext/x264/: Use video format library and GST_WRITE_*_BE macros where applicable. Original commit message from CVS: * ext/x264/Makefile.am: * ext/x264/gstx264enc.c: (gst_x264_enc_header_buf), (gst_x264_enc_sink_set_caps), (gst_x264_enc_base_init), (gst_x264_enc_class_init), (gst_x264_enc_log_callback), (gst_x264_enc_init), (gst_x264_enc_init_encoder), (gst_x264_enc_finalize), (gst_x264_enc_chain), (gst_x264_enc_encode_frame), (plugin_init): * ext/x264/gstx264enc.h: Use video format library and GST_WRITE_*_BE macros where applicable. Use finalize in stead of dispose. Set up debug category and log callback. 2008-08-07 16:20:30 +0000 Frederic Crozat Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822). Original commit message from CVS: Patch by: Frederic Crozat * ext/sndfile/gstsf.c: (plugin_init): * sys/dvb/gstdvbsrc.c: (gst_dvbsrc_plugin_init): * sys/oss4/oss4-audio.c: (plugin_init): Make sure gettext returns translations in UTF-8 encoding rather than in the current locale encoding (#546822). 2008-08-07 14:34:03 +0000 Sebastian Dröge ext/twolame/gsttwolame.*: Allow raw float samples as input for encoding. Original commit message from CVS: * ext/twolame/gsttwolame.c: (gst_two_lame_sink_setcaps), (gst_two_lame_chain): * ext/twolame/gsttwolame.h: Allow raw float samples as input for encoding. 2008-08-07 13:15:21 +0000 Stefan Kost ext/jack/gstjackaudiosrc.c: Try committing this once again. Now properly renamed. Original commit message from CVS: * ext/jack/gstjackaudiosrc.c: Try committing this once again. Now properly renamed. 2008-08-07 09:09:44 +0000 Stefan Kost docs/plugins/: docs/plugins/inspect/plugin-jack.xml Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-jack.xml Add new element to docs. * ext/jack/gstjack.h Add missing file. * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackaudiosrc.h: Rename jackaudiosrc to jack_audio_src. 2008-08-07 08:47:40 +0000 Tristan Matthews ext/jack/: Add a jackaudiosrc. Refactor sink slightly for better code reuse. Original commit message from CVS: patch by: Tristan Matthews * ext/jack/Makefile.am: * ext/jack/gstjack.c: * ext/jack/gstjackaudioclient.c: * ext/jack/gstjackaudiosink.c: * ext/jack/gstjackaudiosink.h: * ext/jack/gstjackaudiosrc.c: * ext/jack/gstjackaudiosrc.h: * ext/jack/gstjackringbuffer.h: Add a jackaudiosrc. Refactor sink slightly for better code reuse. Fixes #545197. 2008-08-06 15:49:43 +0000 Sebastian Dröge docs/plugins/: Add twolame and celt plugins to the docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-celt.xml: * docs/plugins/inspect/plugin-twolame.xml: Add twolame and celt plugins to the docs. 2008-08-05 09:42:53 +0000 Olivier Crete gst/rtpmanager/gstrtpjitterbuffer.c: Make the buffer metadata writable before inserting it in the jitterbuffer becaus... Original commit message from CVS: Based on patch by: Olivier Crete * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Make the buffer metadata writable before inserting it in the jitterbuffer because the jitterbuffer will modify the timestamps. * gst/rtpmanager/rtpjitterbuffer.c: Update method comment about requiring writable metadata on buffers. * gst/rtpmanager/rtpsession.c: (rtp_session_process_sr), (rtp_session_process_rtcp): Make the RTCP buffer metadata writable because we want to modify the metadata. Fixes #546312. 2008-08-05 09:05:35 +0000 Wim Taymans gst/selector/gstinputselector.c: Move the select-all logic into the activation of the currently selected pad. We want... Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_bufferalloc), (gst_selector_pad_chain), (gst_input_selector_getcaps), (gst_input_selector_activate_sinkpad): Move the select-all logic into the activation of the currently selected pad. We want to remember the last pad with activity in select-all mode. Fix the getcaps function, we can produce the union of the upstream caps in select-all mode, not the intersection like proxy_getcaps() does. 2008-08-05 09:00:50 +0000 Håvard Graff gst/rtpmanager/gstrtpjitterbuffer.c: Fix debug by logging the right seqnum. Original commit message from CVS: Patch by: Håvard Graff * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain): Fix debug by logging the right seqnum. 2008-08-05 08:58:27 +0000 Olivier Crete gst/rtpmanager/gstrtpbin.c: Release lock before emitting the request-pt-map signal. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpbin.c: (get_pt_map): Release lock before emitting the request-pt-map signal. Fixes #543480. 2008-08-02 18:48:17 +0000 Sebastian Dröge gst/deinterlace2/: Use oil_memcpy() instead of memcpy() as it's faster for the sizes that are usually used here. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_simple_method_interpolate_scanline), (gst_deinterlace_simple_method_copy_scanline), (gst_deinterlace_simple_method_deinterlace_frame): * gst/deinterlace2/tvtime/greedy.c: (deinterlace_frame_di_greedy): * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh): * gst/deinterlace2/tvtime/scalerbob.c: (deinterlace_scanline_scaler_bob): * gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy): * gst/deinterlace2/tvtime/weave.c: (deinterlace_scanline_weave), (copy_scanline): * gst/deinterlace2/tvtime/weavebff.c: (deinterlace_scanline_weave), (copy_scanline): * gst/deinterlace2/tvtime/weavetff.c: (deinterlace_scanline_weave), (copy_scanline): Use oil_memcpy() instead of memcpy() as it's faster for the sizes that are usually used here. 2008-08-02 18:36:11 +0000 Sebastian Dröge gst/deinterlace2/: Add the remaining tvtime deinterlacing methods and fix the deinterlace_frame() implementation of G... Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_simple_method_deinterlace_frame), (gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/linear.c: (deinterlace_scanline_linear_c), (deinterlace_scanline_linear_mmx), (deinterlace_scanline_linear_mmxext), (gst_deinterlace_method_linear_class_init), (gst_deinterlace_method_linear_init): * gst/deinterlace2/tvtime/linearblend.c: (deinterlace_scanline_linear_blend_c), (deinterlace_scanline_linear_blend2_c), (deinterlace_scanline_linear_blend_mmx), (deinterlace_scanline_linear_blend2_mmx), (gst_deinterlace_method_linear_blend_class_init), (gst_deinterlace_method_linear_blend_init): * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/scalerbob.c: (deinterlace_scanline_scaler_bob), (gst_deinterlace_method_scaler_bob_class_init), (gst_deinterlace_method_scaler_bob_init): * gst/deinterlace2/tvtime/weave.c: (deinterlace_scanline_weave), (copy_scanline), (gst_deinterlace_method_weave_class_init), (gst_deinterlace_method_weave_init): * gst/deinterlace2/tvtime/weavebff.c: (deinterlace_scanline_weave), (copy_scanline), (gst_deinterlace_method_weave_bff_class_init), (gst_deinterlace_method_weave_bff_init): * gst/deinterlace2/tvtime/weavetff.c: (deinterlace_scanline_weave), (copy_scanline), (gst_deinterlace_method_weave_tff_class_init), (gst_deinterlace_method_weave_tff_init): Add the remaining tvtime deinterlacing methods and fix the deinterlace_frame() implementation of GstDeinterlaceSimpleMethod. 2008-08-02 18:30:56 +0000 Sebastian Dröge gst/deinterlace2/tvtime/vfir.c: Implement the VFIR deinterlacing method as simple method. Original commit message from CVS: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c), (deinterlace_line_mmx), (gst_deinterlace_method_vfir_class_init): Implement the VFIR deinterlacing method as simple method. 2008-08-02 18:18:54 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.*: Add a GstDeinterlaceSimpleMethod subclass of GstDeinterlaceMethod that can be use... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_simple_method_interpolate_scanline), (gst_deinterlace_simple_method_copy_scanline), (gst_deinterlace_simple_method_deinterlace_frame), (gst_deinterlace_simple_method_class_init), (gst_deinterlace_simple_method_init): * gst/deinterlace2/gstdeinterlace2.h: Add a GstDeinterlaceSimpleMethod subclass of GstDeinterlaceMethod that can be used by simple deinterlacing methods. They only have to provide a function for interpolating a scanline or copying a scanline. 2008-08-02 18:15:49 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.c: Respect the latency of the deinterlacing algorithm for the timestamps of every bu... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_chain): Respect the latency of the deinterlacing algorithm for the timestamps of every buffer. 2008-08-02 18:13:20 +0000 Sebastian Dröge gst/deinterlace2/tvtime/: Add the MMX registers to the clobbered registers only if __MMX__ is defined. Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: Add the MMX registers to the clobbered registers only if __MMX__ is defined. 2008-08-02 18:09:56 +0000 Sebastian Dröge gst/deinterlace2/: Enable tomsmocomp again as the C port will be ready for the next release. Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init): Enable tomsmocomp again as the C port will be ready for the next release. 2008-08-02 18:02:44 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.c: Don't use proxy_getcaps() but implement our own getcaps() function that doubles/h... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_init), (gst_greatest_common_divisor), (gst_fraction_double), (gst_deinterlace2_getcaps), (gst_deinterlace2_setcaps): Don't use proxy_getcaps() but implement our own getcaps() function that doubles/halfs the framerate if all fields should be sent out. 2008-08-02 17:39:13 +0000 Sebastian Dröge Add TwoLAME MP2 encoding element, based on the LAME element. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/twolame/Makefile.am: * ext/twolame/gsttwolame.c: (gst_two_lame_mode_get_type), (gst_two_lame_padding_get_type), (gst_two_lame_emphasis_get_type), (gst_two_lame_release_memory), (gst_two_lame_finalize), (gst_two_lame_base_init), (gst_two_lame_class_init), (gst_two_lame_src_setcaps), (gst_two_lame_sink_setcaps), (gst_two_lame_init), (gst_two_lame_set_property), (gst_two_lame_get_property), (gst_two_lame_sink_event), (gst_two_lame_chain), (gst_two_lame_setup), (gst_two_lame_change_state), (gst_two_lame_get_default_settings), (plugin_init): * ext/twolame/gsttwolame.h: Add TwoLAME MP2 encoding element, based on the LAME element. 2008-08-02 17:29:44 +0000 Sebastian Dröge Add CELT encoder and decoder elements based on the Speex elements. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/celt/Makefile.am: * ext/celt/gstcelt.c: (plugin_init): * ext/celt/gstceltdec.c: (gst_celt_dec_base_init), (gst_celt_dec_class_init), (gst_celt_dec_reset), (gst_celt_dec_init), (celt_dec_convert), (celt_get_sink_query_types), (celt_dec_sink_query), (celt_get_src_query_types), (celt_dec_src_query), (celt_dec_src_event), (celt_dec_sink_event), (celt_dec_chain_parse_header), (celt_dec_chain_parse_comments), (celt_dec_chain_parse_data), (celt_dec_chain), (celt_dec_change_state): * ext/celt/gstceltdec.h: * ext/celt/gstceltenc.c: (gst_celt_enc_setup_interfaces), (gst_celt_enc_base_init), (gst_celt_enc_class_init), (gst_celt_enc_finalize), (gst_celt_enc_sink_setcaps), (gst_celt_enc_sink_getcaps), (gst_celt_enc_convert_src), (gst_celt_enc_convert_sink), (gst_celt_enc_get_latency), (gst_celt_enc_get_query_types), (gst_celt_enc_src_query), (gst_celt_enc_sink_query), (gst_celt_enc_init), (gst_celt_enc_create_metadata_buffer), (gst_celt_enc_setup), (gst_celt_enc_buffer_from_data), (gst_celt_enc_push_buffer), (gst_celt_enc_set_header_on_caps), (gst_celt_enc_sinkevent), (gst_celt_enc_chain), (gst_celt_enc_get_property), (gst_celt_enc_set_property), (gst_celt_enc_change_state): * ext/celt/gstceltenc.h: Add CELT encoder and decoder elements based on the Speex elements. 2008-08-02 17:16:39 +0000 Tal Shalif ext/sdl/sdlvideosink.c: Use g_setenv() and g_unsetenv() instead of setenv() to fix compilation with mingw. Fixes bug ... Original commit message from CVS: Patch by: Tal Shalif * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_initsdl): Use g_setenv() and g_unsetenv() instead of setenv() to fix compilation with mingw. Fixes bug #545247. 2008-08-01 23:30:29 +0000 Jan Schmidt configure.ac: Back to development -> 0.10.8.1 Original commit message from CVS: * configure.ac: Back to development -> 0.10.8.1 2008-08-01 15:39:44 +0000 Christian Schaller * gst-plugins-bad.spec.in: remove moved plugins from spec file Original commit message from CVS: remove moved plugins from spec file === release 0.10.8 === 2008-07-31 22:15:17 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mythtv.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst-plugins-bad.doap: * win32/common/config.h: Release 0.10.8 Original commit message from CVS: Release 0.10.8 2008-07-31 22:03:26 +0000 Jan Schmidt * common: * po/af.po: * po/az.po: * po/bg.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/it.po: * po/ky.po: * po/lt.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-07-24 23:53:56 +0000 Jan Schmidt configure.ac: 0.10.7.3 pre-release Original commit message from CVS: * configure.ac: 0.10.7.3 pre-release * po/LINGUAS: * po/id.po: Add Indonesian translation. 2008-07-24 00:32:37 +0000 Michael Smith gst/festival/gstfestival.c: Guard unistd.h with HAVE_UNISTD_H Original commit message from CVS: * gst/festival/gstfestival.c: Guard unistd.h with HAVE_UNISTD_H * gst/modplug/libmodplug/load_it.cpp: * gst/modplug/libmodplug/sndfile.cpp: * gst/modplug/libmodplug/sndfile.h: * gst/modplug/libmodplug/stdafx.h: Support for compiling with MSVC: use _MSC_VER for detecting MSVC instead of MSC_VER. Make CanPackSamples take the type it's passed. Change scope of a variable in load_it.cpp to MSVC's scoping rules. * gst/sdp/gstsdpdemux.c: Guard unistd.h with HAVE_UNISTD_H Fixes #544457. 2008-07-22 06:27:44 +0000 Stefan Kost ext/timidity/gsttimidity.c: Fix compiler warning. Fixes #544050. Original commit message from CVS: * ext/timidity/gsttimidity.c: Fix compiler warning. Fixes #544050. 2008-07-21 21:12:25 +0000 Jan Schmidt configure.ac: Don't check for nav_print.h any more - it should be included in the libdvdnav development package if li... Original commit message from CVS: * configure.ac: Don't check for nav_print.h any more - it should be included in the libdvdnav development package if libdvdnav headers depend on it. Fixes: #543846 2008-07-21 16:03:11 +0000 Sebastian Dröge Link the ladspa plugin with -ldl. It's needed for dlopen() and friends for loading the ladspa plugins and previously ... Original commit message from CVS: * configure.ac: * ext/ladspa/Makefile.am: Link the ladspa plugin with -ldl. It's needed for dlopen() and friends for loading the ladspa plugins and previously was linked in by gmodule. Fixes bug #543848. 2008-07-21 10:16:51 +0000 Sebastian Dröge gst/modplug/libmodplug/Makefile.am: Use GST_CXXFLAGS instead of GST_CFLAGS for CXXFLAGS. GST_CFLAGS can contain compi... Original commit message from CVS: * gst/modplug/libmodplug/Makefile.am: Use GST_CXXFLAGS instead of GST_CFLAGS for CXXFLAGS. GST_CFLAGS can contain compiler parameters that are invalid for C++. Fixes bug #543860. 2008-07-21 10:15:18 +0000 Sebastian Dröge ext/resindvd/Makefile.am: Dist missing header files. Fixes bug #543861. Original commit message from CVS: * ext/resindvd/Makefile.am: Dist missing header files. Fixes bug #543861. 2008-07-19 14:12:59 +0000 Jan Schmidt configure.ac: 0.10.7.2 pre-release Original commit message from CVS: * configure.ac: 0.10.7.2 pre-release 2008-07-19 14:02:50 +0000 Jan Schmidt ext/Makefile.am: Dist and recurse into resindvd subdir Original commit message from CVS: * ext/Makefile.am: Dist and recurse into resindvd subdir 2008-07-19 13:43:04 +0000 Jan Schmidt configure.ac: Remove interleave and replaygain configure.ac pieces too Original commit message from CVS: * configure.ac: Remove interleave and replaygain configure.ac pieces too 2008-07-19 13:29:22 +0000 Jan Schmidt po/: Add new lithunian translation, and add french to the LINGUAS file. Original commit message from CVS: * po/LINGUAS: * po/lt.po: Add new lithunian translation, and add french to the LINGUAS file. 2008-07-19 00:58:49 +0000 Jan Schmidt Remove interleave and replaygain plugins that have moved to -good Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-replaygain.xml: * gst/interleave/Makefile.am: * gst/interleave/deinterleave.c: * gst/interleave/deinterleave.h: * gst/interleave/interleave.c: * gst/interleave/interleave.h: * gst/interleave/plugin.c: * gst/interleave/plugin.h: * gst/replaygain/Makefile.am: * gst/replaygain/gstrganalysis.c: * gst/replaygain/gstrganalysis.h: * gst/replaygain/gstrglimiter.c: * gst/replaygain/gstrglimiter.h: * gst/replaygain/gstrgvolume.c: * gst/replaygain/gstrgvolume.h: * gst/replaygain/replaygain.c: * gst/replaygain/replaygain.h: * gst/replaygain/rganalysis.c: * gst/replaygain/rganalysis.h: * tests/check/Makefile.am: * tests/check/elements/deinterleave.c: * tests/check/elements/interleave.c: * tests/check/elements/rganalysis.c: * tests/check/elements/rglimiter.c: * tests/check/elements/rgvolume.c: Remove interleave and replaygain plugins that have moved to -good 2008-07-18 08:34:06 +0000 Sebastian Dröge Disable the tomsmocomp algorithm for this release as it's buggy and has no C implementation yet. Original commit message from CVS: * configure.ac: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init), (gst_deinterlace2_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (gst_deinterlace_method_greedy_l_class_init): * gst/deinterlace2/tvtime/greedyh.c: (gst_deinterlace_method_greedy_h_class_init): * gst/deinterlace2/tvtime/vfir.c: (gst_deinterlace_method_vfir_class_init): Disable the tomsmocomp algorithm for this release as it's buggy and has no C implementation yet. Build the deinterlace2 plugin on all architectures but still mark it as experimental. Build the x86 inline assembly only if GCC inline assembly is supported and only on x86 or amd64. Fixes bug #543286. 2008-07-16 14:15:39 +0000 Jan Schmidt gst/real/gstrealvideodec.c: Add some casts to fix the build on Forte Original commit message from CVS: * gst/real/gstrealvideodec.c: (open_library): Add some casts to fix the build on Forte 2008-07-14 14:13:54 +0000 Edward Hervey gst/deinterlace2/tvtime/: Fix build on x86_64 Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (gst_deinterlace_method_greedy_l_class_init): * gst/deinterlace2/tvtime/greedyh.c: (gst_deinterlace_method_greedy_h_class_init): * gst/deinterlace2/tvtime/vfir.c: (gst_deinterlace_method_vfir_class_init): Fix build on x86_64 2008-07-14 07:50:01 +0000 Jan Schmidt ext/resindvd/gstmpegdemux.c: Remove whitespace line. Original commit message from CVS: * ext/resindvd/gstmpegdemux.c: Remove whitespace line. * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: Make it so that audio/video pads aren't added to the bin until after data flow starts. * ext/resindvd/resin-play: Move video buffer queue outside resindvdbin * ext/resindvd/resindvdsrc.c: Check that the nav_clock_id didn't already get unscheduled. * gst/dvdspu/gstdvdspu.c: Remove assert that sometimes triggers erroneously. 2008-07-13 10:56:45 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedyh.asm: Always use the C implementation if width is not a multiple of 4. The assembly op... Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: Always use the C implementation if width is not a multiple of 4. The assembly optimized version only handle this and calling the C implementation for the remaining part doesn't work because it needs previous calculations. 2008-07-13 10:52:03 +0000 Sebastian Dröge gst/deinterlace2/tvtime/: Some cleanup, use 3DNOW instead of TDNOW in macros. Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: * gst/deinterlace2/tvtime/greedyhmacros.h: Some cleanup, use 3DNOW instead of TDNOW in macros. * gst/deinterlace2/tvtime/tomsmocomp.c: (gst_deinterlace_method_tomsmocomp_class_init): * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: The SSE method in fact only needs MMXEXT, declare it as such. 2008-07-11 14:06:08 +0000 Jan Schmidt docs/plugins/.cvsignore: Ignore *-undeclared.txt Original commit message from CVS: * docs/plugins/.cvsignore: Ignore *-undeclared.txt * ext/resindvd/rsnaudiomunge.c: Turn g_print's into debug statements. * ext/resindvd/resin-play: * ext/resindvd/Makefile.am: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: * ext/resindvd/rsnparsetter.c: * ext/resindvd/rsnparsetter.h: * ext/resindvd/rsnwrappedbuffer.c: * ext/resindvd/rsnwrappedbuffer.h: Add a bloated implementation of a really simple idea: Replace the pixel-aspect-ratio in the output video with a prescribed one when necessary. There must be an easier way. Split the dvdspu out of the resindvdbin and put out the subpicture stream on the subpicture pad. * ext/resindvd/gstmpegdemux.c: Send video-aspect events down the pipe from the demuxer. * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: Handle timed-stills somewhat using g_cond_timed_wait, with a FIXME to make it use clock-waiting later. * ext/resindvd/rsnbasesrc.c: Don't overwrite the last_stop in the basesrc segment after a seamless seek. 2008-07-11 13:54:52 +0000 Jan Schmidt * docs/plugins/.gitignore: Commit file that moap seems to have missed: Ignore *-undeclared.txt Original commit message from CVS: Commit file that moap seems to have missed: Ignore *-undeclared.txt 2008-07-10 21:06:03 +0000 Stefan Kost Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipe... Original commit message from CVS: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-overrides.txt: * docs/plugins/gst-plugins-base-plugins-sections.txt: * docs/plugins/gst-plugins-base-plugins.args: * docs/plugins/gst-plugins-base-plugins.hierarchy: * docs/plugins/gst-plugins-base-plugins.interfaces: * docs/plugins/gst-plugins-base-plugins.prerequisites: * docs/plugins/gst-plugins-base-plugins.signals: * docs/plugins/inspect/plugin-adder.xml: * docs/plugins/inspect/plugin-alsa.xml: * docs/plugins/inspect/plugin-audioconvert.xml: * docs/plugins/inspect/plugin-audiorate.xml: * docs/plugins/inspect/plugin-audioresample.xml: * docs/plugins/inspect/plugin-audiotestsrc.xml: * docs/plugins/inspect/plugin-cdparanoia.xml: * docs/plugins/inspect/plugin-decodebin.xml: * docs/plugins/inspect/plugin-ffmpegcolorspace.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gnomevfs.xml: * docs/plugins/inspect/plugin-libvisual.xml: * docs/plugins/inspect/plugin-ogg.xml: * docs/plugins/inspect/plugin-pango.xml: * docs/plugins/inspect/plugin-playback.xml: * docs/plugins/inspect/plugin-queue2.xml: * docs/plugins/inspect/plugin-subparse.xml: * docs/plugins/inspect/plugin-tcp.xml: * docs/plugins/inspect/plugin-theora.xml: * docs/plugins/inspect/plugin-typefindfunctions.xml: * docs/plugins/inspect/plugin-uridecodebin.xml: * docs/plugins/inspect/plugin-video4linux.xml: * docs/plugins/inspect/plugin-videorate.xml: * docs/plugins/inspect/plugin-videoscale.xml: * docs/plugins/inspect/plugin-videotestsrc.xml: * docs/plugins/inspect/plugin-volume.xml: * docs/plugins/inspect/plugin-vorbis.xml: * docs/plugins/inspect/plugin-ximagesink.xml: * docs/plugins/inspect/plugin-xvimagesink.xml: * ext/alsa/gstalsamixer.c: * ext/alsa/gstalsasink.c: * ext/alsa/gstalsasrc.c: * ext/gio/gstgiosink.c: * ext/gio/gstgiosrc.c: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/theora/theoraparse.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * ext/vorbis/vorbisparse.c: * ext/vorbis/vorbistag.c: * gst/adder/gstadder.c: * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * gst/playback/gstdecodebin2.c: * gst/playback/gstplaybin.c: * gst/playback/gstplaybin2.c: * gst/playback/gstqueue2.c: * gst/playback/gsturidecodebin.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpserversink.c: * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: Cleanup Plugin docs. Link to signals and properties. Fix sub-section titles. Drop mentining that all our example pipelines are "simple" pipelines. 2008-07-10 20:23:09 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: Convert extended event text to UTF-8. Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: Convert extended event text to UTF-8. 2008-07-10 18:51:11 +0000 Stefan Kost Document one more. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-stereo.xml: * gst/stereo/gststereo.c: Document one more. 2008-07-10 09:20:23 +0000 Zaheer Abbas Merali gst/mpegtsparse/gstmpegdesc.h: Fix extended event descriptor parsing, out by 1 in position of text length. Original commit message from CVS: * gst/mpegtsparse/gstmpegdesc.h: Fix extended event descriptor parsing, out by 1 in position of text length. 2008-07-09 12:13:09 +0000 Stefan Kost gst/festival/gstfestival.c: Add a note to the docs, that festival need to be running. Also log an error it it is not.... Original commit message from CVS: * gst/festival/gstfestival.c: Add a note to the docs, that festival need to be running. Also log an error it it is not. Fixes #541327 2008-07-08 21:20:27 +0000 Ilja Pavkovic gst/librfb/gstrfbsrc.*: Add view-only property to ignore the navigation events Original commit message from CVS: patch by: Ilja Pavkovic * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: Add view-only property to ignore the navigation events 2008-07-08 18:53:41 +0000 Michael Smith sys/dshowdecwrapper/gstdshowaudiodec.c: Revert previous patch apart from typo fixes; the patch was not independently ... Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.c: Revert previous patch apart from typo fixes; the patch was not independently useful. 2008-07-08 17:41:55 +0000 Alessandro Decina sys/dshowdecwrapper/: Add AAC, AC3 to handled codecs. Original commit message from CVS: Based on patch by: Alessandro Decina * sys/dshowdecwrapper/gstdshowaudiodec.c: * sys/dshowdecwrapper/gstdshowdecwrapper.h: * sys/dshowdecwrapper/gstdshowvideodec.c: Add AAC, AC3 to handled codecs. Fix handling of flush events. Improve debug/error output. Fix a number of typos in comments and variable names. 2008-07-08 15:24:44 +0000 Ilja Pavkovic gst/librfb/rfbdecoder.c: Implement ServerCutText message Original commit message from CVS: patch by: Ilja Pavkovic * gst/librfb/rfbdecoder.c: Implement ServerCutText message 2008-07-08 14:28:08 +0000 Ilja Pavkovic gst/librfb/: Add property for shared desktop Original commit message from CVS: patch by: Ilja Pavkovic * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: Add property for shared desktop 2008-07-08 14:01:19 +0000 Sebastian Dröge configure.ac: Don't include ERROR_CFLAGS in GST_CXXFLAGS as it might include flags that are invalid for C++. Original commit message from CVS: * configure.ac: Don't include ERROR_CFLAGS in GST_CXXFLAGS as it might include flags that are invalid for C++. 2008-07-08 13:31:37 +0000 Sebastian Dröge Don't use declarations after statements in the remaining code. Original commit message from CVS: * ext/spc/gstspc.c: (spc_setup): * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: Don't use declarations after statements in the remaining code. 2008-07-08 13:28:51 +0000 Sebastian Dröge ext/: Don't use declarations after statements. Original commit message from CVS: Patch by: Jonathan Rosser * ext/metadata/metadataexif.c: (metadataparse_handle_unit_tags): * ext/metadata/metadataxmp.c: (metadataparse_xmp_iter_add_to_tag_list): * ext/mythtv/gstmythtvsrc.c: (gst_mythtv_src_start): * ext/timidity/gstwildmidi.c: (gst_wildmidi_loop): Don't use declarations after statements. 2008-07-07 13:22:26 +0000 Alessandro Decina gst/mpegtsparse/mpegtsparse.c: Fix memory leak by unreffing structures when not needed. Original commit message from CVS: patch by: Alessandro Decina * gst/mpegtsparse/mpegtsparse.c: Fix memory leak by unreffing structures when not needed. Fixes #539292. 2008-07-07 10:43:45 +0000 Stefan Kost gst/sdp/gstsdpdemux.c: Use floating point math for latencies < 0 sec in log output. Original commit message from CVS: * gst/sdp/gstsdpdemux.c: Use floating point math for latencies < 0 sec in log output. 2008-07-06 20:43:58 +0000 Sebastian Dröge gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: Mark internal processing functions as static inline for quite ... Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: Mark internal processing functions as static inline for quite some speedup as they're used only once and need to get many local variables passed as parameter. 2008-07-05 19:20:30 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.*: Call the current instance "self" instead of "object". Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_deinterlace_frame), (gst_deinterlace2_set_method), (gst_deinterlace2_init), (gst_deinterlace2_reset_history), (gst_deinterlace2_reset), (gst_deinterlace2_set_property), (gst_deinterlace2_get_property), (gst_deinterlace2_pop_history), (gst_deinterlace2_head_history), (gst_deinterlace2_push_history), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: Call the current instance "self" instead of "object". 2008-07-05 19:11:56 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.*: Include latency of the method in the returned latency. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_get_latency), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init), (gst_deinterlace2_push_history), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: Include latency of the method in the returned latency. Fix outputting of all fields, i.e. doubling of the framerate. 2008-07-05 16:47:32 +0000 Sebastian Dröge gst/deinterlace2/: Use a GstObject subtype for the deinterlacing methods and export the different settings for each d... Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace_method_class_init), (gst_deinterlace_method_init), (gst_deinterlace_method_deinterlace_frame), (gst_deinterlace_method_get_fields_required), (gst_deinterlace2_methods_get_type), (_do_init), (gst_deinterlace2_set_method), (gst_deinterlace2_class_init), (gst_deinterlace2_child_proxy_get_child_by_index), (gst_deinterlace2_child_proxy_get_children_count), (gst_deinterlace2_child_proxy_interface_init), (gst_deinterlace2_init), (gst_deinterlace2_finalize), (gst_deinterlace2_chain), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline_mmxext), (deinterlace_frame_di_greedy), (gst_deinterlace_method_greedy_l_set_property), (gst_deinterlace_method_greedy_l_get_property), (gst_deinterlace_method_greedy_l_class_init), (gst_deinterlace_method_greedy_l_init): * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C), (deinterlace_frame_di_greedyh), (gst_deinterlace_method_greedy_h_set_property), (gst_deinterlace_method_greedy_h_get_property), (gst_deinterlace_method_greedy_h_class_init), (gst_deinterlace_method_greedy_h_init): * gst/deinterlace2/tvtime/greedyh.h: * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (gst_deinterlace_method_tomsmocomp_set_property), (gst_deinterlace_method_tomsmocomp_get_property), (gst_deinterlace_method_tomsmocomp_class_init), (gst_deinterlace_method_tomsmocomp_init): * gst/deinterlace2/tvtime/tomsmocomp.h: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir), (gst_deinterlace_method_vfir_class_init), (gst_deinterlace_method_vfir_init): Use a GstObject subtype for the deinterlacing methods and export the different settings for each deinterlacing method via GObject properties. Implement GstChildProxy interface to allow access to the used deinterlacing method and to allow adjusting the different settings. Move global variables of the tomsmocomp deinterlacing method into function local variables to make it possible to use this deinterlacing method from different instances. 2008-07-05 12:22:37 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedyh.asm: Support widths that are not a multiply of 4 when using the assembly optimized gr... Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: Support widths that are not a multiply of 4 when using the assembly optimized greedyh implementations. 2008-07-04 18:54:15 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedyh.c: Only build the assembly optimized implementations on x86. Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh): Only build the assembly optimized implementations on x86. 2008-07-04 18:52:37 +0000 Damien Lespiau configure.ac: Fix checking of headers for the OSS4 plugin to fail if a single header doesn't exist already. AC_CHECK_... Original commit message from CVS: Patch by: Damien Lespiau * configure.ac: Fix checking of headers for the OSS4 plugin to fail if a single header doesn't exist already. AC_CHECK_HEADERS only fails if none of the headers is found. Fixes bug #541543. 2008-07-04 16:06:09 +0000 Damien Lespiau Fix built of the festival plugin with mingw32 by linking to ws2_32.dll and including winsock headers. Fixes bug #541522. Original commit message from CVS: Patch by: Damien Lespiau * configure.ac: * gst/festival/Makefile.am: * gst/festival/gstfestival.c: Fix built of the festival plugin with mingw32 by linking to ws2_32.dll and including winsock headers. Fixes bug #541522. 2008-07-03 14:44:51 +0000 Peter Kjellerstedt gst/rtpmanager/: Corrected a typo (interpollate -> interpolate). Original commit message from CVS: * ChangeLog: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/rtpsource.c: (rtp_source_get_new_sr): Corrected a typo (interpollate -> interpolate). 2008-07-03 14:31:10 +0000 Peter Kjellerstedt gst/rtpmanager/: Changed some GST_DEBUG() to GST_LOG() to reduce the spam when a pipeline is running normally. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp), (gst_rtp_session_send_rtp), (gst_rtp_session_send_rtcp), (gst_rtp_session_sync_rtcp), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_chain_send_rtp): * gst/rtpmanager/rtpsession.c: (source_push_rtp), (rtp_session_send_rtp): * gst/rtpmanager/rtpsource.c: (push_packet), (calculate_jitter), (rtp_source_process_rtp), (rtp_source_send_rtp): Changed some GST_DEBUG() to GST_LOG() to reduce the spam when a pipeline is running normally. 2008-07-03 13:47:19 +0000 Peter Kjellerstedt gst/rtpmanager/: Do not mix the use of g_get_current_time() with gst_clock_get_time(). Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_init), (gst_rtp_session_finalize), (rtcp_thread), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp): * gst/rtpmanager/rtpsession.c: (check_collision), (update_arrival_stats), (rtp_session_process_rtp), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_send_bye_locked), (rtp_session_send_bye), (rtp_session_next_timeout), (session_report_blocks), (session_cleanup), (is_rtcp_time), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Do not mix the use of g_get_current_time() with gst_clock_get_time(). 2008-07-01 21:40:19 +0000 Jan Schmidt gst/mpegvideoparse/mpegvideoparse.*: Queue new-segment events and send them after caps have been determined and set, ... Original commit message from CVS: * gst/mpegvideoparse/mpegvideoparse.c: * gst/mpegvideoparse/mpegvideoparse.h: Queue new-segment events and send them after caps have been determined and set, so that the decoder will have been auto-plugged. 2008-07-01 11:28:17 +0000 Michael Smith sys/qtwrapper/: Make qtwrapper compile/work on win32. Original commit message from CVS: Patch by : Michael Smith * sys/qtwrapper/audiodecoders.c: (qtwrapper_audio_decoder_init), (clear_AudioStreamBasicDescription), (fill_indesc_mp3), (fill_indesc_aac), (make_samr_magic_cookie), (write_len), (make_aac_magic_cookie), (open_decoder), (process_buffer_cb), (qtwrapper_audio_decoder_chain), (qtwrapper_audio_decoder_sink_event), (qtwrapper_audio_decoder_base_init), (qtwrapper_audio_decoder_class_init), (qtwrapper_audio_decoders_register): * sys/qtwrapper/codecmapping.h: * sys/qtwrapper/imagedescription.c: (image_description_for_avc1), (image_description_for_mp4v), (image_description_from_stsd_buffer): * sys/qtwrapper/imagedescription.h: * sys/qtwrapper/qtutils.c: (get_name_info_from_component), (dump_avcc_atom), (dump_image_description), (AllocateAudioBufferList): * sys/qtwrapper/qtutils.h: * sys/qtwrapper/qtwrapper.c: (plugin_init): * sys/qtwrapper/qtwrapper.h: * sys/qtwrapper/videodecoders.c: (qtwrapper_video_decoder_base_init), (open_decoder), (decompressCb), (qtwrapper_video_decoder_chain), (qtwrapper_video_decoders_register): Make qtwrapper compile/work on win32. Lots of fixes Fixes #531840 2008-06-30 19:19:26 +0000 Jan Schmidt gst/rawparse/gstvideoparse.c: Fix size calculation for RGB buffers -> bpp is in bits, so divide by 8 Original commit message from CVS: * gst/rawparse/gstvideoparse.c: Fix size calculation for RGB buffers -> bpp is in bits, so divide by 8 2008-06-30 07:51:07 +0000 Sebastian Dröge gst/deinterlace2/: Remove useless file and mark everything possible as static. Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/tvtime/tomsmocomp.c: (tomsmocomp_init), (tomsmocomp_filter_mmx), (tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse), (deinterlace_frame_di_tomsmocomp): * gst/deinterlace2/tvtime/tomsmocomp.h: Remove useless file and mark everything possible as static. * gst/deinterlace2/tvtime/greedy.c: * gst/deinterlace2/tvtime/greedyh.c: Use "_stdint.h" instead of . 2008-06-29 10:56:47 +0000 Sebastian Dröge gst/deinterlace2/: Get rid of speedy.[ch] as we don't use most of it's code anyway and it doesn't seem to be relicens... Original commit message from CVS: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_init): * gst/deinterlace2/tvtime/greedy.c: (deinterlace_frame_di_greedy): * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh): * gst/deinterlace2/tvtime/speedtools.h: * gst/deinterlace2/tvtime/speedy.c: * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy): * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir): Get rid of speedy.[ch] as we don't use most of it's code anyway and it doesn't seem to be relicensed to LGPL. Use memcpy() instead of the speedy memcpy everywhere instead. * gst/deinterlace2/gstdeinterlace2.h: Remove many unused declarations. 2008-06-28 20:51:36 +0000 Mark Nauwelaerts ext/mpeg2enc/gstmpeg2encoptions.*: Expose the additional MPEG HDTV format profiles available in latest mjpegtools ver... Original commit message from CVS: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mpeg2enc/gstmpeg2encoptions.hh: Expose the additional MPEG HDTV format profiles available in latest mjpegtools version. 2008-06-28 18:13:08 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.c: Divide latency be 2 to convert from fields to frames. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_src_query): Divide latency be 2 to convert from fields to frames. 2008-06-28 18:10:52 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedy.c: Don't use scanlines function from gstdeinterlace2 as it's not appropiate for this m... Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline_mmxext), (deinterlace_frame_di_greedy): Don't use scanlines function from gstdeinterlace2 as it's not appropiate for this method. Instead implement deinterlace_frame function by taking the one from greedyh. * gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C): Small fix for the C implementation. * gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir): Don't use the scanlines function from gstdeinterlace2 as it's only used for this method and will be removed. Instead implement deinterlace_frame function and make it a bit more efficient. * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_class_init), (gst_deinterlace2_set_method), (gst_deinterlace2_push_history), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query): Fix coding style and remove scanlines function as it's unused now. 2008-06-28 17:25:56 +0000 Sebastian Dröge gst/deinterlace2/tvtime/: Add a C implementation for the greedyh deinterlacing method, clean up the code a bit and ma... Original commit message from CVS: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C), (deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method): * gst/deinterlace2/tvtime/greedyhmacros.h: Add a C implementation for the greedyh deinterlacing method, clean up the code a bit and mark the SSE version as MMXEXT as it doesn't require any SSE instructions. 2008-06-27 13:22:34 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.c: If we're outputting all fields the framerate has to be doubled. Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_set_property), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps): If we're outputting all fields the framerate has to be doubled. Set duration on the outgoing buffers. 2008-06-26 15:52:40 +0000 Mark Nauwelaerts Add documentation for YUV4MPEG2 encoder element. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/y4m/gsty4mencode.c: Add documentation for YUV4MPEG2 encoder element. 2008-06-25 16:05:08 +0000 Edward Hervey gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Remove unneeded macros that break build on macosx. Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Remove unneeded macros that break build on macosx. 2008-06-24 15:48:25 +0000 Tim-Philipp Müller configure.ac: Depend on released versions of core and -base. Original commit message from CVS: * configure.ac: Depend on released versions of core and -base. 2008-06-24 12:08:47 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedy.c: Optimize MMX/MMXEXT implementations a bit by requiring two less memory accesses and... Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline_mmxext): Optimize MMX/MMXEXT implementations a bit by requiring two less memory accesses and fix the workaround for the missing right shift on bytes to unset the highest bit of every byte. 2008-06-24 10:15:41 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedy.c: Remove sfence instruction as it's not needed and actually is an SSE instruction. Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_mmxext): Remove sfence instruction as it's not needed and actually is an SSE instruction. 2008-06-24 10:12:08 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedy.c: Add plain MMX implementation for the greedyl method. Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_mmx), (deinterlace_greedy_packed422_scanline): Add plain MMX implementation for the greedyl method. 2008-06-24 09:40:03 +0000 Sebastian Dröge gst/deinterlace2/Makefile.am: Move the assembly includes to noinst_HEADERS where they belong. Original commit message from CVS: * gst/deinterlace2/Makefile.am: Move the assembly includes to noinst_HEADERS where they belong. * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c), (deinterlace_line_mmx): Fix C and MMX implementations a bit more. 2008-06-24 09:10:46 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedy.c: Fix the C implementation to produce correct results and optimize the Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline_mmxext), (deinterlace_greedy_packed422_scanline): Fix the C implementation to produce correct results and optimize the MMXEXT implementation. Handle odd widths and don't read over array boundaries in the MMXEXT implementation. * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c), (deinterlace_line_mmx), (deinterlace_scanline_vfir): Fix a small rounding bug in the MMX implementation, the MMX implementation doesn't actually need MMXEXT instructions so don't mark it as such. Handle odd widths in both implementations. 2008-06-21 21:20:24 +0000 Stefan Kost ext/resindvd/rsnbasesrc.c: Use the right i18n header. Original commit message from CVS: * ext/resindvd/rsnbasesrc.c: Use the right i18n header. 2008-06-21 09:05:00 +0000 Sebastian Dröge gst/deinterlace2/tvtime/greedy.c: Implement a C version of the greedy low motion algorithm and mark the assembly opti... Original commit message from CVS: * gst/deinterlace2/tvtime/greedy.c: (deinterlace_greedy_packed422_scanline_sse), (deinterlace_greedy_packed422_scanline_c), (deinterlace_greedy_packed422_scanline): Implement a C version of the greedy low motion algorithm and mark the assembly optimized version as SSE as it uses SSE instructions additional to MMX instructions. 2008-06-20 16:54:28 +0000 Sebastian Pölsterl gst/mpegtsparse/mpegtspacketizer.c: Fix problem when empty string is provided. Original commit message from CVS: Patch by: Sebastian Pölsterl * gst/mpegtsparse/mpegtspacketizer.c: Fix problem when empty string is provided. 2008-06-20 14:48:40 +0000 Sebastian Dröge gst/deinterlace2/tvtime/vfir.c: Make it possible to use the vfir method on X86 CPUs without MMXEXT too but use the MM... Original commit message from CVS: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_mmxext), (deinterlace_line_c), (deinterlace_scanline_vfir): Make it possible to use the vfir method on X86 CPUs without MMXEXT too but use the MMXEXT optimized code whenever possible. 2008-06-20 14:35:25 +0000 Sebastian Dröge gst/deinterlace2/gstdeinterlace2.*: Reset element state on PAUSED->READY properly, don't leak any buffers when finali... Original commit message from CVS: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_class_init), (gst_deinterlace2_init), (gst_deinterlace2_reset_history), (gst_deinterlace2_reset), (gst_deinterlace2_finalize), (gst_deinterlace2_chain), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_query): * gst/deinterlace2/gstdeinterlace2.h: Reset element state on PAUSED->READY properly, don't leak any buffers when finalizing, allocate buffers with gst_pad_alloc_buffer() and properly return flow returns from gst_pad_push() instead of ignoring them. 2008-06-20 13:45:08 +0000 Sebastian Dröge gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Add missing header. Original commit message from CVS: * gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Add missing header. 2008-06-20 13:24:29 +0000 Sebastian Dröge Fix compilation on generic x86/amd64 and include deinterlace2 in the build system. Because of several bugs it's still... Original commit message from CVS: * configure.ac: * gst/deinterlace2/Makefile.am: * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: Fix compilation on generic x86/amd64 and include deinterlace2 in the build system. Because of several bugs it's still enabled only by --enable-experimental. 2008-06-20 13:07:56 +0000 Jan Schmidt ext/resindvd/resindvdsrc.*: Schedule NAV packets and activate them with an async clock callback at the right moment. ... Original commit message from CVS: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: Schedule NAV packets and activate them with an async clock callback at the right moment. This makes delayed menu highlights appear at the correct time and fixes Back To The Future. When outputting new segment in do_seek(), calculate our position value properly, so we report the right time when popping in and out of the menus. * ext/resindvd/rsnbasesrc.c: When handling a non-flushing seek, accumulate the segment, rather than having every seek start from 0 and messing with sync 2008-06-19 13:18:24 +0000 Stefan Kost Use BOILERPLATE macro and update test to the latest api changes. Original commit message from CVS: * gst/selector/gstoutputselector.c: * tests/icles/output-selector-test.c: Use BOILERPLATE macro and update test to the latest api changes. 2008-06-19 11:25:37 +0000 Wim Taymans examples/app/appsink-src.c: Don't use a buffer after unreffing it. Original commit message from CVS: * examples/app/appsink-src.c: (on_new_buffer_from_source): Don't use a buffer after unreffing it. 2008-06-18 07:02:54 +0000 Stefan Kost ext/metadata/metadataexif.c: Add description tag mapping. Original commit message from CVS: * ext/metadata/metadataexif.c: Add description tag mapping. 2008-06-18 06:31:13 +0000 Stefan Kost Fix gtk-doc warnings. Also don't misuse api-doc comments for normal comments. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * examples/app/appsrc-ra.c: * examples/app/appsrc-seekable.c: * examples/app/appsrc-stream.c: * examples/app/appsrc-stream2.c: * ext/directfb/dfbvideosink.h: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/metadata.c: * ext/metadata/metadataexif.c: * ext/theora/theoradec.h: * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/speedy.c: * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/vfir.c: Fix gtk-doc warnings. Also don't misuse api-doc comments for normal comments. 2008-06-17 19:52:00 +0000 Jan Schmidt ext/resindvd/resindvdbin.c: Parse the URI argument into the device name so dvd:///path/to/image works. Original commit message from CVS: * ext/resindvd/resindvdbin.c: Parse the URI argument into the device name so dvd:///path/to/image works. * ext/resindvd/resindvdsrc.c: Implement a trivial duration query reporting the current PGC length. * gst/dvdspu/gstdvdspu.c: Rename typo in the function name. 2008-06-17 11:01:58 +0000 Sebastian Dröge configure.ac: Disable deinterlace2 plugin again which was accidently enabled with last commit. Original commit message from CVS: * configure.ac: Disable deinterlace2 plugin again which was accidently enabled with last commit. 2008-06-17 10:53:35 +0000 Sebastian Dröge Make resindvd work with libdvdnav >= 4.0.0. Original commit message from CVS: * configure.ac: * ext/resindvd/resindvdsrc.h: Make resindvd work with libdvdnav >= 4.0.0. 2008-06-17 01:08:14 +0000 Jan Schmidt configure.ac: Check for libdvdnav to build resindvd. Original commit message from CVS: * configure.ac: Check for libdvdnav to build resindvd. * ext/Makefile.am: * ext/resindvd/Makefile.am: * ext/resindvd/gstmpegdefs.h: * ext/resindvd/gstmpegdemux.c: * ext/resindvd/gstmpegdemux.h: * ext/resindvd/gstmpegdesc.c: * ext/resindvd/gstmpegdesc.h: * ext/resindvd/gstpesfilter.c: * ext/resindvd/gstpesfilter.h: * ext/resindvd/plugin.c: * ext/resindvd/resin-play: * ext/resindvd/resindvdbin.c: * ext/resindvd/resindvdbin.h: * ext/resindvd/resindvdsrc.c: * ext/resindvd/resindvdsrc.h: * ext/resindvd/rsnaudiomunge.c: * ext/resindvd/rsnaudiomunge.h: * ext/resindvd/rsnbasesrc.c: * ext/resindvd/rsnbasesrc.h: * ext/resindvd/rsnpushsrc.c: * ext/resindvd/rsnpushsrc.h: * ext/resindvd/rsnstreamselector.c: * ext/resindvd/rsnstreamselector.h: First commit of DVD-Video playback component 'rsndvdbin' and helper elements. Use --enable-experimental for now, but feel free to give it a try using the resin-play script. * gst/dvdspu/gstdvdspu.c: Add some extra guards for malformed events. 2008-06-17 00:37:49 +0000 David Schleef configure.ac: Bump dirac requirement to 0.10 due to api changes. Original commit message from CVS: * configure.ac: Bump dirac requirement to 0.10 due to api changes. 2008-06-16 14:11:36 +0000 Andy Wingo * ChangeLog: * gst-libs/gst/app/gstappsrc.c: gst-libs/gst/app/gstappsrc.c (gst_app_src_set_max_bytes) Original commit message from CVS: 2008-06-16 Andy Wingo * gst-libs/gst/app/gstappsrc.c (gst_app_src_set_max_bytes) (gst_app_src_get_max_bytes, gst_app_src_push_buffer): Use G_GUINT64_FORMAT. Avoid overflow in get_max_bytes(). 2008-06-16 12:37:34 +0000 Stefan Kost sys/dvb/gstdvbsrc.c: Move docblob upwards. Balance tags and restore blank line. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Move docblob upwards. Balance tags and restore blank line. 2008-06-16 11:47:34 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Fix out of date docs. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Fix out of date docs. 2008-06-16 11:29:46 +0000 Zaheer Abbas Merali Patch from: Vincent Genieux Original commit message from CVS: Patch from: Vincent Genieux * gst/mpegtsparse/mpegtsparse.c: Fix refcount issues, fixes #538560. 2008-06-16 09:22:30 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Parse the extended event descriptor. Original commit message from CVS: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtspacketizer.c: Parse the extended event descriptor. 2008-06-16 07:30:34 +0000 Stefan Kost Final round of doc updates. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/speed/gstspeed.c: * gst/speexresample/gstspeexresample.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * sys/dvb/gstdvbsrc.c: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-source.c: * sys/wininet/gstwininetsrc.c: Final round of doc updates. 2008-06-16 07:03:58 +0000 Stefan Kost gst/: More doc updates. More xrefs. Original commit message from CVS: * gst/deinterlace/gstdeinterlace.c: * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/sdp/gstsdpdemux.c: More doc updates. More xrefs. 2008-06-13 22:46:43 +0000 Julien Moutte gst/flv/: Introduce demuxing support for AAC and Original commit message from CVS: 2008-06-14 Julien Moutte * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_dispose): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate), (gst_flv_parse_tag_audio), (gst_flv_parse_video_negotiate), (gst_flv_parse_tag_video): Introduce demuxing support for AAC and H.264/AVC inside FLV. * sys/dshowdecwrapper/gstdshowaudiodec.c: (gst_dshowaudiodec_init), (gst_dshowaudiodec_chain), (gst_dshowaudiodec_push_buffer), (gst_dshowaudiodec_sink_event), (gst_dshowaudiodec_setup_graph): * sys/dshowdecwrapper/gstdshowaudiodec.h: * sys/dshowdecwrapper/gstdshowvideodec.c: (gst_dshowvideodec_init), (gst_dshowvideodec_sink_event), (gst_dshowvideodec_chain), (gst_dshowvideodec_push_buffer), (gst_dshowvideodec_src_getcaps): * sys/dshowdecwrapper/gstdshowvideodec.h: Lot of random fixes to improve stability (ref counting, safety checks...) 2008-06-13 18:25:18 +0000 Wim Taymans gst/real/gstrealaudiodec.c: Disable sipro on 64bits, it crashes. Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_probe_modules): Disable sipro on 64bits, it crashes. 2008-06-13 18:03:16 +0000 Wim Taymans gst/real/gstrealaudiodec.c: Add raversions we can support on the caps. Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_chain), (close_library), (open_library), (gst_real_audio_dec_probe_modules), (gst_real_audio_dec_getcaps), (gst_real_audio_dec_setcaps), (gst_real_audio_dec_init), (gst_real_audio_dec_change_state), (gst_real_audio_dec_finalize): Add raversions we can support on the caps. Refactor the loading of the real codecs like realvideo so that we can implement probing. Probe all supported formats by trying to load the .so files, only report the versions on the caps that we can actually load. * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain), (gst_real_video_dec_getcaps), (gst_real_video_dec_setcaps), (open_library), (close_library), (gst_real_video_dec_probe_modules), (gst_real_video_dec_change_state), (gst_real_video_dec_init), (gst_real_video_dec_finalize), (gst_real_video_dec_class_init): * gst/real/gstrealvideodec.h: Change the loading of the library like the audio decoder. Probe the supported formats by trying to load the .so files and only report the versions on the caps that we can actually load. 2008-06-13 15:46:03 +0000 Sebastian Pölsterl gst/mpegtsparse/mpegtspacketizer.c: Handle character sets in strings coming from DVB SI according to the DVB SI spec. Original commit message from CVS: patch by: Sebastian Pölsterl * gst/mpegtsparse/mpegtspacketizer.c: Handle character sets in strings coming from DVB SI according to the DVB SI spec. 2008-06-13 14:33:52 +0000 Stefan Kost gst/replaygain/: More doc updates. Original commit message from CVS: * gst/replaygain/gstrganalysis.c: * gst/replaygain/gstrglimiter.c: * gst/replaygain/gstrgvolume.c: More doc updates. 2008-06-13 11:59:23 +0000 Stefan Kost docs/plugins/: docs/plugins/inspect/plugin-mythtv.xml Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mythtv.xml * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/dc1394/gstdc1394.c: * ext/directfb/dfbvideosink.c: * ext/ivorbis/vorbisdec.c: * ext/jack/gstjackaudiosink.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst-libs/gst/app/gstappsink.c: * gst/deinterlace/gstdeinterlace.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/freeze/gstfreeze.c: * gst/interleave/deinterleave.c: * gst/interleave/interleave.c: * gst/modplug/gstmodplug.cc: * gst/nuvdemux/gstnuvdemux.c: Add missing elements to docs. Fix doc-markup: use convinience syntax for examples (produces valid docbook), add several refsec2 when we have several titles. Fix some types. 2008-06-12 15:47:03 +0000 Wim Taymans examples/app/: Add beefed up example app from bug #413418. It now also uses appsink instead of fakesink for more ulti... Original commit message from CVS: * examples/app/.cvsignore: * examples/app/Makefile.am: * examples/app/appsink-src.c: (on_new_buffer_from_source), (on_source_message), (on_sink_message), (main): Add beefed up example app from bug #413418. It now also uses appsink instead of fakesink for more ultimate coolness. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_unlock), (gst_app_src_unlock_stop), (gst_app_src_create), (gst_app_src_set_max_bytes), (gst_app_src_push_buffer), (gst_app_src_end_of_stream): * gst-libs/gst/app/gstappsrc.h: Add block property to allow push based implementation to block when we fill up the appsrc queues. Emit the enough-data signal while releasing our lock. 2008-06-12 14:50:27 +0000 Stefan Kost examples/app/.cvsignore: Ignore more. Original commit message from CVS: * examples/app/.cvsignore: Ignore more. 2008-06-12 14:49:18 +0000 Stefan Kost Do not use short_description in section docs for elements. We extract them from element details and there will be war... Original commit message from CVS: * ext/dc1394/gstdc1394.c: * ext/ivorbis/vorbisdec.c: * ext/jack/gstjackaudiosink.c: * ext/metadata/gstmetadatademux.c: * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: * gst-libs/gst/app/gstappsink.c: * gst/bayer/gstbayer2rgb.c: * gst/deinterlace/gstdeinterlace.c: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstvideoparse.c: * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/selector/gstinputselector.c: * gst/selector/gstoutputselector.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-source.c: Do not use short_description in section docs for elements. We extract them from element details and there will be warnings if they differ. Also fixing up the ChangeLog order. 2008-06-12 14:20:40 +0000 Sebastien Merle ext/amrwb/gstamrwbdec.c: Fix the sign of the data we pass to the decoder so that the decoder compiles with newer refe... Original commit message from CVS: Patch by: Sebastien Merle * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_chain): Fix the sign of the data we pass to the decoder so that the decoder compiles with newer reference code as well. Fixes #528618. 2008-06-12 13:51:51 +0000 Sebastien Merle ext/amrwb/gstamrwbdec.c: Fix the sign of the data we pass to the decoder so that the decoder compiles with newer refe... Original commit message from CVS: Patch by: Sebastien Merle * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_chain): Fix the sign of the data we pass to the decoder so that the decoder compiles with newer reference code as well. Fixes #528618. 2008-06-12 13:06:37 +0000 Stefan Kost tests/icles/test-oss4.c: Include stdlib.h. Original commit message from CVS: * tests/icles/test-oss4.c: Include stdlib.h. 2008-06-11 11:12:49 +0000 Martin Eikermann gst/deinterlace2/: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL f... Original commit message from CVS: Based on a patch by: Martin Eikermann * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_method_get_type), (gst_deinterlace2_fields_get_type), (gst_deinterlace2_field_layout_get_type), (gst_deinterlace2_base_init), (gst_deinterlace2_class_init), (gst_deinterlace2_init), (gst_deinterlace2_set_method), (gst_deinterlace2_set_property), (gst_deinterlace2_get_property), (gst_deinterlace2_finalize), (gst_deinterlace2_pop_history), (gst_deinterlace2_head_history), (gst_deinterlace2_push_history), (gst_deinterlace2_deinterlace_scanlines), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query), (gst_deinterlace2_src_query_types), (plugin_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (copy_scanline), (deinterlace_greedy_packed422_scanline_mmxext), (dscaler_greedyl_get_method): * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method), (greedyh_init), (greedyh_filter_mmx), (greedyh_filter_3dnow), (greedyh_filter_sse): * gst/deinterlace2/tvtime/greedyh.h: * gst/deinterlace2/tvtime/greedyhmacros.h: * gst/deinterlace2/tvtime/mmx.h: * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/speedtools.h: * gst/deinterlace2/tvtime/speedy.c: (multiply_alpha), (clip255), (comb_factor_packed422_scanline_mmx), (diff_factor_packed422_scanline_c), (diff_factor_packed422_scanline_mmx), (diff_packed422_block8x8_mmx), (diff_packed422_block8x8_c), (packed444_to_packed422_scanline_c), (packed422_to_packed444_scanline_c), (packed422_to_packed444_rec601_scanline_c), (vfilter_chroma_121_packed422_scanline_mmx), (vfilter_chroma_121_packed422_scanline_c), (vfilter_chroma_332_packed422_scanline_mmx), (vfilter_chroma_332_packed422_scanline_c), (kill_chroma_packed422_inplace_scanline_mmx), (kill_chroma_packed422_inplace_scanline_c), (invert_colour_packed422_inplace_scanline_mmx), (invert_colour_packed422_inplace_scanline_c), (mirror_packed422_inplace_scanline_c), (interpolate_packed422_scanline_c), (convert_uyvy_to_yuyv_scanline_mmx), (convert_uyvy_to_yuyv_scanline_c), (interpolate_packed422_scanline_mmx), (interpolate_packed422_scanline_mmxext), (blit_colour_packed422_scanline_c), (blit_colour_packed422_scanline_mmx), (blit_colour_packed422_scanline_mmxext), (blit_colour_packed4444_scanline_c), (blit_colour_packed4444_scanline_mmx), (blit_colour_packed4444_scanline_mmxext), (small_memcpy), (speedy_memcpy_c), (speedy_memcpy_mmx), (speedy_memcpy_mmxext), (blit_packed422_scanline_c), (blit_packed422_scanline_mmx), (blit_packed422_scanline_mmxext), (composite_colour4444_alpha_to_packed422_scanline_c), (composite_colour4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_alpha_to_packed422_scanline_c), (composite_packed4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_to_packed422_scanline_c), (composite_packed4444_to_packed422_scanline_mmxext), (composite_alphamask_to_packed4444_scanline_c), (composite_alphamask_to_packed4444_scanline_mmxext), (composite_alphamask_alpha_to_packed4444_scanline_c), (premultiply_packed4444_scanline_c), (premultiply_packed4444_scanline_mmxext), (blend_packed422_scanline_c), (blend_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_c), (subpix_blit_vertical_packed422_scanline_c), (a8_subpix_blit_scanline_c), (myround), (init_RGB_to_YCbCr_tables), (init_YCbCr_to_RGB_tables), (rgb24_to_packed444_rec601_scanline_c), (rgba32_to_packed4444_rec601_scanline_c), (packed444_to_rgb24_rec601_scanline_c), (packed444_to_nonpremultiplied_packed4444_scanline_c), (aspect_adjust_packed4444_scanline_c), (setup_speedy_calls), (speedy_get_accel): * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/sse.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy), (deinterlace_frame_di_tomsmocomp), (dscaler_tomsmocomp_get_method), (tomsmocomp_init), (tomsmocomp_filter_mmx), (tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse): * gst/deinterlace2/tvtime/tomsmocomp.h: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line), (deinterlace_scanline_vfir), (copy_scanline), (dscaler_vfir_get_method): * gst/deinterlace2/tvtime/x86-64_macros.inc: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL for GStreamer and in theory provides better and faster results than the simple deinterlace element. Fixes bug #163578. Ported to GStreamer 0.10 but still not enabled or included in the build system by default because of bad artefacts caused by a bug somewhere and as it can be only build on x86/amd64 ATM and requires special CFLAGS. Will be fixed soon. 2008-06-11 11:12:14 +0000 Martin Eikermann gst/deinterlace2/: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL f... Original commit message from CVS: Based on a patch by: Martin Eikermann * gst/deinterlace2/Makefile.am: * gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_method_get_type), (gst_deinterlace2_fields_get_type), (gst_deinterlace2_field_layout_get_type), (gst_deinterlace2_base_init), (gst_deinterlace2_class_init), (gst_deinterlace2_init), (gst_deinterlace2_set_method), (gst_deinterlace2_set_property), (gst_deinterlace2_get_property), (gst_deinterlace2_finalize), (gst_deinterlace2_pop_history), (gst_deinterlace2_head_history), (gst_deinterlace2_push_history), (gst_deinterlace2_deinterlace_scanlines), (gst_deinterlace2_chain), (gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event), (gst_deinterlace2_change_state), (gst_deinterlace2_src_event), (gst_deinterlace2_src_query), (gst_deinterlace2_src_query_types), (plugin_init): * gst/deinterlace2/gstdeinterlace2.h: * gst/deinterlace2/tvtime/greedy.c: (copy_scanline), (deinterlace_greedy_packed422_scanline_mmxext), (dscaler_greedyl_get_method): * gst/deinterlace2/tvtime/greedyh.asm: * gst/deinterlace2/tvtime/greedyh.c: (deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method), (greedyh_init), (greedyh_filter_mmx), (greedyh_filter_3dnow), (greedyh_filter_sse): * gst/deinterlace2/tvtime/greedyh.h: * gst/deinterlace2/tvtime/greedyhmacros.h: * gst/deinterlace2/tvtime/mmx.h: * gst/deinterlace2/tvtime/plugins.h: * gst/deinterlace2/tvtime/speedtools.h: * gst/deinterlace2/tvtime/speedy.c: (multiply_alpha), (clip255), (comb_factor_packed422_scanline_mmx), (diff_factor_packed422_scanline_c), (diff_factor_packed422_scanline_mmx), (diff_packed422_block8x8_mmx), (diff_packed422_block8x8_c), (packed444_to_packed422_scanline_c), (packed422_to_packed444_scanline_c), (packed422_to_packed444_rec601_scanline_c), (vfilter_chroma_121_packed422_scanline_mmx), (vfilter_chroma_121_packed422_scanline_c), (vfilter_chroma_332_packed422_scanline_mmx), (vfilter_chroma_332_packed422_scanline_c), (kill_chroma_packed422_inplace_scanline_mmx), (kill_chroma_packed422_inplace_scanline_c), (invert_colour_packed422_inplace_scanline_mmx), (invert_colour_packed422_inplace_scanline_c), (mirror_packed422_inplace_scanline_c), (interpolate_packed422_scanline_c), (convert_uyvy_to_yuyv_scanline_mmx), (convert_uyvy_to_yuyv_scanline_c), (interpolate_packed422_scanline_mmx), (interpolate_packed422_scanline_mmxext), (blit_colour_packed422_scanline_c), (blit_colour_packed422_scanline_mmx), (blit_colour_packed422_scanline_mmxext), (blit_colour_packed4444_scanline_c), (blit_colour_packed4444_scanline_mmx), (blit_colour_packed4444_scanline_mmxext), (small_memcpy), (speedy_memcpy_c), (speedy_memcpy_mmx), (speedy_memcpy_mmxext), (blit_packed422_scanline_c), (blit_packed422_scanline_mmx), (blit_packed422_scanline_mmxext), (composite_colour4444_alpha_to_packed422_scanline_c), (composite_colour4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_alpha_to_packed422_scanline_c), (composite_packed4444_alpha_to_packed422_scanline_mmxext), (composite_packed4444_to_packed422_scanline_c), (composite_packed4444_to_packed422_scanline_mmxext), (composite_alphamask_to_packed4444_scanline_c), (composite_alphamask_to_packed4444_scanline_mmxext), (composite_alphamask_alpha_to_packed4444_scanline_c), (premultiply_packed4444_scanline_c), (premultiply_packed4444_scanline_mmxext), (blend_packed422_scanline_c), (blend_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_mmxext), (quarter_blit_vertical_packed422_scanline_c), (subpix_blit_vertical_packed422_scanline_c), (a8_subpix_blit_scanline_c), (myround), (init_RGB_to_YCbCr_tables), (init_YCbCr_to_RGB_tables), (rgb24_to_packed444_rec601_scanline_c), (rgba32_to_packed4444_rec601_scanline_c), (packed444_to_rgb24_rec601_scanline_c), (packed444_to_nonpremultiplied_packed4444_scanline_c), (aspect_adjust_packed4444_scanline_c), (setup_speedy_calls), (speedy_get_accel): * gst/deinterlace2/tvtime/speedy.h: * gst/deinterlace2/tvtime/sse.h: * gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy), (deinterlace_frame_di_tomsmocomp), (dscaler_tomsmocomp_get_method), (tomsmocomp_init), (tomsmocomp_filter_mmx), (tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse): * gst/deinterlace2/tvtime/tomsmocomp.h: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc: * gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc: * gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc: * gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: * gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc: * gst/deinterlace2/tvtime/vfir.c: (deinterlace_line), (deinterlace_scanline_vfir), (copy_scanline), (dscaler_vfir_get_method): * gst/deinterlace2/tvtime/x86-64_macros.inc: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL for GStreamer and in theory provides better and faster results than the simple deinterlace element. Fixes bug #163578. Ported to GStreamer 0.10 but still not enabled or included in the build system by default because of bad artefacts caused by a bug somewhere and as it can be only build on x86/amd64 ATM and requires special CFLAGS. Will be fixed soon. 2008-06-11 07:58:44 +0000 Sebastian Dröge ext/timidity/gstwildmidi.*: Initialize wildmidi only once in the plugin init function instead of once for every insta... Original commit message from CVS: Based on a patch by: Sonicadvance1 at GMAIL dot COM * ext/timidity/gstwildmidi.c: (gst_wildmidi_init), (gst_wildmidi_change_state), (plugin_init): * ext/timidity/gstwildmidi.h: Initialize wildmidi only once in the plugin init function instead of once for every instance. The second and following calls to the wildmidi initialization function will fail. Fixes bug #525613. Also don't register the element at all if wildmidi initialization fails. 2008-06-10 12:54:59 +0000 Sebastian Dröge ext/soundtouch/gstpitch.cc: Call gst_element_no_more_pads() after all pads are added. Original commit message from CVS: * ext/soundtouch/gstpitch.cc: Call gst_element_no_more_pads() after all pads are added. 2008-06-09 17:57:08 +0000 Wim Taymans gst/rawparse/gstrawparse.c: Add simple reverse playback. Original commit message from CVS: * gst/rawparse/gstrawparse.c: (gst_raw_parse_push_buffer), (gst_raw_parse_loop), (gst_raw_parse_handle_seek_push), (gst_raw_parse_handle_seek_pull): Add simple reverse playback. 2008-06-09 12:05:00 +0000 Wim Taymans gst/rawparse/gstrawparse.*: Fix seeking, timestamps, duration and some more. Fixes #536309. Original commit message from CVS: * gst/rawparse/gstrawparse.c: (gst_raw_parse_reset), (gst_raw_parse_push_buffer), (gst_raw_parse_chain), (gst_raw_parse_loop), (gst_raw_parse_sink_activatepull), (gst_raw_parse_convert), (gst_raw_parse_sink_event), (gst_raw_parse_handle_seek_push), (gst_raw_parse_handle_seek_pull), (gst_raw_parse_src_query), (gst_raw_parse_get_fps): * gst/rawparse/gstrawparse.h: Fix seeking, timestamps, duration and some more. Fixes #536309. 2008-06-06 16:50:51 +0000 Wim Taymans examples/app/: Added 3 more example application for using appsrc in random-access mode, pull-mode streaming and pull ... Original commit message from CVS: * examples/app/Makefile.am: * examples/app/appsrc-ra.c: (feed_data), (seek_data), (found_source), (bus_message), (main): * examples/app/appsrc-seekable.c: (feed_data), (seek_data), (found_source), (bus_message), (main): * examples/app/appsrc-stream2.c: (feed_data), (found_source), (bus_message), (main): Added 3 more example application for using appsrc in random-access mode, pull-mode streaming and pull mode seekable. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_start), (gst_app_src_do_get_size), (gst_app_src_create): * gst-libs/gst/app/gstappsrc.h: Make stream-type property writable. Unset flushing when starting so that we reuse appsrc. Inform basesrc about the configured size. Emit seek-data signal when we are going to a different offset in random-access mode. 2008-06-06 14:19:54 +0000 Wim Taymans examples/app/appsrc-stream.c: Use deep-notify until we can depend on a playbin2 with support for the source property. Original commit message from CVS: * examples/app/appsrc-stream.c: (found_source), (main): Use deep-notify until we can depend on a playbin2 with support for the source property. 2008-06-06 13:01:05 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Fix deadlock when shutting down, use a new lock instead to properly shutdown. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_init), (gst_rtp_bin_finalize), (gst_rtp_bin_change_state): Fix deadlock when shutting down, use a new lock instead to properly shutdown. 2008-06-05 16:38:50 +0000 Wim Taymans examples/app/: Added an example on how to use appsrc in playbin in streaming mode from an mmapped file. Original commit message from CVS: * examples/app/.cvsignore: * examples/app/Makefile.am: * examples/app/appsrc-stream.c: (read_data), (start_feed), (stop_feed), (found_source), (bus_message), (main): Added an example on how to use appsrc in playbin in streaming mode from an mmapped file. * examples/app/appsrc_ex.c: (main): Set pipeline to NULL to free queued buffers. * gst-libs/gst/app/gstapp-marshal.list: * gst-libs/gst/app/gstappsrc.c: (stream_type_get_type), (_do_init), (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_flush_queued), (gst_app_src_dispose), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_unlock), (gst_app_src_unlock_stop), (gst_app_src_start), (gst_app_src_stop), (gst_app_src_is_seekable), (gst_app_src_check_get_range), (gst_app_src_do_seek), (gst_app_src_create), (gst_app_src_set_stream_type), (gst_app_src_get_stream_type), (gst_app_src_set_max_bytes), (gst_app_src_get_max_bytes), (gst_app_src_push_buffer), (gst_app_src_end_of_stream), (gst_app_src_uri_get_type), (gst_app_src_uri_get_protocols), (gst_app_src_uri_get_uri), (gst_app_src_uri_set_uri), (gst_app_src_uri_handler_init): * gst-libs/gst/app/gstappsrc.h: Measure max queue size in bytes instead. Add support for 3 modes of operation, streaming, seekable and random-access, making basesrc handle the scheduling modes for each. Add appsrc:// uri handler so that automatic plugging can be done from playbin2 or uridecodebin, for example. Added support for custom segment formats. Add support for push and pull based operations from the application. Expand the methods so that errors can be detected. Flush the queued buffers on seeks and when shutting down. Add signals to inform the app that a seek must happen. 2008-06-05 11:07:17 +0000 Sebastian Dröge gst/interleave/: Properly implement duration and position queries in bytes format. We have to take the upstream reply... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_add_new_pads), (gst_deinterleave_src_query): * gst/interleave/interleave.c: (gst_interleave_src_query_duration), (gst_interleave_src_query): Properly implement duration and position queries in bytes format. We have to take the upstream reply and divide/multiply it by the number of channels to get the correct result. 2008-06-04 21:18:53 +0000 Michael Smith sys/dshowvideosink/: Fix up copyright notice on new plugin. Original commit message from CVS: * sys/dshowvideosink/dshowvideofakesrc.cpp: * sys/dshowvideosink/dshowvideofakesrc.h: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: Fix up copyright notice on new plugin. 2008-06-04 17:02:38 +0000 Jon Trowbridge ext/dirac/gstdiracenc.cc: Update properties for recent dirac changes. Patch from Jonathan Rosser. Original commit message from CVS: * ext/dirac/gstdiracenc.cc: Update properties for recent dirac changes. Patch from Jonathan Rosser. 2008-06-04 11:33:21 +0000 Tim-Philipp Müller ext/x264/gstx264enc.c: Try harder not to crash when we get an EOS event but haven't set up the encoder yet (as may ha... Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_header_buf), (gst_x264_enc_sink_event), (gst_x264_enc_chain), (gst_x264_enc_encode_frame): Try harder not to crash when we get an EOS event but haven't set up the encoder yet (as may happen when upstream errors out with not-negotiated, for example). Also, always push the EOS event downstream. 2008-06-04 06:48:46 +0000 Sebastian Dröge gst/interleave/interleave.*: Use an always increasing integer for the number in the name of the requested sink pads t... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_pad_get_type), (gst_interleave_pad_get_property), (gst_interleave_pad_class_init), (gst_interleave_request_new_pad), (gst_interleave_release_pad): * gst/interleave/interleave.h: Use an always increasing integer for the number in the name of the requested sink pads to guarantuee a unique name. Add a "channel" property to GstInterleavePad to make it possible for applications to retrieve the channel number in the output for every pad. Use g_type_register_static_simple() instead of g_type_register_static() to save some relocations. 2008-06-03 15:41:05 +0000 Christian Schaller * autogen.sh: fix package name Original commit message from CVS: fix package name 2008-06-03 14:35:59 +0000 Sebastian Dröge gst/interleave/interleave.c: Stop GstCollectPads before calling the parent's state change function when going from PA... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_pad_get_type), (gst_interleave_change_state): Stop GstCollectPads before calling the parent's state change function when going from PAUSED to READY as we otherwise deadlock. Fixes bug #536258. 2008-06-03 11:10:32 +0000 Wim Taymans gst/h264parse/gsth264parse.*: Parse codec_data and use the nalu_size_length field to get the NALU length in packetize... Original commit message from CVS: * gst/h264parse/gsth264parse.c: (gst_nal_bs_init), (gst_h264_parse_sink_setcaps), (gst_h264_parse_chain_forward), (gst_h264_parse_queue_buffer), (gst_h264_parse_chain_reverse), (gst_h264_parse_chain): * gst/h264parse/gsth264parse.h: Parse codec_data and use the nalu_size_length field to get the NALU length in packetized h264. When queueing a packetized buffer in reverse mode, don't unref the buffer twice. Avoid accessing the buffer TIMESTAMP field after we pushed it on the adaptor. 2008-06-03 09:03:19 +0000 Sebastian Dröge gst/interleave/interleave.c: Use new gst_audio_check_channel_positions() function and register the GstInterleavePad t... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_check_channel_positions), (gst_interleave_set_channel_positions), (gst_interleave_class_init): Use new gst_audio_check_channel_positions() function and register the GstInterleavePad type from a threadsafe context. 2008-06-02 21:51:52 +0000 Michael Smith configure.ac: Revert accidental addition in configure.ac. Sorry. Original commit message from CVS: * configure.ac: Revert accidental addition in configure.ac. Sorry. 2008-06-02 18:23:54 +0000 Michael Smith Add a new win32 videosink. Uses the DirectShow renderers for high-performance video rendering on win32. Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/dshowvideosink/Makefile.am: * sys/dshowvideosink/README: * sys/dshowvideosink/dshowvideofakesrc.cpp: * sys/dshowvideosink/dshowvideofakesrc.h: * sys/dshowvideosink/dshowvideosink.cpp: * sys/dshowvideosink/dshowvideosink.h: Add a new win32 videosink. Uses the DirectShow renderers for high-performance video rendering on win32. Currently only supports some YUV formats. Rank PRIMARY, since it's much more useful for the common cases that the directdraw sink (which only does RGB). 2008-06-02 18:06:37 +0000 Tim-Philipp Müller ext/spc/Makefile.am: Dist tag.h Original commit message from CVS: * ext/spc/Makefile.am: Dist tag.h 2008-06-02 17:06:34 +0000 Wim Taymans ext/faad/gstfaad.c: Always drain before activating the new segment. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_sink_event): Always drain before activating the new segment. 2008-06-02 12:42:14 +0000 Sebastian Dröge gst/interleave/interleave.*: Allow setting channel positions via a property and allow using the channel positions on ... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_pad_get_type), (gst_interleave_finalize), (gst_audio_check_channel_positions), (gst_interleave_set_channel_positions), (gst_interleave_class_init), (gst_interleave_init), (gst_interleave_set_property), (gst_interleave_get_property), (gst_interleave_request_new_pad), (gst_interleave_release_pad), (gst_interleave_sink_setcaps), (gst_interleave_src_query_duration), (gst_interleave_src_query_latency), (gst_interleave_collected): * gst/interleave/interleave.h: Allow setting channel positions via a property and allow using the channel positions on the input as the channel positions of the output. Fix some broken logic and memory leaks. * tests/check/Makefile.am: * tests/check/elements/interleave.c: (src_handoff_float32), (sink_handoff_float32), (GST_START_TEST), (interleave_suite): Add unit tests for checking correct handling of channel positions. 2008-06-02 10:18:25 +0000 Wim Taymans ext/faad/gstfaad.*: Add basic reverse playback support. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_dispose), (clear_queued), (flush_queued), (gst_faad_drain), (gst_faad_do_raw_seek), (gst_faad_src_event), (gst_faad_sink_event), (gst_faad_chain), (gst_faad_change_state): * ext/faad/gstfaad.h: Add basic reverse playback support. Clear decoder state after disconts. Remove some unused code. Mark output buffers with a discont after a decoding error. 2008-06-02 07:37:31 +0000 Sjoerd Simons gst/mpeg4videoparse/mpeg4videoparse.c: Fix mpeg4videoparse on big endian architectures. Fixes bug #536042. Original commit message from CVS: Patch by: Sjoerd Simons * gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_handle_vos): Fix mpeg4videoparse on big endian architectures. Fixes bug #536042. 2008-05-29 19:56:53 +0000 Sebastian Dröge tests/check/elements/mplex.c: Don't use the deprecated gst_element_get_pad(). Original commit message from CVS: * tests/check/elements/mplex.c: (setup_src_pad), (teardown_src_pad): Don't use the deprecated gst_element_get_pad(). 2008-05-29 19:11:47 +0000 Sebastian Dröge examples/directfb/gstdfb.c: Don't use the deprecated gst_element_get_pad(). Original commit message from CVS: * examples/directfb/gstdfb.c: (main): Don't use the deprecated gst_element_get_pad(). 2008-05-28 08:53:00 +0000 Onkar Shinde sys/vcd/vcdsrc.c: Allow the track to be set by using the uri. Fixes #535043. Original commit message from CVS: Based on patch by: * sys/vcd/vcdsrc.c: (gst_vcdsrc_uri_get_uri), (gst_vcdsrc_uri_set_uri): Allow the track to be set by using the uri. Fixes #535043. 2008-05-28 08:14:16 +0000 Sebastian Dröge gst/interleave/interleave.c: Implement latency query. Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_src_query_duration), (gst_interleave_src_query_latency), (gst_interleave_src_query): Implement latency query. 2008-05-27 17:53:58 +0000 Thijs Vermeir gst/mpegvideoparse/mpegvideoparse.c: Add GST_BUFFER_FLAG_DELTA_UNIT to not I frame buffers Original commit message from CVS: * gst/mpegvideoparse/mpegvideoparse.c: Add GST_BUFFER_FLAG_DELTA_UNIT to not I frame buffers 2008-05-27 16:48:10 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Break out of callbacks when we are shutting down. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_propagate_property_to_jitterbuffer), (gst_rtp_bin_change_state), (new_payload_found), (new_ssrc_pad_found): Break out of callbacks when we are shutting down. Make sure no state changes can happen when we reconfigure. 2008-05-27 16:32:18 +0000 Wim Taymans configure.ac: Require CVS core and base for new audio clock reset method. Original commit message from CVS: * configure.ac: Require CVS core and base for new audio clock reset method. * ext/alsaspdif/alsaspdifsink.c: (alsaspdifsink_change_state): Reset the audio clock. See #521761. 2008-05-26 17:52:21 +0000 Wim Taymans ext/jack/gstjackaudiosink.c: Include the element name in the port name to avoid duplicate port names. Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (gst_jack_audio_sink_allocate_channels): Include the element name in the port name to avoid duplicate port names. 2008-05-26 10:28:47 +0000 Sebastian Dröge gst/interleave/deinterleave.c: Add another example launch line. Original commit message from CVS: * gst/interleave/deinterleave.c: Add another example launch line. * gst/interleave/interleave.c: (interleave_24), (gst_interleave_finalize), (gst_interleave_base_init), (gst_interleave_class_init), (gst_interleave_init), (gst_interleave_request_new_pad), (gst_interleave_release_pad), (gst_interleave_change_state), (__remove_channels), (__set_channels), (gst_interleave_sink_getcaps), (gst_interleave_set_process_function), (gst_interleave_sink_setcaps), (gst_interleave_sink_event), (gst_interleave_src_query_duration), (gst_interleave_src_query), (forward_event_func), (forward_event), (gst_interleave_src_event), (gst_interleave_collected): * gst/interleave/interleave.h: Major rewrite of interleave using GstCollectpads. This new version also supports almost all raw audio formats and has better caps negotiation. Fixes bug #506594. Also update docs and add some more examples. * tests/check/elements/interleave.c: (interleave_chain_func), (GST_START_TEST), (src_handoff_float32), (sink_handoff_float32), (interleave_suite): Add some more extensive unit tests for interleave. 2008-05-26 10:09:29 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: When checking the seqnum, reset the jitterbuffer if the gap is too big, we need ... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): When checking the seqnum, reset the jitterbuffer if the gap is too big, we need to do this so that we can better handle a restarted source. Fix some comments. * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew), (rtp_jitter_buffer_insert): Tweak the skew resync diff. Use our working seqnum compare function in -base. Rework the jitterbuffer insert code to make it clearer and more performant by only retrieving the seqnum of the input buffer once and by adding some G_LIKELY compiler hints. Improve debugging for duplicate packets. * gst/rtpmanager/rtpsource.c: (rtp_source_process_rtp): Fix a comment, we don't do skew correction here.. 2008-05-26 10:00:24 +0000 Håvard Graff gst/rtpmanager/gstrtpbin.c: Propagate the do-lost and latency properties to the jitterbuffers when they are changed o... Original commit message from CVS: Patch by: Håvard Graff * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_propagate_property_to_jitterbuffer), (gst_rtp_bin_set_property): Propagate the do-lost and latency properties to the jitterbuffers when they are changed on rtpbin. 2008-05-26 09:57:40 +0000 Wim Taymans Don't use _gst_pad(). Original commit message from CVS: * examples/switch/switcher.c: (switch_timer): * gst/replaygain/gstrgvolume.c: (gst_rg_volume_init): * gst/rtpmanager/gstrtpclient.c: (create_stream): * gst/sdp/gstsdpdemux.c: (gst_sdp_demux_stream_configure_udp), (gst_sdp_demux_stream_configure_udp_sink): * tests/check/elements/deinterleave.c: (GST_START_TEST), (pad_added_setup_data_check_float32_8ch_cb): * tests/check/elements/rganalysis.c: (send_eos_event), (send_tag_event): Don't use _gst_pad(). 2008-05-22 19:47:53 +0000 Sebastian Dröge docs/plugins/: Add interleave/deinterleave to the docs and while at that run make update in docs/plugins. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: Add interleave/deinterleave to the docs and while at that run make update in docs/plugins. * gst/interleave/deinterleave.c: Add a parapraph about using a queue and audioconvert after the source pads to the docs. 2008-05-22 18:55:09 +0000 Sebastian Dröge gst/interleave/deinterleave.*: Don't set a getcaps() function on the src pads as it's not required and the default ge... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_base_init), (gst_deinterleave_class_init), (gst_deinterleave_init), (gst_deinterleave_add_new_pads), (gst_deinterleave_sink_getcaps): * gst/interleave/deinterleave.h: Don't set a getcaps() function on the src pads as it's not required and the default getcaps() function returns the correct results for our src pads. Complete documentation and add myself to the authors of the element. 2008-05-22 16:33:25 +0000 Tim-Philipp Müller tests/icles/: Small oss4 test that probes for available devices and retrieves their caps and mixer tracks and all tha... Original commit message from CVS: * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/test-oss4.c: (opt_show_mixer_messages), (WAIT_TIME), (show_mixer_messages), (probe_mixer_tracks), (probe_pad), (probe_details), (probe_element), (main): Small oss4 test that probes for available devices and retrieves their caps and mixer tracks and all that. Also allows testing of mixer change messages on the bus. 2008-05-22 15:14:26 +0000 Tim-Philipp Müller sys/oss4/: Make device-name probing in NULL state work better (e.g. for the gnome-control-center sound capplet). Original commit message from CVS: * sys/oss4/oss4-mixer.c: (gst_oss4_mixer_open): * sys/oss4/oss4-property-probe.c: (gst_oss4_property_probe_find_device_name), (gst_oss4_property_probe_find_device_name_nofd): * sys/oss4/oss4-property-probe.h: * sys/oss4/oss4-sink.c: (gst_oss4_sink_get_property): * sys/oss4/oss4-source.c: (gst_oss4_source_get_property): Make device-name probing in NULL state work better (e.g. for the gnome-control-center sound capplet). 2008-05-22 14:03:05 +0000 Sjoerd Simons gst/mpeg4videoparse/mpeg4videoparse.c: Move some code around to integrate the startcode searching with the other bits... Original commit message from CVS: Patch by: Sjoerd Simons * gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_push), (gst_mpeg4vparse_drain), (gst_mpeg4vparse_chain), (gst_mpeg4vparse_change_state): Move some code around to integrate the startcode searching with the other bits of parsing, avoid a whole bunch of peeks. Get rid of invalid data that should not happen according to the specs. Fixes #533559. 2008-05-20 09:36:56 +0000 Bastien Nocera ext/mythtv/gstmythtvsrc.c: Correctly set duration to get a more correct seek bar in totem. Original commit message from CVS: Patch by: Bastien Nocera * ext/mythtv/gstmythtvsrc.c: (gst_mythtv_src_class_init), (gst_mythtv_src_init), (gst_mythtv_src_clear), (do_read_request_response), (gst_mythtv_src_create), (gst_mythtv_src_start): Correctly set duration to get a more correct seek bar in totem. Disable query and event functions as they don't work and do some smaller cleanup. Fixes bug #533736. 2008-05-20 09:04:48 +0000 Brian Koropoff ext/spc/: Add support for some essential features like seeking, reading song duration and extended tags. Fixes bug #4... Original commit message from CVS: Patch by: Brian Koropoff * ext/spc/Makefile.am: * ext/spc/gstspc.c: (gst_spc_dec_class_init), (gst_spc_dec_src_query_type), (gst_spc_dec_init), (gst_spc_dec_dispose), (gst_spc_dec_sink_event), (gst_spc_duration), (gst_spc_fadeout), (gst_spc_dec_src_event), (gst_spc_dec_src_query), (spc_play), (spc_setup): * ext/spc/gstspc.h: * ext/spc/tag.c: (spc_tag_is_extended), (spc_tag_is_text_format), (spc_tag_is_present), (spc_tag_unpack_date), (spc_tag_clear), (spc_tag_get_info), (spc_tag_free): * ext/spc/tag.h: Add support for some essential features like seeking, reading song duration and extended tags. Fixes bug #454151. 2008-05-19 12:32:06 +0000 Sebastian Dröge tests/check/elements/deinterleave.c: Set keep-positions property to TRUE for the 8 channel test to ensure that the or... Original commit message from CVS: * tests/check/elements/deinterleave.c: (GST_START_TEST): Set keep-positions property to TRUE for the 8 channel test to ensure that the original channel position is set on the output. 2008-05-19 07:46:05 +0000 Sebastian Dröge gst/interleave/deinterleave.*: Add a property to select whether channel positions should be kept on the mono output b... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_class_init), (gst_deinterleave_init), (gst_deinterleave_add_new_pads), (gst_deinterleave_set_pads_caps), (gst_deinterleave_set_property), (gst_deinterleave_get_property): * gst/interleave/deinterleave.h: Add a property to select whether channel positions should be kept on the mono output buffers or should be dropped. 2008-05-18 10:27:25 +0000 Jan Schmidt docs/Makefile.am: Oops - fix the spelling of the variable I added. Original commit message from CVS: * docs/Makefile.am: Oops - fix the spelling of the variable I added. 2008-05-17 19:39:53 +0000 Sebastian Dröge gst/interleave/deinterleave.*: Queue events until src pads were added and they can be sent. Otherwise downstream will... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_finalize), (gst_deinterleave_init), (gst_deinterleave_sink_event), (gst_deinterleave_process), (gst_deinterleave_sink_activate_push): * gst/interleave/deinterleave.h: Queue events until src pads were added and they can be sent. Otherwise downstream will never get the first newsegment event. 2008-05-17 14:05:03 +0000 Sebastian Dröge gst/interleave/deinterleave.c: Always set the channel positions when gst_audio_get_channel_positions() returns someth... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_sink_setcaps), (gst_deinterleave_getcaps): Always set the channel positions when gst_audio_get_channel_positions() returns something, even if they're not set in the caps. This makes sure that the output channels can be interleaved again correctly in the mono/stereo cases too. Don't ask for the peercaps of the current pad in getcaps() as this might call getcaps() again and deadlock. 2008-05-16 22:00:49 +0000 Sebastian Dröge ext/timidity/gstwildmidi.c: Check some more common locations for a valid configuration file. Original commit message from CVS: * ext/timidity/gstwildmidi.c: (wildmidi_open_config): Check some more common locations for a valid configuration file. Fixes bug #533435. Packagers should still #define WILDMIDI_CFG to the distributions default location. 2008-05-16 21:56:24 +0000 Sebastian Dröge gst/interleave/: Add support for all raw audio formats and provide better negotiation if the caps are changing. Original commit message from CVS: * gst/interleave/Makefile.am: * gst/interleave/deinterleave.c: (deinterleave_24), (gst_deinterleave_finalize), (gst_deinterleave_base_init), (gst_deinterleave_class_init), (gst_deinterleave_init), (gst_deinterleave_add_new_pads), (gst_deinterleave_set_pads_caps), (gst_deinterleave_set_process_function), (gst_deinterleave_sink_setcaps), (__remove_channels), (__set_channels), (gst_deinterleave_getcaps), (gst_deinterleave_process), (gst_deinterleave_chain), (gst_deinterleave_sink_activate_push): * gst/interleave/deinterleave.h: Add support for all raw audio formats and provide better negotiation if the caps are changing. Don't allow changes of the channel positions and set the position of the corresponding channel on the src pad caps. General cleanup and smaller bugfixes. * tests/check/elements/deinterleave.c: (float_buffer_check_probe): Check the channel positions on the output buffer caps. 2008-05-16 19:56:30 +0000 Jan Schmidt docs/Makefile.am: Don't attempt to build plugin docs when they're disabled. Original commit message from CVS: * docs/Makefile.am: Don't attempt to build plugin docs when they're disabled. * gst/bayer/Makefile.am: Add libgstvideo to the link. * gst/rtpmanager/Makefile.am: Fix link order, and move LIBS things to _LIBS 2008-05-16 14:49:07 +0000 Jan Schmidt docs/plugins/gst-plugins-bad-plugins.types: Remove bogus attempt to pull 'metadata' plugin's base class into the docs. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.types: Remove bogus attempt to pull 'metadata' plugin's base class into the docs. 2008-05-14 21:02:19 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Simply drop bad RTP packets with a warning instead of just posting an error and ... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain): Simply drop bad RTP packets with a warning instead of just posting an error and stopping. This is a perfectly recoverable event and we don't force people to use an rtpbin to filter out bad packets first. 2008-05-14 20:57:31 +0000 Wim Taymans gst/mpeg4videoparse/mpeg4videoparse.c: Set fixed caps on the srcpad after we created the pad... Original commit message from CVS: * gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_init): Set fixed caps on the srcpad after we created the pad... 2008-05-14 16:21:05 +0000 Tim-Philipp Müller tests/check/Makefile.am: Remove deinterleave test from VALGRIND_TO_FIX again now that there are suppressions in gst.s... Original commit message from CVS: * tests/check/Makefile.am: Remove deinterleave test from VALGRIND_TO_FIX again now that there are suppressions in gst.supp which make this work for me. 2008-05-14 14:19:47 +0000 Tim-Philipp Müller tests/check/Makefile.am: Add deinterleave unit test to VALGRIND_TO_FIX, since it causes weird invalid free errors in ... Original commit message from CVS: * tests/check/Makefile.am: Add deinterleave unit test to VALGRIND_TO_FIX, since it causes weird invalid free errors in valgrind/libc after _exit for some reason. * tests/check/elements/deinterleave.c: (pads_created), (set_channel_positions), (src_handoff_float32_8ch), (float_buffer_check_probe), (pad_added_setup_data_check_float32_8ch_cb), (make_fake_src_8chans_float32), (GST_START_TEST), (deinterleave_suite): Add some more deinterleave unit test bits I had locally. 2008-05-14 13:57:41 +0000 Tim-Philipp Müller gst/audioresample/gstaudioresample.c: Revert previous change which made basetransform handle buffer_alloc and which b... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init): Revert previous change which made basetransform handle buffer_alloc and which breaks things badly in the non-passthrough case since it returned buffers with a different (ie. sometimes smaller) size than the size requested. 2008-05-14 07:32:44 +0000 Sebastian Dröge gst/interleave/: Split definitions into separate header files for better documentation generation. Original commit message from CVS: * gst/interleave/Makefile.am: * gst/interleave/deinterleave.h: * gst/interleave/interleave.h: * gst/interleave/plugin.h: Split definitions into separate header files for better documentation generation. * gst/interleave/deinterleave.c: (gst_deinterleave_base_init), (gst_deinterleave_class_init), (gst_deinterleave_sink_setcaps), (gst_deinterleave_process): Don't use alloca, allow caps changes as long as the number of channels does not change, don't use g_warning, return NOT_NEGOTIATED as early as possible and some other cleanup. * gst/interleave/interleave.c: (gst_interleave_base_init), (gst_interleave_class_init): Do some random cleanup. * tests/check/Makefile.am: * tests/check/elements/deinterleave.c: (GST_START_TEST), (deinterleave_chain_func), (deinterleave_pad_added), (deinterleave_suite): Add unit tests for the deinterleave element. 2008-05-13 17:21:07 +0000 Sjoerd Simons gst/mpeg4videoparse/mpeg4videoparse.*: Parse the config data (either outbound or in the stream) to set width/height, ... Original commit message from CVS: Patch by: Sjoerd Simons * gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_set_new_caps), (gst_mpeg4vparse_align), (get_bits), (next_start_code), (gst_mpeg4vparse_handle_vos), (gst_mpeg4vparse_push), (gst_mpeg4vparse_drain), (gst_mpeg4vparse_chain), (gst_mpeg4vparse_sink_setcaps), (gst_mpeg4vparse_sink_event), (gst_mpeg4vparse_src_query), (gst_mpeg4vparse_set_property), (gst_mpeg4vparse_get_property), (gst_mpeg4vparse_class_init), (gst_mpeg4vparse_init): * gst/mpeg4videoparse/mpeg4videoparse.h: Parse the config data (either outbound or in the stream) to set width/height, apect ration, framerate in the caps if applicable. Mark frames as GST_BUFFER_FLAG_DELTA_UNIT when they are not intra frames Set the timestamps of outgoing buffers to the buffer in which the VOP header was found. Drop incoming data untill configuration is found (by default, configurable using a property). Report a 1 frame latency. Fixes #532723. 2008-05-13 16:16:35 +0000 Wim Taymans gst/real/gstrealvideodec.c: Add some debug for where we are searching for libraries. Original commit message from CVS: * gst/real/gstrealvideodec.c: (open_library): Add some debug for where we are searching for libraries. 2008-05-13 10:59:49 +0000 Sjoerd Simons tests/check/elements/audioresample.c: Add unit test for the latest basetransform negotiation changes. Original commit message from CVS: Patch by: Sjoerd Simons * tests/check/elements/audioresample.c: (live_switch_alloc_only_48000), (live_switch_get_sink_caps), (live_switch_push), (GST_START_TEST): Add unit test for the latest basetransform negotiation changes. See bug #526768. 2008-05-13 09:06:51 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Actually add the do-lost property to the object. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init): Actually add the do-lost property to the object. 2008-05-12 18:43:41 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Avoid waiting for a negative (huge) duration when the last packet has a lower ti... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): Avoid waiting for a negative (huge) duration when the last packet has a lower timestamp than the current packet. 2008-05-12 14:28:09 +0000 Peter Kjellerstedt gst/rtpmanager/gstrtpsession.c: Make sure to unref the rtpsession returned by gst_pad_get_parent() to prevent a memor... Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_query_send_rtcp_src): Make sure to unref the rtpsession returned by gst_pad_get_parent() to prevent a memory leak. 2008-05-12 14:17:06 +0000 Jan Schmidt docs/plugins/gst-plugins-bad-plugins-sections.txt: Quieten some docs output Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Quieten some docs output 2008-05-12 14:12:08 +0000 Jan Schmidt gst/rtpmanager/gstrtpjitterbuffer.c: Initialise with GST_CLOCK_TIME_NONE to avoid compiler warning. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): Initialise with GST_CLOCK_TIME_NONE to avoid compiler warning. 2008-05-11 17:23:20 +0000 Jan Schmidt Random doc of the day: the deinterlace element. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-gstinterlace.xml: * gst/deinterlace/gstdeinterlace.c: * gst/deinterlace/gstdeinterlace.h: Random doc of the day: the deinterlace element. 2008-05-09 10:21:07 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Make sure all schedule EIT and non-actual transport stream Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: Make sure all schedule EIT and non-actual transport stream EITs are parsed. Also add present-following flag and actual-transport-stream flag to eit bus message. 2008-05-09 07:41:58 +0000 Peter Kjellerstedt gst/rtpmanager/rtpsource.c: Make sure to unref the caps used by RTPSource to prevent a memory leak. Original commit message from CVS: * gst/rtpmanager/rtpsource.c: (rtp_source_finalize): Make sure to unref the caps used by RTPSource to prevent a memory leak. 2008-05-08 19:16:17 +0000 Clive Wright sys/oss4/oss4-mixer-slider.c: Apparently mono sliders have the mono value repeated in the upper bits, so mask those o... Original commit message from CVS: Based on patch by: Clive Wright * sys/oss4/oss4-mixer-slider.c: (gst_oss4_mixer_slider_unpack_volume): Apparently mono sliders have the mono value repeated in the upper bits, so mask those out when reading them. Probably makes the mixer applet work properly in some more cases. 2008-05-08 09:43:33 +0000 Olivier Crete gst/rtpmanager/rtpsession.c: Unlock the session lock when calling one of our callbacks. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/rtpsession.c: (source_clock_rate), (rtp_session_process_bye), (rtp_session_send_bye_locked): Unlock the session lock when calling one of our callbacks. Fixes #532011. 2008-05-08 06:23:39 +0000 Sjoerd Simons gst/rtpmanager/gstrtpsession.c: Send RTP BYE command on EOS. Fixes bug #531955. Original commit message from CVS: Patch by: Sjoerd Simons * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_event_send_rtp_sink): Send RTP BYE command on EOS. Fixes bug #531955. 2008-05-08 06:20:42 +0000 Sjoerd Simons gst/audioresample/gstaudioresample.c: Let audioresample use the buffer allocation of basetransform instead of it's ow... Original commit message from CVS: Patch by: Sjoerd Simons * gst/audioresample/gstaudioresample.c: (gst_audioresample_init): Let audioresample use the buffer allocation of basetransform instead of it's own stuff. * tests/check/elements/audioresample.c: (alloc_only_48000), (GST_START_TEST), (audioresample_suite): Add unit test for the recent basetransform bugfix, where upstream changes caps to something that can't be passed through anymore. 2008-05-07 20:25:09 +0000 Ole André Vadla Ravnås win32/common/config.h.in: Don't define GST_FUNCTION, if GLib supports MSVC we'd much rather use the real thing than h... Original commit message from CVS: * win32/common/config.h.in: Don't define GST_FUNCTION, if GLib supports MSVC we'd much rather use the real thing than having "???" unconditionally. 2008-05-07 10:38:23 +0000 Wim Taymans gst-libs/gst/app/: Add marshal.list, make it compile and add to cvsignore. Original commit message from CVS: * gst-libs/gst/app/.cvsignore: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp-marshal.list: Add marshal.list, make it compile and add to cvsignore. * gst-libs/gst/app/gstappsink.c: (gst_app_sink_dispose), (gst_app_sink_stop): Small cleanups. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_set_property), (gst_app_src_get_property), (gst_app_src_unlock), (gst_app_src_unlock_stop), (gst_app_src_start), (gst_app_src_stop), (gst_app_src_create), (gst_app_src_set_caps), (gst_app_src_get_caps), (gst_app_src_set_size), (gst_app_src_get_size), (gst_app_src_set_seekable), (gst_app_src_get_seekable), (gst_app_src_set_max_buffers), (gst_app_src_get_max_buffers), (gst_app_src_push_buffer), (gst_app_src_end_of_stream): * gst-libs/gst/app/gstappsrc.h: Beat appsrc in shape, add signals and actions. Add some docs. Add properties for caps, size, seekability and max-buffers. Fix unlock/stop code. 2008-05-07 07:51:36 +0000 Tim-Philipp Müller configure.ac: Error out if we don't have the required versions of core/base. Original commit message from CVS: * configure.ac: Error out if we don't have the required versions of core/base. 2008-05-05 10:27:45 +0000 Wim Taymans gst-libs/gst/app/gstappsink.*: Start some docs. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init), (gst_app_sink_init), (gst_app_sink_set_property), (gst_app_sink_get_property), (gst_app_sink_unlock_start), (gst_app_sink_unlock_stop), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_set_caps), (gst_app_sink_set_drop), (gst_app_sink_get_drop): * gst-libs/gst/app/gstappsink.h: Start some docs. Add property to drop buffers when the queue is filled Fix unlocking and flushing when the queues are filled. 2008-05-02 14:40:08 +0000 Christian Schaller * gst-plugins-bad.spec.in: add wildmidi plugin Original commit message from CVS: add wildmidi plugin 2008-04-29 19:11:56 +0000 Jens Granseuer gst/subenc/gstsrtenc.c: Declare variables at the beginning of blocks. Fixes compilation with gcc 2.x and other compil... Original commit message from CVS: Patch by: Jens Granseuer * gst/subenc/gstsrtenc.c: (gst_srt_enc_timestamp_to_string): Declare variables at the beginning of blocks. Fixes compilation with gcc 2.x and other compilers. Fixes bug #530611. 2008-04-29 09:02:35 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Detect SI pids (NIT, SDT, EIT etc.) based on table id and not by pid number. This allows for exampl... Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtspacketizer.h: * gst/mpegtsparse/mpegtsparse.c: Detect SI pids (NIT, SDT, EIT etc.) based on table id and not by pid number. This allows for example the EPG data from UK's freesat to be picked up. 2008-04-25 23:22:56 +0000 Sebastian Dröge ext/: Cast NULL sentinels to void * as NULL is defined as an integer constant in most environments when using C++ and... Original commit message from CVS: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/soundtouch/gstbpmdetect.cc: Cast NULL sentinels to void * as NULL is defined as an integer constant in most environments when using C++ and it's size might be different from a pointer. 2008-04-25 18:18:47 +0000 Wim Taymans gst-libs/gst/app/gstappsink.*: Add more docs. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init), (gst_app_sink_init), (gst_app_sink_set_property), (gst_app_sink_get_property), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_set_emit_signals), (gst_app_sink_get_emit_signals), (gst_app_sink_set_max_buffers), (gst_app_sink_get_max_buffers), (gst_app_sink_pull_buffer): * gst-libs/gst/app/gstappsink.h: Add more docs. Add signals for when preroll and render buffers are available. Add property to control signal emission. Add property to control the max queue size. 2008-04-25 18:13:07 +0000 Michael Smith gst-libs/gst/dshow/Makefile.am: Use CXXFLAGS rather than CFLAGS; these are C++ files. Original commit message from CVS: * gst-libs/gst/dshow/Makefile.am: Use CXXFLAGS rather than CFLAGS; these are C++ files. Define required constants appropriately. * sys/dshowdecwrapper/Makefile.am: Add required include dir, libraries. Define required constants appropriately. 2008-04-25 11:32:09 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.*: Expose new jitterbuffer property in rtpbin too. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_stream), (gst_rtp_bin_init), (gst_rtp_bin_set_property), (gst_rtp_bin_get_property): * gst/rtpmanager/gstrtpbin.h: Expose new jitterbuffer property in rtpbin too. 2008-04-25 11:22:13 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Disable sending out rtp packet lost events by default and make a property to ena... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): Disable sending out rtp packet lost events by default and make a property to enabe it. We will likely enable it by default when the base depayloaders have a default handler for them so that we don't send these events all through the pipeline for now. 2008-04-25 09:35:43 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Remove private version of a function that is in -base now. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_src_event), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Remove private version of a function that is in -base now. Add src event handler. Rework the jitterbuffer pushing loop so that it can quickly react to lost packets and instruct the depayloader of them. This can then be used to implement error concealment data. 2008-04-25 08:21:06 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Set up some internal links functions for the RTCP and sync pads because the defaults ... Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_query_send_rtcp_src), (create_recv_rtcp_sink), (create_send_rtcp_src): Set up some internal links functions for the RTCP and sync pads because the defaults are really not correct. Implement a query handler for the RTCP src pad, mostly to correctly report about the latency. 2008-04-25 08:15:58 +0000 Wim Taymans gst/rtpmanager/: Also keep track of the first buffer timestamp together with the first Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain): * gst/rtpmanager/rtpsession.c: (update_arrival_stats), (rtp_session_process_sr), (rtp_session_on_timeout): * gst/rtpmanager/rtpsource.c: (rtp_source_init), (calculate_jitter): * gst/rtpmanager/rtpsource.h: * gst/rtpmanager/rtpstats.h: Also keep track of the first buffer timestamp together with the first RTP timestamp as they both are needed to construct the timing of outgoing packets in the jitterbuffer and are therefore also needed to manage lip-sync. This fixes lip-sync if the first RTP packets arrive with a wildly different gap. 2008-04-25 08:07:36 +0000 Wim Taymans gst/flv/gstflvdemux.c: Forward unknown queries upstream instead of returning FALSE on them. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_query): Forward unknown queries upstream instead of returning FALSE on them. 2008-04-24 22:19:48 +0000 Sebastian Dröge Add support for the new libmpcdec API which magically gets us support for SV8 files. Also do some random cleanup. Fix... Original commit message from CVS: * configure.ac: * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init), (gst_musepackdec_init), (gst_musepackdec_dispose), (gst_musepackdec_handle_seek_event), (gst_musepack_stream_init), (gst_musepackdec_loop), (plugin_init): * ext/musepack/gstmusepackdec.h: * ext/musepack/gstmusepackreader.c: * ext/musepack/gstmusepackreader.h: Add support for the new libmpcdec API which magically gets us support for SV8 files. Also do some random cleanup. Fixes bug #526905. 2008-04-24 21:24:18 +0000 Jan Schmidt configure.ac: Back to development -> 0.10.7.1 Original commit message from CVS: * configure.ac: Back to development -> 0.10.7.1 === release 0.10.7 === === release 0.10.7 === 2008-04-24 00:18:30 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst-plugins-bad.doap: * po/LINGUAS: * win32/common/config.h: Release 0.10.7 Original commit message from CVS: Release 0.10.7 2008-04-24 00:15:27 +0000 Jan Schmidt * common: * po/af.po: * po/az.po: * po/bg.po: * po/cs.po: * po/da.po: * po/de.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/fr.po: * po/hu.po: * po/it.po: * po/ky.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/ru.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-04-22 15:07:35 +0000 Stefan Kost ext/faad/gstfaad.c: Don't leak GstAudioChannelPosition. Fixes #529378. Original commit message from CVS: * ext/faad/gstfaad.c: Don't leak GstAudioChannelPosition. Fixes #529378. 2008-04-22 08:18:05 +0000 Wim Taymans gst/sdp/gstsdpdemux.c: Ref caps, see #528245. Original commit message from CVS: * gst/sdp/gstsdpdemux.c: (request_pt_map): Ref caps, see #528245. 2008-04-22 00:21:56 +0000 Jan Schmidt configure.ac: 0.10.6.4 pre-release Original commit message from CVS: * configure.ac: 0.10.6.4 pre-release 2008-04-21 21:54:11 +0000 Sebastian Dröge tests/check/elements/rganalysis.c: Don't leak a tag list. Fixes bug #529285. Original commit message from CVS: * tests/check/elements/rganalysis.c: (GST_START_TEST): Don't leak a tag list. Fixes bug #529285. 2008-04-21 21:52:30 +0000 Sebastian Dröge tests/check/elements/ofa.c: Don't leak the tags string and tag list. Fixes bug #529283. Original commit message from CVS: * tests/check/elements/ofa.c: (bus_handler): Don't leak the tags string and tag list. Fixes bug #529283. 2008-04-21 08:26:37 +0000 Olivier Crete gst/rtpmanager/gstrtpbin.c: Ref caps when inserting into the cache. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (new_ssrc_pad_found): Ref caps when inserting into the cache. Don't leak pads. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_get_clock_rate), (gst_rtp_jitter_buffer_query): Avoid a caps leak. Don't leak refcount in query. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps), (gst_rtp_pt_demux_chain): Avoid caps leaks. * gst/rtpmanager/gstrtpsession.c: (source_get_sdes_structure), (gst_rtp_session_init), (return_true), (gst_rtp_session_clear_pt_map), (gst_rtp_session_cache_caps), (gst_rtp_session_clock_rate): Ref caps when inserting into the cache. Fix some more caps leaks. Fixes #528245. 2008-04-18 18:51:08 +0000 Tim-Philipp Müller tests/icles/metadata_editor.c: Add cast to placate gcc 4.1.2. Original commit message from CVS: * tests/icles/metadata_editor.c: Add cast to placate gcc 4.1.2. 2008-04-17 23:01:11 +0000 Jan Schmidt configure.ac: 0.10.6.3 pre-release Original commit message from CVS: * configure.ac: 0.10.6.3 pre-release 2008-04-17 18:28:05 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Revert patch that added a loop timeout. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Revert patch that added a loop timeout. Fixes #528614. 2008-04-17 07:31:44 +0000 Wim Taymans gst/rtpmanager/: Unset GValues after g_signal_emitv so that we avoid a refcount leak. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (get_pt_map), (free_client), (gst_rtp_bin_associate), (gst_rtp_bin_get_free_pad_name): * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_get_clock_rate): * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps): * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_clock_rate): Unset GValues after g_signal_emitv so that we avoid a refcount leak. Don't leak a padname. Don't leak client streams list. Lock rtpbin when associating streams. Fixes #528245. 2008-04-16 09:50:17 +0000 Sebastian Dröge tests/check/Makefile.am: Don't inlcude dc1394src in the generic/states test as it requires special hardware. Fixes bu... Original commit message from CVS: * tests/check/Makefile.am: Don't inlcude dc1394src in the generic/states test as it requires special hardware. Fixes bug #528011. 2008-04-16 09:48:06 +0000 Sebastian Dröge tests/check/elements/ofa.c: Only check if the generated fingerprints are valid Base64. The fingerprints are different... Original commit message from CVS: * tests/check/elements/ofa.c: (bus_handler), (GST_START_TEST): Only check if the generated fingerprints are valid Base64. The fingerprints are different when running on different architectures which is a) no problem because the fingerprints are tolerant enough and b) is caused by libofa. Fixes bug #528266. 2008-04-16 09:45:30 +0000 Sebastian Dröge ext/timidity/Makefile.am: Dist all source files, no matter if only timidity or wildmidi or nothing is found by config... Original commit message from CVS: * ext/timidity/Makefile.am: Dist all source files, no matter if only timidity or wildmidi or nothing is found by configure. Fixes bug #528000. 2008-04-14 20:09:24 +0000 Tim-Philipp Müller gst-plugins-bad.spec.in: Remove souphttpsrc plugin from spec files, it's moved to -good. Original commit message from CVS: * gst-plugins-bad.spec.in: Remove souphttpsrc plugin from spec files, it's moved to -good. 2008-04-13 23:11:09 +0000 Jan Schmidt tests/check/Makefile.am: Remove soup test certificates from the dist. Original commit message from CVS: * tests/check/Makefile.am: Remove soup test certificates from the dist. 2008-04-13 20:54:52 +0000 Jan Schmidt ext/dirac/gstdiracenc.cc: Fix compilation by casting string constants. Original commit message from CVS: * ext/dirac/gstdiracenc.cc: Fix compilation by casting string constants. * sys/Makefile.am: Fix WININET_DIR variable reference. 2008-04-12 23:32:14 +0000 Jan Schmidt Remove soup plugin that's moved to -good (#523124) Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-soup.xml: * ext/Makefile.am: * ext/soup/Makefile.am: * ext/soup/gstsouphttpsrc.c: * ext/soup/gstsouphttpsrc.h: * tests/check/Makefile.am: * tests/check/elements/souphttpsrc.c: * tests/check/test-cert.pem: * tests/check/test-key.pem: Remove soup plugin that's moved to -good (#523124) 2008-04-11 23:19:21 +0000 Tim-Philipp Müller gst/flv/gstflvparse.c: Handle NULL returns from FLV_GET_STRING() more gracefully. Fixes crash caused by a strlen on a... Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script): Handle NULL returns from FLV_GET_STRING() more gracefully. Fixes crash caused by a strlen on a NULL string (#527622). 2008-04-11 19:33:53 +0000 Ole André Vadla Ravnås sys/dshowsrcwrapper/gstdshowvideosrc.*: Don't increase latency by queuing buffers in an async queue when the streamin... Original commit message from CVS: Patch by: Ole André Vadla Ravnås * sys/dshowsrcwrapper/gstdshowvideosrc.c: (PROP_DEVICE_NAME), (gst_dshowvideosrc_class_init), (gst_dshowvideosrc_init), (gst_dshowvideosrc_dispose), (gst_dshowvideosrc_stop), (gst_dshowvideosrc_unlock), (gst_dshowvideosrc_unlock_stop), (gst_dshowvideosrc_create), (gst_dshowvideosrc_push_buffer): * sys/dshowsrcwrapper/gstdshowvideosrc.h: Don't increase latency by queuing buffers in an async queue when the streaming thread can't keep up or isn't scheduled often enough for some other reason, but just drop the previous buffer in that case. Also implement GstBaseSrc::unlock for faster unlocking when shutting down. (#520892). 2008-04-11 18:46:31 +0000 Tim-Philipp Müller tests/icles/metadata_editor.*: Remove GstXOverlay stuff and use gdkpixbufsink plus some rather crude drawing/scaling ... Original commit message from CVS: * tests/icles/metadata_editor.c: (ENC_UNKNOWN), (last_pixbuf), (draw_pixbuf), (change_tag_list), (update_draw_pixbuf), (ui_drawing_size_allocate_cb), (on_drawingMain_expose_event), (on_buttonSaveFile_clicked), (ui_create), (me_gst_bus_callback_view), (me_gst_setup_view_pipeline), (process_file): * tests/icles/metadata_editor.glade: Remove GstXOverlay stuff and use gdkpixbufsink plus some rather crude drawing/scaling logic to make this compile and work on all platforms. Fixes #518227. 2008-04-11 13:57:03 +0000 Tim-Philipp Müller configure.ac: Bump core/base requirements to released versions to avoid confusion. Original commit message from CVS: * configure.ac: Bump core/base requirements to released versions to avoid confusion. * gst/deinterlace/gstdeinterlace.c: (deinterlace_debug), (GST_CAT_DEFAULT), (gst_deinterlace_base_init), (gst_deinterlace_set_caps), (plugin_init): Add debug category, use _set_element_details_simple and remove special code path for Y42B to calculate offsets and strides; libgstvideo knows how to handle this format now. 2008-04-11 13:08:24 +0000 Tim-Philipp Müller gst/cdxaparse/: Port VCD parser (formerly cdxastrip) from 0.8 to 0.10. Doesn't do anything the 0.8 version didn't do ... Original commit message from CVS: * gst/cdxaparse/Makefile.am: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstcdxastrip.c: * gst/cdxaparse/gstcdxastrip.h: * gst/cdxaparse/gstvcdparse.c: * gst/cdxaparse/gstvcdparse.h: Port VCD parser (formerly cdxastrip) from 0.8 to 0.10. Doesn't do anything the 0.8 version didn't do though. 2008-04-11 08:13:22 +0000 Julien Moutte sys/oss4/: Fix arguments format in debug statements. Original commit message from CVS: 2008-04-11 Julien Moutte * sys/oss4/oss4-mixer-enum.c: (gst_oss4_mixer_enum_get_values_locked): * sys/oss4/oss4-source.c: (gst_oss4_source_delay): Fix arguments format in debug statements. 2008-04-10 15:29:44 +0000 Ole André Vadla Ravnås Add wininetsrc for basic http/ftp support on windows (#520897). Original commit message from CVS: Patch by: Ole André Vadla Ravnås * configure.ac: * sys/Makefile.am: * sys/wininet/Makefile.am: * sys/wininet/gstwininetsrc.c: * sys/wininet/gstwininetsrc.h: Add wininetsrc for basic http/ftp support on windows (#520897). 2008-04-10 10:01:48 +0000 Tim-Philipp Müller gst/nsf/nsf.h: Change prototype of process function here too to avoid 'incompatible assignment' warnings. Original commit message from CVS: * gst/nsf/nsf.h: Change prototype of process function here too to avoid 'incompatible assignment' warnings. 2008-04-10 07:11:51 +0000 Sebastian Dröge tests/check/elements/souphttpsrc.c: Increase the timeout for the internet tests to 250 seconds and check for NULL cap... Original commit message from CVS: * tests/check/elements/souphttpsrc.c: (got_buffer), (souphttpsrc_suite): Increase the timeout for the internet tests to 250 seconds and check for NULL caps instead of just crashing. The real fix would be to implement an shoutcast server for the unit test instead of relying on a working internet connection. Fixes bug #521749. 2008-04-09 22:27:50 +0000 Peter Kjellerstedt gst/rtpmanager/: Avoid leaking pads in the RTP manager. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (free_session): * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_finalize): Avoid leaking pads in the RTP manager. 2008-04-09 13:43:51 +0000 Jan Schmidt gst/nsf/nes_apu.*: Don't do void pointer arithmetic - it's a gcc extension. Original commit message from CVS: * gst/nsf/nes_apu.c: (apu_process): * gst/nsf/nes_apu.h: Don't do void pointer arithmetic - it's a gcc extension. 2008-04-06 20:18:16 +0000 Tim-Philipp Müller ext/jack/gstjackaudiosink.c: Work around missing bits of thread-safety on older GLibs some more to avoid assertions w... Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (gst_jack_audio_sink_class_init): Work around missing bits of thread-safety on older GLibs some more to avoid assertions when starting up multiple playbin objects concurrently (see #512382). 2008-04-06 09:01:42 +0000 Sjoerd Simons ext/soup/gstsouphttpsrc.c: Only ignore actual redirects not all responses when in state Original commit message from CVS: Patch by: Sjoerd Simons * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_response_cb): Only ignore actual redirects not all responses when in state GST_SOUP_HTTP_SRC_SESSION_IO_STATUS_RUNNING. Fixes bug #526337. 2008-04-06 08:58:39 +0000 Damien Lespiau configure.ac: Actually build dlls when cross-compiling with mingw32. Original commit message from CVS: Patch by: Damien Lespiau * configure.ac: Actually build dlls when cross-compiling with mingw32. Fixes bug #526247. 2008-04-05 11:03:13 +0000 Sebastian Dröge tests/check/elements/ofa.c: Also check that we have processed at least 135 seconds of audio until we stop and calcula... Original commit message from CVS: * tests/check/elements/ofa.c: (GST_START_TEST): Also check that we have processed at least 135 seconds of audio until we stop and calculated a fingerprint. 2008-04-04 20:43:18 +0000 Tim-Philipp Müller gst/subenc/gstsrtenc.*: GstSrtenc => GstSrtEnc and gst_srtenc_ => gst_srt_enc_. Original commit message from CVS: * gst/subenc/gstsrtenc.c: * gst/subenc/gstsrtenc.h: GstSrtenc => GstSrtEnc and gst_srtenc_ => gst_srt_enc_. 2008-04-04 19:18:36 +0000 Sebastian Dröge tests/check/: Add simple unit tests for the OFA plugin. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/ofa.c: (bus_handler), (GST_START_TEST), (ofa_suite), (main): Add simple unit tests for the OFA plugin. 2008-04-03 14:23:47 +0000 Christian Schaller * common: * gst-plugins-bad.spec.in: update spec file with new ossv4 plugin Original commit message from CVS: update spec file with new ossv4 plugin 2008-04-02 20:18:58 +0000 Tim-Philipp Müller Add initial support for OSSv4. Mixer still needs a bit more love, but even magic has its limits. Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/oss4/Makefile.am: * sys/oss4/oss4-audio.c: * sys/oss4/oss4-audio.h: * sys/oss4/oss4-mixer-enum.c: * sys/oss4/oss4-mixer-enum.h: * sys/oss4/oss4-mixer-slider.c: * sys/oss4/oss4-mixer-slider.h: * sys/oss4/oss4-mixer-switch.c: * sys/oss4/oss4-mixer-switch.h: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-mixer.h: * sys/oss4/oss4-property-probe.c: * sys/oss4/oss4-property-probe.h: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-sink.h: * sys/oss4/oss4-soundcard.h: * sys/oss4/oss4-source.c: * sys/oss4/oss4-source.h: Add initial support for OSSv4. Mixer still needs a bit more love, but even magic has its limits. 2008-04-01 22:40:49 +0000 Tim-Philipp Müller Rename new srtenc plugin to subenc. Original commit message from CVS: * configure.ac: * gst-plugins-bad.spec.in: * gst/srtenc/Makefile.am: * gst/srtenc/gstsrtenc.c: * gst/srtenc/gstsrtenc.h: * gst/subenc/Makefile.am: * gst/subenc/gstsrtenc.c: (plugin_init): Rename new srtenc plugin to subenc. 2008-04-01 20:33:19 +0000 Christian Schaller * gst-plugins-bad.spec.in: fix spec'a'lec Original commit message from CVS: fix spec'a'lec 2008-04-01 19:53:53 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: Cable delivery subsystem descriptors' frequency's bcd is measured in 100Hz units ... Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: Cable delivery subsystem descriptors' frequency's bcd is measured in 100Hz units so adjust multiplier accordingly. 2008-04-01 13:42:55 +0000 Thijs Vermeir Add srt subtitle encoder Original commit message from CVS: * configure.ac: * gst/srtenc/Makefile.am: * gst/srtenc/gstsrtenc.c: * gst/srtenc/gstsrtenc.h: Add srt subtitle encoder 2008-03-31 16:24:42 +0000 kapil ext/gsm/gstgsmdec.*: Increase the allowed samplerates for the ms-gsm format. Original commit message from CVS: Patch by: kapil * ext/gsm/gstgsmdec.c: (gst_gsmdec_sink_setcaps), (gst_gsmdec_chain): * ext/gsm/gstgsmdec.h: Increase the allowed samplerates for the ms-gsm format. Fixes #481354. 2008-03-30 21:06:58 +0000 Jan de Groot configure.ac: Fix build with --disable-external (#525100). Original commit message from CVS: Patch by: Jan de Groot * configure.ac: Fix build with --disable-external (#525100). 2008-03-28 09:48:27 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Repeat diseqc call to allow for some diseqc switches. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Repeat diseqc call to allow for some diseqc switches. 2008-03-27 16:32:27 +0000 Zaheer Abbas Merali ext/Makefile.am: Dist ofa correctly! Fixes non-uninstalled build. Original commit message from CVS: * ext/Makefile.am: Dist ofa correctly! Fixes non-uninstalled build. 2008-03-27 15:57:14 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Make diseqc work more reliably. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Make diseqc work more reliably. 2008-03-26 07:40:58 +0000 Sebastian Dröge gst/nsf/: Remove memguard again and apply hopefully all previously dropped local patches. Should be really better tha... Original commit message from CVS: * gst/nsf/Makefile.am: * gst/nsf/fds_snd.c: * gst/nsf/mmc5_snd.c: * gst/nsf/nsf.c: * gst/nsf/types.h: * gst/nsf/vrc7_snd.c: * gst/nsf/vrcvisnd.c: * gst/nsf/memguard.c: * gst/nsf/memguard.h: Remove memguard again and apply hopefully all previously dropped local patches. Should be really better than the old version now. 2008-03-25 16:58:53 +0000 Wim Taymans gst/nsf/: Unbreak compilation by disabling memguard and doing some dirty hack fixes to make it compile on 64bits. Original commit message from CVS: * gst/nsf/memguard.c: (_my_free): * gst/nsf/types.h: Unbreak compilation by disabling memguard and doing some dirty hack fixes to make it compile on 64bits. 2008-03-25 15:56:13 +0000 Andreas Henriksson gst/nsf/: Update our internal nosefart to nosefart-2.7-mls to fix segfaults on some files. Fixes bug #498237. Original commit message from CVS: Patch by: Andreas Henriksson * gst/nsf/Makefile.am: * gst/nsf/dis6502.h: * gst/nsf/fds_snd.c: * gst/nsf/fds_snd.h: * gst/nsf/fmopl.c: * gst/nsf/fmopl.h: * gst/nsf/gstnsf.c: * gst/nsf/log.c: * gst/nsf/log.h: * gst/nsf/memguard.c: * gst/nsf/memguard.h: * gst/nsf/mmc5_snd.c: * gst/nsf/mmc5_snd.h: * gst/nsf/nes6502.c: * gst/nsf/nes6502.h: * gst/nsf/nes_apu.c: * gst/nsf/nes_apu.h: * gst/nsf/nsf.c: * gst/nsf/nsf.h: * gst/nsf/osd.h: * gst/nsf/types.h: * gst/nsf/vrc7_snd.c: * gst/nsf/vrc7_snd.h: * gst/nsf/vrcvisnd.c: * gst/nsf/vrcvisnd.h: Update our internal nosefart to nosefart-2.7-mls to fix segfaults on some files. Fixes bug #498237. Remove some // comments, fix some compiler warnings and use pow() instead of a slow, selfmade implementation. 2008-03-25 15:17:58 +0000 Ed Catmur configure.ac: Add support for neon 0.28, which didn't change API. Fixes bug #524035. Original commit message from CVS: Patch by: Ed Catmur * configure.ac: Add support for neon 0.28, which didn't change API. Fixes bug #524035. 2008-03-24 12:32:59 +0000 Rene Stadler Make rganalysis and rglimiter elements GAP-flag aware. Original commit message from CVS: * gst/replaygain/gstrganalysis.c (gst_rg_analysis_init), (gst_rg_analysis_transform_ip): * gst/replaygain/gstrglimiter.c (gst_rg_limiter_init), (gst_rg_limiter_transform_ip): Make rganalysis and rglimiter elements GAP-flag aware. * tests/check/elements/rganalysis.c: (test_gap_buffers), (rganalysis_suite): * tests/check/elements/rglimiter.c (test_gap), (rglimiter_suite): Add tests to verify gap-awareness. 2008-03-22 19:26:04 +0000 Sebastian Dröge ext/soup/gstsouphttpsrc.c: Don't autoplug souphttpsrc for dav/davs. This is better handled by Original commit message from CVS: * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_got_headers_cb), (gst_soup_http_src_chunk_allocator), (gst_soup_http_src_got_chunk_cb), (gst_soup_http_src_uri_get_protocols): Don't autoplug souphttpsrc for dav/davs. This is better handled by GIO and GnomeVFS as they provide authentication. Don't leak the icy caps if we already set them and get a new icy-metaint header. Try harder to set the icy caps on the output buffer to have correct caps for the first buffer already. * tests/check/elements/souphttpsrc.c: (got_buffer), (GST_START_TEST): Check that we get a buffer with application/x-icy caps if iradio-mode is enabled and we have an icecast URL. 2008-03-22 18:18:46 +0000 Sebastian Dröge ext/soup/gstsouphttpsrc.c: Actually set the icy caps on our src pad if we have icecast data. Original commit message from CVS: * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_chunk_allocator): Actually set the icy caps on our src pad if we have icecast data. Fixes bug #523854. 2008-03-22 15:00:47 +0000 Sebastian Dröge Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory u... Original commit message from CVS: * configure.ac: * ext/alsa/gstalsamixerelement.c: (gst_alsa_mixer_element_class_init): * ext/alsa/gstalsasink.c: (gst_alsasink_class_init): * ext/alsa/gstalsasrc.c: (gst_alsasrc_class_init): * ext/cdparanoia/gstcdparanoiasrc.c: (gst_cd_paranoia_src_class_init): * ext/gio/gstgiosink.c: (gst_gio_sink_class_init): * ext/gio/gstgiosrc.c: (gst_gio_src_class_init): * ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_class_init): * ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_class_init): * ext/gnomevfs/gstgnomevfssink.c: (gst_gnome_vfs_sink_class_init): * ext/gnomevfs/gstgnomevfssrc.c: (gst_gnome_vfs_src_class_init): * ext/ogg/gstoggmux.c: (gst_ogg_mux_class_init): * ext/pango/gsttextoverlay.c: (gst_text_overlay_class_init): * ext/pango/gsttextrender.c: (gst_text_render_class_init): * ext/theora/theoradec.c: (gst_theora_dec_class_init): * ext/theora/theoraenc.c: (gst_theora_enc_class_init): * ext/theora/theoraparse.c: (gst_theora_parse_class_init): * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_class_init): * gst-libs/gst/audio/gstaudiofiltertemplate.c: (gst_audio_filter_template_class_init): * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init): * gst-libs/gst/audio/gstbaseaudiosrc.c: (gst_base_audio_src_class_init): * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_class_init): * gst-libs/gst/interfaces/mixertrack.c: (gst_mixer_track_class_init): * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_class_init): * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_class_init): * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_class_init): * gst/audiorate/gstaudiorate.c: (gst_audio_rate_class_init): * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init): * gst/audiotestsrc/gstaudiotestsrc.c: (gst_audio_test_src_class_init): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init): * gst/playback/gstdecodebin2.c: (gst_decode_bin_class_init): * gst/playback/gstplaybasebin.c: (gst_play_base_bin_class_init), (preroll_unlinked): * gst/playback/gstplaybin.c: (gst_play_bin_class_init): * gst/playback/gstplaybin2.c: (gst_play_bin_class_init): * gst/playback/gstplaysink.c: (gst_play_sink_class_init): * gst/playback/gstqueue2.c: (gst_queue_class_init): * gst/playback/gststreaminfo.c: (gst_stream_info_class_init): * gst/playback/gststreamselector.c: (gst_selector_pad_class_init), (gst_stream_selector_class_init): * gst/playback/gsturidecodebin.c: (gst_uri_decode_bin_class_init): * gst/subparse/gstsubparse.c: (gst_sub_parse_class_init): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init): * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init): * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init): * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init): * gst/videorate/gstvideorate.c: (gst_video_rate_class_init): * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init): * gst/volume/gstvolume.c: (gst_volume_class_init): * sys/v4l/gstv4lelement.c: (gst_v4lelement_class_init): * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_class_init): * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_class_init): * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_class_init): * sys/ximage/ximagesink.c: (gst_ximagesink_class_init): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_class_init): Use G_PARAM_STATIC_STRINGS everywhere for GParamSpecs that use static strings (i.e. all). This gives us less memory usage, fewer allocations and thus less memory defragmentation. Depend on core CVS for this. Fixes bug #523806. 2008-03-21 14:50:41 +0000 Sebastian Dröge configure.ac: Check if the compiler supports do { } while (0) macros. This fixes a warning when compiling with g++ 4.... Original commit message from CVS: * configure.ac: Check if the compiler supports do { } while (0) macros. This fixes a warning when compiling with g++ 4.3, resulting in a build failure because of -Werror. * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mplex/gstmplex.cc: Include for memcpy and friends to fix the build with gcc 4.3. * tests/check/Makefile.am: Remove trailing backslash. 2008-03-20 18:10:29 +0000 Wim Taymans gst/selector/gstinputselector.c: Do g_object_notify() only when not holding the lock to get the property because othe... Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_input_selector_set_active_pad), (gst_input_selector_switch): Do g_object_notify() only when not holding the lock to get the property because otherwise we run into a deadlock with the deep-notify handlers that are possibly installed. 2008-03-20 17:48:49 +0000 Wim Taymans gst/selector/gstinputselector.c: Release the selector lock when pad alloc happens on a non selected pad. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_class_init), (gst_selector_pad_event), (gst_selector_pad_bufferalloc), (gst_selector_pad_chain), (gst_input_selector_set_active_pad): Release the selector lock when pad alloc happens on a non selected pad. 2008-03-20 17:07:07 +0000 Wim Taymans gst/selector/gstinputselector.c: Add pad property to configure behaviour of the unselected pad, it can return OK or N... Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_class_init), (gst_selector_pad_init), (gst_selector_pad_set_property), (gst_selector_pad_get_property), (gst_selector_pad_event), (gst_selector_pad_bufferalloc), (gst_selector_pad_chain), (gst_input_selector_set_active_pad): Add pad property to configure behaviour of the unselected pad, it can return OK or NOT_LINKED, based on the use case. 2008-03-20 16:48:46 +0000 Wim Taymans gst/selector/gstinputselector.*: Figure out the locking a bit more. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_get_running_time), (gst_selector_pad_reset), (gst_selector_pad_event), (gst_selector_pad_bufferalloc), (gst_input_selector_wait), (gst_selector_pad_chain), (gst_input_selector_class_init), (gst_input_selector_init), (gst_input_selector_dispose), (gst_segment_set_start), (gst_input_selector_set_active_pad), (gst_input_selector_set_property), (gst_input_selector_get_property), (gst_input_selector_get_linked_pad), (gst_input_selector_is_active_sinkpad), (gst_input_selector_activate_sinkpad), (gst_input_selector_request_new_pad), (gst_input_selector_release_pad), (gst_input_selector_change_state), (gst_input_selector_block), (gst_input_selector_switch): * gst/selector/gstinputselector.h: Figure out the locking a bit more. Mark buffers with discont after switching. Fix initial segment forwarding, make sure to only forward one segment regardless of what the sequence of buffers/segments is. See #522203. Improve flushing when blocked. Return NOT_LINKED when a stream is not selected. Not API change for the switch signal in the docs. Fix start/time/accum values of the new segment. Correctly unlock and flush a blocking selector when going to READY. 2008-03-20 15:54:23 +0000 Stefan Kost ext/ladspa/: Add some thoughts and FIXME's. Original commit message from CVS: * ext/ladspa/gstladspa.c: * ext/ladspa/gstsignalprocessor.c: Add some thoughts and FIXME's. 2008-03-20 15:49:22 +0000 Stefan Kost gst/bayer/gstbayer2rgb.c: Include stdlib.h for abs. Original commit message from CVS: * gst/bayer/gstbayer2rgb.c: Include stdlib.h for abs. 2008-03-19 19:56:59 +0000 Stefan Kost gst/freeze/: Add example to source code documentation blob and remove the 3 line Original commit message from CVS: * gst/freeze/FAQ: * gst/freeze/Makefile.am: * gst/freeze/gstfreeze.c: Add example to source code documentation blob and remove the 3 line FAQ. * gst/interleave/interleave.c: Add a source code documentation blob. 2008-03-19 18:44:51 +0000 Sebastian Dröge ext/ofa/gstofa.c: Improve debugging, clean up a bit and really generate the fingerprint after 135 seconds. Original commit message from CVS: * ext/ofa/gstofa.c: (create_fingerprint), (gst_ofa_event), (gst_ofa_transform_ip), (plugin_init): Improve debugging, clean up a bit and really generate the fingerprint after 135 seconds. 2008-03-19 18:19:12 +0000 Sebastian Dröge ext/ofa/gstofa.c: Use GPL as license, the plugin itself is LGPL but libofa is GPL. Original commit message from CVS: * ext/ofa/gstofa.c: Use GPL as license, the plugin itself is LGPL but libofa is GPL. 2008-03-19 18:14:17 +0000 Eric Buehl Add an OFA element, the successor of MusicBrainz TRM fingerprinting. Original commit message from CVS: Based on a patch by: Eric Buehl * configure.ac: * ext/ofa/Makefile.am: * ext/ofa/gstofa.c: (gst_ofa_base_init), (gst_ofa_finalize), (gst_ofa_class_init), (create_fingerprint), (gst_ofa_event), (gst_ofa_init), (gst_ofa_transform_ip), (gst_ofa_get_property), (plugin_init): * ext/ofa/gstofa.h: Add an OFA element, the successor of MusicBrainz TRM fingerprinting. Fixes bug #351309. 2008-03-18 10:12:40 +0000 Andy Wingo ext/faad/gstfaad.c (gst_faad_chain): Fix a bad format argument, and a potential int overflow. Original commit message from CVS: 2008-03-18 Andy Wingo * ext/faad/gstfaad.c (gst_faad_chain): Fix a bad format argument, and a potential int overflow. * ext/faad/gstfaad.h: Include if faad is neaac. Avoids a #warning about an ignored #pragma. 2008-03-17 15:51:08 +0000 Zaheer Abbas Merali examples/switch/switcher.c: Update switch example to use input selector. Original commit message from CVS: * examples/switch/switcher.c: Update switch example to use input selector. 2008-03-17 09:02:43 +0000 Sebastian Dröge ext/neon/gstneonhttpsrc.c: Handle HTTP status code 303 (See Other) the same way as 302 (Found). Not sure what to do a... Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init), (gst_neonhttp_src_send_request_and_redirect): Handle HTTP status code 303 (See Other) the same way as 302 (Found). Not sure what to do about all the other 3xx redirect status codes. Fixes bug #522884. 2008-03-14 21:48:37 +0000 Edward Hervey gst-libs/gst/dshow/Makefile.am: Make sure the dshow helper library headers get distributed in the next release. Original commit message from CVS: * gst-libs/gst/dshow/Makefile.am: Make sure the dshow helper library headers get distributed in the next release. 2008-03-14 17:38:10 +0000 William M. Brack gst/bayer/gstbayer2rgb.c: Significant improvements. Fixes #521392. Original commit message from CVS: Patch by: William M. Brack * gst/bayer/gstbayer2rgb.c: Significant improvements. Fixes #521392. 2008-03-14 17:22:21 +0000 Wim Taymans gst/selector/gstinputselector.c: Add lots of debugging. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_event), (gst_selector_pad_bufferalloc), (gst_selector_pad_chain), (gst_input_selector_class_init), (gst_input_selector_set_active_pad), (gst_input_selector_set_property), (gst_input_selector_push_pending_stop): Add lots of debugging. Fix time member in the newsegment event. 2008-03-13 16:46:04 +0000 Wim Taymans gst/selector/gstinputselector.*: Various cleanups. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_class_init), (gst_selector_pad_finalize), (gst_selector_pad_get_property), (gst_selector_pad_event), (gst_input_selector_class_init), (gst_input_selector_init), (gst_input_selector_set_active_pad), (gst_input_selector_set_property), (gst_input_selector_get_property), (gst_input_selector_request_new_pad), (gst_input_selector_release_pad), (gst_input_selector_push_pending_stop), (gst_input_selector_switch): * gst/selector/gstinputselector.h: Various cleanups. Added tags to the pads. Select active pad based on the pad object instead of its name. Fix refcount in set_active_pad. Add property to get the number of pads. * gst/selector/gstoutputselector.c: (gst_output_selector_class_init), (gst_output_selector_set_property), (gst_output_selector_get_property): Various cleanups. Select the active pad based on the pad object instead of its name. Fix locking when setting the active pad. * gst/selector/gstselector-marshal.list: * tests/check/elements/selector.c: (cleanup_pad), (selector_set_active_pad), (run_input_selector_buffer_count): Fixes for pad instead of padname for pad selection. 2008-03-13 14:25:20 +0000 Sebastian Dröge Use GST_LICENSE, GST_PACKAGE_NAME and GST_PACKAGE_ORIGIN instead of hardcoding values where possible. Fixes bug #522212. Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.c: * ext/gsm/gstgsm.c: * ext/jack/gstjack.c: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/shout/gstshout.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst/nuvdemux/gstnuvdemux.c: * gst/tta/gsttta.c: Use GST_LICENSE, GST_PACKAGE_NAME and GST_PACKAGE_ORIGIN instead of hardcoding values where possible. Fixes bug #522212. 2008-03-13 09:45:09 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.*: Try to resume on server disconnect. Fixes bug #522134. Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_init), (gst_soup_http_src_finished_cb), (gst_soup_http_src_response_cb), (gst_soup_http_src_build_message), (gst_soup_http_src_create): * ext/soup/gstsouphttpsrc.h: Try to resume on server disconnect. Fixes bug #522134. 2008-03-12 18:44:58 +0000 Wim Taymans ext/xvid/gstxvidenc.c: Set correct pixel aspect ratio for the encoder. Original commit message from CVS: * ext/xvid/gstxvidenc.c: (gst_xvidenc_chain): Set correct pixel aspect ratio for the encoder. 2008-03-11 12:40:58 +0000 Olivier Crete gst/rtpmanager/rtpsession.*: Implement collision and loop detection in rtpmanager. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/rtpsession.c: (find_add_conflicting_addresses), (check_collision), (obtain_source), (rtp_session_create_new_ssrc), (rtp_session_create_source), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_rr), (rtp_session_process_sdes), (rtp_session_process_bye), (rtp_session_send_bye_locked), (rtp_session_send_bye), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Implement collision and loop detection in rtpmanager. Fixes #520626. * gst/rtpmanager/rtpsource.c: (rtp_source_reset), (rtp_source_init): * gst/rtpmanager/rtpsource.h: Add method to reset stats. 2008-03-11 11:36:03 +0000 Ole André Vadla Ravnås gst/rtpmanager/gstrtpsession.c: Avoid a deadlock when joining the RTCP thread in PAUSED because it might be blocked d... Original commit message from CVS: Based on patch by: Ole André Vadla Ravnås * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_init), (rtcp_thread), (start_rtcp_thread), (stop_rtcp_thread), (join_rtcp_thread), (gst_rtp_session_change_state): Avoid a deadlock when joining the RTCP thread in PAUSED because it might be blocked downstream. Also avoid spawning multiple rtcp threads. Fixes #520894. 2008-03-11 10:43:32 +0000 Stefan Kost gst/rtpmanager/rtpjitterbuffer.c: Don't try to reset the clock skew when we have no timestamps. Original commit message from CVS: Patch by: Stefan Kost * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): Don't try to reset the clock skew when we have no timestamps. Fixes #519005. 2008-03-08 04:27:03 +0000 Sjoerd Simons ext/faad/gstfaad.c: Improve the header checking to look for what faad2 looks for too. Fixes playback of same apple tr... Original commit message from CVS: Patch by: Sjoerd Simons * ext/faad/gstfaad.c: (looks_like_valid_header): Improve the header checking to look for what faad2 looks for too. Fixes playback of same apple trailers. Fixes bug #469979. 2008-03-07 13:28:06 +0000 Sebastian Dröge configure.ac: Really check for libdc1394 >= 2.0.0, pkg-config thinks that 2.0.0-rcX is newer than 2.0.0 so we check f... Original commit message from CVS: * configure.ac: Really check for libdc1394 >= 2.0.0, pkg-config thinks that 2.0.0-rcX is newer than 2.0.0 so we check for this too. 2008-03-06 07:03:09 +0000 David Schleef ext/dirac/gstdiracenc.cc: Add a bunch of properties cribbed from the encoder program in dirac. Original commit message from CVS: * ext/dirac/gstdiracenc.cc: Add a bunch of properties cribbed from the encoder program in dirac. 2008-03-06 03:16:13 +0000 David Schleef Rewrite Dirac encoder plugin based on Schroedinger gstreamer elements. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/dirac/Makefile.am: * ext/dirac/gstdirac.cc: * ext/dirac/gstdiracenc.cc: Rewrite Dirac encoder plugin based on Schroedinger gstreamer elements. 2008-03-05 06:03:03 +0000 Mark Nauwelaerts Port mplex element to 0.10. Fixes bug #520329. Original commit message from CVS: Patch by: Mark Nauwelaerts * configure.ac: * ext/Makefile.am: * ext/mplex/Makefile.am: * ext/mplex/gstmplex.cc: * ext/mplex/gstmplex.hh: * ext/mplex/gstmplexibitstream.cc: * ext/mplex/gstmplexibitstream.hh: * ext/mplex/gstmplexjob.cc: * ext/mplex/gstmplexjob.hh: * ext/mplex/gstmplexoutputstream.cc: * ext/mplex/gstmplexoutputstream.hh: Port mplex element to 0.10. Fixes bug #520329. * tests/check/Makefile.am: * tests/check/elements/mplex.c: (test_sink_event), (setup_src_pad), (teardown_src_pad), (setup_mplex), (cleanup_mplex), (GST_START_TEST), (mplex_suite), (main): Add unit test for the mplex element. 2008-03-05 05:38:06 +0000 Mark Nauwelaerts configure.ac: Clean up detection of different mjpegtoolsAPI versions. Original commit message from CVS: Patch by: Mark Nauwelaerts * configure.ac: Clean up detection of different mjpegtoolsAPI versions. * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2enc.hh: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.hh: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.hh: Streamline conditional code for evolving mjpegtools API, optimize and fix/prevent crash in log handling, use names/nicks for enums in the usual way andm inor updates in code and properties/settings. Partially fixes bug #520329. 2008-03-04 17:49:15 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Add parsing of cable delivery system descriptor. Original commit message from CVS: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtspacketizer.c: Add parsing of cable delivery system descriptor. 2008-03-03 12:48:56 +0000 Peter Kjellerstedt configure.ac: Use AG_GST_CHECK_PLUGIN and AG_GST_DISABLE_PLUGIN to simplify which plug-ins are included/excluded. (#4... Original commit message from CVS: * configure.ac: Use AG_GST_CHECK_PLUGIN and AG_GST_DISABLE_PLUGIN to simplify which plug-ins are included/excluded. (#498222) 2008-03-03 06:04:02 +0000 Sebastian Dröge Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static... Original commit message from CVS: * ext/alsa/gstalsamixertrack.c: (gst_alsa_mixer_track_get_type): * ext/alsa/gstalsasink.c: (set_hwparams): * ext/alsa/gstalsasrc.c: (set_hwparams): * ext/gio/gstgio.c: (gst_gio_uri_handler_get_uri): * ext/ogg/gstoggmux.h: * ext/ogg/gstogmparse.c: * gst-libs/gst/audio/audio.c: * gst-libs/gst/fft/kiss_fft_f64.c: (kiss_fft_f64_alloc): * gst-libs/gst/pbutils/missing-plugins.c: (gst_missing_uri_sink_message_new), (gst_missing_element_message_new), (gst_missing_decoder_message_new), (gst_missing_encoder_message_new): * gst-libs/gst/rtp/gstbasertppayload.c: * gst-libs/gst/rtp/gstrtcpbuffer.c: (gst_rtcp_packet_bye_get_reason): * gst/audioconvert/gstaudioconvert.c: * gst/audioresample/gstaudioresample.c: * gst/ffmpegcolorspace/imgconvert.c: * gst/playback/test.c: (gen_video_element), (gen_audio_element): * gst/typefind/gsttypefindfunctions.c: * gst/videoscale/vs_4tap.c: * gst/videoscale/vs_4tap.h: * sys/v4l/gstv4lelement.c: * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get_any_caps): * sys/v4l/v4l_calls.c: * sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_capture_init), (gst_v4lsrc_try_capture): * sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls), (gst_ximagesink_ximage_new): * sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): * tests/check/elements/audioconvert.c: * tests/check/elements/audioresample.c: (fail_unless_perfect_stream): * tests/check/elements/audiotestsrc.c: (setup_audiotestsrc): * tests/check/elements/decodebin.c: * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (setup_gdpdepay_streamheader): * tests/check/elements/gdppay.c: (setup_gdppay), (GST_START_TEST), (setup_gdppay_streamheader): * tests/check/elements/gnomevfssink.c: (setup_gnomevfssink): * tests/check/elements/multifdsink.c: (setup_multifdsink): * tests/check/elements/textoverlay.c: * tests/check/elements/videorate.c: (setup_videorate): * tests/check/elements/videotestsrc.c: (setup_videotestsrc): * tests/check/elements/volume.c: (setup_volume): * tests/check/elements/vorbisdec.c: (setup_vorbisdec): * tests/check/elements/vorbistag.c: * tests/check/generic/clock-selection.c: * tests/check/generic/states.c: (setup), (teardown): * tests/check/libs/cddabasesrc.c: * tests/check/libs/video.c: * tests/check/pipelines/gio.c: * tests/check/pipelines/oggmux.c: * tests/check/pipelines/simple-launch-lines.c: (simple_launch_lines_suite): * tests/check/pipelines/streamheader.c: * tests/check/pipelines/theoraenc.c: * tests/check/pipelines/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: * tests/examples/seek/scrubby.c: * tests/examples/seek/seek.c: (query_positions_elems), (query_positions_pads): * tests/icles/stress-xoverlay.c: (myclock): Correct all relevant warnings found by the sparse semantic code analyzer. This include marking several symbols static, using NULL instead of 0 for pointers and using "foo (void)" instead of "foo ()" for declarations. * win32/common/libgstrtp.def: Add gst_rtp_buffer_set_extension_data to the symbol definition file. 2008-03-03 04:39:48 +0000 Jens Granseuer gst/mve/gstmvedemux.c: Fix audio discontinuity that happens when silent chunks are followed by real data again. Fixes... Original commit message from CVS: Patch by: Jens Granseuer * gst/mve/gstmvedemux.c: (gst_mve_audio_data), (gst_mve_demux_get_type): Fix audio discontinuity that happens when silent chunks are followed by real data again. Fixes bug #519905. 2008-03-01 12:49:13 +0000 Zaheer Abbas Merali sys/dvb/: Add DVB-C support. Special thanks to Christian Schaller for a testing ground. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: * sys/dvb/parsechannels.c: Add DVB-C support. Special thanks to Christian Schaller for a testing ground. 2008-02-28 13:22:24 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtsparse.c: Only send PMTs to program pads that the PMT is for even if on same pid. Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Only send PMTs to program pads that the PMT is for even if on same pid. As a by-product, we now no longer hardcode any psi pid numbers. Also remove pcr stream from old pmt when we apply a new pmt. 2008-02-28 10:41:56 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * tests/icles/metadata_editor.c: Map Date-Time and GPS tags and Convert from EXIF to XMP Datatime as local time (those changes has been done in previo... Original commit message from CVS: Map Date-Time and GPS tags and Convert from EXIF to XMP Datatime as local time (those changes has been done in previous comit but had to be revert in 2008-02-10 due to frozen) 2008-02-27 23:29:44 +0000 Zaheer Abbas Merali sys/dvb/camutils.c: Remove the G_VALUE_HOLDS_BOXED checks. They were only added to help debug the data corruption. Original commit message from CVS: * sys/dvb/camutils.c: Remove the G_VALUE_HOLDS_BOXED checks. They were only added to help debug the data corruption. 2008-02-27 19:41:13 +0000 Zaheer Abbas Merali sys/dvb/camutils.c: Don't free the program descriptors, this structure containing them is stills tored after. Original commit message from CVS: * sys/dvb/camutils.c: Don't free the program descriptors, this structure containing them is stills tored after. Fixes data corruption. 2008-02-27 12:34:00 +0000 Zaheer Abbas Merali sys/dvb/camutils.c: Extra checks to prevent data corruption/segfaults. Original commit message from CVS: * sys/dvb/camutils.c: Extra checks to prevent data corruption/segfaults. 2008-02-26 15:13:54 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file Original commit message from CVS: update spec file 2008-02-26 12:04:21 +0000 Stefan Kost ext/nas/nassink.c: Fix build warning by using portable API. Original commit message from CVS: * ext/nas/nassink.c: Fix build warning by using portable API. 2008-02-26 12:01:37 +0000 Stefan Kost gst/selector/gstoutputselector.c: Fix changing to same pad twice before a chain call. Original commit message from CVS: * gst/selector/gstoutputselector.c: Fix changing to same pad twice before a chain call. 2008-02-26 05:54:26 +0000 Daniel Fischer Add support for libdc1394 2.0.0 and above and require this version now. Fixes bug #514964. Original commit message from CVS: Patch by: Daniel Fischer * configure.ac: * ext/dc1394/gstdc1394.c: (gst_dc1394_change_state), (gst_dc1394_get_cam_caps), (gst_dc1394_open_cam_with_best_caps): * ext/dc1394/gstdc1394.h: Add support for libdc1394 2.0.0 and above and require this version now. Fixes bug #514964. 2008-02-26 05:36:17 +0000 Wouter Cloetens Add support for specifying a list of cookies to be passed in the HTTP request. Fixes bug #518722. Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_class_init), (gst_soup_http_src_init), (gst_soup_http_src_dispose), (gst_soup_http_src_set_property), (gst_soup_http_src_get_property), (gst_soup_http_src_create): * ext/soup/gstsouphttpsrc.h: * tests/check/elements/souphttpsrc.c: (run_test), (GST_START_TEST), (souphttpsrc_suite): Add support for specifying a list of cookies to be passed in the HTTP request. Fixes bug #518722. 2008-02-25 08:53:51 +0000 Stefan Kost gst/selector/gstinputselector.*: Added "select-all" property to make it work like aggregator in 0.8. Original commit message from CVS: * gst/selector/gstinputselector.c: * gst/selector/gstinputselector.h: Added "select-all" property to make it work like aggregator in 0.8. * gst/selector/gstoutputselector.c: Fix resend-latest behavoiur. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/selector.c: Add unit tests for selector. 2008-02-25 06:29:12 +0000 Sebastian Dröge Remove midi typefinders and require base CVS as they moved there. Original commit message from CVS: * configure.ac: * ext/timidity/gsttimidity.c: (plugin_init): * ext/timidity/gstwildmidi.c: (plugin_init): Remove midi typefinders and require base CVS as they moved there. 2008-02-24 09:57:42 +0000 Sebastian Dröge ext/Makefile.am: Only disable the ext/timidity directory if both, wildmidi _and_ timidity are not available. Original commit message from CVS: * ext/Makefile.am: Only disable the ext/timidity directory if both, wildmidi _and_ timidity are not available. 2008-02-24 04:24:20 +0000 Emilio Pozuelo Monfort ext/Makefile.am: Build the wildmidi plugin if it's enabled and not only when both, the timidity and wildmidi plugin, ... Original commit message from CVS: Patch by: Emilio Pozuelo Monfort * ext/Makefile.am: Build the wildmidi plugin if it's enabled and not only when both, the timidity and wildmidi plugin, are enabled. 2008-02-23 15:01:32 +0000 Tim-Philipp Müller Check for and define ERROR_CXXFLAGS and GST_CXXFLAGS and use them when building C++ code. Original commit message from CVS: * configure.ac: * ext/mpeg2enc/Makefile.am: * ext/soundtouch/Makefile.am: * gst/modplug/Makefile.am: Check for and define ERROR_CXXFLAGS and GST_CXXFLAGS and use them when building C++ code. 2008-02-23 11:56:41 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Add initial support for multiproto driver (not yet merged into v4l-dvb mainline yet). Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Add initial support for multiproto driver (not yet merged into v4l-dvb mainline yet). Only works for DVB-S not DVB-S2, DVB-T, DVB-C or other. 2008-02-22 10:18:27 +0000 Tim-Philipp Müller docs/plugins/inspect/: Update to version 0.10.6.1. Original commit message from CVS: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-tremor.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: Update to version 0.10.6.1. 2008-02-22 09:56:49 +0000 Tim-Philipp Müller docs/plugins/: Remove docs for elements that have moved to other modules or been renamed. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-switch.xml: * docs/plugins/inspect/plugin-videocrop.xml: Remove docs for elements that have moved to other modules or been renamed. 2008-02-22 07:20:03 +0000 Wouter Cloetens Implement zero-copy and make the buffer size configurable. Original commit message from CVS: Patch by: Wouter Cloetens * configure.ac: * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_cancel_message), (gst_soup_http_src_finished_cb), (gst_soup_http_src_chunk_free), (gst_soup_http_src_chunk_allocator), (gst_soup_http_src_got_chunk_cb), (gst_soup_http_src_create), (gst_soup_http_src_start), (gst_soup_http_src_set_proxy): * ext/soup/gstsouphttpsrc.h: Implement zero-copy and make the buffer size configurable. Prefix proxy URIs with "http://" if they don't start with it already and catch errors earlier, fixes hanging in some situations. Fixes bug #514948. 2008-02-22 06:42:28 +0000 Sebastian Dröge tests/check/gst-plugins-bad.supp: Add suppressions for SoundTouch valgrind warnings and a valgrind warning caused by ... Original commit message from CVS: * tests/check/gst-plugins-bad.supp: Add suppressions for SoundTouch valgrind warnings and a valgrind warning caused by the LADSPA sine plugin and happening on every exit(). Remove GIO suppressions as it's now in -base. 2008-02-22 06:33:49 +0000 Sebastian Dröge ext/mythtv/gstmythtvsrc.c: Don't allocate and copy the data to a new place but instead put the data from gmyth (which... Original commit message from CVS: * ext/mythtv/gstmythtvsrc.c: (gst_mythtv_src_create): Don't allocate and copy the data to a new place but instead put the data from gmyth (which we own) into the buffers that are passed downstream. 2008-02-22 06:31:44 +0000 Sebastian Dröge ext/timidity/gstwildmidi.c: If WILDMIDI_CFG is not defined, define it to the default timidity configure file. Original commit message from CVS: * ext/timidity/gstwildmidi.c: If WILDMIDI_CFG is not defined, define it to the default timidity configure file. 2008-02-22 06:12:07 +0000 Sebastian Dröge Remove hack to work with mjpegtools 1.9.0rc3 and above and instead use mjpeg_loglev_t() for getting the log levels. C... Original commit message from CVS: Based on a patch by: Hans de Goede * configure.ac: * ext/mpeg2enc/gstmpeg2enc.cc: Remove hack to work with mjpegtools 1.9.0rc3 and above and instead use mjpeg_loglev_t() for getting the log levels. Check for this function in configure.ac as the pkg-config file doesn't tell us which release candidate we have. Fixes bug #517896. 2008-02-22 05:48:33 +0000 Sebastian Dröge configure.ac: Check for X for the nas plugin to make it possible to build it again. Fixes bug #517895. Original commit message from CVS: * configure.ac: Check for X for the nas plugin to make it possible to build it again. Fixes bug #517895. 2008-02-22 05:42:16 +0000 Sebastian Dröge tests/check/Makefile.am: Ignore some more elements for the states unit test, like dfbvideosink which produces a segfa... Original commit message from CVS: * tests/check/Makefile.am: Ignore some more elements for the states unit test, like dfbvideosink which produces a segfault. Fixes bug #517854. 2008-02-22 05:33:59 +0000 Jens Granseuer Some C89 fixes, moving variable declarations to the beginning of a block. Fixes bug #517937. Original commit message from CVS: Patch by: Jens Granseuer * gst/librfb/gstrfbsrc.c: (gst_rfb_property_set_version): * gst/librfb/rfbdecoder.c: (rfb_decoder_message_set_encodings), (rfb_decoder_state_set_encodings): * gst/mpegtsparse/mpegtspacketizer.c: (mpegts_packetizer_parse_nit), (mpegts_packetizer_parse_sdt), (mpegts_packetizer_parse_eit): * sys/fbdev/gstfbdevsink.c: (gst_fbdevsink_getcaps), (gst_fbdevsink_setcaps), (gst_fbdevsink_render): Some C89 fixes, moving variable declarations to the beginning of a block. Fixes bug #517937. 2008-02-21 23:50:31 +0000 Jan Schmidt configure.ac: Back to development... Original commit message from CVS: * configure.ac: Back to development... === release 0.10.6 === 2008-02-21 00:13:31 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-tremor.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * gst-plugins-bad.doap: * po/LINGUAS: * win32/common/config.h: Release 0.10.6 - A Big Deep Breath Original commit message from CVS: Release 0.10.6 - A Big Deep Breath 2008-02-20 23:35:19 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/bg.po: * po/cs.po: * po/da.po: * po/en_GB.po: * po/es.po: * po/fi.po: * po/hu.po: * po/it.po: * po/ky.po: * po/nb.po: * po/nl.po: * po/or.po: * po/pl.po: * po/pt_BR.po: * po/sk.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * po/zh_CN.po: Update .po files Original commit message from CVS: Update .po files 2008-02-20 16:04:32 +0000 Bastien Nocera ext/mythtv/gstmythtvsrc.c: Using the wrong GstFormat for the filesize, and fail seek properly on anything but _BYTES ... Original commit message from CVS: 2008-02-20 Bastien Nocera * ext/mythtv/gstmythtvsrc.c: (gst_mythtv_src_do_seek), (gst_mythtv_src_start): Using the wrong GstFormat for the filesize, and fail seek properly on anything but _BYTES format Fixes bug #517684 2008-02-20 09:33:25 +0000 Olivier Crete gst/rtpmanager/gstrtpbin.c: Fix small memory leak, leaking caps. Fixes #bug 517571. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpbin.c: (new_ssrc_pad_found): Fix small memory leak, leaking caps. Fixes #bug 517571. 2008-02-19 11:50:45 +0000 Christian Schaller * gst-plugins-bad.spec.in: change gmyth-1.0 to gmyth Original commit message from CVS: change gmyth-1.0 to gmyth 2008-02-19 10:51:34 +0000 Sebastian Dröge gst/tta/Makefile.am: Link tta plugin with libm. Fixes bug #517391. Original commit message from CVS: * gst/tta/Makefile.am: Link tta plugin with libm. Fixes bug #517391. 2008-02-14 17:09:38 +0000 Zaheer Abbas Merali sys/dvb/camutils.c: Do not assume "descriptors" property in the pmt structure is present. Original commit message from CVS: * sys/dvb/camutils.c: Do not assume "descriptors" property in the pmt structure is present. Fixes #516499. 2008-02-14 16:25:51 +0000 Olivier Crete gst/rtpmanager/gstrtpbin.c: Ignore streams that did not receive an SR packet when doing synchronisation. Fixes #516160. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate): Ignore streams that did not receive an SR packet when doing synchronisation. Fixes #516160. 2008-02-14 14:33:27 +0000 Sebastian Dröge gst/dvdspu/gstdvdspu.c: Set n_line_ctrl_i to 0 whenever we free line_ctrl_i. Patch based on an idea by Jan Schmidt, f... Original commit message from CVS: * gst/dvdspu/gstdvdspu.c: (gst_dvd_spu_handle_new_spu_buf): Set n_line_ctrl_i to 0 whenever we free line_ctrl_i. Patch based on an idea by Jan Schmidt, fixes bug #516436. 2008-02-14 14:22:57 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Make sure the gstmpegdesc debug lines do not critical when GST_DEBUG is enabled and also actually o... Original commit message from CVS: * gst/mpegtsparse/gstmpegdesc.c: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtsparse.c: Make sure the gstmpegdesc debug lines do not critical when GST_DEBUG is enabled and also actually output. Thanks to Alessandro Decina for spotting. Fixes #516448 2008-02-13 23:52:42 +0000 Jan Schmidt Also add dshow pieces to the disted subdirs to fix distcheck. Original commit message from CVS: * gst-libs/gst/Makefile.am: * sys/Makefile.am: Also add dshow pieces to the disted subdirs to fix distcheck. 2008-02-13 14:40:33 +0000 Josep Torra Valles gst/h264parse/gsth264parse.c: Fix potential buffer leak in reverse mode. Re-Fixes #516061. Original commit message from CVS: Patch by: Josep Torra Valles * gst/h264parse/gsth264parse.c: (gst_h264_parse_chain_reverse): Fix potential buffer leak in reverse mode. Re-Fixes #516061. 2008-02-13 11:22:06 +0000 Sebastian Dröge configure.ac: Allow gmyth versions from 0.4 up to 0.7.99, the API didn't change until 0.7 fortunately. Original commit message from CVS: * configure.ac: Allow gmyth versions from 0.4 up to 0.7.99, the API didn't change until 0.7 fortunately. 2008-02-12 23:16:21 +0000 Jan Schmidt configure.ac: Generate the directshow Makefiles so that the directories get disted. Still needs some configure time d... Original commit message from CVS: * configure.ac: Generate the directshow Makefiles so that the directories get disted. Still needs some configure time detection to enable building them under MingW. 2008-02-12 23:13:55 +0000 Jan Schmidt ext/metadata/Makefile.am: Don't install a header file. We will have to merge these tags into libgsttag after the rele... Original commit message from CVS: * ext/metadata/Makefile.am: Don't install a header file. We will have to merge these tags into libgsttag after the release and use them from there. Fixes: #515860 2008-02-12 22:10:39 +0000 Sébastien Moutte Add Makefiles to win32 plugins and lib. Original commit message from CVS: * gst-libs/gst/dshow/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: Add Makefiles to win32 plugins and lib. They will need to be tested and probably fixed by developers working with mingw. This is a first step to include source files with releases. 2008-02-12 21:31:57 +0000 Zaheer Abbas Merali sys/dvb/dvbbasebin.c: Fix leak of location string returned from gst_uri_get_location. Original commit message from CVS: * sys/dvb/dvbbasebin.c: Fix leak of location string returned from gst_uri_get_location. Fixes bug #516114 2008-02-12 21:01:17 +0000 David Schleef Remove glimagesink, as it's been moved to gst-plugins-gl. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-glimagesink.xml: * sys/Makefile.am: * sys/glsink/BUGS: * sys/glsink/Makefile.am: * sys/glsink/color_matrix.c: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gltestsrc.c: * sys/glsink/gltestsrc.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstgltestsrc.h: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Remove glimagesink, as it's been moved to gst-plugins-gl. Fixes #516094. 2008-02-12 18:29:29 +0000 Josep Torra Valles gst/h264parse/gsth264parse.c: Fix potential buffer leak in reverse mode. Fixes #516061. Original commit message from CVS: Patch by: Josep Torra Valles * gst/h264parse/gsth264parse.c: (gst_h264_parse_chain_reverse): Fix potential buffer leak in reverse mode. Fixes #516061. 2008-02-12 11:08:27 +0000 Sebastian Dröge sys/dshowdecwrapper/: Chain up dispose methods properly. Fixes bug #515970. Original commit message from CVS: * sys/dshowdecwrapper/gstdshowaudiodec.c: (gst_dshowaudiodec_dispose): * sys/dshowdecwrapper/gstdshowvideodec.c: (gst_dshowvideodec_dispose): Chain up dispose methods properly. Fixes bug #515970. 2008-02-12 11:02:37 +0000 Jan Schmidt * ChangeLog: Changelog surgery: mention bug 515919 fixed in my previous commit Original commit message from CVS: Changelog surgery: mention bug 515919 fixed in my previous commit 2008-02-12 10:57:27 +0000 Wim Taymans gst/mpegvideoparse/mpegvideoparse.c: Fix leaking caps. Original commit message from CVS: * gst/mpegvideoparse/mpegvideoparse.c: (mpegvideoparse_handle_sequence), (mpegvideoparse_drain_avail), (gst_mpegvideoparse_change_state): Fix leaking caps. Fix potential buffer leak in forward mode. Cleanup queues when going to READY. Fixes #515815. 2008-02-12 10:24:03 +0000 Sebastian Dröge docs/plugins/: Remove documentation for the GIO plugin as it was moved to gst-plugins-base. Fixes bug #515964. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-gio.xml: Remove documentation for the GIO plugin as it was moved to gst-plugins-base. Fixes bug #515964. 2008-02-12 10:22:42 +0000 Jan Schmidt Fix some finalize leaks by chaining up to the parent method. Original commit message from CVS: * ext/xvid/gstxvidenc.c: * gst/vmnc/vmncdec.c: * sys/glsink/glimagesink.c: * sys/glsink/gstgldisplay.c: Fix some finalize leaks by chaining up to the parent method. 2008-02-12 05:21:46 +0000 Sebastian Dröge tests/check/elements/souphttpsrc.c: Include glib/gprintf.h for g_vasprintf(). Fixes bug #515564. Original commit message from CVS: * tests/check/elements/souphttpsrc.c: Include glib/gprintf.h for g_vasprintf(). Fixes bug #515564. 2008-02-12 05:19:05 +0000 Sebastian Dröge gst/librfb/gstrfbsrc.c: Free the rfb decoder on finalize. Fixes bug #515721. Original commit message from CVS: * gst/librfb/gstrfbsrc.c: (gst_rfb_src_dispose): Free the rfb decoder on finalize. Fixes bug #515721. 2008-02-11 13:34:47 +0000 Sebastian Dröge sys/fbdev/gstfbdevsink.c: Free the device string in finalize. Fixes bug #515722. Original commit message from CVS: * sys/fbdev/gstfbdevsink.c: (gst_fbdevsink_class_init), (gst_fbdevsink_finalize): Free the device string in finalize. Fixes bug #515722. 2008-02-11 13:33:10 +0000 Sebastian Dröge ext/xvid/gstxvidenc.c: Unset GValues after using them. Fixes bug #515720. Original commit message from CVS: * ext/xvid/gstxvidenc.c: (gst_xvidenc_init): Unset GValues after using them. Fixes bug #515720. 2008-02-11 05:11:27 +0000 Sebastian Dröge tests/check/Makefile.am: Disable the dvb plugin for the states test. Fixes bug #515567. Original commit message from CVS: * tests/check/Makefile.am: Disable the dvb plugin for the states test. Fixes bug #515567. 2008-02-10 21:03:54 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * tests/icles/metadata_editor.c: Revert changes to 2008-02-09 due to frozen. Original commit message from CVS: Revert changes to 2008-02-09 due to frozen. 2008-02-10 19:44:50 +0000 Jan Schmidt * ChangeLog: Fix Josep's surname in the previous few commits Original commit message from CVS: Fix Josep's surname in the previous few commits 2008-02-10 19:01:43 +0000 Josep Torre Valles ext/ivorbis/vorbisfile.c: Trivial fix for build warning. Original commit message from CVS: * ext/ivorbis/vorbisfile.c: Trivial fix for build warning. Patch by: Josep Torre Valles Fixes: #515588 2008-02-10 18:36:46 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/metadataexif.c: Convert from EXIF to XMP DataTime as local time. Original commit message from CVS: Convert from EXIF to XMP DataTime as local time. 2008-02-10 04:36:12 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * tests/icles/metadata_editor.c: Map Date-Time and GPS tags. Original commit message from CVS: Map Date-Time and GPS tags. 2008-02-09 03:37:40 +0000 Jan Schmidt gst/selector/Makefile.am: Listing the marshal.h in the nodist_HEADERS breaks distcheck, so let's not do that Original commit message from CVS: * gst/selector/Makefile.am: Listing the marshal.h in the nodist_HEADERS breaks distcheck, so let's not do that * tests/check/Makefile.am: Disable the crashing cdaudio plugin from the states test so I can make pre-releases. 2008-02-09 02:33:06 +0000 Jan Schmidt win32/vs6/: Convert to DOS line endings, and set -kb Original commit message from CVS: * win32/vs6/libgstdshowdecwrapper.dsp: * win32/vs6/libgstflv.dsp: Convert to DOS line endings, and set -kb 2008-02-08 18:22:08 +0000 Zaheer Abbas Merali sys/dvb/: Add URI Handler for dvb. Original commit message from CVS: * sys/dvb/Makefile.am: * sys/dvb/dvbbasebin.c: Add URI Handler for dvb. Re-order pad templates to workaround a bug in playbasebin. * sys/dvb/parsechannels.c: * sys/dvb/parsechannels.h: Add code to parse channels from zap-style channels.conf files. 2008-02-08 04:22:06 +0000 Jan Schmidt Remove multifile plugin, which has moved to -good Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-multifile.xml: * gst/multifile/Makefile.am: * gst/multifile/gstmultifile.c: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesink.h: * gst/multifile/gstmultifilesrc.c: * gst/multifile/gstmultifilesrc.h: * gst/multifile/multifile.vproj: * tests/check/Makefile.am: * tests/check/elements/multifile.c: Remove multifile plugin, which has moved to -good 2008-02-08 03:44:12 +0000 David Schleef gst/multifile/: Use g_file_[sg]et_contents() instead of using stdio functions. Original commit message from CVS: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesrc.c: Use g_file_[sg]et_contents() instead of using stdio functions. Should be less error prone. * tests/check/elements/multifile.c: Create a temporary directory using standard functions instead of creating a directory in the current dir. 2008-02-08 03:27:14 +0000 Jan Schmidt Remove spectrum plugin, which has moved to -good Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-spectrum.xml: * gst/spectrum/.cvsignore: * gst/spectrum/Makefile.am: * gst/spectrum/README: * gst/spectrum/demo-audiotest.c: * gst/spectrum/demo-osssrc.c: * gst/spectrum/gstspectrum.c: * gst/spectrum/gstspectrum.h: * gst/spectrum/spectrum.vcproj: * tests/check/Makefile.am: * tests/check/elements/spectrum.c: Remove spectrum plugin, which has moved to -good 2008-02-08 02:48:54 +0000 Jan Schmidt docs/plugins/gst-plugins-bad-plugins.*: Remove equalizer plugin docs Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: Remove equalizer plugin docs * tests/check/Makefile.am: Add GST_OPTION_CFLAGS, to get -Werror -Wall into the tests as for other modules. * tests/check/elements/multifile.c: * tests/check/elements/rganalysis.c: * tests/check/elements/rglimiter.c: Fix compiler warnings from -Wall -Werror 2008-02-08 02:00:49 +0000 Jan Schmidt Remove the equalizer plugin, which has moved to -good Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-equalizer.xml: * gst/equalizer/.cvsignore: * gst/equalizer/Makefile.am: * gst/equalizer/demo.c: * gst/equalizer/gstiirequalizer.c: * gst/equalizer/gstiirequalizer.h: * gst/equalizer/gstiirequalizer10bands.c: * gst/equalizer/gstiirequalizer10bands.h: * gst/equalizer/gstiirequalizer3bands.c: * gst/equalizer/gstiirequalizer3bands.h: * gst/equalizer/gstiirequalizernbands.c: * gst/equalizer/gstiirequalizernbands.h: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/equalizer.c: Remove the equalizer plugin, which has moved to -good 2008-02-08 01:12:09 +0000 Jan Schmidt configure.ac: Make DISABLE_DEPRECATED defined *only* during CVS, not during pre-releases or releases. Original commit message from CVS: * configure.ac: Make DISABLE_DEPRECATED defined *only* during CVS, not during pre-releases or releases. 2008-02-08 00:48:30 +0000 Jan Schmidt docs/plugins/Makefile.am: Don't scan deleted xingmux header. Original commit message from CVS: * docs/plugins/Makefile.am: Don't scan deleted xingmux header. 2008-02-08 00:40:34 +0000 Jan Schmidt Remove the xingmux plugin, as the element has moved into mpegaudioparse in -ugly. Original commit message from CVS: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-xingheader.xml: * gst/xingheader/Makefile.am: * gst/xingheader/gstxingmux.c: * gst/xingheader/gstxingmux.h: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/xingmux.c: * tests/check/elements/xingmux_testdata.h: Remove the xingmux plugin, as the element has moved into mpegaudioparse in -ugly. 2008-02-07 23:37:32 +0000 Jan Schmidt docs/plugins/Makefile.am: Remove mention of non-existent headers to fix the build. Original commit message from CVS: * docs/plugins/Makefile.am: Remove mention of non-existent headers to fix the build. 2008-02-07 23:30:45 +0000 Jan Schmidt Remove GIO plugin which has now moved to -base. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/gio/Makefile.am: * ext/gio/gstgio.c: * ext/gio/gstgio.h: * ext/gio/gstgiobasesink.c: * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.c: * ext/gio/gstgiobasesrc.h: * ext/gio/gstgiosink.c: * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: * ext/gio/gstgiosrc.h: * ext/gio/gstgiostreamsink.c: * ext/gio/gstgiostreamsink.h: * ext/gio/gstgiostreamsrc.c: * ext/gio/gstgiostreamsrc.h: * tests/check/Makefile.am: * tests/check/pipelines/.cvsignore: * tests/check/pipelines/gio.c: Remove GIO plugin which has now moved to -base. 2008-02-07 21:53:39 +0000 Jan Schmidt Remove lpwsinc and bpwsinc elements - they've become audiowsinclimit and audiowsincband respectively, in the gst-plug... Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * gst/filter/Makefile.am: * gst/filter/filter.vcproj: * gst/filter/gstbpwsinc.c: * gst/filter/gstbpwsinc.h: * gst/filter/gstfilter.c: * gst/filter/gstfilter.h: * gst/filter/gstlpwsinc.c: * gst/filter/gstlpwsinc.h: * tests/check/Makefile.am: * tests/check/elements/bpwsinc.c: * tests/check/elements/lpwsinc.c: Remove lpwsinc and bpwsinc elements - they've become audiowsinclimit and audiowsincband respectively, in the gst-plugins-good audiofx plugin. 2008-02-07 21:02:19 +0000 Sébastien Moutte ext\neon\gstneonhttpsrc.c: Include unistd.h only if _HAVE_UNISTD_H is defined Original commit message from CVS: * ext\neon\gstneonhttpsrc.c: Include unistd.h only if _HAVE_UNISTD_H is defined * gst\mpegvideoparse\mpegvideoparse.c: Use G_GUINT64_CONSTANT GLIB macro for constant * sys\dshowsrcwrapper\gstdshowaudiosrc.c: * sys\dshowsrcwrapper\gstdshowvideosrc.c: * sys\dshowdecwrapper\gstdshowaudiodec.c: * sys\dshowdecwrapper\gstdshowaudiodec.h: * sys\dshowdecwrapper\gstdshowdecwrapper.c: * sys\dshowdecwrapper\gstdshowdecwrapper.h: * sys\dshowdecwrapper\gstdshowvideodec.c * sys\dshowdecwrapper\gstdshowvideodec.h: Add a DirectShow decoder wrapper. * win32\MANIFEST: Add new win32 files to MANIFEST * win32\vs6\gst_plugins_bad.dsw: * win32\vs6\libgstdshow.dsp: * win32\vs6\libgstdshowdecwrapper.dsp: * win32\vs6\libgstflv.dsp: Add new projects to bad workspace 2008-02-07 14:45:06 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: Parse component descriptor. Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: Parse component descriptor. * gst/mpegtsparse/mpegtsparse.c: Add SI pids to every program (but hardcoded currently). 2008-02-07 13:59:41 +0000 Edgard Lima * ChangeLog: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.glade: Add more tags. Improve test app. Original commit message from CVS: Add more tags. Improve test app. 2008-02-07 13:48:20 +0000 Stefan Kost gst/multifile/gstmultifilesink.c: Add a fixme comment. Original commit message from CVS: * gst/multifile/gstmultifilesink.c: Add a fixme comment. * gst/selector/gstoutputselector.c: Fix same leak as in input-selector. * tests/icles/output-selector-test.c: Improve the test. 2008-02-07 13:41:11 +0000 Stefan Kost gst/spectrum/gstspectrum.c: Improve the docs. Original commit message from CVS: * gst/spectrum/gstspectrum.c: Improve the docs. 2008-02-07 12:05:44 +0000 Tim-Philipp Müller configure.ac: The dc1394 plugin seems to use API that was removed or changed before the final 2.0.0 release, so only ... Original commit message from CVS: * configure.ac: The dc1394 plugin seems to use API that was removed or changed before the final 2.0.0 release, so only build it if 2.0.0-rc5 is available. Someone needs to port it to the final API. * ext/dc1394/gstdc1394.c: (gst_dc1394_change_camera_transmission): Include string.h for memcpy and use g_usleep instead of usleep. 2008-02-07 10:04:01 +0000 Sebastian Dröge gst/filter/gstlpwsinc.c: Fix typo in the long description of the element. Original commit message from CVS: * gst/filter/gstlpwsinc.c: Fix typo in the long description of the element. 2008-02-07 02:06:19 +0000 Jan Schmidt gst/xingheader/Makefile.am: Put CFLAGS and LIBS in the right order Original commit message from CVS: * gst/xingheader/Makefile.am: Put CFLAGS and LIBS in the right order 2008-02-06 18:56:40 +0000 Tim-Philipp Müller configure.ac: ximagesrc has moved to -good, so no need to check for the required X libs here any more. Original commit message from CVS: * configure.ac: ximagesrc has moved to -good, so no need to check for the required X libs here any more. 2008-02-06 11:07:47 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.c: Fix memory leak and improve debugging a bit. Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (gst_soup_http_src_got_chunk_cb), (gst_soup_http_src_create): Fix memory leak and improve debugging a bit. 2008-02-05 17:10:11 +0000 Edgard Lima * ChangeLog: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: Add more tags mapping. Original commit message from CVS: Add more tags mapping. 2008-02-05 12:19:46 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtsparse.c: Handle latency queries in src pads. Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Handle latency queries in src pads. 2008-02-05 11:40:43 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: Add flag to both sdt and nit structures to say whether the table is for the actua... Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: Add flag to both sdt and nit structures to say whether the table is for the actual network/ts or not. 2008-02-05 11:30:49 +0000 Josep Torre Valles gst/mpegvideoparse/mpegvideoparse.c: Flush packetizer too. Original commit message from CVS: Patch by: Josep Torre Valles * gst/mpegvideoparse/mpegvideoparse.c: (gst_mpegvideoparse_flush): Flush packetizer too. 2008-02-04 19:15:39 +0000 Sebastian Dröge ext/ladspa/gstladspa.c: Don't use GST_BOILERPLATE as the stuff generated from it is not used anyway and can't be used. Original commit message from CVS: * ext/ladspa/gstladspa.c: (gst_ladspa_base_init), (gst_ladspa_class_init), (ladspa_describe_plugin), (plugin_init): Don't use GST_BOILERPLATE as the stuff generated from it is not used anyway and can't be used. Store the class struct of the correct type in parent_class. Pass the LADSPA_Descriptor as class_data to the class_init function as preparation for the time, when we can add pad templates and friends in class_init and add a FIXME for that. Don't use a custom hash table for passing the LADSPA_Descriptors to base_init but use g_type_set_qdata and g_type_get_qdata. 2008-02-04 16:22:11 +0000 Edward Hervey ext/mpeg2enc/gstmpeg2encpicturereader.cc: Really fix the build. Original commit message from CVS: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: Really fix the build. TODO : Apply spankOmatic2000 on thaytan's rear end. 2008-02-04 13:12:09 +0000 Tim-Philipp Müller ext/mpeg2enc/gstmpeg2encpicturereader.cc: Fix compilation with libmjpegtools 1.8.x. Original commit message from CVS: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: (GstMpeg2EncPictureReader.StreamPictureParams): Fix compilation with libmjpegtools 1.8.x. 2008-02-04 11:48:50 +0000 Sebastian Dröge ext/ladspa/gstsignalprocessor.c: Don't unref the pad template after adding it. gst_element_class_add_pad_template tak... Original commit message from CVS: * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_class_add_pad_template): Don't unref the pad template after adding it. gst_element_class_add_pad_template takes ownership of it. 2008-02-03 18:22:18 +0000 Jan Schmidt ext/mpeg2enc/gstmpeg2encpicturereader.cc: Use the incoming pixel-aspect-ratio if provided to infer a default aspect r... Original commit message from CVS: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: Use the incoming pixel-aspect-ratio if provided to infer a default aspect ratio, which can be overridden using the 'aspect' property. Fixes: #499008 2008-02-03 17:47:25 +0000 Andrzej Mendel configure.ac: Fix variable naming to make it possible to build the glimagesink plugin. Fixes bug #514093. Original commit message from CVS: Patch by: Andrzej Mendel * configure.ac: Fix variable naming to make it possible to build the glimagesink plugin. Fixes bug #514093. 2008-02-02 23:25:10 +0000 Tim-Philipp Müller ext/metadata/gstmetadatademux.c: Demote metadatademux to GST_RANK_NONE for the release, it's not ready to be autoplug... Original commit message from CVS: * ext/metadata/gstmetadatademux.c: Demote metadatademux to GST_RANK_NONE for the release, it's not ready to be autoplugged yet. * tests/icles/metadata_editor.c: Fix printf format warning for GType on ppc32 by removing it, since it doesn't make sense to print the GType value anyway. 2008-02-02 20:22:19 +0000 Edgard Lima * ChangeLog: * common: * ext/metadata/TODO: * ext/metadata/gstmetadatamux.c: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: Map more Exif tags. Original commit message from CVS: Map more Exif tags. 2008-02-01 17:08:18 +0000 Wim Taymans gst/selector/gstinputselector.c: Don't leak event on pads that are not linked. Fixes #512826. Original commit message from CVS: * gst/selector/gstinputselector.c: (gst_selector_pad_event): Don't leak event on pads that are not linked. Fixes #512826. 2008-02-01 13:02:53 +0000 Tim-Philipp Müller configure.ac: Bump core/base requirements to released versions, to avoid confusion. Original commit message from CVS: * configure.ac: Bump core/base requirements to released versions, to avoid confusion. * gst/deinterlace/Makefile.am: * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_set_caps): Use the new GstVideoFormat API to get strides, plane offsets etc.. For Y42B we still need to calculate these ourselves, since the lib in -base doesn't know about this format yet and we can't bump the requirement to CVS right now. Fix the Y42B stride, offset and size calculations for odd widths and heights while we're at it though (to match those in videotestsrc). 2008-01-31 21:55:44 +0000 Edgard Lima * ChangeLog: * ext/metadata/metadata_mapping.htm: * ext/metadata/metadataexif.c: * ext/metadata/metadataiptc.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadataxmp.c: Add documentation. Original commit message from CVS: Add documentation. 2008-01-31 17:20:41 +0000 Wim Taymans ext/metadata/metadataparsejpeg.c: Fix compilation. Original commit message from CVS: * ext/metadata/metadataparsejpeg.c: (metadataparse_jpeg_reading): Fix compilation. 2008-01-31 17:18:46 +0000 Wim Taymans gst-libs/gst/app/gstappsink.c: Really clean up the queue instead of just unreffing all buffers in it. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_dispose): Really clean up the queue instead of just unreffing all buffers in it. * gst-libs/gst/app/gstappsrc.c: (gst_app_src_base_init), (gst_app_src_class_init), (gst_app_src_init), (gst_app_src_dispose), (gst_app_src_finalize): Fix dispose/finalize. 2008-01-31 15:52:18 +0000 Jan Schmidt ext/faad/gstfaad.c: Fix compiler warning by making the function signature match what everyone is passing in... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_chanpos_to_gst): Fix compiler warning by making the function signature match what everyone is passing in... * tests/icles/Makefile.am: Fix the build on Solaris by removing GNU ld specific flags that look unnecessary. 2008-01-31 10:16:46 +0000 Sebastian Dröge ext/metadata/Makefile.am: Add some relevant variables to CFLAGS and LIBADD, for example our compiler warnings paramters. Original commit message from CVS: * ext/metadata/Makefile.am: Add some relevant variables to CFLAGS and LIBADD, for example our compiler warnings paramters. * ext/metadata/gstbasemetadata.c: (gst_base_metadata_strip_push_buffer), (gst_base_metadata_calculate_offsets), (gst_base_metadata_src_event), (gst_base_metadata_sink_activate): * ext/metadata/gstmetadatademux.c: (gst_metadata_demux_init), (gst_metadata_demux_set_property), (gst_metadata_demux_dispose): * ext/metadata/gstmetadatamux.c: (gst_metadata_mux_init), (gst_metadata_mux_set_property), (gst_metadata_mux_get_property), (gst_metadata_mux_dispose), (gst_metadata_mux_create_chunks_from_tags): * ext/metadata/metadata.c: (metadata_dispose): * ext/metadata/metadataexif.c: (metadataparse_exif_content_foreach_entry_func), (metadatamux_exif_for_each_tag_in_list): * ext/metadata/metadataiptc.c: (metadatamux_iptc_for_each_tag_in_list): * ext/metadata/metadatamuxjpeg.c: (metadatamux_jpeg_lazy_update), (metadatamux_jpeg_reading): * ext/metadata/metadatamuxpng.c: (metadatamux_png_reading): * ext/metadata/metadataparsejpeg.c: (metadataparse_jpeg_reading): * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparseutil.h: * ext/metadata/metadataxmp.c: (metadataparse_xmp_tag_list_add), (metadatamux_xmp_create_chunk_from_tag_list): Fix a million warnings that showed up after the above change. 2008-01-31 09:50:31 +0000 Sebastian Dröge ext/soup/gstsouphttpsrc.c: Add changes to gstsouphttpsrc.c that were missing from last commit. Original commit message from CVS: * ext/soup/gstsouphttpsrc.c: (_do_init), (gst_soup_http_src_base_init), (gst_soup_http_src_class_init), (gst_soup_http_src_init), (gst_soup_http_src_dispose), (gst_soup_http_src_set_property), (gst_soup_http_src_get_property), (gst_soup_http_src_unicodify), (gst_soup_http_src_cancel_message), (gst_soup_http_src_queue_message), (gst_soup_http_src_add_range_header), (gst_soup_http_src_session_unpause_message), (gst_soup_http_src_session_pause_message), (gst_soup_http_src_session_close), (gst_soup_http_src_got_headers_cb), (gst_soup_http_src_got_body_cb), (gst_soup_http_src_finished_cb), (gst_soup_http_src_got_chunk_cb), (gst_soup_http_src_response_cb), (gst_soup_http_src_parse_status), (gst_soup_http_src_create), (gst_soup_http_src_start), (gst_soup_http_src_stop), (gst_soup_http_src_unlock), (gst_soup_http_src_unlock_stop), (gst_soup_http_src_get_size), (gst_soup_http_src_is_seekable), (gst_soup_http_src_do_seek), (gst_soup_http_src_set_location), (gst_soup_http_src_set_proxy), (gst_soup_http_src_uri_get_type), (gst_soup_http_src_uri_get_protocols), (gst_soup_http_src_uri_get_uri), (gst_soup_http_src_uri_set_uri), (gst_soup_http_src_uri_handler_init), (plugin_init): Add changes to gstsouphttpsrc.c that were missing from last commit. 2008-01-31 08:57:16 +0000 Wouter Cloetens Make coding style more consistent, including class renaming. Original commit message from CVS: Patch by: Wouter Cloetens * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/inspect/plugin-soup.xml: (gst_soup_http_src_base_init), (gst_soup_http_src_class_init), (gst_soup_http_src_init), (gst_soup_http_src_dispose), (gst_soup_http_src_set_property), (gst_soup_http_src_get_property), (gst_soup_http_src_unicodify), (gst_soup_http_src_cancel_message), (gst_soup_http_src_queue_message), (gst_soup_http_src_add_range_header), (gst_soup_http_src_session_unpause_message), (gst_soup_http_src_session_pause_message), (gst_soup_http_src_session_close), (gst_soup_http_src_got_headers_cb), (gst_soup_http_src_got_body_cb), (gst_soup_http_src_finished_cb), (gst_soup_http_src_got_chunk_cb), (gst_soup_http_src_response_cb), (gst_soup_http_src_parse_status), (gst_soup_http_src_create), (gst_soup_http_src_start), (gst_soup_http_src_stop), (gst_soup_http_src_unlock), (gst_soup_http_src_unlock_stop), (gst_soup_http_src_get_size), (gst_soup_http_src_is_seekable), (gst_soup_http_src_do_seek), (gst_soup_http_src_set_location), (gst_soup_http_src_set_proxy), (gst_soup_http_src_uri_get_type), (gst_soup_http_src_uri_get_protocols), (gst_soup_http_src_uri_get_uri), (gst_soup_http_src_uri_set_uri), (gst_soup_http_src_uri_handler_init), (plugin_init): * ext/soup/gstsouphttpsrc.h: Make coding style more consistent, including class renaming. 2008-01-30 20:55:58 +0000 Sebastian Dröge configure.ac: Fix configure check for soundtouch to not produce syntax errors. Original commit message from CVS: * configure.ac: Fix configure check for soundtouch to not produce syntax errors. 2008-01-30 19:19:33 +0000 Sebastian Dröge Fix build with exempi >= 1.99.5 and fix the include path for exempi. Original commit message from CVS: * configure.ac: * ext/metadata/metadataxmp.c: (metadatamux_xmp_for_each_tag_in_list): Fix build with exempi >= 1.99.5 and fix the include path for exempi. 2008-01-30 16:53:40 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: Just uptade the ToDo list. Original commit message from CVS: Just uptade the ToDo list. 2008-01-30 16:05:24 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstbasemetadata.c: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadatatypes.c: * ext/metadata/metadatatypes.h: * ext/metadata/metadataxmp.c: Add documentation. Speed up a bit png muxer. Fix xmp muxer. Original commit message from CVS: Add documentation. Speed up a bit png muxer. Fix xmp muxer. 2008-01-30 15:40:44 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.c: Update documentation a bit. Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: Update documentation a bit. * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-soup.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-switch.xml: * docs/plugins/inspect/plugin-videocrop.xml: Regenerate everything for the documentation changes we had. 2008-01-30 15:34:25 +0000 Sebastian Dröge ext/gio/: Use async variants of the close stream functions to prevent blocking for a long time there and add some mor... Original commit message from CVS: * ext/gio/gstgiobasesink.c: (close_stream_cb), (gst_gio_base_sink_stop), (gst_gio_base_sink_event), (gst_gio_base_sink_render), (gst_gio_base_sink_set_stream): * ext/gio/gstgiobasesrc.c: (close_stream_cb), (gst_gio_base_src_stop), (gst_gio_base_src_create), (gst_gio_base_src_set_stream): Use async variants of the close stream functions to prevent blocking for a long time there and add some more sanity checks for a correct stream. 2008-01-30 13:38:58 +0000 Sebastian Dröge tests/icles/Makefile.am: Move -Wl parameter from _LDADD to _LDFLAGS to fix autogen.sh. Original commit message from CVS: * tests/icles/Makefile.am: Move -Wl parameter from _LDADD to _LDFLAGS to fix autogen.sh. 2008-01-30 13:29:15 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.c: Let the proxy property default to the content of the $http_proxy environment variable. Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_init): Let the proxy property default to the content of the $http_proxy environment variable. 2008-01-30 13:08:45 +0000 Wouter Cloetens tests/check/: Add missing files for the unit test. Original commit message from CVS: Patch by: Wouter Cloetens * tests/check/test-cert.pem: * tests/check/test-key.pem: Add missing files for the unit test. 2008-01-30 13:06:01 +0000 Wouter Cloetens docs/plugins/: Add souphttpsrc to the docs. Original commit message from CVS: Patch by: Wouter Cloetens * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Add souphttpsrc to the docs. * configure.ac: * ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_class_init), (gst_souphttp_src_init), (gst_souphttp_src_dispose), (gst_souphttp_src_set_property), (gst_souphttp_src_get_property), (gst_souphttp_src_cancel_message), (gst_souphttp_src_queue_message), (gst_souphttp_src_add_range_header), (gst_souphttp_src_session_unpause_message), (gst_souphttp_src_session_pause_message), (gst_souphttp_src_session_close), (gst_souphttp_src_got_headers_cb), (gst_souphttp_src_got_body_cb), (gst_souphttp_src_finished_cb), (gst_souphttp_src_got_chunk_cb), (gst_souphttp_src_response_cb), (gst_souphttp_src_parse_status), (gst_souphttp_src_create), (gst_souphttp_src_start), (gst_souphttp_src_stop), (gst_souphttp_src_unlock), (gst_souphttp_src_unlock_stop), (gst_souphttp_src_get_size), (gst_souphttp_src_is_seekable), (gst_souphttp_src_do_seek), (gst_souphttp_src_set_location), (gst_souphttp_src_set_proxy), (plugin_init): * ext/soup/gstsouphttpsrc.h: Add support for libsoup2.4 and require it. Also implement redirection and manual proxy specification. Fixes bug #510708. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/souphttpsrc.c: Add unit test for souphttpsrc. 2008-01-30 12:56:51 +0000 Edgard Lima * ChangeLog: * ext/Makefile.am: * ext/metadata/TODO: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxjpeg.h: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadatamuxpng.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsepng.c: * tests/icles/Makefile.am: Add documentation. Fix test app compilation. Fix pull mode. Original commit message from CVS: Add documentation. Fix test app compilation. Fix pull mode. 2008-01-29 18:57:27 +0000 Thijs Vermeir gst/rtpmanager/gstrtpjitterbuffer.c: Try to get the new clock-rate from the buffer caps when we receive a new payload... Original commit message from CVS: Patch by: Thijs Vermeir * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain): Try to get the new clock-rate from the buffer caps when we receive a new payload type instead of always firing the signal. Fixes #512774. 2008-01-29 18:05:01 +0000 Sebastian Dröge ext/mpeg2enc/gstmpeg2enc.cc: Define LOG_NONE and friends if they're not defined yet. mjpegtools 1.9.0rc3 removed thei... Original commit message from CVS: * ext/mpeg2enc/gstmpeg2enc.cc: Define LOG_NONE and friends if they're not defined yet. mjpegtools 1.9.0rc3 removed their definitions but without it doesn't make much sense to write a log handler. 2008-01-29 11:32:27 +0000 Stefan Kost docs/plugins/: Add base classes for metadata and equalizer (no introspection yet). Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.types: Add base classes for metadata and equalizer (no introspection yet). 2008-01-29 07:43:28 +0000 Stefan Kost ext/metadata/README: Formatting. Original commit message from CVS: * ext/metadata/README: Formatting. * tests/icles/metadata_editor.c: Include stdlib.h. 2008-01-29 07:38:31 +0000 Stefan Kost Replace the switch plugin with the selector plugin. Add output- selector as the opposite of input-selectoo (was switc... Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-switch.xml: * gst/selector/.cvsignore: * gst/selector/Makefile.am: * gst/selector/gstinputselector.c: * gst/selector/gstinputselector.h: * gst/selector/gstoutputselector.c: * gst/selector/gstoutputselector.h: * gst/selector/gstselector-marshal.list: * gst/selector/gstselector.c: * gst/selector/selector.vcproj: * gst/switch/.cvsignore: * gst/switch/Makefile.am: * gst/switch/gstswitch-marshal.list: * gst/switch/gstswitch.c: * gst/switch/gstswitch.h: * gst/switch/switch.vcproj: * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/output-selector-test.c: Replace the switch plugin with the selector plugin. Add output- selector as the opposite of input-selectoo (was switch). Add a test for output-selector. Add docs for the elements. The vcproj needs update. Fixes #500142. 2008-01-28 23:18:44 +0000 Tim-Philipp Müller gst/h264parse/gsth264parse.c: Try to avoid 'unused variable' compiler warning if debugging is disabled (not bullet pr... Original commit message from CVS: * gst/h264parse/gsth264parse.c: (gst_h264_parse_chain_forward): Try to avoid 'unused variable' compiler warning if debugging is disabled (not bullet proof, but seems to do for now). (#512654) 2008-01-28 11:47:18 +0000 Sebastian Dröge ext/soundtouch/gstbpmdetect.cc: Clean up a bit and only allocate a temporary buffer for the data if processing stereo... Original commit message from CVS: * ext/soundtouch/gstbpmdetect.cc: Clean up a bit and only allocate a temporary buffer for the data if processing stereo data as BPMDetect downmixes from stereo to mono and stores the result in the input data. Thanks to Stefan Kost for the suggestions. 2008-01-27 17:02:24 +0000 Sebastian Dröge ext/soundtouch/gstpitch.cc: Cast a double to a GstClockTimeDiff to fix a compiler warning. Original commit message from CVS: * ext/soundtouch/gstpitch.cc: Cast a double to a GstClockTimeDiff to fix a compiler warning. 2008-01-27 16:12:45 +0000 Stefan Kost tests/icles/metadata_editor.c: Printf format fix. Original commit message from CVS: * tests/icles/metadata_editor.c: Printf format fix. 2008-01-27 07:51:06 +0000 Sebastian Dröge ext/soundtouch/gstpitch.cc: Don't send a LATENCY event for now until we get the usage right. Original commit message from CVS: * ext/soundtouch/gstpitch.cc: Don't send a LATENCY event for now until we get the usage right. 2008-01-27 07:37:40 +0000 Sebastian Dröge ext/soundtouch/gstpitch.*: Implement LATENCY query and notify about latency changes. Original commit message from CVS: * ext/soundtouch/gstpitch.cc: * ext/soundtouch/gstpitch.hh: Implement LATENCY query and notify about latency changes. Unfortunately we don't have a fixed latency but it changes a bit with each buffer so we only send an LATENCY event with the maximum latency if it changes. Always calculate the timestamp, duration, etc from the sample rate instead of using a pre-calculated duration for one sample to prevent large rounding errors. 2008-01-27 07:32:19 +0000 Sebastian Dröge Add support for building against mjpegtools 1.9 while keeping compatiblity with older versions. Original commit message from CVS: Based on a patch by: Hans de Goede * configure.ac: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.hh: Add support for building against mjpegtools 1.9 while keeping compatiblity with older versions. 2008-01-27 06:31:52 +0000 Sebastian Dröge ext/soundtouch/gstbpmdetect.cc: Only consider a BPM value above 1.0 as valid. Original commit message from CVS: * ext/soundtouch/gstbpmdetect.cc: Only consider a BPM value above 1.0 as valid. 2008-01-27 05:56:04 +0000 Sebastian Dröge ext/soundtouch/: Add BPM detection plugin based on SoundTouch's libBPM. Original commit message from CVS: * ext/soundtouch/Makefile.am: * ext/soundtouch/gstbpmdetect.cc: * ext/soundtouch/gstbpmdetect.hh: * ext/soundtouch/plugin.c: (plugin_init): Add BPM detection plugin based on SoundTouch's libBPM. * ext/soundtouch/gstpitch.cc: Allow sample rates until MAX instead of only 48kHz and remove the buffer-frames field from that caps. Clear the remaining samples completely when necessary to get into a clean state again. 2008-01-26 16:19:26 +0000 Sebastian Dröge gst/filter/: Don't implement get_unit_size() ourselves, the GstAudioFilter base class already does this for us. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init): * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init): Don't implement get_unit_size() ourselves, the GstAudioFilter base class already does this for us. 2008-01-26 15:12:50 +0000 Sebastian Dröge ext/soundtouch/gstpitch.cc: Allow seeking only in TIME and DEFAULT format, other formats will not work as expected. A... Original commit message from CVS: * ext/soundtouch/gstpitch.cc: Allow seeking only in TIME and DEFAULT format, other formats will not work as expected. Also handle a stop position of -1 correctly for seeks, newsegment events and the queries. This fixes playback with the pitch element if upstream doesn't know the duration or has -1 as stop position in NEWSEGMENT events for other reasons. Before simply nothing was played as the segment was going from 0 to 0. Send a GST_MESSAGE_DURATION whenever the rate or tempo is changed so applications can update their cached duration. Fixes bug #503308. Some random cleanup and memory leak closing. 2008-01-26 14:35:22 +0000 Sebastian Dröge ext/musepack/: First include the libmpcdec headers before everything else as they #define TRUE and FALSE unconditiona... Original commit message from CVS: * ext/musepack/gstmusepackdec.h: * ext/musepack/gstmusepackreader.c: First include the libmpcdec headers before everything else as they #define TRUE and FALSE unconditionally and we otherwise get conflicts with the ones that GLib defines. 2008-01-26 13:24:17 +0000 Sebastian Dröge Add support for libsoundtouch 1.3.1 and add an ugly workaround for the header definined PACKAGE and other variables f... Original commit message from CVS: * configure.ac: * ext/soundtouch/gstpitch.cc: Add support for libsoundtouch 1.3.1 and add an ugly workaround for the header definined PACKAGE and other variables for which we need our own values from config.h. 2008-01-26 12:11:47 +0000 Tim-Philipp Müller configure.ac: Check for libglade-2.0, for the metadata-editor example. Original commit message from CVS: * configure.ac: Check for libglade-2.0, for the metadata-editor example. * tests/icles/Makefile.am: Only try to build the metadata-editor example if we have gtk and glade (otherwise the build would just fail ...); fix build in uninstalled setup. * tests/icles/metadata_editor.c: (on_cell_edited), (ui_add_columns): Fix compiler warnings (use GLib macros to cast pointer <-> int). 2008-01-25 17:45:28 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/gstbasemetadata.c: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadataexif.c: * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadataiptc.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/metadataparseutil.c: * ext/metadata/metadataparseutil.h: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadatatypes.c: * ext/metadata/metadatatypes.h: * ext/metadata/metadataxmp.c: * ext/metadata/metadataxmp.h: * ext/metadata/test/Makefile: * tests/icles/Makefile.am: * tests/icles/metadata_editor.c: * tests/icles/metadata_editor.glade: Add lot of documentation. Original commit message from CVS: Add lot of documentation. 2008-01-25 17:35:46 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Open frontend in NULL->READY so caps about dvb adapter can be seen by the app. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Open frontend in NULL->READY so caps about dvb adapter can be seen by the app. 2008-01-25 16:58:00 +0000 Olivier Crete gst/rtpmanager/gstrtpbin.c: Also handle lip-sync when the clock-rate is not provided with caps but with a signal. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), (create_stream), (payload_type_change), (new_ssrc_pad_found): Also handle lip-sync when the clock-rate is not provided with caps but with a signal. 2008-01-25 16:00:52 +0000 Olivier Crete gst/rtpmanager/: Remove the fixed clock-rate from the jitterbuffer and extend it so that a clock-rate can be provided... Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain): * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew), (rtp_jitter_buffer_insert): * gst/rtpmanager/rtpjitterbuffer.h: Remove the fixed clock-rate from the jitterbuffer and extend it so that a clock-rate can be provided with each buffer instead. Fixes #511686. 2008-01-25 15:49:55 +0000 Olivier Crete gst/rtpmanager/gstrtpjitterbuffer.c: Remove old unused variable. Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Remove old unused variable. Track pt on input buffers and get the clock-rate when it changes. Ignore packets with unknown clock-rate. See #511686. 2008-01-25 12:48:40 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Post bus message about adapter type and it's capabilities, when opening the frontend. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Post bus message about adapter type and it's capabilities, when opening the frontend. After failing to read from the dvr, post a bus message to inform the app. 2008-01-25 09:50:07 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: The logic for the guard interval calculation was totally wrong. Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: The logic for the guard interval calculation was totally wrong. Fixed. 2008-01-25 01:44:27 +0000 Olivier Crete gst/rtpmanager/rtpsource.c: Fix unref of buffer using the wrong function. Fixes #511920 Original commit message from CVS: Patch by: Olivier Crete * gst/rtpmanager/rtpsource.c: Fix unref of buffer using the wrong function. Fixes #511920 2008-01-24 13:23:03 +0000 Stefan Kost docs/plugins/: Now we have full hierarchy. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: Now we have full hierarchy. * docs/plugins/inspect/plugin-metadata.xml: Regenerate. * ext/amrwb/gstamrwbdec.h: Add doc blob for object instance. 2008-01-24 10:15:34 +0000 Tim-Philipp Müller docs/plugins/: Update this too, hopefully fixes the docs build (does at least for me, after make clean in docs/plugins). Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-metadata.xml: Update this too, hopefully fixes the docs build (does at least for me, after make clean in docs/plugins). 2008-01-24 08:12:29 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Fix network name descriptor, the length is actually the descriptor length not stored in the byte af... Original commit message from CVS: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtspacketizer.c: Fix network name descriptor, the length is actually the descriptor length not stored in the byte after. Fix bounds checking to be more correct. 2008-01-24 00:22:17 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Parse and add to relevant bus messages the terrestrial delivery system descriptor and the logical c... Original commit message from CVS: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtspacketizer.c: Parse and add to relevant bus messages the terrestrial delivery system descriptor and the logical channel descriptor. Do bounds checking on data stored in descriptor before use. 2008-01-23 16:35:34 +0000 Edgard Lima * ChangeLog: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/metadata/TODO: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatademux.h: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/metadatatags.c: Add some documentation. Original commit message from CVS: Add some documentation. 2008-01-23 15:51:20 +0000 Sebastian Dröge Add support for building against libdca (with the libdts compat header). Fixes bug #511530. Original commit message from CVS: * configure.ac: * ext/dts/gstdtsdec.c: Add support for building against libdca (with the libdts compat header). Fixes bug #511530. Should probably be ported to libdca as some points as it's the successor of libdts. 2008-01-23 14:59:47 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Do not go on forever if problem with reading from dvr, rather return NULL. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Do not go on forever if problem with reading from dvr, rather return NULL. Handle some cleanup issues of closing filedescriptors when failing to tune or similar. 2008-01-23 13:18:24 +0000 Christian Schaller * ChangeLog: * gst-plugins-bad.spec.in: * gst/rawparse/Makefile.am: Add missing no_inst header files to Makefile.am so disting still works Original commit message from CVS: Add missing no_inst header files to Makefile.am so disting still works Update spec file with latest changes 2008-01-23 10:34:40 +0000 Sebastian Dröge Add documentation for the xingheader plugin. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/xingheader/gstxingmux.c: * gst/xingheader/gstxingmux.h: Add documentation for the xingheader plugin. * tests/check/elements/xingmux.c: (GST_START_TEST): Set element state to PLAYING before doing something else. 2008-01-23 10:11:44 +0000 Sebastian Dröge tests/check/: Add simple unit test for the xingmux element. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/xingmux.c: (setup_xingmux), (cleanup_xingmux), (GST_START_TEST), (xingmux_suite), (main): * tests/check/elements/xingmux_testdata.h: Add simple unit test for the xingmux element. * gst/xingheader/gstxingmux.c: (generate_xing_header), (gst_xing_mux_finalize), (xing_reset): Fix a memleak and invalid seek tables with less than 100 MP3 frames. 2008-01-23 09:49:27 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Parsed the satellite delivery system descriptor and added into nit's transport structure for delive... Original commit message from CVS: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtspacketizer.c: Parsed the satellite delivery system descriptor and added into nit's transport structure for delivery over the bus. 2008-01-22 20:27:28 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: Parsed and added network name to the nit structure sent in the bus message. Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: Parsed and added network name to the nit structure sent in the bus message. 2008-01-22 19:59:39 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: Remove leaks introduced by not freeing g_strndup'd strings. Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: Remove leaks introduced by not freeing g_strndup'd strings. Fix start_time and duration parsing in EIT. 2008-01-22 18:40:16 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.c: Add event name and description to the eit structure sent in the bus message. Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: Add event name and description to the eit structure sent in the bus message. 2008-01-22 18:08:01 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtsparse.c: Revert const removal from previous commit. Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Revert const removal from previous commit. 2008-01-22 18:04:04 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Added descriptor searching infrastructure from Fluendo TS demuxer. Original commit message from CVS: * gst/mpegtsparse/Makefile.am: * gst/mpegtsparse/gstmpegdesc.c: * gst/mpegtsparse/gstmpegdesc.h: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: Added descriptor searching infrastructure from Fluendo TS demuxer. Add channel name and provider to the sdt structure sent in the bus message. 2008-01-22 17:43:35 +0000 Julien Moutte gst/h264parse/gsth264parse.c: Parse NAL units in forward mode to mark delta units flags. Original commit message from CVS: 2008-01-22 Julien Moutte * gst/h264parse/gsth264parse.c: (gst_h264_parse_chain_forward): Parse NAL units in forward mode to mark delta units flags. 2008-01-22 12:06:19 +0000 Stefan Kost docs/plugins/: Regenerate. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: Regenerate. * docs/plugins/inspect/plugin-tremor.xml: Add vorbisidec aka trmor. * ext/dc1394/gstdc1394.c: Add short description. 2008-01-22 09:55:23 +0000 Stefan Kost docs/plugins/Makefile.am: Add missing eol \ Original commit message from CVS: * docs/plugins/Makefile.am: Add missing eol \ * docs/plugins/gst-plugins-bad-plugins-sections.txt: Place object names to standard sectionas plugin dont document those. * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: regenerate. * ext/ivorbis/vorbisdec.c: * ext/ivorbis/vorbisdec.h: Mark private vars and add short desc. * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: Add short desc. 2008-01-21 14:33:11 +0000 Stefan Kost One less to do. Its 'nuv' not 'nvu'. As an extra bonus I mention what it actually is. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/nuvdemux/gstnuvdemux.c: One less to do. Its 'nuv' not 'nvu'. As an extra bonus I mention what it actually is. 2008-01-21 14:19:32 +0000 Stefan Kost docs/plugins/: Update lists again. Those whole can build ivorbisdec, mythtvsrc, nvudemux and theoradecexp, please com... Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Update lists again. Those whole can build ivorbisdec, mythtvsrc, nvudemux and theoradecexp, please commit the inspect/plugin-xxx.xml. * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-rawparse.xml * docs/plugins/inspect/plugin-videoparse.xml: Replace videoparse with rawparse. * gst/dvdspu/gstdvdspu.h: Help gtk-doc to recognize the object struct. 2008-01-21 12:42:09 +0000 Stefan Kost gst/librfb/rfbdecoder.*: Don't use gtk-doc comment style for non gtk-doc comments. Original commit message from CVS: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Don't use gtk-doc comment style for non gtk-doc comments. Make one static function static. 2008-01-21 12:19:13 +0000 Gabriel Bouvigne gst/deinterlace/gstdeinterlace.*: Provide 4:2:2 support Original commit message from CVS: Patch by: Gabriel Bouvigne * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_class_init), (gst_deinterlace_init), (gst_deinterlace_set_caps), (gst_deinterlace_transform_ip), (gst_deinterlace_set_property), (gst_deinterlace_get_property): * gst/deinterlace/gstdeinterlace.h: Provide 4:2:2 support Also deinterlace chroma planes Allow to turn on/off deinterlacing Change of default thresholds, in order to provide acceptable results with default params. Fixes #511001. 2008-01-21 11:04:00 +0000 Tim-Philipp Müller docs/plugins/gst-plugins-bad-plugins-sections.txt: Update docs file too. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Update docs file too. 2008-01-21 11:01:30 +0000 Tim-Philipp Müller gst/dvdspu/: Fix up dvdspu element again after previous namespace mangling: rename debug category variable to old nam... Original commit message from CVS: * gst/dvdspu/gstdvdspu-render.c: (gst_dvd_spu_render_spu): * gst/dvdspu/gstdvdspu.c: (dvdspu_debug), (GST_CAT_DEFAULT), (subpic_sink_factory), (gst_dvd_spu_base_init), (gst_dvd_spu_class_init), (gst_dvd_spu_init), (gst_dvd_spu_clear), (gst_dvd_spu_dispose), (gst_dvd_spu_finalize), (gst_dvd_spu_flush_spu_info), (gst_dvd_spu_buffer_alloc), (gst_dvd_spu_src_event), (gst_dvd_spu_video_set_caps), (gst_dvd_spu_video_proxy_getcaps), (gst_dvd_spu_video_event), (gst_dvd_spu_video_chain), (dvspu_handle_vid_buffer), (gst_dvd_spu_redraw_still), (gst_dvd_spu_parse_chg_colcon), (gst_dvd_spu_exec_cmd_blk), (gst_dvd_spu_finish_spu_buf), (gst_dvd_spu_setup_cmd_blk), (gst_dvd_spu_handle_new_spu_buf), (gst_dvd_spu_handle_dvd_event), (gst_dvd_spu_advance_spu), (gst_dvd_spu_check_still_updates), (gst_dvd_spu_subpic_chain), (gst_dvd_spu_subpic_event), (gst_dvd_spu_change_state), (gst_dvd_spu_plugin_init): * gst/dvdspu/gstdvdspu.h: (GST_TYPE_DVD_SPU): Fix up dvdspu element again after previous namespace mangling: rename debug category variable to old name, matching that in dvdspu-render.c, to avoid undefined symbol error when loading the module; same for the _render function in dvdspu-render.c: we must use the same name in both .c files; change functions now called gstgst_* back to gst_* again; and while we're at it, we may as well canonicalise the namespace properly, namely to gst_dvd_spu_*. 2008-01-21 10:06:08 +0000 Stefan Kost Coherent namespace usage and adding symbold from unused to sections. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/theora/theoradec.c: * ext/theora/theoradec.h: Coherent namespace usage and adding symbold from unused to sections. 2008-01-21 09:57:07 +0000 Stefan Kost docs/plugins/: Add symbols from -unused.txt to the right place. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Add symbols from -unused.txt to the right place. * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: Coherent namespace usage. * gst/spectrum/gstspectrum.c: Fix broken XML fragment in doc snippet even more. 2008-01-21 07:54:02 +0000 Stefan Kost docs/plugins/Makefile.am: Update include list. Original commit message from CVS: * docs/plugins/Makefile.am: Update include list. * docs/plugins/gst-plugins-bad-plugins-docs.sgml: Update xml includes. * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvbsrc.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-switch.xml: * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoparse.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: Regenerate files. * gst/spectrum/gstspectrum.c: Fix broken XML fragment in doc snippet. * tests/check/elements/.cvsignore: Add test binary to ignores. 2008-01-21 07:22:47 +0000 Stefan Kost gst/h264parse/gsth264parse.c: Fix the build. GST_TIME_ARGS takes a timestamp not a buffer. Original commit message from CVS: * gst/h264parse/gsth264parse.c: Fix the build. GST_TIME_ARGS takes a timestamp not a buffer. 2008-01-20 05:07:52 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.c: Report the size of the stream as the total size instead of the remaining Content-Length, w... Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (soup_got_headers): Report the size of the stream as the total size instead of the remaining Content-Length, which is wrong after a seek. 2008-01-19 16:13:31 +0000 Sebastian Dröge gst/rawparse/gstrawparse.c: Handle framesizes > 4096 with multiple frames per buffer correctly in pull mode and handl... Original commit message from CVS: * gst/rawparse/gstrawparse.c: (gst_raw_parse_push_buffer), (gst_raw_parse_loop): Handle framesizes > 4096 with multiple frames per buffer correctly in pull mode and handle short reads better. Also put offset and offset_end on outgoing buffers. 2008-01-19 15:53:38 +0000 Sebastian Dröge gst/rawparse/gstrawparse.c: Improve handling of unknown or too small upstream sizes in pull mode. Original commit message from CVS: * gst/rawparse/gstrawparse.c: (gst_raw_parse_loop): Improve handling of unknown or too small upstream sizes in pull mode. 2008-01-19 15:39:45 +0000 Sebastian Dröge gst/rawparse/gstrawparse.c: Improve debugging a bit and for handling multiple frames per buffer in pull mode choose t... Original commit message from CVS: * gst/rawparse/gstrawparse.c: (gst_raw_parse_loop), (gst_raw_parse_handle_seek_push): Improve debugging a bit and for handling multiple frames per buffer in pull mode choose the next smallest multiply of framesize below 4096 instead of always handling 1024 frames. 2008-01-19 14:34:50 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.c: Correctly set duration on the GstBaseSrc segment when we know it to fix failing the durati... Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (soup_got_headers): Correctly set duration on the GstBaseSrc segment when we know it to fix failing the duration query. 2008-01-18 17:37:03 +0000 Wim Taymans gst/h264parse/gsth264parse.c: Set timestamps more correctly. Original commit message from CVS: * gst/h264parse/gsth264parse.c: (gst_h264_parse_flush_decode), (gst_h264_parse_queue_buffer), (gst_h264_parse_chain_reverse): Set timestamps more correctly. 2008-01-18 16:56:19 +0000 Sebastian Dröge gst/rawparse/gstrawparse.*: Implement pull mode. Original commit message from CVS: * gst/rawparse/gstrawparse.c: (gst_raw_parse_class_init), (gst_raw_parse_init), (gst_raw_parse_reset), (gst_raw_parse_set_src_caps), (gst_raw_parse_push_buffer), (gst_raw_parse_chain), (gst_raw_parse_loop), (gst_raw_parse_sink_activate), (gst_raw_parse_sink_activatepull), (gst_raw_parse_change_state), (gst_raw_parse_sink_event), (gst_raw_parse_handle_seek_push), (gst_raw_parse_handle_seek_pull), (gst_raw_parse_src_event), (gst_raw_parse_src_query): * gst/rawparse/gstrawparse.h: Implement pull mode. 2008-01-18 10:05:53 +0000 Sebastian Dröge gst/multifile/gstmultifilesrc.c: Fix memory leak spotted by the unit test. Original commit message from CVS: * gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_create): Fix memory leak spotted by the unit test. 2008-01-18 09:54:59 +0000 Sebastian Dröge tests/check/Makefile.am: Enable spectrum test again. Original commit message from CVS: * tests/check/Makefile.am: Enable spectrum test again. * tests/check/gst-plugins-bad.supp: Add suppressions for a singleton in GIO that can't be freed. 2008-01-18 08:49:59 +0000 Sebastian Dröge tests/check/: Add some minimal tests for the equalizer plugin. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/equalizer.c: (setup_equalizer), (cleanup_equalizer), (GST_START_TEST), (equalizer_suite), (main): Add some minimal tests for the equalizer plugin. 2008-01-18 07:03:23 +0000 Sebastian Dröge gst/equalizer/gstiirequalizer.c: Unparent all bands from the equalizer when finalizing to stop leaking them. Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_finalize): Unparent all bands from the equalizer when finalizing to stop leaking them. 2008-01-18 05:32:26 +0000 Sebastian Dröge ext/soup/gstsouphttpsrc.c: Add support for WebDAV. Original commit message from CVS: * ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_uri_get_protocols): Add support for WebDAV. 2008-01-18 05:24:39 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.*: Add support for seeking to souphttpsrc. Fixes bug #502335. Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_class_init), (gst_souphttp_src_init), (gst_souphttp_src_create), (gst_souphttp_src_is_seekable), (gst_souphttp_src_do_seek), (soup_add_range_header), (soup_got_headers), (soup_got_chunk): * ext/soup/gstsouphttpsrc.h: Add support for seeking to souphttpsrc. Fixes bug #502335. 2008-01-17 18:39:24 +0000 Wim Taymans gst/h264parse/gsth264parse.*: Improve debugging. Original commit message from CVS: * gst/h264parse/gsth264parse.c: (gst_h264_parse_clear_queues), (gst_h264_parse_flush_decode), (gst_h264_parse_queue_buffer), (gst_h264_parse_find_start_reverse), (gst_h264_parse_chain_reverse), (gst_h264_parse_chain): * gst/h264parse/gsth264parse.h: Improve debugging. Fix buffer splitting at sync codes and leftover buffer after scanning. 2008-01-17 16:10:48 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/metadataexif.c: * ext/metadata/metadataxmp.c: Fixed adding EXIF tags to correct IFD. Mapped some XMP tags. Original commit message from CVS: Fixed adding EXIF tags to correct IFD. Mapped some XMP tags. 2008-01-16 18:28:00 +0000 Wim Taymans gst/h264parse/gsth264parse.*: Add reverse playback support for containers that don't know how to properly send data b... Original commit message from CVS: * gst/h264parse/gsth264parse.c: (gst_nal_list_new), (gst_nal_list_prepend_link), (gst_nal_list_delete_head), (gst_nal_bs_init), (gst_nal_bs_read), (gst_nal_bs_eos), (gst_nal_bs_read_ue), (gst_h264_parse_class_init), (gst_h264_parse_init), (gst_h264_parse_set_property), (gst_h264_parse_get_property), (gst_h264_parse_sink_setcaps), (gst_h264_parse_clear_queues), (gst_h264_parse_chain_forward), (gst_h264_parse_flush_decode), (gst_h264_parse_queue_buffer), (gst_h264_parse_find_start_reverse), (gst_h264_parse_chain_reverse), (gst_h264_parse_chain), (gst_h264_parse_sink_event), (gst_h264_parse_change_state): * gst/h264parse/gsth264parse.h: Add reverse playback support for containers that don't know how to properly send data between I-frames. 2008-01-16 05:40:48 +0000 Sebastian Dröge Update for API changes in GIO and require GIO 2.15.2 for this. Original commit message from CVS: * configure.ac: * tests/check/pipelines/gio.c: (GST_START_TEST): Update for API changes in GIO and require GIO 2.15.2 for this. 2008-01-14 10:52:20 +0000 Sebastian Dröge gst/xingheader/gstxingmux.c: Bitrate is 4 bits, not 8 so check for 0xe as maximum value instead of 0xfe. Original commit message from CVS: * gst/xingheader/gstxingmux.c: (generate_xing_header): Bitrate is 4 bits, not 8 so check for 0xe as maximum value instead of 0xfe. 2008-01-14 09:09:49 +0000 Sebastian Dröge gst/xingheader/gstxingmux.c: Remove accidentially leftover debug printf. Original commit message from CVS: * gst/xingheader/gstxingmux.c: (generate_xing_header): Remove accidentially leftover debug printf. 2008-01-14 08:56:31 +0000 Sebastian Dröge gst/xingheader/gstxingmux.c: Choose smallest possible frame size for the Xing header, properly set the timestamp, dur... Original commit message from CVS: * gst/xingheader/gstxingmux.c: (has_xing_header), (generate_xing_header), (gst_xing_mux_chain), (gst_xing_mux_sink_event): Choose smallest possible frame size for the Xing header, properly set the timestamp, duration and offset on the outgoing buffers, only send NEWSEGMENT events in BYTE format downstream and also drop VBRI headers if already existing. 2008-01-12 09:22:06 +0000 Sebastian Dröge gst/xingheader/: Major cleanup and rewrite of xingmux with less bugs and new features: Original commit message from CVS: * gst/xingheader/Makefile.am: * gst/xingheader/gstxingmux.c: (parse_header), (get_xing_offset), (has_xing_header), (generate_xing_header), (gst_xing_mux_base_init), (gst_xing_mux_finalize), (xing_reset), (gst_xing_mux_init), (gst_xing_mux_chain), (gst_xing_mux_sink_event), (gst_xing_mux_change_state): * gst/xingheader/gstxingmux.h: Major cleanup and rewrite of xingmux with less bugs and new features: - Handles other layers as 3 - Write TOC 2008-01-11 19:16:53 +0000 Tim-Philipp Müller tests/check/elements/: It's "endianness", not "endianess". Fixes unit tests. Original commit message from CVS: * tests/check/elements/rganalysis.c: (test_buffer_const_float_mono), (test_buffer_const_float_stereo), (test_buffer_const_int16_mono), (test_buffer_const_int16_stereo), (test_buffer_square_float_mono), (test_buffer_square_float_stereo), (test_buffer_square_int16_mono), (test_buffer_square_int16_stereo): * tests/check/elements/rglimiter.c: (create_test_buffer): * tests/check/elements/rgvolume.c: (test_buffer_new): It's "endianness", not "endianess". Fixes unit tests. 2008-01-11 17:02:30 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: If we find the caps in the cache, use it to parse the clock-rate instead of returning... Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_clock_rate): If we find the caps in the cache, use it to parse the clock-rate instead of returning an error. Fixes a TODO as found by Youness Alaoui. 2008-01-11 16:45:57 +0000 Youness Alaoui gst/rtpmanager/: Make it possible to use different user_data for each of the callbacks. Original commit message from CVS: Patch by: Youness Alaoui * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_clock_rate): * gst/rtpmanager/rtpsession.c: (rtp_session_set_callbacks), (rtp_session_set_process_rtp_callback), (rtp_session_set_send_rtp_callback), (rtp_session_set_send_rtcp_callback), (rtp_session_set_sync_rtcp_callback), (rtp_session_set_clock_rate_callback), (rtp_session_set_reconsider_callback), (source_push_rtp), (source_clock_rate), (rtp_session_process_bye), (rtp_session_process_rtcp), (rtp_session_send_bye), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Make it possible to use different user_data for each of the callbacks. Fixes #508587. 2008-01-11 15:58:15 +0000 Wim Taymans gst/mpegvideoparse/mpegpacketiser.c: Small meaningless cleanup. Original commit message from CVS: * gst/mpegvideoparse/mpegpacketiser.c: (mpeg_util_find_start_code): Small meaningless cleanup. * gst/mpegvideoparse/mpegvideoparse.c: (gst_mpegvideoparse_flush), (mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain_forward), (scan_keyframe), (gst_mpegvideoparse_flush_decode), (gst_mpegvideoparse_chain_reverse), (gst_mpegvideoparse_chain), (mpv_parse_sink_event), (gst_mpegvideoparse_change_state): * gst/mpegvideoparse/mpegvideoparse.h: Track segment events. Do the first part of reverse playback by sending data between two I-frames to the decoder. 2008-01-10 20:57:17 +0000 Thijs Vermeir gst/rtpmanager/gstrtpbin.c: Fix documentation for latest patch Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: Fix documentation for latest patch 2008-01-10 14:34:30 +0000 Thijs Vermeir gst/rtpmanager/gstrtpbin.c: Allow request_new_pad with name NULL (bug #508515) Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: Allow request_new_pad with name NULL (bug #508515) 2008-01-10 12:36:46 +0000 Sebastian Dröge autogen.sh: Add -Wno-portability to the automake parameters to stop warnings about GNU make extensions being used. We... Original commit message from CVS: * autogen.sh: Add -Wno-portability to the automake parameters to stop warnings about GNU make extensions being used. We require GNU make in almost every Makefile anyway. * configure.ac: Use AM_PROG_CC_C_O as a compiler that accepts both -c and -o at the same time is required for per target flags. 2008-01-09 14:39:44 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Don't set fixed caps, we can basically do everything the upsteam peer pad can renegot... Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (create_send_rtp_sink): Don't set fixed caps, we can basically do everything the upsteam peer pad can renegotiate to. Fixes #507940. 2008-01-09 13:53:21 +0000 Stefan Kost Makefile.am: Include lcov.mak to allow building coverage reports. Add top-level check targets similar to other gst pa... Original commit message from CVS: * Makefile.am: Include lcov.mak to allow building coverage reports. Add top-level check targets similar to other gst packages. 2008-01-06 22:35:31 +0000 David Schleef ext/directfb/Makefile.am: Add GST_CFLAGS. Otherwise we don't get -Wall -Werror. Original commit message from CVS: * ext/directfb/Makefile.am: Add GST_CFLAGS. Otherwise we don't get -Wall -Werror. * ext/directfb/dfbvideosink.c: Getting tired of directfb's chatter. Quiet it. 2008-01-06 22:00:32 +0000 Sean D'Epagnier Add fbdev-based video sink. Linux-only. See bug #506549. Original commit message from CVS: Patch by: Sean D'Epagnier * configure.ac: * sys/Makefile.am: * sys/fbdev/Makefile.am: * sys/fbdev/gstfbdevsink.c: * sys/fbdev/gstfbdevsink.h: Add fbdev-based video sink. Linux-only. See bug #506549. 2008-01-06 16:36:32 +0000 Sebastian Dröge Update to GMemoryInputStream API changes in GLib SVN and require gio-2.0 >= 2.15.1 for this. Fixes bug #507584. Original commit message from CVS: * configure.ac: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_get_size): * tests/check/pipelines/gio.c: (free_input), (GST_START_TEST): Update to GMemoryInputStream API changes in GLib SVN and require gio-2.0 >= 2.15.1 for this. Fixes bug #507584. We can also report the duration for every GSeekable, not only GFileInputStream and GMemoryInputStream. 2008-01-06 03:01:39 +0000 David Schleef sys/glsink/: Handle xoverlay exposes correctly. This means glimagesink works correctly most of the time in totem (fu... Original commit message from CVS: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstglupload.c: Handle xoverlay exposes correctly. This means glimagesink works correctly most of the time in totem (fullscreening being an execption). Doesn't handle expose events directly to the GL window. 2008-01-06 01:19:48 +0000 David Schleef sys/glsink/: Reenable video/x-raw-rgb and x-raw-yuv for glimagesink. Enable vblank synchronization. Remove unused c... Original commit message from CVS: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstopengl.c: Reenable video/x-raw-rgb and x-raw-yuv for glimagesink. Enable vblank synchronization. Remove unused code. 2008-01-04 18:47:57 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Don't unref the popped buffer when we don't have ownership. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): Don't unref the popped buffer when we don't have ownership. Fixes #507020. 2008-01-03 23:35:52 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Remove no longer needed files. Original commit message from CVS: * gst/mpegtsparse/Makefile.am: * gst/mpegtsparse/flutspatinfo.c: * gst/mpegtsparse/flutspatinfo.h: * gst/mpegtsparse/flutspmtinfo.c: * gst/mpegtsparse/flutspmtinfo.h: * gst/mpegtsparse/flutspmtstreaminfo.c: * gst/mpegtsparse/flutspmtstreaminfo.h: Remove no longer needed files. 2008-01-02 20:49:12 +0000 David Schleef tests/check/Makefile.am: Disable vcdsrc in states test because it takes too much time to get to PLAYING if it can fin... Original commit message from CVS: * tests/check/Makefile.am: Disable vcdsrc in states test because it takes too much time to get to PLAYING if it can find a device. 2008-01-01 01:18:19 +0000 David Schleef ext/musicbrainz/gsttrm.c: Don't emit signiture when going to READY, because it might not be ready. Original commit message from CVS: * ext/musicbrainz/gsttrm.c: Don't emit signiture when going to READY, because it might not be ready. * ext/nas/nassink.c: Remove useless call that sleeps for 5 seconds. Yup, it calls sleep(1) 5 times. Go NAS. * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: Initialize our debug categories properly. * gst/rawparse/gstrawparse.c: Don't register element details for a non-element. Be much more rude when subclass doesn't set a pad template (assert!). Don't unref the pad template; we don't own it. * gst/videosignal/gstvideoanalyse.c: Initialize debug category. * tests/check/Makefile.am: Ignore nassink element in tests because it has unavoidable long timeouts. 2007-12-31 13:12:06 +0000 Wim Taymans gst/rtpmanager/gstrtpssrcdemux.c: Don't clean up pads when going to PAUSED. Original commit message from CVS: * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_change_state): Don't clean up pads when going to PAUSED. 2007-12-31 07:55:23 +0000 David Schleef Switch to using pkgconfig to detect libGL. Since we use recent features added to Mesa, there's no point in adding a ... Original commit message from CVS: * configure.ac: * sys/glsink/Makefile.am: Switch to using pkgconfig to detect libGL. Since we use recent features added to Mesa, there's no point in adding a check for pre-pkgconfig versions. 2007-12-29 17:31:49 +0000 Sebastian Dröge Fix 'xyz may be used uninitialized' compiler warnings caused by broken g_assert_not_reached() macro in GLib-2.15.x an... Original commit message from CVS: * ext/ladspa/gstladspa.c: (gst_ladspa_get_property): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_show_frame): * gst/mve/gstmvemux.c: (gst_mve_mux_request_new_pad): * sys/dvb/dvbbasebin.c: (dvb_base_bin_class_init): Fix 'xyz may be used uninitialized' compiler warnings caused by broken g_assert_not_reached() macro in GLib-2.15.x and don't abort() in any case but properly report the error. 2007-12-29 17:29:17 +0000 Sebastian Dröge Update to latest API changes in GLib/GIO and require at least gio-2.0 2.15.0 for this. Original commit message from CVS: * configure.ac: * ext/gio/gstgio.c: * ext/gio/gstgio.h: * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_get_size): * ext/gio/gstgiobasesrc.h: * ext/gio/gstgiosink.c: (gst_gio_sink_start): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.h: * ext/gio/gstgiostreamsink.h: * ext/gio/gstgiostreamsrc.h: * tests/check/pipelines/gio.c: Update to latest API changes in GLib/GIO and require at least gio-2.0 2.15.0 for this. * ext/gio/Makefile.am: Add GST_PLUGIN_LDFLAGS to LDFLAGS. 2007-12-29 00:37:41 +0000 David Schleef Major cleanup of code. Convert glupload to BaseTransform. Original commit message from CVS: * configure.ac: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Major cleanup of code. Convert glupload to BaseTransform. Handle caps negotiation mostly correctly. Reenable in build. 2007-12-28 11:44:28 +0000 Tim-Philipp Müller ext/soup/: Use gst_tag_freeform_string_to_utf8() and post radio station info as tags on the bus. Original commit message from CVS: * ext/soup/Makefile.am: * ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_get_property), (gst_souphttp_src_unicodify), (soup_got_headers): Use gst_tag_freeform_string_to_utf8() and post radio station info as tags on the bus. 2007-12-27 05:26:05 +0000 David Schleef sys/glsink/: Change glimagesink over to using GL buffers. This breaks glimagesink for normal operation, but should b... Original commit message from CVS: * sys/glsink/glimagesink.c: * sys/glsink/gstglupload.c: Change glimagesink over to using GL buffers. This breaks glimagesink for normal operation, but should be fixed soon. 2007-12-27 04:15:26 +0000 David Schleef sys/glsink/: Convert gldownload to BaseTransform. Make glfilterexample visually interesting. Add support for variou... Original commit message from CVS: * sys/glsink/gltestsrc.c: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: Convert gldownload to BaseTransform. Make glfilterexample visually interesting. Add support for various formats to downloading. Fix a few places where we leak GL state to other elements (bad, but hard to prevent). 2007-12-27 00:52:23 +0000 David Schleef sys/glsink/: Remove code that handles non-texture buffers. Add a Original commit message from CVS: * sys/glsink/BUGS: * sys/glsink/Makefile.am: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstglconvert.c: * sys/glsink/gstgldisplay.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglfilter.h: * sys/glsink/gstglfilterexample.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Remove code that handles non-texture buffers. Add a GstGLBufferFormat type that corresponds to how to use the texture, not the original video format. Convert gstflfilter.c into a base class, add glfilterexample and glconvert elements. * sys/glsink/color_matrix.c: Minor ramblings about color conversion matrices. 2007-12-25 00:34:14 +0000 David Schleef sys/glsink/: Add gltestsrc element, a duplicate of videotestsrc that uses Original commit message from CVS: * sys/glsink/Makefile.am: * sys/glsink/gltestsrc.c: * sys/glsink/gltestsrc.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstgltestsrc.c: * sys/glsink/gstgltestsrc.h: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Add gltestsrc element, a duplicate of videotestsrc that uses GL rendering to create images. More cleanup. 2007-12-24 21:26:40 +0000 David Schleef sys/glsink/: Clean up code. Fix a few leaks. Original commit message from CVS: * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: Clean up code. Fix a few leaks. 2007-12-24 21:04:46 +0000 David Schleef sys/glsink/: Rename glvideo.[ch] to gstgldisplay.[ch]. Original commit message from CVS: * sys/glsink/Makefile.am: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldisplay.c: * sys/glsink/gstgldisplay.h: Rename glvideo.[ch] to gstgldisplay.[ch]. 2007-12-24 20:53:56 +0000 David Schleef sys/glsink/: Rewrite a bunch of code to use textures as the intermediate instead of renderbuffers. upload, download,... Original commit message from CVS: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: Rewrite a bunch of code to use textures as the intermediate instead of renderbuffers. upload, download, filtering all work. 2007-12-23 22:04:00 +0000 David Schleef gst/videoparse/: Remove videoparse element, because it was moved to gst/rawparse/ Original commit message from CVS: * gst/videoparse/Makefile.am: * gst/videoparse/README: * gst/videoparse/gstvideoparse.c: Remove videoparse element, because it was moved to gst/rawparse/ 2007-12-23 10:34:39 +0000 Sebastian Dröge gst/rawparse/gstrawparse.c: Always seek on frame boundaries, will produce nothing useful otherwise. Original commit message from CVS: * gst/rawparse/gstrawparse.c: (gst_raw_parse_src_event): Always seek on frame boundaries, will produce nothing useful otherwise. 2007-12-23 06:22:32 +0000 Sebastian Dröge Add new plugin rawparse that contains a base class for raw data parsers and the two elements audioparse and videopars... Original commit message from CVS: * configure.ac: * gst/rawparse/Makefile.am: * gst/rawparse/README: * gst/rawparse/gstaudioparse.c: (gst_audio_parse_format_get_type), (gst_audio_parse_endianness_get_type), (gst_audio_parse_base_init), (gst_audio_parse_class_init), (gst_audio_parse_init), (gst_audio_parse_set_property), (gst_audio_parse_get_property), (gst_audio_parse_update_frame_size), (gst_audio_parse_get_caps): * gst/rawparse/gstaudioparse.h: * gst/rawparse/gstrawparse.c: (gst_raw_parse_base_init), (gst_raw_parse_class_init), (gst_raw_parse_init), (gst_raw_parse_dispose), (gst_raw_parse_class_set_src_pad_template), (gst_raw_parse_class_set_multiple_frames_per_buffer), (gst_raw_parse_reset), (gst_raw_parse_chain), (gst_raw_parse_convert), (gst_raw_parse_sink_event), (gst_raw_parse_src_event), (gst_raw_parse_src_query_type), (gst_raw_parse_src_query), (gst_raw_parse_set_framesize), (gst_raw_parse_set_fps), (gst_raw_parse_get_fps), (gst_raw_parse_is_negotiated): * gst/rawparse/gstrawparse.h: * gst/rawparse/gstvideoparse.c: (gst_video_parse_format_get_type), (gst_video_parse_endianness_get_type), (gst_video_parse_base_init), (gst_video_parse_class_init), (gst_video_parse_init), (gst_video_parse_set_property), (gst_video_parse_get_property), (gst_video_parse_format_to_fourcc), (gst_video_parse_update_frame_size), (gst_video_parse_get_caps): * gst/rawparse/gstvideoparse.h: * gst/rawparse/plugin.c: (plugin_init): Add new plugin rawparse that contains a base class for raw data parsers and the two elements audioparse and videoparse that can be used to parse raw audio and video. These are inspired by the old videoparse element which the new rawparse plugin deprecates. 2007-12-22 05:01:58 +0000 David Schleef sys/glsink/: A careful read of the documentation reveals that I can't use renderbuffers as textures. Duh. Checkpoin... Original commit message from CVS: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstgldownload.c: * sys/glsink/gstglupload.c: A careful read of the documentation reveals that I can't use renderbuffers as textures. Duh. Checkpoint because I'm about to rewrite a bunch of code. 2007-12-21 19:01:00 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/metadata.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparseutil.c: Some IPTC tags mapped. Original commit message from CVS: Some IPTC tags mapped. 2007-12-21 09:45:56 +0000 Edgard Lima * ChangeLog: * ext/metadata/Makefile.am: * ext/metadata/TODO: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/gstmetadatacommon.c: * ext/metadata/gstmetadatacommon.h: * ext/metadata/metadata.c: * ext/metadata/metadata.h: Removed gstmetadatacommon. Original commit message from CVS: Removed gstmetadatacommon. 2007-12-21 00:03:11 +0000 David Schleef sys/glsink/: Switch to using framebuffer_objects instead of GLXPixmaps, because that's what my driver supports. Remo... Original commit message from CVS: * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstglbuffer.c: * sys/glsink/gstglbuffer.h: * sys/glsink/gstgldownload.c: * sys/glsink/gstglfilter.c: * sys/glsink/gstglupload.c: * sys/glsink/gstopengl.c: Switch to using framebuffer_objects instead of GLXPixmaps, because that's what my driver supports. Remove GLDrawable, since GstGLDisplay now has a default drawable and context. 2007-12-20 17:07:22 +0000 Tim-Philipp Müller gst/: Ignore more. Original commit message from CVS: * gst/equalizer/.cvsignore: * gst/switch/.cvsignore: Ignore more. 2007-12-19 09:50:47 +0000 Edgard Lima * ChangeLog: * ext/metadata/Makefile.am: * ext/metadata/TODO: * ext/metadata/gstbasemetadata.c: * ext/metadata/gstbasemetadata.h: * ext/metadata/gstmetadatacommon.c: * ext/metadata/gstmetadatacommon.h: * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatademux.h: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadatatags.h: * ext/metadata/test/metadata_editor.c: New base class for metadata elements. Original commit message from CVS: New base class for metadata elements. 2007-12-18 16:08:13 +0000 Andy Wingo gst/switch/: gst/switch/gstswitch.c (enum, gst_selector_pad_class_init) (gst_selector_pad_get_property) (gst_selector... Original commit message from CVS: 2007-12-18 Andy Wingo * gst/switch/gstswitch-marshal.list: * gst/switch/gstswitch.h (struct _GstStreamSelectorClass): * gst/switch/gstswitch.c (enum, gst_selector_pad_class_init) (gst_selector_pad_get_property) (gst_selector_pad_get_running_time) (gst_stream_selector_class_init, gst_segment_get_timestamp) (gst_segment_set_stop, gst_segment_set_start) (gst_stream_selector_set_active_pad, gst_stream_selector_block) (gst_stream_selector_push_pending_stop) (gst_stream_selector_switch): Change so that the signals and properties deal in running time, not buffer time. Document the signals more. Change uint64 in API to int64, to reflect what's in GstSegment. 2007-12-18 09:26:42 +0000 Tim-Philipp Müller Makefile.am: Include common/win32.mak for CRLF check of win32 project files (see #393626). Original commit message from CVS: * Makefile.am: Include common/win32.mak for CRLF check of win32 project files (see #393626). * configure.ac: Bump requirements to -base CVS for libgstvideo additions in glimagesink. Disable glimagesink until the missing files get checked in. 2007-12-18 01:25:58 +0000 David Schleef sys/glsink/: Use new GstVideoFormat checked into -base. Add new glupload element to upload raw video into a GLXPixbu... Original commit message from CVS: * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstopengl.c: * sys/glsink/gstglupload.c: Use new GstVideoFormat checked into -base. Add new glupload element to upload raw video into a GLXPixbuf. Untested. Will likely crash your motorcycle if you try it. * sys/glsink/gstvideo-common.c: * sys/glsink/gstvideo-common.h: Remove. 2007-12-17 21:12:28 +0000 David Schleef gst/multifile/gstmultifilesrc.*: When subsequent files are read, if the file doesn't exist, send an EOS instead of ca... Original commit message from CVS: * gst/multifile/gstmultifilesrc.c: * gst/multifile/gstmultifilesrc.h: When subsequent files are read, if the file doesn't exist, send an EOS instead of causing an error. 2007-12-17 15:09:17 +0000 Andy Wingo gst/switch/gstswitch.c (gst_selector_pad_chain): Return OK when a buffer is ignored, not NOT_LINKED. No sense in maki... Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.c (gst_selector_pad_chain): Return OK when a buffer is ignored, not NOT_LINKED. No sense in making a source element error out; at least fdsrc considers NOT_LINKED to be a fatal error. Patch 11/12. There is no patch 12/12. Foo. 2007-12-17 15:06:48 +0000 Andy Wingo gst/switch/: gst/switch/gstswitch.c (gst_stream_selector_class_init) (gst_stream_selector_block): Make the block() si... Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch-marshal.list: * gst/switch/gstswitch.h (struct _GstStreamSelectorClass): * gst/switch/gstswitch.c (gst_stream_selector_class_init) (gst_stream_selector_block): Make the block() signal return the last stop time of the active pad. Patch 10/12. 2007-12-17 15:04:51 +0000 Andy Wingo * ChangeLog: * gst/switch/gstswitch.c: gst/switch/gstswitch.c (gst_selector_pad_get_property) (gst_selector_pad_class_init, gst_stream_selector_class_init) Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.c (gst_selector_pad_get_property) (gst_selector_pad_class_init, gst_stream_selector_class_init) (gst_stream_selector_get_property): Expose 'last-stop-time' as a pad property, not an element property. (gst_selector_pad_chain): Mark the last_stop time as timestamp + duration, not timestamp. Patch 9/12. 2007-12-17 15:01:55 +0000 Andy Wingo * ChangeLog: * gst/switch/gstswitch.c: gst/switch/gstswitch.c (gst_stream_selector_change_state) Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.c (gst_stream_selector_change_state) (gst_stream_selector_block, gst_stream_selector_switch): Use the cond mechanism instead of blocked pads. Patch 8/12. 2007-12-17 15:00:15 +0000 Andy Wingo gst/switch/gstswitch.h (struct _GstStreamSelector): gst/switch/gstswitch.c (gst_stream_selector_wait) (gst_selector_p... Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.h (struct _GstStreamSelector): * gst/switch/gstswitch.c (gst_stream_selector_wait) (gst_selector_pad_chain, gst_stream_selector_init) (gst_stream_selector_dispose): Add infrastructure for new blocking mechanism that does not use gst_pad_set_blocked, which does not work on sink pads. Patch 7/12. 2007-12-17 14:58:18 +0000 Andy Wingo * ChangeLog: * gst/switch/gstswitch.c: gst/switch/gstswitch.c (gst_stream_selector_class_init) Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.c (gst_stream_selector_class_init) (gst_stream_selector_get_property): Add last-stop-time readable property. Patch 6/12. 2007-12-17 14:55:54 +0000 Andy Wingo gst/switch/gstswitch.h (struct _GstStreamSelector): Add some state variables. Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.h (struct _GstStreamSelector): Add some state variables. * gst/switch/gstswitch.c (gst_stream_selector_push_pending_stop) (gst_selector_pad_chain): Push any pending stop event. (gst_stream_selector_set_active_pad) (gst_stream_selector_set_property): Factor out setting the active pad to a function. Close the segment of the previous active pad if told to do so via a stop_time != GST_CLOCK_TIME_NONE. (gst_stream_selector_switch): Implement switch vmethod. Patch 5/12. 2007-12-17 14:52:14 +0000 Andy Wingo gst/switch/gstswitch.c (gst_stream_selector_block): Implement the block() signal. This implementation will be replace... Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.c (gst_stream_selector_block): Implement the block() signal. This implementation will be replaced in future patches, however. Patch 4/12. 2007-12-17 14:48:26 +0000 Andy Wingo gst/switch/gstswitch.h (struct _GstStreamSelectorClass): Fix vmethod prototypes. Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.h (struct _GstStreamSelectorClass): Fix vmethod prototypes. * gst/switch/gstswitch.c (gst_stream_selector_class_init) (gst_stream_selector_block, gst_stream_selector_switch): Add empty vmethod definitions. Patch 3/12. 2007-12-17 14:46:26 +0000 Andy Wingo gst/switch/gstswitch.*: Add `block' and `switch' signals. Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.h (struct _GstStreamSelectorClass): * gst/switch/gstswitch.c (gst_stream_selector_class_init): Add `block' and `switch' signals. * gst/switch/Makefile.am: * gst/switch/gstswitch-marshal.list: Add foo to generate a marshaller for the `switch' signal. Patch 2/12. 2007-12-17 14:43:04 +0000 Andy Wingo gst/switch/gstswitch.*: Replace with files from gststreamselector.[ch], registered as the "switch" plugin, with "GstS... Original commit message from CVS: 2007-12-17 Andy Wingo * gst/switch/gstswitch.h: * gst/switch/gstswitch.c: Replace with files from gststreamselector.[ch], registered as the "switch" plugin, with "GstSwitch" types. Patch 1/12. 2007-12-17 14:37:39 +0000 Christian Schaller * gst-plugins-bad.spec.in: add libsoup plugin to spec Original commit message from CVS: add libsoup plugin to spec 2007-12-17 12:37:36 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/gstmetadatademux.c: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/test/MetadataEditorMain.glade: * ext/metadata/test/metadata_editor.c: Added "parse-only" property to metadatademux. Original commit message from CVS: Added "parse-only" property to metadatademux. 2007-12-16 22:57:22 +0000 David Schleef sys/glsink/: Rename GLVideo* to GstGL*. Original commit message from CVS: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: Rename GLVideo* to GstGL*. 2007-12-16 00:16:46 +0000 David Schleef sys/glsink/: Add vblank synchronization. Isn't really working on my driver. :( Original commit message from CVS: * sys/glsink/Makefile.am: * sys/glsink/glextensions.c: * sys/glsink/glextensions.h: * sys/glsink/glvideo.c: Add vblank synchronization. Isn't really working on my driver. :( 2007-12-15 19:31:23 +0000 David Schleef sys/glsink/: Add support for xRGB, xBGR, and AYUV. Re-add support for power-of-2 textures. Original commit message from CVS: * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstvideo-common.c: * sys/glsink/gstvideo-common.h: Add support for xRGB, xBGR, and AYUV. Re-add support for power-of-2 textures. 2007-12-15 17:52:46 +0000 Sebastian Dröge gst/videoparse/gstvideoparse.c: Free the adapter on dispose and correctly reset on newsegment events. Original commit message from CVS: * gst/videoparse/gstvideoparse.c: (gst_video_parse_dispose), (gst_video_parse_sink_event): Free the adapter on dispose and correctly reset on newsegment events. 2007-12-15 13:10:00 +0000 Sebastian Dröge gst/videoparse/gstvideoparse.c: Improve duration query by first asking upstream and if it can't handle the query try ... Original commit message from CVS: * gst/videoparse/gstvideoparse.c: (gst_video_parse_sink_event), (gst_video_parse_src_event), (gst_video_parse_src_query): Improve duration query by first asking upstream and if it can't handle the query try to get the duration in bytes from upstream and convert. For seeks, try if upstream handles this already first and do our conversion to byte format only if it doesn't and if we get a newsegment event in time format keep it and only do our conversions if the event has another format. 2007-12-15 07:37:20 +0000 Sebastian Dröge gst/videoparse/gstvideoparse.c: Add support for video/x-raw-rgb and video/x-raw-gray. Also send downstream elements d... Original commit message from CVS: * gst/videoparse/gstvideoparse.c: (gst_video_parse_format_get_type), (gst_video_parse_endianness_get_type), (gst_video_parse_class_init), (gst_video_parse_init), (gst_video_parse_set_property), (gst_video_parse_get_property), (gst_video_parse_format_to_fourcc), (gst_video_parse_update_block_size), (gst_video_parse_chain), (gst_video_parse_sink_event): Add support for video/x-raw-rgb and video/x-raw-gray. Also send downstream elements downstream, not upstream. 2007-12-15 06:33:37 +0000 David Schleef sys/glsink/gstvideo-common.*: Pull together some common raw video functions into one location. Original commit message from CVS: * sys/glsink/gstvideo-common.c: * sys/glsink/gstvideo-common.h: Pull together some common raw video functions into one location. This should eventually move to -base. * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: * sys/glsink/gstopengl.c: Use the new video-common.h stuff. Readd support for RGB video. 2007-12-14 18:18:37 +0000 Edgard Lima * ChangeLog: * ext/metadata/Makefile.am: * ext/metadata/TODO: * ext/metadata/gstmetadata.c: * ext/metadata/gstmetadatacommon.c: * ext/metadata/gstmetadatacommon.h: * ext/metadata/gstmetadatademux.c: * ext/metadata/gstmetadatademux.h: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/test/metadata_editor.c: Added new module for common functions. Using GST_TYPE_FRACTION for Exif (S)Rational types. Original commit message from CVS: Added new module for common functions. Using GST_TYPE_FRACTION for Exif (S)Rational types. 2007-12-14 17:51:49 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtspacketizer.*: Hash streams by pid again. Add a linked list inside each stream with a list of su... Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtspacketizer.h: Hash streams by pid again. Add a linked list inside each stream with a list of sub_tables. Fix multiple sections as it was borked with my last commit. 2007-12-14 16:23:06 +0000 Christian Schaller * ChangeLog: * gst-plugins-bad.spec.in: * gst/speexresample/Makefile.am: * sys/glsink/Makefile.am: update spec file and add two missing files for disting Original commit message from CVS: update spec file and add two missing files for disting 2007-12-13 17:19:54 +0000 Edgard Lima * ChangeLog: * ext/metadata/TODO: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadataparse.c: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxjpeg.h: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadatamuxpng.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/metadataparseutil.c: * ext/metadata/metadataparseutil.h: * ext/metadata/metadatatypes.h: * ext/metadata/metadataxmp.c: Code documentation. Original commit message from CVS: Code documentation. 2007-12-13 12:45:06 +0000 Edgard Lima * ChangeLog: * common: * configure.ac: * ext/metadata/Makefile.am: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadataparse.c: * ext/metadata/metadataexif.c: * ext/metadata/metadatatags.c: * ext/metadata/test/Makefile: * ext/metadata/test/MetadataEditorMain.glade: * ext/metadata/test/metadata_editor.c: Added a test application. Added some EXIF tags. Fixed a muxer bug. Original commit message from CVS: Added a test application. Added some EXIF tags. Fixed a muxer bug. 2007-12-13 11:25:06 +0000 Sebastian Dröge gst/videoparse/gstvideoparse.c: Implement a query type function for the src pad, implement seeking and use ANY caps f... Original commit message from CVS: * gst/videoparse/gstvideoparse.c: (gst_video_parse_init), (gst_video_parse_src_event), (gst_video_parse_src_query_type): Implement a query type function for the src pad, implement seeking and use ANY caps for the sink pad as the element doesn't care what caps the input has and everything is handled via properties. 2007-12-13 10:38:23 +0000 Sebastian Dröge gst/videoparse/gstvideoparse.c: Handle -1 values for the CONVERT query too. Original commit message from CVS: * gst/videoparse/gstvideoparse.c: (gst_video_parse_convert), (gst_video_parse_sink_event): Handle -1 values for the CONVERT query too. 2007-12-13 10:16:48 +0000 Sebastian Dröge gst/videoparse/gstvideoparse.c: Add YV12 to the pad templates as it is supported too and allow Original commit message from CVS: * gst/videoparse/gstvideoparse.c: (gst_video_parse_sink_event): Add YV12 to the pad templates as it is supported too and allow -1 as stop position for NEWSEGMENT events. 2007-12-13 08:54:08 +0000 Sebastian Dröge gst/videoparse/Makefile.am: Add $(GST_PLUGINS_BASE_CFLAGS) to CFLAGS to fix the build. Original commit message from CVS: * gst/videoparse/Makefile.am: Add $(GST_PLUGINS_BASE_CFLAGS) to CFLAGS to fix the build. * gst/videoparse/gstvideoparse.c: (gst_video_parse_init), (gst_video_parse_set_property), (gst_video_parse_get_property): Use g_value_[sg]et_enum() for enum properties, g_value_[sg]et_int() gives a g_critical(). 2007-12-13 04:43:58 +0000 David Schleef gst/videoparse/: Add a bunch of features: handle format specification, handle queries and conversion. Works much lik... Original commit message from CVS: * gst/videoparse/README: * gst/videoparse/gstvideoparse.c: Add a bunch of features: handle format specification, handle queries and conversion. Works much like a normal parser now. 2007-12-12 16:59:03 +0000 Wim Taymans gst/rtpmanager/: Clean up the dynamic pads when going to READY. Original commit message from CVS: * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_finalize), (gst_rtp_pt_demux_setup), (gst_rtp_pt_demux_release), (gst_rtp_pt_demux_change_state): * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_reset), (gst_rtp_ssrc_demux_dispose), (gst_rtp_ssrc_demux_src_query), (gst_rtp_ssrc_demux_change_state): Clean up the dynamic pads when going to READY. 2007-12-12 12:11:53 +0000 Wim Taymans gst/rtpmanager/: Fix some leaks. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_finalize), (gst_rtp_bin_set_sdes_string), (gst_rtp_bin_get_sdes_string), (gst_rtp_bin_handle_message): * gst/rtpmanager/rtpsession.c: (rtp_session_finalize), (rtp_session_send_bye): * gst/rtpmanager/rtpsource.c: (rtp_source_finalize): Fix some leaks. 2007-12-12 04:11:15 +0000 Sebastian Dröge ext/dts/gstdtsdec.*: Add support for "audio/x-private1-dts" as used by flupsparse. Most changes adapted from a52dec. Original commit message from CVS: * ext/dts/gstdtsdec.c: (gst_dtsdec_init), (gst_dtsdec_sink_setcaps), (gst_dtsdec_chain_raw), (gst_dtsdec_chain): * ext/dts/gstdtsdec.h: Add support for "audio/x-private1-dts" as used by flupsparse. Most changes adapted from a52dec. 2007-12-12 02:33:12 +0000 David Schleef sys/glsink/: Split out gl-related code into a separate file with a sensible API. Major cleanup. Still crashes occas... Original commit message from CVS: * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glvideo.c: * sys/glsink/glvideo.h: Split out gl-related code into a separate file with a sensible API. Major cleanup. Still crashes occasionally due to different threads touching bits at the same time. 2007-12-11 16:39:39 +0000 Wouter Cloetens ext/soup/gstsouphttpsrc.*: Do not try to unpause I/O in the "queued" state. Original commit message from CVS: Patch by: Wouter Cloetens * ext/soup/gstsouphttpsrc.c: (_do_init), (gst_souphttp_src_class_init), (gst_souphttp_src_init), (gst_souphttp_src_dispose), (gst_souphttp_src_set_property), (gst_souphttp_src_get_property), (unicodify), (gst_souphttp_src_unicodify), (gst_souphttp_src_create), (gst_souphttp_src_start), (gst_souphttp_src_stop), (gst_souphttp_src_unlock), (gst_souphttp_src_unlock_stop), (gst_souphttp_src_get_size), (gst_souphttp_src_is_seekable), (soup_got_headers), (soup_got_body), (soup_finished), (soup_got_chunk), (soup_response), (soup_parse_status), (gst_souphttp_src_uri_get_type), (gst_souphttp_src_uri_get_protocols), (gst_souphttp_src_uri_get_uri), (gst_souphttp_src_uri_set_uri), (gst_souphttp_src_uri_handler_init): * ext/soup/gstsouphttpsrc.h: Do not try to unpause I/O in the "queued" state. Reorganise a bunch of things and cleanups. Uses G_GUINT64_FORMAT instead of hard-coding %llu. See #502335. 2007-12-11 16:26:07 +0000 Wim Taymans ext/x264/gstx264enc.c: Fix caps memleak. Original commit message from CVS: * ext/x264/gstx264enc.c: (gst_x264_enc_set_src_caps): Fix caps memleak. 2007-12-11 11:54:43 +0000 Tim-Philipp Müller gst/flv/gstflvparse.c: Don't strdup (and thus leak) codec name strings when passing them to gst_tag_list_add(). Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Don't strdup (and thus leak) codec name strings when passing them to gst_tag_list_add(). 2007-12-10 18:36:04 +0000 Wim Taymans gst/rtpmanager/: Post a message when the SDES infor changes for a source. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init), (gst_rtp_bin_handle_message): * gst/rtpmanager/gstrtpsession.c: (source_get_sdes_structure), (on_ssrc_sdes): Post a message when the SDES infor changes for a source. * gst/rtpmanager/rtpsession.c: * gst/rtpmanager/rtpsource.c: Update some comments. 2007-12-10 17:18:35 +0000 mutex at runbox dot com gst/videoparse/gstvideoparse.c: Forward the query upstream, the default element event handler does something differen... Original commit message from CVS: Based on patch by: * gst/videoparse/gstvideoparse.c: (gst_video_parse_src_query): Forward the query upstream, the default element event handler does something different. Fixes #502879. 2007-12-10 15:34:19 +0000 Wim Taymans gst/rtpmanager/: Add signal to notify of an SDES change. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (on_ssrc_sdes), (create_session), (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpclient.h: * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpmanager.c: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpptdemux.h: * gst/rtpmanager/gstrtpsession.c: (on_ssrc_sdes), (gst_rtp_session_class_init), (gst_rtp_session_init): * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/rtpmanager/gstrtpssrcdemux.h: * gst/rtpmanager/rtpjitterbuffer.c: * gst/rtpmanager/rtpjitterbuffer.h: * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (on_ssrc_sdes), (rtp_session_process_sdes): * gst/rtpmanager/rtpsession.h: * gst/rtpmanager/rtpsource.c: * gst/rtpmanager/rtpsource.h: * gst/rtpmanager/rtpstats.c: * gst/rtpmanager/rtpstats.h: Add signal to notify of an SDES change. Fix object type in the signal callbacks. 2007-12-10 14:03:32 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.*: Expose SDES items as properties and configure the session managers with them. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (gst_rtp_bin_class_init), (gst_rtp_bin_init), (sdes_type_to_name), (gst_rtp_bin_set_sdes_string), (gst_rtp_bin_get_sdes_string), (gst_rtp_bin_set_property), (gst_rtp_bin_get_property): * gst/rtpmanager/gstrtpbin.h: Expose SDES items as properties and configure the session managers with them. * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), (rtp_source_set_property): Fix SSRC property. 2007-12-10 11:08:11 +0000 Wim Taymans gst/rtpmanager/: Update comment. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session): * gst/rtpmanager/rtpjitterbuffer.c: Update comment. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_set_property), (gst_rtp_session_get_property): Define some GObject properties to set SDES and other configuration. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (rtp_session_init), (rtp_session_finalize), (rtp_session_set_property), (rtp_session_get_property), (on_ssrc_sdes), (rtp_session_set_bandwidth), (rtp_session_get_bandwidth), (rtp_session_set_rtcp_fraction), (rtp_session_get_rtcp_fraction), (rtp_session_set_sdes_string), (rtp_session_get_sdes_string), (obtain_source), (rtp_session_get_internal_source), (rtp_session_process_sdes), (rtp_session_send_rtp), (rtp_session_next_timeout), (session_sdes), (is_rtcp_time): * gst/rtpmanager/rtpsession.h: Add signal when new SDES infor has been found for a source. Create properties for SDES and other info. Simplify the SDES API. Add method for getting the internal source object of the session. * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), (rtp_source_finalize), (rtp_source_set_property), (rtp_source_get_property), (rtp_source_set_callbacks), (rtp_source_get_ssrc), (rtp_source_set_as_csrc), (rtp_source_is_as_csrc), (rtp_source_is_active), (rtp_source_is_validated), (rtp_source_is_sender), (rtp_source_received_bye), (rtp_source_get_bye_reason), (rtp_source_set_sdes), (rtp_source_set_sdes_string), (rtp_source_get_sdes), (rtp_source_get_sdes_string), (rtp_source_get_new_sr), (rtp_source_get_new_rb): * gst/rtpmanager/rtpsource.h: Add GObject properties for various things. Don't leak the bye reason. 2007-12-09 19:37:53 +0000 Edward Hervey gst/flv/gstflvparse.c: Fix list of supported and known codecs. Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Fix list of supported and known codecs. Emit tag with the codec name so it gets properly reported in totem and other applications. 2007-12-09 04:30:06 +0000 Sebastian Dröge configure.ac: Don't define GST_DISABLE_DEPRECATED for releases. Fixes #498181. Original commit message from CVS: * configure.ac: Don't define GST_DISABLE_DEPRECATED for releases. Fixes #498181. 2007-12-06 12:45:50 +0000 Sebastian Dröge gst/equalizer/gstiirequalizer.c: Fix compilation. Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_transform_ip): Fix compilation. 2007-12-06 12:42:11 +0000 Sebastian Dröge gst/equalizer/gstiirequalizer.c: Don't process buffers in passthrough mode. Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_transform_ip): Don't process buffers in passthrough mode. 2007-12-06 12:37:43 +0000 Sebastian Dröge gst/filter/: The transform() methods are not called in passthrough mode so there's no need for checking if the elemen... Original commit message from CVS: * gst/filter/gstbpwsinc.c: (bpwsinc_transform): * gst/filter/gstlpwsinc.c: (lpwsinc_transform): The transform() methods are not called in passthrough mode so there's no need for checking if the element is in passthrough mode. 2007-12-06 12:29:26 +0000 Sebastian Dröge gst/filter/: Sync the GObject properties with the controller even in passthrough mode to get consistent property values. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (bpwsinc_transform): * gst/filter/gstlpwsinc.c: (lpwsinc_transform): Sync the GObject properties with the controller even in passthrough mode to get consistent property values. 2007-12-06 10:48:19 +0000 Tim-Philipp Müller gst/mpegtsparse/mpegtsparse.c: Mark crc values table as constant. Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: (crc_tab): Mark crc values table as constant. 2007-12-05 17:00:59 +0000 Edgard Lima * ChangeLog: * ext/metadata/metadataexif.c: * ext/metadata/metadataiptc.c: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadataxmp.c: Added some tags to exif parser. Original commit message from CVS: Added some tags to exif parser. 2007-12-05 12:40:05 +0000 Zaheer Abbas Merali gst/mpegtsparse/: A sub table is identified by the pair table_id and sub_table_identifier, not by pid. So hash with t... Original commit message from CVS: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: A sub table is identified by the pair table_id and sub_table_identifier, not by pid. So hash with that. * sys/dvb/dvbbasebin.c: Make sure initial pids are added properly to filter, 2007-12-05 11:25:58 +0000 Andy Wingo gst/switch/gstswitch.c (gst_switch_set_property): Don't push buffers from app thread when unsetting `queue-buffers', ... Original commit message from CVS: 2007-12-05 Andy Wingo * gst/switch/gstswitch.c (gst_switch_set_property): Don't push buffers from app thread when unsetting `queue-buffers', it's dangerous and the chain function will do it for us anyway. 2007-12-04 17:20:25 +0000 Edgard Lima * ChangeLog: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadataparsejpeg.c: Now compiles even when libiptc is missing. Original commit message from CVS: Now compiles even when libiptc is missing. 2007-12-04 16:42:25 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxjpeg.h: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadatamuxpng.h: Fixed element properties and now muxer writes to png also. Original commit message from CVS: Fixed element properties and now muxer writes to png also. 2007-12-03 18:28:32 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Remove signals for pat, pmt, nit, eit, sdt. Replace with bus messages. Original commit message from CVS: * gst/mpegtsparse/Makefile.am: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: Remove signals for pat, pmt, nit, eit, sdt. Replace with bus messages. * sys/dvb/dvbbasebin.c: Instead of attaching to signals, use the bus messages. Also fix up so the dvbsrc starts only outputting the info tables like PAT, CAT, NIT, SDT, EIT instead of the whole ts. 2007-12-03 16:14:01 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/metadataexif.c: * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadataiptc.h: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadataxmp.c: * ext/metadata/metadataxmp.h: Muxer writes (in jpeg only) whole IPTC chunk sent as tag. Muxer implemets GstTagSetter interface. Original commit message from CVS: Muxer writes (in jpeg only) whole IPTC chunk sent as tag. Muxer implemets GstTagSetter interface. 2007-12-03 13:08:26 +0000 Thijs Vermeir gst/librfb/rfbdecoder.c: Should fix the 64-bit build Original commit message from CVS: * gst/librfb/rfbdecoder.c: Should fix the 64-bit build 2007-11-30 18:30:12 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadataexif.c: * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadataiptc.h: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataxmp.c: * ext/metadata/metadataxmp.h: Muxer writes (in jpeg only) whole EXIF and XMP chunks sent as tags. Original commit message from CVS: Muxer writes (in jpeg only) whole EXIF and XMP chunks sent as tags. 2007-11-30 14:08:15 +0000 Thijs Vermeir gst/librfb/rfbdecoder.*: Add CoRRE encoding Original commit message from CVS: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Add CoRRE encoding 2007-11-30 13:18:36 +0000 Zaheer Abbas Merali gst/mpegtsparse/mpegtsparse.c: CRC check the psi pids. CRC checking code relicenced from MPL. Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: CRC check the psi pids. CRC checking code relicenced from MPL. Thanks Fluendo. 2007-11-30 12:53:13 +0000 Edgard Lima * ChangeLog: * ext/metadata/Makefile.am: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/gstmetadataparse.c: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadatamuxjpeg.c: * ext/metadata/metadatamuxjpeg.h: * ext/metadata/metadatamuxpng.c: * ext/metadata/metadatamuxpng.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/metadatatypes.c: * ext/metadata/metadatatypes.h: Fixed get_range bug when injecting and stripping. And mux is almost done now. Original commit message from CVS: Fixed get_range bug when injecting and stripping. And mux is almost done now. 2007-11-30 10:46:23 +0000 Thijs Vermeir gst/librfb/rfbdecoder.c: Use glib macro for swapping Original commit message from CVS: * gst/librfb/rfbdecoder.c: Use glib macro for swapping 2007-11-29 13:32:11 +0000 Thijs Vermeir gst/librfb/: Disable CopyRect encoding by default Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Disable CopyRect encoding by default Add RRE encoding 2007-11-29 10:49:18 +0000 Wouter Cloetens configure.ac: Bump libsoup requirement as libsoup does not support async client operation prior to version 2.2.104 an... Original commit message from CVS: Patch by: Wouter Cloetens * configure.ac: Bump libsoup requirement as libsoup does not support async client operation prior to version 2.2.104 and it has some leaks. * ext/soup/gstsouphttpsrc.c: (gst_souphttp_src_class_init), (gst_souphttp_src_init), (gst_souphttp_src_dispose), (gst_souphttp_src_set_property), (gst_souphttp_src_create), (gst_souphttp_src_start), (gst_souphttp_src_stop), (gst_souphttp_src_unlock), (gst_souphttp_src_unlock_stop), (gst_souphttp_src_get_size), (soup_got_headers), (soup_got_body), (soup_finished), (soup_got_chunk), (soup_response), (soup_session_close): * ext/soup/gstsouphttpsrc.h: Implement unlock(). Picks up the size from the Content-Length header and emit a duration message. Don't leak the GMainContext object. Fixes #500099. 2007-11-29 10:44:54 +0000 Wim Taymans ext/alsaspdif/alsaspdifsink.c: Don't free uninitialized data when we are in error. Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.c: (alsaspdifsink_set_caps), (alsaspdifsink_get_time), (alsaspdifsink_set_params), (alsaspdifsink_find_pcm_device): Don't free uninitialized data when we are in error. 2007-11-28 14:03:35 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadataparse.c: * ext/metadata/metadataexif.c: * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadataiptc.h: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadataxmp.c: * ext/metadata/metadataxmp.h: Sending make and model individual tags and muxer now links fine. Original commit message from CVS: Sending make and model individual tags and muxer now links fine. 2007-11-28 08:13:52 +0000 Edgard Lima * ChangeLog: * ext/metadata/Makefile.am: * ext/metadata/gstmetadata.c: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadata.c: * ext/metadata/metadata.h: * ext/metadata/metadataexif.c: * ext/metadata/metadataexif.h: * ext/metadata/metadataiptc.c: * ext/metadata/metadataiptc.h: * ext/metadata/metadatatags.c: * ext/metadata/metadatatags.h: * ext/metadata/metadataxmp.c: * ext/metadata/metadataxmp.h: Small fixes in get_range and better structure for generic muxer and demuxer. Original commit message from CVS: Small fixes in get_range and better structure for generic muxer and demuxer. 2007-11-26 13:19:48 +0000 Julien Moutte configure.ac: Add QuickTime Wrapper plug-in. Original commit message from CVS: 2007-11-26 Julien Moutte * configure.ac: Add QuickTime Wrapper plug-in. * gst/speexresample/gstspeexresample.c: (gst_speex_resample_push_drain), (gst_speex_resample_process): Fix build on Mac OS X Leopard. Incorrect printf format arguments. * sys/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/qtwrapper/audiodecoders.c: (qtwrapper_audio_decoder_base_init), (qtwrapper_audio_decoder_class_init), (qtwrapper_audio_decoder_init), (clear_AudioStreamBasicDescription), (fill_indesc_mp3), (fill_indesc_aac), (fill_indesc_samr), (fill_indesc_generic), (make_samr_magic_cookie), (open_decoder), (qtwrapper_audio_decoder_sink_setcaps), (process_buffer_cb), (qtwrapper_audio_decoder_chain), (qtwrapper_audio_decoder_sink_event), (qtwrapper_audio_decoders_register): * sys/qtwrapper/codecmapping.c: (audio_caps_from_string), (fourcc_to_caps): * sys/qtwrapper/codecmapping.h: * sys/qtwrapper/imagedescription.c: (image_description_for_avc1), (image_description_for_mp4v), (image_description_from_stsd_buffer), (image_description_from_codec_data): * sys/qtwrapper/imagedescription.h: * sys/qtwrapper/qtutils.c: (get_name_info_from_component), (get_output_info_from_component), (dump_avcc_atom), (dump_image_description), (dump_codec_decompress_params), (addSInt32ToDictionary), (dump_cvpixel_buffer), (DestroyAudioBufferList), (AllocateAudioBufferList): * sys/qtwrapper/qtutils.h: * sys/qtwrapper/qtwrapper.c: (plugin_init): * sys/qtwrapper/qtwrapper.h: * sys/qtwrapper/videodecoders.c: (qtwrapper_video_decoder_base_init), (qtwrapper_video_decoder_class_init), (qtwrapper_video_decoder_init), (qtwrapper_video_decoder_finalize), (fill_image_description), (new_image_description), (close_decoder), (open_decoder), (qtwrapper_video_decoder_sink_setcaps), (decompressCb), (qtwrapper_video_decoder_chain), (qtwrapper_video_decoder_sink_event), (qtwrapper_video_decoders_register): Initial import of QuickTime wrapper jointly developped by Songbird authors (Pioneers of the Inevitable) and Fluendo. 2007-11-26 10:08:20 +0000 Stefan Kost gst/spectrum/gstspectrum.c: Use dispose and finalize. Dispose can be called multiple times. Original commit message from CVS: * gst/spectrum/gstspectrum.c: Use dispose and finalize. Dispose can be called multiple times. 2007-11-26 09:38:24 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadataparse.c: Now works when get_range is not available upstream. Original commit message from CVS: Now works when get_range is not available upstream. 2007-11-26 08:43:25 +0000 Sebastian Dröge gst/speexresample/: Update speex resampler to latest SVN. We're now down to only the changes noted in README again. Original commit message from CVS: * gst/speexresample/README: * gst/speexresample/arch.h: * gst/speexresample/resample.c: (resampler_basic_direct_single), (resampler_basic_direct_double), (resampler_basic_interpolate_single), (resampler_basic_interpolate_double), (speex_resampler_process_native), (speex_resampler_process_float), (speex_resampler_process_int), (speex_resampler_process_interleaved_float), (speex_resampler_process_interleaved_int), (speex_resampler_get_input_latency), (speex_resampler_get_output_latency): * gst/speexresample/speex_resampler.h: Update speex resampler to latest SVN. We're now down to only the changes noted in README again. * gst/speexresample/speex_resampler_wrapper.h: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_push_drain), (gst_speex_resample_query): Adjust to API changes. 2007-11-25 10:45:09 +0000 Edward Hervey gst/flv/gstflvparse.c: Output segment with proper 'stop' value, makes flvdemux 100% compatible with gnonlin. Original commit message from CVS: * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Output segment with proper 'stop' value, makes flvdemux 100% compatible with gnonlin. 2007-11-25 10:12:09 +0000 Stefan Kost ext/dc1394/gstdc1394.c: Set initial structure name to fix assertion, due to recent caps name constraints. Original commit message from CVS: * ext/dc1394/gstdc1394.c: Set initial structure name to fix assertion, due to recent caps name constraints. 2007-11-23 17:53:37 +0000 Alessandro Decina gst/mpegtsparse/: pat-info is now a signal not a GObject property that gets notified. Original commit message from CVS: patch by: Alessandro Decina * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtspacketizer.h: * gst/mpegtsparse/mpegtsparse.c: * gst/mpegtsparse/mpegtsparse.h: pat-info is now a signal not a GObject property that gets notified. pat-info, pmt-info now instead of passing a GObject as a parameter, pass a GstStructure. New signals: nit-info, sdt-info, eit-info for DVB SI information * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camutils.c: * sys/dvb/camutils.h: Cam code now uses the pmt GstStructure passed from mpegtsparse signals rather than the GObject. * sys/dvb/dvbbasebin.c: Use new signals in mpegtsparse and use GstStructures as per mpegtsparse's modified API. 2007-11-23 17:35:21 +0000 Edgard Lima * ChangeLog: * ext/metadata/Makefile.am: * ext/metadata/gstmetadata.c: * ext/metadata/gstmetadatamux.c: * ext/metadata/gstmetadatamux.h: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadataparse.c: * ext/metadata/metadataparse.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/metadatatypes.c: * ext/metadata/metadatatypes.h: Now parser is generic (just add/remove a list of chunks). And a template of muxer has been created. Original commit message from CVS: Now parser is generic (just add/remove a list of chunks). And a template of muxer has been created. 2007-11-23 10:21:31 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: Only post the latency message if we have a resampler state already. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_update_state): Only post the latency message if we have a resampler state already. 2007-11-23 10:21:11 +0000 Sebastian Dröge gst/audioresample/gstaudioresample.c: Implement latency query. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init), (audioresample_query), (audioresample_query_type), (gst_audioresample_set_property): Implement latency query. 2007-11-23 10:01:33 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: Also post GST_MESSAGE_LATENCY if the latency changes. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_update_state): Also post GST_MESSAGE_LATENCY if the latency changes. 2007-11-23 08:48:50 +0000 Sebastian Dröge gst/speexresample/: Add functions to push the remaining samples and to get the latency of the resampler. These will g... Original commit message from CVS: * gst/speexresample/resample.c: (speex_resampler_get_latency), (speex_resampler_drain_float), (speex_resampler_drain_int), (speex_resampler_drain_interleaved_float), (speex_resampler_drain_interleaved_int): * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_wrapper.h: Add functions to push the remaining samples and to get the latency of the resampler. These will get added to Speex SVN in this or a slightly changed form at some point too and should get merged then again. * gst/speexresample/gstspeexresample.c: (gst_speex_resample_init), (gst_speex_resample_init_state), (gst_speex_resample_transform_size), (gst_speex_resample_push_drain), (gst_speex_resample_event), (gst_speex_fix_output_buffer), (gst_speex_resample_process), (gst_speex_resample_query), (gst_speex_resample_query_type): Drop the prepending zeroes and output the remaining samples on EOS. Also properly implement the latency query for this. speexresample should be completely ready for production use now. 2007-11-22 09:08:27 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: jitterbuffer can buffer an unlimited amount of time and thus has no max_latency ... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_query): jitterbuffer can buffer an unlimited amount of time and thus has no max_latency requirements. 2007-11-21 10:18:56 +0000 Sebastian Dröge gst/speexresample/README: Add README explaining where the resampling code was taken from and which changes were done. Original commit message from CVS: * gst/speexresample/README: Add README explaining where the resampling code was taken from and which changes were done. * gst/speexresample/resample.c: (speex_alloc), (speex_realloc), (speex_free): Use g_malloc() and friends instead of malloc() to achieve higher portability and define the functions inline. * gst/speexresample/speex_resampler.h: Add back some useless preprocessor stuff to keep the diff between our version and the one from the Speex SVN repository lower. 2007-11-21 09:56:54 +0000 Sebastian Dröge gst/filter/: Post a GST_MESSAGE_LATENCY if the latency changes. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (bpwsinc_set_property): * gst/filter/gstlpwsinc.c: (lpwsinc_set_property): Post a GST_MESSAGE_LATENCY if the latency changes. 2007-11-21 09:45:41 +0000 Wim Taymans ext/faac/gstfaac.c: Don't try to flush the decoder on EOS when it was not initialized. Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_sink_event): Don't try to flush the decoder on EOS when it was not initialized. Fixes #498667 2007-11-21 09:40:08 +0000 Julien Moutte ext/sdl/sdlaudiosink.c: Fix build on Mac OS X. (missing format parameter) Original commit message from CVS: 2007-11-21 Julien Moutte * ext/sdl/sdlaudiosink.c: (gst_sdlaudio_sink_write): Fix build on Mac OS X. (missing format parameter) 2007-11-21 08:21:10 +0000 Stefan Kost gst/equalizer/: Remove preset iface again. We'll re-add this after its been released in -good. Original commit message from CVS: * gst/equalizer/gstiirequalizer10bands.c: * gst/equalizer/gstiirequalizer3bands.c: Remove preset iface again. We'll re-add this after its been released in -good. 2007-11-20 20:23:25 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: Some small cleanup and addition of a TODO item. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_fix_output_buffer), (gst_speex_resample_transform): Some small cleanup and addition of a TODO item. 2007-11-20 12:56:00 +0000 Sebastian Dröge gst/speexresample/Makefile.am: Add missing file. Original commit message from CVS: * gst/speexresample/Makefile.am: Add missing file. 2007-11-20 07:52:13 +0000 Sebastian Dröge docs/plugins/inspect/: Add missing inspection files to CVS. Original commit message from CVS: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvbsrc.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-quicktime.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soup.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-switch.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-videoparse.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-y4menc.xml: Add missing inspection files to CVS. 2007-11-20 07:47:27 +0000 Sebastian Dröge Add speexresample to the docs and while at that do a make update. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst/speexresample/gstspeexresample.h: Add speexresample to the docs and while at that do a make update. 2007-11-20 07:30:30 +0000 Sebastian Dröge gst/speexresample/gstspeexresample.c: If the resampler gives less output samples than expected adjust the output buff... Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_fix_output_buffer), (gst_speex_resample_process): If the resampler gives less output samples than expected adjust the output buffer and print a warning. 2007-11-20 07:02:45 +0000 Sebastian Dröge Add resample element based on the Speex resampling algorithm. Original commit message from CVS: * configure.ac: * gst/speexresample/arch.h: * gst/speexresample/fixed_generic.h: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_base_init), (gst_speex_resample_class_init), (gst_speex_resample_init), (gst_speex_resample_start), (gst_speex_resample_stop), (gst_speex_resample_get_unit_size), (gst_speex_resample_transform_caps), (gst_speex_resample_init_state), (gst_speex_resample_update_state), (gst_speex_resample_reset_state), (gst_speex_resample_parse_caps), (gst_speex_resample_transform_size), (gst_speex_resample_set_caps), (gst_speex_resample_event), (gst_speex_resample_check_discont), (gst_speex_resample_process), (gst_speex_resample_transform), (gst_speex_resample_set_property), (gst_speex_resample_get_property), (plugin_init): * gst/speexresample/gstspeexresample.h: * gst/speexresample/resample.c: (speex_alloc), (speex_realloc), (speex_free), (compute_func), (main), (sinc), (cubic_coef), (resampler_basic_direct_single), (resampler_basic_direct_double), (resampler_basic_interpolate_single), (resampler_basic_interpolate_double), (update_filter), (speex_resampler_init), (speex_resampler_init_frac), (speex_resampler_destroy), (speex_resampler_process_native), (speex_resampler_process_float), (speex_resampler_process_int), (speex_resampler_process_interleaved_float), (speex_resampler_process_interleaved_int), (speex_resampler_set_rate), (speex_resampler_get_rate), (speex_resampler_set_rate_frac), (speex_resampler_get_ratio), (speex_resampler_set_quality), (speex_resampler_get_quality), (speex_resampler_set_input_stride), (speex_resampler_get_input_stride), (speex_resampler_set_output_stride), (speex_resampler_get_output_stride), (speex_resampler_skip_zeros), (speex_resampler_reset_mem), (speex_resampler_strerror): * gst/speexresample/speex_resampler.h: * gst/speexresample/speex_resampler_float.c: * gst/speexresample/speex_resampler_int.c: * gst/speexresample/speex_resampler_wrapper.h: Add resample element based on the Speex resampling algorithm. 2007-11-19 22:09:36 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: Fixed buffer strip (safer wil pull and after seek). Original commit message from CVS: Fixed buffer strip (safer wil pull and after seek). 2007-11-19 20:30:19 +0000 Stefan Kost gst/equalizer/: Activate preset iface and upload two presets here. Original commit message from CVS: * gst/equalizer/gstiirequalizer10bands.c: * gst/equalizer/gstiirequalizer3bands.c: Activate preset iface and upload two presets here. 2007-11-19 13:05:23 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: Strip out in pull mode also. Seek and Query functions added. Original commit message from CVS: Strip out in pull mode also. Seek and Query functions added. 2007-11-18 21:06:51 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadataparse.c: * ext/metadata/metadataparse.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/metadataparsetypes.h: Strip out metadata chunks. Original commit message from CVS: Strip out metadata chunks. 2007-11-16 11:11:06 +0000 Stefan Kost configure.ac: Als use AG_GST_PLUGIN_DOCS (see #344039). Original commit message from CVS: * configure.ac: Als use AG_GST_PLUGIN_DOCS (see #344039). 2007-11-15 19:03:33 +0000 Wai-Ming Ho gst/mpegtsparse/mpegtspacketizer.c: Ensure that the plugin does not crash when the property pat-info is queried befor... Original commit message from CVS: Patch by: Wai-Ming Ho * gst/mpegtsparse/mpegtspacketizer.c: (foreach_stream_clear), (remove_all), (mpegts_packetizer_clear): Ensure that the plugin does not crash when the property pat-info is queried before a PAT is available. It also ensures that the PAT info is cleared when the changing from PLAYING to READY. Fixes #487892. 2007-11-15 18:53:56 +0000 Wouter Paesen ext/soundtouch/gstpitch.cc: Handle seeking correctly. Fixes #461068. Original commit message from CVS: Patch by: Wouter Paesen * ext/soundtouch/gstpitch.cc: Handle seeking correctly. Fixes #461068. 2007-11-15 18:41:31 +0000 Michael Kötter ext/alsaspdif/alsaspdifsink.c: Fix sample rate and clocking. Original commit message from CVS: Patch by: Michael Kötter * ext/alsaspdif/alsaspdifsink.c: (alsaspdifsink_set_caps), (alsaspdifsink_get_time), (alsaspdifsink_open), (alsaspdifsink_set_params), (alsaspdifsink_delay), (plugin_init): Fix sample rate and clocking. Remove buffer_time and period_time as this seems to break on some hardware. Fixes #485462. 2007-11-15 17:26:25 +0000 Wouter Cloetens Added HTTP source based on libsoup. Fixes #497020. Original commit message from CVS: Patch by: Wouter Cloetens * configure.ac: * ext/Makefile.am: * ext/soup/Makefile.am: * ext/soup/gstsouphttpsrc.c: (_do_init), (gst_souphttp_src_base_init), (gst_souphttp_src_class_init), (gst_souphttp_src_init), (gst_souphttp_src_dispose), (gst_souphttp_src_set_property), (gst_souphttp_src_get_property), (gst_souphttp_src_create), (gst_souphttp_src_start), (gst_souphttp_src_stop), (gst_souphttp_src_unlock), (gst_souphttp_src_set_location), (soup_got_chunk), (soup_response), (soup_session_close), (plugin_init): * ext/soup/gstsouphttpsrc.h: Added HTTP source based on libsoup. Fixes #497020. 2007-11-15 15:32:47 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.c: don't forget to handle the offset's Original commit message from CVS: * gst/librfb/gstrfbsrc.c: don't forget to handle the offset's * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: precalculate some many used values 2007-11-15 08:28:29 +0000 Armando Taffarel Neto gst/librfb/gstrfbsrc.c: Set the timestamp for the output buffers Original commit message from CVS: patch by: Armando Taffarel Neto * gst/librfb/gstrfbsrc.c: Set the timestamp for the output buffers 2007-11-14 17:03:18 +0000 Sebastian Dröge tests/check/elements/spectrum.c: Fix spectrum unit test for the latest spectrum changes. Original commit message from CVS: * tests/check/elements/spectrum.c: (GST_START_TEST): Fix spectrum unit test for the latest spectrum changes. 2007-11-12 21:07:31 +0000 René Stadler gst/replaygain/rganalysis.c: Avoid slowdown from denormals when processing near-silence input data. Original commit message from CVS: Patch by: René Stadler * gst/replaygain/rganalysis.c: (yule_filter): Avoid slowdown from denormals when processing near-silence input data. Spotted by Gabriel Bouvigne. Fixes #494499. 2007-11-12 19:22:24 +0000 Edward Hervey gst/flv/gstflvparse.c: Add mapping for Nellymoser ASAO audio codec. Original commit message from CVS: * gst/flv/gstflvparse.c: Add mapping for Nellymoser ASAO audio codec. (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Make sure we actually have data to read at the end of the tag. This avoids trying to allocate negative buffers. 2007-11-12 17:27:03 +0000 Edgard Lima * ChangeLog: * ext/metadata/README: Added a design proposal from metadata parse and mux. Original commit message from CVS: Added a design proposal from metadata parse and mux. 2007-11-11 21:12:10 +0000 Sebastian Dröge gst/: Change the meaning of the magnitude values given in the Original commit message from CVS: * gst/equalizer/demo.c: (draw_spectrum): * gst/spectrum/demo-audiotest.c: (draw_spectrum): * gst/spectrum/demo-osssrc.c: (draw_spectrum): * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init): Change the meaning of the magnitude values given in the GstMessages by spectrum to decibel instead of decibel+threshold. 2007-11-11 13:55:27 +0000 Sebastian Dröge gst/equalizer/: And continue to update docs. Also include some sample code for the n-band equalizer in the docs. Original commit message from CVS: * gst/equalizer/gstiirequalizer10bands.c: * gst/equalizer/gstiirequalizer3bands.c: * gst/equalizer/gstiirequalizernbands.c: And continue to update docs. Also include some sample code for the n-band equalizer in the docs. 2007-11-11 12:54:31 +0000 Sebastian Dröge gst/equalizer/: Update docs and property ranges to the real values. Original commit message from CVS: * gst/equalizer/gstiirequalizer10bands.c: (gst_iir_equalizer_10bands_class_init): * gst/equalizer/gstiirequalizer3bands.c: (gst_iir_equalizer_3bands_class_init): * gst/equalizer/gstiirequalizernbands.c: Update docs and property ranges to the real values. 2007-11-09 17:27:00 +0000 Sebastian Dröge gst/spectrum/gstspectrum.c: Now do the scaling right for real. Also initialize a previously uninitialized variable. Original commit message from CVS: * gst/spectrum/gstspectrum.c: Now do the scaling right for real. Also initialize a previously uninitialized variable. 2007-11-09 15:53:13 +0000 Edgard Lima * ChangeLog: * ext/metadata/metadataparsexmp.c: Extracting more detailed info from XMP. Original commit message from CVS: Extracting more detailed info from XMP. 2007-11-08 15:56:46 +0000 Stefan Kost gst/equalizer/demo.c: Make default volume a bit less. Improve layout by giving more space to the slider with big-numb... Original commit message from CVS: * gst/equalizer/demo.c: Make default volume a bit less. Improve layout by giving more space to the slider with big-numbers and enable fill. 2007-11-07 16:47:32 +0000 Sebastian Dröge Require GIO >= 0.1.2 and adjust unit test for an API change. Original commit message from CVS: * configure.ac: * tests/check/pipelines/gio.c: (GST_START_TEST): Require GIO >= 0.1.2 and adjust unit test for an API change. 2007-11-07 15:36:59 +0000 Sebastian Dröge tests/icles/equalizer-test.c: Fix gain ranges for the latest equalizer changes. Original commit message from CVS: * tests/icles/equalizer-test.c: (do_slider_fiddling): Fix gain ranges for the latest equalizer changes. 2007-11-07 15:18:54 +0000 Sebastian Dröge ext/gio/gstgio.h: Add macro to check if a stream supports seeking. Original commit message from CVS: * ext/gio/gstgio.h: Add macro to check if a stream supports seeking. * ext/gio/Makefile.am: * ext/gio/gstgiobasesink.c: (gst_gio_base_sink_base_init), (gst_gio_base_sink_class_init), (gst_gio_base_sink_init), (gst_gio_base_sink_finalize), (gst_gio_base_sink_start), (gst_gio_base_sink_stop), (gst_gio_base_sink_unlock), (gst_gio_base_sink_unlock_stop), (gst_gio_base_sink_event), (gst_gio_base_sink_render), (gst_gio_base_sink_query), (gst_gio_base_sink_set_stream): * ext/gio/gstgiobasesink.h: * ext/gio/gstgiobasesrc.c: (gst_gio_base_src_base_init), (gst_gio_base_src_class_init), (gst_gio_base_src_init), (gst_gio_base_src_finalize), (gst_gio_base_src_start), (gst_gio_base_src_stop), (gst_gio_base_src_get_size), (gst_gio_base_src_is_seekable), (gst_gio_base_src_unlock), (gst_gio_base_src_unlock_stop), (gst_gio_base_src_check_get_range), (gst_gio_base_src_create), (gst_gio_base_src_set_stream): * ext/gio/gstgiobasesrc.h: Refactor common GIO functions to GstGioBaseSink and GstGioBaseSrc base classes that only require a GInputStream or GOutputStream to work. * ext/gio/gstgiosink.c: (gst_gio_sink_base_init), (gst_gio_sink_class_init), (gst_gio_sink_init), (gst_gio_sink_finalize), (gst_gio_sink_start): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (gst_gio_src_base_init), (gst_gio_src_class_init), (gst_gio_src_init), (gst_gio_src_finalize), (gst_gio_src_start): * ext/gio/gstgiosrc.h: Use the newly created base classes here. * ext/gio/gstgio.c: (plugin_init): * ext/gio/gstgiostreamsink.c: (gst_gio_stream_sink_base_init), (gst_gio_stream_sink_class_init), (gst_gio_stream_sink_init), (gst_gio_stream_sink_finalize), (gst_gio_stream_sink_set_property), (gst_gio_stream_sink_get_property): * ext/gio/gstgiostreamsink.h: * ext/gio/gstgiostreamsrc.c: (gst_gio_stream_src_base_init), (gst_gio_stream_src_class_init), (gst_gio_stream_src_init), (gst_gio_stream_src_finalize), (gst_gio_stream_src_set_property), (gst_gio_stream_src_get_property): * ext/gio/gstgiostreamsrc.h: Implement GstGioStreamSink and GstGioStreamSrc that have a property to set the GInputStream/GOutputStream that should be used. * tests/check/Makefile.am: * tests/check/pipelines/.cvsignore: * tests/check/pipelines/gio.c: (message_handler), (GST_START_TEST), (gio_testsuite), (main): Add unit test for giostreamsrc and giostreamsink. 2007-11-07 11:48:09 +0000 Sebastian Dröge ext/gio/gstgio.c: Remove nowadays unnecessary workaround for a crash. Original commit message from CVS: * ext/gio/gstgio.c: (plugin_init): Remove nowadays unnecessary workaround for a crash. * ext/gio/gstgiosink.c: (gst_gio_sink_finalize), (gst_gio_sink_start), (gst_gio_sink_stop), (gst_gio_sink_unlock_stop): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (gst_gio_src_finalize), (gst_gio_src_start), (gst_gio_src_stop), (gst_gio_src_unlock_stop): * ext/gio/gstgiosrc.h: Make the finalize function safer, clean up everything that could stay around. Reset the cancellable instead of creating a new one after cancelling some operation. Don't store the GFile in the element, it's only necessary for creating the streams. 2007-11-06 12:23:35 +0000 Sebastian Dröge gst/spectrum/demo-audiotest.c: Use autoaudiosink instead of alsasink and use a sine wave. Original commit message from CVS: * gst/spectrum/demo-audiotest.c: (main): Use autoaudiosink instead of alsasink and use a sine wave. * gst/spectrum/gstspectrum.c: Fix the magnitude calculation. 2007-11-04 11:04:28 +0000 Ole André Vadla Ravnås gst-libs/gst/dshow/gstdshowfakesink.*: Fix crasher in constructor due to the base class's constructor not necessarily... Original commit message from CVS: Patch by: Ole André Vadla Ravnås * gst-libs/gst/dshow/gstdshowfakesink.cpp: (CDshowFakeSink.CDshowFakeSink): * gst-libs/gst/dshow/gstdshowfakesink.h: (CDshowFakeSink.m_hres): Fix crasher in constructor due to the base class's constructor not necessarily being NULL-safe (depends on the SDK version used apparently; #492406). * sys/dshowsrcwrapper/gstdshowaudiosrc.c: (gst_dshowaudiosrc_prepare): * sys/dshowsrcwrapper/gstdshowvideosrc.c: (gst_dshowvideosrc_set_caps): Fix a couple of MSVC compiler warnings (#492406). 2007-11-03 19:50:11 +0000 Sebastian Dröge gst/equalizer/: Allow setting 0 as bandwidth and handle this correctly. Original commit message from CVS: * gst/equalizer/demo.c: (main): * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_band_class_init), (setup_filter): Allow setting 0 as bandwidth and handle this correctly. Also handle a bandwidth of rate/2 properly. * gst/equalizer/gstiirequalizernbands.c: (gst_iir_equalizer_nbands_class_init): Make it possible to generate a N-band equalizer with 1 bands. The previous limit of 2 was caused by a nowadays replaced calculation doing a division by zero if number of bands was 1. 2007-11-02 21:45:38 +0000 Ole André Vadla Ravnås gst/rtpmanager/gstrtpsession.c: Fix bad function signatures (#492798). Original commit message from CVS: Patch by: Ole André Vadla Ravnås * gst/rtpmanager/gstrtpsession.c: Fix bad function signatures (#492798). 2007-11-02 16:50:42 +0000 Edgard Lima * ChangeLog: * ext/metadata/Makefile.am: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadataparse.c: * ext/metadata/metadataparse.h: * ext/metadata/metadataparseexif.c: * ext/metadata/metadataparseexif.h: * ext/metadata/metadataparseiptc.c: * ext/metadata/metadataparseiptc.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsepng.c: * ext/metadata/metadataparsepng.h: * ext/metadata/metadataparseutil.c: * ext/metadata/metadataparseutil.h: * ext/metadata/metadataparsexmp.c: * ext/metadata/metadataparsexmp.h: Added support for PNG/XMP. Indentation. And fixed pull mode to parse the file. Original commit message from CVS: Added support for PNG/XMP. Indentation. And fixed pull mode to parse the file. 2007-11-02 12:03:04 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadataparse.c: Now metadataparse works in push or pull mode. Original commit message from CVS: Now metadataparse works in push or pull mode. 2007-11-01 16:04:29 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/metadata/Makefile.am: * ext/metadata/metadataparseexif.c: * ext/metadata/metadataparseiptc.c: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparseutil.c: * ext/metadata/metadataparseutil.h: * ext/metadata/metadataparsexmp.c: * ext/metadata/metadataparsexmp.h: Some XMP stuff added. Original commit message from CVS: Some XMP stuff added. 2007-10-31 16:21:02 +0000 Edgard Lima * ChangeLog: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadataparseexif.c: * ext/metadata/metadataparseexif.h: * ext/metadata/metadataparseiptc.c: * ext/metadata/metadataparseiptc.h: * ext/metadata/metadataparsexmp.c: * ext/metadata/metadataparsexmp.h: Now sending iptc tag in whole chunk. Ready to also send exif and xmp in the same way (look at bug #486659). Original commit message from CVS: Now sending iptc tag in whole chunk. Ready to also send exif and xmp in the same way (look at bug #486659). 2007-10-31 14:44:55 +0000 Thijs Vermeir gst/librfb/rfbdecoder.c: Some refactoring in RAW encoding Original commit message from CVS: * gst/librfb/rfbdecoder.c: Some refactoring in RAW encoding 2007-10-31 14:09:25 +0000 Thijs Vermeir gst/librfb/: Added copyrect encoding Original commit message from CVS: * gst/librfb/d3des.h: * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: * gst/librfb/rfbbuffer.h: * gst/librfb/rfbcontext.h: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: * gst/librfb/rfbutil.h: * gst/librfb/vncauth.h: Added copyrect encoding 2007-10-31 13:31:08 +0000 Zaheer Abbas Merali sys/dvb/camswclient.c: Warn on failed write. Original commit message from CVS: * sys/dvb/camswclient.c: Warn on failed write. 2007-10-30 21:37:49 +0000 Sebastian Dröge gst/equalizer/: Add small demo application based on the spectrum demo applications that gets white noise as input, pu... Original commit message from CVS: * gst/equalizer/Makefile.am: * gst/equalizer/demo.c: (on_window_destroy), (on_configure_event), (on_gain_changed), (on_bandwidth_changed), (on_freq_changed), (draw_spectrum), (message_handler), (main): Add small demo application based on the spectrum demo applications that gets white noise as input, pushes it through an equalizer and paints the spectrum. For every equalizer band it's possible to set gain, bandwidth and frequency. * gst/equalizer/gstiirequalizer.c: (setup_filter): Add some guarding against too large or too small frequencies and bandwidths. Also improve debugging a bit. 2007-10-30 21:18:45 +0000 Sebastian Dröge gst/equalizer/gstiirequalizer.c: Replace filters with a bit better filters for which we can actually find documentati... Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_band_get_property), (gst_iir_equalizer_band_class_init), (arg_to_scale), (setup_filter), (gst_iir_equalizer_compute_frequencies): Replace filters with a bit better filters for which we can actually find documentation, which don't change anything on zero gain, etc. Make the frequency property of the bands writable, rename the band-width property to bandwidth and change the meaning to the frequency difference between bandedges, change the meaning of the gain property to dB instead of a weird scale between -1 and 1 that has no real meaning. 2007-10-30 20:55:27 +0000 Stefan Kost sys/dvb/dvbbasebin.c: Fix the build. Original commit message from CVS: * sys/dvb/dvbbasebin.c: Fix the build. 2007-10-30 18:21:22 +0000 Edgard Lima * ChangeLog: * ext/metadata/.gitignore: * ext/metadata/gstmetadataparse.c: * ext/metadata/metadataparse.c: * ext/metadata/metadataparse.h: Changed kclass to "Parser/Extracter/Metadata", changed caps to "image/jpeg, tags-extract=true/false" and changed prio... Original commit message from CVS: Changed kclass to "Parser/Extracter/Metadata", changed caps to "image/jpeg, tags-extract=true/false" and changed priority to GST_RANK_PRIMARY+1. Also, srcpad can only work in push mode until fixed to also work in pull mode. 2007-10-30 12:49:04 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/metadata/Makefile.am: * ext/metadata/gstmetadata.c: * ext/metadata/gstmetadataparse.c: * ext/metadata/gstmetadataparse.h: * ext/metadata/metadataparse.c: * ext/metadata/metadataparse.h: * ext/metadata/metadataparseexif.c: * ext/metadata/metadataparseexif.h: * ext/metadata/metadataparseiptc.c: * ext/metadata/metadataparseiptc.h: * ext/metadata/metadataparsejpeg.c: * ext/metadata/metadataparsejpeg.h: * ext/metadata/metadataparsexmp.c: * ext/metadata/metadataparsexmp.h: Created new plugin ('medadata') and element ('metadataparse') that extract metadata from images (look at bug #486659). Original commit message from CVS: Created new plugin ('medadata') and element ('metadataparse') that extract metadata from images (look at bug #486659). 2007-10-29 15:54:04 +0000 Zaheer Abbas Merali sys/dvb/dvbbasebin.c: Uncomment the line that sets the pid filter. Wrong way to work-around driver issues. Original commit message from CVS: * sys/dvb/dvbbasebin.c: Uncomment the line that sets the pid filter. Wrong way to work-around driver issues. 2007-10-28 15:22:06 +0000 Tim-Philipp Müller ext/faac/gstfaac.c: Fix bitrate ranges and change enum nick for low complexity profile from LOW to LC for consistency... Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_profile_get_type), (gst_faac_class_init), (gst_faac_init): Fix bitrate ranges and change enum nick for low complexity profile from LOW to LC for consistency (#490060). 2007-10-27 16:04:48 +0000 Tim-Philipp Müller gst/interleave/interleave.c: Let's not call every request pad we create "sink%d", that'll create problems if there's ... Original commit message from CVS: * gst/interleave/interleave.c: (gst_interleave_request_new_pad): Let's not call every request pad we create "sink%d", that'll create problems if there's to be more than one pad. Fixes #490682. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/interleave.c: Add unit test for the above. 2007-10-27 08:20:59 +0000 Julien Moutte gst/mpeg4videoparse/mpeg4videoparse.*: Improved version not damaging headers using a simple state machine. Original commit message from CVS: 2007-10-27 Julien MOUTTE * gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_align), (gst_mpeg4vparse_drain), (gst_mpeg4vparse_chain), (gst_mpeg4vparse_sink_setcaps), (gst_mpeg4vparse_sink_event), (gst_mpeg4vparse_cleanup), (gst_mpeg4vparse_change_state), (gst_mpeg4vparse_dispose), (gst_mpeg4vparse_base_init), (gst_mpeg4vparse_class_init), (gst_mpeg4vparse_init), (plugin_init): * gst/mpeg4videoparse/mpeg4videoparse.h: Improved version not damaging headers using a simple state machine. 2007-10-26 17:18:41 +0000 Tim-Philipp Müller ext/x264/gstx264enc.c: Fix build against the libx264 version that ships with debian stable. Original commit message from CVS: * ext/x264/gstx264enc.c: Fix build against the libx264 version that ships with debian stable. 2007-10-26 16:08:04 +0000 Julien Moutte Add a simple MPEG4 ES parser. Original commit message from CVS: 2007-10-26 Julien MOUTTE * configure.ac: * gst/mpeg4videoparse/Makefile.am: * gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_drain), (gst_mpeg4vparse_chain), (gst_mpeg4vparse_sink_setcaps), (gst_mpeg4vparse_sink_event), (gst_mpeg4vparse_cleanup), (gst_mpeg4vparse_change_state), (gst_mpeg4vparse_dispose), (gst_mpeg4vparse_base_init), (gst_mpeg4vparse_class_init), (gst_mpeg4vparse_init), (plugin_init): * gst/mpeg4videoparse/mpeg4videoparse.h: Add a simple MPEG4 ES parser. 2007-10-25 23:42:52 +0000 David Schleef Improve documentation, write some tests for multifilesrc/sink for upcoming ->good review. Original commit message from CVS: * gst/multifile/Makefile.am: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesrc.c: * tests/check/Makefile.am: * tests/check/elements/multifile.c: Improve documentation, write some tests for multifilesrc/sink for upcoming ->good review. 2007-10-23 13:08:26 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Actually use the code-rate-hp parameter for DVB-S. Original commit message from CVS: * sys/dvb/gstdvbsrc.c: Actually use the code-rate-hp parameter for DVB-S. It turns out setting to AUTO does not always work ( especially in diseq situations). Set by default to FEC_AUTO. 2007-10-22 15:45:49 +0000 Julien Moutte gst/flv/gstflvparse.c: Don't emit no-more-pads for single pad scenarios as the header is definitely not reliable. We ... Original commit message from CVS: 2007-10-22 Julien MOUTTE * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_type): Don't emit no-more-pads for single pad scenarios as the header is definitely not reliable. We emit them for 2 pads scenarios though to speed up media discovery. 2007-10-19 16:20:53 +0000 Zaheer Abbas Merali sys/dvb/dvbbasebin.c: Added proxy property of diseqc-source Original commit message from CVS: * sys/dvb/dvbbasebin.c: Added proxy property of diseqc-source 2007-10-18 06:20:21 +0000 Sebastian Dröge gst/equalizer/gstiirequalizer.c: Add a missing break. Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_band_set_property): Add a missing break. 2007-10-18 06:14:42 +0000 Sebastian Dröge gst/equalizer/gstiirequalizer.*: Move bandwidth property to the separate bands and add float64 support. Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_band_get_property), (gst_iir_equalizer_band_class_init), (gst_iir_equalizer_band_init), (gst_iir_equalizer_band_get_type), (gst_iir_equalizer_class_init), (setup_filter), (gst_iir_equalizer_setup): * gst/equalizer/gstiirequalizer.h: Move bandwidth property to the separate bands and add float64 support. 2007-10-17 14:43:25 +0000 Tim-Philipp Müller ext/cdaudio/Makefile.am: Add another missing GST_LIBS. Original commit message from CVS: * ext/cdaudio/Makefile.am: Add another missing GST_LIBS. 2007-10-17 14:33:03 +0000 Richard Hult gst/dvdspu/Makefile.am: Fix LIBS - we need to link against libgstreamer. Original commit message from CVS: Patch by: Richard Hult * gst/dvdspu/Makefile.am: Fix LIBS - we need to link against libgstreamer. 2007-10-17 10:33:43 +0000 Tim-Philipp Müller sys/dvb/: Fix some warnings. Original commit message from CVS: * sys/dvb/camapplication.c: * sys/dvb/camresourcemanager.c: Fix some warnings. 2007-10-16 19:24:31 +0000 Thijs Vermeir gst/librfb/rfbdecoder.c: Add the set encodings client message Original commit message from CVS: * gst/librfb/rfbdecoder.c: Add the set encodings client message 2007-10-16 18:33:44 +0000 Thijs Vermeir gst/librfb/: remove the rfbbytestream dead code Original commit message from CVS: * gst/librfb/Makefile.am: * gst/librfb/rfb.h: * gst/librfb/rfbbytestream.c: * gst/librfb/rfbbytestream.h: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: remove the rfbbytestream dead code 2007-10-16 17:38:05 +0000 Alessandro Decina sys/dvb/: Integrate SoC work done by Alessandro for the Freevo project. Original commit message from CVS: patch by: Alessandro Decina * sys/dvb/Makefile.am: * sys/dvb/cam.c: * sys/dvb/cam.h: * sys/dvb/camapplication.c: * sys/dvb/camapplication.h: * sys/dvb/camapplicationinfo.c: * sys/dvb/camapplicationinfo.h: * sys/dvb/camconditionalaccess.c: * sys/dvb/camconditionalaccess.h: * sys/dvb/camdevice.c: * sys/dvb/camdevice.h: * sys/dvb/camresourcemanager.c: * sys/dvb/camresourcemanager.h: * sys/dvb/camsession.c: * sys/dvb/camsession.h: * sys/dvb/camswclient.c: * sys/dvb/camswclient.h: * sys/dvb/camtransport.c: * sys/dvb/camtransport.h: * sys/dvb/camutils.c: * sys/dvb/camutils.h: * sys/dvb/dvbbasebin.c: * sys/dvb/dvbbasebin.h: * sys/dvb/gstdvb.c: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: Integrate SoC work done by Alessandro for the Freevo project. Adds cam support to the dvb stack in GStreamer and a new element (actually a bin) called dvbbasebin that integrates dvbsrc and mpegtsparse to a) handle decryption and b) allow acquiring multiple channels on same transponder without knowing pid numbers. 2007-10-16 16:51:23 +0000 Alessandro Decina gst/mpegtsparse/: Add request pad for getting the full transport stream coming in. Original commit message from CVS: patch by: Alessandro Decina * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: * gst/mpegtsparse/mpegtsparse.h: Add request pad for getting the full transport stream coming in. 2007-10-14 17:22:18 +0000 Sebastian Dröge configure.ac: Update the highest allowed neon version from 0.26.99 to 0.27.99. Original commit message from CVS: * configure.ac: Update the highest allowed neon version from 0.26.99 to 0.27.99. No code changes are required to work with the newest neon version. 2007-10-10 11:44:01 +0000 Tim-Philipp Müller configure.ac: Require core CVS. This is implicit in the -base CVS requirement already, so we might just well spell i... Original commit message from CVS: * configure.ac: Require core CVS. This is implicit in the -base CVS requirement already, so we might just well spell it out. Also, we do need at least 0.10.14 for gst_element_class_set_details_simple(). Make check for gmyth a bit more restrictive so things don't break if the next version changes API. * ext/alsaspdif/alsaspdifsink.c: Work around alsa alloca macros triggering 'always evaluates to true' warnings with gcc-4.2 and fix compilation with gcc-4.2. Also don't leak the device string. * ext/mpeg2enc/gstmpeg2enc.cc: * ext/soundtouch/gstpitch.cc: * gst/modplug/gstmodplug.cc: Fix compilation with g++4.2 and -Wall -Werror (also needs plugin define fix from core CVS). Fixes #462737. 2007-10-09 10:01:39 +0000 Laurent Glayal gst/rtpmanager/gstrtpbin.c: Fix memleak. Fixes #484990. Original commit message from CVS: Patch by: Laurent Glayal * gst/rtpmanager/gstrtpbin.c: (create_stream), (gst_rtp_bin_class_init): Fix memleak. Fixes #484990. 2007-10-08 17:46:45 +0000 Jan Schmidt gst/: Fix compiler warnings shown by Forte. Original commit message from CVS: * gst/librfb/rfbbuffer.c: (rfb_buffer_new_and_alloc): * gst/librfb/rfbbuffer.h: * gst/librfb/rfbdecoder.c: (rfb_socket_get_buffer): * gst/mpegvideoparse/mpegvideoparse.c: (gst_mpegvideoparse_chain): * gst/nsf/nes6502.c: (nes6502_execute): * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps): * gst/real/gstrealvideodec.c: (open_library): * gst/real/gstrealvideodec.h: * gst/rtpmanager/gstrtpsession.c: (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink): Fix compiler warnings shown by Forte. 2007-10-08 10:39:35 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Fix caps refcounting for payload maps. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (get_pt_map), (gst_rtp_bin_clear_pt_map), (gst_rtp_bin_class_init): Fix caps refcounting for payload maps. When clearing payload maps, also clear sessions and streams payload maps. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps), (gst_rtp_pt_demux_clear_pt_map), (gst_rtp_pt_demux_chain), (find_pad_for_pt): Implement clearing the payload map. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_event_send_rtp_sink): Forward flush events instead of leaking them. * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_rtcp_sink_event): Correctly refcount events before pushing them. 2007-10-08 06:07:22 +0000 Sebastian Dröge ext/gio/gstgio.c: Use GIO function to get a list of supported URI schemes instead of hard coding something. Original commit message from CVS: * ext/gio/gstgio.c: (gst_gio_get_supported_protocols): Use GIO function to get a list of supported URI schemes instead of hard coding something. 2007-10-05 17:26:14 +0000 Wim Taymans gst/rtpmanager/rtpsession.c: When reconsidering RTCP timeouts, set the next timeout against the last report time inst... Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (rtp_session_next_timeout), When reconsidering RTCP timeouts, set the next timeout against the last report time instead of the current clock time so that we don't end up reconsidering forever. 2007-10-05 12:07:37 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Only peek at the tail element instead of popping it off, which allows us to grea... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Only peek at the tail element instead of popping it off, which allows us to greatly simplify things when the tail element changes. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_event_recv_rtp_sink): * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_sink_event): Forward FLUSH events instead of leaking them. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew), (rtp_jitter_buffer_insert): * gst/rtpmanager/rtpjitterbuffer.h: Remove the tail-changed callback in favour of a simple boolean when we insert a buffer in the queue. Add method to peek the tail of the buffer. 2007-10-05 08:51:44 +0000 Gautier Portet gst/xingheader/gstxingmux.c: The size of the Xing header is actually 417 as it's rounded to the next smaller integer.... Original commit message from CVS: Patch by: Gautier Portet * gst/xingheader/gstxingmux.c: The size of the Xing header is actually 417 as it's rounded to the next smaller integer. Fixes #397759. * gst/xingheader/gstxingmux.c: (xing_generate_header), (xing_push_header): Some random cleanup, add FIXMEs and TODOs and check if the newsegment event to the beginning was successful before pushing the header again. 2007-10-05 08:05:14 +0000 Wai-Ming Ho gst/mpegtsparse/mpegtspacketizer.c: Don't skip PAT with version number 0. Fixes #483400. Original commit message from CVS: Patch by: Wai-Ming Ho * gst/mpegtsparse/mpegtspacketizer.c: (mpegts_packetizer_stream_new): Don't skip PAT with version number 0. Fixes #483400. * gst/mpegtsparse/mpegtsparse.c: (mpegts_parse_apply_pat): Make all values above 0 mark a referenced program as they can be incremented and only 1 had marked a referenced program before, causing actually referenced programs to be unreferenced. 2007-10-02 10:29:46 +0000 Wim Taymans gst/sdp/gstsdpdemux.h: Change signature of pt to fix compilation on some platforms. Original commit message from CVS: * gst/sdp/gstsdpdemux.h: Change signature of pt to fix compilation on some platforms. 2007-10-02 10:27:45 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Remove some old unused variables. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_flush_start), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_change_state), (apply_offset), (gst_rtp_jitter_buffer_loop): Remove some old unused variables. Don't add the latency to the skew corrected timestamp, latency is only used to sync against the clock. Improve debugging. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), (rtp_jitter_buffer_reset_skew), (calculate_skew): * gst/rtpmanager/rtpjitterbuffer.h: Handle case where server timestamp goes backwards or wildly jumps by temporarily pausing the skew correction. Improve debugging. 2007-10-02 10:12:40 +0000 Wim Taymans gst/sdp/Makefile.am: Forgot to commit makefile. Original commit message from CVS: * gst/sdp/Makefile.am: Forgot to commit makefile. 2007-10-02 07:43:57 +0000 Sebastian Dröge ext/gio/gstgiosink.c: Update to API changes in GIO. Original commit message from CVS: * ext/gio/gstgiosink.c: (gst_gio_sink_start): Update to API changes in GIO. 2007-10-01 14:01:40 +0000 Wim Taymans gst/sdp/gstsdpdemux.c: Use new function in -base to get the default clock-rate. Original commit message from CVS: * gst/sdp/gstsdpdemux.c: (gst_sdp_demux_media_to_caps): Use new function in -base to get the default clock-rate. 2007-10-01 11:43:09 +0000 Wim Taymans Added SDP demuxer element. Fixes #426657. Original commit message from CVS: * configure.ac: * gst/sdp/gstsdpdemux.c: (_do_init), (gst_sdp_demux_base_init), (gst_sdp_demux_class_init), (gst_sdp_demux_init), (gst_sdp_demux_finalize), (gst_sdp_demux_set_property), (gst_sdp_demux_get_property), (find_stream_by_id), (find_stream_by_pt), (find_stream_by_udpsrc), (find_stream), (gst_sdp_demux_stream_free), (gst_sdp_demux_create_stream), (gst_sdp_demux_cleanup), (get_default_rate_for_pt), (gst_sdp_demux_parse_rtpmap), (gst_sdp_demux_media_to_caps), (new_session_pad), (request_pt_map), (gst_sdp_demux_do_stream_eos), (on_bye_ssrc), (on_timeout), (gst_sdp_demux_configure_manager), (gst_sdp_demux_stream_configure_udp), (gst_sdp_demux_stream_configure_udp_sink), (gst_sdp_demux_combine_flows), (gst_sdp_demux_stream_push_event), (gst_sdp_demux_handle_message), (gst_sdp_demux_start), (gst_sdp_demux_sink_event), (gst_sdp_demux_sink_chain), (gst_sdp_demux_change_state): * gst/sdp/gstsdpdemux.h: * gst/sdp/gstsdpelem.c: (plugin_init): Added SDP demuxer element. Fixes #426657. 2007-10-01 09:21:19 +0000 mutex at runbox dot com gst/mpegtsparse/: Remove useless src pad that only results in not linked errors, fix a broken pointer dereference and... Original commit message from CVS: Patch by: mutex at runbox dot com * gst/mpegtsparse/mpegtspacketizer.c: (mpegts_packetizer_parse_adaptation_field_control): * gst/mpegtsparse/mpegtsparse.c: (mpegts_parse_base_init), (mpegts_parse_init), (mpegts_parse_push): * gst/mpegtsparse/mpegtsparse.h: Remove useless src pad that only results in not linked errors, fix a broken pointer dereference and make MAX_CONTINUITY constant conform to the standard to stop outputting corrupted data. Fixes #481276, #481279. 2007-09-29 19:36:34 +0000 Tim-Philipp Müller ext/mythtv/gstmythtvsrc.c: Re-apply docs patch from #468039; fix tab. Original commit message from CVS: * ext/mythtv/gstmythtvsrc.c: Re-apply docs patch from #468039; fix tab. * gst/mpegtsparse/.cvsignore: Ignore marshaller files generated at build time. 2007-09-29 07:01:55 +0000 Sebastian Dröge ext/gio/: Some minor cleanup and allow setting the location only when the element is not playing or paused. Original commit message from CVS: * ext/gio/gstgiosink.c: (gst_gio_sink_base_init), (gst_gio_sink_set_property), (gst_gio_sink_render): * ext/gio/gstgiosrc.c: (gst_gio_src_base_init), (gst_gio_src_set_property): Some minor cleanup and allow setting the location only when the element is not playing or paused. 2007-09-29 05:26:54 +0000 Sebastian Dröge configure.ac: Update gio's pkg-config file name as currently in SVN. Original commit message from CVS: * configure.ac: Update gio's pkg-config file name as currently in SVN. * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_set_location): Remove special casing for a NULL query string. g_strjoin won't add the separator if there's only one string. 2007-09-28 14:51:58 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Fix crasher in dispose. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (free_client): Fix crasher in dispose. * gst/rtpmanager/rtpjitterbuffer.c: (calculate_skew): Handle cases where input buffers have no timestamps so that no clock skew can be calculated, in this case interpollate timestamps based on rtp timestamp and assume a 0 clock skew. 2007-09-28 11:17:35 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Remove jitter correction code, it's now in the lower level object. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (apply_latency), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query): Remove jitter correction code, it's now in the lower level object. Use new -core method for doing a peer query. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), (calculate_skew), (rtp_jitter_buffer_insert): * gst/rtpmanager/rtpjitterbuffer.h: Move jitter correction to the lowlevel jitterbuffer. Increase the max window size. When filling the window, already start estimating the skew using a parabolic weighting factor so that we have a much better startup behaviour that gets more accurate with the more samples we have. Increase the default weighting factor for the steady state to get smoother timestamps. 2007-09-28 11:07:34 +0000 Sebastian Dröge ext/neon/gstneonhttpsrc.c: Now that we require libneon >= 0.26 remove the neon 0.25 backward compatibility stuff. Als... Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_set_proxy), (gst_neonhttp_src_send_request_and_redirect): Now that we require libneon >= 0.26 remove the neon 0.25 backward compatibility stuff. Also fix the default location. 2007-09-28 10:51:13 +0000 Wim Taymans configure.ac: We require libneon >= 26 now for the query field in ne_uri. Original commit message from CVS: * configure.ac: We require libneon >= 26 now for the query field in ne_uri. 2007-09-28 09:29:09 +0000 Wouter Cloetens ext/neon/gstneonhttpsrc.*: Don't discard GET parameters from URL if existing. Original commit message from CVS: Patch by: Wouter Cloetens * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_dispose), (gst_neonhttp_src_set_location), (gst_neonhttp_src_send_request_and_redirect): * ext/neon/gstneonhttpsrc.h: Don't discard GET parameters from URL if existing. Fixes #481200. 2007-09-27 14:52:58 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.*: Added a property for incremental screen updates Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: Added a property for incremental screen updates 2007-09-27 13:02:58 +0000 Tim-Philipp Müller ext/xvid/gstxvidenc.*: Remove superfluous 'frame-encoded' signal (people can use an upstream identity's 'handoff' sig... Original commit message from CVS: * ext/xvid/gstxvidenc.c: * ext/xvid/gstxvidenc.h: Remove superfluous 'frame-encoded' signal (people can use an upstream identity's 'handoff' signal or a pad probe for this if they must know). 2007-09-27 10:06:23 +0000 Julien Moutte gst/flv/gstflvparse.c: I got it wrong again, audio rate was not detected correctly in all cases. Original commit message from CVS: 2007-09-27 Julien MOUTTE * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): I got it wrong again, audio rate was not detected correctly in all cases. 2007-09-26 20:08:28 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Fix cleanup crasher. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_dispose), (gst_rtp_bin_finalize): Fix cleanup crasher. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), (calculate_skew): * gst/rtpmanager/rtpjitterbuffer.h: Dynamically adjust the skew calculation window so that we calculate it over a period of around 2 seconds. 2007-09-26 16:44:42 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.c: fix bug from generic/states.gdb Original commit message from CVS: * gst/librfb/gstrfbsrc.c: fix bug from generic/states.gdb 2007-09-26 16:30:50 +0000 Julien Moutte gst/flv/gstflvparse.c: codec_data is needed for every tag not just the first one. (Fix a stupid bug i introduced with... Original commit message from CVS: 2007-09-26 Julien MOUTTE * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): codec_data is needed for every tag not just the first one. (Fix a stupid bug i introduced without testing) 2007-09-26 11:17:08 +0000 Julien Moutte gst/flv/gstflvparse.c: Fix bit masks operations to be sure we detect the codec_tags and sample rates correctly. Original commit message from CVS: 2007-09-26 Julien MOUTTE * gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Fix bit masks operations to be sure we detect the codec_tags and sample rates correctly. Fix raw audio caps generation. 2007-09-24 10:53:37 +0000 Stefan Kost Massive leak fixing, plus code cleanups. Original commit message from CVS: * ext/audioresample/gstaudioresample.c: * ext/x264/gstx264enc.c: * gst/dvdspu/gstdvdspu.c: * gst/dvdspu/gstdvdspu.h: * gst/festival/gstfestival.c: * gst/h264parse/gsth264parse.c: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtsparse.c: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesrc.c: * gst/nuvdemux/gstnuvdemux.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.c: * sys/dshowsrcwrapper/gstdshowvideosrc.c: * sys/vcd/vcdsrc.c: Massive leak fixing, plus code cleanups. 2007-09-22 18:31:17 +0000 Thomas Vander Stichele po/LINGUAS: Added translations. Original commit message from CVS: * po/LINGUAS: Added translations. 2007-09-22 18:29:49 +0000 Thomas Vander Stichele po/pl.po: Added Polish translation. Original commit message from CVS: translated by: Jakub Bogusz * po/pl.po: Added Polish translation. 2007-09-22 18:29:13 +0000 Thomas Vander Stichele po/fi.po: Added Finnish translation. Original commit message from CVS: translated by: Ilkka Tuohela * po/fi.po: Added Finnish translation. 2007-09-22 18:28:30 +0000 Thomas Vander Stichele po/es.po: Added Spanish translation. Original commit message from CVS: translated by: Jorge González González * po/es.po: Added Spanish translation. 2007-09-22 18:27:45 +0000 Thomas Vander Stichele po/bg.po: Added Bulgarian translation. Original commit message from CVS: translated by: Alexander Shopov * po/bg.po: Added Bulgarian translation. 2007-09-21 18:00:24 +0000 Sebastian Dröge docs/plugins/gst-plugins-bad-plugins.hierarchy: Update hierarchy. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.hierarchy: Update hierarchy. * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.h: Mark private fields of the instance structs private. 2007-09-21 17:31:05 +0000 Sebastian Dröge docs/plugins/: Add the GIO plugin to the docs and do a make update while doing that. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gio.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Add the GIO plugin to the docs and do a make update while doing that. * ext/gio/gstgiosrc.c: (gst_gio_src_start): Fix a small memleak. 2007-09-21 17:07:56 +0000 René Stadler Add a GIO/GVFS plugin with source and sink elements. This will only be enabled when --enable-experimental is given to... Original commit message from CVS: Patch by: René Stadler * configure.ac: * ext/Makefile.am: * ext/gio/Makefile.am: * ext/gio/gstgio.c: (gst_gio_error), (gst_gio_seek), (gst_gio_get_supported_protocols), (gst_gio_uri_handler_get_type_sink), (gst_gio_uri_handler_get_type_src), (gst_gio_uri_handler_get_protocols), (gst_gio_uri_handler_get_uri), (gst_gio_uri_handler_set_uri), (gst_gio_uri_handler_init), (gst_gio_uri_handler_do_init), (plugin_init): * ext/gio/gstgio.h: * ext/gio/gstgiosink.c: (gst_gio_sink_base_init), (gst_gio_sink_class_init), (gst_gio_sink_init), (gst_gio_sink_finalize), (gst_gio_sink_set_property), (gst_gio_sink_get_property), (gst_gio_sink_start), (gst_gio_sink_stop), (gst_gio_sink_unlock), (gst_gio_sink_unlock_stop), (gst_gio_sink_event), (gst_gio_sink_render), (gst_gio_sink_query): * ext/gio/gstgiosink.h: * ext/gio/gstgiosrc.c: (gst_gio_src_base_init), (gst_gio_src_class_init), (gst_gio_src_init), (gst_gio_src_finalize), (gst_gio_src_set_property), (gst_gio_src_get_property), (gst_gio_src_start), (gst_gio_src_stop), (gst_gio_src_get_size), (gst_gio_src_is_seekable), (gst_gio_src_unlock), (gst_gio_src_unlock_stop), (gst_gio_src_check_get_range), (gst_gio_src_create): * ext/gio/gstgiosrc.h: Add a GIO/GVFS plugin with source and sink elements. This will only be enabled when --enable-experimental is given to configure for now as the GIO API is not stable yet. Fixes #476916. 2007-09-21 15:49:24 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file with various new plug-ins Original commit message from CVS: update spec file with various new plug-ins 2007-09-21 14:55:19 +0000 Thijs Vermeir gst/librfb/: Added offset-x, offset-y, width and height property for selecting a region from the screen Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Added offset-x, offset-y, width and height property for selecting a region from the screen 2007-09-21 10:27:02 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.c: Minimum raw encoding is working now Original commit message from CVS: * gst/librfb/gstrfbsrc.c: Minimum raw encoding is working now * gst/librfb/rfbdecoder.c: fix address while reading from stream 2007-09-20 20:40:05 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.c: raw encoding is working, but it looks like the ffmpegcolorspace plugin can't handle high reso... Original commit message from CVS: * gst/librfb/gstrfbsrc.c: raw encoding is working, but it looks like the ffmpegcolorspace plugin can't handle high resolutions 2007-09-20 18:30:35 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.c: bpp, depth and endianness are now set from the stream. Original commit message from CVS: * gst/librfb/gstrfbsrc.c: bpp, depth and endianness are now set from the stream. 2007-09-20 17:38:10 +0000 Wim Taymans examples/app/appsrc_ex.c: Fix compilation after changing the name of a method. Original commit message from CVS: * examples/app/appsrc_ex.c: (main): Fix compilation after changing the name of a method. 2007-09-20 15:06:23 +0000 Stefan Kost Fix memory leaks. More to come. Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst/mpegvideoparse/mpegvideoparse.c: Fix memory leaks. More to come. * tests/check/Makefile.am: * tests/check/generic/states.c: Improved state change unit test. 2007-09-20 14:34:57 +0000 Wim Taymans gst/rtpmanager/: Add notification of active SSRCs to various RTP elements. Fixes #478566. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (on_ssrc_active), (create_session), (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpsession.c: (on_ssrc_active), (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_event_send_rtp_sink): * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (on_ssrc_active), (rtp_session_process_rb): * gst/rtpmanager/rtpsession.h: Add notification of active SSRCs to various RTP elements. Fixes #478566. 2007-09-20 13:59:50 +0000 Wim Taymans gst-libs/gst/app/gstappsink.*: Add properties, signals and actions to access the element even without linking to the ... Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_marshal_OBJECT__VOID), (gst_app_sink_class_init), (gst_app_sink_init), (gst_app_sink_dispose), (gst_app_sink_finalize), (gst_app_sink_set_property), (gst_app_sink_get_property), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_event), (gst_app_sink_getcaps), (gst_app_sink_set_caps), (gst_app_sink_get_caps), (gst_app_sink_is_eos), (gst_app_sink_pull_preroll), (gst_app_sink_pull_buffer): * gst-libs/gst/app/gstappsink.h: Add properties, signals and actions to access the element even without linking to the library. Fix some method names and signatures. 2007-09-19 21:18:27 +0000 Jonathan Matthew ext/faad/gstfaad.c: Don't set channel positions on regular mono and stereo cases. Original commit message from CVS: Patch by: Jonathan Matthew * ext/faad/gstfaad.c: (gst_faad_chanpos_to_gst), (gst_faad_srcgetcaps), (gst_faad_update_caps): Don't set channel positions on regular mono and stereo cases. Fixes #476370. 2007-09-19 20:55:43 +0000 Thijs Vermeir gst/librfb/: It is now possible to connect to a vncserver. there are still some issues with the ouput of the screen. ... Original commit message from CVS: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: It is now possible to connect to a vncserver. there are still some issues with the ouput of the screen. Looks like some lines are confused 2007-09-19 18:22:23 +0000 Stefan Kost Ignore registries in any format. Original commit message from CVS: * docs/plugins/.cvsignore: * tests/check/.cvsignore: Ignore registries in any format. 2007-09-19 13:50:44 +0000 Wim Taymans gst/real/gstrealvideodec.*: Don't generate an error for occasional decoding errors. Original commit message from CVS: * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain), (open_library), (gst_real_video_dec_init), (gst_real_video_dec_set_property), (gst_real_video_dec_get_property), (gst_real_video_dec_class_init): * gst/real/gstrealvideodec.h: Don't generate an error for occasional decoding errors. Add max-errors property. Error out when we receive max-errors in a row. Fixes #478159. 2007-09-19 13:06:17 +0000 Thijs Vermeir gst/librfb/gstrfbsrc.c: Add password property (write only) Original commit message from CVS: * gst/librfb/gstrfbsrc.c: Add password property (write only) * gst/librfb/rfbdecoder.c: Read the reason on failure Use the password property for authentication * gst/librfb/rfbdecoder.h: Add defines for version checking 2007-09-19 12:50:27 +0000 Sebastian Dröge ext/directfb/dfbvideosink.c: When finalizing GstDfbSurface, a subclass of GstBuffer, correctly chain up to the parent... Original commit message from CVS: * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_destroy), (gst_dfbsurface_class_init): When finalizing GstDfbSurface, a subclass of GstBuffer, correctly chain up to the parent class to free everything, including caps. 2007-09-19 12:50:05 +0000 Sebastian Dröge ext/directfb/dfbvideosink.c: When finalizing GstDfbSurface, a subclass of GstBuffer, correctly chain up to the parent... Original commit message from CVS: * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_destroy), (gst_dfbsurface_class_init): When finalizing GstDfbSurface, a subclass of GstBuffer, correctly chain up to the parent class to free everything, including caps. 2007-09-19 08:35:13 +0000 Thijs Vermeir gst/librfb/: VNC Authentication should be working now temperaly with fake password 'testtest' Original commit message from CVS: * gst/librfb/Makefile.am: * gst/librfb/d3des.c: * gst/librfb/d3des.h: * gst/librfb/rfbdecoder.c: * gst/librfb/vncauth.c: * gst/librfb/vncauth.h: VNC Authentication should be working now temperaly with fake password 'testtest' 2007-09-18 16:32:19 +0000 Thijs Vermeir gst/librfb/rfbdecoder.*: Added some documentation about security handling start implementing security handling for rf... Original commit message from CVS: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Added some documentation about security handling start implementing security handling for rfb 3.3 2007-09-18 13:55:06 +0000 Stefan Kost gst/spectrum/: Handling window resize. Original commit message from CVS: * gst/spectrum/demo-audiotest.c: * gst/spectrum/demo-osssrc.c: Handling window resize. 2007-09-18 11:45:06 +0000 Stefan Kost ChangeLog: Add missing newline. Original commit message from CVS: * ChangeLog: Add missing newline. * gst/librfb/rfbdecoder.c: Fix the build (missing stdlib.h). * gst/spectrum/gstspectrum.c: * gst/spectrum/gstspectrum.h: Use basetransform segment so that it is correctly managed on flushes and start/stop. Report message timestamp as stream time, which is what an application can understand. (Yes these are adapted from wim recent level element changes) 2007-09-17 21:12:17 +0000 Thijs Vermeir * gst/librfb/gstrfbsrc.c: * gst/librfb/gstrfbsrc.h: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Added a new property for the rfb version Original commit message from CVS: Added a new property for the rfb version 2007-09-17 02:01:41 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Link to the right pads regardless of which one was created first in the ssrc demuxer. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (new_ssrc_pad_found): Link to the right pads regardless of which one was created first in the ssrc demuxer. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_send_rtp): * gst/rtpmanager/rtpsource.c: (calculate_jitter): Improve debugging. * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_finalize), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain), (gst_rtp_ssrc_demux_internal_links): * gst/rtpmanager/gstrtpssrcdemux.h: Fix race in creating the RTP and RTCP pads when a new SSRC is detected. 2007-09-16 19:40:31 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Use lock to protect variable. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_set_property), (gst_rtp_bin_get_property): Use lock to protect variable. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_chain), (convert_rtptime_to_gsttime), (gst_rtp_jitter_buffer_loop): Reconstruct GST timestamp from RTP timestamps based on measured clock skew and sync offset. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_init), (rtp_jitter_buffer_set_tail_changed), (rtp_jitter_buffer_set_clock_rate), (rtp_jitter_buffer_get_clock_rate), (calculate_skew), (rtp_jitter_buffer_insert), (rtp_jitter_buffer_peek): * gst/rtpmanager/rtpjitterbuffer.h: Measure clock skew. Add callback to be notfied when a new packet was inserted at the tail. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (calculate_jitter), (rtp_source_send_rtp): * gst/rtpmanager/rtpsource.h: Remove clock skew detection, it's move to the jitterbuffer now. 2007-09-16 07:28:18 +0000 Daniel Charles ext/amrwb/gstamrwbenc.*: Add property to control bandmode. Fixes #477306. Original commit message from CVS: Patch by: Daniel Charles * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_bandmode_get_type), (gst_amrwbenc_set_property), (gst_amrwbenc_get_property), (gst_amrwbenc_class_init), (gst_amrwbenc_chain): * ext/amrwb/gstamrwbenc.h: Add property to control bandmode. Fixes #477306. 2007-09-15 18:48:03 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Also set NTP base time on new sessions. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session): Also set NTP base time on new sessions. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): Use the right lock to protect our variables. Fix some comment. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_getcaps_send_rtp), (gst_rtp_session_chain_send_rtp), (create_send_rtp_sink): Implement getcaps on the sender sinkpad so that payloaders can negotiate the right SSRC. 2007-09-12 21:23:47 +0000 Wim Taymans gst/rtpmanager/: Various leak fixes. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (free_session), (get_client), (free_client), (gst_rtp_bin_associate), (free_stream), (gst_rtp_bin_class_init), (gst_rtp_bin_dispose), (gst_rtp_bin_finalize): * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_finalize): * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_release): * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_finalize), (gst_rtp_session_set_property), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_send_rtp): * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_dispose): * gst/rtpmanager/rtpsession.c: (rtp_session_finalize): * gst/rtpmanager/rtpsession.h: Various leak fixes. 2007-09-12 18:04:32 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Calculate and configure the NTP base time so that we can generate better Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (calc_ntp_ns_base), (gst_rtp_bin_change_state), (new_payload_found), (create_send_rtp): Calculate and configure the NTP base time so that we can generate better NTP times in SR packets. Set caps on new ghostpad. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): Clean debug statement. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_set_property), (gst_rtp_session_get_property), (get_current_ntp_ns_time), (rtcp_thread), (gst_rtp_session_event_recv_rtp_sink), (gst_rtp_session_internal_links), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_send_rtp_sink): * gst/rtpmanager/gstrtpsession.h: Add ntp-ns-base property to convert running_time to NTP time. Handle NEWSEGMENT events on send and recv RTP pads so that we can calculate the running time and thus NTP time of the packets. Simplify getting the current NTP time using the pipeline clock. Implement internal links functions. Use the buffer timestamp to calculate the NTP time instead of the clock. * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain), (gst_rtp_ssrc_demux_internal_links), (gst_rtp_ssrc_demux_src_query): * gst/rtpmanager/gstrtpssrcdemux.h: Implement internal links function. Calculate the diff between different streams, this might be used later to get the inter stream latency. * gst/rtpmanager/rtpsession.c: (rtp_session_send_rtp): Simple cleanup. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (calculate_jitter), (rtp_source_send_rtp), (rtp_source_get_new_sr): Make the clock skew window a little bigger. Apply the clock skew to all buffers, not just one with a new timestamp. Calculate and debug sender clock drift. Use extended last timestamp to interpollate for SR reports. 2007-09-12 08:38:22 +0000 Peter Kjellerstedt gst/: Printf format fixes (#476128). Original commit message from CVS: Patch by: Peter Kjellerstedt * gst-libs/gst/app/gstappsink.c: * gst/flv/gstflvdemux.c: * gst/flv/gstflvparse.c: * gst/interleave/deinterleave.c: * gst/switch/gstswitch.c: Printf format fixes (#476128). 2007-09-09 19:05:19 +0000 Thomas Green ext/neon/gstneonhttpsrc.c: With libneon 2.6, we need to set the NE_SESSFLAG_ICYPROTO flag if we want ICY streams to b... Original commit message from CVS: Patch by: Thomas Green * ext/neon/gstneonhttpsrc.c: With libneon 2.6, we need to set the NE_SESSFLAG_ICYPROTO flag if we want ICY streams to be handled too, otherwise libneon will error out with a 'can't parse reponse' error. Fixes #474696. * tests/check/elements/neonhttpsrc.c: Unit test for the above by Yours Truly. 2007-09-09 18:22:53 +0000 Tim-Philipp Müller configure.ac: Use AC_TRY_COMPILE instead of AC_TRY_RUN for the faad and the xvid configure checks, so they still work... Original commit message from CVS: * configure.ac: Use AC_TRY_COMPILE instead of AC_TRY_RUN for the faad and the xvid configure checks, so they still work when cross-compiling. Fixes #452009. 2007-09-07 15:54:38 +0000 Sebastian Dröge gst/spectrum/gstspectrum.c: Use the correct parameter order for the memset calls. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_start), (gst_spectrum_transform_ip): Use the correct parameter order for the memset calls. Thanks to Christian Schaller for noticing. 2007-09-06 20:37:56 +0000 Stefan Kost gst/mpegtsparse/mpegtsparse.c: Fix the build (missing stdlib.h). Original commit message from CVS: * gst/mpegtsparse/mpegtsparse.c: Fix the build (missing stdlib.h). 2007-09-06 07:26:45 +0000 Sebastian Dröge gst/spectrum/fix_fft.c: Remove fixed point FFT as it's not used anymore. Original commit message from CVS: * gst/spectrum/fix_fft.c: Remove fixed point FFT as it's not used anymore. 2007-09-06 07:21:22 +0000 Sebastian Dröge Port GstSpectrum to GstAudioFilter and libgstfft, add support for int32, float and double, use floats for the message... Original commit message from CVS: * configure.ac: * gst/spectrum/Makefile.am: * gst/spectrum/demo-audiotest.c: (draw_spectrum), (message_handler), (main): * gst/spectrum/demo-osssrc.c: (draw_spectrum), (message_handler): * gst/spectrum/gstspectrum.c: (gst_spectrum_base_init), (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_dispose), (gst_spectrum_set_property), (gst_spectrum_get_property), (gst_spectrum_start), (gst_spectrum_setup), (gst_spectrum_message_new), (gst_spectrum_transform_ip): * gst/spectrum/gstspectrum.h: Port GstSpectrum to GstAudioFilter and libgstfft, add support for int32, float and double, use floats for the message contents, average all FFTs done in one interval for better results, use a better windowing function, allow posting the phase in the message and actually do an FFT with the requested number of bands instead of interpolating. * tests/check/elements/spectrum.c: (GST_START_TEST), (spectrum_suite): Improve the units tests by checking for a 11025Hz sine wave and add unit tests for all 4 supported sample types. 2007-09-05 21:09:08 +0000 Wim Taymans gst/real/gstrealvideodec.c: Add some more debugging. Original commit message from CVS: * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain), (gst_real_video_dec_setcaps): Add some more debugging. Don't set LONG for width/height in caps. Set correct output buffer size when caps changed. The custom message sent to the decoder should not include the format and subformat. Fixes #471554. 2007-09-04 15:23:34 +0000 Tim-Philipp Müller gst/rtpmanager/gstrtpsession.c: Make compiler happy: fix compilation with -Wall -Werror (#473562). Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: Make compiler happy: fix compilation with -Wall -Werror (#473562). 2007-09-04 02:22:20 +0000 Johan Dahlin * gst/nsf/gstnsf.c: Nosefart -> NES Sound Format Original commit message from CVS: Nosefart -> NES Sound Format 2007-09-04 02:16:53 +0000 Johan Dahlin gst/nsf/gstnsf.*: Add support for (very) basic tagging. Original commit message from CVS: 2007-09-03 Johan Dahlin * gst/nsf/gstnsf.c: (gst_nsfdec_finalize), (start_play_tune): * gst/nsf/gstnsf.h: Add support for (very) basic tagging. 2007-09-03 21:19:34 +0000 Wim Taymans gst/rtpmanager/: Updated example pipelines in docs. Original commit message from CVS: * gst/rtpmanager/gstrtpbin-marshal.list: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_get_client), (gst_rtp_bin_associate), (gst_rtp_bin_sync_chain), (create_stream), (gst_rtp_bin_init), (caps_changed), (new_ssrc_pad_found), (create_recv_rtp), (create_recv_rtcp), (create_send_rtp): * gst/rtpmanager/gstrtpbin.h: Updated example pipelines in docs. Handle sync_rtcp buffers from the SSRC demuxer to perform lip-sync. Set the default latency correctly. Add some more points where we can get caps. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): Add ts-offset property to control timestamping. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_set_property), (gst_rtp_session_get_property), (get_current_ntp_ns_time), (rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_send_rtcp), (gst_rtp_session_sync_rtcp), (gst_rtp_session_cache_caps), (gst_rtp_session_clock_rate), (gst_rtp_session_sink_setcaps), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink), (create_send_rtcp_src): Various cleanups. Feed rtpsession manager with NTP time based on pipeline clock when handling RTP packets and RTCP timeouts. Perform all RTCP with the system clock. Set caps on RTCP outgoing buffers. * gst/rtpmanager/gstrtpssrcdemux.c: (find_demux_pad_for_ssrc), (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_base_init), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_rtcp_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_rtcp_chain): * gst/rtpmanager/gstrtpssrcdemux.h: Also demux RTCP messages. * gst/rtpmanager/rtpsession.c: (rtp_session_set_callbacks), (update_arrival_stats), (rtp_session_process_rtp), (rtp_session_process_rb), (rtp_session_process_sr), (rtp_session_process_rr), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_send_bye), (session_start_rtcp), (session_report_blocks), (session_cleanup), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Remove the get_time callback, the GStreamer part will feed us with enough timing information. Split sync timing and RTCP timing information. Factor out common RB handling for SR and RR. Send out SR RTCP packets for lip-sync. Move SR and RR packet info generation to the source. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (rtp_source_update_caps), (get_clock_rate), (calculate_jitter), (rtp_source_process_rtp), (rtp_source_send_rtp), (rtp_source_process_sr), (rtp_source_process_rb), (rtp_source_get_new_sr), (rtp_source_get_new_rb), (rtp_source_get_last_sr): * gst/rtpmanager/rtpsource.h: * gst/rtpmanager/rtpstats.h: Use caps on incomming buffers to get timing information when they are there. Calculate clock scew of the receiver compared to the sender and adjust the rtp timestamps. Calculate the round trip in sources. Do SR and RR calculations in the source. 2007-09-03 20:07:17 +0000 Renato Filho * ChangeLog: * configure.ac: * ext/mythtv/gstmythtvsrc.c: * ext/mythtv/gstmythtvsrc.h: gmythsrc code rewrite; Original commit message from CVS: gmythsrc code rewrite; 2007-08-31 15:26:14 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Use extended timestamp to release buffers from the jitterbuffer so that we can h... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop): Use extended timestamp to release buffers from the jitterbuffer so that we can handle the rtp wraparound correctly. 2007-08-29 16:56:27 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Improve Comments. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_loop): Improve Comments. * gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_parse_caps), (gst_rtp_session_clock_rate), (gst_rtp_session_sink_setcaps), (gst_rtp_session_event_send_rtp_sink), (create_recv_rtp_sink), (create_send_rtp_sink): Also parse the sink caps for clock-rate instead of only relying on the result of the signal. * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): Make sure we fetch the clock rate for payloads we are sending out so that we can use it for SR reports. 2007-08-29 16:20:28 +0000 Zaheer Abbas Merali gst/switch/gstswitch.c (gst_switch_chain, gst_switch_set_property): If all information is known at time of setting st... Original commit message from CVS: * gst/switch/gstswitch.c (gst_switch_chain, gst_switch_set_property): If all information is known at time of setting start-time property, send new segments then. 2007-08-29 01:22:43 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.*: Distribute synchronisation parameters to the session manager so that it can generate ... Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_event_send_rtp_sink): * gst/rtpmanager/gstrtpsession.h: Distribute synchronisation parameters to the session manager so that it can generate correct SR packets for lip-sync. * gst/rtpmanager/rtpsession.c: (rtp_session_set_base_time), (rtp_session_set_timestamp_sync), (session_start_rtcp): * gst/rtpmanager/rtpsession.h: Add methods for setting sync parameters. Set correct RTP time in SR packets using the sync params. * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): * gst/rtpmanager/rtpsource.h: Record last RTP <-> GST timestamp so that we can use them to convert NTP to RTP timestamps in SR packets. 2007-08-28 20:30:16 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Add some more advanced example pipelines. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_clear_pt_map): Add some more advanced example pipelines. * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_send_rtcp): Add some debug and FIXME. Release LOCK when performing session cleanup. * gst/rtpmanager/rtpsession.c: (session_report_blocks): Add some debug. * gst/rtpmanager/rtpsource.c: (calculate_jitter), (rtp_source_send_rtp): Make sure we always send RTP packets with the session SSRC. 2007-08-28 08:10:05 +0000 Tim-Philipp Müller gst/dvdspu/gstdvdspu.c: Don't need this include (fixes compilation in uninstalled setup). Original commit message from CVS: * gst/dvdspu/gstdvdspu.c: Don't need this include (fixes compilation in uninstalled setup). 2007-08-27 21:17:21 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: When synchronizing buffers, take peer latency into account. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query): When synchronizing buffers, take peer latency into account. Don't try to add our latency to invalid peer max latency values. 2007-08-27 14:56:05 +0000 Julien Moutte gst/flv/gstflvdemux.c: Make sure we initialize the seek result. Original commit message from CVS: 2007-08-27 Julien MOUTTE * gst/flv/gstflvdemux.c: (gst_flv_demux_handle_seek_pull): Make sure we initialize the seek result. 2007-08-27 14:41:01 +0000 Jan Schmidt gst/dvdspu/Makefile.am: Commit the makefile too. Original commit message from CVS: * gst/dvdspu/Makefile.am: Commit the makefile too. 2007-08-27 14:33:59 +0000 Jan Schmidt dvdspu element donated by Fluendo. It implements a DVD Sub-Picture Original commit message from CVS: * configure.ac: * gst/dvdspu/.cvsignore: * gst/dvdspu/Notes.txt: * gst/dvdspu/gstdvdspu-render.c: (dvdspu_recalc_palette), (dvdspu_update_palettes), (dvdspu_clear_comp_buffers), (dvdspu_get_nibble), (dvdspu_get_rle_code), (dvdspu_draw_rle_run), (rle_end_x), (dvdspu_render_line), (dvdspu_update_chgcol), (dvdspu_render_line_with_chgcol), (dvdspu_blend_comp_buffers), (gstdvdspu_render_spu): * gst/dvdspu/gstdvdspu.c: (dvdspu_base_init), (dvdspu_class_init), (dvdspu_init), (dvdspu_clear), (dvdspu_dispose), (dvdspu_finalize), (dvdspu_flush_spu_info), (dvdspu_buffer_alloc), (dvdspu_src_event), (dvdspu_video_set_caps), (dvdspu_video_proxy_getcaps), (dvdspu_video_event), (dvdspu_video_chain), (dvspu_handle_vid_buffer), (dvdspu_redraw_still), (gstdvdspu_parse_chg_colcon), (dvdspu_exec_cmd_blk), (dvdspu_finish_spu_buf), (dvdspu_setup_cmd_blk), (dvdspu_handle_new_spu_buf), (dvdspu_handle_dvd_event), (dvdspu_dump_dcsq), (dvdspu_advance_spu), (dvdspu_check_still_updates), (dvdspu_subpic_chain), (dvdspu_subpic_event), (dvdspu_change_state), (gstdvdspu_plugin_init): * gst/dvdspu/gstdvdspu.h: dvdspu element donated by Fluendo. It implements a DVD Sub-Picture Unit, decoding and overlaying DVD subtitles and menu graphics. * gst/mpeg2sub/.cvsignore: * gst/mpeg2sub/Makefile.am: * gst/mpeg2sub/Notes.txt: * gst/mpeg2sub/gstmpeg2subt.c: * gst/mpeg2sub/gstmpeg2subt.h: * gst/mpeg2sub/mpeg2subt.vcproj: Delete old and broken mpeg2subt element that was never ported from 0.8 2007-08-24 17:03:15 +0000 Julien Moutte gst/flv/gstflvdemux.c: Remove some useless ifdef. Original commit message from CVS: 2007-08-24 Julien MOUTTE * gst/flv/gstflvdemux.c: (gst_flv_demux_flush), (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event), (gst_flv_demux_src_event): Remove some useless ifdef. 2007-08-24 15:56:52 +0000 Zaheer Abbas Merali Make switch more reliable and also not lock up when sink pad caps change. Original commit message from CVS: * examples/switch/switcher.c (main): * gst/switch/gstswitch.c (gst_switch_chain): Make switch more reliable and also not lock up when sink pad caps change. 2007-08-24 15:31:26 +0000 Julien Moutte gst/flv/gstflvdemux.c: Implement seeking in push mode. Original commit message from CVS: 2007-08-24 Julien MOUTTE * gst/flv/gstflvdemux.c: (gst_flv_demux_flush), (gst_flv_demux_cleanup), (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push), (gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event), (gst_flv_demux_src_event): Implement seeking in push mode. * gst/flv/gstflvdemux.h: 2007-08-24 11:23:28 +0000 Zaheer Abbas Merali gst/mpegtsparse/: Update licences to reflect LGPL-ness of these files also. Original commit message from CVS: * gst/mpegtsparse/flutspatinfo.c: * gst/mpegtsparse/flutspatinfo.h: * gst/mpegtsparse/flutspmtinfo.c: * gst/mpegtsparse/flutspmtinfo.h: Update licences to reflect LGPL-ness of these files also. 2007-08-23 21:39:58 +0000 Tim-Philipp Müller Rename all GstRTPFoo structs to GstRtpFoo so that GST_BOILERPLATE registers a GType that's different than the GstRTPF... Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpclient.h: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpptdemux.h: * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/rtpmanager/gstrtpssrcdemux.h: Rename all GstRTPFoo structs to GstRtpFoo so that GST_BOILERPLATE registers a GType that's different than the GstRTPFoo types that farsight registers (luckily GType names are case sensitive). Should finally fix #430664. 2007-08-23 17:21:23 +0000 Tim-Philipp Müller Automatically generate win32/common/config.h via configure (this ensures the win32 version of config.h is up-to-date ... Original commit message from CVS: * configure.ac: * win32/common/config.h: * win32/common/config.h.in: Automatically generate win32/common/config.h via configure (this ensures the win32 version of config.h is up-to-date when a release is made, #433373). config.h.in file might need some more work. 2007-08-23 13:24:33 +0000 Jonathan Matthew Port festival plugin to GStreamer-0.10 (#461377). Original commit message from CVS: Patch by: Jonathan Matthew * configure.ac: * gst/festival/Makefile.am: * gst/festival/gstfestival.c: Port festival plugin to GStreamer-0.10 (#461377). 2007-08-22 15:32:04 +0000 Wim Taymans ext/faad/gstfaad.c: Don't unref the buffer when it was clipped. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_chain): Don't unref the buffer when it was clipped. 2007-08-22 14:50:51 +0000 Julien Moutte gst/flv/: Handle pixel aspect ratio through metadata tags like ASF does. Fluendo muxer supports this and Original commit message from CVS: 2007-08-22 Julien MOUTTE * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_pull_tag): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Handle pixel aspect ratio through metadata tags like ASF does. Fluendo muxer supports this and Flash players can support it as well this way. 2007-08-22 14:03:42 +0000 Julien Moutte gst/flv/: Make sure we don't try filling up the index if no times object was parsed. Fix the way we decide to push ta... Original commit message from CVS: 2007-08-22 Julien MOUTTE * gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag): * gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Make sure we don't try filling up the index if no times object was parsed. Fix the way we decide to push tags and emit no-more-pads. Fix some printf typing in debugging. 2007-08-21 17:18:29 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: When drop-on-latency is set but we have no latency configured, just push the buf... Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_set_property): When drop-on-latency is set but we have no latency configured, just push the buffer as fast as possible. Fix typo in comment. 2007-08-21 16:04:47 +0000 Wim Taymans gst/rtpmanager/rtpjitterbuffer.*: Fix undefined overflow prone ts_diff handling. Original commit message from CVS: * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_get_ts_diff): * gst/rtpmanager/rtpjitterbuffer.h: Fix undefined overflow prone ts_diff handling. 2007-08-21 15:59:39 +0000 Wim Taymans gst/modplug/gstmodplug.cc: Fix compiler warning. Original commit message from CVS: * gst/modplug/gstmodplug.cc: Fix compiler warning. 2007-08-21 12:59:00 +0000 Stefan Kost gst/modplug/gstmodplug.cc: Don't use NULL caps for srcpad is not yet connected. Original commit message from CVS: * gst/modplug/gstmodplug.cc: Don't use NULL caps for srcpad is not yet connected. 2007-08-20 14:23:45 +0000 Zaheer Abbas Merali Add mpeg transport stream parser written by: Original commit message from CVS: * configure.ac: * gst/mpegtsparse/Makefile.am: * gst/mpegtsparse/flutspatinfo.c: * gst/mpegtsparse/flutspatinfo.h: * gst/mpegtsparse/flutspmtinfo.c: * gst/mpegtsparse/flutspmtinfo.h: * gst/mpegtsparse/flutspmtstreaminfo.c: * gst/mpegtsparse/flutspmtstreaminfo.h: * gst/mpegtsparse/mpegtspacketizer.c: * gst/mpegtsparse/mpegtspacketizer.h: * gst/mpegtsparse/mpegtsparse.c: * gst/mpegtsparse/mpegtsparse.h: * gst/mpegtsparse/mpegtsparsemarshal.list: Add mpeg transport stream parser written by: Alessandro Decina. Includes a couple of files from the Fluendo transport stream demuxer that Fluendo have kindly allowed to be licenced under LGPL also. 2007-08-20 09:13:47 +0000 Bastien Nocera ext/mythtv/gstmythtvsrc.c: Add examples for live mythtv:// URIs to docs (#468039). Original commit message from CVS: Patch by: Bastien Nocera * ext/mythtv/gstmythtvsrc.c: Add examples for live mythtv:// URIs to docs (#468039). Also convert some tabs into spaces. 2007-08-19 19:16:33 +0000 Sebastian Dröge gst/filter/: Add small comparision with the chebyshev filters in the docs. Original commit message from CVS: * gst/filter/gstbpwsinc.c: * gst/filter/gstlpwsinc.c: Add small comparision with the chebyshev filters in the docs. 2007-08-19 19:01:45 +0000 Sebastian Dröge tests/check/elements/: Also test everything in 32 bit float mode. Original commit message from CVS: * tests/check/elements/bpwsinc.c: (GST_START_TEST), (bpwsinc_suite): * tests/check/elements/lpwsinc.c: (GST_START_TEST), (lpwsinc_suite): Also test everything in 32 bit float mode. 2007-08-17 15:05:17 +0000 Sebastian Dröge Use generator macros for the process functions for the different sample types, add lower upper boundaries for the GOb... Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (bpwsinc_set_property), (bpwsinc_get_property): * gst/filter/gstbpwsinc.h: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (gst_lpwsinc_init), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: * tests/check/elements/lpwsinc.c: (GST_START_TEST): Use generator macros for the process functions for the different sample types, add lower upper boundaries for the GObject properties so automatically generated UIs can use sliders and change frequency properties to floats to save a bit of memory, even ints would in theory be enough. Also rename frequency to cutoff for consistency reasons. * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-gstrtpmanager.xml: Regenerated for the above changes. 2007-08-17 06:55:37 +0000 Stefan Kost ext/amrwb/gstamrwbparse.c: Don't leak the adapter. Original commit message from CVS: * ext/amrwb/gstamrwbparse.c: Don't leak the adapter. 2007-08-16 19:22:48 +0000 Sebastian Dröge gst/filter/gstbpwsinc.*: Implement latency query and only forward those samples downstream that actually contain the ... Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (gst_bpwsinc_init), (process_32), (process_64), (bpwsinc_build_kernel), (bpwsinc_push_residue), (bpwsinc_transform), (bpwsinc_start), (bpwsinc_query), (bpwsinc_query_type), (bpwsinc_event), (bpwsinc_set_property): * gst/filter/gstbpwsinc.h: Implement latency query and only forward those samples downstream that actually contain the data we want, i.e. drop kernel_length/2 in the beginning and append kernel_length/2 (created by convolving the filter kernel with zeroes) to the end. * tests/check/elements/bpwsinc.c: (GST_START_TEST): Adjust the unit test for this slightly changed behaviour. * gst/filter/gstlpwsinc.c: (lpwsinc_build_kernel): Reset residue length only when actually creating a residue. 2007-08-16 17:11:48 +0000 Wim Taymans gst-libs/gst/app/gstappsink.c: Override the preroll vmethod instead of overriding the render method twice. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_class_init): Override the preroll vmethod instead of overriding the render method twice. 2007-08-16 11:40:16 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Fix EOS handling. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Fix EOS handling. Convert some DEBUG into WARNINGs. Pause task when flushing. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (rtcp_thread), (gst_rtp_session_event_recv_rtcp_sink): Use system clock for RTCP session management timeouts. * gst/rtpmanager/rtpsession.c: (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout): Release the session lock when emiting signals. 2007-08-16 11:34:54 +0000 Wim Taymans ext/faad/gstfaad.c: Add some debug info. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_chanpos_to_gst): Add some debug info. 2007-08-16 09:48:27 +0000 Sebastian Dröge gst/filter/gstlpwsinc.*: Implement latency query and only forward those samples downstream that actually contain the ... Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (gst_lpwsinc_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_push_residue), (lpwsinc_transform), (lpwsinc_start), (lpwsinc_query), (lpwsinc_query_type), (lpwsinc_event), (lpwsinc_set_property): * gst/filter/gstlpwsinc.h: Implement latency query and only forward those samples downstream that actually contain the data we want, i.e. drop kernel_length/2 in the beginning and append kernel_length/2 (created by convolving the filter kernel with zeroes) to the end. * tests/check/elements/lpwsinc.c: (GST_START_TEST): Adjust the unit test for this slightly changed behaviour. 2007-08-16 07:07:41 +0000 Stefan Kost ext/ladspa/gstladspa.c: Don't leak like hell. Original commit message from CVS: * ext/ladspa/gstladspa.c: Don't leak like hell. 2007-08-16 06:49:39 +0000 Stefan Kost tests/check/: Add generic state-change test suite to help to fi leaks. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/generic/.cvsignore: * tests/check/generic/states.c: Add generic state-change test suite to help to fi leaks. 2007-08-15 13:28:39 +0000 Stefan Kost * ChangeLog: ChangeLog surgery Original commit message from CVS: ChangeLog surgery 2007-08-15 13:26:57 +0000 Stefan Kost ext/timidity/gstwildmidi.*: Original commit message from CVS: reviewed by: patch by: * ext/timidity/gstwildmidi.c: * ext/timidity/gstwildmidi.h: 2007-08-14 17:47:34 +0000 Wim Taymans gst-libs/gst/app/gstappsink.c: Don't use new API. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_flush_unlocked): Don't use new API. 2007-08-14 17:38:05 +0000 Wim Taymans gst-libs/gst/app/gstappsink.*: Make love to appsink. Original commit message from CVS: * gst-libs/gst/app/gstappsink.c: (gst_app_sink_base_init), (gst_app_sink_class_init), (gst_app_sink_dispose), (gst_app_sink_flush_unlocked), (gst_app_sink_start), (gst_app_sink_stop), (gst_app_sink_event), (gst_app_sink_preroll), (gst_app_sink_render), (gst_app_sink_get_caps), (gst_app_sink_set_caps), (gst_app_sink_end_of_stream), (gst_app_sink_pull_preroll), (gst_app_sink_pull_buffer): * gst-libs/gst/app/gstappsink.h: Make love to appsink. Make it support pulling of the preroll buffer. Add docs and debug statements. Fix some races wrt to EOS handling and stopping. Implement getcaps. Implement FLUSHING. API: gst_app_sink_pull_preroll() 2007-08-14 14:56:20 +0000 Wim Taymans gst/flv/gstflvdemux.c: Fix locking and refcounting on the index. Original commit message from CVS: * gst/flv/gstflvdemux.c: (gst_flv_demux_set_index), (gst_flv_demux_get_index): Fix locking and refcounting on the index. 2007-08-14 14:22:09 +0000 Julien Moutte gst/flv/gstflvdemux.c: First method for seeking in pull mode using the index built step by step or coming from metadata. Original commit message from CVS: 2007-08-14 Julien MOUTTE * gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup), (gst_flv_demux_adapter_flush), (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_do_seek), (gst_flv_demux_handle_seek), (gst_flv_demux_sink_event), (gst_flv_demux_src_event), (gst_flv_demux_query), (gst_flv_demux_change_state), (gst_flv_demux_set_index), (gst_flv_demux_get_index), (gst_flv_demux_dispose), (gst_flv_demux_class_init): First method for seeking in pull mode using the index built step by step or coming from metadata. * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (FLV_GET_STRING), (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Parse more metadata types and keyframes index. 2007-08-13 13:50:39 +0000 Sebastian Dröge Add docs for lpwsinc and bpwsinc and integrate them into the build system. While doing that also update all other doc... Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: * gst/filter/gstbpwsinc.c: * gst/filter/gstbpwsinc.h: * gst/filter/gstlpwsinc.c: * gst/filter/gstlpwsinc.h: Add docs for lpwsinc and bpwsinc and integrate them into the build system. While doing that also update all other docs via make update in docs/plugins. 2007-08-13 06:16:40 +0000 Stefan Kost gst/rtpmanager/rtpjitterbuffer.c: Include stdlib. Original commit message from CVS: * gst/rtpmanager/rtpjitterbuffer.c: Include stdlib. 2007-08-12 20:55:01 +0000 Sebastian Dröge tests/check/elements/bpwsinc.c: Make one test constraint a bit stricter. Original commit message from CVS: * tests/check/elements/bpwsinc.c: (GST_START_TEST): Make one test constraint a bit stricter. 2007-08-12 20:53:11 +0000 Sebastian Dröge tests/check/: Add unit tests for bpwsinc, testing fundamental functionality again. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/bpwsinc.c: (setup_bpwsinc), (cleanup_bpwsinc), (GST_START_TEST), (bpwsinc_suite), (main): Add unit tests for bpwsinc, testing fundamental functionality again. 2007-08-12 20:19:37 +0000 Sebastian Dröge tests/check/: Add unit tests for lpwsinc, testing fundamental functionality. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/lpwsinc.c: (setup_lpwsinc), (cleanup_lpwsinc), (GST_START_TEST), (lpwsinc_suite), (main): Add unit tests for lpwsinc, testing fundamental functionality. 2007-08-12 15:41:57 +0000 Sebastian Dröge gst/filter/: Improve debugging a bit. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (bpwsinc_build_kernel): * gst/filter/gstlpwsinc.c: (lpwsinc_build_kernel): Improve debugging a bit. 2007-08-12 12:46:20 +0000 Sebastian Dröge gst/filter/: Reset the residue in BaseTransform::start to get a clean residue on stream changes. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (bpwsinc_start): * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (lpwsinc_start): Reset the residue in BaseTransform::start to get a clean residue on stream changes. 2007-08-11 21:30:03 +0000 Sebastian Dröge * ChangeLog: Changelog surgery Original commit message from CVS: Changelog surgery 2007-08-11 15:58:30 +0000 Sebastian Dröge gst/filter/: Fix processing with buffer sizes that are larger than the filter kernel size. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (process_32), (process_64): * gst/filter/gstlpwsinc.c: (process_32), (process_64): Fix processing with buffer sizes that are larger than the filter kernel size. 2007-08-10 17:16:53 +0000 Wim Taymans gst/rtpmanager/: Remove complicated async queue and replace with more simple jitterbuffer code while also fixing some... Original commit message from CVS: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/async_jitter_queue.c: * gst/rtpmanager/async_jitter_queue.h: * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_class_init), (rtp_jitter_buffer_init), (rtp_jitter_buffer_finalize), (rtp_jitter_buffer_new), (compare_seqnum), (rtp_jitter_buffer_insert), (rtp_jitter_buffer_pop), (rtp_jitter_buffer_flush), (rtp_jitter_buffer_num_packets), (rtp_jitter_buffer_get_ts_diff): * gst/rtpmanager/rtpjitterbuffer.h: Remove complicated async queue and replace with more simple jitterbuffer code while also fixing some bugs. * gst/rtpmanager/gstrtpbin-marshal.list: * gst/rtpmanager/gstrtpbin.c: (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout), (create_session), (gst_rtp_bin_class_init), (create_recv_rtp), (create_send_rtp): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_dispose), (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_flush_start), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_change_state), (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_set_property): * gst/rtpmanager/gstrtpsession.c: (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (on_bye_timeout), (on_timeout), (gst_rtp_session_class_init), (gst_rtp_session_init): * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/rtpsession.c: (on_bye_ssrc), (session_cleanup): Use new jitterbuffer code. Expose some new signals in preparation for handling EOS. 2007-08-10 05:51:40 +0000 Sebastian Dröge gst/filter/gstbpwsinc.c: Fix a segfault with more than one channel and don't rebuild the kernel & residue with every ... Original commit message from CVS: * gst/filter/gstbpwsinc.c: (bpwsinc_build_kernel): Fix a segfault with more than one channel and don't rebuild the kernel & residue with every buffer. 2007-08-10 05:35:25 +0000 Sebastian Dröge gst/filter/gstbpwsinc.*: Add support for a bandreject mode and allow specifying the window function that should be used. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_mode_get_type), (gst_bpwsinc_window_get_type), (gst_bpwsinc_class_init), (gst_bpwsinc_init), (bpwsinc_build_kernel), (bpwsinc_set_property), (bpwsinc_get_property): * gst/filter/gstbpwsinc.h: Add support for a bandreject mode and allow specifying the window function that should be used. * gst/filter/gstlpwsinc.c: And another small formatting fix. 2007-08-10 05:20:06 +0000 Sebastian Dröge gst/filter/gstbpwsinc.*: Apply the same changes to the bandpass filter: Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init), (gst_bpwsinc_init), (process_32), (process_64), (bpwsinc_build_kernel), (bpwsinc_setup), (bpwsinc_get_unit_size), (bpwsinc_transform), (bpwsinc_set_property), (bpwsinc_get_property): * gst/filter/gstbpwsinc.h: Apply the same changes to the bandpass filter: - Support double input - Fix processing for input with >1 channels - Specify frequency in Hz - Specify actual filter kernel length - Use transform instead of transform_ip as we're working out of place anyway - Factor out filter kernel generation and update the filter kernel when the properties are set Fix bandpass filter kernel generation to actually generate a bandpass filter by creating a highpass instead of a second lowpass. * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init): Small formatting fix. 2007-08-10 04:44:43 +0000 Sebastian Dröge gst/filter/gstlpwsinc.*: Specify the actual filter length instead of a weird 2N+1. Setting the property will round to... Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init), (gst_lpwsinc_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Specify the actual filter length instead of a weird 2N+1. Setting the property will round to the next odd number. Also remove now obsolete FIXMEs. 2007-08-10 04:32:47 +0000 Sebastian Dröge gst/filter/gstlpwsinc.*: Allow choosing between hamming and blackman window. The blackman window provides a better st... Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_window_get_type), (gst_lpwsinc_class_init), (gst_lpwsinc_init), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Allow choosing between hamming and blackman window. The blackman window provides a better stopband attenuation but a bit slower rolloff. 2007-08-10 04:21:39 +0000 Sebastian Dröge gst/filter/gstlpwsinc.*: Add a highpass mode. Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_mode_get_type), (gst_lpwsinc_class_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Add a highpass mode. 2007-08-10 04:06:53 +0000 Sebastian Dröge gst/filter/gstlpwsinc.c: Fix processing if the input has more than one channel. Original commit message from CVS: * gst/filter/gstlpwsinc.c: (process_32), (process_64), (lpwsinc_build_kernel): Fix processing if the input has more than one channel. 2007-08-09 19:23:33 +0000 Sebastian Dröge gst/filter/gstbpwsinc.c: "this" is a C++ keyword, use "self" instead. Original commit message from CVS: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_dispose), (gst_bpwsinc_init), (bpwsinc_setup), (bpwsinc_transform_ip), (bpwsinc_set_property), (bpwsinc_get_property): "this" is a C++ keyword, use "self" instead. Add TODOs and FIXMEs and remove two wrong FIXMEs. * gst/filter/gstlpwsinc.c: Add FIXMEs and a new TODO. 2007-08-09 18:08:05 +0000 Sebastian Dröge gst/filter/gstlpwsinc.*: Add double support, replace "this" with "self" as the former is a C++ keyword. Original commit message from CVS: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_dispose), (gst_lpwsinc_class_init), (gst_lpwsinc_init), (process_32), (process_64), (lpwsinc_build_kernel), (lpwsinc_setup), (lpwsinc_get_unit_size), (lpwsinc_transform), (lpwsinc_set_property), (lpwsinc_get_property): * gst/filter/gstlpwsinc.h: Add double support, replace "this" with "self" as the former is a C++ keyword. Implement the frequency property in Hz instead of fraction of sampling frequency. Remove some unecessary FIXMEs and add some TODOs, add some required locking and refactor the kernel generation into a separate function that is also called when the properties change now. And use BaseTransform::transform instead of transform_ip as the convolution is done out of place anyway. Should be done in place later. 2007-08-09 17:39:47 +0000 Sebastian Dröge Port the stereo element to GStreamer 0.10. Original commit message from CVS: * configure.ac: * gst/stereo/Makefile.am: * gst/stereo/gststereo.c: (gst_stereo_base_init), (gst_stereo_class_init), (gst_stereo_init), (gst_stereo_transform_ip), (gst_stereo_set_property), (gst_stereo_get_property): * gst/stereo/gststereo.h: Port the stereo element to GStreamer 0.10. 2007-08-09 11:01:14 +0000 Thomas Vander Stichele po/: Added Portuguese (Brazilian) translation. Original commit message from CVS: submitted by: Raphael Higino * po/LINGUAS: * po/pt_BR.po: Added Portuguese (Brazilian) translation. 2007-08-09 11:00:03 +0000 Thomas Vander Stichele po/: Updated translations. Original commit message from CVS: * po/uk.po: * po/vi.po: Updated translations. 2007-08-08 20:47:33 +0000 Sebastian Dröge gst/filter/: Use GstAudioFilter as base class and don't leak the memory of the filter kernel and residue. Original commit message from CVS: * gst/filter/Makefile.am: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_dispose), (gst_bpwsinc_base_init), (gst_bpwsinc_class_init), (gst_bpwsinc_init), (bpwsinc_setup): * gst/filter/gstbpwsinc.h: * gst/filter/gstlpwsinc.c: (gst_lpwsinc_dispose), (gst_lpwsinc_base_init), (gst_lpwsinc_class_init), (gst_lpwsinc_init), (lpwsinc_setup): * gst/filter/gstlpwsinc.h: Use GstAudioFilter as base class and don't leak the memory of the filter kernel and residue. 2007-08-08 15:15:56 +0000 Josep Torre Valles Add connection speed property to libmms. Fixes #464678. Original commit message from CVS: Patch by: Josep Torre Valles * docs/plugins/gst-plugins-bad-plugins.args: * ext/libmms/gstmms.c: (gst_mms_class_init), (gst_mms_init), (gst_mms_start), (gst_mms_set_property), (gst_mms_get_property): * ext/libmms/gstmms.h: Add connection speed property to libmms. Fixes #464678. 2007-08-07 15:21:17 +0000 Wim Taymans gst/real/gstrealvideodec.*: Remove some old unused vars. Original commit message from CVS: * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain), (gst_real_video_dec_activate_push), (open_library), (gst_real_video_dec_init), (gst_real_video_dec_finalize): * gst/real/gstrealvideodec.h: Remove some old unused vars. 2007-08-07 10:51:59 +0000 Wim Taymans gst/real/gstrealaudiodec.c: Small cleanups. Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps): Small cleanups. * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain), (open_library): Remove fragment and timestamp correction code from the decoder to make the caps and buffer contents compatible with matroska/ffdec_rvx0/... 2007-07-30 12:43:12 +0000 Tim-Philipp Müller po/POTFILES.skip: Add POTFILES.skip with list of source files that aren't disted at the moment but contain translatab... Original commit message from CVS: * po/POTFILES.skip: Add POTFILES.skip with list of source files that aren't disted at the moment but contain translatable strings. Should hopefully pacify broken tools and make it clearer that these files are left out intentionally (#461601 and others). 2007-07-30 09:52:36 +0000 Ian Munro gst/bayer/gstbayer2rgb.c: Include our own "_stdint.h" instead of (which may not be available). Original commit message from CVS: Patch by: Ian Munro * gst/bayer/gstbayer2rgb.c: Include our own "_stdint.h" instead of (which may not be available). * gst/speed/gstspeed.h: Native HP-UX compiler dosn't seem to like enum typedefs before the actual enum was defined. * gst/vmnc/vmncdec.c: Fix wrong usage of GST_ELEMENT_ERROR macro (#461373). 2007-07-26 16:16:01 +0000 Edward Hervey gst/real/gstrealaudiodec.c: Use the proper context variable when setting the password ! Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps): Use the proper context variable when setting the password ! LOG => WARNING for errors. Give proper path when opening the codec (needs a '/' at the end). 2007-07-25 18:10:04 +0000 Tim-Philipp Müller gst/real/Makefile.am: And dist the new header file too. Original commit message from CVS: * gst/real/Makefile.am: And dist the new header file too. 2007-07-25 14:36:25 +0000 Tim-Philipp Müller gst/real/gstreal.h: Add missing header file. Original commit message from CVS: * gst/real/gstreal.h: Add missing header file. 2007-07-25 13:29:04 +0000 Julien Moutte gst/flv/: Handle not linked pads, try to make it reusable, more safety checks. Original commit message from CVS: 2007-07-25 Julien MOUTTE (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_change_state), (gst_flv_demux_dispose), (gst_flv_demux_init): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (FLV_GET_STRING), (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_header): * gst/flv/gstflvparse.h: Handle not linked pads, try to make it reusable, more safety checks. 2007-07-25 05:55:00 +0000 Stefan Kost ext/timidity/gsttimidity.*: Don't initialize timidity in plugin_init for similar reason as below. Original commit message from CVS: * ext/timidity/gsttimidity.c: (gst_timidity_init), (gst_timidity_change_state), (plugin_init): * ext/timidity/gsttimidity.h: Don't initialize timidity in plugin_init for similar reason as below. 2007-07-24 15:13:44 +0000 Stefan Kost ext/timidity/gstwildmidi.*: Don't initialize wildmidi in plugin_init as it also setups audio filters which is slow. Original commit message from CVS: * ext/timidity/gstwildmidi.c: (wildmidi_open_config), (gst_wildmidi_init), (gst_wildmidi_change_state), (plugin_init): * ext/timidity/gstwildmidi.h: Don't initialize wildmidi in plugin_init as it also setups audio filters which is slow. 2007-07-24 14:36:54 +0000 Edward Hervey gst/real/: Improved search algorithm for location of real .so files. Original commit message from CVS: reviewed by: Edward Hervey * gst/real/gstreal.c: (plugin_init): * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps), (gst_real_audio_dec_finalize), (gst_real_audio_dec_set_property), (gst_real_audio_dec_get_property), (gst_real_audio_dec_class_init): * gst/real/gstrealvideodec.c: (open_library), (gst_real_video_dec_finalize), (gst_real_video_dec_set_property), (gst_real_video_dec_get_property), (gst_real_video_dec_class_init): * gst/real/gstrealvideodec.h: Improved search algorithm for location of real .so files. Fixes #393461 2007-07-24 05:15:41 +0000 Sebastian Dröge Use the new buffer clipping function from gstaudio here and require gst-plugins-base CVS. Original commit message from CVS: * configure.ac: * ext/faad/gstfaad.c: (gst_faad_chain), (gst_faad_change_state): Use the new buffer clipping function from gstaudio here and require gst-plugins-base CVS. 2007-07-23 09:13:42 +0000 Stefan Kost configure.ac: Sync liboil check with plugins-base. Original commit message from CVS: * configure.ac: Sync liboil check with plugins-base. 2007-07-20 11:37:37 +0000 Stefan Kost gst/equalizer/: Better algorith for the center frequencies. Subtract band filters from input for negative gains. Rewo... Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_child_proxy_get_child_by_index), (gst_iir_equalizer_child_proxy_get_children_count), (gst_iir_equalizer_child_proxy_interface_init), (gst_iir_equalizer_class_init), (arg_to_scale), (setup_filter), (gst_iir_equalizer_compute_frequencies): * gst/equalizer/gstiirequalizer10bands.c: (gst_iir_equalizer_10bands_class_init): * gst/equalizer/gstiirequalizer3bands.c: (gst_iir_equalizer_3bands_class_init): * gst/equalizer/gstiirequalizernbands.c: Better algorith for the center frequencies. Subtract band filters from input for negative gains. Rework the gain mapping. 2007-07-20 11:03:39 +0000 Stefan Kost ext/dirac/Makefile.am: Also include stdlib here. Original commit message from CVS: * ext/dirac/Makefile.am: Also include stdlib here. 2007-07-19 15:29:52 +0000 Jan Schmidt tests/check/elements/.cvsignore: Fix the buildbot with the cvsignore it wants. Original commit message from CVS: * tests/check/elements/.cvsignore: Fix the buildbot with the cvsignore it wants. 2007-07-19 15:05:30 +0000 Julien Moutte Adds a first draft of an FLV demuxer. Original commit message from CVS: 2007-07-19 Julien MOUTTE * configure.ac: * gst/flv/Makefile.am: * gst/flv/gstflvdemux.c: (gst_flv_demux_flush), (gst_flv_demux_cleanup), (gst_flv_demux_chain), (gst_flv_demux_pull_tag), (gst_flv_demux_pull_header), (gst_flv_demux_seek_to_prev_keyframe), (gst_flv_demux_loop), (gst_flv_demux_sink_activate), (gst_flv_demux_sink_activate_push), (gst_flv_demux_sink_activate_pull), (gst_flv_demux_sink_event), (gst_flv_demux_change_state), (gst_flv_demux_dispose), (gst_flv_demux_base_init), (gst_flv_demux_class_init), (gst_flv_demux_init), (plugin_init): * gst/flv/gstflvdemux.h: * gst/flv/gstflvparse.c: (FLV_GET_BEUI24), (FLV_GET_STRING), (gst_flv_demux_query_types), (gst_flv_demux_query), (gst_flv_parse_metadata_item), (gst_flv_parse_tag_script), (gst_flv_parse_tag_audio), (gst_flv_parse_tag_video), (gst_flv_parse_tag_type), (gst_flv_parse_header): * gst/flv/gstflvparse.h: Adds a first draft of an FLV demuxer. It does not do seeking yet, it supports pull and push mode so YES you can use it to play youtube videos directly from an HTTP uri. Not so much testing done yet but it parses metadata, reply to duration queries, etc... 2007-07-19 09:08:30 +0000 Stefan Kost tests/check/Makefile.am: tests/check/elements/timidity.c (GST_START_TEST, timidity_suite, main): Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/timidity.c (GST_START_TEST, timidity_suite, main): Add typefind test for midi. 2007-07-18 20:56:22 +0000 Michael Smith ext/soundtouch/gstpitch.cc: If we receive a new segment event, don't try to push buffers out in response (without fir... Original commit message from CVS: * ext/soundtouch/gstpitch.cc: If we receive a new segment event, don't try to push buffers out in response (without first sending it on!). Instead, flush internal buffers on receiving flush events. Fixes playback after seeking. 2007-07-18 08:00:06 +0000 Stefan Kost gst/bayer/gstbayer2rgb.c: Add basic docs. Use glibs mem routines. Original commit message from CVS: * gst/bayer/gstbayer2rgb.c: (gst_bayer2rgb_set_caps), (gst_bayer2rgb_reset): Add basic docs. Use glibs mem routines. 2007-07-18 07:51:11 +0000 Stefan Kost gst/multifile/gstmultifilesrc.c: Add example to the docs. Fix buffer-offset-end and add some debug. Original commit message from CVS: * gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_create): Add example to the docs. Fix buffer-offset-end and add some debug. 2007-07-18 07:42:47 +0000 Stefan Kost ext/jack/gstjackaudiosink.c: Add stdlib include here too. Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (gst_jack_ring_buffer_open_device), (gst_jack_ring_buffer_acquire): Add stdlib include here too. 2007-07-18 07:35:32 +0000 Stefan Kost Add stdlib include (free, atoi, exit). Original commit message from CVS: * examples/app/appsrc_ex.c: * examples/switch/switcher.c: * ext/neon/gstneonhttpsrc.c: * ext/timidity/gstwildmidi.c: * ext/x264/gstx264enc.c: * gst/mve/mveaudioenc.c: (mve_compress_audio): * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/spectrum/demo-audiotest.c: * gst/spectrum/demo-osssrc.c: * sys/dvb/gstdvbsrc.c: Add stdlib include (free, atoi, exit). 2007-07-16 09:19:14 +0000 Sebastian Dröge ext/faad/gstfaad.c: Fix buffer clipping to correctly clip to the segment stop. Original commit message from CVS: * ext/faad/gstfaad.c: (clip_outgoing_buffer): Fix buffer clipping to correctly clip to the segment stop. 2007-07-14 18:48:25 +0000 Hans de Goede gst/modplug/gstmodplug.cc: add several missing supported mime-types to the modplug plugin. Original commit message from CVS: Patch by: Hans de Goede * gst/modplug/gstmodplug.cc: add several missing supported mime-types to the modplug plugin. Fixes #456901. 2007-07-13 16:46:00 +0000 Jan Schmidt Remove bogus check for libcheck, since we check for gstreamer-check and it pulls in the required info from there, and... Original commit message from CVS: * configure.ac: * tests/Makefile.am: Remove bogus check for libcheck, since we check for gstreamer-check and it pulls in the required info from there, and we weren't actually _using_ the information for libcheck ourselves anyway. 2007-07-12 11:55:10 +0000 Stefan Kost configure.ac: Use pkg-config to locate check. Original commit message from CVS: * configure.ac: Use pkg-config to locate check. 2007-07-11 23:43:25 +0000 Tim-Philipp Müller gst/: Fix build against core CVS. Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_process): * gst/vmnc/vmncdec.c: (vmnc_make_buffer): Fix build against core CVS. 2007-07-09 06:05:45 +0000 Stefan Kost REQUIREMENTS: Sync with changes in -ugly. Original commit message from CVS: * REQUIREMENTS: Sync with changes in -ugly. 2007-07-08 19:06:48 +0000 Tim-Philipp Müller REQUIREMENTS: Add download location of libamrwb. Original commit message from CVS: * REQUIREMENTS: Add download location of libamrwb. 2007-07-06 21:07:21 +0000 Tim-Philipp Müller docs/plugins/inspect/: Add missing inspect files. Fixes build (#454313). Original commit message from CVS: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-equalizer.xml: * docs/plugins/inspect/plugin-multifile.xml: * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-wildmidi.xml: Add missing inspect files. Fixes build (#454313). * ext/timidity/gstwildmidi.c: (wildmidi_open_config): Scream a bit louder when initialisation fails. * gst-libs/README: * gst-libs/ext/.cvsignore: Remove some cruft. 2007-07-05 22:28:04 +0000 Tim-Philipp Müller ext/ivorbis/Makefile.am: Dist header files. Fixes #454078. Original commit message from CVS: * ext/ivorbis/Makefile.am: Dist header files. Fixes #454078. 2007-07-05 08:45:32 +0000 Stefan Kost docs/plugins/Makefile.am: Simplify --extra-dir as gtkdoc scans recursively. Original commit message from CVS: * docs/plugins/Makefile.am: Simplify --extra-dir as gtkdoc scans recursively. * ext/amrwb/gstamrwbenc.c: Fix comment start. 2007-07-04 11:56:55 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c (dvbsrc_details, ARG_DVBSRC_ADAPTER, Original commit message from CVS: * sys/dvb/gstdvbsrc.c (dvbsrc_details, ARG_DVBSRC_ADAPTER, ARG_DVBSRC_FRONTEND, ARG_DVBSRC_DISEQC_SRC, ARG_DVBSRC_FREQUENCY, ARG_DVBSRC_POLARITY, gst_dvbsrc_class_init, gst_dvbsrc_init, gst_dvbsrc_set_property, gst_dvbsrc_get_property, gst_dvbsrc_open_frontend, gst_dvbsrc_open_dvr, read_device, gst_dvbsrc_create, gst_dvbsrc_set_pes_filters): * sys/dvb/gstdvbsrc.h (adapter_number, frontend_number): Removed property "device". Added properties "adapter" and "frontend". Fixes #453636. Rename freq property to frequency. 2007-07-03 17:09:24 +0000 Wim Taymans gst/videosignal/gstvideodetect.c: Fix property descriptions. Original commit message from CVS: * gst/videosignal/gstvideodetect.c: (gst_video_detect_class_init): Fix property descriptions. 2007-07-03 09:18:22 +0000 Stefan Kost Also document AMR-WB elements. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: Also document AMR-WB elements. 2007-07-03 08:16:15 +0000 Stefan Kost docs/plugins/: Cleanup the section file so that -unused is empty again (and useful to spot new docs). Add not yet add... Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: Cleanup the section file so that -unused is empty again (and useful to spot new docs). Add not yet added docs to sgml file. Add more header to Makefile.am to make them introspectable. * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Update the doc blobs. 2007-07-03 08:01:18 +0000 Stefan Kost gst/multifile/: Add .h files to be able to add it to the docs. Original commit message from CVS: * gst/multifile/Makefile.am: * gst/multifile/gstmultifile.c: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesink.h: * gst/multifile/gstmultifilesrc.c: * gst/multifile/gstmultifilesrc.h: Add .h files to be able to add it to the docs. 2007-07-03 07:52:52 +0000 Stefan Kost gst/modplug/gstmodplug.cc: Activate doc section. Original commit message from CVS: * gst/modplug/gstmodplug.cc: Activate doc section. 2007-07-03 07:41:34 +0000 Stefan Kost ext/timidity/: Fix licence (both are GPL). Add element docs. Original commit message from CVS: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * ext/timidity/gstwildmidi.h: Fix licence (both are GPL). Add element docs. 2007-07-03 07:30:47 +0000 Stefan Kost ext/musicbrainz/gsttrm.h: Fix _get_type signature. Original commit message from CVS: * ext/musicbrainz/gsttrm.h: Fix _get_type signature. 2007-07-03 07:16:26 +0000 Stefan Kost gst/replaygain/gstrgvolume.h: Fix GObject macros. Original commit message from CVS: * gst/replaygain/gstrgvolume.h: Fix GObject macros. 2007-06-29 15:23:34 +0000 Jan Schmidt ext/dc1394/gstdc1394.c: Make a bunch of functions static, and move variable declarations to the start of blocks to av... Original commit message from CVS: * ext/dc1394/gstdc1394.c: (gst_dc1394_src_fixate), (gst_dc1394_create), (gst_dc1394_caps_set_format_vmode_caps), (gst_dc1394_set_caps_framesize_range), (gst_dc1394_caps_set_framerate_list), (gst_dc1394_get_cam_caps), (gst_dc1394_framerate_frac_to_const), (gst_dc1394_open_cam_with_best_caps): Make a bunch of functions static, and move variable declarations to the start of blocks to avoid problems on older gcc. Make sure to unset value types. 2007-06-29 14:48:59 +0000 Jan Schmidt ext/dc1394/gstdc1394.c: The correct fourcc for the 4:1:1 packed format is 'IYU1'. Original commit message from CVS: * ext/dc1394/gstdc1394.c: (gst_dc1394_set_caps_color): The correct fourcc for the 4:1:1 packed format is 'IYU1'. With CVS of ffmpegcolorspace from plugins-base, I can now get 30 fps from the iSight. 2007-06-29 14:11:24 +0000 Jan Schmidt ext/dc1394/gstdc1394.c: Change a g_print to a GST_DEBUG message. Original commit message from CVS: * ext/dc1394/gstdc1394.c: (gst_dc1394_set_caps_color): Change a g_print to a GST_DEBUG message. 2007-06-29 13:09:19 +0000 Jan Schmidt * ChangeLog: Oops, add an attribution for Antoine Tremblay too - the original patch author. Original commit message from CVS: Oops, add an attribution for Antoine Tremblay too - the original patch author. 2007-06-29 13:03:27 +0000 Eric Jonas Commit new dc1394src element. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/dc1394/Makefile.am: * ext/dc1394/gstdc1394.c: (gst_dc1394_base_init), (gst_dc1394_class_init), (gst_dc1394_init), (gst_dc1394_src_fixate), (gst_dc1394_set_property), (gst_dc1394_get_property), (gst_dc1394_getcaps), (gst_dc1394_setcaps), (gst_dc1394_get_times), (gst_dc1394_create), (gst_dc1394_parse_caps), (gst_dc1394_change_state), (gst_dc1394_caps_set_format_vmode_caps), (gst_dc1394_set_caps_color), (gst_dc1394_set_caps_framesize), (gst_dc1394_set_caps_framesize_range), (gst_dc1394_caps_set_framerate_list), (gst_dc1394_framerate_const_to_frac), (gst_dc1394_get_all_dc1394_caps), (gst_dc1394_get_cam_caps), (gst_dc1394_framerate_frac_to_const), (gst_dc1394_open_cam_with_best_caps), (gst_dc1394_change_camera_transmission), (plugin_init): * ext/dc1394/gstdc1394.h: Commit new dc1394src element. Patch By: Eric Jonas < jonas at mit dot edu > Close: #387251 2007-06-28 10:40:16 +0000 Wim Taymans gst/videosignal/gstvideodetect.c: Register new property as well. Original commit message from CVS: * gst/videosignal/gstvideodetect.c: (gst_video_detect_class_init): Register new property as well. 2007-06-28 09:36:20 +0000 Wim Taymans gst/videosignal/gstvideodetect.*: Add property to adjust the center, sensitivity is now the distance from this center. Original commit message from CVS: * gst/videosignal/gstvideodetect.c: (gst_video_detect_420), (gst_video_detect_set_property), (gst_video_detect_get_property): * gst/videosignal/gstvideodetect.h: Add property to adjust the center, sensitivity is now the distance from this center. 2007-06-27 15:33:26 +0000 Wim Taymans gst/videosignal/: Add left and bottom offset properties to control the position of the pattern. Original commit message from CVS: * gst/videosignal/gstvideodetect.c: (gst_video_detect_420), (gst_video_detect_set_property), (gst_video_detect_get_property), (gst_video_detect_class_init): * gst/videosignal/gstvideodetect.h: * gst/videosignal/gstvideomark.c: (gst_video_mark_draw_box), (gst_video_mark_420), (gst_video_mark_set_property), (gst_video_mark_get_property), (gst_video_mark_class_init): * gst/videosignal/gstvideomark.h: Add left and bottom offset properties to control the position of the pattern. 2007-06-25 12:47:43 +0000 Stefan Kost docs/plugins/: Update docs with caps info. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gdp.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Update docs with caps info. 2007-06-25 11:02:21 +0000 Tim-Philipp Müller gconf/: Remove dysfunctional directory (this stuff is in -good). Original commit message from CVS: * gconf/.cvsignore: * gconf/Makefile.am: * gconf/gstreamer.schemas.in: Remove dysfunctional directory (this stuff is in -good). * ext/sndfile/gstsf.c: (plugin_init): * sys/dvb/gstdvbsrc.c: (plugin_init): Add i18n bindtextdomain stuff. * gst/nuvdemux/gstnuvdemux.c: (gst_nuv_demux_class_init), (plugin_init): Post an error message when returning GST_FLOW_ERROR; minor cleanups. * po/POTFILES.in: Add more source files with translatable strings (fixes #450605). 2007-06-23 11:24:44 +0000 Thomas Vander Stichele po/: Added Chinese (simplified) translation. Original commit message from CVS: Contributed by: Wenzheng Hu * po/LINGUAS: * po/zh_CN.po: Added Chinese (simplified) translation. 2007-06-22 20:23:18 +0000 Jens Granseuer gst/: Build fixes for gcc-2.9x (no mid-block variable declarations etc.). Original commit message from CVS: Patch by: Jens Granseuer * gst/equalizer/gstiirequalizer.c: * gst/equalizer/gstiirequalizer10bands.c: * gst/equalizer/gstiirequalizer3bands.c: * gst/equalizer/gstiirequalizernbands.c: * gst/rtpmanager/async_jitter_queue.c: (async_jitter_queue_push_sorted): * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_chain): * gst/switch/gstswitch.c: (gst_switch_chain): Build fixes for gcc-2.9x (no mid-block variable declarations etc.). Fixes #450185. 2007-06-22 15:30:00 +0000 Zaheer Abbas Merali * ChangeLog: * examples/switch/switcher.c: * gst/switch/gstswitch.c: * gst/switch/gstswitch.h: examples/switch/switcher.c (my_bus_callback, switch_timer, last_message_received, main): gst/switch/gstswitch.c (gst_... Original commit message from CVS: * examples/switch/switcher.c (my_bus_callback, switch_timer, last_message_received, main): * gst/switch/gstswitch.c (gst_switch_release_pad, gst_switch_request_new_pad, gst_switch_chain, gst_switch_event, gst_switch_set_property, gst_switch_get_property, gst_switch_get_linked_pad, gst_switch_getcaps, gst_switch_bufferalloc, gst_switch_dispose, gst_switch_init): * gst/switch/gstswitch.h (switch_mutex, GST_SWITCH_LOCK, GST_SWITCH_UNLOCK): Add an extra lock to protect against certain variables instead of using the object lock. Fix case where caps are different in the sink pads causes deadlock. Update example to use different caps on each sink pad. 2007-06-22 14:27:40 +0000 Jan Schmidt MAINTAINERS: Updating all the maintainers files Original commit message from CVS: * MAINTAINERS: Updating all the maintainers files 2007-06-22 10:46:33 +0000 Edward Hervey Fix leaks. Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_init): * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_init): * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_init): * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: (gst_bz2dec_init): * ext/bz2/gstbz2enc.c: (gst_bz2enc_init): * ext/divx/gstdivxdec.c: (gst_divxdec_init): * ext/divx/gstdivxenc.c: (gst_divxenc_init): * ext/faac/gstfaac.c: (gst_faac_init): * ext/gsm/gstgsmdec.c: (gst_gsmdec_init): * ext/gsm/gstgsmenc.c: (gst_gsmenc_init): * ext/hermes/gsthermescolorspace.c: (gst_hermes_colorspace_init): * ext/lcs/gstcolorspace.c: (gst_colorspace_init): * ext/libfame/gstlibfame.c: (gst_fameenc_init): * ext/snapshot/gstsnapshot.c: (gst_snapshot_init): * ext/spc/gstspc.c: (gst_spc_dec_init): * ext/swfdec/gstswfdec.c: (gst_swfdec_init): * ext/xvid/gstxvidenc.c: (gst_xvidenc_init): * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_init): * gst/chart/gstchart.c: (gst_chart_init): * gst/colorspace/gstcolorspace.c: (gst_colorspace_init): * gst/festival/gstfestival.c: (gst_festival_init): * gst/freeze/gstfreeze.c: (gst_freeze_init): * gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_request_new_pad): * gst/mpeg1sys/gstmpeg1systemencode.c: (gst_system_encode_init): * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_init): * gst/nsf/gstnsf.c: (gst_nsfdec_init): * gst/overlay/gstoverlay.c: (gst_overlay_init): * gst/passthrough/gstpassthrough.c: (passthrough_init): * gst/playondemand/gstplayondemand.c: (play_on_demand_init): * gst/smooth/gstsmooth.c: (gst_smooth_init): * gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_init): * gst/speed/gstspeed.c: (speed_init): * gst/vbidec/gstvbidec.c: (gst_vbidec_init): * gst/videodrop/gstvideodrop.c: (gst_videodrop_init): * sys/dxr3/dxr3spusink.c: (dxr3spusink_init): * sys/dxr3/dxr3videosink.c: (dxr3videosink_init): * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_init): Fix leaks. 2007-06-21 18:41:17 +0000 Tim-Philipp Müller Re-enable VCD source and fix up release notes. Original commit message from CVS: * RELEASE: * sys/Makefile.am: Re-enable VCD source and fix up release notes. 2007-06-20 10:15:00 +0000 Stefan Kost gst/equalizer/gstiirequalizer.c: Document parameter mapping. Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: Document parameter mapping. 2007-06-20 08:56:17 +0000 Stefan Kost gst/spectrum/gstspectrum.c: Fix leaking buffers. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_event), (gst_spectrum_transform_ip): Fix leaking buffers. * tests/check/Makefile.am: * tests/check/elements/spectrum.c: (setup_spectrum), (cleanup_spectrum), (GST_START_TEST), (spectrum_suite), (main): Add simple test for spectrum element. 2007-06-20 08:42:17 +0000 Stefan Kost ext/amrwb/: Add newsegment and discont handling. Some code cleanups. Don't leak the adapter, unref it in a new finali... Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_base_init), (gst_amrwbdec_class_init), (gst_amrwbdec_finalize), (gst_amrwbdec_event), (gst_amrwbdec_chain), (gst_amrwbdec_state_change): * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_base_init), (gst_amrwbparse_pull_header), (gst_amrwbparse_loop): Add newsegment and discont handling. Some code cleanups. Don't leak the adapter, unref it in a new finalize method instead. Sync the parser with the amr-nb changes. 2007-06-19 10:45:29 +0000 Jan Schmidt configure.ac: Back to CVS. Original commit message from CVS: * configure.ac: Back to CVS. * gst-plugins-bad.doap: Add 0.10.5 to the doap file. === release 0.10.5 === 2007-06-19 10:32:38 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-swfdec.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Release 0.10.5 Original commit message from CVS: Release 0.10.5 2007-06-19 09:37:46 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/cs.po: * po/da.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2007-06-15 09:27:52 +0000 Jan Schmidt win32/vs6/: Convert line endings to CRLF and mark as binary files. Original commit message from CVS: * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libdshowsrcwrapper.dsp: * win32/vs6/libgstdshow.dsp: * win32/vs6/libgstmpegvideoparse.dsp: * win32/vs6/libgstneon.dsp: Convert line endings to CRLF and mark as binary files. 2007-06-13 11:48:07 +0000 Wim Taymans sys/Makefile.am: Disable VCD build because we're frozen.. Original commit message from CVS: * sys/Makefile.am: Disable VCD build because we're frozen.. 2007-06-13 11:37:36 +0000 Wim Taymans Port VCD element. Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/vcd/Makefile.am: * sys/vcd/vcdsrc.c: (gst_vcdsrc_setup_interfaces), (gst_vcdsrc_base_init), (gst_vcdsrc_class_init), (gst_vcdsrc_init), (gst_vcdsrc_msf), (gst_vcdsrc_recalculate), (gst_vcdsrc_set_property), (gst_vcdsrc_get_property), (gst_vcdsrc_create), (gst_vcdsrc_start), (gst_vcdsrc_stop), (gst_vcdsrc_uri_set_uri): * sys/vcd/vcdsrc.h: Port VCD element. 2007-06-12 21:28:12 +0000 Sébastien Moutte win32/MANIFEST: Add megvideoparse, libdshow and dshowsrcwrapper to win32 Original commit message from CVS: * win32/MANIFEST: Add megvideoparse, libdshow and dshowsrcwrapper to win32 MANIFEST. * win32/vs6/gst_plugins_bad.dsw: Remove qtdemux, directdraw, directsound and waveform project files from the workspace as they have been moved to -good. 2007-06-12 20:22:23 +0000 Jan Schmidt po/POTFILES.in: Remove qtdemux from the translation list. Original commit message from CVS: * po/POTFILES.in: Remove qtdemux from the translation list. 2007-06-12 20:15:14 +0000 Jan Schmidt Move videocrop and osxvideo to -good. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-osxvideo.xml: * docs/plugins/inspect/plugin-videocrop.xml: * gst-plugins-bad.spec.in: * gst/videocrop/Makefile.am: * gst/videocrop/gstvideocrop.c: * gst/videocrop/gstvideocrop.h: * gst/videocrop/videocrop.vcproj: * sys/Makefile.am: * sys/osxvideo/Makefile.am: * sys/osxvideo/cocoawindow.h: * sys/osxvideo/cocoawindow.m: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: * tests/check/Makefile.am: * tests/check/elements/videocrop.c: * tests/icles/Makefile.am: * tests/icles/videocrop-test.c: Move videocrop and osxvideo to -good. 2007-06-12 19:36:11 +0000 Jan Schmidt Move qtdemux to -good. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/qtdemux/Makefile.am: * gst/qtdemux/gstrtpxqtdepay.c: * gst/qtdemux/gstrtpxqtdepay.h: * gst/qtdemux/qtdemux.c: * gst/qtdemux/qtdemux.h: * gst/qtdemux/qtdemux.vcproj: * gst/qtdemux/qtdemux_dump.c: * gst/qtdemux/qtdemux_dump.h: * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: * gst/qtdemux/qtdemux_types.h: * gst/qtdemux/qtpalette.h: * gst/qtdemux/quicktime.c: * win32/MANIFEST: * win32/vs6/libgstqtdemux.dsp: Move qtdemux to -good. * gst-plugins-bad.spec.in: Update spec file to reflect wavpack & qtdemux moving to -good. 2007-06-12 18:53:03 +0000 Jan Schmidt Remove the waveform plugin now that it is in -good. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-waveform.xml: * sys/waveform/gstwaveformplugin.c: * sys/waveform/gstwaveformsink.c: * sys/waveform/gstwaveformsink.h: * win32/MANIFEST: * win32/vs6/libgstwaveform.dsp: Remove the waveform plugin now that it is in -good. 2007-06-08 20:20:34 +0000 Thomas Vander Stichele Move wavpack to good. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-wavpack.xml: * ext/Makefile.am: * ext/wavpack/Makefile.am: * ext/wavpack/gstwavpack.c: * ext/wavpack/gstwavpackcommon.c: * ext/wavpack/gstwavpackcommon.h: * ext/wavpack/gstwavpackdec.c: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackenc.c: * ext/wavpack/gstwavpackenc.h: * ext/wavpack/gstwavpackparse.c: * ext/wavpack/gstwavpackparse.h: * ext/wavpack/gstwavpackstreamreader.c: * ext/wavpack/gstwavpackstreamreader.h: * ext/wavpack/md5.c: * ext/wavpack/md5.h: * tests/check/Makefile.am: * tests/check/elements/wavpackdec.c: * tests/check/elements/wavpackenc.c: * tests/check/elements/wavpackparse.c: Move wavpack to good. 2007-06-08 17:36:46 +0000 Jan Schmidt Remove DirectDraw & DirectSound plugins, as they've moved to Good Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-directdraw.xml: * docs/plugins/inspect/plugin-directsound.xml: * sys/Makefile.am: * sys/directdraw/Makefile.am: * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/Makefile.am: * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsink.c: * sys/directsound/gstdirectsoundsink.h: * win32/MANIFEST: * win32/gst.sln: * win32/vs6/libgstdirectdraw.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs7/libgstdirectdraw.vcproj: * win32/vs7/libgstdirectsound.vcproj: * win32/vs8/libgstdirectdraw.vcproj: * win32/vs8/libgstdirectsound.vcproj: Remove DirectDraw & DirectSound plugins, as they've moved to Good 2007-06-08 16:49:41 +0000 Tim-Philipp Müller When driving the pipeline, also post an error when we get a not-linked flow return from downstream. Original commit message from CVS: * ext/timidity/gsttimidity.c: (gst_timidity_loop): * ext/timidity/gstwildmidi.c: (gst_wildmidi_loop): * gst/tta/gstttaparse.c: (gst_tta_parse_loop): When driving the pipeline, also post an error when we get a not-linked flow return from downstream. 2007-06-08 16:31:15 +0000 Jan Schmidt Rename the keep-aspect-ratio property to force-aspect-ratio to make it consistent with xvimagesink and ximagesink. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_class_init): Rename the keep-aspect-ratio property to force-aspect-ratio to make it consistent with xvimagesink and ximagesink. 2007-06-08 08:12:43 +0000 Tim-Philipp Müller tests/icles/videocrop-test.c: Default to xvimagesink instead of autovideosink while autovideosink/ghostpads/whatever ... Original commit message from CVS: * tests/icles/videocrop-test.c: (main): Default to xvimagesink instead of autovideosink while autovideosink/ghostpads/whatever don't handle the way we use it in the way we expect it to. 2007-06-06 18:30:22 +0000 Tim-Philipp Müller configure.ac: Bump requirements to released versions of core and -base, and remove special-casing for equalizer and r... Original commit message from CVS: * configure.ac: Bump requirements to released versions of core and -base, and remove special-casing for equalizer and rtpmanager as it's not needed any longer. 2007-06-06 15:58:31 +0000 Jan Schmidt sys/glsink/glimagesink.c: Sprinkle in some XSync calls to avoid raciness with broken drivers (ATI) when re-using a si... Original commit message from CVS: * sys/glsink/glimagesink.c: (gst_glimage_sink_stop), (gst_glimage_sink_create_window), (gst_glimage_sink_init_display): Sprinkle in some XSync calls to avoid raciness with broken drivers (ATI) when re-using a single glimagesink. 2007-06-06 11:03:24 +0000 Jan Schmidt gst/mpegvideoparse/: Fix some silly bugs with calculating the guard sizes. Original commit message from CVS: * gst/mpegvideoparse/mpegpacketiser.c: (mpeg_util_parse_extension_packet), (mpeg_util_parse_sequence_hdr), (mpeg_util_parse_picture_hdr): * gst/mpegvideoparse/mpegvideoparse.c: (mpegvideoparse_handle_sequence), (mpegvideoparse_drain_avail): Fix some silly bugs with calculating the guard sizes. Properly compare the old sequence header structure with the new one. Don't error out on an invalid sequence - just ignore it. 2007-06-06 09:11:31 +0000 Tim-Philipp Müller gst/real/gstrealvideodec.c: Printf fix in debug statement; also print the right number there. Original commit message from CVS: * gst/real/gstrealvideodec.c: (gst_real_video_dec_decode): Printf fix in debug statement; also print the right number there. 2007-06-06 08:06:44 +0000 Tim-Philipp Müller ext/sdl/: Add GST_CFLAGS, which apparently somehow fixes the build somewhere (#444499); initialise variable to avoid ... Original commit message from CVS: * ext/sdl/Makefile.am: * ext/sdl/sdlvideosink.c: (gst_sdlv_process_events): Add GST_CFLAGS, which apparently somehow fixes the build somewhere (#444499); initialise variable to avoid false compiler warning. 2007-06-05 14:17:36 +0000 Christian Schaller * gst-plugins-bad.spec.in: fix up spec file Original commit message from CVS: fix up spec file 2007-06-01 14:36:04 +0000 Wim Taymans Add plugin to generate a pattern detectable by videodetect. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-videosignal.xml: * gst/videosignal/Makefile.am: * gst/videosignal/gstvideomark.c: (gst_video_mark_set_caps), (gst_video_mark_draw_box), (gst_video_mark_420), (gst_video_mark_transform_ip), (gst_video_mark_set_property), (gst_video_mark_get_property), (gst_video_mark_base_init), (gst_video_mark_class_init), (gst_video_mark_init), (gst_video_mark_get_type): * gst/videosignal/gstvideomark.h: * gst/videosignal/gstvideosignal.c: (plugin_init): Add plugin to generate a pattern detectable by videodetect. 2007-06-01 11:59:52 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Don't leak buffer when returning an error. Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_create): Don't leak buffer when returning an error. 2007-06-01 09:58:01 +0000 René Stadler ext/neon/gstneonhttpsrc.*: Deprecated "uri" property. Clean up property descriptions. Original commit message from CVS: Patch by René Stadler : * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init), (gst_neonhttp_src_init), (gst_neonhttp_src_dispose), (gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property), (gst_neonhttp_src_start), (gst_neonhttp_src_do_seek), (gst_neonhttp_src_set_location), (gst_neonhttp_src_send_request_and_redirect), (gst_neonhttp_src_uri_get_uri), (gst_neonhttp_src_uri_set_uri): * ext/neon/gstneonhttpsrc.h: Deprecated "uri" property. Clean up property descriptions. Change default User-Agent to the slightly more descriptive "GStreamer neonhttpsrc". Various other small cleanups, mostly property related. 2007-05-31 19:12:37 +0000 Tim-Philipp Müller ext/libmms/gstmms.h: No reason to use gpointers instead of typed pointes here as far as I can see. Original commit message from CVS: * ext/libmms/gstmms.h: No reason to use gpointers instead of typed pointes here as far as I can see. * ext/mythtv/gstmythtvsrc.c: * ext/neon/gstneonhttpsrc.c: * gst/switch/gstswitch.c: Don't use gtk-doc magic markers for things that aren't meant to be parsed by gtk-doc. Makes gtk-doc complain a bit less. 2007-05-30 14:52:07 +0000 Wim Taymans Added videosignal plugin with two plugins to analyse video frames. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-videosignal.xml: * gst/videosignal/Makefile.am: * gst/videosignal/gstvideoanalyse.c: (gst_video_analyse_set_caps), (gst_video_analyse_post_message), (gst_video_analyse_420), (gst_video_analyse_transform_ip), (gst_video_analyse_set_property), (gst_video_analyse_get_property), (gst_video_analyse_base_init), (gst_video_analyse_class_init), (gst_video_analyse_init), (gst_video_analyse_get_type): * gst/videosignal/gstvideoanalyse.h: * gst/videosignal/gstvideodetect.c: (gst_video_detect_set_caps), (gst_video_detect_post_message), (gst_video_detect_calc_brightness), (gst_video_detect_420), (gst_video_detect_transform_ip), (gst_video_detect_set_property), (gst_video_detect_get_property), (gst_video_detect_base_init), (gst_video_detect_class_init), (gst_video_detect_init), (gst_video_detect_get_type): * gst/videosignal/gstvideodetect.h: * gst/videosignal/gstvideosignal.c: (plugin_init): * gst/videosignal/gstvideosignal.h: Added videosignal plugin with two plugins to analyse video frames. Added videoanalyse to report about brightness and variance in video frames. Added videodetect to detect predefined patterns in a video signal. 2007-05-30 09:30:52 +0000 Tim-Philipp Müller docs/plugins/gst-plugins-bad-plugins.*: More updates. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: More updates. 2007-05-30 09:08:24 +0000 Tim-Philipp Müller docs/plugins/: Updates; update inspect info for rtpmanager => gstrtpmanager rename, hopefully that makes the build bo... Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-rtpmanager.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-swfdec.xml: Updates; update inspect info for rtpmanager => gstrtpmanager rename, hopefully that makes the build bots happy again. 2007-05-28 16:37:47 +0000 Wim Taymans Rename elements to avoid conflict with farsight elements with the same name. Fixes #430664. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/rtpmanager/gstrtpbin.c: (create_session), (create_stream), (gst_rtp_bin_class_init), (create_recv_rtp), (create_recv_rtcp), (create_send_rtp), (create_rtcp), (gst_rtp_bin_request_new_pad): * gst/rtpmanager/gstrtpclient.c: (create_stream), (gst_rtp_client_request_new_pad): * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_clear_pt_map), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpmanager.c: (plugin_init): * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_request_new_pad): * gst/rtpmanager/gstrtpssrcdemux.c: Rename elements to avoid conflict with farsight elements with the same name. Fixes #430664. 2007-05-24 08:35:23 +0000 Vincent Torri sys/directdraw/gstdirectdrawsink.*: Fix more warnings when compiling with MingW (#439914). Original commit message from CVS: Patch by: Vincent Torri * sys/directdraw/gstdirectdrawsink.c: (gst_directdraw_sink_buffer_alloc), (gst_directdraw_sink_show_frame), (gst_directdraw_sink_check_primary_surface), (gst_directdraw_sink_check_offscreen_surface), (EnumModesCallback2), (gst_directdraw_sink_get_ddrawcaps), (gst_directdraw_sink_surface_create): * sys/directdraw/gstdirectdrawsink.h: Fix more warnings when compiling with MingW (#439914). 2007-05-23 22:44:12 +0000 Sébastien Moutte docs/plugins/gst-plugins-bad-plugins.args: Remove directsoundsink property doc as this sink use the mixer interface now. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: Remove directsoundsink property doc as this sink use the mixer interface now. * docs/plugins/gst-plugins-bad-plugins.interfaces: Add interfaces implemented by Windows sinks. * sys/directsound/gstdirectsoundsink.c: * sys/directsound/gstdirectsoundsink.h: Remove directsoundsink property and implement the mixer interface. * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libgstdirectsound.dsp: Update project files. * gst-libs/gst/dshow/gstdshow.cpp: * gst-libs/gst/dshow/gstdshow.h: * gst-libs/gst/dshow/gstdshowfakesink.cpp: * gst-libs/gst/dshow/gstdshowfakesink.h: * gst-libs/gst/dshow/gstdshowfakesrc.cpp: * gst-libs/gst/dshow/gstdshowfakesrc.h: * gst-libs/gst/dshow/gstdshowinterface.cpp: * gst-libs/gst/dshow/gstdshowinterface.h: * win32/common/libgstdshow.def: * win32/vs6/libgstdshow.dsp: Add a new gst library which allow to create internal Direct Show graph (pipelines) to wrap Windows sources, decoders or encoders. It includes a DirectShow fake source and sink and utility functions. * sys/dshowsrcwrapper/gstdshowaudiosrc.c: * sys/dshowsrcwrapper/gstdshowaudiosrc.h: * sys/dshowsrcwrapper/gstdshowsrcwrapper.c: * sys/dshowsrcwrapper/gstdshowsrcwrapper.h: * sys/dshowsrcwrapper/gstdshowvideosrc.c: * sys/dshowsrcwrapper/gstdshowvideosrc.h: * win32/vs6/libdshowsrcwrapper.dsp: Add a new plugin to wrap DirectShow sources on Windows. It gets data from any webcam, dv cam, micro. We could add tv tunner card later. 2007-05-23 18:00:15 +0000 René Stadler ext/sdl/sdlvideosink.c: Separate the authors by newlines instead of nothing. Fixes #440774. Original commit message from CVS: Patch by René Stadler : * ext/sdl/sdlvideosink.c: Separate the authors by newlines instead of nothing. Fixes #440774. 2007-05-23 16:14:13 +0000 Wim Taymans docs/plugins/inspect/plugin-rtpmanager.xml: Add doc xml file. Original commit message from CVS: * docs/plugins/inspect/plugin-rtpmanager.xml: Add doc xml file. 2007-05-23 13:08:52 +0000 Wim Taymans Document stuff. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_clear_pt_map), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init), (gst_rtp_pt_demux_clear_pt_map): * gst/rtpmanager/gstrtpptdemux.h: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (rtcp_thread), (gst_rtp_session_clear_pt_map): * gst/rtpmanager/gstrtpsession.h: * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_class_init): Document stuff. Add clear-pt-map action signal where needed. 2007-05-22 11:14:13 +0000 Stefan Kost configure.ac: Depend on gstreamer-0.10.12.1. gst/equalizer/gstiirequalizer.c (ARG_BAND_WIDTH, _do_init, ARG_GAIN, _Gs... Original commit message from CVS: * configure.ac: Depend on gstreamer-0.10.12.1. * gst/equalizer/gstiirequalizer.c (ARG_BAND_WIDTH, _do_init, ARG_GAIN, _GstIirEqualizerBand, object, _GstIirEqualizerBandClass, parent_class, gst_iir_equalizer_band_set_property, gst_iir_equalizer_band_class_init, gst_iir_equalizer_band_get_type, gst_iir_equalizer_child_proxy_get_child_by_index, gst_iir_equalizer_child_proxy_get_children_count, gst_iir_equalizer_child_proxy_interface_init, setup_filter, gst_iir_equalizer_compute_frequencies, gst_iir_equalizer_set_property, gst_iir_equalizer_get_property, plugin_init): * gst/equalizer/gstiirequalizer.h (audiofilter): * gst/equalizer/gstiirequalizernbands.c (ARG_NUM_BANDS, gst_iir_equalizer_nbands_base_init, gst_iir_equalizer_nbands_init, gst_iir_equalizer_nbands_set_property): Use new locking macros. * gst/filter/gstbpwsinc.c (bpwsinc_set_caps): Add fixme. * gst/spectrum/gstspectrum.c (SPECTRUM_WINDOW_BASE, SPECTRUM_WINDOW_LEN, gst_spectrum_init, gst_spectrum_set_property, gst_spectrum_event, gst_spectrum_transform_ip): Use new locking macros. Turn two fixed values into #defines. 2007-05-22 11:03:30 +0000 Edward Hervey docs/plugins/Makefile.am: Also look for .m (objectivec) files. Original commit message from CVS: * docs/plugins/Makefile.am: Also look for .m (objectivec) files. * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * sys/osxvideo/osxvideosink.m: Add documentation for element and properties. 2007-05-21 14:01:16 +0000 Stefan Kost ChangeLog: ChangeLog surgery. gst/equalizer/gstiirequalizer.c (ARG_BAND_WIDTH, _do_init, ARG_GAIN, _GstIirEqualizerBa... Original commit message from CVS: * ChangeLog: ChangeLog surgery. * gst/equalizer/gstiirequalizer.c (ARG_BAND_WIDTH, _do_init, ARG_GAIN, _GstIirEqualizerBand, object, _GstIirEqualizerBandClass, parent_class, gst_iir_equalizer_band_set_property, gst_iir_equalizer_band_class_init, gst_iir_equalizer_band_get_type, gst_iir_equalizer_child_proxy_get_child_by_index, gst_iir_equalizer_child_proxy_get_children_count, gst_iir_equalizer_child_proxy_interface_init, setup_filter, gst_iir_equalizer_compute_frequencies, plugin_init): * tests/icles/equalizer-test.c: Add fixme and comment for example. 2007-05-21 12:43:37 +0000 Stefan Kost * ChangeLog: * gst/spectrum/gstspectrum.c: gst/spectrum/gstspectrum.c (gst_spectrum_set_property, gst_spectrum_event, gst_spectrum_transform_ip): Original commit message from CVS: * gst/spectrum/gstspectrum.c (gst_spectrum_set_property, gst_spectrum_event, gst_spectrum_transform_ip): Use lock to protect from concurrent access. 2007-05-21 11:37:16 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.c: Specify and use properties as unsigned int that are an unsigned int. Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init), (gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property): Specify and use properties as unsigned int that are an unsigned int. 2007-05-21 11:17:21 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.*: Fixup docs, make the bitrate property an int as it should be and allow to set the differ... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init), (gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property): * ext/wavpack/gstwavpackenc.h: Fixup docs, make the bitrate property an int as it should be and allow to set the different extra processing modes instead of only allowing none and the default one. 2007-05-20 21:31:58 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.c: Add missing audioconverts in the example pipelines of wavpackenc. As the wavpack stuff n... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: Add missing audioconverts in the example pipelines of wavpackenc. As the wavpack stuff now needs input with 32 bit width (and random depth) this is needed now. The example pipelines for the parser and decoder are still fine. 2007-05-20 15:12:31 +0000 Thomas Vander Stichele docs/plugins/: Fix docs build and hierarchy. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins.hierarchy: Fix docs build and hierarchy. 2007-05-20 14:59:46 +0000 Tim-Philipp Müller sys/directdraw/gstdirectdrawsink.c: Bunch of small fixes: remove static function that doesn't exist; declare another ... Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c: (gst_ddrawsurface_finalize), (gst_directdraw_sink_buffer_alloc), (gst_directdraw_sink_get_ddrawcaps), (gst_directdraw_sink_surface_create): Bunch of small fixes: remove static function that doesn't exist; declare another one that does; printf format fix; use right macro when specifying debug category; remove a bunch of unused variables; #if 0 out an unused chunk of code (partially fixes #439914). 2007-05-20 14:14:49 +0000 Tim-Philipp Müller gst/: Printf format fixes (#439910, #439911). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_prepare_current_sample): * gst/switch/gstswitch.c: (gst_switch_chain): Printf format fixes (#439910, #439911). 2007-05-19 10:06:02 +0000 Tim-Philipp Müller tests/check/Makefile.am: Remove bits for deinterleave check which isn't in CVS yet. Original commit message from CVS: * tests/check/Makefile.am: Remove bits for deinterleave check which isn't in CVS yet. 2007-05-19 10:01:45 +0000 René Stadler Add replaygain playback elements (#412710). Original commit message from CVS: Patch by: René Stadler * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-replaygain.xml: * gst/replaygain/Makefile.am: * gst/replaygain/gstrganalysis.c: (gst_rg_analysis_class_init), (gst_rg_analysis_start), (gst_rg_analysis_set_caps), (gst_rg_analysis_transform_ip), (gst_rg_analysis_event), (gst_rg_analysis_stop), (gst_rg_analysis_handle_tags), (gst_rg_analysis_handle_eos), (gst_rg_analysis_track_result), (gst_rg_analysis_album_result): * gst/replaygain/gstrganalysis.h: * gst/replaygain/gstrglimiter.c: (gst_rg_limiter_base_init), (gst_rg_limiter_class_init), (gst_rg_limiter_init), (gst_rg_limiter_set_property), (gst_rg_limiter_get_property), (gst_rg_limiter_transform_ip): * gst/replaygain/gstrglimiter.h: * gst/replaygain/gstrgvolume.c: (gst_rg_volume_base_init), (gst_rg_volume_class_init), (gst_rg_volume_init), (gst_rg_volume_set_property), (gst_rg_volume_get_property), (gst_rg_volume_dispose), (gst_rg_volume_change_state), (gst_rg_volume_sink_event), (gst_rg_volume_tag_event), (gst_rg_volume_reset), (gst_rg_volume_update_gain), (gst_rg_volume_determine_gain): * gst/replaygain/gstrgvolume.h: * gst/replaygain/replaygain.c: (plugin_init): * gst/replaygain/replaygain.h: * gst/replaygain/rganalysis.h: * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/rganalysis.c: (send_eos_event), (GST_START_TEST): * tests/check/elements/rglimiter.c: (setup_rglimiter), (cleanup_rglimiter), (set_playing_state), (create_test_buffer), (verify_test_buffer), (GST_START_TEST), (rglimiter_suite), (main): * tests/check/elements/rgvolume.c: (event_func), (setup_rgvolume), (cleanup_rgvolume), (set_playing_state), (set_null_state), (send_eos_event), (send_tag_event), (test_buffer_new), (fail_unless_target_gain), (fail_unless_result_gain), (fail_unless_gain), (GST_START_TEST), (rgvolume_suite), (main): Add replaygain playback elements (#412710). 2007-05-18 16:45:54 +0000 Christian Schaller * gst-plugins-bad.spec.in: update Original commit message from CVS: update 2007-05-18 12:39:49 +0000 Jan Schmidt sys/glsink/glimagesink.c: Update the cached caps after opening the display so that we report only the supported caps ... Original commit message from CVS: * sys/glsink/glimagesink.c: (gst_glimage_sink_init_display): Update the cached caps after opening the display so that we report only the supported caps formats, not just the template caps. Fixes: #439405 2007-05-18 09:35:28 +0000 Stefan Kost * ChangeLog: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: ext/amrwb/gstamrwbdec.c (gst_amrwbdec_debug, GST_CAT_DEFAULT, _do_init, gst_amrwbdec_base_init, gst_amrwbdec_class_in... Original commit message from CVS: * ext/amrwb/gstamrwbdec.c (gst_amrwbdec_debug, GST_CAT_DEFAULT, _do_init, gst_amrwbdec_base_init, gst_amrwbdec_class_init): * ext/amrwb/gstamrwbenc.c (gst_amrwbenc_debug, GST_CAT_DEFAULT, _do_init, gst_amrwbenc_base_init, gst_amrwbenc_class_init): * ext/amrwb/gstamrwbparse.c (gst_amrwbparse_debug, GST_CAT_DEFAULT, _do_init, gst_amrwbparse_base_init, gst_amrwbparse_class_init): First round of cleanups, that use GST_BOILERPLATE, GST_ELEMENT_DETAILS, GST_DEBUG_FUNCPTR and add log-category. 2007-05-17 10:59:00 +0000 Edward Hervey sys/osxvideo/osxvideosink.*: Remove the event-loop-in-separate-thread modifications, because MacOSX is $#@(*%$# ! For... Original commit message from CVS: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: Remove the event-loop-in-separate-thread modifications, because MacOSX is $#@(*%$# ! For those wondering, the event handling needs to be done in the main thread after all.. 2007-05-17 10:08:24 +0000 Zaheer Abbas Merali * ChangeLog: * gst/switch/gstswitch.c: * gst/switch/gstswitch.h: gst/switch/gstswitch.c (ARG_0, ARG_NB_SOURCES, ARG_ACTIVE_SOURCE, Original commit message from CVS: * gst/switch/gstswitch.c (ARG_0, ARG_NB_SOURCES, ARG_ACTIVE_SOURCE, ARG_START_VALUE, ARG_STOP_VALUE, ARG_LAST_TS, ARG_QUEUE_BUFFERS, parent_class, gst_switch_release_pad, gst_switch_request_new_pad, gst_switch_chain, gst_switch_event, gst_switch_set_property, gst_switch_get_property, gst_switch_getcaps, gst_switch_dispose, unref_buffer, unref_buffers_and_destroy_list, gst_switch_init, gst_switch_base_init, gst_switch_class_init): * gst/switch/gstswitch.h (need_to_send_newsegment, queue_buffers, stop_value, start_value, current_start, last_ts, stored_buffers): Add handling of application provided stop and start values, allowing A/V sync across 2 switch elements. 2007-05-17 09:41:48 +0000 Edward Hervey sys/osxvideo/osxvideosink.*: Fix a stupid #if vs #ifdef bug. Should use the proper colorspace now. Original commit message from CVS: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: Fix a stupid #if vs #ifdef bug. Should use the proper colorspace now. Use a separate thread/task for the cocoa event_loop, else it wouldn't stop. 2007-05-16 17:14:43 +0000 Tim-Philipp Müller gst/real/: Don't crash when we get a buffer and our input caps haven't been set yet; also, don't leak all the input b... Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_chain), (gst_real_audio_dec_setcaps): * gst/real/gstrealvideodec.c: (gst_real_video_dec_chain): Don't crash when we get a buffer and our input caps haven't been set yet; also, don't leak all the input buffers (realaudiodec only). 2007-05-16 13:50:51 +0000 Stanislav Brabec Use external shared libamrwb. Fixes #423741 (with lots of cleanup). Original commit message from CVS: patch by: Stanislav Brabec * configure.ac: * ext/amrwb/Makefile.am: * ext/amrwb/amrwb-code/Makefile.am: * ext/amrwb/amrwb-code/amrwb/Makefile.am: * ext/amrwb/amrwb-code/amrwb/README: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbdec.h (__GST_AMRWBDEC_H__): * ext/amrwb/gstamrwbenc.h (__GST_AMRWBENC_H__): * ext/amrwb/gstamrwbparse.c: * ext/amrwb/gstamrwbparse.h (__GST_AMRWBPARSE_H__): * gst-libs/Makefile.am: * gst-libs/ext/Makefile.am: * gst-libs/ext/amrwb/Makefile.am: * gst-libs/ext/amrwb/README: Use external shared libamrwb. Fixes #423741 (with lots of cleanup). 2007-05-15 21:23:53 +0000 Stefan Kost ext/x264/gstx264enc.c (gst_x264_enc_init_encoder): This needs a version check. Original commit message from CVS: * ext/x264/gstx264enc.c (gst_x264_enc_init_encoder): This needs a version check. * gst/bayer/Makefile.am: Fix the build. 2007-05-15 17:22:58 +0000 Tim-Philipp Müller Add DIRECTDRAW_CFLAGS and DIRECTSOUND_CFLAGS to Makefile.am; save and restore the various flags in the directdraw/dir... Original commit message from CVS: * configure.ac: * sys/directdraw/Makefile.am: * sys/directsound/Makefile.am: Add DIRECTDRAW_CFLAGS and DIRECTSOUND_CFLAGS to Makefile.am; save and restore the various flags in the directdraw/directsound detection section. Apparently improves cross-compiling for win32 with mingw32 under some circumstances (#437539). 2007-05-15 13:29:53 +0000 Wim Taymans gst/rtpmanager/gstrtpptdemux.c: We always use fixed caps. Original commit message from CVS: * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): We always use fixed caps. 2007-05-15 03:45:45 +0000 David Schleef gst/rtpmanager/gstrtpbin.c: g_hash_table_remove_all() only exists in 2.12. Work around. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: g_hash_table_remove_all() only exists in 2.12. Work around. 2007-05-15 02:54:52 +0000 David Schleef Add a Bayer-to-RGB converter. You know you want one, uh-huh. Original commit message from CVS: * configure.ac: * gst/bayer/Makefile.am: * gst/bayer/gstbayer.c: * gst/bayer/gstbayer2rgb.c: Add a Bayer-to-RGB converter. You know you want one, uh-huh. Partial fix for #314160. 2007-05-14 18:03:58 +0000 Zaheer Abbas Merali * ChangeLog: * gst/switch/gstswitch.c: * gst/switch/gstswitch.h: gst/switch/gstswitch.c (ARG_ACTIVE_SOURCE, ARG_STOP_VALUE, Original commit message from CVS: * gst/switch/gstswitch.c (ARG_ACTIVE_SOURCE, ARG_STOP_VALUE, ARG_LAST_TS, parent_class, gst_switch_release_pad, gst_switch_request_new_pad, gst_switch_chain, gst_switch_event, gst_switch_set_property, gst_switch_get_property, gst_switch_getcaps, gst_switch_dispose, gst_switch_init, gst_switch_class_init): * gst/switch/gstswitch.h (previous_sinkpad, nb_sinkpads, stop_value, current_start, last_ts): Allow application to provide a stop timestamp, so a new segment update can be sent before switching. 2007-05-14 15:28:36 +0000 Wim Taymans gst/rtpmanager/async_jitter_queue.c: Fix leak when flushing. Original commit message from CVS: * gst/rtpmanager/async_jitter_queue.c: (async_jitter_queue_set_flushing_unlocked): Fix leak when flushing. * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_clear_pt_map), (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: Add clear-pt-map signal. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_loop): Init clock-rate to -1 to mark unknow clock rate. Fix flushing. 2007-05-13 19:57:45 +0000 David Schleef gst/replaygain/rganalysis.c: Fix wrong ifdef for visual C++. Fixes: #437403. Original commit message from CVS: * gst/replaygain/rganalysis.c: Fix wrong ifdef for visual C++. Fixes: #437403. By Ali Sabil . 2007-05-13 07:08:06 +0000 David Schleef ext/neon/gstneonhttpsrc.c: Make redirection the default behavior. Fixes #413818. Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: Make redirection the default behavior. Fixes #413818. 2007-05-11 11:20:33 +0000 Christian Schaller * gst-plugins-bad.spec.in: add latest plugin Original commit message from CVS: add latest plugin 2007-05-10 14:02:07 +0000 Stefan Kost gst/qtdemux/qtdemux.c (gst_qtdemux_move_stream, gst_qtdemux_loop_state_header, gst_qtdemux_activate_segment, gst_qtde... Original commit message from CVS: * gst/qtdemux/qtdemux.c (gst_qtdemux_move_stream, gst_qtdemux_loop_state_header, gst_qtdemux_activate_segment, gst_qtdemux_prepare_current_sample, gst_qtdemux_combine_flows, gst_qtdemux_loop_state_movie, gst_qtdemux_loop, qtdemux_parse_segments, qtdemux_parse_trak): * gst/rtpmanager/rtpsession.c (rtp_session_get_bandwidth, rtp_session_get_rtcp_bandwidth, rtp_session_get_cname, rtp_session_get_name, rtp_session_get_email, rtp_session_get_phone, rtp_session_get_location, rtp_session_get_tool, rtp_session_process_bye, session_report_blocks): * gst/rtpmanager/rtpsource.c (rtp_source_process_rtp, rtp_source_send_rtp, rtp_source_process_sr, rtp_source_process_rb): More format arg fixing (spotted by Ali Sabil ). * gst/switch/Makefile.am: Add require libraries(spotted by Ali Sabil ). 2007-05-10 12:38:49 +0000 Stefan Kost * ChangeLog: * common: * gst/rtpmanager/async_jitter_queue.c: gst/rtpmanager/async_jitter_queue.c (tail_buffer_duration, async_jitter_queue_ref, async_jitter_queue_ref_unlocked, a... Original commit message from CVS: * gst/rtpmanager/async_jitter_queue.c (tail_buffer_duration, async_jitter_queue_ref, async_jitter_queue_ref_unlocked, async_jitter_queue_set_low_threshold, async_jitter_queue_length_ts_units_unlocked, async_jitter_queue_unref_and_unlock, async_jitter_queue_unref, async_jitter_queue_lock, async_jitter_queue_push, async_jitter_queue_push_unlocked, async_jitter_queue_push_sorted, async_jitter_queue_pop_intern_unlocked, async_jitter_queue_pop, async_jitter_queue_pop_unlocked, async_jitter_queue_length_unlocked, async_jitter_queue_set_flushing_unlocked, async_jitter_queue_unset_flushing_unlocked): Format arg fix (spotted by Ali Sabil ) 2007-05-10 07:41:47 +0000 Stefan Kost common/m4/gst-x11.m4: Restore CFLAGS and LIBS. Original commit message from CVS: * common/m4/gst-x11.m4: Restore CFLAGS and LIBS. * configure.ac: Revert previous patch. 2007-05-10 06:35:31 +0000 Ali Sabil configure.ac: Save and restore CFLAGS for OpenGL check. Fixes #437260. Original commit message from CVS: Patch by: Ali Sabil * configure.ac: Save and restore CFLAGS for OpenGL check. Fixes #437260. 2007-05-09 20:01:21 +0000 Sébastien Moutte docs/plugins/gst-plugins-bad-plugins.args: Add directraw and directsound sinks properties. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: Add directraw and directsound sinks properties. 2007-05-09 17:58:07 +0000 Tim-Philipp Müller configure.ac: Fix --disable-external (hopefully). Original commit message from CVS: * configure.ac: Fix --disable-external (hopefully). 2007-05-09 11:24:22 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Pass queries upstream. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_query): Pass queries upstream. 2007-05-06 15:25:05 +0000 Tim-Philipp Müller gst/real/: Use GModule instead of using dlsym() directly. Fixes #430598. Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps), (gst_real_audio_dec_finalize): * gst/real/gstrealaudiodec.h: * gst/real/gstrealvideodec.c: (open_library), (close_library): * gst/real/gstrealvideodec.h: Use GModule instead of using dlsym() directly. Fixes #430598. 2007-05-04 21:02:58 +0000 Sébastien Moutte docs/plugins/: Add docs for Windows sinks. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: Add docs for Windows sinks. 2007-05-04 17:20:31 +0000 Tim-Philipp Müller gst/speed/gstspeed.c: Fix event handling a bit by replacing completely dubious code written by someone else with comp... Original commit message from CVS: * gst/speed/gstspeed.c: (speed_src_event), (speed_sink_event), (speed_chain), (speed_change_state): Fix event handling a bit by replacing completely dubious code written by someone else with completely dubious code written by me. Should at least fix #412077 though. 2007-05-04 16:11:46 +0000 Tim-Philipp Müller gst/speed/gstspeed.c: Add debug category; use gst_pad_query_peer_*() utility functions; use gst_util_scale*(); add gt... Original commit message from CVS: * gst/speed/gstspeed.c: (speed_src_query), (speed_chain), (plugin_init): Add debug category; use gst_pad_query_peer_*() utility functions; use gst_util_scale*(); add gtk-doc blurb. 2007-05-04 12:32:27 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Add some debug info. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_query): Add some debug info. * gst/rtpmanager/rtpsession.c: (rtp_session_init), (rtp_session_send_rtp): Store real user name in the session. 2007-05-03 16:49:05 +0000 Zaheer Abbas Merali examples/switch/switcher.c (loop, my_bus_callback, switch_timer, last_message_received, main): gst/switch/gstswitch.c... Original commit message from CVS: * configure.ac: * examples/Makefile.am: * examples/switch/switcher.c (loop, my_bus_callback, switch_timer, last_message_received, main): * gst/switch/gstswitch.c (GST_CAT_DEFAULT, gst_switch_details, gst_switch_src_factory, parent_class, gst_switch_release_pad, gst_switch_request_new_pad, gst_switch_chain, gst_switch_event, gst_switch_set_property, gst_switch_get_property, gst_switch_get_linked_pad, gst_switch_getcaps, gst_switch_bufferalloc, gst_switch_get_linked_pads, gst_switch_dispose, gst_switch_init, gst_switch_base_init, gst_switch_class_init): * gst/switch/gstswitch.h (GstSwitch, GstSwitchClass, _GstSwitch, element, active_sinkpad, srcpad, nb_sinkpads, newsegment_events, need_to_send_newsegment): Port switch element and example program to 0.10. 2007-05-02 18:31:16 +0000 Sebastian Dröge ext/wavpack/gstwavpack.c: Call bindtextdomain() to get localized strings. Original commit message from CVS: * ext/wavpack/gstwavpack.c: (plugin_init): Call bindtextdomain() to get localized strings. * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset), (gst_wavpack_parse_handle_seek_event), (gst_wavpack_parse_push_buffer), (gst_wavpack_parse_chain): * ext/wavpack/gstwavpackparse.h: Handle DISCONT buffers by correctly setting the DISCONT flag on outgoing buffers when necessary. * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_handle_seek_event) Send newsegment from the streaming thread. 2007-05-02 16:58:06 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Remove old workaround that was needed when seeking after the last sample. With the fix... Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_handle_seek_event): Remove old workaround that was needed when seeking after the last sample. With the fixed error handling this works now as expected without pushing the last sample although it wasn't requested. 2007-05-02 16:45:43 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Handle segment seeks in the seek event handler, correctly work with stop position == -... Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_handle_seek_event): Handle segment seeks in the seek event handler, correctly work with stop position == -1 and instead of stopping the task on seek just pause it. 2007-05-02 16:19:58 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Add handling for segment seeks. Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_loop): Add handling for segment seeks. 2007-05-02 15:13:04 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Correctly handle errors, especially in the loop function. Before it was easy to get th... Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_pull_buffer), (gst_wavpack_parse_create_src_pad), (gst_wavpack_parse_resync_loop), (gst_wavpack_parse_loop), (gst_wavpack_parse_chain): Correctly handle errors, especially in the loop function. Before it was easy to get the task paused but no error being posted on the bus. 2007-04-30 15:39:09 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec Original commit message from CVS: update spec 2007-04-30 13:41:30 +0000 Wim Taymans gst/rtpmanager/async_jitter_queue.c: Fix the case where the buffer underruns and does not block. Original commit message from CVS: * gst/rtpmanager/async_jitter_queue.c: (signal_waiting_threads), (async_jitter_queue_pop_intern_unlocked): Fix the case where the buffer underruns and does not block. * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_base_init), (create_recv_rtcp), (create_send_rtp), (create_rtcp), (gst_rtp_bin_request_new_pad): Rename RTCP send pad, like in the session manager. Allow getting an RTCP pad for receiving even if we don't receive RTP. fix handling of send_rtp_src pad. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): When no pt map could be found, fall back to the sinkpad caps. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_process_rtp), (gst_rtp_session_send_rtp), (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink), (create_send_rtcp_src): Fix pad names. * gst/rtpmanager/rtpsession.c: (source_push_rtp), (rtp_session_create_source), (rtp_session_process_sr), (rtp_session_send_rtp), (session_start_rtcp): * gst/rtpmanager/rtpsession.h: Unlock session when performing a callback. Add callbacks for the internal session object. Fix sending of RTP packets. first attempt at adding NTP times in the SR packets. Small debug and doc improvements. * gst/rtpmanager/rtpsource.c: (rtp_source_send_rtp): Update stats for SR reports. 2007-04-29 14:46:27 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Remove debug. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_send_rtcp): Remove debug. * gst/rtpmanager/rtpsession.c: (rtp_session_process_sr), (rtp_session_process_sdes), (calculate_rtcp_interval), (rtp_session_next_timeout), (session_report_blocks): * gst/rtpmanager/rtpstats.c: (rtp_stats_calculate_rtcp_interval): Improve debugging Fix interval for BYE/RTCP packets. 2007-04-29 14:01:05 +0000 Thomas Vander Stichele docs/plugins/gst-plugins-bad-plugins.*: Commit result of running scanobj-update Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: Commit result of running scanobj-update 2007-04-29 13:56:18 +0000 Thomas Vander Stichele * sys/directdraw/gstdirectdrawsink.c: * sys/osxvideo/osxvideosink.m: 80 char police Original commit message from CVS: 80 char police 2007-04-29 13:53:17 +0000 Thomas Vander Stichele autogen.sh: Require automake 1.7 Original commit message from CVS: * autogen.sh: Require automake 1.7 * ext/alsaspdif/Makefile.am: * ext/divx/Makefile.am: * ext/ivorbis/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/neon/Makefile.am: * ext/sdl/Makefile.am: * ext/swfdec/Makefile.am: * ext/theora/Makefile.am: * ext/wavpack/Makefile.am: * ext/xvid/Makefile.am: * gst/modplug/Makefile.am: Fix up Makefile.am accordingly. 2007-04-29 13:49:02 +0000 Thomas Vander Stichele docs/plugins/inspect/: Add jack and update. Original commit message from CVS: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spectrum.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Add jack and update. 2007-04-28 12:46:47 +0000 Tim-Philipp Müller configure.ac: Don't build equalizer unless we have core from CVS (it won't work with earlier versions due to GstChild... Original commit message from CVS: * configure.ac: Don't build equalizer unless we have core from CVS (it won't work with earlier versions due to GstChildProxy brokeness). Also up requirements to last released core/base. 2007-04-27 15:33:46 +0000 Julien Moutte ext/theora/theoradec.c: Calculate buffer duration correctly to generate a perfect stream (#433888). Original commit message from CVS: 2007-04-27 Julien MOUTTE * ext/theora/theoradec.c: (_theora_granule_time), (theora_dec_push_forward), (theora_handle_data_packet), (theora_dec_decode_buffer): Calculate buffer duration correctly to generate a perfect stream (#433888). * gst/audioresample/gstaudioresample.c: (audioresample_check_discont): Glib provides ABS. 2007-04-27 15:09:12 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Move reconsideration code to the rtpsession object. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), (gst_rtp_session_send_rtcp), (gst_rtp_session_reconsider): Move reconsideration code to the rtpsession object. Simplify timout handling and add reconsideration. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (rtp_session_init), (rtp_session_finalize), (on_bye_ssrc), (on_bye_timeout), (on_timeout), (rtp_session_set_callbacks), (obtain_source), (rtp_session_create_source), (update_arrival_stats), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_rr), (rtp_session_process_bye), (rtp_session_process_rtcp), (calculate_rtcp_interval), (rtp_session_send_bye), (rtp_session_next_timeout), (session_start_rtcp), (session_report_blocks), (session_cleanup), (session_sdes), (session_bye), (is_rtcp_time), (rtp_session_on_timeout): * gst/rtpmanager/rtpsession.h: Handle timeout of inactive sources and senders. Implement BYE scheduling. * gst/rtpmanager/rtpsource.c: (calculate_jitter), (rtp_source_process_sr), (rtp_source_get_last_sr), (rtp_source_get_last_rb): * gst/rtpmanager/rtpsource.h: Add members to check for timeouts. * gst/rtpmanager/rtpstats.c: (rtp_stats_init_defaults), (rtp_stats_calculate_rtcp_interval), (rtp_stats_add_rtcp_jitter), (rtp_stats_calculate_bye_interval): * gst/rtpmanager/rtpstats.h: Use RFC algorithm for calculating the reporting interval. 2007-04-26 14:31:32 +0000 Edward Hervey docs/plugins/: Add documentation for osxvideo Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-osxvideo.xml: Add documentation for osxvideo 2007-04-25 16:38:03 +0000 Wim Taymans gst/rtpmanager/gstrtpsession.c: Implement forward and reverse reconsideration. Original commit message from CVS: * gst/rtpmanager/gstrtpsession.c: (rtcp_thread): Implement forward and reverse reconsideration. * gst/rtpmanager/rtpsession.c: (rtp_session_get_num_sources), (rtp_session_get_num_active_sources), (rtp_session_process_sr), (session_report_blocks): * gst/rtpmanager/rtpsession.h: Small cleanups. 2007-04-25 15:48:46 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.*: Make default jitterbuffer latency configurable. Original commit message from CVS: reviewed by: * gst/rtpmanager/gstrtpbin.c: (create_stream), (gst_rtp_bin_class_init), (gst_rtp_bin_set_property), (gst_rtp_bin_get_property): * gst/rtpmanager/gstrtpbin.h: Make default jitterbuffer latency configurable. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): Debuging cleanups. 2007-04-25 13:19:36 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Report NO_PREROLL when going to PAUSED. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_change_state): Report NO_PREROLL when going to PAUSED. * gst/rtpmanager/gstrtpsession.c: (rtcp_thread): Don't send RTCP right before we are shutting down. * gst/rtpmanager/rtpsession.c: (rtp_session_process_rtp), (rtp_session_process_sr), (session_report_blocks), (rtp_session_perform_reporting): Improve report blocks. * gst/rtpmanager/rtpsource.c: (calculate_jitter), (init_seq), (rtp_source_process_rtp), (rtp_source_process_sr), (rtp_source_process_rb), (rtp_source_get_last_sr), (rtp_source_get_last_rb): * gst/rtpmanager/rtpsource.h: * gst/rtpmanager/rtpstats.h: Cleanups, add methods to access stats. 2007-04-25 08:30:48 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: fix for pad name change Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_rtcp): fix for pad name change * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), (gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate): Fix for renamed methods. * gst/rtpmanager/rtpsession.c: (rtp_session_init), (rtp_session_finalize), (rtp_session_set_cname), (rtp_session_get_cname), (rtp_session_set_name), (rtp_session_get_name), (rtp_session_set_email), (rtp_session_get_email), (rtp_session_set_phone), (rtp_session_get_phone), (rtp_session_set_location), (rtp_session_get_location), (rtp_session_set_tool), (rtp_session_get_tool), (rtp_session_set_note), (rtp_session_get_note), (source_push_rtp), (obtain_source), (rtp_session_add_source), (rtp_session_get_source_by_ssrc), (rtp_session_create_source), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_sdes), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_get_reporting_interval), (session_report_blocks), (session_sdes), (rtp_session_perform_reporting): * gst/rtpmanager/rtpsession.h: Prepare for implementing SSRC sampling. Create SSRC for the session. Add methods to set the SDES entries. fix accounting of senders/receivers. Implement SR/RR/SDES RTCP reporting. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (init_seq), (rtp_source_process_rtp), (rtp_source_process_sr): * gst/rtpmanager/rtpsource.h: Implement extended sequence number. * gst/rtpmanager/rtpstats.c: (rtp_stats_calculate_rtcp_interval): * gst/rtpmanager/rtpstats.h: Rename some fields. 2007-04-24 15:49:18 +0000 Tim-Philipp Müller Plug some leaks; try to make build bot happy again. Original commit message from CVS: * gst/y4m/gsty4mencode.c: (gst_y4m_encode_init), (gst_y4m_encode_setcaps): * tests/check/elements/y4menc.c: (GST_START_TEST): Plug some leaks; try to make build bot happy again. 2007-04-21 19:39:03 +0000 Tim-Philipp Müller gst/Makefile.am: Fix distcheck, hopefully (rtpmanager is already in GST_PLUGINS_ALL). Original commit message from CVS: * gst/Makefile.am: Fix distcheck, hopefully (rtpmanager is already in GST_PLUGINS_ALL). 2007-04-21 19:21:49 +0000 Tim-Philipp Müller gst/rtpmanager/rtpsession.c: Don't use GLib-2.10 API, we only require GLib 2.8 at the moment. Original commit message from CVS: * gst/rtpmanager/rtpsession.c: (rtp_session_finalize): Don't use GLib-2.10 API, we only require GLib 2.8 at the moment. 2007-04-21 14:14:24 +0000 Tim-Philipp Müller gst/audioresample/gstaudioresample.c: Make more functions static, just because we can. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Make more functions static, just because we can. 2007-04-21 13:54:39 +0000 Tim-Philipp Müller tests/check/elements/audioresample.c: Add unit test for audioresample shutdown crasher (#420106). Original commit message from CVS: * tests/check/elements/audioresample.c: Add unit test for audioresample shutdown crasher (#420106). 2007-04-20 15:31:32 +0000 Michael Smith ext/faad/gstfaad.c: FAAD fails to decode low (e.g. 8 kHz) sample rate AAC data in quicktime because of sample rate mi... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_open_decoder): FAAD fails to decode low (e.g. 8 kHz) sample rate AAC data in quicktime because of sample rate mismatches. Reenable overriding the implicit SBR behaviour (accidently changed?) to allow playback of these files. 2007-04-19 15:43:26 +0000 David Schleef configure.ac: Change rtpmanager disabling to keep -bad releasable. Original commit message from CVS: * configure.ac: Change rtpmanager disabling to keep -bad releasable. 2007-04-18 19:45:32 +0000 David Schleef Fix wtay's hack. rtpmanager is disabled in configure.ac on line 268. Original commit message from CVS: * configure.ac: * gst/Makefile.am: Fix wtay's hack. rtpmanager is disabled in configure.ac on line 268. 2007-04-18 19:26:52 +0000 Wim Taymans gst/Makefile.am: Add rtpmanager dir to dist. Original commit message from CVS: * gst/Makefile.am: Add rtpmanager dir to dist. 2007-04-18 18:58:53 +0000 Wim Taymans configure.ac: Disable rtpmanager for now because it depends on CVS -base. Original commit message from CVS: * configure.ac: Disable rtpmanager for now because it depends on CVS -base. * gst/rtpmanager/Makefile.am: Added new files for session manager. * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (create_stream), (pt_map_requested), (new_ssrc_pad_found): Some cleanups. the session manager can now also request a pt-map. * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_base_init), (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_finalize), (rtcp_thread), (start_rtcp_thread), (stop_rtcp_thread), (gst_rtp_session_change_state), (gst_rtp_session_process_rtp), (gst_rtp_session_send_rtp), (gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate), (gst_rtp_session_get_time), (gst_rtp_session_event_recv_rtp_sink), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_event_recv_rtcp_sink), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp), (create_send_rtcp_src), (gst_rtp_session_request_new_pad): * gst/rtpmanager/gstrtpsession.h: We can ask for pt-map now too when the session manager needs it. Hook up to the new session manager, implement the needed callbacks for pushing data, getting clock time and requesting clock-rates. Rename rtcp_src to send_rtcp_src to make it clear that this RTCP is to be send to clients. Add code to start and stop the thread that will schedule RTCP through the session manager. * gst/rtpmanager/rtpsession.c: (rtp_session_class_init), (rtp_session_init), (rtp_session_finalize), (rtp_session_set_property), (rtp_session_get_property), (on_new_ssrc), (on_ssrc_collision), (on_ssrc_validated), (on_bye_ssrc), (rtp_session_new), (rtp_session_set_callbacks), (rtp_session_set_bandwidth), (rtp_session_get_bandwidth), (rtp_session_set_rtcp_bandwidth), (rtp_session_get_rtcp_bandwidth), (source_push_rtp), (source_clock_rate), (check_collision), (obtain_source), (rtp_session_add_source), (rtp_session_get_num_sources), (rtp_session_get_num_active_sources), (rtp_session_get_source_by_ssrc), (rtp_session_get_source_by_cname), (rtp_session_create_source), (update_arrival_stats), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_rr), (rtp_session_process_sdes), (rtp_session_process_bye), (rtp_session_process_app), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_get_rtcp_interval), (rtp_session_produce_rtcp): * gst/rtpmanager/rtpsession.h: The advanced beginnings of the main session manager that handles the participant database of RTPSources, SSRC probation, SSRC collisions, parse RTCP to update source stats. etc.. * gst/rtpmanager/rtpsource.c: (rtp_source_class_init), (rtp_source_init), (rtp_source_finalize), (rtp_source_new), (rtp_source_set_callbacks), (rtp_source_set_as_csrc), (rtp_source_set_rtp_from), (rtp_source_set_rtcp_from), (push_packet), (get_clock_rate), (calculate_jitter), (rtp_source_process_rtp), (rtp_source_process_bye), (rtp_source_send_rtp), (rtp_source_process_sr), (rtp_source_process_rb): * gst/rtpmanager/rtpsource.h: Object that encapsulates an SSRC and its state in the database. Calculates the jitter and transit times of data packets. * gst/rtpmanager/rtpstats.c: (rtp_stats_init_defaults), (rtp_stats_calculate_rtcp_interval), (rtp_stats_add_rtcp_jitter): * gst/rtpmanager/rtpstats.h: Various stats regarding the session and sources. Used to calculate the RTCP interval. 2007-04-17 10:56:37 +0000 Tim-Philipp Müller gst/app/Makefile.am: Fix CFLAGS and hopefully #430594. Original commit message from CVS: * gst/app/Makefile.am: Fix CFLAGS and hopefully #430594. 2007-04-17 08:48:34 +0000 Tim-Philipp Müller gst/nsf/types.h: Rename #ifndef header guard symbol to something less generic, so types.h doesn't get skipped over wh... Original commit message from CVS: * gst/nsf/types.h: Rename #ifndef header guard symbol to something less generic, so types.h doesn't get skipped over when compiling on MingW. Include GLib headers and use those to set the endianness and the basic types so that this isn't entirely broken for non-x86 architectures. 2007-04-17 08:04:43 +0000 Tim-Philipp Müller gst/mve/gstmvedemux.c: Use G_LITTLE_ENDIAN instead of LITTLE_ENDIAN, so stuff compiles on Original commit message from CVS: * gst/mve/gstmvedemux.c: (gst_mve_audio_init): Use G_LITTLE_ENDIAN instead of LITTLE_ENDIAN, so stuff compiles on MingW (no idea though why we add a BYTE_ORDER endianness field if the audio is compressed). 2007-04-16 22:20:03 +0000 Vincent Torri ext/pango/gstclockoverlay.c: Fix unused variable warning if HAVE_LOCALTIME_R is undefinied Original commit message from CVS: Patch by: Vincent Torri * ext/pango/gstclockoverlay.c: (gst_clock_overlay_render_time): Fix unused variable warning if HAVE_LOCALTIME_R is undefinied * gst-libs/gst/riff/riff-media.c: (gst_riff_create_audio_caps): * gst/audioresample/gstaudioresample.c: (audioresample_do_output): Use the correct format strings for integer formats. 2007-04-14 17:18:14 +0000 Sébastien Moutte docs/plugins/inspect/: Add xml doc files for Windows sinks Original commit message from CVS: * docs/plugins/inspect/plugin-directdraw.xml: * docs/plugins/inspect/plugin-directsound.xml: * docs/plugins/inspect/plugin-waveform.xml: Add xml doc files for Windows sinks * win32/vs6/libgstqtdemux.dsp: * win32/vs6/libgstmpegvideoparse.dsp: * win32/vs6/gst_plugins_bad.dsw: Update projects files. 2007-04-13 09:20:55 +0000 Wim Taymans gst/rtpmanager/: Protect lists and structures with locks. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (gst_rtp_bin_init), (gst_rtp_bin_finalize), (new_ssrc_pad_found), (create_recv_rtp), (gst_rtp_bin_request_new_pad): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_finalize), (gst_rtp_session_event_recv_rtp_sink), (gst_rtp_session_event_recv_rtcp_sink), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_request_new_pad): Protect lists and structures with locks. Return FLOW_OK from RTCP messages for now. 2007-04-12 10:52:02 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Make timescale 32 bits again so we don't screw up the pts_offset calculations. Original commit message from CVS: * gst/qtdemux/qtdemux.c: Make timescale 32 bits again so we don't screw up the pts_offset calculations. 2007-04-12 08:18:32 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Emit pt map requests and cache results. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (create_stream), (gst_rtp_bin_class_init), (pt_map_requested): Emit pt map requests and cache results. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_parse_caps), (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_get_clock_rate), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): Emit request-pt-map signals. 2007-04-11 13:49:54 +0000 Wim Taymans gst/rtpmanager/gstrtpbin-marshal.list: Some more custom marshallers. Original commit message from CVS: * gst/rtpmanager/gstrtpbin-marshal.list: Some more custom marshallers. * gst/rtpmanager/gstrtpbin.c: (create_session), (get_pt_map), (clock_rate_request), (create_stream), (gst_rtp_bin_class_init), (pt_map_requested), (new_ssrc_pad_found), (create_recv_rtp): * gst/rtpmanager/gstrtpbin.h: Prepare for caching pt maps. Connect to signals to collect pt maps. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_class_init), (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_loop): * gst/rtpmanager/gstrtpjitterbuffer.h: Add request_clock_rate signal. Use scale insteat of scale_int because the later does not deal with negative numbers. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init), (gst_rtp_pt_demux_chain): * gst/rtpmanager/gstrtpptdemux.h: Implement request-pt-map signal. 2007-04-11 09:53:38 +0000 Wim Taymans gst/qtdemux/: Handle version 1 mdhd atoms to get extended precision durations. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (qtdemux_parse_samples), (qtdemux_parse_segments), (qtdemux_parse_trak), (qtdemux_parse_tree): * gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_mdhd): Handle version 1 mdhd atoms to get extended precision durations. Fixes #426972. 2007-04-10 09:14:07 +0000 Wim Taymans gst/rtpmanager/: Added custom marshallers for signals. Original commit message from CVS: * gst/rtpmanager/.cvsignore: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/gstrtpbin-marshal.list: Added custom marshallers for signals. * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init): * gst/rtpmanager/gstrtpbin.h: Prepare for emiting pt map signals. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_class_init): * gst/rtpmanager/gstrtpssrcdemux.c: (gst_rtp_ssrc_demux_class_init): Fix signals. 2007-04-06 12:28:29 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.*: Provide a clock. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_class_init), (gst_rtp_bin_init), (gst_rtp_bin_provide_clock): * gst/rtpmanager/gstrtpbin.h: Provide a clock. 2007-04-06 12:07:30 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.c: Fix pad template name parsing. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_rtcp): Fix pad template name parsing. 2007-04-05 16:10:24 +0000 Wim Taymans gst/rtpmanager/gstrtpjitterbuffer.c: Add some debug and comments. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_setcaps), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop): Add some debug and comments. Fix double unref() in error cases. 2007-04-05 15:05:24 +0000 Wim Taymans gst/qtdemux/gstrtpxqtdepay.*: Try to recover from packet loss a little better. Original commit message from CVS: * gst/qtdemux/gstrtpxqtdepay.c: (gst_rtp_xqt_depay_process), (gst_rtp_xqt_depay_change_state): * gst/qtdemux/gstrtpxqtdepay.h: Try to recover from packet loss a little better. 2007-04-05 13:54:23 +0000 Wim Taymans gst/rtpmanager/gstrtpbin.*: Add debugging category. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (find_session_by_id), (create_session), (find_stream_by_ssrc), (create_stream), (gst_rtp_bin_class_init), (new_payload_found), (new_ssrc_pad_found), (create_recv_rtp), (create_recv_rtcp), (create_send_rtp), (create_rtcp): * gst/rtpmanager/gstrtpbin.h: Add debugging category. Added RTPStream to manage stream per SSRC, each with its own jitterbuffer and ptdemux. Added SSRCDemux. Connect to various SSRC and PT signals and create ghostpads, link stuff. * gst/rtpmanager/gstrtpmanager.c: (plugin_init): Added rtpbin to elements. * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_chain): Fix caps and forward GstFlowReturn * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_class_init), (gst_rtp_session_event_recv_rtp_sink), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_event_recv_rtcp_sink), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_event_send_rtp_sink), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink), (create_rtcp_src), (gst_rtp_session_request_new_pad): Add debug category. Add event handling * gst/rtpmanager/gstrtpssrcdemux.c: (find_rtp_pad_for_ssrc), (create_rtp_pad_for_ssrc), (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_change_state): * gst/rtpmanager/gstrtpssrcdemux.h: Add debug category. Add new-pt-pad signal. 2007-04-05 13:49:21 +0000 Thomas Vander Stichele * po/nl.po: update dutch Original commit message from CVS: update dutch 2007-04-05 13:45:15 +0000 Thomas Vander Stichele po/: Added Danish translation. Original commit message from CVS: submitted by: Mogens Jaeger * po/LINGUAS: * po/da.po: Added Danish translation. 2007-04-04 10:23:15 +0000 Wim Taymans gst/rtpmanager/: Added simple SSRC demuxer. Original commit message from CVS: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/gstrtpmanager.c: (plugin_init): * gst/rtpmanager/gstrtpssrcdemux.c: (find_pad_for_ssrc), (create_pad_for_ssrc), (gst_rtp_ssrc_demux_base_init), (gst_rtp_ssrc_demux_class_init), (gst_rtp_ssrc_demux_init), (gst_rtp_ssrc_demux_finalize), (gst_rtp_ssrc_demux_sink_event), (gst_rtp_ssrc_demux_chain), (gst_rtp_ssrc_demux_src_event), (gst_rtp_ssrc_demux_change_state): * gst/rtpmanager/gstrtpssrcdemux.h: Added simple SSRC demuxer. 2007-04-04 07:36:28 +0000 Stefan Kost ext/jack/gstjackaudiosink.c: Try t better name clients. properly handle return codes when re- establishing links. Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (gst_jack_ring_buffer_open_device), (gst_jack_ring_buffer_acquire): Try t better name clients. properly handle return codes when re- establishing links. 2007-04-03 22:36:47 +0000 David Schleef sys/glsink/glimagesink.c: Fix handling of video/x-raw-yuv. Add overlay handling. Original commit message from CVS: * sys/glsink/glimagesink.c: Fix handling of video/x-raw-yuv. Add overlay handling. 2007-04-03 13:27:21 +0000 Christian Schaller * gst-plugins-bad.spec.in: update with rtp plugin Original commit message from CVS: update with rtp plugin 2007-04-03 11:35:39 +0000 Wim Taymans gst/rtpmanager/: Some more ghostpad magic. Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (find_session_by_id), (create_session), (gst_rtp_bin_base_init), (create_recv_rtp), (create_recv_rtcp), (create_send_rtp), (create_rtcp), (gst_rtp_bin_request_new_pad): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: Some more ghostpad magic. 2007-04-03 09:51:13 +0000 Wim Taymans gst/rtpmanager/Makefile.am: Add .h file so it can be disted properly. Original commit message from CVS: * gst/rtpmanager/Makefile.am: Add .h file so it can be disted properly. 2007-04-03 09:13:17 +0000 Wim Taymans Add RTP session management elements. Still in progress. Original commit message from CVS: * configure.ac: * gst/rtpmanager/Makefile.am: * gst/rtpmanager/async_jitter_queue.c: (async_jitter_queue_new), (signal_waiting_threads), (async_jitter_queue_ref), (async_jitter_queue_ref_unlocked), (async_jitter_queue_set_low_threshold), (async_jitter_queue_set_high_threshold), (async_jitter_queue_set_max_queue_length), (async_jitter_queue_get_g_queue), (calculate_ts_diff), (async_jitter_queue_length_ts_units_unlocked), (async_jitter_queue_unref_and_unlock), (async_jitter_queue_unref), (async_jitter_queue_lock), (async_jitter_queue_unlock), (async_jitter_queue_push), (async_jitter_queue_push_unlocked), (async_jitter_queue_push_sorted), (async_jitter_queue_push_sorted_unlocked), (async_jitter_queue_insert_after_unlocked), (async_jitter_queue_pop_intern_unlocked), (async_jitter_queue_pop), (async_jitter_queue_pop_unlocked), (async_jitter_queue_length), (async_jitter_queue_length_unlocked), (async_jitter_queue_set_flushing_unlocked), (async_jitter_queue_unset_flushing_unlocked), (async_jitter_queue_set_blocking_unlocked): * gst/rtpmanager/async_jitter_queue.h: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_base_init), (gst_rtp_bin_class_init), (gst_rtp_bin_init), (gst_rtp_bin_finalize), (gst_rtp_bin_set_property), (gst_rtp_bin_get_property), (gst_rtp_bin_change_state), (gst_rtp_bin_request_new_pad), (gst_rtp_bin_release_pad): * gst/rtpmanager/gstrtpbin.h: * gst/rtpmanager/gstrtpclient.c: (new_pad), (create_stream), (free_stream), (find_stream_by_ssrc), (gst_rtp_client_base_init), (gst_rtp_client_class_init), (gst_rtp_client_init), (gst_rtp_client_finalize), (gst_rtp_client_set_property), (gst_rtp_client_get_property), (gst_rtp_client_change_state), (gst_rtp_client_request_new_pad), (gst_rtp_client_release_pad): * gst/rtpmanager/gstrtpclient.h: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_base_init), (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_init), (gst_rtp_jitter_buffer_dispose), (gst_rtp_jitter_buffer_getcaps), (gst_jitter_buffer_sink_setcaps), (free_func), (gst_rtp_jitter_buffer_flush_start), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_src_activate_push), (gst_rtp_jitter_buffer_change_state), (priv_compare_rtp_seq_lt), (compare_rtp_buffers_seq_num), (gst_rtp_jitter_buffer_sink_event), (gst_rtp_jitter_buffer_chain), (gst_rtp_jitter_buffer_loop), (gst_rtp_jitter_buffer_query), (gst_rtp_jitter_buffer_set_property), (gst_rtp_jitter_buffer_get_property): * gst/rtpmanager/gstrtpjitterbuffer.h: * gst/rtpmanager/gstrtpmanager.c: (plugin_init): * gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_base_init), (gst_rtp_pt_demux_class_init), (gst_rtp_pt_demux_init), (gst_rtp_pt_demux_finalize), (gst_rtp_pt_demux_chain), (gst_rtp_pt_demux_getcaps), (find_pad_for_pt), (gst_rtp_pt_demux_setup), (gst_rtp_pt_demux_release), (gst_rtp_pt_demux_change_state): * gst/rtpmanager/gstrtpptdemux.h: * gst/rtpmanager/gstrtpsession.c: (gst_rtp_session_base_init), (gst_rtp_session_class_init), (gst_rtp_session_init), (gst_rtp_session_finalize), (gst_rtp_session_set_property), (gst_rtp_session_get_property), (gst_rtp_session_change_state), (gst_rtp_session_chain_recv_rtp), (gst_rtp_session_chain_recv_rtcp), (gst_rtp_session_chain_send_rtp), (create_recv_rtp_sink), (create_recv_rtcp_sink), (create_send_rtp_sink), (create_rtcp_src), (gst_rtp_session_request_new_pad), (gst_rtp_session_release_pad): * gst/rtpmanager/gstrtpsession.h: Add RTP session management elements. Still in progress. 2007-03-30 04:50:11 +0000 Sebastian Dröge ext/wavpack/: Don't play audioconvert. As wavpack wants/outputs all samples with width==32 and depth=[1,32] accept th... Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset), (gst_wavpack_dec_init), (gst_wavpack_dec_sink_set_caps), (gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_post_tags), (gst_wavpack_dec_chain): * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_reset), (gst_wavpack_enc_sink_set_caps), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_chain): * ext/wavpack/gstwavpackenc.h: * ext/wavpack/gstwavpackparse.c: Don't play audioconvert. As wavpack wants/outputs all samples with width==32 and depth=[1,32] accept this and let audioconvert convert to accepted formats instead of doing it in the element for n*8 depths. This also adds support for non-n*8 depths and prevents some useless memory allocations. Fixes #421598 Also add a workaround for bug #421542 in wavpackenc for now... * tests/check/elements/wavpackdec.c: (GST_START_TEST): * tests/check/elements/wavpackenc.c: (GST_START_TEST): * tests/check/elements/wavpackparse.c: (GST_START_TEST): Consider the change above in the unit tests and test if the correct caps are accepted and set. Also check for GST_BUFFER_OFFSET_END in the wavpackparse unit test. * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_init), (gst_wavpack_dec_sink_set_caps): Set caps on the src pad as soon as possible. * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackcommon.h: * ext/wavpack/gstwavpackenc.h: * ext/wavpack/gstwavpackparse.h: Fix indention. gst-indent is now called by cicl. 2007-03-28 15:17:27 +0000 Edward Hervey gst/qtdemux/: Process 'ctts' atoms, which are present in AVC ISO files (.mov files with h264 video). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_prepare_current_sample), (gst_qtdemux_chain), (qtdemux_parse_samples): * gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_ctts): * gst/qtdemux/qtdemux_dump.h: * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: Process 'ctts' atoms, which are present in AVC ISO files (.mov files with h264 video). Use the offset present in 'ctts' to calculate the PTS for each packet and set the PTS on outgoing buffers. Fixes #423283 2007-03-27 18:00:56 +0000 Julien Moutte ext/xvid/gstxviddec.c: Add some debug log and fix a stupid output buffer duration bug. Original commit message from CVS: 2007-03-27 Julien MOUTTE * ext/xvid/gstxviddec.c: (gst_xviddec_chain): Add some debug log and fix a stupid output buffer duration bug. 2007-03-26 14:49:47 +0000 Christian Schaller * common: * gst-plugins-bad.spec.in: update spec file for x264 encoder Original commit message from CVS: update spec file for x264 encoder 2007-03-25 13:06:26 +0000 Michal Benes Add libx264-based h264 encoder plugin (#421110). Probably doesn't handle 'odd' widths and heights correctly yet. Original commit message from CVS: Patch by: Michal Benes Patch by: Josef Zlomek * configure.ac: * ext/Makefile.am: * ext/x264/Makefile.am: * ext/x264/gstx264enc.c: (gst_x264_enc_me_get_type), (gst_x264_enc_analyse_get_type), (gst_x264_enc_timestamp_queue_init), (gst_x264_enc_timestamp_queue_free), (gst_x264_enc_timestamp_queue_put), (gst_x264_enc_timestamp_queue_get), (gst_x264_enc_header_buf), (gst_x264_enc_set_src_caps), (gst_x264_enc_sink_set_caps), (gst_x264_enc_base_init), (gst_x264_enc_class_init), (gst_x264_enc_init), (gst_x264_enc_init_encoder), (gst_x264_enc_close_encoder), (gst_x264_enc_dispose), (gst_x264_enc_sink_event), (gst_x264_enc_chain), (gst_x264_enc_encode_frame), (gst_x264_enc_change_state), (gst_x264_enc_set_property), (gst_x264_enc_get_property), (plugin_init): * ext/x264/gstx264enc.h: Add libx264-based h264 encoder plugin (#421110). Probably doesn't handle 'odd' widths and heights correctly yet. 2007-03-24 19:46:59 +0000 Tim-Philipp Müller gst/interleave/deinterleave.c: Remove 'channel-positions' field when munging input caps into 1-channel output caps (I... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_sink_setcaps): Remove 'channel-positions' field when munging input caps into 1-channel output caps (I guess technically we should set the position for each channel on the output caps if it's non-NONE, but I'll save that as a task for another day). 2007-03-23 18:41:52 +0000 Michael Smith gst/vmnc/vmncdec.c: Redesign to include a parser for raw files (no timestamps in that mode yet, though). Original commit message from CVS: * gst/vmnc/vmncdec.c: (gst_vmnc_dec_class_init), (gst_vmnc_dec_init), (vmnc_dec_finalize), (gst_vmnc_dec_reset), (vmnc_handle_wmvi_rectangle), (render_colour_cursor), (render_cursor), (vmnc_make_buffer), (vmnc_handle_wmvd_rectangle), (vmnc_handle_wmve_rectangle), (vmnc_handle_wmvf_rectangle), (vmnc_handle_wmvg_rectangle), (vmnc_handle_wmvh_rectangle), (vmnc_handle_wmvj_rectangle), (render_raw_tile), (render_subrect), (vmnc_handle_raw_rectangle), (vmnc_handle_copy_rectangle), (vmnc_handle_hextile_rectangle), (vmnc_handle_packet), (vmnc_dec_setcaps), (vmnc_dec_chain_frame), (vmnc_dec_chain), (vmnc_dec_set_property), (vmnc_dec_get_property): Redesign to include a parser for raw files (no timestamps in that mode yet, though). 2007-03-22 22:14:29 +0000 Tim-Philipp Müller gst/interleave/deinterleave.c: Don't leak input buffer in chain function; maintain our own list of source pads - ther... Original commit message from CVS: * gst/interleave/deinterleave.c: (gst_deinterleave_add_new_pads), (gst_deinterleave_remove_pads), (gst_deinterleave_process), (gst_deinterleave_chain): Don't leak input buffer in chain function; maintain our own list of source pads - there are no guarantees about the order of the list in the GstElement struct, and we want a very specific order; lastly, some more debugging. 2007-03-22 21:07:02 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Alloc user agent string only once. Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_init): Alloc user agent string only once. 2007-03-22 16:25:56 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Revert last commit, preventing infinite plugging loops with ranks is no clean solution... Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init): Revert last commit, preventing infinite plugging loops with ranks is no clean solution and in general there's no reason why one wants to parse framed wavpack data again. 2007-03-22 15:52:51 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.c: Send the new segment event in time format instead of bytes. This allows "wavpackenc ! wa... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_push_block): Send the new segment event in time format instead of bytes. This allows "wavpackenc ! wavpackdec ! someaudiosink" pipelines. * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init): Accept framed and non-framed input, wavpackparse doesn't care. To prevent "wavpackparse ! wavpackparse ! ..." pipelines lower the rank of wavpackparse by one. This allows "wavpackenc ! wavpackparse ! ..." pipelines. 2007-03-22 14:37:08 +0000 Thomas Vander Stichele gst-libs/gst/app/Makefile.am: Use GST_ALL_LDFLAGS, which actually exists, but maybe David can confirm that was what h... Original commit message from CVS: * gst-libs/gst/app/Makefile.am: Use GST_ALL_LDFLAGS, which actually exists, but maybe David can confirm that was what he wanted. 2007-03-22 11:08:03 +0000 Sebastian Dröge ext/wavpack/gstwavpackdec.c: Revert to use gst_pad_alloc_buffer() here. We can and should use it. Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain): Revert to use gst_pad_alloc_buffer() here. We can and should use it. Thanks to Jan and Mike for noticing my mistake. 2007-03-22 00:17:41 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.*: Put the write helpers into the GstWavpackEnc struct directly and not as a pointer to sav... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init), (gst_wavpack_enc_init), (gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block): * ext/wavpack/gstwavpackenc.h: Put the write helpers into the GstWavpackEnc struct directly and not as a pointer to save two small, but useless mallocs. This also makes it possible to drop the finalize method. * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_push_buffer): For consistency reasons also set GST_BUFFER_OFFSET_END on the outgoing buffers the same way wavpackenc does it. 2007-03-21 23:50:09 +0000 Sebastian Dröge ext/wavpack/gstwavpackdec.c: Don't use gst_pad_alloc_buffer() as we might clip the buffer later and Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain): Don't use gst_pad_alloc_buffer() as we might clip the buffer later and BaseTransform-based elements will likely break because of wrong unit-size. Also plug a possible memleak that happens when decoding fails for some reason. 2007-03-18 17:57:48 +0000 Paul Davis ext/jack/gstjackaudioclient.c: Don't need to take the connection lock, it will not be used and could cause deadlocks. Original commit message from CVS: Based on patch by: Paul Davis * ext/jack/gstjackaudioclient.c: (gst_jack_audio_unref_connection): Don't need to take the connection lock, it will not be used and could cause deadlocks. 2007-03-16 18:38:18 +0000 Edward Hervey sys/osxvideo/osxvideosink.m: Fix previous commit, we want to pass the NSView in the message. Original commit message from CVS: * sys/osxvideo/osxvideosink.m: Fix previous commit, we want to pass the NSView in the message. 2007-03-16 16:27:20 +0000 Edward Hervey sys/osxvideo/osxvideosink.m: Emit 'have-ns-view' message when working in embedded mode. The message will contain a po... Original commit message from CVS: * sys/osxvideo/osxvideosink.m: Emit 'have-ns-view' message when working in embedded mode. The message will contain a pointer to the newly created NSView. 2007-03-16 11:22:47 +0000 Jan Schmidt gst/mpegvideoparse/: Move the MPEG specific byte parsing into the mpegpacketiser code. Original commit message from CVS: * gst/mpegvideoparse/mpegpacketiser.c: (mpeg_util_find_start_code), (collect_packets), (set_par_from_dar), (set_fps_from_code), (mpeg_util_parse_extension_packet), (mpeg_util_parse_sequence_hdr), (mpeg_util_parse_picture_hdr): * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: (mpegvideoparse_handle_sequence), (mpegvideoparse_handle_picture), (mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain), (mpv_parse_sink_event), (plugin_init): * gst/mpegvideoparse/mpegvideoparse.h: Move the MPEG specific byte parsing into the mpegpacketiser code. Add parsing of picture types, that just feeds into a debug message for now. Fix some 64-bit format strings. 2007-03-16 10:15:48 +0000 Stefan Kost * ChangeLog: Changelog surgery Original commit message from CVS: Changelog surgery 2007-03-16 09:57:40 +0000 Stefan Kost gst/equalizer/gstiirequalizer10bands.c: A 10 band EQ should be initialized to 1 bands and not to 3. Original commit message from CVS: * gst/equalizer/gstiirequalizer10bands.c: (gst_iir_equalizer_10bands_init): A 10 band EQ should be initialized to 1 bands and not to 3. 2007-03-15 20:48:08 +0000 Jan Schmidt Port mpeg1videoparse to 0.10 and give it rank SECONDARY-1, so that it's below existing decoders. Original commit message from CVS: * configure.ac: * gst/mpeg1videoparse/Makefile.am: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg1videoparse/mp1videoparse.vcproj: * gst/mpegvideoparse/Makefile.am: * gst/mpegvideoparse/mpegpacketiser.c: (mpeg_packetiser_init), (mpeg_packetiser_free), (mpeg_packetiser_add_buf), (mpeg_packetiser_flush), (mpeg_find_start_code), (get_next_free_block), (complete_current_block), (append_to_current_block), (start_new_block), (handle_packet), (collect_packets), (mpeg_packetiser_handle_eos), (mpeg_packetiser_get_block), (mpeg_packetiser_next_block): * gst/mpegvideoparse/mpegpacketiser.h: * gst/mpegvideoparse/mpegvideoparse.c: (mpegvideoparse_get_type), (gst_mpegvideoparse_base_init), (gst_mpegvideoparse_class_init), (mpv_parse_reset), (gst_mpegvideoparse_init), (gst_mpegvideoparse_dispose), (set_par_from_dar), (set_fps_from_code), (mpegvideoparse_parse_seq), (gst_mpegvideoparse_time_code), (gst_mpegvideoparse_flush), (mpegvideoparse_drain_avail), (gst_mpegvideoparse_chain), (mpv_parse_sink_event), (gst_mpegvideoparse_change_state), (plugin_init): * gst/mpegvideoparse/mpegvideoparse.h: * gst/mpegvideoparse/mpegvideoparse.vcproj: Port mpeg1videoparse to 0.10 and give it rank SECONDARY-1, so that it's below existing decoders. Rename it to mpegvideoparse to reflect that it handles MPEG-1 and MPEG-2 now. Re-write the parsing code so that it collects packets differently and timestamps Picture packets correctly. Add a list of FIXME's at the top. 2007-03-15 10:52:21 +0000 Michael Smith gst/audioresample/gstaudioresample.c: Don't trigger discontinuities for very small imperfections; a filter flush will... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (audioresample_check_discont), (audioresample_transform): Don't trigger discontinuities for very small imperfections; a filter flush will sound bad, and many plugins have rounding errors leading to these. 2007-03-14 17:16:30 +0000 Julien Moutte gst/audioresample/gstaudioresample.c: Handle discontinuous streams. Original commit message from CVS: 2007-03-14 Julien MOUTTE * gst/audioresample/gstaudioresample.c: (gst_audioresample_init), (audioresample_transform_size), (audioresample_do_output), (audioresample_transform), (audioresample_pushthrough): Handle discontinuous streams. * gst/audioresample/gstaudioresample.h: * tests/check/elements/audioresample.c: (test_discont_stream_instance), (GST_START_TEST), (audioresample_suite): Add a test for discontinuous streams. * win32/common/config.h: Updated. 2007-03-14 16:33:03 +0000 Stefan Kost tests/icles/equalizer-test.c: Port the example to new equalizer api. Original commit message from CVS: * tests/icles/equalizer-test.c: (equalizer_set_band_value), (equalizer_set_all_band_values), (equalizer_set_band_value_and_wait), (equalizer_set_all_band_values_and_wait), (do_slider_fiddling), (main): Port the example to new equalizer api. 2007-03-14 16:30:19 +0000 Edward Hervey sys/osxvideo/: Fix leaks when running a NSApp. Original commit message from CVS: * sys/osxvideo/cocoawindow.h: * sys/osxvideo/cocoawindow.m: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: Fix leaks when running a NSApp. Accept any kind of resolutions. Works in fullscreen. Can maximize. Only thing left before being able to move this to -good is documentation and embedded window support. 2007-03-14 15:33:25 +0000 Thomas Vander Stichele po/: Updated translations. Original commit message from CVS: * po/hu.po: * po/it.po: * po/sv.po: Updated translations. 2007-03-14 14:48:12 +0000 Thomas Vander Stichele gst/audioresample/: Since I really am not interested in a debug line for each sample being processed, move the librar... Original commit message from CVS: * gst/audioresample/debug.h: * gst/audioresample/resample.c: (resample_init): Since I really am not interested in a debug line for each sample being processed, move the library's debugging to its own category, libaudioresample 2007-03-14 14:48:08 +0000 Stefan Kost gst/equalizer/: Add 3 and 10 band version and add missing gst_object_sync_values. Original commit message from CVS: * gst/equalizer/Makefile.am: * gst/equalizer/gstiirequalizer.c: (_do_init), (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_band_class_init), (gst_iir_equalizer_band_get_type), (gst_iir_equalizer_child_proxy_get_child_by_index), (gst_iir_equalizer_child_proxy_get_children_count), (gst_iir_equalizer_child_proxy_interface_init), (setup_filter), (gst_iir_equalizer_compute_frequencies), (gst_iir_equalizer_transform_ip), (plugin_init): * gst/equalizer/gstiirequalizer10bands.c: (gst_iir_equalizer_10bands_base_init), (gst_iir_equalizer_10bands_class_init), (gst_iir_equalizer_10bands_init), (gst_iir_equalizer_10bands_set_property), (gst_iir_equalizer_10bands_get_property): * gst/equalizer/gstiirequalizer10bands.h: * gst/equalizer/gstiirequalizer3bands.c: (gst_iir_equalizer_3bands_base_init), (gst_iir_equalizer_3bands_class_init), (gst_iir_equalizer_3bands_init), (gst_iir_equalizer_3bands_set_property), (gst_iir_equalizer_3bands_get_property): * gst/equalizer/gstiirequalizer3bands.h: * gst/equalizer/gstiirequalizernbands.c: (gst_iir_equalizer_nbands_base_init), (gst_iir_equalizer_nbands_init): Add 3 and 10 band version and add missing gst_object_sync_values. * gst/spectrum/gstspectrum.c: (gst_spectrum_event), (gst_spectrum_transform_ip): Add some comments about float support. 2007-03-14 14:09:21 +0000 Thomas Vander Stichele * gst/audioresample/gstaudioresample.c: add debugging and reformat docs Original commit message from CVS: add debugging and reformat docs 2007-03-13 18:01:47 +0000 Jan Schmidt gst/mpegaudioparse/: Remove bogus 2nd copy of mp3parse - it's actually in -ugly. Original commit message from CVS: * gst/mpegaudioparse/Makefile.am: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/mpegaudioparse/mpegaudioparse.vcproj: Remove bogus 2nd copy of mp3parse - it's actually in -ugly. 2007-03-12 11:47:42 +0000 Jan Schmidt examples/app/.cvsignore: The buildbot demands .cvsignore files, and I comply. Original commit message from CVS: * examples/app/.cvsignore: The buildbot demands .cvsignore files, and I comply. 2007-03-11 22:23:04 +0000 Sébastien Moutte sys/directdraw/gstdirectdrawsink.*: Handle display mode changes during playback. Original commit message from CVS: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: Handle display mode changes during playback. 2007-03-11 00:48:26 +0000 David Schleef Add appsrc/appsink example. Original commit message from CVS: * configure.ac: * examples/Makefile.am: * examples/app/Makefile.am: * examples/app/appsrc_ex.c: Add appsrc/appsink example. * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp.c: * gst-libs/gst/app/gstappsink.c: * gst-libs/gst/app/gstappsink.h: * gst/app/gstapp.c: Add appsink. 2007-03-10 20:10:09 +0000 Tim-Philipp Müller ext/: Printf format string fixes. Original commit message from CVS: * ext/nas/nassink.c: (NAS_createFlow): * ext/sndfile/gstsfsrc.c: (gst_sf_src_create): Printf format string fixes. 2007-03-09 08:58:26 +0000 Stefan Kost gst/equalizer/: Refactor plugin into a base class and a first subclass (nband eq). The nband eq uses GstChildProxy an... Original commit message from CVS: * gst/equalizer/Makefile.am: * gst/equalizer/gstiirequalizer.c: (_do_init), (gst_iir_equalizer_band_set_property), (gst_iir_equalizer_band_get_property), (gst_iir_equalizer_band_class_init), (gst_iir_equalizer_band_get_type), (gst_iir_equalizer_child_proxy_get_child_by_index), (gst_iir_equalizer_child_proxy_get_children_count), (gst_iir_equalizer_child_proxy_interface_init), (gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init), (gst_iir_equalizer_finalize), (setup_filter), (gst_iir_equalizer_compute_frequencies), (gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property), (gst_iir_equalizer_setup), (plugin_init): * gst/equalizer/gstiirequalizer.h: * gst/equalizer/gstiirequalizernbands.c: (gst_iir_equalizer_nbands_base_init), (gst_iir_equalizer_nbands_class_init), (gst_iir_equalizer_nbands_init), (gst_iir_equalizer_nbands_set_property), (gst_iir_equalizer_nbands_get_property): * gst/equalizer/gstiirequalizernbands.h: Refactor plugin into a base class and a first subclass (nband eq). The nband eq uses GstChildProxy and is controlable. More subclasses will follow. 2007-03-08 15:24:52 +0000 Paul Davis ext/jack/: Make an object to manage client connections to the jack server which we will use in the future to run sele... Original commit message from CVS: Includes patch by: Paul Davis * ext/jack/Makefile.am: * ext/jack/gstjackaudioclient.c: (gst_jack_audio_client_init), (jack_process_cb), (jack_sample_rate_cb), (jack_buffer_size_cb), (jack_shutdown_cb), (connection_find), (gst_jack_audio_make_connection), (gst_jack_audio_get_connection), (gst_jack_audio_unref_connection), (gst_jack_audio_connection_add_client), (gst_jack_audio_connection_remove_client), (gst_jack_audio_client_new), (gst_jack_audio_client_free), (gst_jack_audio_client_get_client), (gst_jack_audio_client_set_active): * ext/jack/gstjackaudioclient.h: Make an object to manage client connections to the jack server which we will use in the future to run selected jack elements with the same jack connection. Make some stuff a bit more threadsafe. Activate the jack client ASAP. * ext/jack/gstjackaudiosink.c: (gst_jack_audio_sink_allocate_channels), (gst_jack_audio_sink_free_channels), (jack_process_cb), (gst_jack_ring_buffer_open_device), (gst_jack_ring_buffer_close_device), (gst_jack_ring_buffer_acquire), (gst_jack_ring_buffer_release), (gst_jack_audio_sink_class_init), (gst_jack_audio_sink_init), (gst_jack_audio_sink_getcaps): * ext/jack/gstjackaudiosink.h: Use new client object to manage connections. Don't remove and recreate all ports, try to reuse them. 2007-03-07 12:07:07 +0000 Sebastian Dröge ext/wavpack/: Use a general wavpack debug category for common code. Original commit message from CVS: * ext/wavpack/gstwavpack.c: (plugin_init): * ext/wavpack/gstwavpackcommon.c: Use a general wavpack debug category for common code. * ext/wavpack/gstwavpackstreamreader.c: (gst_wavpack_stream_reader_set_pos_abs), (gst_wavpack_stream_reader_set_pos_rel), (gst_wavpack_stream_reader_write_bytes): Use the general wavpack debug category here too and add debug output to the functions that should not be called at all by the wavpack library. * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_plugin_init): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_plugin_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_plugin_init): Change debugging category names to conform to the conventions. 2007-03-07 11:37:23 +0000 Edward Hervey gst/qtdemux/qtdemux.*: Share qtdemux debug category across all files, otherwise all debugging in files other than qtd... Original commit message from CVS: * gst/qtdemux/qtdemux.c: * gst/qtdemux/qtdemux.h: Share qtdemux debug category across all files, otherwise all debugging in files other than qtdemux.c would end up in the default category. 2007-03-07 11:23:20 +0000 Stefan Kost gst/spectrum/gstspectrum.*: One FIXME less, by resolving message timestamps against the playback segment. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_start), (gst_spectrum_event), (gst_spectrum_transform_ip): * gst/spectrum/gstspectrum.h: One FIXME less, by resolving message timestamps against the playback segment. 2007-03-06 13:57:55 +0000 Wim Taymans gst/spectrum/gstspectrum.c: Fix and cleanup default property values. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_set_property), (gst_spectrum_transform_ip): Fix and cleanup default property values. Add FIXMEs for stuff that looks rather wrong. 2007-03-05 08:30:52 +0000 Stefan Kost gst/spectrum/: Remove two obsolete and confusing comments. Original commit message from CVS: * gst/spectrum/demo-audiotest.c: (message_handler): * gst/spectrum/demo-osssrc.c: (message_handler): Remove two obsolete and confusing comments. 2007-03-04 21:36:50 +0000 Tim-Philipp Müller ext/nas/nassink.c: Some more cleanups/changes; use boilerplate macro. Original commit message from CVS: * ext/nas/nassink.c: (gst_nas_sink_class_init), (gst_nas_sink_init), (gst_nas_sink_getcaps), (gst_nas_sink_unprepare): Some more cleanups/changes; use boilerplate macro. 2007-03-04 20:35:26 +0000 Tim-Philipp Müller ext/nas/: Bunch of nassink clean-ups: make build by adding the right CFLAGS and LIBS to Makefile.am; rename structure... Original commit message from CVS: * ext/nas/Makefile.am: * ext/nas/README: * ext/nas/nassink.c: (gst_nas_sink_get_type), (gst_nas_sink_base_init), (gst_nas_sink_class_init), (gst_nas_sink_init), (gst_nas_sink_finalize), (gst_nas_sink_getcaps), (gst_nas_sink_prepare), (gst_nas_sink_unprepare), (gst_nas_sink_delay), (gst_nas_sink_reset), (gst_nas_sink_write), (gst_nas_sink_set_property), (gst_nas_sink_get_property), (gst_nas_sink_open), (gst_nas_sink_close), (NAS_flush), (NAS_sendData), (NAS_EventHandler), (gst_nas_sink_sink_get_format), (NAS_createFlow), (plugin_init): * ext/nas/nassink.h: Bunch of nassink clean-ups: make build by adding the right CFLAGS and LIBS to Makefile.am; rename structure, macros and functions according to canonical naming scheme; move some things around a bit; use GST_CAT_DEFAULT instead of GST_CAT_* everywhere; remove README file that didn't really contain any useful information anyway (the useful bits have been moved into the 'host' property description). 2007-03-04 16:38:39 +0000 Jan Schmidt ext/directfb/dfbvideosink.c: Chain up in finalize. Original commit message from CVS: * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_finalize): Chain up in finalize. 2007-03-03 22:28:03 +0000 Michael Smith Fix up dist. Original commit message from CVS: * configure.ac: * gst/vmnc/Makefile.am: Fix up dist. 2007-03-03 22:13:22 +0000 Michael Smith Add VMnc decoder. Original commit message from CVS: * configure.ac: * gst/vmnc/Makefile.am: * gst/vmnc/vmncdec.c: (gst_vmnc_dec_base_init), (gst_vmnc_dec_class_init), (gst_vmnc_dec_init), (gst_vmnc_dec_reset), (vmnc_handle_wmvi_rectangle), (render_colour_cursor), (render_cursor), (vmnc_make_buffer), (vmnc_handle_wmvd_rectangle), (vmnc_handle_wmve_rectangle), (vmnc_handle_wmvf_rectangle), (vmnc_handle_wmvg_rectangle), (vmnc_handle_wmvh_rectangle), (vmnc_handle_wmvj_rectangle), (render_raw_tile), (render_subrect), (vmnc_handle_raw_rectangle), (vmnc_handle_hextile_rectangle), (vmnc_handle_packet), (vmnc_dec_setcaps), (vmnc_dec_chain), (vmnc_dec_change_state), (vmnc_dec_set_property), (vmnc_dec_get_property), (plugin_init): Add VMnc decoder. Still missing support for: - rectangle types I didn't find in my samples (e.g. copy, RRE, ZRLE) - alpha-composited cursors 2007-03-03 10:23:03 +0000 David Schleef gst-libs/gst/app/Makefile.am: Install the headers. Original commit message from CVS: * gst-libs/gst/app/Makefile.am: Install the headers. 2007-03-03 10:10:30 +0000 David Schleef gst-libs/gst/app/: Add GstAppBuffer that includes a callback and closure for proper handling of data chunks. Original commit message from CVS: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstappbuffer.c: * gst-libs/gst/app/gstappbuffer.h: * gst-libs/gst/app/gstappsrc.c: Add GstAppBuffer that includes a callback and closure for proper handling of data chunks. 2007-03-03 09:06:06 +0000 David Schleef gst-libs/gst/app/gstappsrc.*: Hacking to address issues in 413418. Original commit message from CVS: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: Hacking to address issues in 413418. 2007-03-03 08:16:57 +0000 David Schleef Move the app library to gst-libs/gst/app (duh!) Original commit message from CVS: * Makefile.am: * configure.ac: * ext/Makefile.am: * gst-libs/gst/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/app/gstapp.c: * gst-libs/gst/app/gstappsrc.c: * gst-libs/gst/app/gstappsrc.h: * gst/app/Makefile.am: * gst/app/gstapp.c: * gst/app/gstappsrc.c: * gst/app/gstappsrc.h: Move the app library to gst-libs/gst/app (duh!) 2007-03-02 19:43:48 +0000 Christian Schaller * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/nas/nassink.c: * ext/nas/nassink.h: Commit NAS Sink, closed bugzilla 345633 Original commit message from CVS: Commit NAS Sink, closed bugzilla 345633 2007-03-02 18:24:14 +0000 Tim-Philipp Müller ext/dts/gstdtsdec.c: A few small clean-ups. Original commit message from CVS: * ext/dts/gstdtsdec.c: (gst_dtsdec_init), (gst_dtsdec_sink_event): A few small clean-ups. * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_setcaps): More debug output for failure cases. 2007-03-02 18:10:06 +0000 Young-Ho Cha ext/dts/gstdtsdec.c: Don't do forced downmixing to stereo, but check what downstream can do and let libdts do the dow... Original commit message from CVS: Patch by: Young-Ho Cha * ext/dts/gstdtsdec.c: (gst_dtsdec_handle_frame), (gst_dtsdec_change_state): Don't do forced downmixing to stereo, but check what downstream can do and let libdts do the downmixing based on that (#400555). 2007-03-02 13:33:39 +0000 Jan Schmidt * ChangeLog: Remove spurious conflict marker Original commit message from CVS: Remove spurious conflict marker 2007-03-02 12:04:02 +0000 Lutz Mueller ext/neon/gstneonhttpsrc.*: Simplify _set_uri() and _set_proxy() and remove the unused ishttp member (#388050). Original commit message from CVS: Patch by: Lutz Mueller * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init), (gst_neonhttp_src_init), (gst_neonhttp_src_set_property), (gst_neonhttp_src_set_uri), (gst_neonhttp_src_set_proxy), (gst_neonhttp_src_send_request_and_redirect), (gst_neonhttp_src_uri_set_uri): * ext/neon/gstneonhttpsrc.h: Simplify _set_uri() and _set_proxy() and remove the unused ishttp member (#388050). * tests/check/elements/neonhttpsrc.c: (GST_START_TEST): Fix bogus URI to something that actually exists, otherwise we just bypass the test (and also to something that doesn't redirect, since neonhttpsrc doesn't seem to handle this very gracefully yet) 2007-03-02 11:14:33 +0000 Christian Schaller * ChangeLog: * configure.ac: * ext/ivorbis/Makefile.am: * ext/ivorbis/vorbis.c: * ext/ivorbis/vorbisdec.c: * ext/ivorbis/vorbisdec.h: Add patch from Bug 357055 from Chris Lord, adding support for Vorbis streams Original commit message from CVS: Add patch from Bug 357055 from Chris Lord, adding support for Vorbis streams 2007-03-01 17:27:34 +0000 Jan Schmidt tests/check/Makefile.am: Draw plugins in from the build tree sys/ dir, rather than picking up the already installed v... Original commit message from CVS: * tests/check/Makefile.am: Draw plugins in from the build tree sys/ dir, rather than picking up the already installed versions. 2007-02-28 19:31:12 +0000 Thomas Vander Stichele configure.ac: Convert to new AG_GST style. Original commit message from CVS: * configure.ac: Convert to new AG_GST style. 2007-02-27 12:02:03 +0000 Christian Schaller * ChangeLog: * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsink.c: * sys/directsound/gstdirectsoundsink.h: * sys/osxvideo/cocoawindow.h: * sys/osxvideo/cocoawindow.m: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: update copyright statements Original commit message from CVS: update copyright statements 2007-02-27 11:30:19 +0000 Edward Hervey sys/osxvideo/: Disable the cocoa event loop since it's a huge memory leak. Should only matter if the sink isn't used ... Original commit message from CVS: * sys/osxvideo/cocoawindow.h: * sys/osxvideo/cocoawindow.m: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: Disable the cocoa event loop since it's a huge memory leak. Should only matter if the sink isn't used within an NSApp (which has already got a coca event loop). Remove all unused code. 2007-02-26 21:01:03 +0000 David Schleef Add a new plugin/library to make it easy for apps to shove data into a pipeline. Original commit message from CVS: * configure.ac: * gst/app/Makefile.am: * gst/app/gstapp.c: * gst/app/gstappsrc.c: * gst/app/gstappsrc.h: Add a new plugin/library to make it easy for apps to shove data into a pipeline. 2007-02-26 10:32:30 +0000 Tim-Philipp Müller gst/real/: Use gst_pad_use_fixed_caps() on source pads, to avoid negotiation errors in certain situations (e.g. dec !... Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_init): * gst/real/gstrealvideodec.c: (gst_real_video_dec_init): Use gst_pad_use_fixed_caps() on source pads, to avoid negotiation errors in certain situations (e.g. dec ! cs ! ximagesink and the imagesink window is resized); also, some minor clean-ups. 2007-02-24 22:52:48 +0000 Tim-Philipp Müller Fix build with LDFLAGS='-Wl,-z,defs'. Original commit message from CVS: * configure.ac: * ext/gsm/Makefile.am: * ext/ladspa/Makefile.am: * ext/wavpack/Makefile.am: * gst/equalizer/Makefile.am: * gst/filter/Makefile.am: * gst/mve/Makefile.am: * gst/nsf/Makefile.am: * gst/replaygain/Makefile.am: * gst/speed/Makefile.am: Fix build with LDFLAGS='-Wl,-z,defs'. 2007-02-20 21:34:00 +0000 Sébastien Moutte sys/directsound/gstdirectsoundsink.*: Remove include of unused headers. Original commit message from CVS: * sys/directsound/gstdirectsoundsink.c: * sys/directsound/gstdirectsoundsink.h: Remove include of unused headers. * sys/waveform/gstwaveformplugin.c: * sys/waveform/gstwaveformsink.c: * sys/waveform/gstwaveformsink.h: * win32/vs6/libgstwaveform.dsp: Add a new waveform plugin which includes an audio sink element using the WaveForm win32 API. * win32/MANIFEST: Add the new project file form waveform plugin. 2007-02-18 18:00:51 +0000 Sébastien Moutte sys/directdraw/: Prepare the plugin to move to good: Original commit message from CVS: * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: Prepare the plugin to move to good: Remove unused/untested code (rendering to an extern surface, yuv format rendering).Use GST_(DEBUG/*)_OBJECT macros Rename all functions from gst_directdrawsink to gst_directdraw_sink. Add gtk doc section Fix a bug in gst_directdraw_sink_show_frame, memcpy line by line respecting destination surface stride. * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsink.c: * sys/directsound/gstdirectsoundsink.h: Prepare the plugin to move to good: Rename all functions from gst_directsoundsink to gst_directsound_sink. Add gtk doc section * win32/common/config.h.in: * win32/MANIFEST: Add config.h.in 2007-02-16 16:26:31 +0000 Christian Schaller * gst-plugins-bad.spec.in: add equalizer plugin Original commit message from CVS: add equalizer plugin 2007-02-13 14:22:53 +0000 Christian Schaller * ext/Makefile.am: add missing \ in Makefile.am Original commit message from CVS: add missing \ in Makefile.am 2007-02-13 09:44:20 +0000 Stefan Kost Add crossreferences to glib/gobject/gstream docs. Also fix typo in timidity.cfg check. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: Add crossreferences to glib/gobject/gstream docs. Also fix typo in timidity.cfg check. * ext/timidity/gsttimidity.c: (plugin_init): Also build if no config was detected at configure time. 2007-02-11 15:46:24 +0000 Stefan Kost Add second midi renderer. Fix some double frees and leaks. Clean up logging. Original commit message from CVS: * configure.ac: * ext/timidity/Makefile.am: * ext/timidity/gsttimidity.c: (plugin_init): * ext/timidity/gstwildmidi.c: (gst_wildmidi_base_init), (gst_wildmidi_class_init), (gst_wildmidi_init), (gst_wildmidi_src_convert), (gst_wildmidi_src_query), (gst_wildmidi_get_upstream_size), (gst_wildmidi_get_segment), (gst_wildmidi_get_new_segment_event), (gst_wildmidi_src_event), (gst_wildmidi_activate), (gst_wildmidi_activatepull), (gst_wildmidi_allocate_buffer), (gst_wildmidi_clip_buffer), (gst_wildmidi_fill_buffer), (gst_wildmidi_get_buffer), (gst_wildmidi_loop), (gst_wildmidi_change_state), (gst_wildmidi_set_property), (gst_wildmidi_get_property), (gst_wildmidi_typefind), (wildmidi_open_config), (plugin_init): * ext/timidity/gstwildmidi.h: Add second midi renderer. Fix some double frees and leaks. Clean up logging. 2007-02-11 15:26:49 +0000 Sébastien Moutte Makefile.am: Add win32 MANIFEST Original commit message from CVS: * Makefile.am: Add win32 MANIFEST * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: Clear unused code and add comments. Remove yuv from template caps, it only supports RGB actually. Implement XOverlay interface and remove window and fullscreen properties. Add debug logs. Test for blit capabilities to return only the current colorspace if the hardware can't blit for one colorspace to another. * sys/directsound/gstdirectsoundsink.c: Add some debugs. * win32/MANIFEST: Add VS7 project files and solution. * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libgstdirectdraw.dsp: * win32/vs6/libgstdirectsound.dsp: * win32/vs6/libgstqtdemux.dsp: Update project files. 2007-02-11 11:59:49 +0000 Stefan Kost ext/faad/gstfaad.c: Also update the comment that describes the hack. Original commit message from CVS: * ext/faad/gstfaad.c: Also update the comment that describes the hack. 2007-02-11 11:35:47 +0000 Stefan Kost configure.ac: Tell the code which faad it is, so that we can adjust the hacks needed. Original commit message from CVS: * configure.ac: Tell the code which faad it is, so that we can adjust the hacks needed. * ext/faad/gstfaad.c: Make our hacks dependent on the fadd lib in use. 2007-02-11 10:58:14 +0000 Stefan Kost configure.ac: Fix faad detection to support also fadd with new symbol prefix. Original commit message from CVS: * configure.ac: Fix faad detection to support also fadd with new symbol prefix. ChangeLog surgery. 2007-02-08 15:00:00 +0000 Wouter Paesen Add timitity midi render plugin (#403992) Original commit message from CVS: Patch by: Wouter Paesen * configure.ac: * ext/Makefile.am: * ext/timidity/Makefile.am: * ext/timidity/gsttimidity.c: (gst_timidity_base_init), (gst_timidity_class_init), (gst_timidity_init), (gst_timidity_set_song_options), (gst_timidity_src_convert), (gst_timidity_src_query), (gst_timidity_get_upstream_size), (gst_timidity_get_segment), (gst_timidity_get_new_segment_event), (gst_timidity_src_event), (gst_timidity_activate), (gst_timidity_activatepull), (gst_timidity_allocate_buffer), (gst_timidity_clip_buffer), (gst_timidity_fill_buffer), (gst_timidity_get_buffer), (gst_timidity_loop), (gst_timidity_change_state), (gst_timidity_typefind), (plugin_init): * ext/timidity/gsttimidity.h: Add timitity midi render plugin (#403992) 2007-02-07 12:29:03 +0000 Edward Hervey ext/amrwb/gstamrwbparse.c: GST_PAD_PARENT doesn't return a GstObject with an incremented refcount. Original commit message from CVS: * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_query): GST_PAD_PARENT doesn't return a GstObject with an incremented refcount. Switched to using gst_pad_get_parent(). 2007-02-06 16:00:37 +0000 Tim-Philipp Müller gst/modplug/gstmodplug.cc: Remove superfluous gst_caps_get_structure() call. Original commit message from CVS: * gst/modplug/gstmodplug.cc: Remove superfluous gst_caps_get_structure() call. 2007-02-06 10:16:52 +0000 Tim-Philipp Müller configure.ac: Increase required libsndfile version to a version that's known to have the function sf_write_sync() to ... Original commit message from CVS: * configure.ac: Increase required libsndfile version to a version that's known to have the function sf_write_sync() to make the build bots happy. 2007-02-06 09:39:16 +0000 Tim-Philipp Müller ext/sndfile/gstsfsrc.c: Fix build (installed setup). Original commit message from CVS: * ext/sndfile/gstsfsrc.c: Fix build (installed setup). 2007-02-05 18:42:45 +0000 Andy Wingo ext/sndfile/: Port sfsrc to 0.10, pull or push, with random access woo. Original commit message from CVS: 2007-02-05 Andy Wingo * ext/sndfile/Makefile.am: * ext/sndfile/gstsfsrc.h: * ext/sndfile/gstsfsrc.c: Port sfsrc to 0.10, pull or push, with random access woo. 2007-02-03 23:35:26 +0000 Tim-Philipp Müller Fix up to use the newly ported (actually working) GstAudioFilter. Original commit message from CVS: * configure.ac: * gst/equalizer/Makefile.am: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init), (gst_iir_equalizer_init), (setup_filter), (gst_iir_equalizer_compute_frequencies), (gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property), (gst_iir_equalizer_transform_ip), (gst_iir_equalizer_setup), (plugin_init): * gst/equalizer/gstiirequalizer.h: Fix up to use the newly ported (actually working) GstAudioFilter. Bump core/base requirements to CVS for this. * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/equalizer-test.c: (check_bus), (equalizer_set_band_value), (equalizer_set_all_band_values), (equalizer_set_band_value_and_wait), (equalizer_set_all_band_values_and_wait), (do_slider_fiddling), (main): Add brain-dead interactive test for equalizer. 2007-02-02 18:36:28 +0000 Tim-Philipp Müller gst/equalizer/gstiirequalizer.c: Rename "values" property to "band-values" and change type into a Original commit message from CVS: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_class_init), (gst_iir_equalizer_set_property), (gst_iir_equalizer_get_property), (gst_iir_equalizer_filter_inplace): Rename "values" property to "band-values" and change type into a GValueArray, so it's more easily bindable and the range of the values passed in is defined and checked etc.; also do some locking. 2007-02-02 17:39:21 +0000 James Doc Livingston Port equalizer plugin to 0.10 (#403572). Original commit message from CVS: Patch by: James "Doc" Livingston * configure.ac: * gst/equalizer/Makefile.am: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_get_type), (gst_iir_equalizer_base_init), (gst_iir_equalizer_class_init), (gst_iir_equalizer_compute_frequencies), (gst_iir_equalizer_set_property), (gst_iir_equalizer_filter_inplace), (gst_iir_equalizer_setup), (plugin_init): Port equalizer plugin to 0.10 (#403572). 2007-02-02 13:28:05 +0000 Andy Wingo configure.ac: ext/Makefile.am Original commit message from CVS: 2007-02-02 Andy Wingo * configure.ac: * ext/Makefile.am * ext/sndfile/Makefile.am: * ext/sndfile/gstsf.c: * ext/sndfile/gstsf.h: * ext/sndfile/gstsfsink.c: * ext/sndfile/gstsfsink.h: Port sfsink to 0.10. Works in pull or push mode with interleaved float or int data. 2007-02-02 11:09:50 +0000 Tim-Philipp Müller ext/alsaspdif/alsaspdifsink.c: Set rank to NONE so that it doesn't get autoplugged by autoaudiosink (which didn't hap... Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.c: (plugin_init): Set rank to NONE so that it doesn't get autoplugged by autoaudiosink (which didn't happen previously because the klass string didn't contain anything autoaudiosink was looking for). 2007-01-31 10:02:05 +0000 Stefan Kost gst/real/: Fix classification in GstElementDetails. Original commit message from CVS: * gst/real/gstrealaudiodec.c: * gst/real/gstrealvideodec.c: Fix classification in GstElementDetails. 2007-01-31 08:32:59 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Fix a off by one that leads to the duration reported as one sample less than it is Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query), (gst_wavpack_parse_handle_seek_event), (gst_wavpack_parse_create_src_pad): Fix a off by one that leads to the duration reported as one sample less than it is 2007-01-31 08:16:59 +0000 Stefan Kost Fix classification in GstElementDetails. Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.c: * gst/nsf/gstnsf.c: Fix classification in GstElementDetails. * ext/ladspa/gstladspa.c: (gst_ladspa_base_init), (gst_ladspa_class_init): Improve Klassification and reduce code slighly. 2007-01-30 17:19:33 +0000 Edward Hervey configure.ac: Check for an Objective C compiler Original commit message from CVS: * configure.ac: Check for an Objective C compiler * sys/Makefile.am: * sys/osxvideo/Makefile.am: * sys/osxvideo/cocoawindow.h: * sys/osxvideo/cocoawindow.m: * sys/osxvideo/osxvideosink.h: * sys/osxvideo/osxvideosink.m: Port of osxvideo plugin to 0.10. Do NOT consider 100% stable ! Fixes #402470 2007-01-29 20:51:02 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file Original commit message from CVS: update spec file 2007-01-28 18:28:33 +0000 Tim-Philipp Müller gst/videocrop/gstvideocrop.c: Fix cropping for packed 4:2:2 formats YUYV/YUY2 and UYVY. Original commit message from CVS: * gst/videocrop/gstvideocrop.c: (gst_video_crop_get_image_details_from_caps), (gst_video_crop_transform_packed_complex): Fix cropping for packed 4:2:2 formats YUYV/YUY2 and UYVY. * tests/icles/videocrop-test.c: (check_bus_for_errors), (test_with_caps), (main): Block streaming thread before changing filter caps while the pipeline is running so that we don't get random not-negotiated errors just because GStreamer can't handle that yet. 2007-01-28 17:35:13 +0000 Stefan Kost ext/ladspa/: add GstController support to ladspa Original commit message from CVS: * ext/ladspa/Makefile.am: * ext/ladspa/gstladspa.c: (gst_ladspa_class_get_param_spec): add GstController support to ladspa 2007-01-28 13:01:02 +0000 Rosfran Borges ext/mythtv/gstmythtvsrc.c: Remove sleep calls, they've been moved into the library now ... (#354451). Original commit message from CVS: Patch by: Rosfran Borges * ext/mythtv/gstmythtvsrc.c: (gst_mythtv_src_start), (gst_mythtv_src_next_program_chain): Remove sleep calls, they've been moved into the library now ... (#354451). 2007-01-27 16:08:15 +0000 Tim-Philipp Müller tests/icles/videocrop-test.c: Catch errors while the test is running. Original commit message from CVS: * tests/icles/videocrop-test.c: (test_with_caps): Catch errors while the test is running. 2007-01-25 23:27:59 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Fix the SEEKING query. We can seek if we are in pull mode, not the other way around. A... Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query): Fix the SEEKING query. We can seek if we are in pull mode, not the other way around. Also set the correct format in the seeking query and handle the case where the headers are not read yet and we can't say anything about our seeking capabilities. 2007-01-25 21:55:49 +0000 Sebastian Dröge ext/wavpack/: Fix spelling in 2 places: It's called Wavpack, not WavePack. Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): Fix spelling in 2 places: It's called Wavpack, not WavePack. 2007-01-25 12:05:11 +0000 Edward Hervey gst/: Use proper print statements. Original commit message from CVS: * gst/multifile/gstmultifilesink.c: (gst_multi_file_sink_class_init): * gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_class_init): * gst/mve/gstmvedemux.c: (gst_mve_video_create_buffer), (gst_mve_video_palette), (gst_mve_video_code_map), (gst_mve_audio_init), (gst_mve_audio_data), (gst_mve_timer_create), (gst_mve_demux_chain): * gst/mve/gstmvemux.c: (gst_mve_mux_push_chunk): * gst/mve/mveaudioenc.c: (mve_compress_audio): * gst/mve/mvevideodec16.c: (ipvideo_copy_block): * gst/mve/mvevideodec8.c: (ipvideo_copy_block): * gst/mve/mvevideoenc16.c: (mve_encode_frame16): * gst/mve/mvevideoenc8.c: (mve_encode_frame8): Use proper print statements. Fixes build on mac os x. oo look at me my name is edward i'm hacking on macos wooo 2007-01-24 11:29:00 +0000 Wim Taymans gst/qtdemux/gstrtpxqtdepay.c: Fix caps on the depayloader. Original commit message from CVS: * gst/qtdemux/gstrtpxqtdepay.c: Fix caps on the depayloader. 2007-01-23 14:54:01 +0000 Thomas Vander Stichele * gst-libs/ext/amrwb/Makefile.am: work if it's already there too Original commit message from CVS: work if it's already there too 2007-01-17 17:29:04 +0000 Tim-Philipp Müller ext/mythtv/gstmythtvsrc.c: Use break here instead of goto. Original commit message from CVS: * ext/mythtv/gstmythtvsrc.c: (gst_mythtv_src_set_property): Use break here instead of goto. 2007-01-13 19:12:32 +0000 Andy Wingo gst/interleave/deinterleave.c (gst_deinterleave_add_new_pads): Use fixed caps on src pads. Original commit message from CVS: 2007-01-13 Andy Wingo * gst/interleave/deinterleave.c (gst_deinterleave_add_new_pads): Use fixed caps on src pads. (gst_deinterleave_remove_pads): Remove src pads, not sink pads. I seem to have reverse midas disease! (gst_deinterleave_process): Proxy timestamps, offsets, durations, and set caps on outgoing buffers. Fixes #395597, I think. 2007-01-13 18:01:41 +0000 Andy Wingo gst/interleave/interleave.c (gst_interleave_init): Init the activation mode properly. Original commit message from CVS: 2007-01-13 Andy Wingo * gst/interleave/interleave.c (gst_interleave_init): Init the activation mode properly. (gst_interleave_src_setcaps, gst_interleave_src_getcaps) (gst_interleave_init): Set a setcaps and getcaps function on the src pad, so that we can implement pull-mode negotiation. (gst_interleave_sink_setcaps): Renamed from gst_interleave_setcaps, as it only does the sink logic now. Implement both for pull-mode and push-mode. (gst_interleave_process): Set caps on our outgoing buffer. (gst_interleave_src_activate_pull): Fix some more bogus casts. What is up with this. 2007-01-13 12:37:55 +0000 Tim-Philipp Müller ext/mythtv/gstmythtvsrc.c: Clean up a bit, mostly the debug statements; fix deadlock in _set_property() in the error ... Original commit message from CVS: * ext/mythtv/gstmythtvsrc.c: (do_read_request_response), (gst_mythtv_src_create), (gst_mythtv_src_get_position), (gst_mythtv_src_do_seek), (gst_mythtv_src_start), (gst_mythtv_src_next_program_chain), (gst_mythtv_src_get_size), (gst_mythtv_src_handle_event), (gst_mythtv_src_handle_query), (gst_mythtv_src_change_state), (gst_mythtv_src_set_property), (gst_mythtv_src_uri_get_type): Clean up a bit, mostly the debug statements; fix deadlock in _set_property() in the error cases; fix up query function. 2007-01-12 21:58:43 +0000 Andy Wingo * ChangeLog: * ext/ladspa/gstsignalprocessor.c: ext/ladspa/gstsignalprocessor.c (gst_signal_processor_fixate) Original commit message from CVS: 2007-01-12 Andy Wingo * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_fixate) (gst_signal_processor_ouija_caps, gst_signal_processor_prepare): Remove fixate/ouija stuff, thankfully, due to the new part-negotiation.txt pull-mode negotiation scheme. (gst_signal_processor_setcaps_pull) (gst_signal_processor_setcaps): Implement upstream set_caps pull proxying for pull mode. Now this works: ladspa-sine-fcac ! audioconvert ! alsasink. 2007-01-12 19:02:37 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/mythtv/Makefile.am: * ext/mythtv/gstmythtvsrc.c: * ext/mythtv/gstmythtvsrc.h: * gst-plugins-bad.spec.in: MythTV client source plugin created. Original commit message from CVS: MythTV client source plugin created. 2007-01-12 17:16:51 +0000 Wim Taymans gst/qtdemux/: Add X-QT depayloader that will eventually share code with the demuxer. Original commit message from CVS: * gst/qtdemux/Makefile.am: * gst/qtdemux/gstrtpxqtdepay.c: (gst_rtp_xqt_depay_base_init), (gst_rtp_xqt_depay_class_init), (gst_rtp_xqt_depay_init), (gst_rtp_xqt_depay_finalize), (gst_rtp_quicktime_parse_sd), (gst_rtp_xqt_depay_setcaps), (gst_rtp_xqt_depay_process), (gst_rtp_xqt_depay_set_property), (gst_rtp_xqt_depay_get_property), (gst_rtp_xqt_depay_change_state), (gst_rtp_xqt_depay_plugin_init): * gst/qtdemux/gstrtpxqtdepay.h: * gst/qtdemux/qtdemux.c: (gst_qtdemux_base_init), (gst_qtdemux_loop_state_header), (gst_qtdemux_loop), (qtdemux_parse_moov), (qtdemux_parse_container), (qtdemux_parse_node), (gst_qtdemux_add_stream), (qtdemux_parse_trak), (qtdemux_audio_caps): * gst/qtdemux/qtdemux.h: * gst/qtdemux/quicktime.c: (plugin_init): Add X-QT depayloader that will eventually share code with the demuxer. Make new plugin entry point with quicktime releated stuff. 2007-01-12 12:10:19 +0000 Tim-Philipp Müller gst/qtdemux/Makefile.am: Dist all new files. Original commit message from CVS: * gst/qtdemux/Makefile.am: Dist all new files. 2007-01-12 10:27:25 +0000 Wim Taymans docs/plugins/: Activate docs for jack, sdl and qtdemux. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-qtdemux.xml: Activate docs for jack, sdl and qtdemux. 2007-01-12 10:25:40 +0000 Wim Taymans ext/jack/gstjackaudiosink.*: Improve docs. Original commit message from CVS: * ext/jack/gstjackaudiosink.c: (jack_sample_rate_cb), (jack_buffer_size_cb), (jack_shutdown_cb), (gst_jack_ring_buffer_acquire): * ext/jack/gstjackaudiosink.h: Improve docs. 2007-01-12 10:24:29 +0000 Wim Taymans ext/gsm/gstgsmenc.c: Fix typo in docs. Original commit message from CVS: * ext/gsm/gstgsmenc.c: (gst_gsmenc_init): Fix typo in docs. 2007-01-12 10:22:16 +0000 Wim Taymans gst/qtdemux/: Cleanup and refactor to make the code more readable. Original commit message from CVS: * gst/qtdemux/Makefile.am: * gst/qtdemux/qtdemux.c: (extract_initial_length_and_fourcc), (gst_qtdemux_loop_state_header), (gst_qtdemux_combine_flows), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop), (gst_qtdemux_chain), (qtdemux_sink_activate_pull), (qtdemux_inflate), (qtdemux_parse_moov), (qtdemux_parse_container), (qtdemux_parse_node), (qtdemux_tree_get_child_by_type), (qtdemux_tree_get_sibling_by_type), (gst_qtdemux_add_stream), (qtdemux_parse_samples), (qtdemux_parse_segments), (qtdemux_parse_trak), (qtdemux_tag_add_str), (qtdemux_tag_add_num), (qtdemux_tag_add_date), (qtdemux_tag_add_gnre), (qtdemux_parse_udta), (qtdemux_redirects_sort_func), (qtdemux_process_redirects), (qtdemux_parse_redirects), (qtdemux_parse_tree), (gst_qtdemux_handle_esds), (qtdemux_video_caps), (qtdemux_audio_caps): * gst/qtdemux/qtdemux.h: * gst/qtdemux/qtdemux_dump.c: (qtdemux_dump_mvhd), (qtdemux_dump_tkhd), (qtdemux_dump_elst), (qtdemux_dump_mdhd), (qtdemux_dump_hdlr), (qtdemux_dump_vmhd), (qtdemux_dump_dref), (qtdemux_dump_stsd), (qtdemux_dump_stts), (qtdemux_dump_stss), (qtdemux_dump_stsc), (qtdemux_dump_stsz), (qtdemux_dump_stco), (qtdemux_dump_co64), (qtdemux_dump_dcom), (qtdemux_dump_cmvd), (qtdemux_dump_unknown), (qtdemux_node_dump_foreach), (qtdemux_node_dump): * gst/qtdemux/qtdemux_dump.h: * gst/qtdemux/qtdemux_fourcc.h: * gst/qtdemux/qtdemux_types.c: (qtdemux_type_get): * gst/qtdemux/qtdemux_types.h: * gst/qtdemux/qtpalette.h: Cleanup and refactor to make the code more readable. Move debugging/tables into separate files. Add 2/4/16 color palletee support. Fix raw 15 bit RGB handling. Use more FOURCC constants. Add some docs. 2007-01-11 19:51:04 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.c: Minor clean-up: use enum values instead of hardcoded constants (#395536). Original commit message from CVS: Patch by: Sebastian Dröge * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_mode_get_type), (gst_wavpack_enc_correction_mode_get_type), (gst_wavpack_enc_joint_stereo_mode_get_type): Minor clean-up: use enum values instead of hardcoded constants (#395536). 2007-01-11 12:28:56 +0000 Tim-Philipp Müller gst/mve/gstmvedemux.c: Support SEEKING query (bad news now delivered properly!); add event function to source pads to... Original commit message from CVS: * gst/mve/gstmvedemux.c: (gst_mve_demux_get_src_query_types), (gst_mve_demux_handle_src_query), (gst_mve_demux_handle_src_event), (gst_mve_add_stream): Support SEEKING query (bad news now delivered properly!); add event function to source pads to make sure seeks aren't propagated upstream, even if they aren't handled. 2007-01-11 11:39:56 +0000 Jens Granseuer Add Interplay MVE format demuxer/decoder and muxer/encoder. Demuxer doesn't support seeking yet, but seems to work fi... Original commit message from CVS: Patch by: Jens Granseuer * configure.ac: * gst/mve/Makefile.am: * gst/mve/TODO: * gst/mve/gstmve.c: * gst/mve/gstmvedemux.c: * gst/mve/gstmvedemux.h: * gst/mve/gstmvemux.c: * gst/mve/gstmvemux.h: * gst/mve/mve.h: * gst/mve/mveaudiodec.c: * gst/mve/mveaudioenc.c: * gst/mve/mvevideodec16.c: * gst/mve/mvevideodec8.c: * gst/mve/mvevideoenc16.c: * gst/mve/mvevideoenc8.c: Add Interplay MVE format demuxer/decoder and muxer/encoder. Demuxer doesn't support seeking yet, but seems to work fine otherwise. Closes #348973. 2007-01-09 10:06:28 +0000 Tim-Philipp Müller gst/real/Makefile.am: Fix build (add LIBS and CFLAGS for gst-plugins-base stuff). Original commit message from CVS: * gst/real/Makefile.am: Fix build (add LIBS and CFLAGS for gst-plugins-base stuff). 2007-01-07 22:03:54 +0000 Andy Wingo New elements interleave and deinterleave, implement channel interleaving and deinterleaving. Original commit message from CVS: 2007-01-07 Andy Wingo * configure.ac: * gst/interleave/Makefile.am: * gst/interleave/plugin.h: * gst/interleave/plugin.c: * gst/interleave/interleave.c: * gst/interleave/deinterleave.c: New elements interleave and deinterleave, implement channel interleaving and deinterleaving. The interleaver can operate in pull or push mode but the deinterleaver is more like a demuxer and can only operate in push mode. 2007-01-06 19:23:40 +0000 Edward Hervey configure.ac: Properly detect the two architectures on which the real plugin can be built. Original commit message from CVS: * configure.ac: Properly detect the two architectures on which the real plugin can be built. Fixes #393622 2007-01-06 17:22:12 +0000 Andy Wingo * ChangeLog: * ext/ladspa/gstsignalprocessor.c: ext/ladspa/gstsignalprocessor.c Original commit message from CVS: 2007-01-06 Andy Wingo * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_ouija_caps): Move around in the source file... (gst_signal_processor_prepare, gst_signal_processor_do_pulls): Call ouija_caps in prepare() instead of do_pulls(), a bit earlier. This allows us to have caps when we do the pad_alloc_buffer(). (gst_pad_alloc_buffer_and_set_caps): Use self->caps instead of the pad caps, which might not be set yet. 2007-01-06 15:56:55 +0000 Andy Wingo ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_add_pad_from_template) Original commit message from CVS: 2007-01-06 Andy Wingo * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_add_pad_from_template) (gst_signal_processor_fixate): Add a fixate function, to assist in pathological ladspa-sine-fcac ! fakesink can-activate-pull=true cases. (gst_signal_processor_prepare, gst_signal_processor_process): Add nframes args so that getrange can tell ladspa how many frames to process. (gst_signal_processor_ouija_caps): setcaps needs to be called before processing, which normally happens when chaining a buffer to a pad. However in getrange mode with no sinks we need to check explicitly for this condition, guess some caps to use, and use those to setcaps(). Hence this mystical function. (gst_signal_processor_do_pulls): Pull in bytes, not samples. Divine the caps if necessary. (gst_signal_processor_getrange): Interpret the length as bytes, not samples. (gst_signal_processor_chain): nframes=G_MAXUINT, will be limited by incoming buffer sizes. 2007-01-06 14:08:26 +0000 Edward Hervey gst/real/gstrealaudiodec.c: Don't call the RAFreeDecoder since it randomly causes segfaults. Original commit message from CVS: * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_finalize): Don't call the RAFreeDecoder since it randomly causes segfaults. * gst/real/gstrealaudiodec.h: indent properly. 2007-01-06 10:58:13 +0000 Lutz Mueller gst/real/gstrealvideodec.*: Implement error recovery on setcaps failure. Original commit message from CVS: Patch by: Lutz Mueller * gst/real/gstrealvideodec.c: (gst_real_video_dec_decode), (gst_real_video_dec_setcaps), (open_library), (close_library), (gst_real_video_dec_finalize): * gst/real/gstrealvideodec.h: Implement error recovery on setcaps failure. 2007-01-06 10:41:46 +0000 Lutz Mueller gst/real/: Added RealAudio wrapper elementfactory. Original commit message from CVS: Patch by: Lutz Mueller * gst/real/Makefile.am: * gst/real/gstreal.c: (plugin_init): * gst/real/gstrealaudiodec.c: (gst_real_audio_dec_chain), (gst_real_audio_dec_setcaps), (gst_real_audio_dec_init), (gst_real_audio_dec_base_init), (gst_real_audio_dec_change_state), (gst_real_audio_dec_finalize), (gst_real_audio_dec_set_property), (gst_real_audio_dec_get_property), (gst_real_audio_dec_class_init): * gst/real/gstrealaudiodec.h: Added RealAudio wrapper elementfactory. Modified structures so it can also work on x86_64 using the adequate .so . 2007-01-05 18:32:03 +0000 Tim-Philipp Müller Check for zlib and if available pass it explicitly to the linker when linking qtdemux. If not available (or --disable... Original commit message from CVS: * configure.ac: * gst/qtdemux/Makefile.am: * gst/qtdemux/qtdemux.c: (qtdemux_parse_moov): Check for zlib and if available pass it explicitly to the linker when linking qtdemux. If not available (or --disable-external has been specified!), disable the bits in qtdemux that use it. Fixes build on MingW (#392856). 2007-01-05 18:15:52 +0000 Edward Hervey configure.ac: Real video .so are now also available for x86_64, so we can build the Original commit message from CVS: * configure.ac: Real video .so are now also available for x86_64, so we can build the Real plugin on i386 AND x86_64. * gst/real/Makefile.am: * gst/real/gstreal.c: (plugin_init): New plugin file for real .so wrapper plugins. * gst/real/gstrealvideodec.c: (gst_real_video_dec_alloc_buffer), (gst_real_video_dec_decode), (gst_real_video_dec_chain), (gst_real_video_dec_activate_push), (gst_real_video_dec_setcaps), (open_library), (close_library), (gst_real_video_dec_init), (gst_real_video_dec_base_init), (gst_real_video_dec_finalize), (gst_real_video_dec_set_property), (gst_real_video_dec_get_property), (gst_real_video_dec_class_init): * gst/real/gstrealvideodec.h: Moved RealVideo element to separate file Cleaned up code some more. Make it work on x86_64. Try several possible locations for .so Separate opening/closing libraries in separate functions. 2007-01-05 16:07:12 +0000 Tim-Philipp Müller tests/icles/videocrop-test.c: Call g_thread_init() right at the beginning. Remove superfluous gst_init() - we've alre... Original commit message from CVS: * tests/icles/videocrop-test.c: (main): Call g_thread_init() right at the beginning. Remove superfluous gst_init() - we've already been inited via the GOption stuff. 2007-01-05 14:02:33 +0000 Tim-Philipp Müller configure.ac: Don't compile rfbsource if we don't have sys/socket.h. Original commit message from CVS: * configure.ac: Don't compile rfbsource if we don't have sys/socket.h. Should fix compilation on MingW. 2007-01-04 16:39:38 +0000 Thomas Vander Stichele * gst-libs/ext/Makefile.am: * gst-libs/ext/amrwb/Makefile.am: * gst-libs/ext/amrwb/README: add directories in the right place Original commit message from CVS: add directories in the right place 2007-01-04 16:32:43 +0000 Thomas Vander Stichele * ChangeLog: * configure.ac: * ext/amrwb/Makefile.am: * ext/amrwb/amrwb-code/Makefile.am: * ext/amrwb/amrwb-code/amrwb/Makefile.am: * ext/amrwb/amrwb-code/amrwb/README: * ext/amrwb/amrwb-code/run.sh: * gst-libs/Makefile.am: move amrwb code Original commit message from CVS: move amrwb code 2007-01-04 16:32:43 +0000 Thomas Vander Stichele * ext/amrwb/amrwb-code/Makefile.am: move amrwb code Original commit message from CVS: move amrwb code 2007-01-04 12:49:47 +0000 Thomas Vander Stichele configure.ac: split out GST_CFLAGS into GST_PLUGINS_BASE_CFLAGS and GST_CFLAGS so that GST_BASE_CFLAGS can go inbetwe... Original commit message from CVS: * configure.ac: split out GST_CFLAGS into GST_PLUGINS_BASE_CFLAGS and GST_CFLAGS so that GST_BASE_CFLAGS can go inbetween them, making sure we use uninstalled gst-libs headers * docs/libs/Makefile.am: * ext/alsa/Makefile.am: * ext/cdparanoia/Makefile.am: * ext/gnomevfs/Makefile.am: * ext/libvisual/Makefile.am: * ext/ogg/Makefile.am: * ext/theora/Makefile.am: * ext/vorbis/Makefile.am: * gst-libs/gst/audio/Makefile.am: * gst-libs/gst/cdda/Makefile.am: * gst-libs/gst/interfaces/Makefile.am: * gst-libs/gst/riff/Makefile.am: * gst-libs/gst/rtp/Makefile.am: * gst-libs/gst/tag/Makefile.am: * gst/adder/Makefile.am: * gst/audioconvert/Makefile.am: * gst/audiorate/Makefile.am: * gst/audioresample/Makefile.am: * gst/playback/Makefile.am: * gst/tcp/Makefile.am: * gst/videoscale/Makefile.am: * gst/volume/Makefile.am: * sys/ximage/Makefile.am: * sys/xvimage/Makefile.am: * tests/icles/Makefile.am: adapt 2007-01-04 09:51:56 +0000 Julien Moutte ext/: Fix various compiler warnings that reveal potential bugs. Original commit message from CVS: 2007-01-04 Julien MOUTTE * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_navigation_send_event), (gst_dfbvideosink_get_type): * ext/sdl/sdlaudiosink.c: (gst_sdlaudio_sink_open): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_setcaps), (gst_sdlvideosink_show_frame), (gst_sdlvideosink_navigation_send_event): * ext/sdl/sdlvideosink.h: Fix various compiler warnings that reveal potential bugs. 2007-01-04 09:44:57 +0000 Vincent Torri Add directsoundsink to build and dist it, so it gets built when compiling with MingW on win32 and the required header... Original commit message from CVS: Patch by: Vincent Torri * configure.ac: * sys/Makefile.am: * sys/directsound/Makefile.am: * sys/directsound/gstdirectsoundsink.c: (gst_directsoundsink_reset): Add directsoundsink to build and dist it, so it gets built when compiling with MingW on win32 and the required headers and libraries are available (fixes: #392638). Also simplify DirectDraw check a bit. * tests/check/elements/.cvsignore: Fix CVS ignore for neonhttpsrc test binary. 2007-01-03 19:54:33 +0000 Vincent Torri Add directdrawsink to build and dist it, so it gets built when compiling with MingW on win32 and the required headers... Original commit message from CVS: Patch by: Vincent Torri * configure.ac: * sys/Makefile.am: * sys/directdraw/Makefile.am: Add directdrawsink to build and dist it, so it gets built when compiling with MingW on win32 and the required headers and libraries are available (fixes: #392313). * sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_center_rect), (gst_directdrawsink_show_frame), (gst_directdrawsink_setup_ddraw), (gst_directdrawsink_surface_create): Comment out some unused things and fix some printf format issues in order to avoid warnings when buildling with MingW (#392313). 2007-01-03 16:41:10 +0000 Jens Granseuer Fix build with gcc-2.x (declare variables at the beginning of a block etc.). Fixes #391971. Original commit message from CVS: Patch by: Jens Granseuer * ext/xvid/gstxvidenc.c: (gst_xvidenc_encode), (gst_xvidenc_get_property): * gst/filter/gstbpwsinc.c: (bpwsinc_transform_ip): * gst/filter/gstfilter.c: (plugin_init): * gst/filter/gstiir.c: (iir_transform_ip): * gst/filter/gstlpwsinc.c: (lpwsinc_transform_ip): * gst/modplug/gstmodplug.cc: * gst/nuvdemux/gstnuvdemux.c: (gst_nuv_demux_header_load), (gst_nuv_demux_stream_extend_header): Fix build with gcc-2.x (declare variables at the beginning of a block etc.). Fixes #391971. 2007-01-02 11:06:48 +0000 Edward Hervey gst/real/gstreal.c: Use codec_data supplied in caps. Original commit message from CVS: reviewed by: Edward Hervey * gst/real/gstreal.c: (gst_realdec_setcaps): Use codec_data supplied in caps. (gst_realdec_get_property): Correctly return default path. (gst_realdec_class_init): Remove unused state_change method. 2007-01-01 18:06:01 +0000 Edward Hervey configure.ac: Only build the plugin on 32bit x86 architectures. Original commit message from CVS: * configure.ac: Only build the plugin on 32bit x86 architectures. 2007-01-01 17:47:53 +0000 Edward Hervey New plugin for decoding RealVideo Streams using the x86 32bit shared libraries. Original commit message from CVS: reviewed by: Edward Hervey * configure.ac: * gst/real/Makefile.am: * gst/real/gstreal.c: (gst_realdec_alloc_buffer), (gst_realdec_decode), (gst_realdec_chain), (gst_realdec_activate_push), (gst_realdec_setcaps), (gst_realdec_init), (gst_realdec_base_init), (gst_realdec_change_state), (gst_realdec_finalize), (gst_realdec_set_property), (gst_realdec_get_property), (gst_realdec_class_init), (plugin_init): New plugin for decoding RealVideo Streams using the x86 32bit shared libraries. Closes #354174 2006-12-30 12:44:01 +0000 Tim-Philipp Müller tests/check/elements/videocrop.c: When we can't create an element needed for the test, print a message detailing whic... Original commit message from CVS: * tests/check/elements/videocrop.c: (GST_START_TEST), (videocrop_test_cropping_init_context): When we can't create an element needed for the test, print a message detailing which element it actually is that's missing (#390673). 2006-12-22 16:23:32 +0000 Edgard Lima * ChangeLog: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: Added seek support. Original commit message from CVS: Added seek support. 2006-12-22 10:15:24 +0000 Stefan Kost tests/check/elements/: reapply consistent pad (de)activation Original commit message from CVS: * tests/check/elements/mpeg2enc.c: (setup_mpeg2enc), (cleanup_mpeg2enc): * tests/check/elements/rganalysis.c: (cleanup_rganalysis): * tests/check/elements/wavpackdec.c: (setup_wavpackdec), (cleanup_wavpackdec): * tests/check/elements/wavpackenc.c: (setup_wavpackenc), (cleanup_wavpackenc): * tests/check/elements/y4menc.c: (setup_y4menc), (cleanup_y4menc): reapply consistent pad (de)activation 2006-12-21 17:05:44 +0000 Jan Schmidt configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS * gst-plugins-bad.doap: Add release section for 0.10.4 === release 0.10.4 === 2006-12-21 15:45:02 +0000 Jan Schmidt configure.ac: releasing 0.10.4, "Black Bugs" Original commit message from CVS: === release 0.10.4 === 2006-12-21 Jan Schmidt * configure.ac: releasing 0.10.4, "Black Bugs" 2006-12-21 15:40:31 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-12-21 14:07:02 +0000 Jan Schmidt * ChangeLog: Remove duplicate changelog entry about reverting a previous commit Original commit message from CVS: Remove duplicate changelog entry about reverting a previous commit 2006-12-21 14:03:42 +0000 Stefan Kost tests/check/elements/mpeg2enc.c: (setup_mpeg2enc) Original commit message from CVS: * tests/check/elements/mpeg2enc.c: (setup_mpeg2enc) (cleanup_mpeg2enc): * tests/check/elements/rganalysis.c: (cleanup_rganalysis): * tests/check/elements/wavpackdec.c: (setup_wavpackdec), (cleanup_wavpackdec): * tests/check/elements/wavpackenc.c: (setup_wavpackenc), (cleanup_wavpackenc): * tests/check/elements/y4menc.c: (setup_y4menc), (cleanup_y4menc): revert my freeze breakage 2006-12-21 12:58:41 +0000 Stefan Kost tests/check/elements/: revert my freeze breakage Original commit message from CVS: * tests/check/elements/mpeg2enc.c: (setup_mpeg2enc), (cleanup_mpeg2enc): * tests/check/elements/rganalysis.c: (cleanup_rganalysis): * tests/check/elements/wavpackdec.c: (setup_wavpackdec), (cleanup_wavpackdec): * tests/check/elements/wavpackenc.c: (setup_wavpackenc), (cleanup_wavpackenc): * tests/check/elements/y4menc.c: (setup_y4menc), (cleanup_y4menc): revert my freeze breakage 2006-12-21 08:20:10 +0000 Stefan Kost tests/check/elements/: consistent pad (de)activation Original commit message from CVS: * tests/check/elements/mpeg2enc.c: (setup_mpeg2enc), (cleanup_mpeg2enc): * tests/check/elements/rganalysis.c: (cleanup_rganalysis): * tests/check/elements/wavpackdec.c: (setup_wavpackdec), (cleanup_wavpackdec): * tests/check/elements/wavpackenc.c: (setup_wavpackenc), (cleanup_wavpackenc): * tests/check/elements/y4menc.c: (setup_y4menc), (cleanup_y4menc): consistent pad (de)activation 2006-12-21 08:12:26 +0000 Stefan Kost tests/check/elements/: consistent pad (de)activation Original commit message from CVS: * tests/check/elements/audioresample.c: (cleanup_audioresample): * tests/check/elements/audiotestsrc.c: (cleanup_audiotestsrc): * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (cleanup_gdpdepay): * tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay): * tests/check/elements/subparse.c: (teardown_subparse): * tests/check/elements/textoverlay.c: (cleanup_textoverlay): * tests/check/elements/videorate.c: (cleanup_videorate): * tests/check/elements/videotestsrc.c: (cleanup_videotestsrc): * tests/check/elements/volume.c: (cleanup_volume): * tests/check/elements/vorbisdec.c: (setup_vorbisdec), (cleanup_vorbisdec): * tests/check/elements/vorbistag.c: (setup_vorbistag), (cleanup_vorbistag): consistent pad (de)activation 2006-12-18 17:11:49 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Don't post BUFFERING messages in streaming mode if the stream headers are behind the movie dat... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_post_progress), (gst_qtdemux_chain): Don't post BUFFERING messages in streaming mode if the stream headers are behind the movie data; instead, post "progress" element messages as a temporary solution. Apps might get confused and do silly things to the pipeline state if they see buffering messages from different sources and don't realize they come from different sources (#387160). 2006-12-18 16:47:23 +0000 Jan Schmidt Move LADPSA plugin from -good for the release, as it's not quite ready to be enabled by default in the -good module yet. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/ladspa/*: Move LADPSA plugin from -good for the release, as it's not quite ready to be enabled by default in the -good module yet. 2006-12-18 15:51:54 +0000 Wim Taymans ext/ladspa/gstsignalprocessor.c: Reset flow_state back to _OK after a flush stop so that we exit our error state afte... Original commit message from CVS: * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_setcaps), (gst_signal_processor_event): Reset flow_state back to _OK after a flush stop so that we exit our error state after the flush. Fixes #374213 2006-12-18 13:40:34 +0000 Jan Schmidt gst/qtdemux/qtdemux.c: Don't output g_warning for an unsupported format, just send a Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_chain), (gst_qtdemux_add_stream): Don't output g_warning for an unsupported format, just send a GST_ELEMENT_WARNING and don't add the pad. Fix the case where it doesn't check for a NULL pad in streaming mode. Fixes #387137 2006-12-18 12:27:32 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Fix crash dereferencing NULL pointer if there's no stco atom. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Fix crash dereferencing NULL pointer if there's no stco atom. Fixes #387122. 2006-12-18 10:02:56 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.h: Use local copy of md5.h, as it disappeared in recent wavpack installs. Original commit message from CVS: * ext/wavpack/gstwavpackenc.h: Use local copy of md5.h, as it disappeared in recent wavpack installs. Patch by: Sebastian Dröge Fixes: #387076 2006-12-17 20:19:43 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-12-17 20:19:34 +0000 Jan Schmidt * ChangeLog: Replace some email addresses with names+email addresses Original commit message from CVS: Replace some email addresses with names+email addresses 2006-12-16 15:25:23 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: We don't support seeking in streaming mode, so don't even try. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_src_query_types), (gst_qtdemux_handle_src_query), (gst_qtdemux_handle_src_event): We don't support seeking in streaming mode, so don't even try. Implement seeking query so apps can query seekability properly (see #365414). Fix duration query. 2006-12-15 12:18:21 +0000 Thomas Vander Stichele add doap file Original commit message from CVS: * Makefile.am: * gst-plugins-bad.doap: * gst-plugins-bad.spec.in: add doap file 2006-12-15 09:34:31 +0000 Tim-Philipp Müller ext/libmms/gstmms.c: These debug statements should be using LOG level. Original commit message from CVS: * ext/libmms/gstmms.c: (gst_mms_create): These debug statements should be using LOG level. 2006-12-14 15:45:56 +0000 Tim-Philipp Müller gst/modplug/libmodplug/sndfile.cpp: Fix potential buffer overflow (CVE-2006-4192) (#385788). Original commit message from CVS: * gst/modplug/libmodplug/sndfile.cpp: Fix potential buffer overflow (CVE-2006-4192) (#385788). 2006-12-13 17:12:22 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Add AMR-WB to the list of supported formats. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (gst_qtdemux_handle_src_query), (qtdemux_parse_trak), (qtdemux_audio_caps): Add AMR-WB to the list of supported formats. 2006-12-12 16:10:21 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Fix minor mem leak in redirect code. Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_create), (send_request_and_redirect): Fix minor mem leak in redirect code. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/neonhttpsrc.c: (handoff_cb), (GST_START_TEST), (neonhttpsrc_suite): * tests/check/gst-plugins-bad.supp: Add super-basic unit test for #384140. 2006-12-12 12:46:23 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Set offset on buffers pushed out (id3demux gets confused if the first buffer does not have... Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_create), (send_request_and_redirect): Set offset on buffers pushed out (id3demux gets confused if the first buffer does not have an offset of 0). Fixes #384140. 2006-12-12 11:46:05 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Minor clean-ups; remove newlines at end of debug statements. Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init), (gst_neonhttp_src_create), (send_request_and_redirect), (gst_neonhttp_src_start), (oom_callback): Minor clean-ups; remove newlines at end of debug statements. 2006-12-11 17:33:26 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Fix non-working redirects from inetfilm.com (handle 'alis' reference data type as well). Fixes... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_tree): Fix non-working redirects from inetfilm.com (handle 'alis' reference data type as well). Fixes #378613. 2006-12-11 09:51:17 +0000 Jonathan Matthew gst/modplug/gstmodplug.cc: Fix modplug duration query. Fixes #384294. Original commit message from CVS: Patch by: Jonathan Matthew ). * gst/modplug/gstmodplug.cc: Fix modplug duration query. Fixes #384294. 2006-12-08 17:06:43 +0000 René Stadler gst/qtdemux/qtdemux.c: Fix caps for 24 bit raw PCM audio (2). Original commit message from CVS: Patch by: René Stadler * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (gst_qtdemux_handle_src_query), (qtdemux_parse_trak), (qtdemux_audio_caps): Fix caps for 24 bit raw PCM audio (2). Fixes #383471. 2006-12-07 11:35:41 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Handle more H263 variants. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (gst_qtdemux_handle_src_query), (qtdemux_parse_trak), (qtdemux_video_caps): Handle more H263 variants. 2006-12-06 16:57:17 +0000 Jan Schmidt ext/jack/.cvsignore: Ignore old files as requested by the build slave. Original commit message from CVS: * ext/jack/.cvsignore: Ignore old files as requested by the build slave. 2006-12-06 16:14:35 +0000 Jan Schmidt configure.ac: Update the Jack requirement to the version where I think options_t appeared Original commit message from CVS: * configure.ac: Update the Jack requirement to the version where I think options_t appeared 2006-12-01 10:35:39 +0000 Sergey Scobich win32/MANIFEST: Fix compilation on win32 under VS8 Original commit message from CVS: * win32/MANIFEST: Fix compilation on win32 under VS8 Patch by: Sergey Scobich Partially fixes #381175 2006-11-30 15:08:08 +0000 René Stadler gst/replaygain/gstrganalysis.c: Call the base class handler. Fixes #380610. Original commit message from CVS: Patch by: René Stadler * gst/replaygain/gstrganalysis.c: (gst_rg_analysis_event): Call the base class handler. Fixes #380610. 2006-11-30 11:59:04 +0000 Wim Taymans ext/Makefile.am: Fix build. Original commit message from CVS: * ext/Makefile.am: Fix build. * ext/jack/gstjackaudiosink.c: (jack_process_cb), (jack_sample_rate_cb), (jack_buffer_size_cb), (jack_shutdown_cb), (gst_jack_ring_buffer_acquire): Small cleanups. 2006-11-30 11:49:36 +0000 Wim Taymans Added fully functional jackaudiosink. Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/jack/Makefile.am: * ext/jack/gstjack.c: (plugin_init): * ext/jack/gstjack.h: * ext/jack/gstjackaudiosink.c: (gst_jack_ring_buffer_get_type), (gst_jack_ring_buffer_class_init), (jack_process_cb), (jack_sample_rate_cb), (jack_buffer_size_cb), (jack_shutdown_cb), (gst_jack_ring_buffer_init), (gst_jack_ring_buffer_dispose), (gst_jack_ring_buffer_finalize), (gst_jack_ring_buffer_open_device), (gst_jack_ring_buffer_close_device), (gst_jack_ring_buffer_acquire), (gst_jack_ring_buffer_release), (gst_jack_ring_buffer_start), (gst_jack_ring_buffer_pause), (gst_jack_ring_buffer_stop), (gst_jack_ring_buffer_delay), (gst_jack_connect_get_type), (gst_jack_audio_sink_base_init), (gst_jack_audio_sink_class_init), (gst_jack_audio_sink_init), (gst_jack_audio_sink_set_property), (gst_jack_audio_sink_get_property), (gst_jack_audio_sink_getcaps), (gst_jack_audio_sink_create_ringbuffer): * ext/jack/gstjackaudiosink.h: Added fully functional jackaudiosink. 2006-11-27 17:16:26 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Remove some asserts and replace them with a proper error message. Fixes #379261. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (gst_qtdemux_handle_src_query), (qtdemux_parse_trak): Remove some asserts and replace them with a proper error message. Fixes #379261. 2006-11-26 17:23:14 +0000 Michael Smith ext/theora/theoradec.c: Send events on the right pads, since they don't work very well if you send them in the wrong ... Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_src_query), (theora_dec_src_event), (theora_handle_data_packet), (theora_dec_chain): Send events on the right pads, since they don't work very well if you send them in the wrong direction. 2006-11-24 09:05:39 +0000 Stefan Kost remove obsolete _factory_init protos and functions Original commit message from CVS: * ext/audiofile/gstafsink.c: * ext/polyp/plugin.c: (plugin_init): * ext/polyp/polypsink.c: * ext/polyp/polypsink.h: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.h: remove obsolete _factory_init protos and functions 2006-11-21 13:00:08 +0000 Christian Schaller * gst-plugins-bad.spec.in: add rfbsrc plugin Original commit message from CVS: add rfbsrc plugin 2006-11-19 12:02:13 +0000 Michael Smith gst/librfb/Makefile.am: Compile with appropriate cflags. Fixes build. Original commit message from CVS: * gst/librfb/Makefile.am: Compile with appropriate cflags. Fixes build. 2006-11-17 18:51:58 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Actually set the TONE parameter for DVB-S when we should. Original commit message from CVS: 2006-11-17 Zaheer Abbas Merali * sys/dvb/gstdvbsrc.c: (gst_dvbsrc_tune): Actually set the TONE parameter for DVB-S when we should. 2006-11-17 03:51:04 +0000 David Schleef gst/librfb/rfbdecoder.c: Fixes for 64-bit architectures. Original commit message from CVS: * gst/librfb/rfbdecoder.c: Fixes for 64-bit architectures. 2006-11-17 03:29:32 +0000 David Schleef gst/librfb/gstrfbsrc.h: Oops, add this file. Original commit message from CVS: * gst/librfb/gstrfbsrc.h: Oops, add this file. 2006-11-17 03:15:40 +0000 Andre Moreira Magalhaes Port librfb to 0.10 (#376106). Original commit message from CVS: Patch by: Andre Moreira Magalhaes * configure.ac: * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfb.c: * gst/librfb/rfb.h: * gst/librfb/rfbbuffer.c: * gst/librfb/rfbbuffer.h: * gst/librfb/rfbbytestream.c: * gst/librfb/rfbbytestream.h: * gst/librfb/rfbcontext.h: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: * gst/librfb/rfbutil.h: Port librfb to 0.10 (#376106). 2006-11-16 18:22:37 +0000 Tim-Philipp Müller ext/spc/gstspc.c: Fix build with disabled gst-debug. Original commit message from CVS: * ext/spc/gstspc.c: (spc_play): Fix build with disabled gst-debug. 2006-11-15 16:19:56 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file with latest changes Original commit message from CVS: update spec file with latest changes 2006-11-15 12:35:46 +0000 Sebastian Dröge ext/wavpack/: Some small clean-ups: use enums instead of hard-coded numbers, const-ify element details, re-factor som... Original commit message from CVS: Patch by: Sebastian Dröge * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_reset), (gst_wavpack_dec_init), (gst_wavpack_dec_change_state): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init), (gst_wavpack_enc_class_init), (gst_wavpack_enc_reset), (gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_change_state): * ext/wavpack/gstwavpackparse.c: Some small clean-ups: use enums instead of hard-coded numbers, const-ify element details, re-factor some code into _reset() functions (#352605). 2006-11-14 15:04:52 +0000 Christian Schaller * gst-plugins-bad.spec.in: add missing files from SPEC Original commit message from CVS: add missing files from SPEC 2006-11-14 12:33:33 +0000 Tim-Philipp Müller sys/dvb/gstdvbsrc.*: Fix minor printf format issue; remove overly paranoid checks in create function; fix GObject boi... Original commit message from CVS: * sys/dvb/gstdvbsrc.c: (gst_dvbsrc_create): * sys/dvb/gstdvbsrc.h: Fix minor printf format issue; remove overly paranoid checks in create function; fix GObject boilerplate macros. 2006-11-14 11:43:40 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Don't parse extra sample params for raw pcm. Fixes #374914. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (gst_qtdemux_handle_src_query), (qtdemux_parse_trak): Don't parse extra sample params for raw pcm. Fixes #374914. 2006-11-14 11:39:39 +0000 Wim Taymans tests/check/elements/.cvsignore: Add cdaudio to ignore. Original commit message from CVS: * tests/check/elements/.cvsignore: Add cdaudio to ignore. 2006-11-14 10:52:52 +0000 Wim Taymans ext/Makefile.am: dist cdaudio dir. Original commit message from CVS: * ext/Makefile.am: dist cdaudio dir. 2006-11-14 10:42:19 +0000 Wim Taymans Fix cdaudio build. Original commit message from CVS: * configure.ac: * ext/Makefile.am: Fix cdaudio build. 2006-11-14 10:31:29 +0000 Wim Taymans * ChangeLog: give credit Original commit message from CVS: give credit 2006-11-14 10:25:16 +0000 Wim Taymans tests/check/: Added y4m test. Fixes #372243. Original commit message from CVS: * tests/check/Makefile.am: * tests/check/elements/y4menc.c: (setup_y4menc), (cleanup_y4menc), (GST_START_TEST), (y4menc_suite), (main): Added y4m test. Fixes #372243. 2006-11-13 18:55:57 +0000 Mark Nauwelaerts configure.ac: Enable cdaudio and y4m. Original commit message from CVS: Patch by: Mark Nauwelaerts * configure.ac: Enable cdaudio and y4m. * gst/y4m/Makefile.am: * gst/y4m/gsty4mencode.c: (gst_y4m_encode_base_init), (gst_y4m_encode_class_init), (gst_y4m_encode_init), (gst_y4m_encode_reset), (gst_y4m_encode_setcaps), (gst_y4m_encode_get_stream_header), (gst_y4m_encode_get_frame_header), (gst_y4m_encode_chain), (gst_y4m_encode_set_property), (gst_y4m_encode_get_property), (gst_y4m_encode_change_state), (plugin_init): * gst/y4m/gsty4mencode.h: Port of y4mencode to 0.10. 2006-11-11 00:22:24 +0000 David Schleef A little pluggy to make sense out of the random chunks we get from multifilesrc. Original commit message from CVS: * configure.ac: * gst/videoparse/Makefile.am: * gst/videoparse/gstvideoparse.c: A little pluggy to make sense out of the random chunks we get from multifilesrc. 2006-11-10 19:18:33 +0000 David Schleef gst/multifile/Makefile.am: Let's not depend on a file that doesn't exist. Original commit message from CVS: * gst/multifile/Makefile.am: Let's not depend on a file that doesn't exist. 2006-11-10 19:07:43 +0000 David Schleef gst/multifilesink/: Remove the old one. Original commit message from CVS: * gst/multifilesink/Makefile.am: * gst/multifilesink/gstmultifilesink.c: * gst/multifilesink/gstmultifilesink.h: * gst/multifilesink/multifilesink.vcproj: Remove the old one. 2006-11-10 18:51:10 +0000 David Schleef Revive multifile[src|sink]. Original commit message from CVS: * configure.ac: * gst/multifile/Makefile.am: * gst/multifile/gstmultifile.c: * gst/multifile/gstmultifilesink.c: * gst/multifile/gstmultifilesrc.c: * gst/multifile/multifile.vproj: Revive multifile[src|sink]. 2006-11-09 14:00:34 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: (gst_dvbsrc_set_property) Original commit message from CVS: 2006-11-09 Zaheer Abbas Merali * sys/dvb/gstdvbsrc.c: (gst_dvbsrc_set_property) (gst_dvbsrc_create), (gst_dvbsrc_output_frontend_stats), (gst_dvbsrc_tune), (gst_dvbsrc_set_pes_filters): Rename set_pes_filter to set_pes_filters for consistency. Do run-time pid filtering. 2006-11-08 11:27:16 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.c: Do not call output_frontend_stats from a method that does not have the gstdvbsrc object. Original commit message from CVS: 2006-11-08 Zaheer Abbas Merali * sys/dvb/gstdvbsrc.c: (read_device): Do not call output_frontend_stats from a method that does not have the gstdvbsrc object. This fixes the build, sorry guys! 2006-11-07 14:46:56 +0000 Zaheer Abbas Merali sys/dvb/gstdvbsrc.*: Force PAT to always be in the filter. Original commit message from CVS: 2006-11-07 Zaheer Abbas Merali * sys/dvb/gstdvbsrc.c: (read_device), (gst_dvbsrc_create), (gst_dvbsrc_output_frontend_stats), (gst_dvbsrc_tune), (gst_dvbsrc_set_pes_filter): * sys/dvb/gstdvbsrc.h: Force PAT to always be in the filter. Try to continue reading after failing 10 times. 2006-11-04 13:26:41 +0000 Thomas Vander Stichele po/POTFILES.in: add dvbsrc Original commit message from CVS: * po/POTFILES.in: add dvbsrc * sys/dvb/gstdvbsrc.c: (gst_dvbsrc_class_init), (gst_dvbsrc_init), (gst_dvbsrc_set_property), (gst_dvbsrc_get_property), (gst_dvbsrc_open_frontend), (gst_dvbsrc_open_dvr), (gst_dvbsrc_finalize), (read_device), (gst_dvbsrc_create), (gst_dvbsrc_start), (gst_dvbsrc_frontend_status), (gst_dvbsrc_tune), (gst_dvbsrc_unset_pes_filters), (gst_dvbsrc_set_pes_filter): * sys/dvb/gstdvbsrc.h: adapter-prefix is a terrible name for a device, so replace it. strerror should be used immediately after the syscall related to it. Actually throw a reasonable GST_ELEMENT_ERROR if we fail to open (pretty easy to trigger by opening the same device twice). Use _OBJECT macros where it makes sense. This element is going to need some work before it moves. 2006-11-02 20:13:26 +0000 Sebastian Dröge Fix enum nicks; only emit no-more-pads once; add support for very fast encoding mode in upcoming 4.40.0 release (#369... Original commit message from CVS: Patch by: Sebastian Dröge * configure.ac: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_mode_get_type), (gst_wavpack_enc_correction_mode_get_type), (gst_wavpack_enc_joint_stereo_mode_get_type), (gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config): Fix enum nicks; only emit no-more-pads once; add support for very fast encoding mode in upcoming 4.40.0 release (#369539). 2006-11-01 10:19:18 +0000 Sergey Scobich sys/: Wait until the window is created before using it; guard unistd.h includes with HAVE_UNISTD_H. (#366523) Original commit message from CVS: Patch by: Sergey Scobich * sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_window_thread), (gst_directdrawsink_create_default_window): * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.c: Wait until the window is created before using it; guard unistd.h includes with HAVE_UNISTD_H. (#366523) * win32/vs8/libgstdirectdraw.vcproj: * win32/vs8/libgstdirectsound.vcproj: Update project files. 2006-10-31 10:31:18 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Handle unbounded length streams a bit better. Fixes #367696. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_duration), (gst_qtdemux_handle_src_query), (qtdemux_parse_tree), (qtdemux_parse_trak): Handle unbounded length streams a bit better. Fixes #367696. 2006-10-29 19:08:01 +0000 Tim-Philipp Müller ext/dts/gstdtsdec.c: Fix flow handling and buffer refcounting (gst_pad_push() takes ownership of the buffer passed to... Original commit message from CVS: * ext/dts/gstdtsdec.c: (gst_dtsdec_handle_frame): Fix flow handling and buffer refcounting (gst_pad_push() takes ownership of the buffer passed to it, the buffer does not have to be unreffed no matter what flow value gst_pad_push() returns). 2006-10-28 16:00:51 +0000 Tim-Philipp Müller gst/audioresample/gstaudioresample.c: Another typo fix (#366212). Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init): Another typo fix (#366212). 2006-10-26 14:07:08 +0000 Edgard Lima * ChangeLog: * gst/nuvdemux/gstnuvdemux.c: * gst/nuvdemux/gstnuvdemux.h: Fixed bug for files with timestamps less than 0. Original commit message from CVS: Fixed bug for files with timestamps less than 0. 2006-10-21 22:56:03 +0000 David Schleef I copied over filesink a while ago and modified it to work as multifilesink. Might as well check it in. This could ... Original commit message from CVS: * configure.ac: * gst/multifilesink/Makefile.am: * gst/multifilesink/gstmultifilesink.c: * gst/multifilesink/gstmultifilesink.h: I copied over filesink a while ago and modified it to work as multifilesink. Might as well check it in. This could use some work before being declared useful. 2006-10-17 15:16:47 +0000 Tim-Philipp Müller Activate pads before adding them to running element. Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_set_wp_config): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_create_src_pad): * gst/nuvdemux/gstnuvdemux.c: (gst_nuv_demux_create_pads): * tests/check/elements/wavpackparse.c: (wavpackparse_found_pad): Activate pads before adding them to running element. 2006-10-17 14:57:17 +0000 Josep Torra Valles gst/qtdemux/qtdemux.c: Make compile with Forte compiler, mostly don't do pointer arithmetic with void pointers (#3626... Original commit message from CVS: Patch by: Josep Torra Valles * gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_sink_event), (next_entry_size), (qtdemux_inflate), (qtdemux_parse_moov), (qtdemux_parse_tree), (qtdemux_parse_trak), (qtdemux_tag_add_str), (qtdemux_tag_add_num), (qtdemux_tag_add_date), (qtdemux_tag_add_gnre): Make compile with Forte compiler, mostly don't do pointer arithmetic with void pointers (#362626). 2006-10-17 14:40:20 +0000 Edgard Lima * ChangeLog: * gst/nuvdemux/gstnuvdemux.c: Just a cast to make it compile oos big_endian systems. Original commit message from CVS: Just a cast to make it compile oos big_endian systems. 2006-10-17 14:24:18 +0000 Edgard Lima * ChangeLog: * configure.ac: * gst/nuvdemux/Makefile.am: * gst/nuvdemux/gstnuvdemux.c: * gst/nuvdemux/gstnuvdemux.h: Created new element nuvdemux. Original commit message from CVS: Created new element nuvdemux. 2006-10-17 11:04:14 +0000 Josep Torra Valles gst/nsf/: Fix some things the Forte compiler warns about (#362626). Original commit message from CVS: Patch by: Josep Torra Valles * gst/nsf/fds_snd.c: * gst/nsf/mmc5_snd.c: * gst/nsf/nsf.c: * gst/nsf/vrc7_snd.c: * gst/nsf/vrcvisnd.c: Fix some things the Forte compiler warns about (#362626). 2006-10-17 10:59:55 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.*: Avoid void pointer usage, better use guint8 * instead. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_moov), (qtdemux_parse), (qtdemux_node_dump_foreach), (qtdemux_dump_mvhd), (qtdemux_dump_tkhd), (qtdemux_dump_elst), (qtdemux_dump_mdhd), (qtdemux_dump_hdlr), (qtdemux_dump_vmhd), (qtdemux_dump_dref), (qtdemux_dump_stsd), (qtdemux_dump_stts), (qtdemux_dump_stss), (qtdemux_dump_stsc), (qtdemux_dump_stsz), (qtdemux_dump_stco), (qtdemux_dump_co64), (qtdemux_dump_dcom), (qtdemux_dump_cmvd), (qtdemux_dump_unknown), (qtdemux_tree_get_child_by_type), (qtdemux_tree_get_sibling_by_type): * gst/qtdemux/qtdemux.h: Avoid void pointer usage, better use guint8 * instead. 2006-10-11 20:33:48 +0000 Tim-Philipp Müller Port simple deinterlacer from 0.8. Use at your own risk, don't blame me for anything it does or does not do to your p... Original commit message from CVS: * configure.ac: * gst/deinterlace/Makefile.am: * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_base_init), (gst_deinterlace_class_init), (gst_deinterlace_init), (gst_deinterlace_stop), (gst_deinterlace_transform_caps), (gst_deinterlace_set_caps), (gst_deinterlace_transform_ip), (gst_deinterlace_set_property), (gst_deinterlace_get_property): * gst/deinterlace/gstdeinterlace.h: Port simple deinterlacer from 0.8. Use at your own risk, don't blame me for anything it does or does not do to your precious pictures. 2006-10-11 13:49:26 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Add some fourcc for DV format. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add some fourcc for DV format. 2006-10-10 18:54:05 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Printf format fixes. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (extract_initial_length_and_fourcc), (gst_qtdemux_loop_state_header): Printf format fixes. * sys/dvb/gstdvbsrc.c: Use "_stdint.h". 2006-10-10 16:09:58 +0000 Zaheer Abbas Merali sys/dvb/: Remove these files, not needed use system files. Original commit message from CVS: 2006-10-10 Zaheer Abbas Merali * sys/dvb/Makefile.am: * sys/dvb/dvb-api/Makefile.am: * sys/dvb/dvb-api/audio.h: * sys/dvb/dvb-api/ca.h: * sys/dvb/dvb-api/dmx.h: * sys/dvb/dvb-api/frontend.h: * sys/dvb/dvb-api/net.h: * sys/dvb/dvb-api/osd.h: * sys/dvb/dvb-api/version.h: * sys/dvb/dvb-api/video.h: Remove these files, not needed use system files. * sys/dvb/gstdvbsrc.c: (gst_dvbsrc_set_property), (gst_dvbsrc_create), (gst_dvbsrc_output_frontend_stats), (gst_dvbsrc_tune): Fix warnings, uint16_t etc. is in stdint.h. Use system includes not our local ones. 2006-10-10 15:55:25 +0000 Zaheer Abbas Merali * po/.gitignore: Buildbot, I do as you command. http://build.fluendo.com:8080/gen64-bad-full/builds/475/cvs%20ignore/1 Original commit message from CVS: Buildbot, I do as you command. http://build.fluendo.com:8080/gen64-bad-full/builds/475/cvs%20ignore/1 2006-10-10 15:47:49 +0000 Zaheer Abbas Merali Add dvb detection and allow dvbsrc to be built. Original commit message from CVS: 2006-10-10 Zaheer Abbas Merali * configure.ac: * sys/Makefile.am: Add dvb detection and allow dvbsrc to be built. 2006-10-10 15:05:32 +0000 Zaheer Abbas Merali Initial import of dvbsrc. Original commit message from CVS: 2006-10-10 Zaheer Abbas Merali * configure.ac: * sys/Makefile.am: * sys/dvb/AUTHORS: * sys/dvb/Makefile.am: * sys/dvb/README: * sys/dvb/dvb-api/Makefile.am: * sys/dvb/dvb-api/audio.h: * sys/dvb/dvb-api/ca.h: * sys/dvb/dvb-api/dmx.h: * sys/dvb/dvb-api/frontend.h: * sys/dvb/dvb-api/net.h: * sys/dvb/dvb-api/osd.h: * sys/dvb/dvb-api/version.h: * sys/dvb/dvb-api/video.h: * sys/dvb/gstdvbsrc.c: * sys/dvb/gstdvbsrc.h: Initial import of dvbsrc. Currently won't be built. 2006-10-10 12:49:02 +0000 Josep Torre Valles ext/gnomevfs/: Fix URI interface implementation return type. Original commit message from CVS: 2006-10-10 Zaheer Abbas Merali Patch by: Josep Torre Valles * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: Fix URI interface implementation return type. * ext/pango/gsttextoverlay.c: (gst_text_overlay_set_property): Fix what looks like a copy/paste issue when assigning values. * gst-libs/gst/audio/gstaudiofiltertemplate.c: (gst_audio_filter_template_get_type): Cast to prevent Forte warnings. * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_create): Fix URI interface implementation return type. gst_pad_query_position requires a signed integer pointer as 3rd parameter, GstClockTime is unsigned. * gst/audioconvert/audioconvert.c: Fix integer overflow when treated as signed. * gst/audioresample/resample.c: (resample_add_input_data): Cast to prevent warnings on Forte. * gst/ffmpegcolorspace/imgconvert.c: (build_rgb_palette): Fix integer overflow when treated as signed. * gst/ffmpegcolorspace/imgconvert_template.h: Fix integer overflow when treated as signed. RGBA_OUT shifts bits. * gst/playback/gstdecodebin.c: (queue_filled_cb), (cleanup_decodebin): Who initialises a guint to -1! Cast function pointers to prevent warnings on Forte. * gst/playback/gstplaybasebin.c: (queue_deadlock_check), (queue_threshold_reached): Cast function pointers correctly to prevent warnings on Forte. * gst/playback/gststreaminfo.c: (gst_stream_info_dispose): Cast function pointers correctly to prevent warnings on Forte. * gst/subparse/gstssaparse.c: (gst_ssa_parse_setcaps): Obvious change to unsigned, 0xEF > max signed char. * gst/tcp/gstmultifdsink.c: (get_buffers_max), (count_burst_unit): GstClockTime is unsigned, initialise correctly. * gst/tcp/gsttcp.c: (gst_tcp_socket_write): Cast so pointer arithemetic doesn't cause warnings on Forte. * gst/videorate/gstvideorate.c: Use correct return value. * tests/examples/seek/scrubby.c: GstClockTime is unsigned, initialise correctly. 2006-10-10 09:57:19 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Reorganise some stuff. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_init), (gst_qtdemux_push_event), (gst_qtdemux_do_seek), (gst_qtdemux_change_state), (extract_initial_length_and_fourcc), (gst_qtdemux_loop_state_header), (gst_qtdemux_activate_segment), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop), (gst_qtdemux_post_buffering), (gst_qtdemux_chain), (gst_qtdemux_add_stream), (qtdemux_process_redirects), (qtdemux_parse_tree), (qtdemux_parse_trak): Reorganise some stuff. Parse RTSP redirection URLS. 2006-10-07 11:37:59 +0000 Tim-Philipp Müller docs/plugins/: Add/update docs stuff. Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-swfdec.xml: * docs/plugins/inspect/plugin-videocrop.xml: * docs/plugins/inspect/plugin-wavpack.xml: Add/update docs stuff. 2006-10-06 15:56:01 +0000 René Stadler Add ReplayGain analysis element (#357069). Original commit message from CVS: Patch by: René Stadler * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/replaygain/Makefile.am: * gst/replaygain/gstrganalysis.c: (gst_rg_analysis_base_init), (gst_rg_analysis_class_init), (gst_rg_analysis_init), (gst_rg_analysis_set_property), (gst_rg_analysis_get_property), (gst_rg_analysis_start), (gst_rg_analysis_set_caps), (gst_rg_analysis_transform_ip), (gst_rg_analysis_event), (gst_rg_analysis_stop), (gst_rg_analysis_handle_tags), (gst_rg_analysis_handle_eos), (gst_rg_analysis_track_result), (gst_rg_analysis_album_result), (plugin_init): * gst/replaygain/gstrganalysis.h: * gst/replaygain/rganalysis.c: (yule_filter), (butter_filter), (apply_filters), (reset_filters), (accumulator_add), (accumulator_clear), (accumulator_result), (rg_analysis_new), (rg_analysis_set_sample_rate), (rg_analysis_destroy), (rg_analysis_analyze_mono_float), (rg_analysis_analyze_stereo_float), (rg_analysis_analyze_mono_int16), (rg_analysis_analyze_stereo_int16), (rg_analysis_analyze), (rg_analysis_track_result), (rg_analysis_album_result), (rg_analysis_reset_album), (rg_analysis_reset): * gst/replaygain/rganalysis.h: Add ReplayGain analysis element (#357069). * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/rganalysis.c: (get_expected_gain), (setup_rganalysis), (cleanup_rganalysis), (set_playing_state), (send_eos_event), (send_tag_event), (poll_eos), (poll_tags), (fail_unless_track_gain), (fail_unless_track_peak), (fail_unless_album_gain), (fail_unless_album_peak), (fail_if_track_tags), (fail_if_album_tags), (fail_unless_num_tracks), (test_buffer_const_float_mono), (test_buffer_const_float_stereo), (test_buffer_const_int16_mono), (test_buffer_const_int16_stereo), (test_buffer_square_float_mono), (test_buffer_square_float_stereo), (test_buffer_square_int16_mono), (test_buffer_square_int16_stereo), (push_buffer), (GST_START_TEST), (rganalysis_suite), (main): Unit tests for the new replaygain element. 2006-10-06 15:49:39 +0000 Wim Taymans ext/faad/gstfaad.c: Some cleanups. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_chain), (gst_faad_close_decoder): Some cleanups. Added some more debugging. Don't ever ignore unlinked, we're not a demuxer. * gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream): Activate pad before adding it to the element. 2006-10-06 12:02:09 +0000 Michael Smith ext/theora/theoradec.*: Port lots of changes from theoradec to theoraexpdec. Original commit message from CVS: * ext/theora/theoradec.c: (gst_theoradec_reset), (theora_get_query_types), (theora_dec_src_query), (theora_dec_src_event), (theora_dec_sink_event), (theora_handle_comment_packet), (theora_handle_type_packet), (theora_handle_header_packet), (clip_buffer), (theora_dec_push), (theora_handle_422_image), (theora_handle_420_image), (theora_handle_data_packet), (theora_dec_chain), (theora_dec_change_state): * ext/theora/theoradec.h: Port lots of changes from theoradec to theoraexpdec. This catches this plugin up to theoradec. Note that duplicate frames are broken in theoradec at the moment. 2006-10-06 11:31:11 +0000 Tim-Philipp Müller gst/spectrum/gstspectrum.c: Fix mem leak, avoid unnecessary memcpy. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_transform_ip): Fix mem leak, avoid unnecessary memcpy. 2006-10-06 02:29:35 +0000 Stefan Kost gst/spectrum/gstspectrum.c: Removed cruft code that was just commented out. Removed some obsolete debug logs statements. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_init), (gst_spectrum_transform_ip): Removed cruft code that was just commented out. Removed some obsolete debug logs statements. 2006-10-05 18:14:46 +0000 Tim-Philipp Müller Another batch of printf format fixes. Original commit message from CVS: * ext/dts/gstdtsdec.c: (gst_dtsdec_chain): * ext/musicbrainz/gsttrm.c: (gst_trm_setcaps): * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_sink_set_caps): * gst/qtdemux/qtdemux.c: (gst_qtdemux_chain), (qtdemux_parse), (qtdemux_parse_trak): * gst/spectrum/gstspectrum.c: (gst_spectrum_transform_ip): Another batch of printf format fixes. 2006-10-05 15:55:20 +0000 Tim-Philipp Müller Printf format fixes. Original commit message from CVS: * ext/alsa/gstalsadeviceprobe.c: (gst_alsa_device_property_probe_get_values): * ext/alsa/gstalsasink.c: (set_hwparams): * ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain_elem_pad), (gst_ogg_chain_new_stream), (gst_ogg_demux_read_chain): * ext/ogg/gstoggmux.c: (gst_ogg_mux_send_headers), (gst_ogg_mux_process_best_pad): * ext/ogg/gstoggparse.c: (gst_ogg_parse_new_stream), (gst_ogg_parse_chain): * ext/ogg/gstogmparse.c: (gst_ogm_parse_stream_header): * ext/vorbis/vorbisdec.c: (vorbis_handle_data_packet): * ext/vorbis/vorbisenc.c: (gst_vorbis_enc_setup), (gst_vorbis_enc_buffer_check_discontinuous): * ext/vorbis/vorbisparse.c: (vorbis_parse_src_query): * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_render): * gst-libs/gst/cdda/gstcddabasesrc.c: (gst_cdda_base_src_handle_track_seek): * gst-libs/gst/rtp/gstbasertpdepayload.c: (gst_base_rtp_depayload_push_full): * gst-libs/gst/rtp/gstbasertppayload.c: (gst_basertppayload_push): * gst/audioresample/resample.c: (resample_input_pushthrough): * gst/playback/gstplaybasebin.c: (queue_out_of_data): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_handle_clients): * gst/typefind/gsttypefindfunctions.c: (mp3_type_find_at_offset), (wavpack_type_find): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_create): * sys/xvimage/xvimagesink.c: (gst_xvimage_buffer_destroy), (gst_xvimagesink_check_xshm_calls), (gst_xvimagesink_xvimage_new): * tests/check/elements/volume.c: (GST_START_TEST): Printf format fixes. 2006-10-04 22:37:07 +0000 Tim-Philipp Müller gst/videocrop/gstvideocrop.*: Handle packed YUV formats (UYVY, YUY2, YUYV) separately; also, fix passthrough mode; la... Original commit message from CVS: * gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init), (gst_video_crop_init), (gst_video_crop_get_image_details_from_caps), (gst_video_crop_transform_packed_complex), (gst_video_crop_transform_packed_simple), (gst_video_crop_transform), (gst_video_crop_transform_caps), (gst_video_crop_set_caps), (gst_videocrop_clear_negotiated_caps_locked), (gst_video_crop_set_property): * gst/videocrop/gstvideocrop.h: Handle packed YUV formats (UYVY, YUY2, YUYV) separately; also, fix passthrough mode; lastly, clear negotiated basetransform caps when the cropping changes in order to force renegotiation. 2006-10-04 20:05:07 +0000 Tim-Philipp Müller tests/icles/: Visual test for videocrop, shows that packed yuv doesn't work right yet. --with-ffmpegcolorspace option... Original commit message from CVS: * tests/icles/.cvsignore: * tests/icles/Makefile.am: * tests/icles/videocrop-test.c: (quit_mainloop), (tick_cb), (test_with_caps), (video_crop_get_test_caps), (main): Visual test for videocrop, shows that packed yuv doesn't work right yet. --with-ffmpegcolorspace option doesn't work yet for unknown reasons (another basetransform issue?) 2006-10-04 10:55:21 +0000 Tim-Philipp Müller Remove more v4l2 stuff, hopefully fixing 'make distcheck' again. Original commit message from CVS: * po/POTFILES.in: * sys/v4l2/.cvsignore: Remove more v4l2 stuff, hopefully fixing 'make distcheck' again. 2006-10-04 10:29:22 +0000 Thomas Vander Stichele removed v4l2 Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-video4linux2.xml: * gst-plugins-bad.spec.in: removed v4l2 2006-10-03 18:32:31 +0000 Thomas Vander Stichele * tests/icles/Makefile.am: * tests/icles/v4l2src-test.c: removing icle for v4l2 Original commit message from CVS: removing icle for v4l2 2006-10-03 18:27:57 +0000 Thomas Vander Stichele * configure.ac: remove last cond Original commit message from CVS: remove last cond 2006-10-03 18:23:21 +0000 Thomas Vander Stichele moved to gst-plugins-good Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/v4l2/Makefile.am: * sys/v4l2/README: * sys/v4l2/gstv4l2.c: * sys/v4l2/gstv4l2colorbalance.c: * sys/v4l2/gstv4l2colorbalance.h: * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/gstv4l2tuner.h: * sys/v4l2/gstv4l2vidorient.c: * sys/v4l2/gstv4l2vidorient.h: * sys/v4l2/gstv4l2xoverlay.c: * sys/v4l2/gstv4l2xoverlay.h: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2_calls.h: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: moved to gst-plugins-good 2006-10-03 13:47:10 +0000 Thomas Vander Stichele * sys/v4l2/gstv4l2object.c: comment out the notifies for removed properties Original commit message from CVS: comment out the notifies for removed properties 2006-10-03 13:30:48 +0000 Thomas Vander Stichele sys/v4l2/gstv4l2object.c: comment out the properties that are already part of the tuner interface. Original commit message from CVS: * sys/v4l2/gstv4l2object.c: (gst_v4l2_object_install_properties_helper): comment out the properties that are already part of the tuner interface. 2006-10-03 13:18:59 +0000 Zaheer Abbas Merali sys/v4l2/gstv4l2src.c: Improve docs. Original commit message from CVS: 2006-10-03 Zaheer Abbas Merali * sys/v4l2/gstv4l2src.c: Improve docs. 2006-10-02 13:28:49 +0000 Tim-Philipp Müller ext/xvid/gstxvid.c: Set rank of xviddec to NONE until someone fixes it (too many crasher bug reports against totem, p... Original commit message from CVS: * ext/xvid/gstxvid.c: (plugin_init): Set rank of xviddec to NONE until someone fixes it (too many crasher bug reports against totem, people should use gst-ffmpeg). 2006-09-28 17:08:47 +0000 Wim Taymans sys/v4l2/: Framerate can be 0/1 too. Original commit message from CVS: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_all_caps), (gst_v4l2src_get_caps): * sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists): Framerate can be 0/1 too. Init framerate to 0/1 before querying it so that we can detect devices that don't know about a framerate. Add some more debugging info. 2006-09-28 14:31:41 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Add support for 'yv12' fourcc. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add support for 'yv12' fourcc. 2006-09-27 17:47:57 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * tests/icles/v4l2src-test.c: Removed set-undef-fps. Original commit message from CVS: Removed set-undef-fps. 2006-09-27 17:04:22 +0000 Wim Taymans sys/v4l2/: Renamed some properties to match the tuner interface naming. Original commit message from CVS: * sys/v4l2/gstv4l2object.c: (gst_v4l2_object_install_properties_helper), (gst_v4l2_object_new), (gst_v4l2_object_set_property_helper), (gst_v4l2_object_get_property_helper), (gst_v4l2_set_defaults): * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init), (gst_v4l2src_create): * sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_contains_channel), (gst_v4l2_tuner_list_channels), (gst_v4l2_tuner_set_channel_and_notify), (gst_v4l2_tuner_get_channel), (gst_v4l2_tuner_contains_norm), (gst_v4l2_tuner_list_norms), (gst_v4l2_tuner_set_norm_and_notify), (gst_v4l2_tuner_get_norm): * sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities), (gst_v4l2_fill_lists), (gst_v4l2_empty_lists): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_get_fps): Renamed some properties to match the tuner interface naming. 2006-09-27 16:14:18 +0000 Wim Taymans Small cleanups. Original commit message from CVS: * sys/v4l2/gstv4l2object.c: (gst_v4l2_object_set_property_helper), (gst_v4l2_set_defaults): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_read), (gst_v4l2src_create): * sys/v4l2/gstv4l2xoverlay.c: (gst_v4l2_xoverlay_open): * sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities), (gst_v4l2_fill_lists), (gst_v4l2_open), (gst_v4l2_set_norm), (gst_v4l2_get_frequency), (gst_v4l2_set_frequency), (gst_v4l2_signal_strength), (gst_v4l2_get_attribute), (gst_v4l2_set_attribute), (gst_v4l2_get_input), (gst_v4l2_set_input): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_grab_frame), (gst_v4l2src_get_capture), (gst_v4l2src_set_capture), (gst_v4l2src_capture_init), (gst_v4l2src_capture_start), (gst_v4l2src_capture_stop), (gst_v4l2src_buffer_new): * tests/icles/v4l2src-test.c: (my_bus_callback), (main): Small cleanups. Fix error messages. Use locks when getting timestamps. Fix leaks in test. Add licensing header to tests. 2006-09-27 15:14:07 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2src_calls.c: * tests/icles/v4l2src-test.c: Some cleanups and comments. Original commit message from CVS: Some cleanups and comments. 2006-09-26 14:17:54 +0000 Wim Taymans docs/plugins/: Add v4l2 plugin to the docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: Add v4l2 plugin to the docs. * sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_read), (gst_v4l2src_get_mmap), (gst_v4l2src_create): * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2vidorient.c: Fix docs. Remove some more externs. 2006-09-26 13:18:06 +0000 Wim Taymans sys/v4l2/Makefile.am: Fix makefile, list libs in stack order. Original commit message from CVS: * sys/v4l2/Makefile.am: Fix makefile, list libs in stack order. * sys/v4l2/gstv4l2colorbalance.c: * sys/v4l2/gstv4l2colorbalance.h: * sys/v4l2/gstv4l2object.c: (gst_v4l2_device_get_type), (gst_v4l2_object_install_properties_helper): * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_get_read), (gst_v4l2src_get_mmap), (gst_v4l2src_create): * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.h: * sys/v4l2/gstv4l2vidorient.h: * sys/v4l2/gstv4l2xoverlay.h: * sys/v4l2/v4l2_calls.h: * sys/v4l2/v4l2src_calls.h: Fix coding style: - Remove extern from functions. - Fix header indentation. Fix Flags, add defaults for properties. Remove unused enums. Fix TOO_LAZY in error messages. 2006-09-26 11:06:17 +0000 Wim Taymans sys/v4l2/: Fix pass at code cleanups, move errors cases out of the normal flow for additional code clarity. Original commit message from CVS: * sys/v4l2/gstv4l2object.c: (gst_v4l2_class_probe_devices), (gst_v4l2_probe_needs_probe), (gst_v4l2_object_install_properties_helper), (gst_v4l2_object_new), (gst_v4l2_object_destroy), (gst_v4l2_object_set_property_helper), (gst_v4l2_object_get_property_helper), (gst_v4l2_set_defaults), (gst_v4l2_object_start), (gst_v4l2_object_stop): * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init), (gst_v4l2src_init), (gst_v4l2src_dispose), (gst_v4l2src_set_property), (gst_v4l2src_get_property), (gst_v4l2src_fixate), (gst_v4l2src_get_caps), (gst_v4l2src_set_caps), (gst_v4l2src_get_read), (gst_v4l2src_get_mmap), (gst_v4l2src_create): * sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities), (gst_v4l2_open), (gst_v4l2_close), (gst_v4l2_get_norm), (gst_v4l2_set_norm), (gst_v4l2_get_frequency), (gst_v4l2_set_frequency), (gst_v4l2_signal_strength), (gst_v4l2_get_attribute), (gst_v4l2_set_attribute), (gst_v4l2_get_input), (gst_v4l2_set_input): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_queue_frame), (gst_v4l2src_grab_frame), (gst_v4l2src_get_capture), (gst_v4l2src_set_capture), (gst_v4l2src_capture_init), (gst_v4l2src_capture_start), (gst_v4l2src_capture_stop), (gst_v4l2src_capture_deinit), (gst_v4l2src_get_size_limits), (gst_v4l2src_set_fps), (gst_v4l2src_get_fps), (gst_v4l2src_buffer_finalize), (gst_v4l2src_buffer_new): Fix pass at code cleanups, move errors cases out of the normal flow for additional code clarity. 2006-09-23 13:21:43 +0000 Wim Taymans ext/cdaudio/gstcdaudio.c: Port to 0.10. Original commit message from CVS: * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init), (gst_cdaudio_init), (gst_cdaudio_set_property), (gst_cdaudio_get_property), (gst_cdaudio_change_state), (gst_cdaudio_send_event), (gst_cdaudio_get_query_types), (gst_cdaudio_query), (cdaudio_uri_set_uri): Port to 0.10. 2006-09-23 00:28:35 +0000 David Schleef sys/glsink/glimagesink.c: Fix problems when the element cannot open the display. (fixes #357212) Original commit message from CVS: * sys/glsink/glimagesink.c: Fix problems when the element cannot open the display. (fixes #357212) 2006-09-22 16:08:38 +0000 Tim-Philipp Müller configure.ac: Up requirements to -base CVS and core CVS (the format for the video orientation interface used by v4l2s... Original commit message from CVS: * configure.ac: Up requirements to -base CVS and core CVS (the format for the video orientation interface used by v4l2src and the latter since that's what -base CVS requires). 2006-09-22 15:59:59 +0000 Tim-Philipp Müller ext/directfb/dfbvideosink.c: Lower rank from SECONDARY to MARGINAL. Plugins in -bad that might be autoplugged shouldn... Original commit message from CVS: * ext/directfb/dfbvideosink.c: (plugin_init): Lower rank from SECONDARY to MARGINAL. Plugins in -bad that might be autoplugged shouldn't trump plugins in -base, -good or -ugly (in this case ximagesink). * sys/glsink/glimagesink.c: (plugin_init): Set rank to NONE to prevent it from being autoplugged until errors are handled properly (see #357212). 2006-09-21 14:01:18 +0000 Edgard Lima * ChangeLog: * ext/neon/Makefile.am: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: Reverted previous commit (2006-09-19 - Allow internal codes from last.fm). As dicussed on #gstreamer it should be don... Original commit message from CVS: Reverted previous commit (2006-09-19 - Allow internal codes from last.fm). As dicussed on #gstreamer it should be done in separete element. 2006-09-21 13:41:42 +0000 Wim Taymans ext/faac/gstfaac.c: Add decoder specific info on the caps. Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_configure_source_pad), (gst_faac_chain): Add decoder specific info on the caps. Some cleanups here and there. 2006-09-19 21:49:52 +0000 Edgard Lima * ChangeLog: * ext/neon/Makefile.am: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: Allow internal codes from last.fm Original commit message from CVS: Allow internal codes from last.fm 2006-09-19 16:24:10 +0000 Edgard Lima * ChangeLog: * tests/icles/v4l2src-test.c: Just a small fix to the app options. Original commit message from CVS: Just a small fix to the app options. 2006-09-19 13:08:35 +0000 Edgard Lima * ChangeLog: * sys/v4l2/Makefile.am: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2vidorient.c: * sys/v4l2/gstv4l2vidorient.h: * tests/icles/v4l2src-test.c: Add Video Orientation interface support to v4l2src. Original commit message from CVS: Add Video Orientation interface support to v4l2src. 2006-09-19 10:10:12 +0000 Wim Taymans ext/gsm/gstgsmdec.*: Handle WAV49 variant (GSM in WAV). Original commit message from CVS: * ext/gsm/gstgsmdec.c: (gst_gsmdec_init), (gst_gsmdec_sink_setcaps), (gst_gsmdec_sink_event), (gst_gsmdec_chain): * ext/gsm/gstgsmdec.h: Handle WAV49 variant (GSM in WAV). Some small cleanups. 2006-09-18 15:36:14 +0000 Edgard Lima * ChangeLog: * sys/v4l2/v4l2src_calls.c: Fix GST_BUFFER_DURATION. Original commit message from CVS: Fix GST_BUFFER_DURATION. 2006-09-16 22:30:50 +0000 Stefan Kost tests/check/: Fix big batch of compiler warnings. Original commit message from CVS: * tests/check/elements/audioresample.c: (GST_START_TEST): * tests/check/elements/videotestsrc.c: (check_rgb_buf): * tests/check/elements/volume.c: (GST_START_TEST): * tests/check/elements/vorbisdec.c: (GST_START_TEST): * tests/check/pipelines/oggmux.c: (validate_ogg_page), (eos_watch), (test_pipeline), (GST_START_TEST): * tests/check/pipelines/theoraenc.c: (GST_START_TEST): * tests/check/pipelines/vorbisenc.c: (GST_START_TEST): Fix big batch of compiler warnings. 2006-09-16 22:14:36 +0000 Stefan Kost More G_OBJECT macro fixing. Original commit message from CVS: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbisfile.c: * ext/lcs/gstcolorspace.c: * ext/wavpack/gstwavpackenc.h: * ext/xine/xineaudiodec.c: * ext/xine/xineaudiosink.c: * ext/xine/xineinput.c: * gst/chart/gstchart.c: * gst/equalizer/gstiirequalizer.c: * gst/games/gstpuzzle.c: * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/nsf/gstnsf.h: * gst/vbidec/gstvbidec.c: * gst/virtualdub/gstxsharpen.c: More G_OBJECT macro fixing. 2006-09-15 19:11:00 +0000 Edgard Lima * ChangeLog: * common: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2xoverlay.c: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2src_calls.c: * tests/icles/v4l2src-test.c: The test application and the plgind error messages has been improved. Original commit message from CVS: The test application and the plgind error messages has been improved. 2006-09-12 20:18:55 +0000 Stefan Kost gst/spectrum/gstspectrum.c: Implements stop() to clear the adapter and event() to clear the adapter on FLUSH_STOP and... Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init), (gst_spectrum_start), (gst_spectrum_stop), (gst_spectrum_event): Implements stop() to clear the adapter and event() to clear the adapter on FLUSH_STOP and EOS. 2006-09-11 18:23:59 +0000 Stefan Kost gst/spectrum/gstspectrum.*: Fix type mixup in spectrum->interval (gdouble<->guint64). Spotted by Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_init), (gst_spectrum_set_property): * gst/spectrum/gstspectrum.h: Fix type mixup in spectrum->interval (gdouble<->guint64). Spotted by René Stadler 2006-09-11 18:02:39 +0000 Stefan Kost gst/spectrum/demo-osssrc.c: Use more defines Original commit message from CVS: * gst/spectrum/demo-osssrc.c: (draw_spectrum), (main): Use more defines * gst/spectrum/gstspectrum.c: (gst_spectrum_init), (gst_spectrum_dispose), (gst_spectrum_set_caps), (gst_spectrum_transform_ip): * gst/spectrum/gstspectrum.h: Apply some of the spectrum cleanup changes suggested in #348085. 2006-09-08 16:47:46 +0000 Tim-Philipp Müller configure.ac: Bump requirements of -base (videocrop test case needs this). Original commit message from CVS: * configure.ac: Bump requirements of -base (videocrop test case needs this). * gst/videocrop/gstvideocrop.c: Document sloppy handling of subsampled chroma planes if left/top cropping is an odd number. * tests/check/elements/videocrop.c: (handoff_cb), (videocrop_test_cropping_init_context), (videocrop_test_cropping_deinit_context), (videocrop_test_cropping), (check_1x1_buffer), (GST_START_TEST), (videocrop_suite), (main): Add another unit test that crops the input to 1x1 (and checks that that pixel has the expected values in a number of formats). 2006-09-08 11:04:24 +0000 Tim-Philipp Müller gst/videocrop/: Some quick tests indicate that it doesn't make a great deal of sense to use liboil here, at least not... Original commit message from CVS: * gst/videocrop/Makefile.am: * gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init), (gst_video_crop_transform_packed), (gst_video_crop_transform_planar): Some quick tests indicate that it doesn't make a great deal of sense to use liboil here, at least not for the memcpy()s we do, so remove liboil usage until there is clear evidence it actually makes a positive difference somewhere. 2006-09-03 21:12:36 +0000 Thomas Vander Stichele * ext/soundtouch/Makefile.am: higher up first Original commit message from CVS: higher up first 2006-09-03 10:46:17 +0000 Tim-Philipp Müller tests/check/elements/videocrop.c: More tests: check passthrough mode and caps transform in both directions with fixed... Original commit message from CVS: * tests/check/elements/videocrop.c: (handoff_cb), (buffer_probe_cb), (test_caps_transform), (test_passthrough), (notgst_value_list_get_nth_int), (videocrop_suite): More tests: check passthrough mode and caps transform in both directions with fixed values, ranges and lists. 2006-09-02 18:49:01 +0000 Tim-Philipp Müller docs/plugins/: Add videocrop to docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: Add videocrop to docs. * gst/videocrop/Makefile.am: * gst/videocrop/gstvideocrop.c: * gst/videocrop/gstvideocrop.h: Move boilerplate stuff and structures into a header file. * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/videocrop.c: (video_crop_get_test_caps), (test_unit_sizes), (videocrop_test_cropping_init_context), (videocrop_test_cropping_deinit_context), (videocrop_test_cropping), (test_cropping), (videocrop_suite): Add unit tests for videocrop. 2006-09-02 15:30:45 +0000 Tim-Philipp Müller Port/rewrite videocrop from scratch for GStreamer-0.10, and make it support all formats videoscale supports (#345653). Original commit message from CVS: * configure.ac: * gst/videocrop/Makefile.am: * gst/videocrop/gstvideocrop.c: (gst_video_crop_base_init), (gst_video_crop_class_init), (gst_video_crop_init), (gst_video_crop_get_image_details_from_caps), (gst_video_crop_get_unit_size), (gst_video_crop_transform_packed), (gst_video_crop_transform_planar), (gst_video_crop_transform), (gst_video_crop_transform_dimension), (gst_video_crop_transform_dimension_value), (gst_video_crop_transform_caps), (gst_video_crop_set_caps), (gst_video_crop_set_property), (gst_video_crop_get_property), (plugin_init): Port/rewrite videocrop from scratch for GStreamer-0.10, and make it support all formats videoscale supports (#345653). 2006-09-02 14:45:04 +0000 Stefan Kost sys/v4l2/: Whitespace cleanups, dashify property-names. Original commit message from CVS: * sys/v4l2/gstv4l2.c: * sys/v4l2/gstv4l2colorbalance.c: * sys/v4l2/gstv4l2object.c: (gst_v4l2_object_install_properties_helper): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_class_init): * sys/v4l2/gstv4l2src.h: Whitespace cleanups, dashify property-names. 2006-09-02 14:28:55 +0000 Stefan Kost sys/v4l2/: Cleanup error messages and unify header comments Original commit message from CVS: * sys/v4l2/gstv4l2.c: * sys/v4l2/gstv4l2colorbalance.c: * sys/v4l2/gstv4l2colorbalance.h: * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/gstv4l2tuner.h: * sys/v4l2/gstv4l2xoverlay.c: (gst_v4l2_xoverlay_open): * sys/v4l2/gstv4l2xoverlay.h: * sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities), (gst_v4l2_open): * sys/v4l2/v4l2_calls.h: * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_queue_frame), (gst_v4l2src_capture_init): * sys/v4l2/v4l2src_calls.h: Cleanup error messages and unify header comments 2006-08-31 13:01:15 +0000 Jan Schmidt gst/nsf/Makefile.am: Add missing GST_LIBS Original commit message from CVS: * gst/nsf/Makefile.am: Add missing GST_LIBS 2006-08-30 18:01:52 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: Another small fix to set_caps function. Original commit message from CVS: Another small fix to set_caps function. 2006-08-30 13:30:13 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: Send new_segment in GST_FORMAT_TIME instead of in GST_FORMAT_BYTES. Original commit message from CVS: Send new_segment in GST_FORMAT_TIME instead of in GST_FORMAT_BYTES. 2006-08-30 11:36:06 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: A small fix to set_caps function. Original commit message from CVS: A small fix to set_caps function. 2006-08-30 11:27:40 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Reset each streams last_flow to GST_FLOW_OK. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_do_seek): Reset each streams last_flow to GST_FLOW_OK. (gst_qtdemux_activate_segment): Removing mystic modifications for good. 2006-08-30 11:07:37 +0000 Stefan Kost gst/qtdemux/qtdemux.c: put back 'segment start<=stop' change that was mystically reverted by the last commit Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment), (qtdemux_parse_tree): put back 'segment start<=stop' change that was mystically reverted by the last commit 2006-08-30 10:43:53 +0000 Stefan Kost gst/qtdemux/qtdemux.c: Fix the build for disabled debug Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment), (qtdemux_parse_tree): Fix the build for disabled debug 2006-08-29 20:59:47 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: Fixed framerate negotiation. Original commit message from CVS: Fixed framerate negotiation. 2006-08-29 12:07:38 +0000 Andrew Andkjar ext/sdl/: Only de-init the subsystem we previously initialised. Avoids borkage when both sdlvideosink and sdlaudiosin... Original commit message from CVS: Patch by: Andrew Andkjar * ext/sdl/sdlaudiosink.c: (gst_sdlaudio_sink_close): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_supported), (gst_sdlvideosink_deinitsdl): Only de-init the subsystem we previously initialised. Avoids borkage when both sdlvideosink and sdlaudiosink are used at the same time and one is shut down. 2006-08-28 17:47:29 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Make sure segment start<=stop in weird quicktime files. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment), (gst_qtdemux_add_stream), (qtdemux_parse_trak), (qtdemux_video_caps): Make sure segment start<=stop in weird quicktime files. 2006-08-28 14:59:05 +0000 Stefan Kost sys/v4l2/v4l2_calls.c: add comments and more debug logging Original commit message from CVS: * sys/v4l2/v4l2_calls.c: (gst_v4l2_fill_lists): add comments and more debug logging 2006-08-24 09:24:11 +0000 Sebastian Dröge ext/wavpack/gstwavpackdec.c: Post audio codec and average bitrate tags on bus (#344472). Original commit message from CVS: Patch by: Sebastian Dröge * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_post_tags), (gst_wavpack_dec_chain): Post audio codec and average bitrate tags on bus (#344472). * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init), (gst_wavpack_parse_src_query): Forward queries in other formats (BYTE format in particular) upstream; add Sebastian to authors. 2006-08-24 00:40:07 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: Fix set_caps to set width and height to the values the driver is really working with. Original commit message from CVS: Fix set_caps to set width and height to the values the driver is really working with. 2006-08-23 10:30:31 +0000 Tim-Philipp Müller ext/wavpack/gstwavpackenc.c: Fix mem leak, send newsegment event on correction pad as well (#352476). Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_push_block): Fix mem leak, send newsegment event on correction pad as well (#352476). * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): Restore original author (on Sebastian's request). * tests/check/Makefile.am: * tests/check/gst-plugins-bad.supp: Add (so far empty) suppression file for -bad. Remove wavpackenc test from VALGRIND_TO_FIX now that the leak is fixed. 2006-08-23 09:22:07 +0000 Sebastian Dröge tests/check/: Add unit tests for wavpack elements (#352476). Original commit message from CVS: Patch by: Sebastian Dröge * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/wavpackdec.c: (setup_wavpackdec), (cleanup_wavpackdec), (GST_START_TEST), (wavpackdec_suite), (main): * tests/check/elements/wavpackenc.c: (setup_wavpackenc), (cleanup_wavpackenc), (GST_START_TEST), (wavpackenc_suite), (main): * tests/check/elements/wavpackparse.c: (wavpackparse_found_pad), (setup_wavpackparse), (cleanup_wavpackparse), (GST_START_TEST), (wavpackparse_suite), (main): Add unit tests for wavpack elements (#352476). 2006-08-23 08:52:50 +0000 Sebastian Dröge Add docs for wavpack elements (#352476). Original commit message from CVS: Patch by: Sebastian Dröge * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-wavpack.xml: * ext/wavpack/gstwavpackdec.c: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackenc.c: * ext/wavpack/gstwavpackenc.h: * ext/wavpack/gstwavpackparse.c: * ext/wavpack/gstwavpackparse.h: Add docs for wavpack elements (#352476). 2006-08-22 20:39:26 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: * sys/v4l2/v4l2src_calls.c: Fixed query size to work with drivers that uses intermediate step like "width * height" to find closest size. Original commit message from CVS: Fixed query size to work with drivers that uses intermediate step like "width * height" to find closest size. 2006-08-21 19:02:13 +0000 Thomas Vander Stichele move gdp plugin to good. Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * gst/gdp/Makefile.am: * gst/gdp/gstgdp.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: * gst/gdp/gstgdppay.h: * tests/check/Makefile.am: * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: move gdp plugin to good. 2006-08-21 16:24:28 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Some more constification. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse), (qtdemux_node_dump_foreach), (qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps): Some more constification. Fix some paletted data formats again. Fix ulaw/alaw in qt. Set correct caps for raw RGB. Add support for yuv2, which is like Yuv2. Add support for raw audio with the NONE fourcc, which is like raw. 2006-08-21 16:21:03 +0000 Wim Taymans ext/gsm/gstgsm.c: Make rank PRIMARY now that GSM seems to work fine. Original commit message from CVS: * ext/gsm/gstgsm.c: (plugin_init): Make rank PRIMARY now that GSM seems to work fine. 2006-08-21 13:59:52 +0000 Tim-Philipp Müller ext/wavpack/: More clean-ups: use shorter variable names to make code easier to read; prefix structures we define wit... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_init), (gst_wavpack_enc_finalize), (gst_wavpack_enc_sink_set_caps), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_format_samples), (gst_wavpack_enc_push_block), (gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block), (gst_wavpack_enc_sink_event), (gst_wavpack_enc_change_state), (gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property): * ext/wavpack/gstwavpackenc.h: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset), (gst_wavpack_parse_src_query), (gst_wavpack_parse_src_event), (gst_wavpack_parse_init), (gst_wavpack_parse_get_upstream_length), (gst_wavpack_parse_loop): More clean-ups: use shorter variable names to make code easier to read; prefix structures we define with 'Gst' to make it clearer where they come from. 2006-08-21 13:26:37 +0000 Tim-Philipp Müller ext/wavpack/gstwavpackenc.c: Fix caps set on buffers and template caps (output is framed) and make them match (#35166... Original commit message from CVS: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_init), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_push_block), (gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block), (gst_wavpack_enc_sink_event): Fix caps set on buffers and template caps (output is framed) and make them match (#351663); use GST_WARNING_OBJECT instead of GST_ELEMENT_WARNING; simplify push_block(); do some small clean-ups here and there; fix memleak (#351663). 2006-08-20 13:05:43 +0000 Stefan Kost gst/audioconvert/gstaudioconvert.c: Lower debug, use g_assert in _get_unit_size Original commit message from CVS: * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_get_unit_size), (set_structure_widths): Lower debug, use g_assert in _get_unit_size * gst/audioresample/gstaudioresample.c: (audioresample_get_unit_size): * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_get_unit_size): * gst/videoscale/gstvideoscale.c: (gst_video_scale_get_unit_size): use g_assert in _get_unit_size 2006-08-18 21:39:00 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.c: Fix resyncing in push mode not stopping re-syncing at embedded zeroes; skip garbage be... Original commit message from CVS: Based on patch by: Sebastian Dröge * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_sink_event), (gst_wavpack_parse_get_upstream_length), (gst_wavpack_parse_find_marker), (gst_wavpack_parse_resync_loop), (gst_wavpack_parse_loop), (gst_wavpack_parse_resync_adapter): Fix resyncing in push mode not stopping re-syncing at embedded zeroes; skip garbage between frames in pull mode as well if necessary; use gst_pad_query_peer_duration(); push EOS and NEWSEGMENT event in right direction (#351659). 2006-08-16 16:50:00 +0000 Andy Wingo ext/ladspa/gstsignalprocessor.c: Make ladspa elements reusable. Fixes #350006. Original commit message from CVS: Patch by: Andy Wingo * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_setup), (gst_signal_processor_start), (gst_signal_processor_stop), (gst_signal_processor_cleanup), (gst_signal_processor_setcaps), (gst_signal_processor_pen_buffer), (gst_signal_processor_flush), (gst_signal_processor_do_pulls), (gst_signal_processor_do_pushes), (gst_signal_processor_change_state): Make ladspa elements reusable. Fixes #350006. 2006-08-16 15:33:12 +0000 Wim Taymans ext/ladspa/gstladspa.c: Convert ' ' into '_'. Try to keep as many characters in the padtemplate names as possible. Original commit message from CVS: * ext/ladspa/gstladspa.c: (gst_ladspa_base_init): Convert ' ' into '_'. Try to keep as many characters in the padtemplate names as possible. 2006-08-16 14:47:50 +0000 Wim Taymans ext/ladspa/gstsignalprocessor.c: A push() gives away our refcount so we should not use the buffer on the pen anymore. Original commit message from CVS: * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_flush), (gst_signal_processor_do_pushes): A push() gives away our refcount so we should not use the buffer on the pen anymore. 2006-08-16 10:40:04 +0000 Sebastian Dröge ext/wavpack/: In push mode, re-sync to next wavpack header if sync is lost (#351557). Also use hyphens instead of und... Original commit message from CVS: Patch by: Sebastian Dröge * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_resync_adapter), (gst_wavpack_parse_chain): In push mode, re-sync to next wavpack header if sync is lost (#351557). Also use hyphens instead of underscores in GObject property names. 2006-08-15 20:29:45 +0000 Sebastian Dröge ext/wavpack/gstwavpackparse.*: Make wavpackparse also work in push-mode (not seekable yet though); some small clean-u... Original commit message from CVS: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_class_init), (gst_wavpack_parse_reset), (gst_wavpack_parse_get_src_query_types), (gst_wavpack_parse_src_query), (gst_wavpack_parse_handle_seek_event), (gst_wavpack_parse_sink_event), (gst_wavpack_parse_init), (gst_wavpack_parse_create_src_pad), (gst_wavpack_parse_push_buffer), (gst_wavpack_parse_loop), (gst_wavpack_parse_chain), (gst_wavpack_parse_sink_activate), (gst_wavpack_parse_sink_activate_pull): * ext/wavpack/gstwavpackparse.h: Patch by: Sebastian Dröge Make wavpackparse also work in push-mode (not seekable yet though); some small clean-ups along the way; add support for SEEKING query and query types function. (#351495). 2006-08-15 19:29:58 +0000 Tim-Philipp Müller Fix leaks (#351502). Original commit message from CVS: * ext/libfame/gstlibfame.c: (gst_fameenc_get_property): * sys/glsink/glimagesink.c: (gst_glimage_sink_get_property): Fix leaks (#351502). 2006-08-14 10:06:55 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Extract all references/redirections if there is more than one and sort them; also extract mini... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_redirects_sort_func), (qtdemux_process_redirects), (qtdemux_parse_tree): Extract all references/redirections if there is more than one and sort them; also extract minimum required bitrate information if available. (#350399) 2006-08-10 17:09:10 +0000 Michal Benes ext/faac/gstfaac.c: Bitrate in the faac structure is per output channel, not total bitrate (#350741). Original commit message from CVS: Patch by: Michal Benes * ext/faac/gstfaac.c: (gst_faac_configure_source_pad): Bitrate in the faac structure is per output channel, not total bitrate (#350741). 2006-08-09 17:41:26 +0000 Tim-Philipp Müller ext/xvid/gstxvidenc.c: Fix GST_ELEMENT_ERROR usage. Original commit message from CVS: * ext/xvid/gstxvidenc.c: (gst_xvidenc_chain): Fix GST_ELEMENT_ERROR usage. 2006-08-09 10:45:32 +0000 Christian Schaller * gst-plugins-bad.spec.in: fixed up and cleaned up the -bad spec file to have proper tests for whats installed and items put in correct categories. Original commit message from CVS: fixed up and cleaned up the -bad spec file to have proper tests for whats installed and items put in correct categories. 2006-08-08 14:55:53 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Fix silly typo. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_tree): Fix silly typo. 2006-08-08 13:57:29 +0000 Edward Hervey tests/check/elements/gdpdepay.c: I forgot to include the file containing the #define :) Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): I forgot to include the file containing the #define :) Now includes "config.h" 2006-08-08 13:45:44 +0000 Edward Hervey tests/check/elements/gdpdepay.c: Ignore test known to fail on PPC64. See #348114. Original commit message from CVS: * tests/check/elements/gdpdepay.c: (gdpdepay_suite): Ignore test known to fail on PPC64. See #348114. 2006-08-04 21:04:55 +0000 Edgard Lima * ChangeLog: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: Allow HTTP redirect (HTTP status code 302). Original commit message from CVS: Allow HTTP redirect (HTTP status code 302). 2006-08-04 13:20:23 +0000 Zaheer Abbas Merali gst/gdp/gstgdpdepay.c: Fix event parsing by gdpdepay. Fixes #349916. Original commit message from CVS: 2006-08-04 Zaheer Abbas Merali * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): Fix event parsing by gdpdepay. Fixes #349916. 2006-08-04 11:38:54 +0000 Andy Wingo ext/ladspa/gstsignalprocessor.h: Add infrastructure for storing whether a processor can work in place or not, and for... Original commit message from CVS: 2006-08-04 Andy Wingo * ext/ladspa/gstsignalprocessor.h: Add infrastructure for storing whether a processor can work in place or not, and for keeping track of its state. Change the FlowReturn instance variable from "state" to "flow_state", all callers changed. * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_setup) (gst_signal_processor_start, gst_signal_processor_stop) (gst_signal_processor_cleanup): New functions to manage the processor's state. (gst_signal_processor_setcaps): start() as well as setup() here. (gst_signal_processor_prepare): Respect CAN_PROCESS_IN_PLACE. (gst_signal_processor_change_state): Stop and cleanup the processor as we go to NULL. * ext/ladspa/gstladspa.c (gst_ladspa_base_init): Reuse buffers if INPLACE_BROKEN is not set. * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_prepare): Do the alloc_buffer in bytes, not frames. 2006-08-04 09:20:26 +0000 Andy Wingo * ext/ladspa/gstsignalprocessor.c: BPB Original commit message from CVS: (gst_signal_processor_src_activate_pull): BPB 2006-08-04 09:05:53 +0000 Andy Wingo * ext/ladspa/gstsignalprocessor.c: ext/ladspa/gstsignalprocessor.c (gst_signal_processor_setcaps) (gst_signal_processor_prepare) (gst_signal_processor_u... Original commit message from CVS: 2006-08-04 Andy Wingo * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_setcaps) (gst_signal_processor_prepare) (gst_signal_processor_update_inputs) (gst_signal_processor_process, gst_signal_processor_pen_buffer) (gst_signal_processor_flush) (gst_signal_processor_sink_activate_push) (gst_signal_processor_src_activate_pull) (gst_signal_processor_change_state): Remove the last of the code that assumes that we process whole buffers at a time. Fix some debugging. Seems to work now in some cases. 2006-08-03 14:48:22 +0000 cascardo at holoscopio dot com ext/Makefile.am: Use right variables when USE_SPC is defined. Original commit message from CVS: Patch by: cascardo at holoscopio dot com * ext/Makefile.am: Use right variables when USE_SPC is defined. 2006-08-02 16:56:19 +0000 Wim Taymans gst/gdp/gstgdpdepay.c: Disable seeking. Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init), (gst_gdp_depay_finalize), (gst_gdp_depay_sink_event), (gst_gdp_depay_src_event), (gst_gdp_depay_chain), (gst_gdp_depay_change_state): Disable seeking. Small cleanups. Clear adapter on disconts. Clear caps when going to READY instead of NULL * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_pay_finalize), (gst_gdp_pay_reset), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_queue_buffer), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_src_event), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: Reset payloader when going to READY. Fix leaked buffers in ->queue on push errors. Disable seeking. Code cleanups. Create packetizer in _init, free in _finalize. 2006-07-31 22:27:22 +0000 Andy Wingo ext/ladspa/gstsignalprocessor.c (gst_signal_processor_process): Fix nframes-choosing. Original commit message from CVS: 2006-08-01 Andy Wingo * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_process): Fix nframes-choosing. (gst_signal_processor_init): Init pending_in and pending_out. 2006-07-31 22:03:09 +0000 Andy Wingo ext/ladspa/gstsignalprocessor.c (gst_signal_processor_init): No more default sample rate, although we never check tha... Original commit message from CVS: 2006-08-01 Andy Wingo * ext/ladspa/gstsignalprocessor.c (gst_signal_processor_init): No more default sample rate, although we never check that the sample rate actually gets set. Something for the future. (gst_signal_processor_setcaps): Some refcount fixes, flow fixes. (gst_signal_processor_event): Refcount fixen. (gst_signal_processor_process): Pull the number of frames to process from the sizes of the buffers in the input pens. (gst_signal_processor_pen_buffer): Remove an incorrect FIXME :) (gst_signal_processor_do_pulls): Add an nframes argument, and use it instead of buffer_frames. (gst_signal_processor_getrange): Refcount fixen, pass nframes on to do_pulls. (gst_signal_processor_chain) (gst_signal_processor_sink_activate_push) (gst_signal_processor_src_activate_pull): Refcount fixen. * ext/ladspa/gstsignalprocessor.h: No more buffer_frames, yay. 2006-07-31 19:44:18 +0000 Stefan Kost ext/ladspa/gstsignalprocessor.c: don't query buffer-frames from caps, add lots of debug-log, try fix for assert (#349... Original commit message from CVS: * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_setcaps), (gst_signal_processor_process): don't query buffer-frames from caps, add lots of debug-log, try fix for assert (#349189) 2006-07-31 17:29:22 +0000 Julien Moutte ext/directfb/dfbvideosink.c: Post an error message. Original commit message from CVS: 2006-07-31 Julien MOUTTE * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_change_state), (gst_dfbvideosink_buffer_alloc): Post an error message. 2006-07-31 16:50:27 +0000 Julien Moutte ext/directfb/dfbvideosink.c: Don't try allocating if we are not setup yet. Fail changing state if setup fails. Original commit message from CVS: 2006-07-31 Julien MOUTTE * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_change_state), (gst_dfbvideosink_buffer_alloc): Don't try allocating if we are not setup yet. Fail changing state if setup fails. 2006-07-31 08:48:36 +0000 Wim Taymans gst/gdp/gstgdpdepay.c: Consume all events except EOS because we generate events from the gdp payload instead. Fixes #... Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init), (gst_gdp_depay_sink_event), (gst_gdp_depay_chain): Consume all events except EOS because we generate events from the gdp payload instead. Fixes #349204 2006-07-29 16:32:26 +0000 Stefan Kost ext/ladspa/gstsignalprocessor.c: Add debugs logs here and there, add more error handling, add some Original commit message from CVS: * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_add_pad_from_template), (gst_signal_processor_init), (gst_signal_processor_setcaps), (gst_signal_processor_process), (gst_signal_processor_pen_buffer), (gst_signal_processor_do_pulls), (gst_signal_processor_getrange), (gst_signal_processor_sink_activate_push), (gst_signal_processor_src_activate_pull), (gst_signal_processor_change_state): Add debugs logs here and there, add more error handling, add some FIXME comments, filed #349189 2006-07-28 17:17:24 +0000 Jan Schmidt gst/audioresample/gstaudioresample.c: Don't leak references to the incoming caps. Clean them up when stopping. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (audioresample_stop), (audioresample_set_caps): Don't leak references to the incoming caps. Clean them up when stopping. * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init), (gst_video_scale_finalize): Don't leak our temporary pixel buffer. * tests/check/Makefile.am: * tests/check/pipelines/simple-launch-lines.c: (run_pipeline), (GST_START_TEST), (simple_launch_lines_suite): Fix leaks and re-enable the test for valgrind checking. 2006-07-28 12:14:06 +0000 Tim-Philipp Müller ext/xvid/gstxviddec.*: Clean-ups and code reflows. Pass return value from gst_pad_alloc_buffer() upstream among other... Original commit message from CVS: * ext/xvid/gstxviddec.c: (gst_xviddec_init), (gst_xviddec_reset), (gst_xviddec_unset), (gst_xviddec_handle_sink_event), (gst_xviddec_setup), (gst_xviddec_negotiate), (gst_xviddec_chain), (gst_xviddec_flush_buffers), (gst_xviddec_src_getcaps), (gst_xviddec_setcaps), (gst_xviddec_change_state): * ext/xvid/gstxviddec.h: Clean-ups and code reflows. Pass return value from gst_pad_alloc_buffer() upstream among other things. Also check for NULL GValue before using GST_VALUE_TYPE macro (#348976). Mass rename of xviddec -> dec variable for better code readability. 2006-07-28 10:19:02 +0000 Tim-Philipp Müller ext/xvid/gstxvid.c: Fix size calculation for I420/YV12. Fixes #348976. Original commit message from CVS: * ext/xvid/gstxvid.c: (gst_xvid_image_fill): Fix size calculation for I420/YV12. Fixes #348976. 2006-07-27 10:50:39 +0000 Wim Taymans ext/gsm/: Fix negotiation. Original commit message from CVS: * ext/gsm/gstgsmdec.c: (gst_gsmdec_init), (gst_gsmdec_sink_setcaps), (gst_gsmdec_sink_event): * ext/gsm/gstgsmenc.c: (gst_gsmenc_init), (gst_gsmenc_setcaps): Fix negotiation. 2006-07-26 10:52:05 +0000 Thomas Vander Stichele gst/gdp/gstgdpdepay.c: proxying get/set caps is the wrong thing to do, since we really do change caps quite fundament... Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_init): proxying get/set caps is the wrong thing to do, since we really do change caps quite fundamentally * tests/check/elements/gdpdepay.c: * tests/check/elements/gdppay.c: remove declaration of buffers, it's already done in gstcheck.h 2006-07-24 21:43:06 +0000 Sébastien Moutte sys/directsound/gstdirectsoundsink.*: Add an attenuation property that will directly attenuate the directsound buffer. Original commit message from CVS: * sys/directsound/gstdirectsoundsink.h: * sys/directsound/gstdirectsoundsink.c: Add an attenuation property that will directly attenuate the directsound buffer. Change the size of the directsound secondary buffer to a half second. Add more debug logs. Add a lock to protect dsound buffer write access. Fix a bad implementation of reset. * sys/directsound/gstdirectdrawsink.c: * sys/directsound/gstdirectdrawsink.h: Add a keep_aspect_ratio property. Do not use overlay if not supported. Add more debug logs. Remove overwrite of WM_ERASEBKGND message handling. It was not redrawing border when keep_aspect_ratio was enabled. * win32/common/config.h: update version waiting an auto-generated config.h 2006-07-23 11:52:34 +0000 Chris Lee Add libopenspc-based SPC decoder element (#348220). Original commit message from CVS: Patch by: Chris Lee * configure.ac: * ext/Makefile.am: * ext/spc/Makefile.am: * ext/spc/gstspc.c: (spc_negotiate), (gst_spc_dec_base_init), (gst_spc_dec_class_init), (gst_spc_dec_init), (gst_spc_dec_chain), (gst_spc_dec_sink_event), (gst_spc_dec_src_event), (gst_spc_dec_src_query), (spc_play), (spc_setup), (gst_spc_dec_change_state), (plugin_init): * ext/spc/gstspc.h: Add libopenspc-based SPC decoder element (#348220). 2006-07-19 14:36:00 +0000 Martin Szulecki sys/v4l2/gstv4l2object.c: If "device-name" is requested and the device is not open, try to temporarily open it to obt... Original commit message from CVS: Patch by: Martin Szulecki * sys/v4l2/gstv4l2object.c: (gst_v4l2_object_get_property_helper): If "device-name" is requested and the device is not open, try to temporarily open it to obtain this information (#342494). 2006-07-19 11:47:20 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file Original commit message from CVS: update spec file 2006-07-19 11:43:50 +0000 Tim-Philipp Müller gst/nsf/nsf.c: Really fix compilation. Apparently it's not enough to just check the return value for errors, but we n... Original commit message from CVS: * gst/nsf/nsf.c: (nsf_load): Really fix compilation. Apparently it's not enough to just check the return value for errors, but we need to check for short reads as well (now if only we handled them too ...). Fixes #347935. 2006-07-18 18:05:15 +0000 Tim-Philipp Müller ext/wavpack/gstwavpackdec.c: Fix caps after previous change to byte order endianness. Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_chain): Fix caps after previous change to byte order endianness. * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_reset), (gst_wavpack_parse_sink_event), (gst_wavpack_parse_init), (gst_wavpack_parse_loop): * ext/wavpack/gstwavpackparse.h: Queue incoming events if there's no source pad yet and send them downstream later when the pad is there. 2006-07-18 16:47:25 +0000 Tim-Philipp Müller ext/wavpack/gstwavpackdec.*: Output audio in native byte order (which is also how we get samples from wavpack); outpu... Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_init), (gst_wavpack_dec_format_samples), (gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain), (gst_wavpack_dec_change_state): * ext/wavpack/gstwavpackdec.h: Output audio in native byte order (which is also how we get samples from wavpack); output samples with 21-24 bit depth with 32 bit width (makes things easier for us). 2006-07-18 15:53:35 +0000 Tim-Philipp Müller ext/wavpack/gstwavpackdec.*: More clean-ups: remove most of the disfunctional correction pad stuff for now, if it eve... Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init), (gst_wavpack_dec_class_init), (gst_wavpack_dec_init), (gst_wavpack_dec_finalize), (gst_wavpack_dec_format_samples), (gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain), (gst_wavpack_dec_sink_event), (gst_wavpack_dec_change_state): * ext/wavpack/gstwavpackdec.h: More clean-ups: remove most of the disfunctional correction pad stuff for now, if it ever gets implemented a lot of stuff will have to be rewritten anyway; redo chain function, move errors to end, error out instead of g_assert()ing. Also rename overly long variable 'wavpackdec' to just 'dec'; miscellaneous other small stuff. 2006-07-18 14:08:06 +0000 Sebastian Dröge configure.ac: Check for wavpack version and define WAVPACK_OLD_API if necessary. Original commit message from CVS: Patch by: Sebastian Dröge * configure.ac: Check for wavpack version and define WAVPACK_OLD_API if necessary. * ext/wavpack/Makefile.am: * ext/wavpack/gstwavpackcommon.c: (gst_wavpack_read_header), (gst_wavpack_read_metadata): * ext/wavpack/gstwavpackcommon.h: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init), (gst_wavpack_dec_class_init), (gst_wavpack_dec_init), (gst_wavpack_dec_finalize), (gst_wavpack_dec_format_samples), (gst_wavpack_dec_clip_outgoing_buffer), (gst_wavpack_dec_chain), (gst_wavpack_dec_sink_event), (gst_wavpack_dec_change_state), (gst_wavpack_dec_request_new_pad), (gst_wavpack_dec_plugin_init): * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_class_init), (gst_wavpack_enc_init), (gst_wavpack_enc_finalize), (gst_wavpack_enc_set_wp_config): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init), (gst_wavpack_parse_finalize), (gst_wavpack_parse_class_init), (gst_wavpack_parse_index_get_entry_from_sample), (gst_wavpack_parse_scan_to_find_sample), (gst_wavpack_parse_handle_seek_event), (gst_wavpack_parse_create_src_pad): * ext/wavpack/gstwavpackstreamreader.c: * ext/wavpack/gstwavpackstreamreader.h: Port to new/official wavpack API, don't use API that was exported in wavpack header files and in the lib but meant to be private, at least not for recent wavpack versions; misc. 'cleanups' (#347443). 2006-07-18 09:36:46 +0000 Wim Taymans gst/nsf/nsf.c: Fix compilation by not ignoring return values of fread. Original commit message from CVS: * gst/nsf/nsf.c: (nsf_load): Fix compilation by not ignoring return values of fread. 2006-07-17 15:09:31 +0000 Thomas Vander Stichele docs/plugins/inspect/: adding more inspect docs Original commit message from CVS: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-spectrum.xml: adding more inspect docs 2006-07-17 14:43:55 +0000 Thomas Vander Stichele docs/plugins/inspect/plugin-gdp.xml: actually commit inspectation of gdp element Original commit message from CVS: * docs/plugins/inspect/plugin-gdp.xml: actually commit inspectation of gdp element 2006-07-17 14:17:45 +0000 Thomas Vander Stichele gst/gdp/: remove parent_class setting, BOILERPLATE does this fix typo in comment Original commit message from CVS: 2006-07-17 Thomas Vander Stichele * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_class_init): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), remove parent_class setting, BOILERPLATE does this (gst_gdp_pay_reset_streamheader): fix typo in comment 2006-07-17 10:25:57 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Store duration in uint64 too instead of clipping. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek), (gst_qtdemux_prepare_current_sample), (gst_qtdemux_loop_state_movie): Store duration in uint64 too instead of clipping. When we do a keyframe seek and the requested time is at the keyframe, don't seek back to the beginning of the keyframe. Fixes #347439. 2006-07-16 14:46:02 +0000 Wim Taymans ext/faad/gstfaad.c: Don't crash on small buffers. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_sync): Don't crash on small buffers. 2006-07-15 11:57:00 +0000 Stefan Kost ext/ivorbis/vorbisfile.c: Reset adapter. Original commit message from CVS: * ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_sink_activate): Reset adapter. 2006-07-15 11:50:25 +0000 Stefan Kost gst/spectrum/: Do not use deprecated gtk functions. Original commit message from CVS: * gst/spectrum/demo-audiotest.c: (main): * gst/spectrum/demo-osssrc.c: (main): Do not use deprecated gtk functions. 2006-07-14 10:34:36 +0000 Thomas Vander Stichele * gst/gdp/Makefile.am: build as a plugin, not a lib Original commit message from CVS: build as a plugin, not a lib 2006-07-14 09:11:11 +0000 Wim Taymans gst/nsf/: Remove crack malloc/free replacement. Original commit message from CVS: * gst/nsf/Makefile.am: * gst/nsf/memguard.c: * gst/nsf/memguard.h: * gst/nsf/types.h: Remove crack malloc/free replacement. 2006-07-13 15:25:58 +0000 Thomas Vander Stichele docs/plugins/: add more plugins and elements to docs Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: add more plugins and elements to docs * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): fix segfaults due to wrong g_free add example * gst/gdp/gstgdppay.c: add example 2006-07-13 15:22:36 +0000 Wim Taymans gst/nsf/Makefile.am: Fix build. Original commit message from CVS: * gst/nsf/Makefile.am: Fix build. 2006-07-13 15:22:20 +0000 Thomas Vander Stichele * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdlvideosink.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: remove sdlvideosink plugin and update the rest Original commit message from CVS: remove sdlvideosink plugin and update the rest 2006-07-13 15:07:28 +0000 Wim Taymans Added NSF decoder plugin. Fixes 151192. Original commit message from CVS: Based on patches by: Johan Dahlin Ronald Bultje * configure.ac: * gst/nsf/Makefile.am: * gst/nsf/dis6502.h: * gst/nsf/fds_snd.c: * gst/nsf/fds_snd.h: * gst/nsf/fmopl.c: * gst/nsf/fmopl.h: * gst/nsf/gstnsf.c: * gst/nsf/gstnsf.h: * gst/nsf/log.c: * gst/nsf/log.h: * gst/nsf/memguard.c: * gst/nsf/memguard.h: * gst/nsf/mmc5_snd.c: * gst/nsf/mmc5_snd.h: * gst/nsf/nes6502.c: * gst/nsf/nes6502.h: * gst/nsf/nes_apu.c: * gst/nsf/nes_apu.h: * gst/nsf/nsf.c: * gst/nsf/nsf.h: * gst/nsf/osd.h: * gst/nsf/types.h: * gst/nsf/vrc7_snd.c: * gst/nsf/vrc7_snd.h: * gst/nsf/vrcvisnd.c: * gst/nsf/vrcvisnd.h: Added NSF decoder plugin. Fixes 151192. 2006-07-13 12:42:29 +0000 Tim-Philipp Müller tests/check/Makefile.am: Only run mpeg2enc unit test if we built the mpeg2enc plugin. Original commit message from CVS: * tests/check/Makefile.am: Only run mpeg2enc unit test if we built the mpeg2enc plugin. 2006-07-13 12:24:58 +0000 Tim-Philipp Müller configure.ac: Don't error out in configure if mjpegtools dev is not there. Original commit message from CVS: * configure.ac: Don't error out in configure if mjpegtools dev is not there. 2006-07-13 11:06:45 +0000 Mark Nauwelaerts Port mpeg2enc to 0.10 (#343184). Original commit message from CVS: Patch by: Mark Nauwelaerts * configure.ac: * ext/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mpeg2enc/gstmpeg2enc.hh: * ext/mpeg2enc/gstmpeg2encoder.cc: * ext/mpeg2enc/gstmpeg2encoder.hh: * ext/mpeg2enc/gstmpeg2encoptions.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.cc: * ext/mpeg2enc/gstmpeg2encpicturereader.hh: * ext/mpeg2enc/gstmpeg2encstreamwriter.cc: * ext/mpeg2enc/gstmpeg2encstreamwriter.hh: Port mpeg2enc to 0.10 (#343184). * tests/check/Makefile.am: * tests/check/elements/.cvsignore: * tests/check/elements/mpeg2enc.c: Add unit test for mpeg2enc. * tests/icles/.cvsignore: Ignore pitch-test. 2006-07-12 09:28:46 +0000 Tim-Philipp Müller gst/spectrum/gstspectrum.c: Fix typo in property nick. Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init): Fix typo in property nick. 2006-07-10 14:49:46 +0000 Wim Taymans gst/filter/: Don't forget new files. Original commit message from CVS: * gst/filter/gstbpwsinc.h: * gst/filter/gstiir.h: * gst/filter/gstlpwsinc.h: Don't forget new files. 2006-07-10 14:43:35 +0000 Wim Taymans * ChangeLog: I'm too lazy to comment this Original commit message from CVS: *** empty log message *** 2006-07-10 14:42:15 +0000 Mathis Hofer Ported the gstfilter plugin to GStreamer 0.10. Original commit message from CVS: Patch by: Mathis Hofer * configure.ac: * gst/filter/Makefile.am: * gst/filter/gstbpwsinc.c: (gst_bpwsinc_dispose), (gst_bpwsinc_base_init), (gst_bpwsinc_class_init), (gst_bpwsinc_init), (bpwsinc_set_caps), (bpwsinc_transform_ip), (bpwsinc_set_property), (bpwsinc_get_property): * gst/filter/gstfilter.c: (plugin_init): * gst/filter/gstfilter.h: * gst/filter/gstiir.c: (gst_iir_dispose), (gst_iir_base_init), (gst_iir_class_init), (gst_iir_init), (iir_set_caps), (iir_transform_ip), (iir_set_property), (iir_get_property): * gst/filter/gstlpwsinc.c: (gst_lpwsinc_dispose), (gst_lpwsinc_base_init), (gst_lpwsinc_class_init), (gst_lpwsinc_init), (lpwsinc_set_caps), (lpwsinc_transform_ip), (lpwsinc_set_property), (lpwsinc_get_property): Ported the gstfilter plugin to GStreamer 0.10. 2006-07-10 09:57:26 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Extract comment information!! Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_udta): Extract comment information!! 2006-07-10 09:46:25 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Extract year/date information (fixes #347079). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_udta), (qtdemux_tag_add_date): Extract year/date information (fixes #347079). 2006-07-07 14:30:26 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Don't crash on twos/sowt/raw audio. #345830. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Don't crash on twos/sowt/raw audio. #345830. 2006-07-07 11:44:05 +0000 Lutz Mueller ext/neon/gstneonhttpsrc.*: Remove unlock function. start/stop will do everything needed Original commit message from CVS: Patch by: Lutz Mueller * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init), (gst_neonhttp_src_init), (gst_neonhttp_src_finalize), (request_dispatch), (gst_neonhttp_src_create), (gst_neonhttp_src_start), (gst_neonhttp_src_get_size), (gst_neonhttp_src_stop), (set_proxy), (set_uri), (gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property), (gst_neonhttp_src_uri_set_uri), (size_header_handler): * ext/neon/gstneonhttpsrc.h: Remove unlock function. start/stop will do everything needed Removed code that was never called. Use gst_pad_alloc_buffer. Don't send EOS - parent class does that for us. Do not escape path. Fixes #346723. Additional code cleanups. 2006-07-03 20:02:56 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Fix silly crasher in state change function; add Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state), (gst_qtdemux_loop_state_header), (qtdemux_video_caps): Fix silly crasher in state change function; add IV41 fourcc (see bug #171111); don't output confusing debug message when skipping atoms. 2006-06-23 09:09:44 +0000 Tim-Philipp Müller Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro. Original commit message from CVS: * ext/directfb/dfbvideosink.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/theora/theoradec.c: * gst/freeze/gstfreeze.c: * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.c: * sys/glsink/glimagesink.c: Use GST_DEBUG_CATEGORY_STATIC where possible (#342503) and fix one GObject boilerplate macro. 2006-06-22 10:10:51 +0000 Cody Russell gst/: Avoid unnecessary class cast check in class_init functions (#337747). Original commit message from CVS: Patch by: Cody Russell * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init): * gst/playback/gststreamselector.c: (gst_stream_selector_class_init): * gst/subparse/gstsubparse.c: (gst_sub_parse_class_init): * gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_class_init): * gst/tcp/gsttcpclientsink.c: (gst_tcp_client_sink_class_init): * gst/tcp/gsttcpclientsrc.c: (gst_tcp_client_src_class_init): * gst/tcp/gsttcpserversink.c: (gst_tcp_server_sink_class_init): * gst/tcp/gsttcpserversrc.c: (gst_tcp_server_src_class_init): * gst/videoscale/gstvideoscale.c: (gst_video_scale_class_init): * gst/videotestsrc/gstvideotestsrc.c: (gst_video_test_src_class_init): * gst/volume/gstvolume.c: (gst_volume_class_init): Avoid unnecessary class cast check in class_init functions (#337747). 2006-06-20 11:07:02 +0000 Wim Taymans gst/modplug/libmodplug/stdafx.h: Fix modplug on AMD64. Fixes #345336. Original commit message from CVS: * gst/modplug/libmodplug/stdafx.h: Fix modplug on AMD64. Fixes #345336. 2006-06-19 14:07:24 +0000 Tim-Philipp Müller configure.ac: Fix check so that future libneon API changes won't break the build. Original commit message from CVS: * configure.ac: Fix check so that future libneon API changes won't break the build. * ext/neon/gstneonhttpsrc.c: Fix build with libneon-0.26.x (#345182). 2006-06-19 13:17:57 +0000 Christian Schaller * gst-plugins-bad.spec.in: add latest plugins Original commit message from CVS: add latest plugins 2006-06-17 15:09:39 +0000 Tim-Philipp Müller configure.ac: Fix --disable-external (can't set conditionals conditionally, #343602). Original commit message from CVS: * configure.ac: Fix --disable-external (can't set conditionals conditionally, #343602). 2006-06-16 15:43:23 +0000 Tim-Philipp Müller tests/check/elements/audioresample.c: Add test case for bug #342789 fixed below. Original commit message from CVS: * tests/check/elements/audioresample.c: (test_reuse), (audioresample_suite): Add test case for bug #342789 fixed below. 2006-06-16 15:17:44 +0000 Tim-Philipp Müller gst/audioresample/gstaudioresample.c: Implement GstBaseTransform::start and ::stop so that audioresample can clear it... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_class_init), (gst_audioresample_init), (audioresample_start), (audioresample_stop), (gst_audioresample_set_property), (gst_audioresample_get_property): Implement GstBaseTransform::start and ::stop so that audioresample can clear its internal state properly and be reused insted of causing non-negotiated errors with playbin under some circumstances (#342789). * tests/check/elements/audioresample.c: (setup_audioresample), (cleanup_audioresample): Need to set element state here so that ::start and ::stop are called. 2006-06-16 12:35:08 +0000 Zaheer Abbas Merali gst/spectrum/Makefile.am: Fix build. Original commit message from CVS: 2006-06-16 Zaheer Abbas Merali * gst/spectrum/Makefile.am: Fix build. 2006-06-16 09:49:07 +0000 Stefan Kost gst/spectrum/: port to use message to get results, cleanly exit when closing the window Original commit message from CVS: * gst/spectrum/demo-audiotest.c: (on_window_destroy), (draw_spectrum), (message_handler), (main): * gst/spectrum/demo-osssrc.c: (on_window_destroy), (draw_spectrum), (message_handler), (main): port to use message to get results, cleanly exit when closing the window * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_dispose), (gst_spectrum_set_property), (gst_spectrum_get_property), (gst_spectrum_set_caps), (gst_spectrum_start), (gst_spectrum_message_new), (gst_spectrum_transform_ip): * gst/spectrum/gstspectrum.h: port to derive from basetransform and send results via messages (like level element) 2006-06-15 15:58:09 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Combine return values from src pad pushes. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek), (gst_qtdemux_combine_flows), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop), (gst_qtdemux_chain), (qtdemux_parse_trak): Combine return values from src pad pushes. 2006-06-15 08:50:09 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Don't crash on files with 0 samples, EOS immediatly instead. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_header), (gst_qtdemux_prepare_current_sample), (gst_qtdemux_advance_sample), (gst_qtdemux_add_stream): Don't crash on files with 0 samples, EOS immediatly instead. Fixes #344944. 2006-06-14 18:07:51 +0000 Wouter Paesen ext/soundtouch/: Make pitch element controllable via GstController interface (#344821). Original commit message from CVS: Patch by: Wouter Paesen * ext/soundtouch/Makefile.am: * ext/soundtouch/gstpitch.cc: Make pitch element controllable via GstController interface (#344821). * configure.ac: Up core requirements to 0.10.8.1/CVS because earlier GstControllers can't handle float properties correctly. Check for GstController CFLAGS and LIBS. * tests/icles/Makefile.am: * tests/icles/pitch-test.c: (main): Add small test program for the above (welcome to the 80s!). 2006-06-14 09:32:27 +0000 Sebastian Dröge ext/wavpack/gstwavpackenc.*: Use bitrate property solely for bitrates and add new bits-per-sample property for the ot... Original commit message from CVS: Patch by: Sebastian Dröge * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_base_init), (gst_wavpack_enc_class_init), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_chain), (gst_wavpack_enc_sink_event), (gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property): * ext/wavpack/gstwavpackenc.h: Use bitrate property solely for bitrates and add new bits-per-sample property for the other stuff. Set duration to 'unknown' in initial header and resend header with proper duration on EOS; update Sebastian's e-mail address. 2006-06-12 11:30:08 +0000 Tim-Philipp Müller ex/: #define red green Original commit message from CVS: * examples/directfb/.cvsignore: * ext/directfb/.cvsignore: #define red green 2006-06-12 11:04:59 +0000 Tim-Philipp Müller gst/spectrum/.cvsignore: Ignore more. Original commit message from CVS: * gst/spectrum/.cvsignore: Ignore more. 2006-06-12 10:53:26 +0000 Tim-Philipp Müller ext/libmms/gstmms.c: Set caps on outgoing buffers. Original commit message from CVS: * ext/libmms/gstmms.c: (gst_mms_create): Set caps on outgoing buffers. * sys/directdraw/gstdirectdrawsink.c: (gst_directdrawsink_init): Comment out unused global instance variable. 2006-06-11 22:37:07 +0000 Thomas Vander Stichele * .gitignore: * tests/check/elements/.gitignore: moap ignore Original commit message from CVS: moap ignore 2006-06-11 13:57:19 +0000 Thomas Vander Stichele autogen.sh: require am17 Original commit message from CVS: * autogen.sh: require am17 * configure.ac: * ext/annodex/Makefile.am: * ext/cdio/Makefile.am: * ext/dv/Makefile.am: * ext/esd/Makefile.am: * ext/flac/Makefile.am: * ext/gdk_pixbuf/Makefile.am: * ext/ladspa/Makefile.am: * ext/libcaca/Makefile.am: * ext/speex/Makefile.am: * ext/taglib/Makefile.am: * sys/oss/Makefile.am: * sys/sunaudio/Makefile.am: * sys/ximage/Makefile.am: clean up build further 2006-06-10 15:33:18 +0000 Sebastian Dröge ext/wavpack/: Add wavpack encoder element (#343131). Original commit message from CVS: Patch by: Sebastian Dröge * ext/wavpack/Makefile.am: * ext/wavpack/gstwavpack.c: (plugin_init): * ext/wavpack/gstwavpackcommon.h: * ext/wavpack/gstwavpackenc.c: (gst_wavpack_enc_mode_get_type), (gst_wavpack_enc_correction_mode_get_type), (gst_wavpack_enc_joint_stereo_mode_get_type), (gst_wavpack_enc_base_init), (gst_wavpack_enc_class_init), (gst_wavpack_enc_init), (gst_wavpack_enc_dispose), (gst_wavpack_enc_sink_set_caps), (gst_wavpack_enc_set_wp_config), (gst_wavpack_enc_format_samples), (gst_wavpack_enc_push_block), (gst_wavpack_enc_chain), (gst_wavpack_enc_rewrite_first_block), (gst_wavpack_enc_sink_event), (gst_wavpack_enc_change_state), (gst_wavpack_enc_set_property), (gst_wavpack_enc_get_property), (gst_wavpack_enc_plugin_init): * ext/wavpack/gstwavpackenc.h: * ext/wavpack/md5.c: * ext/wavpack/md5.h: Add wavpack encoder element (#343131). 2006-06-09 17:38:20 +0000 Tim-Philipp Müller configure.ac: Check for X before using X_CFLAGS in the check for opengl (#343866). Original commit message from CVS: * configure.ac: Check for X before using X_CFLAGS in the check for opengl (#343866). * ext/musepack/Makefile.am: * ext/wavpack/Makefile.am: * gst/speed/Makefile.am: Add missing GST_LIBS, fixes build on cygwin (#343866). 2006-06-06 16:26:59 +0000 Thomas Vander Stichele * gst/gdp/gstgdppay.c: adapt to new api Original commit message from CVS: adapt to new api 2006-06-06 16:14:52 +0000 Thomas Vander Stichele * configure.ac: * gst/Makefile.am: build gdp plugins Original commit message from CVS: build gdp plugins 2006-06-06 15:16:15 +0000 Thomas Vander Stichele * tests/icles/.gitignore: ignore more Original commit message from CVS: ignore more 2006-06-06 14:39:15 +0000 Thomas Vander Stichele configure.ac: enable building of GDP elements Original commit message from CVS: * configure.ac: enable building of GDP elements * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain): * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_sink_event), (gst_gdp_pay_set_property), (gst_gdp_pay_get_property), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: add version 1.0 2006-06-02 17:01:01 +0000 Michael Smith tests/check/: Don't busy-wait in tests; this was causing test timeouts very frequently when running under valgrind. Original commit message from CVS: * tests/check/elements/audioconvert.c: (set_channel_positions), (get_float_mc_caps), (get_int_mc_caps): * tests/check/elements/audioresample.c: * tests/check/elements/audiotestsrc.c: (GST_START_TEST): * tests/check/elements/videorate.c: * tests/check/elements/videotestsrc.c: (GST_START_TEST): * tests/check/elements/volume.c: * tests/check/elements/vorbisdec.c: * tests/check/pipelines/vorbisenc.c: (GST_START_TEST): Don't busy-wait in tests; this was causing test timeouts very frequently when running under valgrind. 2006-06-02 16:45:59 +0000 Thomas Vander Stichele * gst/gdp/gstgdpdepay.c: * gst/gdp/gstgdppay.h: small fixes Original commit message from CVS: small fixes 2006-06-02 13:43:24 +0000 Michael Smith ext/theora/theoradec.c: Theora 4:4:4 pixel format support. Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_src_convert), (theora_handle_type_packet), (theora_handle_422_image), (theora_handle_444_image), (theora_handle_420_image), (theora_handle_data_packet): Theora 4:4:4 pixel format support. 2006-06-02 10:28:32 +0000 Thomas Vander Stichele gst/gdp/gstgdppay.c: add crc-header and crc-payload properties don't error out on some things that are recoverable Original commit message from CVS: * gst/gdp/gstgdppay.c: (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_set_property), (gst_gdp_pay_get_property): add crc-header and crc-payload properties don't error out on some things that are recoverable * tests/check/elements/gdppay.c: (GST_START_TEST), (gdppay_suite): add test for crc 2006-06-01 22:00:26 +0000 Stefan Kost Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.h: * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbenc.h: * ext/amrwb/gstamrwbparse.h: * ext/arts/gst_arts.h: * ext/artsd/gstartsdsink.h: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.h: * ext/audioresample/gstaudioresample.h: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.h: * ext/dirac/gstdiracdec.h: * ext/directfb/dfbvideosink.h: * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.h: * ext/dts/gstdtsdec.h: * ext/faac/gstfaac.h: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.h: * ext/ivorbis/vorbisenc.h: * ext/libfame/gstlibfame.h: * ext/nas/nassink.h: * ext/neon/gstneonhttpsrc.h: * ext/polyp/polypsink.h: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.h: * ext/shout/gstshout.h: * ext/snapshot/gstsnapshot.h: * ext/sndfile/gstsf.h: * ext/swfdec/gstswfdec.h: * ext/tarkin/gsttarkindec.h: * ext/tarkin/gsttarkinenc.h: * ext/theora/theoradec.h: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.h: * ext/xine/gstxine.h: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.h: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstcdxastrip.h: * gst/colorspace/gstcolorspace.h: * gst/festival/gstfestival.h: * gst/freeze/gstfreeze.h: * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.h: * gst/modplug/gstmodplug.h: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg2sub/gstmpeg2subt.h: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/multifilesink/gstmultifilesink.h: * gst/overlay/gstoverlay.h: * gst/playondemand/gstplayondemand.h: * gst/qtdemux/qtdemux.h: * gst/rtjpeg/gstrtjpegdec.h: * gst/rtjpeg/gstrtjpegenc.h: * gst/smooth/gstsmooth.h: * gst/smoothwave/gstsmoothwave.h: * gst/spectrum/gstspectrum.h: * gst/speed/gstspeed.h: * gst/stereo/gststereo.h: * gst/switch/gstswitch.h: * gst/tta/gstttadec.h: * gst/tta/gstttaparse.h: * gst/videodrop/gstvideodrop.h: * gst/xingheader/gstxingmux.h: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundsink.h: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.h: * sys/qcam/gstqcamsrc.h: * sys/vcd/vcdsrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-06-01 19:19:50 +0000 Stefan Kost Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass Original commit message from CVS: * ext/alsa/gstalsamixerelement.h: * ext/alsa/gstalsamixeroptions.h: * ext/alsa/gstalsamixertrack.h: * ext/gnomevfs/gstgnomevfssink.h: * ext/gnomevfs/gstgnomevfssrc.h: * ext/theora/gsttheoradec.h: * ext/theora/gsttheoraenc.h: * ext/theora/gsttheoraparse.h: * ext/vorbis/vorbisparse.h: * gst-libs/gst/audio/gstaudioclock.h: * gst-libs/gst/audio/gstaudiofilter.h: * gst-libs/gst/rtp/gstbasertpaudiopayload.h: * gst/audioconvert/gstaudioconvert.h: * gst/audioresample/gstaudioresample.h: * gst/audiotestsrc/gstaudiotestsrc.h: * gst/ffmpegcolorspace/gstffmpegcolorspace.h: * gst/playback/gststreamselector.h: * gst/tcp/gstmultifdsink.h: * gst/tcp/gsttcpclientsink.h: * gst/tcp/gsttcpclientsrc.h: * gst/tcp/gsttcpserversink.h: * gst/tcp/gsttcpserversrc.h: * gst/videorate/gstvideorate.h: * gst/videoscale/gstvideoscale.h: * gst/videotestsrc/gstvideotestsrc.h: * gst/volume/gstvolume.h: * sys/v4l/gstv4ljpegsrc.h: * sys/v4l/gstv4lmjpegsink.h: * sys/v4l/gstv4lmjpegsrc.h: * sys/v4l/gstv4lsrc.h: * sys/ximage/ximagesink.h: * sys/xvimage/xvimagesink.h: * tests/old/testsuite/alsa/sinesrc.h: Fix more gobject macros: obj<->klass, GstXXX<->GstXXXClass 2006-05-31 19:26:24 +0000 Edward Hervey ext/faad/gstfaad.h: Forgot to commit the header file too. Original commit message from CVS: * ext/faad/gstfaad.h: Forgot to commit the header file too. 2006-05-31 13:37:27 +0000 Edward Hervey ext/faad/gstfaad.c: Added GstSegment to control segments. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_class_init), (gst_faad_init), (gst_faad_dispose), (gst_faad_sink_event), (clip_outgoing_buffer), (gst_faad_chain), (gst_faad_change_state): Added GstSegment to control segments. Added clipping/dropping of outgoing buffers in order to have accurate seeking working properly. 2006-05-28 17:08:17 +0000 Lutz Müller ext/bz2/: Use gst_type_find_helper_* functions for typefinding; use correct caps with gst_pad_alloc_buffer(); add sta... Original commit message from CVS: Patch by: Lutz Müller * ext/bz2/Makefile.am: * ext/bz2/gstbz2dec.c: (gst_bz2dec_chain), (gst_bz2dec_init), (gst_bz2dec_change_state), (gst_bz2dec_class_init): Use gst_type_find_helper_* functions for typefinding; use correct caps with gst_pad_alloc_buffer(); add state change function and reset decoder in it; don't unref buffer if pad_push fails; use fixed caps on source pad. (#341524). 2006-05-26 22:35:00 +0000 Stefan Kost gst/spectrum/: added another example Original commit message from CVS: * gst/spectrum/Makefile.am: * gst/spectrum/demo-audiotest.c: (on_frequency_changed), (spectrum_chain), (main): * gst/spectrum/demo-osssrc.c: added another example * sys/v4l2/gstv4l2src.c: fix typo 2006-05-26 13:16:54 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Clip the outputed NEWSEGMENT stop time to the configured segment stop time. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment): Clip the outputed NEWSEGMENT stop time to the configured segment stop time. 2006-05-26 11:48:44 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Don't clear the running variable in the seek code. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_do_seek): Don't clear the running variable in the seek code. 2006-05-24 11:56:43 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Detect QCELP in mp4a descriptors. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_esds): Detect QCELP in mp4a descriptors. 2006-05-22 18:00:52 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: po/POTFILES.in: Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak), (plugin_init): po/POTFILES.in: Throw an error when the file is encrypted. Move plugin_init stuff to the end of the file, add stuff for i18n, make debug category static. 2006-05-22 16:24:12 +0000 Thomas Vander Stichele * tests/check/Makefile.am: sigh, really don't build these Original commit message from CVS: sigh, really don't build these 2006-05-22 16:08:34 +0000 Michal Benes New plugin: h264parse (#340638) Original commit message from CVS: Patch by: Michal Benes * configure.ac: * gst/h264parse/Makefile.am: * gst/h264parse/gsth264parse.c: (gst_h264_parse_base_init), (gst_h264_parse_finalize), (gst_h264_parse_class_init), (gst_h264_parse_init), (gst_h264_parse_chain), (gst_h264_parse_handle_event), (plugin_init): * gst/h264parse/gsth264parse.h: New plugin: h264parse (#340638) 2006-05-22 15:53:07 +0000 Thomas Vander Stichele gst/gdp/: Handle error cases when calling functions do downwards state change after parent's change_state Original commit message from CVS: * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_chain), (gst_gdp_depay_change_state): * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: (gst_gdp_pay_reset_streamheader), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_change_state): * gst/gdp/gstgdppay.h: Handle error cases when calling functions do downwards state change after parent's change_state * tests/check/elements/gdpdepay.c: (GST_START_TEST): * tests/check/elements/gdppay.c: (GST_START_TEST): clean up more 2006-05-22 14:37:41 +0000 Thomas Vander Stichele * tests/check/Makefile.am: don't build these yet Original commit message from CVS: don't build these yet 2006-05-22 13:40:28 +0000 Thomas Vander Stichele * tests/check/Makefile.am: don't build these yet Original commit message from CVS: don't build these yet 2006-05-22 13:25:52 +0000 Thomas Vander Stichele adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out. Original commit message from CVS: * gst/gdp/Makefile.am: * gst/gdp/gstgdp.c: (plugin_init): * gst/gdp/gstgdpdepay.c: (gst_gdp_depay_base_init), (gst_gdp_depay_class_init), (gst_gdp_depay_init), (gst_gdp_depay_finalize), (gst_gdp_depay_chain), (gst_gdp_depay_change_state), (gst_gdp_depay_plugin_init): * gst/gdp/gstgdpdepay.h: * gst/gdp/gstgdppay.c: (gst_gdp_pay_base_init), (gst_gdp_pay_class_init), (gst_gdp_pay_init), (gst_gdp_pay_dispose), (gst_gdp_stamp_buffer), (gst_gdp_buffer_from_caps), (gst_gdp_pay_buffer_from_buffer), (gst_gdp_buffer_from_event), (gst_gdp_pay_reset_streamheader), (gst_gdp_queue_buffer), (gst_gdp_pay_chain), (gst_gdp_pay_sink_event), (gst_gdp_pay_change_state), (gst_gdp_pay_plugin_init): * gst/gdp/gstgdppay.h: * tests/check/Makefile.am: * tests/check/elements/gdpdepay.c: (setup_gdpdepay), (cleanup_gdpdepay), (gdpdepay_push_per_byte), (GST_START_TEST), (setup_gdpdepay_streamheader), (gdpdepay_suite), (main): * tests/check/elements/gdppay.c: (setup_gdppay), (cleanup_gdppay), (GST_START_TEST), (setup_gdppay_streamheader), (gdppay_suite), (main): adding GDP payloader and depayloader. Build integration will follow later when the GDP issues for core are sorted out. 2006-05-21 16:41:44 +0000 Stefan Kost gst/spectrum/gstspectrum.c: Use boilerplate macro, fix strings to match plugin-moval-requirements Original commit message from CVS: * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_set_sink_caps), (gst_spectrum_get_sink_caps), (gst_spectrum_chain): Use boilerplate macro, fix strings to match plugin-moval-requirements 2006-05-21 16:23:23 +0000 Stefan Kost gst/spectrum/Makefile.am: Link to base libraries Original commit message from CVS: * gst/spectrum/Makefile.am: Link to base libraries * gst/spectrum/demo-osssrc.c: (main): use new threshhold property * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_dispose), (gst_spectrum_set_property), (gst_spectrum_set_sink_caps), (gst_spectrum_get_sink_caps), (gst_spectrum_chain), (gst_spectrum_change_state): * gst/spectrum/gstspectrum.h: Use gst_adapter, support multiple-channels, add threshold property for result, add docs, fix resulting spectrum range (was including mirrored results) 2006-05-20 22:42:15 +0000 Stefan Kost Initial port of the spectrum element Original commit message from CVS: * configure.ac: * gst/spectrum/demo-osssrc.c: (spectrum_chain), (main): * gst/spectrum/fix_fft.c: (gst_spectrum_fix_dot): * gst/spectrum/gstspectrum.c: (gst_spectrum_get_type), (gst_spectrum_base_init), (gst_spectrum_class_init), (gst_spectrum_init), (gst_spectrum_dispose), (gst_spectrum_set_property), (gst_spectrum_chain): * gst/spectrum/gstspectrum.h: Initial port of the spectrum element 2006-05-19 18:58:05 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2xoverlay.c: I forget to add sys/v4l2/gstv4l2xoverlay.c in las commit Original commit message from CVS: I forget to add sys/v4l2/gstv4l2xoverlay.c in las commit 2006-05-19 18:31:25 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2.c: * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: Some clean-ups requested by wingo in bug #338818. Original commit message from CVS: Some clean-ups requested by wingo in bug #338818. 2006-05-19 14:17:04 +0000 Michael Smith ext/alsaspdif/alsaspdifsink.*: Use sampling rate from set_caps. Comment out some more unused code. Original commit message from CVS: * ext/alsaspdif/alsaspdifsink.c: (alsaspdifsink_base_init), (alsaspdifsink_class_init), (alsaspdifsink_init), (alsaspdifsink_dispose), (alsaspdifsink_set_property), (alsaspdifsink_get_property), (alsaspdifsink_set_caps), (alsaspdifsink_get_time), (alsaspdifsink_open), (alsaspdifsink_close), (alsaspdifsink_find_pcm_device), (alsaspdifsink_write_frame), (alsaspdifsink_event), (alsaspdifsink_get_times), (alsaspdifsink_current_delay), (generate_iec958_zero_frame), (alsaspdifsink_render), (ignore_alsa_err), (alsaspdifsink_change_state), (plugin_init): * ext/alsaspdif/alsaspdifsink.h: Use sampling rate from set_caps. Comment out some more unused code. 2006-05-18 19:34:47 +0000 Stefan Kost configure.ac: Check for X11 Original commit message from CVS: * configure.ac: Check for X11 * sys/v4l2/gstv4l2object.c: (gst_v4l2_class_probe_devices): * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_iface_supported): * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2xoverlay.c: (gst_v4l2_xoverlay_open): * sys/v4l2/gstv4l2xoverlay.h: Code cleanups, fix debug macros 2006-05-18 13:12:19 +0000 Michael Smith ext/Makefile.am: Fix distcheck? Original commit message from CVS: * ext/Makefile.am: Fix distcheck? 2006-05-18 12:51:01 +0000 Michael Smith Add an alsa plugin to output IEC958 frames over S/PDIF Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/alsaspdif/Makefile.am: * ext/alsaspdif/alsaspdifsink.c: (alsaspdifsink_base_init), (alsaspdifsink_class_init), (alsaspdifsink_init), (alsaspdifsink_dispose), (alsaspdifsink_set_property), (alsaspdifsink_get_property), (alsaspdifsink_provide_clock), (alsaspdifsink_get_time), (alsaspdifsink_open), (alsaspdifsink_close), (alsaspdifsink_find_pcm_device), (alsaspdifsink_write_frame), (alsaspdifsink_event), (alsaspdifsink_get_times), (alsaspdifsink_current_delay), (generate_iec958_zero_frame), (alsaspdifsink_render), (ignore_alsa_err), (alsaspdifsink_change_state), (plugin_init): * ext/alsaspdif/alsaspdifsink.h: Add an alsa plugin to output IEC958 frames over S/PDIF 2006-05-17 09:39:53 +0000 Tim-Philipp Müller ext/faad/gstfaad.c: Remove unused caps cruft from chain function altogether. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_update_caps), (gst_faad_chain): Remove unused caps cruft from chain function altogether. 2006-05-17 09:15:55 +0000 Edward Hervey ext/faad/gstfaad.c: There's no guarantee that caps was set to something, and if it did, the function called to fill t... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_chain): There's no guarantee that caps was set to something, and if it did, the function called to fill that variable actually sets the caps on the sourcpad, so we call gst_pad_alloc_buffer_and_set_caps() using GST_PAD_CAPS(faad->srcpad). 2006-05-15 10:10:08 +0000 Christian Schaller * common: * gst-plugins-bad.spec.in: latest changes with additions and removals Original commit message from CVS: latest changes with additions and removals 2006-05-13 18:39:13 +0000 Young-Ho Cha ext/faad/gstfaad.*: If we encounter a decoding error, don't error out immediately, but try to resync (or see if we ha... Original commit message from CVS: Patch by: Young-Ho Cha * ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_chain), (gst_faad_change_state): * ext/faad/gstfaad.h: If we encounter a decoding error, don't error out immediately, but try to resync (or see if we have better luck with the next buffer in case of framed input). Only error out after five consecutive errors. Fixes #341563. 2006-05-12 10:43:49 +0000 Wim Taymans ext/xvid/gstxvidenc.c: Compile fixes. Original commit message from CVS: * ext/xvid/gstxvidenc.c: (gst_xvidenc_class_init), (gst_xvidenc_init), (gst_xvidenc_finalize), (gst_xvidenc_handle_sink_event), (gst_xvidenc_setup), (gst_xvidenc_setcaps), (gst_xvidenc_encode), (gst_xvidenc_chain), (gst_xvidenc_flush_buffers), (gst_xvidenc_set_property), (gst_xvidenc_get_property): Compile fixes. 2006-05-12 09:28:15 +0000 Mark Nauwelaerts ext/xvid/: xvid plugin to support more capabilities of XviD codec. Original commit message from CVS: Patch by: Mark Nauwelaerts * ext/xvid/gstxvid.c: (gst_xvid_init), (gst_xvid_structure_to_csp), (gst_xvid_csp_to_caps), (gst_xvid_image_get_size), (gst_xvid_image_fill): * ext/xvid/gstxvid.h: * ext/xvid/gstxviddec.c: (gst_xviddec_class_init), (gst_xviddec_init), (gst_xviddec_reset), (gst_xviddec_unset), (gst_xviddec_handle_sink_event), (gst_xviddec_setup), (gst_xviddec_add_par), (gst_xviddec_negotiate), (gst_xviddec_decode), (gst_xviddec_chain), (gst_xviddec_flush_buffers), (gst_xviddec_src_getcaps), (gst_xviddec_src_link), (gst_xviddec_setcaps), (gst_xviddec_change_state): * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.c: (gst_xvidenc_profile_get_type), (gst_xvidenc_quant_type_get_type), (gst_xvidenc_pass_get_type), (gst_xvidenc_get_type), (gst_xvidenc_base_init), (gst_xvidenc_class_init), (gst_xvidenc_init), (gst_xvidenc_finalize), (gst_xvidenc_handle_sink_event), (gst_xvidenc_setup), (gst_xvidenc_setcaps), (gst_xvidenc_encode), (gst_xvidenc_chain), (gst_xvidenc_flush_buffers), (gst_xvidenc_set_property), (gst_xvidenc_get_property), (gst_xvidenc_change_state): * ext/xvid/gstxvidenc.h: xvid plugin to support more capabilities of XviD codec. Fixes #339462. Some more cleanups here and there. 2006-05-11 20:47:50 +0000 Thomas Vander Stichele * configure.ac: put back -no-undefined Original commit message from CVS: put back -no-undefined 2006-05-11 17:59:59 +0000 Edgard Lima * ChangeLog: * sys/v4l2/Makefile.am: * sys/v4l2/gstv4l2.c: * sys/v4l2/gstv4l2colorbalance.c: * sys/v4l2/gstv4l2colorbalance.h: * sys/v4l2/gstv4l2element.c: * sys/v4l2/gstv4l2element.h: * sys/v4l2/gstv4l2object.c: * sys/v4l2/gstv4l2object.h: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/gstv4l2tuner.h: * sys/v4l2/gstv4l2xoverlay.c: * sys/v4l2/gstv4l2xoverlay.h: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2_calls.h: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: Changes proposed by Wingo in bug #338818. Original commit message from CVS: Changes proposed by Wingo in bug #338818. 2006-05-11 09:09:49 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Figure out the real audio type in mp4a boxes by parsing the optional descriptors in the option... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse), (qtdemux_parse_trak), (gst_qtdemux_handle_esds): Figure out the real audio type in mp4a boxes by parsing the optional descriptors in the optional esds box. Promote the default AAC to mp3 when indicated. Fixes #330632. 2006-05-10 17:44:50 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Parse version 2 sample descriptions. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse), (qtdemux_dump_unknown), (qtdemux_parse_trak), (gst_qtdemux_handle_esds): Parse version 2 sample descriptions. Don't #define gst_util_dump_mem(), use something more specific instead to avoid confusion. 2006-05-08 19:21:18 +0000 Martin Rubli * ChangeLog: * sys/v4l2/gstv4l2src.c: * sys/v4l2/v4l2src_calls.c: Fix fourcc name printed out. Patch from Martin Rubli. Original commit message from CVS: Fix fourcc name printed out. Patch from Martin Rubli. 2006-05-08 15:20:10 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Don't cause side effects in a debugging function. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_query), (qtdemux_dump_mvhd): Don't cause side effects in a debugging function. Also report duration in push mode since we can. 2006-05-08 11:55:02 +0000 Edward Hervey autogen.sh: libtoolize on Darwin/MacOSX is called glibtoolize Original commit message from CVS: * autogen.sh: (CONFIGURE_DEF_OPT): libtoolize on Darwin/MacOSX is called glibtoolize 2006-05-06 00:15:59 +0000 Maciej Katafiasz * ChangeLog: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/wavpack/gstwavpackdec.c: * ext/xine/xine.c: * ext/xine/xineaudiodec.c: * ext/xine/xineaudiosink.c: * ext/xine/xineinput.c: * gst/cdxaparse/gstcdxaparse.c: * gst/freeze/gstfreeze.c: Add semicolons after GST_BOILERPLATE[_FULL] so that indent doesn't mess up following lines. Original commit message from CVS: Add semicolons after GST_BOILERPLATE[_FULL] so that indent doesn't mess up following lines. 2006-05-05 20:12:59 +0000 Martin Rubli * ChangeLog: * sys/v4l2/gstv4l2element.c: * sys/v4l2/gstv4l2element.h: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/gstv4l2tuner.h: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2_calls.h: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: * tests/icles/v4l2src-test.c: Some changes proposed by wingo in bug #338818 (but not everything yet). Patch from Martin Rubli to fix framerate dete... Original commit message from CVS: Some changes proposed by wingo in bug #338818 (but not everything yet). Patch from Martin Rubli to fix framerate detection. 2006-05-05 15:50:10 +0000 Tim-Philipp Müller ext/sdl/sdlaudiosink.c: Use (NULL) instead of just NULL in GST_ELEMENT_ERROR macro. Original commit message from CVS: * ext/sdl/sdlaudiosink.c: (gst_sdlaudio_sink_prepare): Use (NULL) instead of just NULL in GST_ELEMENT_ERROR macro. 2006-05-04 15:32:10 +0000 Jan Schmidt configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS === release 0.10.3 === 2006-05-04 15:28:53 +0000 Jan Schmidt * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Really release 0.10.3 this time Original commit message from CVS: Really release 0.10.3 this time 2006-05-04 15:09:13 +0000 Jan Schmidt * ChangeLog: * configure.ac: Perform version number surgery to correctly release tarballs of 0.10.3 Original commit message from CVS: Perform version number surgery to correctly release tarballs of 0.10.3 2006-05-04 14:52:55 +0000 Jan Schmidt configure.ac: Back to CVS Original commit message from CVS: * configure.ac: Back to CVS 2006-05-04 14:51:06 +0000 Jan Schmidt * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-xingheader.xml: * docs/plugins/inspect/plugin-xvid.xml: Release 0.10.3 Original commit message from CVS: Release 0.10.3 2006-05-04 09:29:24 +0000 Julien Moutte tests/icles/Makefile.am: Fix build. Original commit message from CVS: 2006-05-04 Julien MOUTTE * tests/icles/Makefile.am: Fix build. 2006-05-03 21:48:22 +0000 Jan Schmidt * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: Update .po files Original commit message from CVS: Update .po files 2006-05-03 16:54:32 +0000 Tim-Philipp Müller ext/musicbrainz/Makefile.am: Add GST_PLUGINS_BASE_CFLAGS to CFLAGS for gst/tag/tag.h Original commit message from CVS: * ext/musicbrainz/Makefile.am: Add GST_PLUGINS_BASE_CFLAGS to CFLAGS for gst/tag/tag.h 2006-05-03 14:30:21 +0000 Jan Schmidt gst/qtdemux/qtdemux.c: Clean up one piece of logic slightly and remove a dead code block. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Clean up one piece of logic slightly and remove a dead code block. 2006-05-03 13:20:41 +0000 Tim-Philipp Müller Everybody loves docs - add docs for musicbrainz plugin. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/inspect/plugin-musicbrainz.xml: * ext/musicbrainz/gsttrm.c: * ext/musicbrainz/gsttrm.h: Everybody loves docs - add docs for musicbrainz plugin. 2006-05-03 12:01:43 +0000 Tim-Philipp Müller ext/Makefile.am: Add musicbrainz dir to DIST_SUBDIRS as well (fixes distcheck). Original commit message from CVS: * ext/Makefile.am: Add musicbrainz dir to DIST_SUBDIRS as well (fixes distcheck). 2006-05-03 11:34:31 +0000 Tim-Philipp Müller ext/Makefile.am: Forgot to commit this one. Original commit message from CVS: * ext/Makefile.am: Forgot to commit this one. 2006-05-03 11:27:42 +0000 James Doc Livingston Port MusicBrainz TRM plugin (#336898). Original commit message from CVS: Patch by: James "Doc" Livingston * configure.ac: * ext/musicbrainz/Makefile.am: * ext/musicbrainz/gsttrm.c: (gst_trm_base_init), (gst_trm_class_init), (gst_trm_init), (gst_trm_setcaps), (gst_trm_chain), (gst_trm_emit_signature), (gst_trm_set_property), (gst_trm_get_property), (gst_trm_change_state), (plugin_init): * ext/musicbrainz/gsttrm.h: Port MusicBrainz TRM plugin (#336898). 2006-05-03 10:25:46 +0000 Michael Smith ext/faad/gstfaad.c: Fix #334748: use fake_codec_data if the first bytes of the first buffer we process doesn't look l... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (looks_like_valid_header), (gst_faad_chain): Fix #334748: use fake_codec_data if the first bytes of the first buffer we process doesn't look like plausible AAC data (e.g. reserved values for rate, or channels). Fixes playback of Apple's movie trailers. 2006-05-02 21:52:48 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: Fix get_caps func to work when no framerate is available and the caps isn't simple. Original commit message from CVS: Fix get_caps func to work when no framerate is available and the caps isn't simple. 2006-05-01 21:37:51 +0000 Edgard Lima * ChangeLog: * sys/v4l2/Makefile.am: * sys/v4l2/gstv4l2colorbalance.c: * sys/v4l2/gstv4l2xoverlay.c: * sys/v4l2/v4l2_calls.c: * tests/icles/Makefile.am: * tests/icles/v4l2src-test.c: Few improvements to move to good. Original commit message from CVS: Few improvements to move to good. 2006-05-01 17:58:38 +0000 Thomas Vander Stichele moved to good. Closes #336110 Original commit message from CVS: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/inspect/plugin-taglib.xml: * ext/Makefile.am: * ext/taglib/Makefile.am: * ext/taglib/gstid3v2mux.cc: * ext/taglib/gstid3v2mux.h: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: * tests/check/Makefile.am: * tests/check/elements/tagid3v2mux.c: moved to good. Closes #336110 2006-04-30 16:16:59 +0000 Thomas Vander Stichele * ext/taglib/gstid3v2mux.cc: * ext/taglib/gsttaglib.cc: small cleanups Original commit message from CVS: small cleanups 2006-04-30 15:32:13 +0000 Thomas Vander Stichele * ext/taglib/gstid3v2mux.cc: fix docs Original commit message from CVS: fix docs 2006-04-30 15:13:49 +0000 Thomas Vander Stichele * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.signals: updated element properties and signals Original commit message from CVS: updated element properties and signals 2006-04-30 15:11:46 +0000 Thomas Vander Stichele * docs/plugins/.gitignore: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-wavpack.xml: * docs/plugins/inspect/plugin-xvid.xml: ignore more; add new inspect files Original commit message from CVS: ignore more; add new inspect files 2006-04-30 14:59:39 +0000 Thomas Vander Stichele * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: remove files that should not be in cvs Original commit message from CVS: remove files that should not be in cvs 2006-04-30 14:58:29 +0000 Thomas Vander Stichele docs/plugins/: Fix up docs for taglib plugin Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: Fix up docs for taglib plugin Also scan .cc files 2006-04-30 14:55:15 +0000 Thomas Vander Stichele * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-xingheader.xml: update to latest version Original commit message from CVS: update to latest version 2006-04-29 18:46:36 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.cc: Post an error message on the bus in the (extremely unlikely) case of an error. Original commit message from CVS: * ext/taglib/gsttaglib.cc: Post an error message on the bus in the (extremely unlikely) case of an error. 2006-04-29 18:18:24 +0000 Tim-Philipp Müller ext/taglib/: Split the actual ID3v2 tag rendering code into its own subclass. Original commit message from CVS: * ext/taglib/Makefile.am: * ext/taglib/gstid3v2mux.cc: * ext/taglib/gstid3v2mux.h: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: Split the actual ID3v2 tag rendering code into its own subclass. 2006-04-29 15:36:16 +0000 Sébastien Moutte ext/neon/gstneonhttpsrc.*: added iradio-mode support as in gnomevfssrc to enable connections with icydemux that will ... Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: added iradio-mode support as in gnomevfssrc to enable connections with icydemux that will send title tag messages on shoutcast/icecast streams. I've also added iradio properties iradio-name, iradio-genre, iradio-url. added user-agent property because some shoutcast streams don't return data if the GET requests don't have a User-Agent. * win32/common/libgstneon.dsp: use debug version of libneon in debug mode 2006-04-28 21:43:07 +0000 Thomas Vander Stichele * tests/check/elements/tagid3v2mux.c: element renamed Original commit message from CVS: element renamed 2006-04-28 19:46:36 +0000 Stefan Kost make GstElementDetails const Original commit message from CVS: * ext/alsa/gstalsamixerelement.c: * ext/alsa/gstalsasrc.c: * ext/cdparanoia/gstcdparanoiasrc.c: * ext/gnomevfs/gstgnomevfssink.c: * ext/gnomevfs/gstgnomevfssrc.c: * ext/ogg/gstoggdemux.c: * ext/ogg/gstoggmux.c: * ext/ogg/gstoggparse.c: * ext/ogg/gstogmparse.c: * ext/pango/gstclockoverlay.c: * ext/pango/gsttextoverlay.c: * ext/pango/gsttextrender.c: * ext/pango/gsttimeoverlay.c: * ext/theora/theoradec.c: * ext/theora/theoraenc.c: * ext/vorbis/vorbisdec.c: * ext/vorbis/vorbisenc.c: * gst-libs/gst/audio/gstaudiofilter.c: * gst-libs/gst/audio/gstaudiofiltertemplate.c: * gst/audioconvert/gstaudioconvert.c: * gst/audiorate/gstaudiorate.c: * gst/audioresample/gstaudioresample.c: * gst/audiotestsrc/gstaudiotestsrc.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: * gst/playback/gstdecodebin.c: * gst/playback/gstplaybin.c: * gst/playback/gststreamselector.c: * gst/subparse/gstsubparse.c: * gst/tcp/gstmultifdsink.c: * gst/tcp/gsttcpclientsink.c: * gst/tcp/gsttcpclientsrc.c: * gst/tcp/gsttcpserversink.c: * gst/tcp/gsttcpserversrc.c: * gst/typefind/gsttypefindfunctions.c: (plugin_init): * gst/videorate/gstvideorate.c: * gst/videoscale/gstvideoscale.c: * gst/videotestsrc/gstvideotestsrc.c: * gst/volume/gstvolume.c: * sys/v4l/gstv4ljpegsrc.c: * sys/v4l/gstv4lmjpegsink.c: * sys/v4l/gstv4lmjpegsrc.c: * sys/v4l/gstv4lsrc.c: * sys/ximage/ximagesink.c: * sys/xvimage/xvimagesink.c: * tests/check/libs/cddabasesrc.c: make GstElementDetails const 2006-04-28 19:24:40 +0000 Thomas Vander Stichele * docs/plugins/inspect/plugin-ximagesrc.xml: removed plugin doc Original commit message from CVS: removed plugin doc 2006-04-28 19:23:20 +0000 Thomas Vander Stichele * ChangeLog: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: * sys/Makefile.am: * sys/ximagesrc/Makefile.am: * sys/ximagesrc/ximagesrc.c: * sys/ximagesrc/ximagesrc.h: * sys/ximagesrc/ximageutil.c: * sys/ximagesrc/ximageutil.h: * tests/Makefile.am: * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/ximagesrc-test.c: moved ximagesrc to good Original commit message from CVS: moved ximagesrc to good 2006-04-28 16:51:33 +0000 Thomas Vander Stichele * sys/ximagesrc/ximagesrc.c: * sys/ximagesrc/ximagesrc.h: borgify naming Original commit message from CVS: borgify naming 2006-04-28 16:46:52 +0000 Thomas Vander Stichele * sys/ximagesrc/ximagesrc.c: doc tweaks Original commit message from CVS: doc tweaks 2006-04-28 16:15:20 +0000 Thomas Vander Stichele * sys/ximagesrc/Makefile.am: * sys/ximagesrc/ximagesrc.c: clean up Makefile.am Original commit message from CVS: clean up Makefile.am 2006-04-28 15:33:09 +0000 Thomas Vander Stichele * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: pedantic cleanups Original commit message from CVS: pedantic cleanups 2006-04-28 14:17:00 +0000 Wim Taymans gst/audioresample/gstaudioresample.c: Add support for other formats audioresample can handle such as 32 bits in and f... Original commit message from CVS: * gst/audioresample/gstaudioresample.c: (gst_audioresample_init), (resample_set_state_from_caps): Add support for other formats audioresample can handle such as 32 bits in and float and 64 bits float. Fixes #301759 2006-04-28 11:04:12 +0000 Tim-Philipp Müller ext/faad/gstfaad.*: If we run into a decoding error, try re-opening the decoder with faacDecInit2() using fake codec ... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_init), (aac_rate_idx), (gst_faad_setcaps), (gst_faad_chain), (gst_faad_open_decoder), (gst_faad_close_decoder), (gst_faad_change_state): * ext/faad/gstfaad.h: If we run into a decoding error, try re-opening the decoder with faacDecInit2() using fake codec data created from the data the demuxer gave us. Should fix a whole bunch of GStreamer-faad problems incl. 'channel coupling not implemented', 'maximum number of scalefactor bands exceeded' etc. (#173007, #332892). 2006-04-25 21:56:38 +0000 Stefan Kost Define GstElementDetails as const and also static (when defined as global) Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.c: * ext/cdaudio/gstcdaudio.c: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init): * ext/faac/gstfaac.c: (gst_faac_base_init): * ext/faad/gstfaad.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbisfile.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: (gst_mms_base_init): * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init): * ext/nas/nassink.c: (gst_nassink_base_init): * ext/neon/gstneonhttpsrc.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.c: * ext/swfdec/gstswfdec.c: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkinenc.c: * ext/theora/theoradec.c: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init): * gst/chart/gstchart.c: * gst/colorspace/gstcolorspace.c: * gst/deinterlace/gstdeinterlace.c: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init): * gst/festival/gstfestival.c: * gst/filter/gstbpwsinc.c: * gst/filter/gstiir.c: * gst/filter/gstlpwsinc.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: (gst_puzzle_base_init): * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg2sub/gstmpeg2subt.c: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/multifilesink/gstmultifilesink.c: * gst/overlay/gstoverlay.c: * gst/passthrough/gstpassthrough.c: * gst/playondemand/gstplayondemand.c: * gst/qtdemux/qtdemux.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/smooth/gstsmooth.c: * gst/smoothwave/gstsmoothwave.c: * gst/spectrum/gstspectrum.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/switch/gstswitch.c: * gst/tta/gstttadec.c: (gst_tta_dec_base_init): * gst/tta/gstttaparse.c: (gst_tta_parse_base_init): * gst/vbidec/gstvbidec.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/virtualdub/gstxsharpen.c: * gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init): * gst/y4m/gsty4mencode.c: * sys/cdrom/gstcdplayer.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsink.c: * sys/glsink/glimagesink.c: * sys/qcam/gstqcamsrc.c: * sys/v4l2/gstv4l2src.c: * sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init): * sys/ximagesrc/ximagesrc.c: Define GstElementDetails as const and also static (when defined as global) 2006-04-20 18:02:07 +0000 Tim-Philipp Müller ext/musepack/gstmusepackdec.c: Add support for segment seeks. Original commit message from CVS: * ext/musepack/gstmusepackdec.c: (gst_musepackdec_handle_seek_event), (gst_musepackdec_loop): Add support for segment seeks. 2006-04-20 17:29:56 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: Added a couple of ifdefs to make it compile with other kernels. Original commit message from CVS: Added a couple of ifdefs to make it compile with other kernels. 2006-04-20 09:48:05 +0000 j^ gst/qtdemux/qtdemux.c: Never treat video streams as an audio stream. Original commit message from CVS: Patch by: j^ * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak), (qtdemux_video_caps): Never treat video streams as an audio stream. Add qtdrw mime type. Fixes #339041 2006-04-19 09:27:00 +0000 Wim Taymans gst/qtdemux/qtdemux.c: For VBR audio, don't try to calculate the samples_per_frame. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): For VBR audio, don't try to calculate the samples_per_frame. Fixes #338935. 2006-04-17 19:43:32 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: Just added a gtk-doc comment. Original commit message from CVS: Just added a gtk-doc comment. 2006-04-17 18:44:48 +0000 Michael Smith ext/theora/theoradec.*: Apply fix from j^ for API change in libtheoradec. Original commit message from CVS: * ext/theora/theoradec.c: (theora_dec_src_convert), (theora_handle_type_packet), (theora_handle_422_image), (theora_handle_420_image), (theora_handle_data_packet): * ext/theora/theoradec.h: Apply fix from j^ for API change in libtheoradec. Implement 4:2:2 pixel format. Untested at the moment. 2006-04-14 13:12:58 +0000 Tim-Philipp Müller ext/musepack/gstmusepackdec.c: Fix track/album peak tag values; use GST_DEBUG_FUNCPTR and gst_pad_new_from_static_tem... Original commit message from CVS: * ext/musepack/gstmusepackdec.c: (gst_musepackdec_init), (gst_musepack_stream_init): Fix track/album peak tag values; use GST_DEBUG_FUNCPTR and gst_pad_new_from_static_template(). 2006-04-13 21:45:57 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: * sys/v4l2/v4l2src_calls.c: Fixed some memory leaks. Original commit message from CVS: Fixed some memory leaks. 2006-04-12 21:57:02 +0000 Edgard Lima * ChangeLog: * sys/v4l2/gstv4l2src.c: Fix to work in read mode. Original commit message from CVS: Fix to work in read mode. 2006-04-11 16:18:13 +0000 Christian Schaller * gst-plugins-bad.spec.in: fix versioning macro and add translation files Original commit message from CVS: fix versioning macro and add translation files 2006-04-10 17:16:09 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Fix parsing of newer stsd chunks again. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Fix parsing of newer stsd chunks again. 2006-04-10 14:20:41 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Fix framerate calculation. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse_trak): Fix framerate calculation. 2006-04-10 13:58:17 +0000 Tim-Philipp Müller ext/swfdec/gstswfdec.c: Fix build (class_init declaration/definition mismatch). Original commit message from CVS: * ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_class_init): Fix build (class_init declaration/definition mismatch). 2006-04-10 08:31:40 +0000 Wim Taymans gst/qtdemux/qtdemux.c: force mono 8000 Hz on AMR samples. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): force mono 8000 Hz on AMR samples. 2006-04-09 18:30:51 +0000 Sébastien Moutte ext/neon/gstneonhttpsrc.c: remove atoll by using g_ascii_strtoull (atoll is not supported on WIN32) Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_start): remove atoll by using g_ascii_strtoull (atoll is not supported on WIN32) * sys/directdraw/gstdirectdrawsink.c: * sys/directsound/gstdirectsoundsink.c: done some cleans in sources * win32/vs6: add project files for neon, qtdemux 2006-04-09 17:14:22 +0000 Sébastien Moutte gst/audioresample/debug.h: replace debug macros with variable number of parameters by a simple alias to gstreamer sta... Original commit message from CVS: * gst/audioresample/debug.h: replace debug macros with variable number of parameters by a simple alias to gstreamer standard debug macros (#define RESAMPLE_ERROR GST_ERROR, __VA_ARGS__ is not supported by MSVC 6.0 and 7.1) * gst/audioresample/resample.h: define M_PI and rint for WIN32 * win32/common/libgstaudio.def: * win32/common/libgstriff.def: * win32/common/libgsttag.def: * win32/common/libgstvideo.def: add new exported functions * win32/vs6: update project files 2006-04-08 21:48:01 +0000 Stefan Kost Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) Original commit message from CVS: * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_class_init): * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_class_init): * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_class_init): * ext/arts/gst_arts.c: (gst_arts_class_init): * ext/artsd/gstartsdsink.c: (gst_artsdsink_class_init): * ext/audiofile/gstafsink.c: (gst_afsink_class_init): * ext/audiofile/gstafsrc.c: (gst_afsrc_class_init): * ext/audioresample/gstaudioresample.c: * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init): * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_class_init): * ext/divx/gstdivxdec.c: (gst_divxdec_class_init): * ext/hermes/gsthermescolorspace.c: (gst_hermes_colorspace_class_init): * ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_class_init): * ext/jack/gstjack.c: (gst_jack_class_init): * ext/jack/gstjackbin.c: (gst_jack_bin_class_init): * ext/lcs/gstcolorspace.c: (gst_colorspace_class_init): * ext/libfame/gstlibfame.c: (gst_fameenc_class_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_class_init): * ext/nas/nassink.c: (gst_nassink_class_init): * ext/shout/gstshout.c: (gst_icecastsend_class_init): * ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init): * ext/sndfile/gstsf.c: (gst_sf_class_init): * ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_class_init), (gst_swfdec_class_init): * ext/tarkin/gsttarkindec.c: (gst_tarkindec_class_init): * ext/tarkin/gsttarkinenc.c: (gst_tarkinenc_class_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_class_init): * gst/chart/gstchart.c: (gst_chart_class_init): * gst/colorspace/gstcolorspace.c: (gst_colorspace_class_init): * gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_class_init): * gst/festival/gstfestival.c: (gst_festival_class_init): * gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init): * gst/filter/gstiir.c: (gst_iir_class_init): * gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init): * gst/librfb/gstrfbsrc.c: (gst_rfbsrc_class_init): * gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_class_init): * gst/mpeg1sys/gstmpeg1systemencode.c: (gst_system_encode_class_init): * gst/mpeg1videoparse/gstmp1videoparse.c: (gst_mp1videoparse_class_init): * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_class_init): * gst/mpegaudioparse/gstmpegaudioparse.c: (gst_mp3parse_class_init): * gst/overlay/gstoverlay.c: (gst_overlay_class_init): * gst/passthrough/gstpassthrough.c: (passthrough_class_init): * gst/playondemand/gstplayondemand.c: (play_on_demand_class_init): * gst/rtjpeg/gstrtjpegdec.c: (gst_rtjpegdec_class_init): * gst/rtjpeg/gstrtjpegenc.c: (gst_rtjpegenc_class_init): * gst/smooth/gstsmooth.c: (gst_smooth_class_init): * gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_class_init): * gst/spectrum/gstspectrum.c: (gst_spectrum_class_init): * gst/stereo/gststereo.c: (gst_stereo_class_init): * gst/switch/gstswitch.c: (gst_switch_class_init): * gst/tta/gstttadec.c: (gst_tta_dec_class_init): * gst/tta/gstttaparse.c: (gst_tta_parse_class_init): * gst/vbidec/gstvbidec.c: (gst_vbidec_class_init): * gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init): * gst/virtualdub/gstxsharpen.c: (gst_xsharpen_class_init): * gst/y4m/gsty4mencode.c: (gst_y4mencode_class_init): * sys/cdrom/gstcdplayer.c: (cdplayer_class_init): * sys/directsound/gstdirectsoundsink.c: (gst_directsoundsink_class_init): * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_class_init): * sys/dxr3/dxr3spusink.c: (dxr3spusink_class_init): * sys/dxr3/dxr3videosink.c: (dxr3videosink_class_init): * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_class_init): * sys/v4l2/gstv4l2colorbalance.c: (gst_v4l2_color_balance_channel_class_init): * sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_channel_class_init), (gst_v4l2_tuner_norm_class_init): * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init): Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent) 2006-04-08 19:04:01 +0000 Stefan Kost gst/: Fix more broken GObject macros Original commit message from CVS: * gst/colorspace/gstcolorspace.h: * gst/deinterlace/gstdeinterlace.h: * gst/passthrough/gstpassthrough.h: * gst/y4m/gsty4mencode.h: Fix more broken GObject macros 2006-04-08 18:41:07 +0000 Stefan Kost Fix broken GObject macros Original commit message from CVS: * ext/xine/gstxine.h: * gst-libs/gst/play/play.h: * sys/v4l2/gstv4l2element.h: * sys/ximagesrc/ximageutil.h: Fix broken GObject macros 2006-04-08 18:25:55 +0000 Stefan Kost Fix broken GObject macros Original commit message from CVS: * ext/annodex/gstcmmldec.h: * ext/annodex/gstcmmlenc.h: * ext/annodex/gstcmmltag.h: * ext/cairo/gsttextoverlay.h: * ext/ladspa/gstsignalprocessor.h: * gst/matroska/ebml-read.h: * gst/matroska/ebml-write.h: * sys/osxaudio/gstosxaudioelement.h: Fix broken GObject macros 2006-04-08 18:23:04 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Don't make rounding errors in timestamp/duration calculations. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_prepare_current_sample), (gst_qtdemux_chain), (gst_qtdemux_add_stream), (qtdemux_dump_stsz), (qtdemux_dump_stco), (qtdemux_parse_trak): Don't make rounding errors in timestamp/duration calculations. Fix timestamps for AMR and IMA4. Fixes (#337436). Create a dummy segment even when there is no edit list. 2006-04-07 16:59:15 +0000 Julien Moutte docs/plugins/gst-plugins-bad-plugins-decl-list.txt: Updates. Original commit message from CVS: 2006-04-07 Julien MOUTTE * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: Updates. * examples/directfb/Makefile.am: Add example resource files to dist. 2006-04-07 15:53:43 +0000 Zaheer Abbas Merali Typo fix, s/XFree86/X11 and added doc blurb saying that it fixates to 25fps Original commit message from CVS: 2006-04-07 Zaheer Abbas Merali * ext/amrwb/amrwb-code/Makefile.am: * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_recalc), (gst_ximagesrc_create), (gst_ximagesrc_set_property): Typo fix, s/XFree86/X11 and added doc blurb saying that it fixates to 25fps 2006-04-07 15:47:27 +0000 Zaheer Abbas Merali tests/icles/ximagesrc-test.c: Actually assert that pipeline goes to playing Original commit message from CVS: 2006-04-07 Zaheer Abbas Merali * tests/icles/ximagesrc-test.c: (main): Actually assert that pipeline goes to playing 2006-04-07 15:27:40 +0000 Zaheer Abbas Merali sys/ximagesrc/ximagesrc.c: Fix typo, C++ style comments and other small cleanups Original commit message from CVS: 2006-04-07 Zaheer Abbas Merali * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_recalc), (composite_pixel), (gst_ximagesrc_ximage_get), (gst_ximagesrc_create), (gst_ximagesrc_set_property): Fix typo, C++ style comments and other small cleanups 2006-04-06 19:16:02 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Added full edit list support. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_init), (gst_qtdemux_handle_src_query), (gst_qtdemux_find_index), (gst_qtdemux_find_keyframe), (gst_qtdemux_find_segment), (gst_qtdemux_move_stream), (gst_qtdemux_perform_seek), (gst_qtdemux_do_seek), (gst_qtdemux_change_state), (gst_qtdemux_activate_segment), (gst_qtdemux_prepare_current_sample), (gst_qtdemux_advance_sample), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop), (qtdemux_parse_trak): Added full edit list support. Avoid overflows in prologue image detection code. Avoid roundoff errors in timestamp calculations. 2006-04-06 14:20:27 +0000 Thomas Vander Stichele * ext/Makefile.am: * ext/xine/Makefile.am: more distcheck fixes Original commit message from CVS: more distcheck fixes 2006-04-06 14:08:08 +0000 Thomas Vander Stichele configure.ac: clean up so report properly on missing stuff fix modplug detection Original commit message from CVS: * configure.ac: clean up so report properly on missing stuff fix modplug detection 2006-04-06 12:52:22 +0000 Thomas Vander Stichele ext/: don't dist amr wb source code Original commit message from CVS: * ext/Makefile.am: * ext/amrwb/amrwb-code/Makefile.am: don't dist amr wb source code 2006-04-06 11:35:26 +0000 j^ Unify the long descriptions in the plugin details (#337263). Original commit message from CVS: Patch by: j^ * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafparse.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/cdaudio/gstcdaudio.c: * ext/directfb/dfbvideosink.c: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.c: (gst_dtsdec_base_init): * ext/faac/gstfaac.c: (gst_faac_base_init): * ext/faad/gstfaad.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmenc.c: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbisfile.c: * ext/lcs/gstcolorspace.c: * ext/libfame/gstlibfame.c: * ext/libmms/gstmms.c: (gst_mms_base_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init): * ext/nas/nassink.c: (gst_nassink_base_init): * ext/neon/gstneonhttpsrc.c: * ext/polyp/polypsink.c: (gst_polypsink_base_init): * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.c: * ext/tarkin/gsttarkindec.c: * ext/tarkin/gsttarkinenc.c: * ext/theora/theoradec.c: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init): * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init): * gst/chart/gstchart.c: * gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init): * gst/festival/gstfestival.c: * gst/filter/gstiir.c: * gst/filter/gstlpwsinc.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: (gst_puzzle_base_init): * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg2sub/gstmpeg2subt.c: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/multifilesink/gstmultifilesink.c: * gst/overlay/gstoverlay.c: * gst/passthrough/gstpassthrough.c: * gst/playondemand/gstplayondemand.c: * gst/qtdemux/qtdemux.c: * gst/rtjpeg/gstrtjpegdec.c: * gst/rtjpeg/gstrtjpegenc.c: * gst/smooth/gstsmooth.c: * gst/tta/gstttadec.c: (gst_tta_dec_base_init): * gst/tta/gstttaparse.c: (gst_tta_parse_base_init): * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/virtualdub/gstxsharpen.c: * gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init): * gst/y4m/gsty4mencode.c: Unify the long descriptions in the plugin details (#337263). 2006-04-06 09:37:21 +0000 Tim-Philipp Müller ext/neon/gstneonhttpsrc.c: Add back "uri" property and mark it as deprecated; undoes Original commit message from CVS: * ext/neon/gstneonhttpsrc.c: (gst_neonhttp_src_class_init), (gst_neonhttp_src_set_property), (gst_neonhttp_src_get_property): Add back "uri" property and mark it as deprecated; undoes API/ABI breakage from 2006-02-24. 2006-04-05 08:36:55 +0000 Wim Taymans gst/qtdemux/qtdemux.c: Use duration as segment stop position if none is explicitly configured. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek), (gst_qtdemux_do_seek), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop): Use duration as segment stop position if none is explicitly configured. Also perform EOS when we run past the segment stop. 2006-04-04 11:20:58 +0000 Wim Taymans gst/qtdemux/qtdemux.c: More cleanups, added comments. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_go_back), (gst_qtdemux_perform_seek), (gst_qtdemux_do_seek), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop), (gst_qtdemux_chain), (qtdemux_parse_tree), (qtdemux_parse_trak): More cleanups, added comments. Mark discontinuities on outgoing buffers. Post better errors when something goes wrong. Handle EOS and segment end properly. 2006-04-04 08:40:52 +0000 Wim Taymans * ChangeLog: Mark latest change as fixing a bug. Original commit message from CVS: Mark latest change as fixing a bug. 2006-04-04 08:31:10 +0000 Wim Taymans gst/qtdemux/qtdemux.*: Handle stss boxes so we can mark and find keyframes. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_init), (gst_qtdemux_push_event), (gst_qtdemux_go_back), (gst_qtdemux_perform_seek), (gst_qtdemux_do_seek), (gst_qtdemux_handle_src_event), (plugin_init), (gst_qtdemux_change_state), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop), (gst_qtdemux_chain), (qtdemux_sink_activate_pull), (gst_qtdemux_add_stream), (qtdemux_parse), (qtdemux_parse_tree), (qtdemux_parse_trak), (qtdemux_parse_udta), (qtdemux_tag_add_str), (qtdemux_tag_add_num), (qtdemux_tag_add_gnre), (gst_qtdemux_handle_esds): * gst/qtdemux/qtdemux.h: Handle stss boxes so we can mark and find keyframes. Implement correct accurate and keyframe seeking. Use _DEBUG_OBJECT when possible. 2006-04-03 11:08:44 +0000 Tim-Philipp Müller tests/check/Makefile.am: Only run the id3v2mux check if taglib is available and the taglib plugin has been built. Original commit message from CVS: * tests/check/Makefile.am: Only run the id3v2mux check if taglib is available and the taglib plugin has been built. 2006-04-03 10:57:18 +0000 Tim-Philipp Müller ext/swfdec/Makefile.am: Don't set plugindir. Original commit message from CVS: * ext/swfdec/Makefile.am: Don't set plugindir. * ext/swfdec/gstswfdec.c: GST_PLUGIN_DEFINE_STATIC isn't a good idea for installed plugins. 2006-04-03 10:51:54 +0000 Tim-Philipp Müller configure.ac: Add AX_CREATE_STDINT_H to create _stdint.h, needed by the dts plugin. Original commit message from CVS: * configure.ac: Add AX_CREATE_STDINT_H to create _stdint.h, needed by the dts plugin. 2006-04-03 10:34:54 +0000 Tim-Philipp Müller GST_ORIGIN => GST_PACKAGE_ORIGIN Original commit message from CVS: * ext/soundtouch/gstpitch.cc: * ext/theora/theoradec.c: * gst/modplug/gstmodplug.cc: GST_ORIGIN => GST_PACKAGE_ORIGIN GST_PACKAGE => GST_PACKAGE_NAME 2006-04-02 10:42:32 +0000 Thomas Vander Stichele docs/plugins/: add more plugins to docs Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-glimagesink.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-video4linux2.xml: * docs/plugins/inspect/plugin-ximagesrc.xml: * docs/plugins/inspect/plugin-xingheader.xml: add more plugins to docs 2006-04-02 09:33:12 +0000 Thomas Vander Stichele * configure.ac: the alphabet, a tricky concept Original commit message from CVS: the alphabet, a tricky concept 2006-04-02 09:17:23 +0000 Thomas Vander Stichele * configure.ac: add liboil check, dts uses it Original commit message from CVS: add liboil check, dts uses it 2006-04-01 16:50:49 +0000 Thomas Vander Stichele * ChangeLog: * configure.ac: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-taglib.xml: * docs/plugins/inspect/plugin-tta.xml: * ext/taglib/gsttaglib.cc: * sys/dxr3/ac3_padder.h: * tests/Makefile.am: * tests/check/.gitignore: * tests/check/Makefile.am: * tests/check/elements/.gitignore: * tests/check/elements/tagid3v2mux.c: add taglib checks and docs Original commit message from CVS: add taglib checks and docs 2006-04-01 15:36:25 +0000 Thomas Vander Stichele * common: * configure.ac: don't use AS_LIBTOOL_TAGS, it doesn't work Original commit message from CVS: don't use AS_LIBTOOL_TAGS, it doesn't work 2006-04-01 10:16:28 +0000 Thomas Vander Stichele * .gitignore: * docs/.gitignore: * docs/plugins/.gitignore: ignore more Original commit message from CVS: ignore more 2006-04-01 10:15:33 +0000 Thomas Vander Stichele * tests/icles/ximagesrc-test.c: 5 second timeout Original commit message from CVS: 5 second timeout 2006-04-01 10:14:26 +0000 Thomas Vander Stichele * tests/icles/.gitignore: * tests/icles/Makefile.am: * tests/icles/ximagesrc-test.c: rename test Original commit message from CVS: rename test 2006-04-01 10:09:11 +0000 Thomas Vander Stichele * ChangeLog: * Makefile.am: * common: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: * ext/amrwb/gstamrwb.c: * ext/arts/gst_arts.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstaf.c: * ext/audioresample/gstaudioresample.c: * ext/bz2/gstbz2.c: * ext/cdaudio/gstcdaudio.c: * ext/directfb/dfbvideosink.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/faad/gstfaad.c: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbis.c: * ext/jack/gstjack.c: * ext/lcs/gstcolorspace.c: * ext/musepack/gstmusepackdec.c: * ext/musicbrainz/gsttrm.c: * ext/nas/nassink.c: * ext/sdl/gstsdl.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.c: * ext/swfdec/gstswfdec.c: * ext/tarkin/gsttarkin.c: * ext/xine/xine.c: * ext/xvid/gstxvid.c: * gst/cdxaparse/gstcdxaparse.c: * gst/chart/gstchart.c: * gst/colorspace/gstcolorspace.c: * gst/deinterlace/gstdeinterlace.c: * gst/equalizer/gstiirequalizer.c: * gst/festival/gstfestival.c: * gst/filter/gstfilter.c: * gst/freeze/gstfreeze.c: * gst/games/gstpuzzle.c: * gst/librfb/gstrfbsrc.c: * gst/mixmatrix/mixmatrix.c: * gst/mpeg1sys/gstmpeg1systemencode.c: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpeg2sub/gstmpeg2subt.c: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/multifilesink/gstmultifilesink.c: * gst/overlay/gstoverlay.c: * gst/passthrough/gstpassthrough.c: * gst/playondemand/gstplayondemand.c: * gst/qtdemux/qtdemux.c: * gst/rtjpeg/gstrtjpeg.c: * gst/smooth/gstsmooth.c: * gst/smoothwave/gstsmoothwave.c: * gst/spectrum/gstspectrum.c: * gst/speed/gstspeed.c: * gst/stereo/gststereo.c: * gst/switch/gstswitch.c: * gst/vbidec/gstvbidec.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/virtualdub/gstvirtualdub.c: * gst/xingheader/gstxingmux.c: * gst/y4m/gsty4mencode.c: * po/POTFILES.in: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * sys/cdrom/gstcdplayer.c: * sys/directdraw/gstdirectdrawplugin.c: * sys/directsound/gstdirectsoundplugin.c: * sys/dxr3/dxr3init.c: * sys/glsink/glimagesink.c: * sys/qcam/gstqcamsrc.c: * sys/v4l2/gstv4l2.c: * sys/vcd/vcdsrc.c: * sys/ximagesrc/ximagesrc.c: rework build; add translations for v4l2 Original commit message from CVS: rework build; add translations for v4l2 2006-03-31 17:52:36 +0000 Zaheer Abbas Merali Add tests and fix PAR caps issue to ximagesrc Original commit message from CVS: 2006-03-31 Zaheer Abbas Merali * Makefile.am: * configure.ac: * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_ximage_get), (gst_ximagesrc_get_caps), (gst_ximagesrc_class_init): * sys/ximagesrc/ximageutil.c: * tests/Makefile.am: * tests/icles/Makefile.am: * tests/icles/ximagesrc-test.c: (terminate_playback), (main): Add tests and fix PAR caps issue to ximagesrc 2006-03-31 16:32:47 +0000 Zaheer Abbas Merali sys/ximagesrc/ximagesrc.c: Add docs to ximagesrc Original commit message from CVS: 2006-03-31 Zaheer Abbas Merali * sys/ximagesrc/ximagesrc.c: Add docs to ximagesrc 2006-03-31 15:21:35 +0000 Zaheer Abbas Merali sys/ximagesrc/: Fix ximagesrc so a) the cursor doesnt trail and b) there are no yellow rectangles with the cursor Original commit message from CVS: 2006-03-31 Zaheer Abbas Merali * sys/ximagesrc/ximagesrc.c: (composite_pixel), (gst_ximagesrc_ximage_get), (gst_ximagesrc_set_property), (gst_ximagesrc_get_caps), (gst_ximagesrc_class_init): * sys/ximagesrc/ximagesrc.h: * sys/ximagesrc/ximageutil.c: (ximageutil_xcontext_get): * sys/ximagesrc/ximageutil.h: Fix ximagesrc so a) the cursor doesnt trail and b) there are no yellow rectangles with the cursor 2006-03-31 14:26:05 +0000 Michael Smith configure.ac: Add autoconfery for theoradec. Original commit message from CVS: * configure.ac: Add autoconfery for theoradec. * ext/Makefile.am: Add theora directory. * ext/theora/Makefile.am: * ext/theora/theoradec.c: (gst_theoradec_base_init), (gst_theoradec_class_init), (gst_theoradec_init), (gst_theoradec_reset), (inc_granulepos), (theora_get_query_types), (gst_theoradec_granule_clocktime), (theora_dec_src_convert), (theora_dec_sink_convert), (theora_dec_src_query), (theora_dec_sink_query), (theora_dec_src_event), (theora_dec_sink_event), (theora_handle_comment_packet), (theora_handle_type_packet), (theora_handle_header_packet), (theora_dec_push), (theora_handle_data_packet), (theora_dec_chain), (theora_dec_change_state), (plugin_init): * ext/theora/theoradec.h: Add theora plugin for theora-exp decoder. Very heavily based on the existing theora decoder plugin. 2006-03-29 16:54:12 +0000 Wim Taymans ext/gsm/: Cleanups, fix leaks. Original commit message from CVS: * ext/gsm/gstgsmdec.c: (gst_gsmdec_class_init), (gst_gsmdec_init), (gst_gsmdec_finalize), (gst_gsmdec_sink_event), (gst_gsmdec_chain): * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.c: (gst_gsmenc_class_init), (gst_gsmenc_init), (gst_gsmenc_finalize), (gst_gsmenc_chain): Cleanups, fix leaks. Handle events and DISCONT. Use adapter in the decoder. 2006-03-29 16:50:08 +0000 Renato Araujo Oliveira Filho Added new plugin amrwb parse. Original commit message from CVS: Patch by: Renato Araujo Oliveira Filho * configure.ac: * ext/Makefile.am: * ext/amrwb/Makefile.am: * ext/amrwb/README: * ext/amrwb/amrwb-code/Makefile.am: * ext/amrwb/amrwb-code/run.sh: * ext/amrwb/gstamrwb.c: (plugin_init): * ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_base_init), (gst_amrwbdec_class_init), (gst_amrwbdec_init), (gst_amrwbdec_setcaps), (gst_amrwbdec_event), (gst_amrwbdec_chain), (gst_amrwbdec_state_change): * ext/amrwb/gstamrwbdec.h: * ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_base_init), (gst_amrwbenc_class_init), (gst_amrwbenc_init), (gst_amrwbenc_finalize), (gst_amrwbenc_setcaps), (gst_amrwbenc_chain), (gst_amrwbenc_state_change): * ext/amrwb/gstamrwbenc.h: * ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_base_init), (gst_amrwbparse_class_init), (gst_amrwbparse_init), (gst_amrwbparse_querytypes), (gst_amrwbparse_query), (gst_amrwbparse_chain), (gst_amrwbparse_read_header), (gst_amrwbparse_loop), (gst_amrwbparse_sink_activate), (gst_amrwbparse_sink_activate_pull), (gst_amrwbparse_state_change): * ext/amrwb/gstamrwbparse.h: Added new plugin amrwb parse. Renamed audio/AMR to audio/AMR-WB as per spec. Fixes #333307 2006-03-27 17:06:45 +0000 Edgard Lima * ChangeLog: * sys/v4l2/v4l2src_calls.c: Small fix, now pwc driver can tell about its buffers. Original commit message from CVS: Small fix, now pwc driver can tell about its buffers. 2006-03-27 10:13:47 +0000 Tim-Philipp Müller configure.ac: Remove CXX tag from AS_LIBTOOL_TAGS, just like we did for -good and -ugly. Fixes build on some systems ... Original commit message from CVS: * configure.ac: Remove CXX tag from AS_LIBTOOL_TAGS, just like we did for -good and -ugly. Fixes build on some systems and doesn't seem to be required for C++ code. 2006-03-26 19:56:37 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.*: Fix newsegment event handling a bit. We need to cache the first newsegment event, because we ... Original commit message from CVS: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: Fix newsegment event handling a bit. We need to cache the first newsegment event, because we can't adjust offsets yet when we get it, as we don't know the size of the tag yet for sure at that point. Also do some minor cleaning up here and there and add some debug statements. 2006-03-25 21:57:24 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.cc: We do not want to proxy the caps on the sink pad; our source pad should have application/x-i... Original commit message from CVS: * ext/taglib/gsttaglib.cc: We do not want to proxy the caps on the sink pad; our source pad should have application/x-id3 caps; also, don't use already-freed strings in debug messages; finally, adjust buffer offsets on buffers sent out. 2006-03-25 13:02:55 +0000 Tim-Philipp Müller sys/v4l2/gstv4l2src.c: Older kernels don't seem to have this particular v4l2 format, so comment out until this gets f... Original commit message from CVS: * sys/v4l2/gstv4l2src.c: Older kernels don't seem to have this particular v4l2 format, so comment out until this gets fixed properly (and make buildbots happy). 2006-03-25 05:31:28 +0000 Edgard Lima * ChangeLog: * common: * sys/v4l2/gstv4l2colorbalance.c: * sys/v4l2/gstv4l2colorbalance.h: * sys/v4l2/gstv4l2element.c: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: Just make few things more robust and also some identation. Original commit message from CVS: Just make few things more robust and also some identation. 2006-03-23 09:15:09 +0000 Mark Nauwelaerts ext/xvid/gstxvidenc.c: Patch to mark outgoing encoded buffers as delta-units (or not). Original commit message from CVS: Patch by: Mark Nauwelaerts * ext/xvid/gstxvidenc.c: (gst_xvidenc_init), (gst_xvidenc_setup), (gst_xvidenc_chain): Patch to mark outgoing encoded buffers as delta-units (or not). Note that this patch also patches: - the setting of fincr and fbase in xvid-encoder creation based on caps framerate - makes 0, rather than 2, the default max_b_frames, as the current xvidenc does not seem "fully prepared" to handle b-frame "effects", such as encoder returning 0 encoded bytes, etc. Fixes #335585 2006-03-22 19:51:29 +0000 Christian Schaller * gst-plugins-bad.spec.in: add latest plugins additions Original commit message from CVS: add latest plugins additions 2006-03-22 17:13:32 +0000 Tim-Philipp Müller gst/modplug/libmodplug/: Try that again (not only should it be MODPLUG_ instead of MODFILE, also that define is alrea... Original commit message from CVS: * gst/modplug/libmodplug/Makefile.am: * gst/modplug/libmodplug/load_it.cpp: Try that again (not only should it be MODPLUG_ instead of MODFILE, also that define is already set in stdafx.h; what we really need is some more #ifndefs). 2006-03-22 15:02:58 +0000 Tim-Philipp Müller gst/modplug/libmodplug/Makefile.am: More gcc-4.1 fixes (we don't need file saving, so just define MODPLUG_NO_FILESAVE... Original commit message from CVS: * gst/modplug/libmodplug/Makefile.am: More gcc-4.1 fixes (we don't need file saving, so just define MODPLUG_NO_FILESAVE. That way, the compiler won't complain about modplug ignoring the return value of fwrite any longer and we might even save a few bytes as well). 2006-03-22 14:31:47 +0000 Wouter Paeson Add new libsoundtouch-based pitch plugin (#331335). Original commit message from CVS: Patch by: Wouter Paeson * configure.ac: * ext/Makefile.am: * ext/soundtouch/Makefile.am: * ext/soundtouch/gstpitch.cc: * ext/soundtouch/gstpitch.hh: Add new libsoundtouch-based pitch plugin (#331335). 2006-03-21 16:02:09 +0000 Tim-Philipp Müller gst/modplug/libmodplug/load_ptm.cpp: Fix compilation with gcc-4.1 and -Werror (#327355). Original commit message from CVS: * gst/modplug/libmodplug/load_ptm.cpp: Fix compilation with gcc-4.1 and -Werror (#327355). 2006-03-20 08:59:29 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.h: Fix left-over gst_my_filter_get_type. Original commit message from CVS: * ext/taglib/gsttaglib.h: Fix left-over gst_my_filter_get_type. 2006-03-17 16:34:36 +0000 Zaheer Abbas Merali * ChangeLog: * sys/ximagesrc/ximagesrc.c: Have a show mouse pointer property and use it if we can Original commit message from CVS: Have a show mouse pointer property and use it if we can 2006-03-15 15:08:20 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Let's not forget to chain up to the parent dispose. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_dispose): Let's not forget to chain up to the parent dispose. 2006-03-15 14:39:25 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Series of memleak fixes: Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_class_init), (gst_qtdemux_init), (gst_qtdemux_dispose), (gst_qtdemux_add_stream), (qtdemux_parse_trak): Series of memleak fixes: - Unref the GstAdapter in finalize. - Use gst_pad_new_from_static_template(), shorter and safer. - Free unused QtDemuxStream when not used. 2006-03-14 17:24:03 +0000 Edward Hervey sys/v4l2/gstv4l2src.c: Initialization of the debugging category should be as early as possible, moving it from _class... Original commit message from CVS: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_base_init), (gst_v4l2src_class_init): Initialization of the debugging category should be as early as possible, moving it from _class_init() to beginning of _base_init(). 2006-03-13 17:22:19 +0000 Tim-Philipp Müller ext/taglib/gsttaglib.cc: Add gtk-doc blurb (unused for the time being); match registered plugin name to the filename ... Original commit message from CVS: * ext/taglib/gsttaglib.cc: Add gtk-doc blurb (unused for the time being); match registered plugin name to the filename of the plugin (taglibmux => taglib) 2006-03-13 12:14:18 +0000 Mikhail Zabaluev autogen.sh: Don't check for file that only exists in CVS but isn't disted (#334417) Original commit message from CVS: Patch by: Mikhail Zabaluev * autogen.sh: Don't check for file that only exists in CVS but isn't disted (#334417) 2006-03-13 10:05:09 +0000 Julien Moutte Fix build of v4l2 (sigh) Original commit message from CVS: 2006-03-13 Julien MOUTTE * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: * sys/v4l2/Makefile.am: Fix build of v4l2 (sigh) 2006-03-12 23:56:47 +0000 Tim-Philipp Müller Fix distcheck. Original commit message from CVS: * Makefile.am: * configure.ac: Fix distcheck. 2006-03-12 15:33:00 +0000 Edward Hervey sys/v4l2/v4l2src_calls.c: g_atomic_int_set is only available in glib-0.10, use gst_atomic_int_et instead. Original commit message from CVS: * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_capture_init), (gst_v4l2src_buffer_pool_free): g_atomic_int_set is only available in glib-0.10, use gst_atomic_int_et instead. 2006-03-12 15:25:51 +0000 Edward Hervey sys/v4l2/gstv4l2element.h: Remove tim's addition of "_stdint.h" since it doesn't make the PPC buildbot happy. Original commit message from CVS: * sys/v4l2/gstv4l2element.h: Remove tim's addition of "_stdint.h" since it doesn't make the PPC buildbot happy. I will just use the same comment Ronald used when he added these lines: Yet Another Hack (tm) for kernel header borkedness. 2006-03-12 15:02:02 +0000 Tim-Philipp Müller ext/taglib/: Add support for writing MusicBrainz IDs. Original commit message from CVS: * ext/taglib/Makefile.am: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: Add support for writing MusicBrainz IDs. 2006-03-12 14:43:57 +0000 Tim-Philipp Müller sys/v4l2/gstv4l2element.h: Include "_stdint.h" in an attempt to make the Original commit message from CVS: * sys/v4l2/gstv4l2element.h: Include "_stdint.h" in an attempt to make the PPC-buildbot happy. 2006-03-11 22:50:03 +0000 Edgard Lima * ChangeLog: * configure.ac: * sys/Makefile.am: * sys/v4l2/Makefile.am: * sys/v4l2/gstv4l2.c: * sys/v4l2/gstv4l2colorbalance.h: * sys/v4l2/gstv4l2element.c: * sys/v4l2/gstv4l2element.h: * sys/v4l2/gstv4l2src.c: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.c: * sys/v4l2/gstv4l2tuner.h: * sys/v4l2/gstv4l2xoverlay.c: * sys/v4l2/gstv4l2xoverlay.h: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2_calls.h: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: V4L2 ported to 0.10. Original commit message from CVS: V4L2 ported to 0.10. 2006-03-11 17:08:31 +0000 Tim-Philipp Müller configure.ac: Only compile the taglib plugin if a C++ compiler is present. Use GST_DEFAULT_ELEMENTS macro from common... Original commit message from CVS: * configure.ac: Only compile the taglib plugin if a C++ compiler is present. Use GST_DEFAULT_ELEMENTS macro from common/ for all the defaults stuff. 2006-03-11 11:12:30 +0000 Christophe Fergeau added new element to add Xing headers to MP3 files (this allows decoder to figure out the length of VBR files) Original commit message from CVS: 2006-03-11 Christophe Fergeau Reviewed by: Tim-Philipp Müller * configure.ac: * gst/xingheader/Makefile.am: * gst/xingheader/gstxingmux.c: * gst/xingheader/gstxingmux.h: added new element to add Xing headers to MP3 files (this allows decoder to figure out the length of VBR files) 2006-03-11 10:58:08 +0000 Alex Lancaster ext/taglib/gsttaglib.cc: and add support for TCOP (copyright) Original commit message from CVS: 2006-03-11 Christophe Fergeau Patch by: Alex Lancaster * ext/taglib/gsttaglib.cc: fix writing of TPOS tags (album number), and add support for TCOP (copyright) 2006-03-10 22:41:14 +0000 Julien Moutte gst/modplug/: Fix modplug compilation. Original commit message from CVS: 2006-03-10 Julien MOUTTE * gst/modplug/Makefile.am: * gst/modplug/gstmodplug.cc: Fix modplug compilation. 2006-03-10 17:10:09 +0000 Tim-Philipp Müller * ChangeLog: * configure.ac: * gst/modplug/Makefile.am: * gst/modplug/gstmodplug.cc: * gst/modplug/gstmodplug.h: * gst/modplug/libmodplug/sndfile.cpp: * gst/modplug/libmodplug/sndfile.h: Original commit message from CVS: * configure.ac: * gst/modplug/Makefile.am: * gst/modplug/gstmodplug.cc: * gst/modplug/gstmodplug.h: * gst/modplug/libmodplug/sndfile.cpp: * gst/modplug/libmodplug/sndfile.h: modplug plugin ported to 0.10 (#332598, patch by: Jonathan Matthew ). 2006-03-10 13:49:23 +0000 Tim-Philipp Müller ext/libmms/gstmms.*: Some clean-ups; more debug output; use blocksize property of GstBaseSrc instead of re-registerin... Original commit message from CVS: * ext/libmms/gstmms.c: (gst_mms_urihandler_init), (gst_mms_base_init), (gst_mms_class_init), (gst_mms_init), (gst_mms_finalize), (gst_mms_create), (gst_mms_start), (gst_mms_set_property), (gst_mms_get_property), (gst_mms_uri_get_uri): * ext/libmms/gstmms.h: Some clean-ups; more debug output; use blocksize property of GstBaseSrc instead of re-registering our own; make debug category actually be used. 2006-03-09 20:02:44 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Fix build with gcc-4.1 (#327355). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_send_event): Fix build with gcc-4.1 (#327355). 2006-03-09 17:44:17 +0000 Christophe Fergeau new id3v2 muxer based on TagLib Original commit message from CVS: 2006-03-09 Christophe Fergeau reviewed by: Tim-Philipp Müller * configure.ac: * ext/Makefile.am: * ext/taglib/Makefile.am: * ext/taglib/gsttaglib.cc: * ext/taglib/gsttaglib.h: new id3v2 muxer based on TagLib 2006-03-08 12:16:14 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Extract disc number and count from files that use 'disk' instead of 'disc' as node identifier ... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_udta): Extract disc number and count from files that use 'disk' instead of 'disc' as node identifier for that (fixes #332066). 2006-03-06 13:15:04 +0000 Tim-Philipp Müller ext/musepack/: Forgot those two. Original commit message from CVS: * ext/musepack/gstmusepackdec.h: * ext/musepack/gstmusepackreader.c: (gst_musepack_reader_peek): Forgot those two. 2006-03-06 13:13:44 +0000 Tim-Philipp Müller ext/musepack/gstmusepackdec.c: Some cleanups; pause task when push fails. Original commit message from CVS: * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init), (gst_musepackdec_init), (gst_musepackdec_send_newsegment), (gst_musepackdec_handle_seek_event), (gst_musepackdec_get_src_query_types), (gst_musepackdec_src_query), (gst_musepack_stream_init), (gst_musepackdec_sink_activate), (gst_musepackdec_sink_activate_pull), (gst_musepackdec_loop), (gst_musepackdec_change_state): Some cleanups; pause task when push fails. 2006-03-05 13:03:40 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Add support for '3IVD' fourcc (#333403). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add support for '3IVD' fourcc (#333403). 2006-03-04 20:04:11 +0000 Tim-Philipp Müller ext/faad/gstfaad.c: Add query function for position/duration querying (mostly for raw AAC streams); make seeking in r... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_init), (gst_faad_send_tags), (gst_faad_setcaps), (gst_faad_do_raw_seek), (gst_faad_src_event), (gst_faad_sink_event), (gst_faad_src_convert), (gst_faad_src_query), (gst_faad_chain), (gst_faad_change_state): Add query function for position/duration querying (mostly for raw AAC streams); make seeking in raw AAC streams work; post tags with codec name if this is a raw AAC stream. 2006-03-03 23:45:23 +0000 Sébastien Moutte sys/: sinks are now using GST_RANK_PRIMARY to be used with autodectection Original commit message from CVS: * sys/directdraw: * sys/directsound: sinks are now using GST_RANK_PRIMARY to be used with autodectection * win32/vs6: project files updated to fix some bugs * win32/vs7: * win32/vs8: vs7 and vs8 project files added 2006-03-03 18:10:12 +0000 Jens Granseuer ext/xvid/gstxviddec.c: Declare variable at the beginning of the block and make gcc-2.9x Original commit message from CVS: * ext/xvid/gstxviddec.c: (gst_xviddec_chain): Declare variable at the beginning of the block and make gcc-2.9x happy (fixes #333283; patch by: Jens Granseuer). 2006-03-03 11:07:41 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Use GST_WARNING instead of GST_ERROR for all the too short/long atoms when parsing. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse), (qtdemux_parse_trak): Use GST_WARNING instead of GST_ERROR for all the too short/long atoms when parsing. Also let's be a bit less vulgar in our warning messages :) 2006-03-02 18:23:55 +0000 Wim Taymans docs/plugins/: Add audioresample to docs. Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-base-plugins-docs.sgml: * docs/plugins/gst-plugins-base-plugins-sections.txt: Add audioresample to docs. * gst/audioconvert/gstaudioconvert.c: Add revision date. * gst/audioresample/gstaudioresample.c: (gst_audioresample_base_init), (gst_audioresample_class_init), (gst_audioresample_init), (gst_audioresample_dispose), (audioresample_get_unit_size), (audioresample_transform_caps), (resample_set_state_from_caps), (audioresample_transform_size), (audioresample_set_caps), (audioresample_event), (audioresample_do_output), (audioresample_transform), (audioresample_pushthrough), (gst_audioresample_set_property), (gst_audioresample_get_property), (plugin_init): * gst/audioresample/gstaudioresample.h: Added docs. Small code cleanups. 2006-02-28 11:59:49 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Can't divide through zero (suppress warning in case of stream with one single still picture) (... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Can't divide through zero (suppress warning in case of stream with one single still picture) (see #327083) 2006-02-25 21:40:08 +0000 Julien Moutte sys/glsink/glimagesink.c: It doesn't seem we need GLU.h Original commit message from CVS: 2006-02-25 Julien MOUTTE * sys/glsink/glimagesink.c: It doesn't seem we need GLU.h 2006-02-24 19:49:32 +0000 Fabrizio Gennari gst/qtdemux/qtdemux.c: Add support for palettised Apple SMC videos (#327075, based on Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream), (qtdemux_parse_trak), (qtdemux_video_caps): Add support for palettised Apple SMC videos (#327075, based on patch by: Fabrizio Gennari ). 2006-02-24 17:15:35 +0000 Michael Smith autogen.sh: Allow automake 1.9 Original commit message from CVS: * autogen.sh: Allow automake 1.9 2006-02-24 17:02:08 +0000 Edgard Lima * ChangeLog: * ext/neon/gstneonhttpsrc.c: Changed property name from "uri" to "location". Original commit message from CVS: Changed property name from "uri" to "location". 2006-02-22 14:37:20 +0000 Jan Schmidt Cygwin Ports maintainer. Original commit message from CVS: * configure.ac: * sys/glsink/Makefile.am: Merge patch from #317048 for building on Cygwin. Patch by Cygwin Ports maintainer. * sys/glsink/glimagesink.c: (gst_glimage_sink_init_display): Move normal debug output to LOG level not ERROR. 2006-02-22 09:33:25 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Add 'dvsd' and 'dv25' to list of possible fourcc values for DV Video. Original commit message from CVS: Reviewed by : Edward Hervey * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add 'dvsd' and 'dv25' to list of possible fourcc values for DV Video. Add image/png for fourcc 'png ' 2006-02-21 15:44:05 +0000 Tim-Philipp Müller configure.ac: Surely this is supposed to be >= a.b, not == a.b Original commit message from CVS: * configure.ac: Surely this is supposed to be >= a.b, not == a.b 2006-02-20 21:19:59 +0000 Jan Schmidt Port ximagesrc to 0.10 (Closes #304795) Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/ximagesrc/Makefile.am: * sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_return_buf), (gst_ximagesrc_open_display), (gst_ximagesrc_start), (gst_ximagesrc_stop), (gst_ximagesrc_unlock), (gst_ximagesrc_recalc), (composite_pixel), (gst_ximagesrc_ximage_get), (gst_ximagesrc_create), (gst_ximagesrc_set_property), (gst_ximagesrc_get_property), (gst_ximagesrc_clear_bufpool), (gst_ximagesrc_base_init), (gst_ximagesrc_dispose), (gst_ximagesrc_finalize), (gst_ximagesrc_get_caps), (gst_ximagesrc_set_caps), (gst_ximagesrc_fixate), (gst_ximagesrc_class_init), (gst_ximagesrc_init), (plugin_init): * sys/ximagesrc/ximagesrc.h: * sys/ximagesrc/ximageutil.c: (ximageutil_handle_xerror), (ximageutil_check_xshm_calls), (ximageutil_xcontext_get), (ximageutil_xcontext_clear), (ximageutil_calculate_pixel_aspect_ratio), (gst_ximagesrc_buffer_finalize), (gst_ximage_buffer_free), (gst_ximagesrc_buffer_init), (gst_ximagesrc_buffer_class_init), (gst_ximagesrc_buffer_get_type), (gst_ximageutil_ximage_new), (gst_ximageutil_ximage_destroy): * sys/ximagesrc/ximageutil.h: Port ximagesrc to 0.10 (Closes #304795) 2006-02-20 20:52:02 +0000 Edgard Lima * ChangeLog: * gst/freeze/gstfreeze.c: * gst/freeze/gstfreeze.h: I'm too lazy to comment this Original commit message from CVS: Some event handling added by Renato Filho 2006-02-20 19:13:36 +0000 Jan Schmidt configure.ac: Back to CVS nano Original commit message from CVS: * configure.ac: Back to CVS nano === release 0.10.1 === 2006-02-20 19:12:10 +0000 Jan Schmidt configure.ac: releasing 0.10.1, "Slimy - yet satisfying" Original commit message from CVS: 2006-02-20 Jan Schmidt * configure.ac: releasing 0.10.1, "Slimy - yet satisfying" 2006-02-20 13:08:50 +0000 Jan Schmidt ext/ladspa/gstsignalprocessor.c: Fix compilation of LADPSA. It doesn't seem to work, and isn't enabled for the build,... Original commit message from CVS: * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_event), (gst_signal_processor_process): Fix compilation of LADPSA. It doesn't seem to work, and isn't enabled for the build, but it helps me win the feature-count competitions ooh yeah. 2006-02-19 23:45:56 +0000 Jan Schmidt configure.ac: Release 0.10.0.3 - pre-release for 0.10.1 Original commit message from CVS: * configure.ac: Release 0.10.0.3 - pre-release for 0.10.1 2006-02-19 20:00:12 +0000 Tim-Philipp Müller ext/bz2/: Add proper copyright headers identifying Lutz Müller as the author and copyright holder (#331600). Original commit message from CVS: * ext/bz2/gstbz2.c: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2enc.c: * ext/bz2/gstbz2enc.h: Add proper copyright headers identifying Lutz Müller as the author and copyright holder (#331600). 2006-02-17 18:25:42 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Don't GST_LOG timestamps from nonexistent index entries (#331582). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_movie): Don't GST_LOG timestamps from nonexistent index entries (#331582). 2006-02-17 16:28:29 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Check that the size of the returned buffer is of the correct size because the parser assumes t... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_header): Check that the size of the returned buffer is of the correct size because the parser assumes that. Fixes #331543. 2006-02-17 16:00:12 +0000 Jan Schmidt configure.ac: Release 0.10.0.2 - pre-release for 0.10.1 Original commit message from CVS: * configure.ac: Release 0.10.0.2 - pre-release for 0.10.1 2006-02-17 15:03:12 +0000 Christian Schaller * gst-plugins-bad.spec.in: latest updates Original commit message from CVS: latest updates 2006-02-16 14:02:57 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Don't stop the task if the pad isn't linked. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_event), (gst_qtdemux_loop), (qtdemux_sink_activate_pull): Don't stop the task if the pad isn't linked. 2006-02-15 12:13:47 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: It appears 100% equals 1/1 and not 100/1 ... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_chain): It appears 100% equals 1/1 and not 100/1 ... 2006-02-15 09:45:27 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: When buffering MDAT data, show the user something is happening by posting 'buffering' messages... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_post_buffering), (gst_qtdemux_chain): When buffering MDAT data, show the user something is happening by posting 'buffering' messages on the bus. 2006-02-14 18:50:13 +0000 Edward Hervey gst/qtdemux/qtdemux.*: Make push-based work if mdat atom is before moov atom. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_init), (gst_qtdemux_handle_src_query), (gst_qtdemux_change_state), (next_entry_size), (gst_qtdemux_chain): * gst/qtdemux/qtdemux.h: Make push-based work if mdat atom is before moov atom. Don't answer duration query. This should be transformed into replying FALSE to seek events. 2006-02-14 12:26:20 +0000 Tim-Philipp Müller ext/libmms/gstmms.c: Return FLOW_UNEXPECTED on EOS, not FLOW_ERROR. Also, no need to push our own EOS event on EOS, t... Original commit message from CVS: * ext/libmms/gstmms.c: (gst_mms_class_init), (gst_mms_create), (gst_mms_start): Return FLOW_UNEXPECTED on EOS, not FLOW_ERROR. Also, no need to push our own EOS event on EOS, the base class will do that for us; fix bogus query code; post semi-decent errors on the bus when an error occurs in ::start(), otherwise the user will get to see whatever cryptic default message GstBaseSrc comes up with. 2006-02-14 11:36:30 +0000 Andy Wingo sys/glsink/glimagesink.c (gst_glimage_sink_init): Come on schleef, don't break me gst-inspect -a. Original commit message from CVS: 2006-02-14 Andy Wingo * sys/glsink/glimagesink.c (gst_glimage_sink_init): Come on schleef, don't break me gst-inspect -a. 2006-02-14 11:24:53 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Handle the case where data atoms are before moov atoms in push-based mode. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (next_entry_size), (gst_qtdemux_chain): Handle the case where data atoms are before moov atoms in push-based mode. Errors out gracefully. 2006-02-13 22:04:42 +0000 Edward Hervey gst/qtdemux/: QtDemux can now work push-based. Original commit message from CVS: * gst/qtdemux/Makefile.am: * gst/qtdemux/qtdemux.c: (gst_qtdemux_init), (gst_qtdemux_handle_sink_event), (gst_qtdemux_change_state), (extract_initial_length_and_fourcc), (gst_qtdemux_loop_state_header), (gst_qtdemux_loop_state_movie), (gst_qtdemux_loop_header), (next_entry_size), (gst_qtdemux_chain), (qtdemux_sink_activate), (qtdemux_sink_activate_pull), (qtdemux_sink_activate_push), (qtdemux_parse_trak): * gst/qtdemux/qtdemux.h: QtDemux can now work push-based. It still needs some love for seeking. 2006-02-13 17:02:09 +0000 Edgard Lima * ChangeLog: * common: * configure.ac: * gst/freeze/FAQ: * gst/freeze/Makefile.am: * gst/freeze/gstfreeze.c: * gst/freeze/gstfreeze.h: I'm too lazy to comment this Original commit message from CVS: freeze plugin ported to 0.10 by Renato Filho 2006-02-10 17:41:18 +0000 Tim-Philipp Müller Port cdxaparse, makes VCD playback work. Original commit message from CVS: * configure.ac: * gst/cdxaparse/Makefile.am: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstcdxaparse.h: Port cdxaparse, makes VCD playback work. 2006-02-10 13:16:49 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file Original commit message from CVS: update spec file 2006-02-07 18:31:31 +0000 Thomas Vander Stichele * gst/qtdemux/qtdemux.c: remove unused var Original commit message from CVS: remove unused var 2006-02-07 18:01:17 +0000 Thomas Vander Stichele gst/qtdemux/qtdemux.c: use the correct variable to check if we can calculate the last chunk. Looks like an obvious b... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (qtdemux_parse_trak): use the correct variable to check if we can calculate the last chunk. Looks like an obvious bug, and makes the dump of offsets comparable to other tools 2006-02-07 17:55:33 +0000 Thomas Vander Stichele * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-gsm.xml: doc updates Original commit message from CVS: doc updates 2006-02-07 17:54:42 +0000 Thomas Vander Stichele gst/qtdemux/qtdemux.c: clean up some debugging, using _OBJECT, moving recurring messages to LOG level Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (qtdemux_parse_trak): clean up some debugging, using _OBJECT, moving recurring messages to LOG level 2006-02-06 20:51:49 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/neon/gstneonhttpsrc.c: Now it uses libneon 0.25.5 that supports shoutcast. Original commit message from CVS: Now it uses libneon 0.25.5 that supports shoutcast. 2006-02-06 18:21:53 +0000 Edward Hervey ext/bz2/gstbz2enc.c: Accepd "ANY" caps. Use "x-bzip" instead of "x-bz2". Original commit message from CVS: Reviewed by: Edward Hervey * ext/bz2/gstbz2enc.c: Accepd "ANY" caps. Use "x-bzip" instead of "x-bz2". * ext/bz2/gstbz2dec.c: Use "x-bzip" instead of "x-bz2". Initial caps are "ANY". (gst_bz2dec_chain): Configure the source pad if we can figure out the mime type of the decompressed data. (gst_bz2dec_[get,set]_property): (gst_bz2dec_class_init: New property "first_buffer_size". 2006-02-06 15:41:25 +0000 Wim Taymans gst/qtdemux/qtdemux.*: Some QT demux loving. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_query), (gst_qtdemux_handle_src_event), (gst_qtdemux_loop_header), (qtdemux_inflate), (qtdemux_parse), (qtdemux_parse_trak), (qtdemux_parse_udta), (qtdemux_tag_add_str), (qtdemux_tag_add_num), (qtdemux_tag_add_gnre), (gst_qtdemux_handle_esds), (qtdemux_video_caps), (qtdemux_audio_caps): * gst/qtdemux/qtdemux.h: Some QT demux loving. Handle seeking in a less broken way. Fix AMR caps to match the AMR decoder. Set first timestamp on AMR samples to 0 for now. Remove some \n in DEBUG strings. Use _scale_int for maximum precision. 2006-02-06 12:56:00 +0000 Tim-Philipp Müller gst/apetag/: Remove old files, apetag is in gst-plugins-good now. Original commit message from CVS: * gst/apetag/Makefile.am: * gst/apetag/apedemux.c: * gst/apetag/apedemux.h: * gst/apetag/apetag.c: Remove old files, apetag is in gst-plugins-good now. 2006-02-06 09:54:55 +0000 Andy Wingo ext/bz2/: No need to init parent_class, the boilerplate does it for you. Original commit message from CVS: 2006-02-06 Andy Wingo * ext/bz2/gstbz2enc.c (gst_bz2enc_class_init): * ext/bz2/gstbz2dec.c (gst_bz2dec_class_init): No need to init parent_class, the boilerplate does it for you. 2006-02-06 09:40:09 +0000 Andy Wingo Hook it up. Original commit message from CVS: 2006-02-05 Lutz Mueller reviewed by: Andy Wingo * configure.ac: * ext/Makefile.am: Hook it up. * ext/bz2/gstbz2.c: * ext/bz2/gstbz2dec.h: * ext/bz2/gstbz2dec.c: * ext/bz2/gstbz2enc.h: * ext/bz2/gstbz2enc.c: New plugin, implements bz2 encoding and decoding (#303167). 2006-02-03 10:13:22 +0000 Christian Schaller * common: * gst-plugins-bad.spec.in: add opengl plugin Original commit message from CVS: add opengl plugin 2006-01-30 15:47:47 +0000 Andy Wingo * ChangeLog: * common: * sys/glsink/Makefile.am: sys/glsink/Makefile.am (libgstglimagesink_la_LIBADD) Original commit message from CVS: 2006-01-30 Andy Wingo * sys/glsink/Makefile.am (libgstglimagesink_la_LIBADD) (libgstglimagesink_la_CFLAGS): Add PLUGINS_BASE cflags and libs. 2006-01-29 20:07:49 +0000 Tim-Philipp Müller ext/wavpack/gstwavpackdec.c: Add debug category, use boilerplate macros, fix handling of widths of 32 bits. Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_setcaps), (gst_wavpack_dec_base_init), (gst_wavpack_dec_dispose), (gst_wavpack_dec_class_init), (gst_wavpack_dec_sink_event), (gst_wavpack_dec_init), (gst_wavpack_dec_format_samples), (gst_wavpack_dec_chain), (gst_wavpack_dec_plugin_init): Add debug category, use boilerplate macros, fix handling of widths of 32 bits. * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init), (gst_wavpack_parse_dispose), (gst_wavpack_parse_class_init), (gst_wavpack_parse_index_get_last_entry), (gst_wavpack_parse_index_get_entry_from_sample), (gst_wavpack_parse_index_append_entry), (gst_wavpack_parse_reset), (gst_wavpack_parse_src_query), (gst_wavpack_parse_scan_to_find_sample), (gst_wavpack_parse_send_newsegment), (gst_wavpack_parse_handle_seek_event), (gst_wavpack_parse_src_event), (gst_wavpack_parse_init), (gst_wavpack_parse_get_upstream_length), (gst_wavpack_parse_pull_buffer), (gst_wavpack_parse_create_src_pad), (gst_wavpack_parse_loop), (gst_wavpack_parse_change_state), (gst_wavepack_parse_sink_activate), (gst_wavepack_parse_sink_activate_pull), (gst_wavpack_parse_plugin_init): * ext/wavpack/gstwavpackparse.h: Rewrite a bit, mostly to fix flow logic and to make seeking work. Fix buffer/event refcounting. Add some debug statements. Add width of 32 to source pad template caps. Use boilerplate macros. 2006-01-28 12:45:54 +0000 Edward Hervey sys/glsink/Makefile.am: glimagesink.h is dead, long live glimagesink.h Original commit message from CVS: * sys/glsink/Makefile.am: glimagesink.h is dead, long live glimagesink.h 2006-01-28 04:39:18 +0000 David Schleef revival of glimagesink. Kind of works. Original commit message from CVS: * configure.ac: * sys/Makefile.am: * sys/glsink/Makefile.am: * sys/glsink/glimagesink.c: * sys/glsink/glimagesink.h: revival of glimagesink. Kind of works. 2006-01-27 12:47:12 +0000 Tim-Philipp Müller ext/faad/gstfaad.c: Handle 'framed' field in caps; Port syncing for raw streams from 0.8 branch (for AAC+ radio strea... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_chanpos_to_gst), (gst_faad_sync), (gst_faad_chain): Handle 'framed' field in caps; Port syncing for raw streams from 0.8 branch (for AAC+ radio streams) (#328722). 2006-01-27 01:31:12 +0000 Jan Schmidt ext/sdl/sdlvideosink.*: Fix output stride copying, so that it displays correctly on framebuffer devices that don't ma... Original commit message from CVS: * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_supported), (gst_sdlvideosink_xoverlay_set_xwindow_id), (gst_sdlvideosink_deinitsdl), (gst_sdlv_process_events), (gst_sdlvideosink_event_thread), (gst_sdlvideosink_initsdl), (gst_sdlvideosink_destroy), (gst_sdlvideosink_create), (gst_sdlvideosink_setcaps), (gst_sdlvideosink_show_frame), (gst_sdlvideosink_change_state), (gst_sdlvideosink_navigation_send_event): * ext/sdl/sdlvideosink.h: Fix output stride copying, so that it displays correctly on framebuffer devices that don't match our implict GStreamer stride arrangement. Fix locking things. Offer XOverlay only when SDL is running against X. Make non-scaled (and ugly) embedding work via X Overlay. It can't actually match the embedded window size because there's no way to figure out what size that should be from the XOverlay interface. See comment in sdlvideosink.c 2006-01-26 16:23:42 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Fix wrong memcpy source pointer. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak): Fix wrong memcpy source pointer. 2006-01-25 14:44:05 +0000 Edgard Lima * ChangeLog: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: Just chain up finalize calls (calling parent_class->finalize). Original commit message from CVS: Just chain up finalize calls (calling parent_class->finalize). 2006-01-25 14:20:04 +0000 Edgard Lima * ChangeLog: * ext/libmms/gstmms.c: Finalize method has been created and others small changes. Original commit message from CVS: Finalize method has been created and others small changes. 2006-01-24 21:33:25 +0000 Tim-Philipp Müller ext/musepack/: Fix seeking in musepack files (it's still incredibly slow, but I don't think that is our plugin's faul... Original commit message from CVS: * ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init), (gst_musepackdec_class_init), (gst_musepackdec_init), (gst_musepackdec_send_newsegment), (gst_musepackdec_handle_seek_event), (gst_musepackdec_src_event), (gst_musepackdec_src_query), (gst_musepackdec_src_convert), (gst_musepack_stream_init), (gst_musepackdec_sink_activate_pull), (gst_musepackdec_loop), (gst_musepackdec_change_state): * ext/musepack/gstmusepackdec.h: * ext/musepack/gstmusepackreader.c: (gst_musepack_reader_peek), (gst_musepack_reader_seek), (gst_musepack_reader_tell), (gst_musepack_reader_get_size): * ext/musepack/gstmusepackreader.h: Fix seeking in musepack files (it's still incredibly slow, but I don't think that is our plugin's fault). Clean up code and get rid of old cruft. Post tags with all kind of neat information like replay gain and such on the bus, if it is available. Add a 'musepackdec' debug category. 2006-01-24 11:58:53 +0000 Edward Hervey gst/qtdemux/qtdemux.c: More coherent framerate setting on caps. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (gst_qtdemux_add_stream), (qtdemux_parse_trak): More coherent framerate setting on caps. If sample_size is available, use that for the samples' duration in the index. This enables single frame streams to work (and I imagine fixes some other cases). Tested on testsuite, no regression. 2006-01-23 15:10:55 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Added codec recognition for: _ VP31 : video/x-vp3 _ AVDJ : image/jpeg _ dvcp, dvc : video/x-d... Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps): Added codec recognition for: _ VP31 : video/x-vp3 _ AVDJ : image/jpeg _ dvcp, dvc : video/x-dv, systemstream=(boolean)false _ 0x6d730017 : audio/x-adpcm, layout=(string)quicktime 2006-01-21 18:35:29 +0000 David Schleef Update from swfdec. Original commit message from CVS: * configure.ac: * ext/swfdec/gstswfdec.c: Update from swfdec. 2006-01-21 11:43:53 +0000 Fabrizio gst/qtdemux/qtdemux.c: 'twos' and 'sowt' fourcc can be 16bit or 8bit audio. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_parse_trak), (qtdemux_audio_caps): 'twos' and 'sowt' fourcc can be 16bit or 8bit audio. Fix 8bit case (#327133, based on patch by: Fabrizio Gennari ). Also, "G_LITTLE_ENDIAN" and "G_BIG_ENDIAN" are not valid literals for endianness in caps strings, only "LITTLE_ENDIAN" and "BIG_ENDIAN" are valid. 2006-01-20 17:04:38 +0000 Edgard Lima * ChangeLog: * common: * ext/ivorbis/vorbisfile.c: * ext/neon/gstneonhttpsrc.c: Fixed state transictions PLAYING->NULL->PLAYING. Original commit message from CVS: Fixed state transictions PLAYING->NULL->PLAYING. 2006-01-19 16:49:29 +0000 Edgard Lima * ChangeLog: * ext/ivorbis/vorbisfile.c: Some minor improvements on log messages. Original commit message from CVS: Some minor improvements on log messages. 2006-01-18 18:54:02 +0000 Edgard Lima * ChangeLog: * gst/qtdemux/qtdemux.c: Ronald's patch applied. see bug #326318. Original commit message from CVS: Ronald's patch applied. see bug #326318. 2006-01-17 16:45:43 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.*: Fix seeking for quicktime files. Could still use some more love and sophistication. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_init), (gst_qtdemux_send_event), (gst_qtdemux_handle_src_event), (gst_qtdemux_change_state), (gst_qtdemux_loop_header): * gst/qtdemux/qtdemux.h: Fix seeking for quicktime files. Could still use some more love and sophistication. 2006-01-17 13:14:08 +0000 Christian Schaller * gst-plugins-bad.spec.in: fixing versioning Original commit message from CVS: fixing versioning 2006-01-16 12:30:41 +0000 Edgard Lima * ChangeLog: * ext/libmms/gstmms.c: * ext/neon/gstneonhttpsrc.c: * ext/sdl/sdlaudiosink.c: Removed gst_base_src_set_live from mms and neon, and now calling parent_class->dispose in dispose on sdlaudio. Original commit message from CVS: Removed gst_base_src_set_live from mms and neon, and now calling parent_class->dispose in dispose on sdlaudio. 2006-01-11 20:59:39 +0000 Edgard Lima * ChangeLog: * ext/sdl/sdlvideosink.c: Now implementing navigation interface and using GST_BOILER_PLATE_FULL. Original commit message from CVS: Now implementing navigation interface and using GST_BOILER_PLATE_FULL. 2006-01-11 15:34:52 +0000 Christian Schaller * ChangeLog: * sys/Makefile.am: * sys/sunaudio/Makefile.am: * sys/sunaudio/gstsunaudio.c: * sys/sunaudio/gstsunaudiosrc.c: * sys/sunaudio/gstsunaudiosrc.h: * sys/sunaudio/gstsunelement.c: * sys/sunaudio/gstsunelement.h: * sys/sunaudio/gstsunmixer.c: * sys/sunaudio/gstsunmixer.h: remove old (broken) sunaudio plugin from bad as there is a new working one in -good Original commit message from CVS: remove old (broken) sunaudio plugin from bad as there is a new working one in -good 2006-01-11 14:41:24 +0000 Edgard Lima * ChangeLog: * ext/sdl/sdlaudiosink.c: Replaced wrong style code by GST_BOILERPLATE. Original commit message from CVS: Replaced wrong style code by GST_BOILERPLATE. 2006-01-11 11:04:03 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Add support for Indeo3 video in Quicktime files. Original commit message from CVS: reviewed by: Edward Hervey * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add support for Indeo3 video in Quicktime files. Closes #326524 2006-01-09 18:20:56 +0000 Edgard Lima * ChangeLog: * common: * configure.ac: * ext/sdl/Makefile.am: * ext/sdl/gstsdl.c: * ext/sdl/sdlaudiosink.c: * ext/sdl/sdlaudiosink.h: * ext/sdl/sdlvideosink.c: Created new element, sdlaudiosink. Original commit message from CVS: Created new element, sdlaudiosink. 2006-01-05 23:17:44 +0000 Sébastien Moutte * ChangeLog: * sys/directdraw/gstdirectdrawplugin.c: * sys/directdraw/gstdirectdrawsink.c: * sys/directdraw/gstdirectdrawsink.h: * sys/directsound/gstdirectsoundplugin.c: * sys/directsound/gstdirectsoundsink.c: * sys/directsound/gstdirectsoundsink.h: * win32/common/config.h: * win32/vs6/gst_plugins_bad.dsw: * win32/vs6/libgstdirectdraw.dsp: * win32/vs6/libgstdirectsound.dsp: added sys/directdraw added sys/directsound added win32/vs6/gst_plugins_bad.dsw added win32/vs6/libgstdirectsound.dsp ... Original commit message from CVS: 2006-01-05 Sebastien Moutte * added sys/directdraw * added sys/directsound * added win32/vs6/gst_plugins_bad.dsw * added win32/vs6/libgstdirectsound.dsp * added win32/vs6/libgstdirectdraw.dsp * added win32/common/config.h 2006-01-05 17:03:15 +0000 Stefan Kost gst/games/gstpuzzle.c: call oil_init() when using liboil Original commit message from CVS: * gst/games/gstpuzzle.c: (plugin_init): call oil_init() when using liboil 2006-01-04 19:39:10 +0000 Edgard Lima * ChangeLog: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: Some improvements in cancellation and debug messages. Original commit message from CVS: Some improvements in cancellation and debug messages. 2006-01-04 13:26:35 +0000 Edgard Lima * ChangeLog: * common: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: Removed not need thread and changed to push out blocksize bytes. Original commit message from CVS: Removed not need thread and changed to push out blocksize bytes. === release 0.10.2 === 2006-01-03 17:33:16 +0000 Michael Smith gst/audioresample/resample.h: As before, but for o_buf Original commit message from CVS: * gst/audioresample/resample.h: As before, but for o_buf 2006-01-03 17:27:13 +0000 Michael Smith gst/audioresample/resample.h: Declare struct _ResampleState.buffer as unsigned char *, not void *, since we do arithm... Original commit message from CVS: * gst/audioresample/resample.h: Declare struct _ResampleState.buffer as unsigned char *, not void *, since we do arithmetic on it. 2006-01-02 15:05:09 +0000 Christian Schaller * gst-plugins-bad.spec.in: add neon plugin to spec file Original commit message from CVS: add neon plugin to spec file 2005-12-30 15:41:21 +0000 Thomas Vander Stichele * ext/smoothwave/.gitignore: * ext/smoothwave/Makefile.am: * ext/smoothwave/README: * ext/smoothwave/demo-osssrc.c: * ext/smoothwave/gstsmoothwave.c: * ext/smoothwave/gstsmoothwave.h: move smoothwave to gst Original commit message from CVS: move smoothwave to gst 2005-12-28 21:07:17 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/neon/Makefile.am: * ext/neon/gstneonhttpsrc.c: * ext/neon/gstneonhttpsrc.h: Created new element neonhttpsrc. Original commit message from CVS: Created new element neonhttpsrc. 2005-12-19 15:19:44 +0000 Edward Hervey ext/swfdec/gstswfdec.c: Add debugging category and return GstFlowReturn in the right places Original commit message from CVS: * ext/swfdec/gstswfdec.c: (gst_swfdec_class_init), (gst_swfdec_chain), (gst_swfdec_render): Add debugging category and return GstFlowReturn in the right places * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_link): Get something from the peer pad once we've checked if there is a peer pad. * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state), (qtdemux_tree_get_child_by_type), (qtdemux_parse_trak), (qtdemux_video_caps): Couple of fixes 2005-12-19 14:58:47 +0000 Edgard Lima * ChangeLog: * ext/divx/Makefile.am: just a small fix. I have to pay more attention when commiting ;-) Original commit message from CVS: just a small fix. I have to pay more attention when commiting ;-) 2005-12-19 14:40:22 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/divx/Makefile.am: * ext/divx/gstdivxdec.c: * ext/divx/gstdivxdec.h: * ext/divx/gstdivxenc.c: * ext/divx/gstdivxenc.h: divxdec and divxenc ported to 0.10 Original commit message from CVS: divxdec and divxenc ported to 0.10 2005-12-18 21:06:47 +0000 Julien Moutte Some more refactoring, handle exotic DirectFB row stride. Original commit message from CVS: 2005-12-18 Julien MOUTTE * docs/plugins/gst-plugins-bad-plugins-decl.txt: * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_create), (gst_dfbvideosink_event_thread), (gst_dfbvideosink_enum_devices), (gst_dfbvideosink_setup), (gst_dfbvideosink_cleanup), (gst_dfbvideosink_can_blit_from_format), (gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps), (gst_dfbvideosink_show_frame), (gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize), (gst_dfbvideosink_navigation_send_event), (gst_dfbvideosink_update_colorbalance), (gst_dfbvideosink_set_property), (gst_dfbvideosink_init): Some more refactoring, handle exotic DirectFB row stride. 2005-12-18 10:58:44 +0000 Julien Moutte docs/plugins/: Updates. Original commit message from CVS: 2005-12-18 Julien MOUTTE * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: Updates. * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_create), (gst_dfbvideosink_event_thread), (gst_dfbvideosink_enum_devices), (gst_dfbvideosink_setup), (gst_dfbvideosink_cleanup), (gst_dfbvideosink_can_blit_from_format), (gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps), (gst_dfbvideosink_show_frame), (gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize), (gst_dfbvideosink_navigation_send_event), (gst_dfbvideosink_update_colorbalance), (gst_dfbvideosink_set_property), (gst_dfbvideosink_get_property), (gst_dfbvideosink_finalize), (gst_dfbvideosink_init), (gst_dfbvideosink_class_init): * ext/directfb/dfbvideosink.h: Implement pixel-aspect-ratio. This should work both for hardware accelerated scaling and reverse caps negotiation with a scaling element. 2005-12-17 17:48:38 +0000 Julien Moutte docs/plugins/: Updates. Original commit message from CVS: 2005-12-17 Julien MOUTTE * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdlvideosink.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: Updates. * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_create), (gst_dfbvideosink_event_thread), (gst_dfbvideosink_enum_vmodes), (gst_dfbvideosink_enum_devices), (gst_dfbvideosink_setup), (gst_dfbvideosink_cleanup), (gst_dfbvideosink_can_blit_from_format), (gst_dfbvideosink_get_best_vmode), (gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps), (gst_dfbvideosink_show_frame), (gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize), (gst_dfbvideosink_interface_supported), (gst_dfbvideosink_navigation_send_event), (gst_dfbvideosink_update_colorbalance), (gst_dfbvideosink_colorbalance_list_channels), (gst_dfbvideosink_colorbalance_set_value), (gst_dfbvideosink_colorbalance_get_value), (gst_dfbvideosink_colorbalance_init), (gst_dfbvideosink_set_property), (gst_dfbvideosink_get_property), (gst_dfbvideosink_init), (gst_dfbvideosink_class_init): * ext/directfb/dfbvideosink.h: Implement vertical sync and color balance interface. 2005-12-16 21:55:18 +0000 Stefan Kost don't use doc comments for non-docs change some char* into char[] Original commit message from CVS: * ext/artsd/gstartsdsink.c: (gst_artsdsink_open_audio): * gst/festival/gstfestival.c: (socket_receive_file_to_buff): * gst/vbidec/vbidata.c: * gst/vbidec/vbidata.h: * gst/vbidec/vbiscreen.c: * sys/dxr3/ac3_padder.c: don't use doc comments for non-docs change some char* into char[] 2005-12-16 14:47:59 +0000 Julien Moutte ext/directfb/dfbvideosink.c: Always prefer the primary layer. Original commit message from CVS: 2005-12-16 Julien MOUTTE * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_enum_layers), (gst_dfbvideosink_init): Always prefer the primary layer. 2005-12-16 12:25:38 +0000 Tim-Philipp Müller ext/wavpack/gstwavpackdec.c: Oops, remove trailing comma from caps string. Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: Oops, remove trailing comma from caps string. 2005-12-16 09:59:21 +0000 gcocatre@gmail.com ext/wavpack/: Wavpack supports samplerates from 6-192kHz, fix pad template remove buffer-frames from caps, they are g... Original commit message from CVS: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_link): * ext/wavpack/gstwavpackparse.c: Wavpack supports samplerates from 6-192kHz, fix pad template caps (fixes #322973; patch by: gcocatre@gmail.com). Also remove buffer-frames from caps, they are gone in 0.10. 2005-12-15 14:39:00 +0000 Edgard Lima * ChangeLog: * ext/xvid/Makefile.am: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: Fixed some mem-leaks in xvid. Original commit message from CVS: Fixed some mem-leaks in xvid. 2005-12-15 10:30:14 +0000 Michael Smith gst/audioresample/gstaudioresample.c: Don't leak all input buffers to audioresample. Original commit message from CVS: * gst/audioresample/gstaudioresample.c: Don't leak all input buffers to audioresample. 2005-12-15 08:54:26 +0000 Thomas Vander Stichele * ext/directfb/dfbvideosink.c: doesn't use liboil Original commit message from CVS: doesn't use liboil 2005-12-14 22:41:47 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/xvid/gstxvid.c: * ext/xvid/gstxvid.h: * ext/xvid/gstxviddec.c: * ext/xvid/gstxviddec.h: * ext/xvid/gstxvidenc.c: * ext/xvid/gstxvidenc.h: xviddec and xvideenc ported to 0.10 Original commit message from CVS: xviddec and xvideenc ported to 0.10 2005-12-14 20:54:06 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/dts/Makefile.am: * ext/dts/gstdtsdec.c: * ext/dts/gstdtsdec.h: dtsdec ported to 0.10 Original commit message from CVS: dtsdec ported to 0.10 2005-12-12 10:40:42 +0000 Tim-Philipp Müller ext/: GstObjects must be unref'ed with gst_object_unref() instead of g_object_unref(), otherwise things break for GLi... Original commit message from CVS: * ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_loop): * ext/libmms/gstmms.c: (gst_mms_src_query), (gst_mms_create): * ext/musepack/gstmusepackdec.c: (gst_musepackdec_src_query), (gst_musepackdec_loop): * ext/swfdec/gstswfdec.c: (gst_swfdec_video_link), (gst_swfdec_src_query): * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_src_query): GstObjects must be unref'ed with gst_object_unref() instead of g_object_unref(), otherwise things break for GLib-2.6 users. 2005-12-12 09:29:21 +0000 David Schleef ext/swfdec/gstswfdec.c: Add a subclass of GstBuffer that wraps SwfdecBuffers. Fix a massive memleak because the vide... Original commit message from CVS: * ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_get_type), (gst_swfdecbuffer_class_init), (gst_swfdecbuffer_finalize), (gst_swfdec_buffer_from_swf), (gst_swfdec_render): Add a subclass of GstBuffer that wraps SwfdecBuffers. Fix a massive memleak because the video buffers previously never got freed. 2005-12-11 23:54:56 +0000 Edgard Lima * ChangeLog: * ext/libmms/gstmms.c: Just removed a weird printf ;-) Original commit message from CVS: Just removed a weird printf ;-) 2005-12-11 23:09:21 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/libmms/gstmms.c: * ext/libmms/gstmms.h: Added suport to mmsh. There's still a sucks msg "ERROR: Pipeline cant PREROOL..." to be fixed. Original commit message from CVS: Added suport to mmsh. There's still a sucks msg "ERROR: Pipeline cant PREROOL..." to be fixed. 2005-12-09 15:30:21 +0000 Jan Schmidt ext/faad/gstfaad.c: Assume that an unknown channel mapping with 2 channels is stereo and play it that way instead of ... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_chanpos_to_gst), (gst_faad_update_caps): Assume that an unknown channel mapping with 2 channels is stereo and play it that way instead of erroring. * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (gst_qtdemux_add_stream), (qtdemux_parse_trak): Handle e.g. jpeg streams with 0 duration frames as having 0 framerate. Debug fixes. Some 64 bit variable fixes 2005-12-09 04:15:02 +0000 Edgard Lima * ChangeLog: * configure.ac: * ext/Makefile.am: * ext/swfdec/Makefile.am: * ext/swfdec/gstswfdec.c: * ext/swfdec/gstswfdec.h: swfdec Ported to 0.10. Original commit message from CVS: swfdec Ported to 0.10. 2005-12-07 11:46:15 +0000 Edward Hervey gst/qtdemux/qtdemux.c: Memleak fixes. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (gst_qtdemux_add_stream): Memleak fixes. Send out EOS for valid reasons (couldn't pull_range() from upstream for example). 2005-12-06 19:55:58 +0000 Thomas Vander Stichele * ChangeLog: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.c: * ext/audiofile/gstafsrc.h: * ext/cdaudio/gstcdaudio.c: * ext/divx/gstdivxenc.c: * ext/dts/gstdtsdec.h: * ext/faac/gstfaac.h: * ext/ivorbis/vorbisenc.h: * ext/ivorbis/vorbisfile.c: * ext/musepack/gstmusepackdec.h: * ext/nas/nassink.c: * ext/snapshot/gstsnapshot.c: * ext/sndfile/gstsf.h: * ext/tarkin/gsttarkindec.h: * ext/tarkin/gsttarkinenc.h: * ext/xine/gstxine.h: * ext/xine/xinecaps.c: * ext/xvid/gstxvid.h: * gst-libs/gst/play/play.h: * gst/apetag/apedemux.h: * gst/cdxaparse/gstcdxaparse.h: * gst/cdxaparse/gstcdxastrip.h: * gst/cdxaparse/gstvcdparse.h: * gst/colorspace/yuv2rgb.c: * gst/colorspace/yuv2rgb.h: * gst/equalizer/gstiirequalizer.c: * gst/festival/gstfestival.h: * gst/games/gstpuzzle.c: * gst/games/gstvideoimage.c: * gst/games/gstvideoimage.h: * gst/modplug/gstmodplug.h: * gst/modplug/libmodplug/it_defs.h: * gst/modplug/libmodplug/modplug.h: * gst/modplug/libmodplug/sndfile.h: * gst/modplug/libmodplug/stdafx.h: * gst/mpeg1sys/buffer.c: * gst/mpeg1sys/gstmpeg1systemencode.h: * gst/mpeg1sys/main.h: * gst/mpeg1sys/systems.c: * gst/mpeg1videoparse/gstmp1videoparse.h: * gst/mpeg2sub/gstmpeg2subt.h: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/mpegaudioparse/gstmpegaudioparse.h: * gst/multifilesink/gstmultifilesink.h: * gst/overlay/gstoverlay.h: * gst/qtdemux/qtdemux.c: * gst/qtdemux/qtdemux.h: * gst/rtjpeg/RTjpeg.c: * gst/rtjpeg/RTjpeg.h: * gst/tta/crc32.h: * gst/tta/filters.h: * gst/tta/ttadec.h: * gst/videodrop/gstvideodrop.h: * sys/cdrom/gstcdplayer.h: * sys/cdrom/gstcdplayer_ioctl.c: * sys/cdrom/gstcdplayer_ioctl.h: * sys/cdrom/gstcdplayer_ioctl_bsd.h: * sys/cdrom/gstcdplayer_ioctl_irix.h: * sys/cdrom/gstcdplayer_ioctl_solaris.h: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.c: * sys/dxr3/dxr3videosink.h: * sys/qcam/dark.c: * sys/qcam/gstqcamsrc.c: * sys/v4l2/gstv4l2colorbalance.h: * sys/v4l2/gstv4l2element.h: * sys/v4l2/gstv4l2src.h: * sys/v4l2/gstv4l2tuner.h: * sys/v4l2/gstv4l2xoverlay.h: * sys/v4l2/v4l2_calls.c: * sys/v4l2/v4l2_calls.h: * sys/v4l2/v4l2src_calls.c: * sys/v4l2/v4l2src_calls.h: * sys/vcd/vcdsrc.h: expand tabs Original commit message from CVS: expand tabs 2005-12-06 19:44:48 +0000 Thomas Vander Stichele * ext/ladspa/gstsignalprocessor.h: * ext/ladspa/search.c: * ext/ladspa/utils.h: expand tabs Original commit message from CVS: expand tabs 2005-12-06 19:42:02 +0000 Thomas Vander Stichele * gst/audioresample/buffer.h: * gst/audioresample/functable.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/resample.h: * tests/check/elements/audioresample.c: expand tabs Original commit message from CVS: expand tabs 2005-12-05 18:11:32 +0000 Thomas Vander Stichele * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.10.0 === 2005-12-05 18:01:48 +0000 Thomas Vander Stichele * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdlvideosink.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: releasing 0.10.0 Original commit message from CVS: releasing 0.10.0 2005-12-05 13:04:22 +0000 Andy Wingo Update for alloc_buffer changes. Original commit message from CVS: 2005-12-05 Andy Wingo * ext/faac/gstfaac.c: (gst_faac_sink_event), (gst_faac_chain): * ext/faad/gstfaad.c: (gst_faad_chain): * ext/hermes/gsthermescolorspace.c: (gst_hermes_colorspace_chain): * ext/lcs/gstcolorspace.c: (gst_colorspace_chain): * ext/xine/xineinput.c: (gst_xine_input_get): * gst/colorspace/gstcolorspace.c: (gst_colorspace_chain): * gst/speed/gstspeed.c: (speed_chain): * gst/videocrop/gstvideocrop.c: (gst_video_crop_chain): Update for alloc_buffer changes. 2005-12-05 13:02:58 +0000 Andy Wingo Update for alloc_buffer changes. Original commit message from CVS: 2005-12-05 Andy Wingo * ext/dv/gstdvdec.c: (gst_dvdec_chain): * ext/flac/gstflacdec.c: (gst_flacdec_write): * ext/flac/gstflacenc.c: (gst_flacenc_write_callback): * ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_chain): * ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_chain): * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): * ext/jpeg/gstjpegenc.c: (gst_jpegenc_chain): * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_process): * ext/libpng/gstpngdec.c: (user_info_callback), (gst_pngdec_task): * ext/speex/gstspeexdec.c: (speex_dec_chain): * ext/speex/gstspeexenc.c: (gst_speexenc_chain): * gst/auparse/gstauparse.c: (gst_auparse_chain): * gst/flx/gstflxdec.c: (gst_flxdec_chain): * gst/goom/gstgoom.c: (gst_goom_chain): * gst/matroska/matroska-demux.c: (gst_matroska_demux_push_vorbis_codec_priv_data), (gst_matroska_demux_add_wvpk_header): * gst/multipart/multipartdemux.c: (gst_multipart_demux_chain): * gst/multipart/multipartmux.c: (gst_multipart_mux_collected): * gst/videomixer/videomixer.c: (gst_videomixer_collected): * gst/wavenc/gstwavenc.c: (gst_wavenc_chain): Update for alloc_buffer changes. 2005-12-04 22:46:34 +0000 Christian Schaller * gst-plugins-bad.spec.in: update spec file Original commit message from CVS: update spec file 2005-12-02 11:34:50 +0000 Wim Taymans gst/audioresample/: Fix audioresample, seek torture, new segments, reverse negotiation etc.. work fine. Original commit message from CVS: * gst/audioresample/buffer.c: (audioresample_buffer_queue_flush): * gst/audioresample/buffer.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/gstaudioresample.h: * gst/audioresample/resample.c: (resample_input_flush), (resample_input_pushthrough), (resample_input_eos), (resample_get_output_size_for_input), (resample_get_input_size_for_output), (resample_get_output_size), (resample_get_output_data): * gst/audioresample/resample.h: * gst/audioresample/resample_ref.c: (resample_scale_ref): Fix audioresample, seek torture, new segments, reverse negotiation etc.. work fine. 2005-12-02 09:32:21 +0000 Tim-Philipp Müller ext/Makefile.am: Add missing $(WAVPACK_DIR) (#322962). Original commit message from CVS: * ext/Makefile.am: Add missing $(WAVPACK_DIR) (#322962). 2005-12-01 19:17:34 +0000 Thomas Vander Stichele * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.9.7 === 2005-12-01 19:13:20 +0000 Thomas Vander Stichele * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdlvideosink.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/random/LICENSE: * docs/random/PORTED_09: releasing 0.9.7 Original commit message from CVS: releasing 0.9.7 2005-11-29 02:55:18 +0000 Edgard Lima * ChangeLog: * PORTED_09: * common: * configure.ac: * ext/Makefile.am: * ext/libmms/Makefile.am: * ext/libmms/gstmms.c: * ext/libmms/gstmms.h: libmm ported to 0.9. It works fine, but print some error messages. I'll fix them soon. Tested with mmssrc location=m... Original commit message from CVS: libmm ported to 0.9. It works fine, but print some error messages. I'll fix them soon. Tested with mmssrc location=mms:// ! filesink. 2005-11-28 21:22:39 +0000 Thomas Vander Stichele * common: * ext/directfb/dfbvideosink.h: fix header Original commit message from CVS: fix header 2005-11-28 17:47:27 +0000 Thomas Vander Stichele * ext/sdl/sdlvideosink.h: fix include Original commit message from CVS: fix include 2005-11-28 15:43:29 +0000 Edward Hervey ext/faad/gstfaad.c: Handle gracefully the consequence of "Maximum number of scalefactor bands exceeded", which result... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_srcgetcaps): Handle gracefully the consequence of "Maximum number of scalefactor bands exceeded", which results in 0 channels with samplerates of 0. * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state): Do upward transitions, then call parent state_change, then do downward transitions. 2005-11-28 15:19:33 +0000 Thomas Vander Stichele * ext/Makefile.am: fix makefile Original commit message from CVS: fix makefile 2005-11-28 14:50:44 +0000 Thomas Vander Stichele ext/Makefile.am: alphabets, so hard to master. Should fix distcheck. Original commit message from CVS: * ext/Makefile.am: alphabets, so hard to master. Should fix distcheck. 2005-11-27 14:35:27 +0000 Thomas Vander Stichele * Makefile.am: * common: * gst-plugins-bad.spec.in: add ACLOCAL_AMFLAGS; remove old stuff from spec changelog Original commit message from CVS: add ACLOCAL_AMFLAGS; remove old stuff from spec changelog 2005-11-25 19:58:19 +0000 Edgard Lima * ChangeLog: * PORTED_09: * configure.ac: * ext/Makefile.am: * ext/wavpack/Makefile.am: * ext/wavpack/gstwavpackdec.c: * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.c: * ext/wavpack/gstwavpackparse.h: Wavpack ported to 0.9. No support for correction file yet. Original commit message from CVS: Wavpack ported to 0.9. No support for correction file yet. 2005-11-25 18:15:51 +0000 Thomas Vander Stichele ext/wavpack/: put back wavpack - still needs porting Original commit message from CVS: * ext/wavpack/gstwavpackcommon.h: * ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_link), (gst_wavpack_dec_wvclink), (gst_wavpack_dec_get_type), (gst_wavpack_dec_base_init), (gst_wavpack_dec_dispose), (gst_wavpack_dec_class_init), (gst_wavpack_dec_src_query), (gst_wavpack_dec_init), (gst_wavpack_dec_setup_context), (gst_wavpack_dec_format_samples), (gst_wavpack_dec_loop), (gst_wavpack_dec_plugin_init): * ext/wavpack/gstwavpackdec.h: * ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_get_type), (gst_wavpack_parse_base_init), (gst_wavpack_parse_dispose), (gst_wavpack_parse_class_init), (gst_wavpack_parse_src_query), (gst_wavpack_parse_src_event), (find_header), (find_sample), (gst_wavpack_parse_seek), (gst_wavpack_parse_init), (gst_wavpack_parse_handle_event), (gst_wavpack_parse_loop), (gst_wavpack_parse_change_state), (gst_wavpack_parse_plugin_init): * ext/wavpack/gstwavpackparse.h: put back wavpack - still needs porting 2005-11-23 21:27:20 +0000 Thomas Vander Stichele * Makefile.am: add a torture target Original commit message from CVS: add a torture target 2005-11-23 20:06:09 +0000 Thomas Vander Stichele * ChangeLog: * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.9.6 === 2005-11-23 19:57:49 +0000 Thomas Vander Stichele * ChangeLog: * NEWS: * RELEASE: * configure.ac: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-qtdemux.xml: * docs/plugins/inspect/plugin-sdlvideosink.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-tta.xml: releasing 0.9.6 Original commit message from CVS: releasing 0.9.6 2005-11-23 18:05:16 +0000 Julien Moutte Use fraction for framerate, various fixes. Original commit message from CVS: 2005-11-23 Julien MOUTTE * docs/plugins/gst-plugins-bad-plugins-decl.txt: * ext/directfb/dfb-example.c: (main): * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_destroy), (gst_dfbvideosink_event_thread), (gst_dfbvideosink_setup), (gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps), (gst_dfbvideosink_change_state), (gst_dfbvideosink_get_times), (gst_dfbvideosink_bufferpool_clear), (gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize), (gst_dfbvideosink_navigation_send_event), (gst_dfbvideosink_finalize), (gst_dfbvideosink_init), (gst_dfbvideosink_class_init): * ext/directfb/dfbvideosink.h: Use fraction for framerate, various fixes. 2005-11-23 15:36:08 +0000 Jan Schmidt ext/sdl/sdlvideosink.*: Updates for fractional framerates and XOverlay interface changes Original commit message from CVS: * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_base_init), (gst_sdlvideosink_get_times), (gst_sdlvideosink_init), (gst_sdlvideosink_setcaps), (gst_sdlvideosink_change_state): * ext/sdl/sdlvideosink.h: Updates for fractional framerates and XOverlay interface changes 2005-11-23 11:57:51 +0000 Jan Schmidt gst/qtdemux/qtdemux.c: Convert to fractional framerates Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (gst_qtdemux_add_stream), (qtdemux_dump_mvhd), (qtdemux_parse_trak): Convert to fractional framerates 2005-11-23 00:28:12 +0000 Edward Hervey ext/musepack/gstmusepackdec.c: Fix for latest API changes Original commit message from CVS: * ext/musepack/gstmusepackdec.c: (gst_musepackdec_loop): Fix for latest API changes 2005-11-22 15:09:28 +0000 Edgard Lima * ChangeLog: * PORTED_09: * configure.ac: * ext/Makefile.am: * ext/musepack/gstmusepackdec.c: * ext/musepack/gstmusepackdec.h: * ext/musepack/gstmusepackreader.c: * ext/musepack/gstmusepackreader.h: Musepackdec ported to 0.9. There is still a small problem to be solved, after the end of file, the pipeline doens't s... Original commit message from CVS: Musepackdec ported to 0.9. There is still a small problem to be solved, after the end of file, the pipeline doens't stop. 2005-11-22 11:57:51 +0000 Andy Wingo * ChangeLog: * ext/faad/gstfaad.c: * ext/ivorbis/vorbisfile.c: * gst/qtdemux/qtdemux.c: * gst/speed/gstspeed.c: * gst/tta/gstttaparse.c: ext/faad/gstfaad.c (gst_faad_event) ext/ivorbis/vorbisfile.c (gst_ivorbisfile_loop) gst/qtdemux/qtdemux.c (gst_qtdemu... Original commit message from CVS: 2005-11-22 Andy Wingo * ext/faad/gstfaad.c (gst_faad_event) * ext/ivorbis/vorbisfile.c (gst_ivorbisfile_loop) * gst/qtdemux/qtdemux.c (gst_qtdemux_loop_header) * gst/speed/gstspeed.c (speed_sink_event) * gst/tta/gstttaparse.c (gst_tta_parse_src_event) (gst_tta_parse_parse_header): Run update-funcnames. 2005-11-21 18:45:54 +0000 Michael Smith ext/faad/gstfaad.c: Don't take STREAM_LOCK in sink event handlers any more. Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_event): Don't take STREAM_LOCK in sink event handlers any more. 2005-11-21 18:09:01 +0000 Tim-Philipp Müller Update for stream lock API changes: don't take stream log in sink event handlers any longer and change GST_STREAM_LOC... Original commit message from CVS: * ext/dv/gstdvdemux.c: (gst_dvdemux_handle_sink_event): * ext/flac/gstflacdec.c: (gst_flacdec_loop), (gst_flacdec_src_event): * ext/flac/gstflacenc.c: (gst_flacenc_sink_event): * ext/ladspa/gstsignalprocessor.c: (gst_signal_processor_event), (gst_signal_processor_getrange), (gst_signal_processor_chain): * gst/avi/gstavidemux.c: (gst_avi_demux_handle_seek): * gst/flx/gstflxdec.c: (gst_flxdec_src_event_handler), (gst_flxdec_sink_event_handler): * gst/matroska/matroska-demux.c: (gst_matroska_demux_handle_seek_event): * gst/wavparse/gstwavparse.c: (gst_wavparse_handle_seek): Update for stream lock API changes: don't take stream log in sink event handlers any longer and change GST_STREAM_LOCK to GST_PAD_STREAM_LOCK. Don't leak references in flxdec event functions. 2005-11-21 17:37:41 +0000 Wim Taymans Fix for stream lock updates. Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_sink_event): * gst/qtdemux/qtdemux.c: (gst_qtdemux_handle_src_event): * gst/tta/gstttaparse.c: (gst_tta_parse_src_event): Fix for stream lock updates. 2005-11-21 17:14:02 +0000 Wim Taymans gst/: Segment update fix. Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_class_init), (gst_base_audio_sink_init), (gst_base_audio_sink_provide_clock), (gst_base_audio_sink_set_clock), (gst_base_audio_sink_render), (gst_base_audio_sink_change_state): * gst/audioresample/gstaudioresample.c: Segment update fix. 2005-11-21 16:45:46 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: j@bootlab.org, #321903). Original commit message from CVS: * gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add DX50, DIVX and DIV3 fourccs (patch by j@bootlab.org, #321903). 2005-11-21 16:37:18 +0000 Andy Wingo *.*: Ran scripts/update-macros. Oh yes. Original commit message from CVS: 2005-11-21 Andy Wingo * *.h: * *.c: Ran scripts/update-macros. Oh yes. 2005-11-21 14:39:04 +0000 Tim-Philipp Müller Update for GST_FOURCC_FORMAT API change. Original commit message from CVS: * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_get_format_from_caps): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_create): * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header), (qtdemux_parse), (qtdemux_type_get), (qtdemux_node_dump_foreach), (qtdemux_dump_hdlr), (qtdemux_dump_dref), (qtdemux_dump_stsd), (qtdemux_dump_dcom), (qtdemux_parse_trak), (qtdemux_video_caps), (qtdemux_audio_caps): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_v4l2fourcc_to_caps): * sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list), (gst_v4l2src_capture_init), (gst_v4l2src_get_size_limits): Update for GST_FOURCC_FORMAT API change. 2005-11-21 14:33:11 +0000 Jan Schmidt Rename gst_caps_structure_fixate_* to gst_structure_fixate_* (#322027) Original commit message from CVS: * ext/audioresample/gstaudioresample.c: * ext/polyp/polypsink.c: (gst_polypsink_sink_fixate): * gst/librfb/gstrfbsrc.c: (gst_rfbsrc_fixate): * gst/modplug/gstmodplug.cc: * sys/glsink/glimagesink.c: (gst_glimagesink_fixate): * sys/v4l2/gstv4l2src.c: (gst_v4l2src_fixate): Rename gst_caps_structure_fixate_* to gst_structure_fixate_* (#322027) 2005-11-21 03:21:04 +0000 Edgard Lima * ChangeLog: * common: * ext/ivorbis/Makefile.am: * ext/ivorbis/vorbisfile.c: Now it works in push-mode. Tested with gnomevfssrc location=http://.. ! tremor ! alsasink. Original commit message from CVS: Now it works in push-mode. Tested with gnomevfssrc location=http://.. ! tremor ! alsasink. Some issues to be solved yet: 1- set correct timestamps 2- seek is forced to disabled in pull-mode 2005-11-16 17:26:10 +0000 Christian Schaller * common: * gst-plugins-bad.spec.in: make it work Original commit message from CVS: make it work 2005-11-15 16:50:18 +0000 Tim-Philipp Müller ext/faac/gstfaac.c: Set proper caps on source pad (#320532). Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_base_init), (gst_faac_init), (gst_faac_sink_setcaps), (gst_faac_configure_source_pad), (gst_faac_chain): Set proper caps on source pad (#320532). * ext/faad/gstfaad.c: Don't use gtk-doc markers for comment block. 2005-11-15 08:38:16 +0000 Christian Schaller * ext/ivorbis/vorbis.c: set rank to secondary as you never want this to be used instead of normal oggdemux etc. Original commit message from CVS: set rank to secondary as you never want this to be used instead of normal oggdemux etc. 2005-11-14 17:11:55 +0000 Andy Wingo configure.ac (GST_PLUGIN_LDFLAGS): -no-undefined for better debugging, allows dll builds on windows. Fixes #316076. Original commit message from CVS: 2005-11-14 Andy Wingo * configure.ac (GST_PLUGIN_LDFLAGS): -no-undefined for better debugging, allows dll builds on windows. Fixes #316076. 2005-11-14 02:13:26 +0000 Thomas Vander Stichele * common: * ext/ladspa/gstladspa.c: rework configure.ac; make asterisk rtp stuff compile on mingw Original commit message from CVS: rework configure.ac; make asterisk rtp stuff compile on mingw 2005-11-11 19:39:17 +0000 Thomas Vander Stichele * ChangeLog: * configure.ac: back to head Original commit message from CVS: back to head === release 0.9.5 === 2005-11-11 19:38:17 +0000 Thomas Vander Stichele * ChangeLog: * NEWS: * RELEASE: * configure.ac: releasing 0.9.5 Original commit message from CVS: releasing 0.9.5 2005-11-11 18:54:14 +0000 Michael Smith * ChangeLog: * ext/faad/gstfaad.c: Fix compile on systems with broken faad headers. Original commit message from CVS: Fix compile on systems with broken faad headers. 2005-11-11 18:17:22 +0000 Michael Smith ext/faad/gstfaad.c: Call functions with the correct API. Unfortunately, unless your distribution patches upstream, th... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_setcaps), (gst_faad_chain): Call functions with the correct API. Unfortunately, unless your distribution patches upstream, the public header file for FAAD doesn't actually declare the API accurately. So, some nastiness ensues... 2005-11-10 12:34:26 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Add support for custom genre tags. Original commit message from CVS: Reviewed by: Tim-Philipp Müller * gst/qtdemux/qtdemux.c: (qtdemux_parse_udta): Add support for custom genre tags. 2005-11-09 01:04:05 +0000 Tim-Philipp Müller Don't use gtk-doc markers for normal comments. Fix gtk-doc formatting where required. Original commit message from CVS: * ext/tarkin/wavelet.c: * ext/tarkin/wavelet.h: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/vbidec/vbidata.c: * gst/vbidec/vbiscreen.h: * sys/dxr3/ac3_padder.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/qcam/dark.c: Don't use gtk-doc markers for normal comments. Fix gtk-doc formatting where required. 2005-11-08 14:20:50 +0000 Christian Schaller * configure.ac: * ext/Makefile.am: remove wrong mpegstream addition Original commit message from CVS: remove wrong mpegstream addition 2005-11-08 14:17:03 +0000 Christian Schaller * configure.ac: * gst-plugins-bad.spec.in: add tremor plugins to needed buildscripts Original commit message from CVS: add tremor plugins to needed buildscripts 2005-11-08 13:55:13 +0000 Edgard Lima * ChangeLog: * PORTED_09: * configure.ac: * ext/Makefile.am: * ext/ivorbis/vorbis.c: * ext/ivorbis/vorbisfile.c: Ported to 0.9. Some issues to be solved yet: 1- set correct timestamps 2- seg fault when eos 3- seek is now disabled Original commit message from CVS: Ported to 0.9. Some issues to be solved yet: 1- set correct timestamps 2- seg fault when eos 3- seek is now disabled 2005-11-06 22:28:33 +0000 Julien Moutte examples/Makefile.am: Cleanup non existing examples. Original commit message from CVS: 2005-11-06 Julien MOUTTE * examples/Makefile.am: Cleanup non existing examples. 2005-11-06 22:23:07 +0000 Julien Moutte docs/plugins/inspect.stamp: Add missing files. Original commit message from CVS: 2005-11-06 Julien MOUTTE * docs/plugins/inspect.stamp: Add missing files. 2005-11-06 22:19:05 +0000 Julien Moutte examples/Makefile.am: Make buildbot happy. Original commit message from CVS: 2005-11-06 Julien MOUTTE * examples/Makefile.am: Make buildbot happy. 2005-11-06 22:16:27 +0000 Julien Moutte Makefile.am: examples in dist subdirs. Original commit message from CVS: 2005-11-06 Julien MOUTTE * Makefile.am: examples in dist subdirs. * configure.ac: enable parameter for building examples. * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-dfbvideosink.xml: * examples/Makefile.am: Updates. 2005-11-06 21:55:01 +0000 Julien Moutte Enable documentation. Original commit message from CVS: 2005-11-06 Julien MOUTTE * Makefile.am: * autogen.sh: * configure.ac: * docs/Makefile.am: * docs/plugins/.cvsignore: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-decl-list.txt: * docs/plugins/gst-plugins-bad-plugins-decl.txt: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins-undocumented.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/gst-plugins-bad-plugins.types: * docs/plugins/inspect/plugin-dfbvideosink.xml: * docs/version.entities.in: Enable documentation. * examples/Makefile.am: * examples/directfb/Makefile.am: * examples/directfb/decker.ttf: * examples/directfb/dfblogo.png: * examples/directfb/gstdfb.c: (myclock), (dynamic_link), (size_changed), (setup_dynamic_link), (main): Add an example application for DirectFB. 2005-11-05 23:36:20 +0000 Julien Moutte ext/directfb/Makefile.am: Add the example application. Original commit message from CVS: 2005-11-06 Julien MOUTTE * ext/directfb/Makefile.am: Add the example application. * ext/directfb/dfb-example.c: (get_me_out), (main): Here is an example application that runs videotestsrc for 20 seconds. It's included in the documentation. * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_enum_layers), (gst_dfbvideosink_setup), (gst_dfbvideosink_can_blit_from_format), (gst_dfbvideosink_getcaps), (gst_dfbvideosink_buffer_alloc): More fixes, calculate new size of the buffer when renegotiating. This completely breaks ffmpegcolorspace but i need to discuss that with Wim on monday. Add documentation. 2005-11-05 19:55:12 +0000 Julien Moutte ext/directfb/dfbvideosink.c: Make acceleration detection work, better, add safety checks and ARGB support for cards t... Original commit message from CVS: 2005-11-05 Julien MOUTTE * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_enum_layers), (gst_dfbvideosink_setup), (gst_dfbvideosink_can_blit_from_format), (gst_dfbvideosink_getcaps): Make acceleration detection work, better, add safety checks and ARGB support for cards that support it. 2005-11-04 18:28:56 +0000 Julien Moutte ext/directfb/dfbvideosink.*: Now does clipping when surface is too small, handles upstream elements that are not call... Original commit message from CVS: 2005-11-04 Julien MOUTTE * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_surface_create), (gst_dfbvideosink_surface_destroy), (gst_dfbvideosink_get_best_vmode), (gst_dfbvideosink_getcaps), (gst_dfbvideosink_center_rect), (gst_dfbvideosink_show_frame), (gst_dfbvideosink_buffer_alloc): * ext/directfb/dfbvideosink.h: Now does clipping when surface is too small, handles upstream elements that are not calling gst_pad_alloc_buffer, fixes a lot of bugs. 2005-11-03 22:36:42 +0000 Julien Moutte ext/directfb/Makefile.am: Prepare for liboil usage. Original commit message from CVS: 2005-11-03 Julien MOUTTE * ext/directfb/Makefile.am: Prepare for liboil usage. * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_show_frame), (gst_dfbvideosink_buffer_alloc): Prepare for liboil, handle rendering in external surface correctly. Will commit a neat example soon. 2005-11-03 16:59:20 +0000 Edgard Lima * ChangeLog: * ext/sdl/sdlvideosink.c: * ext/sdl/sdlvideosink.h: Add support to exit when 'Esc' key is pressed. Original commit message from CVS: Add support to exit when 'Esc' key is pressed. 2005-11-02 17:12:31 +0000 Julien Moutte configure.ac: Requires DirectFB 0.9.24 Original commit message from CVS: 2005-11-02 Julien MOUTTE * configure.ac: Requires DirectFB 0.9.24 2005-11-02 12:53:00 +0000 Christian Schaller * ext/Makefile.am: add directfb to distdir Original commit message from CVS: add directfb to distdir 2005-11-02 12:43:03 +0000 Julien Moutte Complete rewrite/port of Original commit message from CVS: 2005-11-02 Julien MOUTTE * configure.ac: * ext/Makefile.am: * ext/directfb/Makefile.am: * ext/directfb/dfbvideosink.c: (gst_dfbvideosink_get_format_name), (gst_dfbvideosink_surface_create), (gst_dfbvideosink_surface_destroy), (gst_dfbvideosink_event_thread), (gst_dfbvideosink_enum_layers), (gst_dfbvideosink_enum_vmodes), (gst_dfbvideosink_enum_devices), (gst_dfbvideosink_setup), (gst_dfbvideosink_cleanup), (gst_dfbvideosink_get_format_from_caps), (gst_dfbvideosink_get_caps_from_format), (gst_dfbvideosink_can_blit_from_format), (gst_dfbvideosink_get_best_vmode), (gst_dfbvideosink_getcaps), (gst_dfbvideosink_setcaps), (gst_dfbvideosink_change_state), (gst_dfbvideosink_get_times), (gst_dfbvideosink_center_rect), (gst_dfbvideosink_show_frame), (gst_dfbvideosink_bufferpool_clear), (gst_dfbvideosink_buffer_alloc), (gst_dfbsurface_finalize), (gst_dfbsurface_init), (gst_dfbsurface_class_init), (gst_dfbsurface_get_type), (gst_dfbvideosink_interface_supported), (gst_dfbvideosink_interface_init), (gst_dfbvideosink_navigation_send_event), (gst_dfbvideosink_navigation_init), (gst_dfbvideosink_set_property), (gst_dfbvideosink_get_property), (gst_dfbvideosink_init), (gst_dfbvideosink_base_init), (gst_dfbvideosink_class_init), (gst_dfbvideosink_get_type), (plugin_init): * ext/directfb/dfbvideosink.h: * ext/directfb/directfbvideosink.c: * ext/directfb/directfbvideosink.h: Complete rewrite/port of DirectFB video sink to 0.9. Handles reverse negotiation, hardware scaling, navigation, buffer allocation from video memory etc... 2005-10-31 20:57:42 +0000 Edgard Lima * ChangeLog: * ext/sdl/sdlvideosink.c: Changed property full-screen to fullscreen, using SDL_SWSURFACE instead of SDL_HWSURFACE when in full screen mode. Original commit message from CVS: Changed property full-screen to fullscreen, using SDL_SWSURFACE instead of SDL_HWSURFACE when in full screen mode. 2005-10-31 18:07:30 +0000 Edgard Lima * ChangeLog: * common: * ext/sdl/sdlvideosink.c: * ext/sdl/sdlvideosink.h: Added a property that allows full-screen. Original commit message from CVS: Added a property that allows full-screen. 2005-10-28 15:11:18 +0000 Tim-Philipp Müller ext/sdl/sdlvideosink.*: Fix I420 output on some machines (not very nice, but should work). Original commit message from CVS: * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_base_init), (gst_sdlvideosink_class_init), (gst_sdlvideosink_get_sdl_from_fourcc), (gst_sdlvideosink_setcaps), (gst_sdlvideosink_show_frame): * ext/sdl/sdlvideosink.h: Fix I420 output on some machines (not very nice, but should work). Add an 'sdlvideosink' debug category. Disable formats that do not work. Fix some vararg function issues. 2005-10-27 20:16:40 +0000 Wim Taymans ext/sdl/sdlvideosink.c: Fix SDL videosink and did some cleanups. Original commit message from CVS: * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_finalize), (gst_sdlvideosink_get_times), (gst_sdlvideosink_class_init), (gst_sdlvideosink_init), (gst_sdlvideosink_lock), (gst_sdlvideosink_initsdl), (gst_sdlvideosink_create), (gst_sdlvideosink_show_frame), (gst_sdlvideosink_set_property), (gst_sdlvideosink_get_property), (gst_sdlvideosink_change_state): Fix SDL videosink and did some cleanups. 2005-10-27 19:36:18 +0000 Edgard Lima * ChangeLog: * ext/sdl/sdlvideosink.c: * ext/sdl/sdlvideosink.h: Trying to fix videos out of sync (not fixed yet) Original commit message from CVS: Trying to fix videos out of sync (not fixed yet) 2005-10-27 16:16:00 +0000 Christian Schaller * gst-plugins-bad.spec.in: removed unused language stuff Original commit message from CVS: removed unused language stuff 2005-10-27 12:49:54 +0000 Thomas Vander Stichele * Makefile.am: * configure.ac: don't do po until something wants to be translated Original commit message from CVS: don't do po until something wants to be translated 2005-10-27 11:27:53 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.h: Remove got_redirect from class structure as well. Original commit message from CVS: * gst/qtdemux/qtdemux.h: Remove got_redirect from class structure as well. 2005-10-27 11:25:19 +0000 Tim-Philipp Müller gst/qtdemux/qtdemux.c: Remove 'got-redirect' signal and post element message on the bus instead. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_class_init), (qtdemux_parse_tree): Remove 'got-redirect' signal and post element message on the bus instead. 2005-10-26 15:45:11 +0000 Zeeshan Ali * ChangeLog: * ext/gsm/gstgsm.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.c: Fixing stuff as wingo pointed out. Original commit message from CVS: Fixing stuff as wingo pointed out. 2005-10-26 13:40:33 +0000 Thomas Vander Stichele * po/POTFILES.in: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: fix distcheck Original commit message from CVS: fix distcheck 2005-10-26 13:01:20 +0000 Thomas Vander Stichele * gst/tta/gstttaparse.c: don't put crap in user-visible strings Original commit message from CVS: don't put crap in user-visible strings 2005-10-25 16:12:03 +0000 Zeeshan Ali * ChangeLog: * ext/gsm/gstgsm.c: * ext/gsm/gstgsmdec.c: * ext/gsm/gstgsmdec.h: * ext/gsm/gstgsmenc.c: * ext/gsm/gstgsmenc.h: Over-writing Wim's gsm plugins (currently not working) with that from the farsight repo. Also made sure that they wor... Original commit message from CVS: Over-writing Wim's gsm plugins (currently not working) with that from the farsight repo. Also made sure that they work with the RTP (de)payloader. 2005-10-25 13:31:09 +0000 Flavio Oliveira * ChangeLog: * ext/gsm/gstgsmenc.c: * ext/gsm/gstgsmenc.h: Fixed event handling in gsmenc. Original commit message from CVS: Fixed event handling in gsmenc. 2005-10-24 13:02:32 +0000 Christian Schaller * ChangeLog: * configure.ac: port over plugin listing from base Original commit message from CVS: port over plugin listing from base 2005-10-23 23:07:02 +0000 Thomas Vander Stichele * ChangeLog: * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.9.4 === 2005-10-23 22:46:40 +0000 Thomas Vander Stichele * ChangeLog: * NEWS: * RELEASE: * configure.ac: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: releasing 0.9.4 Original commit message from CVS: releasing 0.9.4 2005-10-23 14:38:00 +0000 Julien Moutte gst/tta/gstttaparse.c: STOPPED->FAILED. Original commit message from CVS: 2005-10-23 Julien MOUTTE * gst/tta/gstttaparse.c: (gst_tta_parse_loop): STOPPED->FAILED. 2005-10-21 16:11:53 +0000 Christian Schaller * gst-plugins-bad.spec.in: latest updates Original commit message from CVS: latest updates 2005-10-20 15:08:14 +0000 Tim-Philipp Müller ext/faad/gstfaad.*: Do some timestamp smoothing (matroskademux apparently sends multiple buffers in a row with the sa... Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_base_init), (gst_faad_class_init), (gst_faad_init), (gst_faad_srcgetcaps), (gst_faad_event), (gst_faad_chain), (gst_faad_change_state): * ext/faad/gstfaad.h: Do some timestamp smoothing (matroskademux apparently sends multiple buffers in a row with the same timestamp); fix duration on outgoing buffers; fix change state function; use GST_DEBUG_FUNCPTR for pad functions. 2005-10-19 15:58:01 +0000 Wim Taymans gst/: API change fix. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_get_src_query_types), (gst_qtdemux_handle_src_query): * gst/speed/gstspeed.c: (speed_get_query_types), (speed_src_query): * gst/tta/gstttaparse.c: (gst_tta_parse_src_event), (gst_tta_parse_get_query_types), (gst_tta_parse_query): API change fix. 2005-10-19 12:41:49 +0000 Tim-Philipp Müller configure.ac: All the cool kids use GST_DOCBOOK_CHECK now. Original commit message from CVS: * configure.ac: All the cool kids use GST_DOCBOOK_CHECK now. 2005-10-18 08:39:41 +0000 Julien Moutte gst/speed/Makefile.am: Fix build of speed. Original commit message from CVS: 2005-10-18 Julien MOUTTE * gst/speed/Makefile.am: Fix build of speed. 2005-10-17 20:48:35 +0000 Edgard Lima * ChangeLog: * common: * configure.ac: * gst/speed/gstspeed.c: * gst/speed/gstspeed.h: Fixed Speed - Recovered featured missed since version 1.37, and changed other minor things. Original commit message from CVS: Fixed Speed - Recovered featured missed since version 1.37, and changed other minor things. 2005-10-16 17:08:26 +0000 Tim-Philipp Müller configure.ac: Fix glib check Original commit message from CVS: * configure.ac: Fix glib check 2005-10-16 13:54:38 +0000 Thomas Vander Stichele * common: * gst/audioresample/gstaudioresample.c: restructure configure.ac, use correct libtool LDFLAGS, fix up defines Original commit message from CVS: restructure configure.ac, use correct libtool LDFLAGS, fix up defines 2005-10-13 15:31:20 +0000 Stefan Kost ex/: and more typos fixed Original commit message from CVS: * examples/stats/mp2ogg.c: * ext/tarkin/tarkin.c: (tarkin_analysis_framein), (tarkin_synthesis_packetin): and more typos fixed 2005-10-13 11:37:39 +0000 Tim-Philipp Müller ext/faac/gstfaac.c: Gst09-ize code a little bit more: use gst_pad_alloc_buffer(), move event handling from chain func... Original commit message from CVS: * ext/faac/gstfaac.c: (gst_faac_class_init), (gst_faac_init), (gst_faac_sink_setcaps), (gst_faac_src_setcaps), (gst_faac_sink_event), (gst_faac_chain), (gst_faac_set_property), (gst_faac_get_property), (gst_faac_change_state): Gst09-ize code a little bit more: use gst_pad_alloc_buffer(), move event handling from chain function into an event function, add some locks here and there, do some cleanups; disable 32-bit integer and float input formats until we're sure that those actually work (couldn't play back the produced files with anything). 2005-10-12 14:29:55 +0000 Stefan Kost renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition Original commit message from CVS: * examples/indexing/indexmpeg.c: (main): * ext/artsd/gstartsdsink.c: (gst_artsdsink_open_audio), (gst_artsdsink_close_audio), (gst_artsdsink_change_state): * ext/artsd/gstartsdsink.h: * ext/audiofile/gstafparse.c: (gst_afparse_open_file), (gst_afparse_close_file): * ext/audiofile/gstafparse.h: * ext/audiofile/gstafsink.c: (gst_afsink_open_file), (gst_afsink_close_file), (gst_afsink_chain), (gst_afsink_change_state): * ext/audiofile/gstafsink.h: * ext/audiofile/gstafsrc.c: (gst_afsrc_open_file), (gst_afsrc_close_file), (gst_afsrc_change_state): * ext/audiofile/gstafsrc.h: * ext/cdaudio/gstcdaudio.c: (gst_cdaudio_init): * ext/directfb/directfbvideosink.c: (gst_directfbvideosink_init): * ext/dts/gstdtsdec.c: (gst_dtsdec_init): * ext/jack/gstjack.h: * ext/jack/gstjackbin.c: (gst_jack_bin_init), (gst_jack_bin_change_state): * ext/musepack/gstmusepackdec.c: (gst_musepackdec_init): * ext/musicbrainz/gsttrm.c: (gst_musicbrainz_init): * ext/nas/nassink.c: (gst_nassink_open_audio), (gst_nassink_close_audio), (gst_nassink_change_state): * ext/nas/nassink.h: * ext/polyp/polypsink.c: (gst_polypsink_init): * ext/sdl/sdlvideosink.c: (gst_sdlvideosink_change_state): * ext/sdl/sdlvideosink.h: * ext/smoothwave/gstsmoothwave.c: (gst_smoothwave_init): * ext/sndfile/gstsf.c: (gst_sf_set_property), (gst_sf_change_state), (gst_sf_release_request_pad), (gst_sf_open_file), (gst_sf_close_file), (gst_sf_loop): * ext/sndfile/gstsf.h: * ext/swfdec/gstswfdec.c: (gst_swfdec_init): * ext/tarkin/gsttarkindec.c: (gst_tarkindec_init): * gst/apetag/apedemux.c: (gst_ape_demux_init): * gst/cdxaparse/gstcdxaparse.c: (gst_cdxaparse_init): * gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_init): * gst/festival/gstfestival.c: (gst_festival_change_state): * gst/festival/gstfestival.h: * gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_init): * gst/multifilesink/gstmultifilesink.c: (gst_multifilesink_init), (gst_multifilesink_set_location), (gst_multifilesink_open_file), (gst_multifilesink_close_file), (gst_multifilesink_next_file), (gst_multifilesink_pad_query), (gst_multifilesink_handle_event), (gst_multifilesink_chain), (gst_multifilesink_change_state): * gst/multifilesink/gstmultifilesink.h: * gst/videodrop/gstvideodrop.c: (gst_videodrop_init): * sys/cdrom/gstcdplayer.c: (cdplayer_init): * sys/dxr3/dxr3audiosink.c: (dxr3audiosink_init), (dxr3audiosink_open), (dxr3audiosink_close), (dxr3audiosink_chain_pcm), (dxr3audiosink_chain_ac3), (dxr3audiosink_change_state): * sys/dxr3/dxr3audiosink.h: * sys/dxr3/dxr3spusink.c: (dxr3spusink_init), (dxr3spusink_open), (dxr3spusink_close), (dxr3spusink_chain), (dxr3spusink_change_state): * sys/dxr3/dxr3spusink.h: * sys/dxr3/dxr3videosink.c: (dxr3videosink_init), (dxr3videosink_open), (dxr3videosink_close), (dxr3videosink_write_data), (dxr3videosink_change_state): * sys/dxr3/dxr3videosink.h: * sys/glsink/glimagesink.c: (gst_glimagesink_init): * sys/qcam/gstqcamsrc.c: (gst_qcamsrc_change_state), (gst_qcamsrc_open), (gst_qcamsrc_close): * sys/qcam/gstqcamsrc.h: * sys/v4l2/gstv4l2src.c: (gst_v4l2src_init): * sys/vcd/vcdsrc.c: (gst_vcdsrc_set_property), (gst_vcdsrc_get), (gst_vcdsrc_open_file), (gst_vcdsrc_close_file), (gst_vcdsrc_change_state), (gst_vcdsrc_recalculate): * sys/vcd/vcdsrc.h: renamed GST_FLAGS macros to GST_OBJECT_FLAGS moved bitshift from macro to enum definition 2005-10-12 13:54:34 +0000 Tim-Philipp Müller ext/faac/gstfaac.c: Fix depth/width handling for float audio (#318659). Original commit message from CVS: Reviewed by: Tim-Philipp Müller * ext/faac/gstfaac.c: (gst_faac_sink_setcaps): Fix depth/width handling for float audio (#318659). 2005-10-12 12:53:07 +0000 Tim-Philipp Müller ext/faac/gstfaac.c: Refcount fixes (#318659) Original commit message from CVS: Reviewed by: Tim-Philipp Müller * ext/faac/gstfaac.c: (gst_faac_sink_setcaps), (gst_faac_src_setcaps), (gst_faac_chain): Refcount fixes (#318659) 2005-10-12 09:15:40 +0000 Julien Moutte ext/Makefile.am: libvisual and snapshot are not here anymore. Original commit message from CVS: 2005-10-12 Julien MOUTTE * ext/Makefile.am: libvisual and snapshot are not here anymore. Makes automake-1.7 happy again. 2005-10-11 23:03:09 +0000 Tim-Philipp Müller ext/faad/gstfaad.c: newsegment API update Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_event): newsegment API update 2005-10-11 16:34:36 +0000 Wim Taymans gst/: newsegment API update. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header): * gst/tta/gstttaparse.c: (gst_tta_parse_src_event), (gst_tta_parse_parse_header): newsegment API update. 2005-10-07 15:24:24 +0000 Andy Wingo ext/raw1394/gstdv1394src.c: Make interruptible, so it won't block forever in a read(). Original commit message from CVS: 2005-10-07 Andy Wingo * ext/raw1394/gstdv1394src.c: Make interruptible, so it won't block forever in a read(). 2005-10-04 15:49:35 +0000 Christian Schaller * gst-plugins-bad.spec.in: fix spec file Original commit message from CVS: fix spec file 2005-10-03 18:00:32 +0000 Thomas Vander Stichele * ChangeLog: * configure.ac: back to head Original commit message from CVS: back to head === release 0.9.3 === 2005-10-03 17:50:21 +0000 Thomas Vander Stichele * ChangeLog: * NEWS: * RELEASE: * common: * configure.ac: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: release time Original commit message from CVS: release time 2005-09-28 13:38:02 +0000 Wim Taymans gst/qtdemux/qtdemux.c: No need to take stream lock here. Original commit message from CVS: * gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_header): No need to take stream lock here. 2005-09-26 17:57:56 +0000 Thomas Vander Stichele * configure.ac: fix build Original commit message from CVS: fix build 2005-09-26 15:19:38 +0000 Christian Schaller * ChangeLog: * common: * configure.ac: * gst/librfb/Makefile.am: some disting and build fixes Original commit message from CVS: some disting and build fixes 2005-09-23 17:05:29 +0000 Edgard Lima * ChangeLog: * PORTED_09: * ext/gsm/Makefile.am: * ext/gsm/gstgsm.c: * ext/gsm/gstgsmdec.c: Gsmdec ported to 0.9. Tested with filesrc ! gsmdec ! alsasink and osssink. Original commit message from CVS: Gsmdec ported to 0.9. Tested with filesrc ! gsmdec ! alsasink and osssink. 2005-09-23 16:40:27 +0000 David Schleef gst/audioresample/: Convert to using gst debugging Original commit message from CVS: * gst/audioresample/Makefile.am: * gst/audioresample/debug.h: * gst/audioresample/gstaudioresample.c: * gst/audioresample/resample.c: Convert to using gst debugging 2005-09-23 04:22:54 +0000 Thomas Vander Stichele * ext/ladspa/Makefile.am: fix build and use of GST_LIBS Original commit message from CVS: fix build and use of GST_LIBS 2005-09-22 11:17:26 +0000 Arwed v. Merkatz * ChangeLog: * configure.ac: * gst/tta/gstttadec.c: * gst/tta/gstttaparse.c: * gst/tta/gstttaparse.h: tta plugin ported to 0.9 Original commit message from CVS: tta plugin ported to 0.9 2005-09-21 20:33:42 +0000 Flavio Oliveira * ChangeLog: * ext/gsm/gstgsmenc.c: Setting caps on the outgoing buffers. Original commit message from CVS: Setting caps on the outgoing buffers. 2005-09-20 19:25:12 +0000 Thomas Vander Stichele * ext/sdl/Makefile.am: fix Makefile.am ugh Original commit message from CVS: fix Makefile.am ugh 2005-09-20 18:49:05 +0000 Edgard Lima * ChangeLog: * common: * configure.ac: * ext/sdl/Makefile.am: Fixed configure.ac and ext/sdl/Makefile.am for sdl port to 0.9. Original commit message from CVS: Fixed configure.ac and ext/sdl/Makefile.am for sdl port to 0.9. 2005-09-19 21:51:02 +0000 Edgard Lima * ChangeLog: sdlvideosink ported to 0.9 and tested with filesrc ! mpeg2dec Original commit message from CVS: sdlvideosink ported to 0.9 and tested with filesrc ! mpeg2dec 2005-09-19 21:47:54 +0000 Edgard Lima * PORTED_09: * configure.ac: * ext/Makefile.am: * ext/sdl/Makefile.am: * ext/sdl/sdlvideosink.c: sdlvideosink ported to 0.9 and tested with filesrc ! mpeg2dec Original commit message from CVS: sdlvideosink ported to 0.9 and tested with filesrc ! mpeg2dec 2005-09-19 16:44:37 +0000 Thomas Vander Stichele * Makefile.am: * common: add check-valgrind target Original commit message from CVS: add check-valgrind target 2005-09-09 17:53:47 +0000 Jan Schmidt check/: Add extra tests for basetransform based components. Original commit message from CVS: * check/Makefile.am: * check/pipelines/simple_launch_lines.c: (setup_pipeline), (run_pipeline), (GST_START_TEST), (simple_launch_lines_suite): Add extra tests for basetransform based components. Comment out the test_element_negotiation test until we decide if it's testing correct behaviour. * ext/libvisual/visual.c: (gst_visual_init), (get_buffer), (gst_visual_chain), (gst_visual_change_state): Slightly more correct but still bogus timestamping. Fix state change function. * gst/audioconvert/gstaudioconvert.c: (gst_audio_convert_class_init): * gst/audioresample/gstaudioresample.c: * gst/ffmpegcolorspace/gstffmpegcolorspace.c: (gst_ffmpegcsp_class_init): * gst/videoscale/gstvideoscale.c: (gst_videoscale_class_init), (gst_videoscale_prepare_size), (gst_videoscale_set_caps), (gst_videoscale_prepare_image): * gst/volume/gstvolume.c: (gst_volume_class_init), (volume_transform_ip): Basetransform updates. Enable passthrough modes. * sys/ximage/ximagesink.c: (gst_ximage_buffer_init), (gst_ximagesink_renegotiate_size), (gst_ximagesink_xcontext_get), (gst_ximagesink_setcaps), (gst_ximagesink_buffer_alloc): Negotiation fix that allows the window to return to the original size and renegotiate passthrough upstream. Extra debug output. 2005-09-08 15:56:38 +0000 Flavio Oliveira * ChangeLog: * PORTED_09: * configure.ac: * gst/speed/Makefile.am: * gst/speed/gstspeed.c: Ported speed Plugin to GStreamer 0.9 Original commit message from CVS: Ported speed Plugin to GStreamer 0.9 2005-09-06 14:06:55 +0000 Thomas Vander Stichele * configure.ac: back to HEAD Original commit message from CVS: back to HEAD === release 0.9.1 === 2005-09-06 14:05:50 +0000 Thomas Vander Stichele * ChangeLog: * Makefile.am: * NEWS: * README: * RELEASE: * autogen.sh: * common: * configure.ac: * gst-plugins.spec.in: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: releasing 0.9.1 Original commit message from CVS: releasing 0.9.1 2005-09-05 17:20:29 +0000 Jan Schmidt * ChangeLog: * examples/gstplay/player.c: * examples/stats/mp2ogg.c: * ext/artsd/gstartsdsink.c: * ext/audiofile/gstafsink.c: * ext/audiofile/gstafsrc.c: * ext/cdaudio/gstcdaudio.c: * ext/dirac/gstdiracdec.cc: * ext/directfb/directfbvideosink.c: * ext/dts/gstdtsdec.c: * ext/faac/gstfaac.c: * ext/hermes/gsthermescolorspace.c: * ext/ivorbis/vorbisfile.c: * ext/jack/gstjack.c: * ext/jack/gstjackbin.c: * ext/lcs/gstcolorspace.c: * ext/libmms/gstmms.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musepack/gstmusepackdec.c: * ext/musicbrainz/gsttrm.c: * ext/nas/nassink.c: * ext/polyp/polypsink.c: * ext/sdl/sdlvideosink.c: * ext/shout/gstshout.c: * ext/smoothwave/gstsmoothwave.c: * ext/sndfile/gstsf.c: * ext/swfdec/gstswfdec.c: * ext/tarkin/gsttarkindec.c: * ext/xine/xine.c: * ext/xine/xineaudiodec.c: * ext/xine/xineaudiosink.c: * ext/xine/xineinput.c: * ext/xvid/gstxviddec.c: * ext/xvid/gstxvidenc.c: * gst/apetag/apedemux.c: * gst/cdxaparse/gstcdxaparse.c: * gst/cdxaparse/gstcdxastrip.c: * gst/cdxaparse/gstvcdparse.c: * gst/colorspace/gstcolorspace.c: * gst/festival/gstfestival.c: * gst/librfb/gstrfbsrc.c: * gst/modplug/gstmodplug.cc: * gst/mpeg1videoparse/gstmp1videoparse.c: * gst/mpegaudioparse/gstmpegaudioparse.c: * gst/multifilesink/gstmultifilesink.c: * gst/smoothwave/gstsmoothwave.c: * gst/speed/gstspeed.c: * gst/switch/gstswitch.c: * gst/videocrop/gstvideocrop.c: * gst/videodrop/gstvideodrop.c: * gst/y4m/gsty4mencode.c: * po/af.po: * po/az.po: * po/cs.po: * po/en_GB.po: * po/hu.po: * po/it.po: * po/nb.po: * po/nl.po: * po/or.po: * po/sq.po: * po/sr.po: * po/sv.po: * po/uk.po: * po/vi.po: * sys/cdrom/gstcdplayer.c: * sys/dxr3/dxr3audiosink.c: * sys/dxr3/dxr3spusink.c: * sys/dxr3/dxr3videosink.c: * sys/glsink/glimagesink.c: * sys/qcam/gstqcamsrc.c: * sys/sunaudio/gstsunaudio.c: * sys/sunaudio/gstsunaudiosrc.c: * sys/sunaudio/gstsunelement.c: * sys/v4l2/gstv4l2element.c: * sys/v4l2/gstv4l2src.c: * sys/vcd/vcdsrc.c: Fix up all the state change functions. Original commit message from CVS: Fix up all the state change functions. 2005-09-05 15:10:18 +0000 Thomas Vander Stichele * Makefile.am: * configure.ac: * ext/faad/gstfaad.c: * gst-plugins-bad.spec.in: * gst/qtdemux/qtdemux.c: * po/POTFILES.in: cleaning up bad Original commit message from CVS: cleaning up bad 2005-09-05 13:49:41 +0000 Thomas Vander Stichele * ChangeLog: * common: * docs/random/ChangeLog-0.8: * ext/Makefile.am: created gst-plugins-bad Original commit message from CVS: created gst-plugins-bad === release 0.9.2 === 2005-09-04 10:38:45 +0000 Thomas Vander Stichele fix distcheck Original commit message from CVS: * common/gtk-doc-plugins.mak: * docs/plugins/Makefile.am: fix distcheck * gst/audioresample/resample.c: fix wrong docstring 2005-09-02 20:21:17 +0000 Flavio Oliveira * ChangeLog: * PORTED_09: * configure.ac: * ext/Makefile.am: * ext/gsm/Makefile.am: * ext/gsm/gstgsm.c: * ext/gsm/gstgsmenc.c: Ported GSM Encoder to GStreamer 0.9 Original commit message from CVS: Ported GSM Encoder to GStreamer 0.9 2005-09-02 15:44:44 +0000 Andy Wingo * ext/ladspa/gstsignalprocessor.c: All plugins updated for element state changes. Original commit message from CVS: 2005-09-02 Andy Wingo * All plugins updated for element state changes. 2005-09-02 15:43:14 +0000 Andy Wingo * common: * tests/check/elements/audioresample.c: All plugins updated for element state changes. Original commit message from CVS: 2005-09-02 Andy Wingo * All plugins updated for element state changes. 2005-09-01 19:53:12 +0000 Flavio Oliveira * PORTED_09: update PORTED_09 file Original commit message from CVS: update PORTED_09 file