summaryrefslogtreecommitdiff
path: root/gst/librfb
Commit message (Collapse)AuthorAgeFilesLines
* Add support for Meson as alternative/parallel build systemNirbheek Chauhan2016-08-201-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/mesonbuild/meson With contributions from: Tim-Philipp Müller <tim@centricular.com> Matej Knopp <matej.knopp@gmail.com> Jussi Pakkanen <jpakkane@gmail.com> (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.
* plugins: Use stdint.h instead of _stdint.hNirbheek Chauhan2016-08-191-1/+6
| | | | | | _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.
* rfbsrc: Fix fallback to GstVideoBufferPoolNicolas Dufresne2016-04-051-3/+5
| | | | | | | | 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
* rfbsrc: Implement decide_allocation virtualNicolas Dufresne2016-04-052-55/+41
| | | | | | | | | | | 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
* rfbsrc: Fix caps negotiationNicolas Dufresne2016-04-051-38/+8
| | | | | | | | | | | | | | 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
* rfbsrc: Implement unlock() methodNicolas Dufresne2016-04-051-0/+10
| | | | | This prevent stalls when we try to stop the source while waiting for the server to send more updates.
* rfbsrc: Check for connection being closedNicolas Dufresne2016-04-051-1/+8
| | | | | | 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.
* rfbsrc: Check for read/write errorNicolas Dufresne2016-04-051-50/+125
| | | | | Check for read/write error. This prevent undefined behaviour that rely on unitialized buffer.
* rfbsrc: Add a internal method to disconnectNicolas Dufresne2016-04-053-18/+28
| | | | This also removes the disconnected boolean hack.
* rfbsrc: Don't ignore errorsNicolas Dufresne2016-04-051-0/+1
| | | | | | 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.
* rfbsrc: Serialize write operationsNicolas Dufresne2016-04-052-0/+11
| | | | | | Currently we send key events from seperate threads. IOStream does not allow concurrent write operations, so protect this operation using a mutex.
* rfbsrc: Add 3.7/3.8 security type negotiationNicolas Dufresne2016-04-051-5/+44
|
* rfbsrc: Port to GSocketClientNicolas Dufresne2016-04-054-100/+49
| | | | | | | | | 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.
* rfbsrc: Remove useless library wrappingNicolas Dufresne2016-04-054-19/+7
| | | | | We use a sinlge .c file, simplify everything by removing that static library.
* rfbsrc: Cleanup dead codeNicolas Dufresne2016-04-058-142/+0
| | | | | Remove all the unused stuff, the include header, definition and C code that don't contribute anything to this element.
* rfbsrc: Properly fallback to 3.3Nicolas Dufresne2016-04-051-0/+1
| | | | | If the major version is not 3, then the minor version provided should be ignored, as it is meaningless for our fallback.
* rfbsrc: Cleanly handle security negotiation failureNicolas Dufresne2016-04-051-2/+5
| | | | | | 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.
* bad: use new gst_element_class_add_static_pad_template()Vineeth TM2016-03-241-2/+2
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=763081
* Remove unnecessary NULL checks before g_free()Reynaldo H. Verdejo Pinochet2015-11-181-4/+2
| | | | g_free() is NULL-safe
* Rename property enums from ARG_ to PROP_Luis de Bethencourt2015-04-271-48/+48
| | | | Property enum items should be named PROP_ for consistency and readability.
* Remove obsolete Android build cruftTim-Philipp Müller2015-04-261-14/+0
| | | | This is not needed any longer.
* Constify some static arrays everywhereSebastian Dröge2015-01-211-4/+4
|
* rfbsrc: Clamp out of bounds resolutions to prevent segfaultsBlake Tregre2014-08-281-4/+14
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=726801
* rfbsrc: Send stream-start event in the beginningBlake Tregre2014-05-021-0/+8
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=726802
* rfb: Link with libgstbase for GstPushSrcSebastian Dröge2013-06-071-2/+2
|
* rfbsrc: post error messages on errorsTim-Philipp Müller2013-05-113-16/+93
|
* rfbsrc: fix rfbdecoder new/free asymetry and wrong free in error caseTim-Philipp Müller2013-05-112-2/+2
| | | | | | | 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.
* rfbsrc: make authentication handshake safe for multiple instancesTim-Philipp Müller2013-05-113-32/+39
| | | | Move DES key into context struct.
* rfbsrc: remove GPL-licensed source fileTim-Philipp Müller2013-05-104-219/+26
| | | | | 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.
* rfbsrc: use glib gio sockets for network accessAleix Conchillo Flaque2013-05-104-90/+148
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=700038
* rfbsrc: port to 1.0Aleix Conchillo Flaque2013-05-103-58/+145
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=700038
* gst: Add better support for static pluginsSebastian Dröge2013-04-151-1/+1
|
* Fix FSF addressTim-Philipp Müller2012-11-044-6/+6
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=687520
* Use gst_element_class_set_static_metadata()Tim-Philipp Müller2012-10-171-1/+1
| | | | | where possible. Avoids some string copies. Also re-indent some stuff. Also some indent fixes here and there.
* replace gst_element_class_set_details_simple with gst_element_class_set_metadataMark Nauwelaerts2012-09-141-1/+1
|
* rfbsrc: Fix compiling in WindowsRaimo Järvi2012-06-141-1/+1
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=677724
* rfbsrc: call WSAStartup/Cleanup on win32Tim-Philipp Müller2012-05-071-4/+20
| | | | | | | If we link against libwinsock2, we should probably call Startup/Cleanup as well. https://bugzilla.gnome.org/show_bug.cgi?id=675415
* rfbsrc: fix librfb linking on win32Marc-André Lureau2012-05-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* gst: Update for GST_PLUGIN_DEFINE() API changesSebastian Dröge2012-04-051-1/+1
|
* gst: some more unused-but-set-variable warning fixesTim-Philipp Müller2011-06-041-2/+2
|
* librfb: don't leak password on errorStefan Kost2011-05-201-1/+4
|
* android: make it ready for androgenizerThibault Saunier2011-04-111-0/+14
| | | | | | | | 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
* rfbsrc: fail more gracefully if source gets disconnected or geometry changesMatthew Ife2010-12-122-1/+14
| | | | | | | | 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
* various (gst): add missing G_PARAM_STATIC_STRINGS flagsStefan Kost2010-10-191-12/+20
| | | | Canonicalize property names as needed.
* Add -Wold-style-definitionBenjamin Otte2010-03-221-20/+9
| | | | and fix the warnings
* Add -Wredundant-decls flagBenjamin Otte2010-03-221-2/+0
| | | | and fix warnings from it
* Add -Wmissing-declarations -Wmissing-prototypes to configure flagsBenjamin Otte2010-03-211-1/+1
| | | | And fix all warnings
* gst_element_class_set_details => gst_element_class_set_details_simpleBenjamin Otte2010-03-181-9/+6
|
* librfb: port rfbsrc to MinGWРуслан Ижбулатов2010-01-122-1/+21
| | | | Fixes #606677
* rfbsrc: use existing macros to avoid alignment issuesTim-Philipp Müller2010-01-111-6/+6
|