mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 09:10:36 +00:00
95ada43982
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 |
||
---|---|---|
.. | ||
.gitignore | ||
fdsetstress.c | ||
gstfdset.c | ||
gstfdset.h | ||
gstmultifdsink.c | ||
gstmultifdsink.h | ||
gsttcp-marshal.list | ||
gsttcp.c | ||
gsttcp.h | ||
gsttcpclientsink.c | ||
gsttcpclientsink.h | ||
gsttcpclientsrc.c | ||
gsttcpclientsrc.h | ||
gsttcpplugin.c | ||
gsttcpplugin.h | ||
gsttcpserversink.c | ||
gsttcpserversink.h | ||
gsttcpserversrc.c | ||
gsttcpserversrc.h | ||
Makefile.am | ||
README | ||
tcp.vcproj |
This part of the documentation is for the new tcp elements: - tcpclientsrc - tcpclientsink - tcpserversrc - tcpserversink TESTS ----- Use these tests to test functionality of the various tcp plugins * server: nc -l -p 3000 client: nc localhost 3000 everything you type in the server is shown on the client everything you type in the client is shown on the server * server: nc -l -p 3000 client: gst-launch tcpclientsrc protocol=none port=3000 ! fdsink fd=2 everything you type in the server is shown on the client * server: nc -l -p 3000 client: gst-launch fdsrc fd=1 ! tcpclientsink protocol=none port=3000 everything you type in the client is shown on the server * server: gst-launch tcpserversrc protocol=none port=3000 ! fdsink fd=2 client: gst-launch fdsrc fd=1 ! tcpclientsink protocol=none port=3000 TODO ---- - implement DNS resolution multifdsink ----------- - operation: - client fd gets added when "add" signal gets emitted on multifdsink - signal handler creates a GstTCPClient structure, adds it to ->clients, and adds the fd to ->fd_hash, then emits client-added - client - when a buffer comes in: - the _render vmethod puts the buffer on the global queue - and increases bytes_to_serve - (currently it sets streamheaders, but since this is treated globally this is wrong - clients can be at different positions in the stream) - when a client issues a write (ie requests data): - when using GDP, if no caps sent yet, send caps first, then set caps_sent - if streamheader buffers, and we haven't sent yet to this client, send current streamheader buffers, then set streamheader_sent - send out buffers