• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

Makefile.amH A D19-Apr-2019818 3226

Makefile.inH A D03-May-202242.8 KiB1,060958

READMEH A D19-Apr-20191.9 KiB5443

gstmultifdsink.cH A D19-Apr-201938.6 KiB1,144695

gstmultifdsink.hH A D19-Apr-20192.8 KiB9744

gstmultihandlesink.cH A D19-Apr-201974.8 KiB2,2811,601

gstmultihandlesink.hH A D19-Apr-201911.7 KiB301167

gstmultisocketsink.cH A D19-Apr-201944.3 KiB1,307820

gstmultisocketsink.hH A D19-Apr-20193 KiB9645

gstsocketsrc.cH A D19-Apr-201913.6 KiB478335

gstsocketsrc.hH A D19-Apr-20192 KiB6932

gsttcp.hH A D19-Apr-20191.1 KiB337

gsttcpclientsink.cH A D19-Apr-201911.9 KiB428303

gsttcpclientsink.hH A D19-Apr-20192.2 KiB7737

gsttcpclientsrc.cH A D19-Apr-201914.6 KiB520383

gsttcpclientsrc.hH A D19-Apr-20192.1 KiB7436

gsttcpplugin.cH A D19-Apr-20192.3 KiB7145

gsttcpserversink.cH A D19-Apr-201913.1 KiB455325

gsttcpserversink.hH A D19-Apr-20192.4 KiB7936

gsttcpserversrc.cH A D19-Apr-201916.4 KiB567427

gsttcpserversrc.hH A D19-Apr-20192.3 KiB7538

meson.buildH A D19-Apr-2019592 2522

README

1This part of the documentation is for the new tcp elements:
2- tcpclientsrc
3- tcpclientsink
4- tcpserversrc
5- tcpserversink
6
7TESTS
8-----
9Use these tests to test functionality of the various tcp plugins
10
11* server: nc -l -p 3000
12  client: nc localhost 3000
13  everything you type in the server is shown on the client
14  everything you type in the client is shown on the server
15
16* server: nc -l -p 3000
17  client: gst-launch tcpclientsrc protocol=none port=3000 ! fdsink fd=2
18  everything you type in the server is shown on the client
19
20* server: nc -l -p 3000
21  client: gst-launch fdsrc fd=1 ! tcpclientsink protocol=none port=3000
22  everything you type in the client is shown on the server
23
24* server: gst-launch tcpserversrc protocol=none port=3000 ! fdsink fd=2
25  client: gst-launch fdsrc fd=1 ! tcpclientsink protocol=none port=3000
26
27* server: gst-launch fdsrc fd=1 ! tcpserversink protocol=none port=3000
28  client: gst-launch tcpclientsrc protocol=none port=3000 ! fdsink fd=2
29  -> Received first buffer without caps set
30
31TODO
32----
33- implement DNS resolution
34
35multifdsink
36-----------
37- operation:
38  - client fd gets added when "add" signal gets emitted on multifdsink
39  - signal handler creates a GstTCPClient structure, adds it to ->clients,
40    and adds the fd to ->fd_hash, then emits client-added
41  - client
42
43  - when a buffer comes in:
44    - the _render vmethod puts the buffer on the global queue
45    - and increases bytes_to_serve
46    - (currently it sets streamheaders, but since this is treated globally
47       this is wrong - clients can be at different positions in the stream)
48
49  - when a client issues a write (ie requests data):
50    - when using GDP, if no caps sent yet, send caps first, then set caps_sent
51    - if streamheader buffers, and we haven't sent yet to this client,
52      send current streamheader buffers, then set streamheader_sent
53    - send out buffers
54