summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* wasapi: Fix indentation issues missed by the commit hookNirbheek Chauhan2018-02-085-30/+37
| | | | | These were missed because the relevant commits were made on Windows where `indent` wasn't installed.
* vulkanupload: actually loop over possible uploadersMatthew Waters2018-02-081-17/+18
| | | | | | Fix some funky control that wasn't working CID #1417219
* webrtc: Fix ffeb09e4 conditionalMatthew Waters2018-02-081-3/+3
| | | | | | | | | | | | 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.
* webrtc: change dead code to an assertMatthew Waters2018-02-081-2/+1
| | | | CID #1429140
* dtls: add meson definition for recently added testMatthew Waters2018-02-081-0/+1
|
* webrtc: bail on invalid rtpbin namesMatthew Waters2018-02-081-1/+4
| | | | | | | If we fail parsing rtpbin pad names, someone has screwed up so critical and return. CID #1429142
* Add new 'proxy' element to stream data between pipelinesNirbheek Chauhan2018-02-0710-0/+895
| | | | | | | | | | | | | | | | | | | | | | | | 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
* qt: don't #include platform specific gstglcontext_*.h headersMatthew Waters2018-02-071-6/+0
| | | | They aren't public headers
* opencv: fix OPENCV_PATH_NAME when using mesonGuillaume Desmottes2018-02-061-1/+1
| | | | | | | 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
* aom: Drop pointless cast from av1encSean DuBois2018-02-051-4/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=791674
* aom: Fix all definite leaks in av1encSean DuBois2018-02-052-29/+62
| | | | | | | 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
* aom: Consistent naming between av1dec and av1encSean DuBois2018-02-052-13/+18
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=791674
* aom: Implement flush for av1decSean DuBois2018-02-051-0/+21
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=791674
* autotools: use -fno-strict-aliasing where supportedTim-Philipp Müller2018-02-051-3/+7
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=769183
* tests: add a test for the dtls{enc,dec} elementsMatthew Waters2018-02-053-0/+200
|
* dtls: drop upstream segment and stream-start eventsMatthew Waters2018-02-051-0/+25
| | | | | | Fixes tests with GstHarness We will push our own from the srcpad task.
* dtls: don't leak the system clockMatthew Waters2018-02-051-3/+2
| | | | Obtain and release it as needed.
* dtlsenc: fix typo in is-client property descriptionMatthew Waters2018-02-051-1/+1
|
* adaptivedemux: reject segment seeksMathieu Duponchelle2018-02-021-0/+8
| | | | | | | | 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
* webrtcbin: an element that handles the transport aspects of webrtc connectionsMatthew Waters2018-02-0269-7/+12704
| | | | | | | | | | | | | | | | | | | | 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 <nirbheek@centricular.com> Mathieu Duponchelle <mathieu@centricular.com> Edward Hervey <edward@centricular.com> https://bugzilla.gnome.org/show_bug.cgi?id=792523
* dtls: remove reliance on a default GMainContext/LoopMatthew Waters2018-02-011-25/+1
| | | | | | 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.
* netsim: fix format errors for different platformsOmar Akkila2018-02-011-5/+8
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=793073
* configure: fix opengl api conditionalTim-Philipp Müller2018-01-311-1/+1
| | | | | Fixes build of openglmixers plugin due to mismatch between build system conditional USE_OPENGL and define in gstglconfig.h
* configure: fix OpenGL API detectionTim-Philipp Müller2018-01-312-5/+9
| | | | And don't build gl mosaic element unconditionally.
* autotools: fix build if OpenGL support is not availableTim-Philipp Müller2018-01-311-30/+31
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=793039
* gdpdepay: don't use allocator if it has custom allocVíctor Manuel Jáquez Leal2018-01-311-0/+9
| | | | | | | | | | | | 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
* gdpdepay: don't allocation query if caps aren't fixedVíctor Manuel Jáquez Leal2018-01-311-0/+5
| | | | | | | | | | | | 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
* wasapi: Correctly set ringbuffer segsize/segtotalNirbheek Chauhan2018-01-312-28/+77
| | | | | | | | | | | | 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
* wasapi: Implement a device provider for probingNirbheek Chauhan2018-01-316-17/+451
| | | | | | | | 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
* wasapi: Implement support for >2 channelsNirbheek Chauhan2018-01-316-32/+153
| | | | | | | | 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
* meson: use -fno-strict-aliasing where supportedTim-Philipp Müller2018-01-301-0/+8
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=769183
* codecparser: vp8: Fix range decoder initSreerenj Balachandran2018-01-301-1/+1
| | | | | | | | | | | 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
* kmssink: Make render rectangle property controllableNicolas Dufresne2018-01-301-5/+14
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=792798
* glvideomixer: fix vertex_buffer leakVincent Penquerc'h2018-01-291-2/+8
| | | | | | | | | 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
* srtp: Support libsrtp2Jan Alexander Steffens (heftig)2018-01-2911-110/+250
| | | | | | | | | | | | | | | | | | | 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
* rtmpsink: don't crash if there's streamheader field in the capsTim-Philipp Müller2018-01-281-13/+25
| | | | | | 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.
* ahc: enable autofocus callbackJustin Kim2018-01-261-3/+3
| | | | | | | 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
* aom: Add direct casts for GstAV1Enc and GstAV1DecSean DuBois2018-01-264-9/+13
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=791674
* aom: Deadline was removed from AV1Sean DuBois2018-01-262-3/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=791674
* aom: Fix leak in av1decSean DuBois2018-01-261-0/+5
| | | | | | AOM Decoder wasn't being destroyed in stop https://bugzilla.gnome.org/show_bug.cgi?id=791674
* aom: Put av1enc config debugging under gst_av1_enc_debug namespaceSean DuBois2018-01-261-5/+6
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=791674
* directsoundsrc: Add missing \ in multi-line #defineSebastian Dröge2018-01-251-3/+3
|
* directsoundsrc: Add support for a DeviceProviderSebastian Dröge2018-01-256-9/+362
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=792782
* wasapi: Fix some leaks, bugs, and compiler warningsNirbheek Chauhan2018-01-253-20/+75
| | | | Also improve logging.
* h26{4,5}parse: expose chroma format and bit depth in capsGuillaume Desmottes2018-01-242-0/+56
| | | | | | | | | 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
* nvenc: add "gop-size" propertyTim-Philipp Müller2018-01-243-0/+26
| | | | | | This also changes the default gop size from 30 to 75 frames. https://bugzilla.gnome.org/show_bug.cgi?id=781410
* nvenc: mark properties that can be changed at runtime accordinglyTim-Philipp Müller2018-01-241-12/+18
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=781410
* nvenc: Add support for dynamic bitrate/preset reconfigurationOle André Vadla Ravnås2018-01-242-0/+19
| | | | | | Useful for dynamically updating bitrate in live scenarios. https://bugzilla.gnome.org/show_bug.cgi?id=781410
* nvenc: Add support for I420Ole André Vadla Ravnås2018-01-241-16/+45
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=781410
* netsim: fix misleading packet delay logJun Xie2018-01-241-4/+5
| | | | | | packet delay time shall be calculated by ready_time minus current time https://bugzilla.gnome.org/show_bug.cgi?id=791838