tomcast reads mpeg transport streams over http or udp (multicast or unicast) and outputs them to chosen multicast group. Basically a simple http2multicast daemon designed to work 24/7.
Georgi Chorbadzhiyski 7dd2c7cccd Fix 'detect encrypted inuot' logic, it was reversed 1 year ago
libfuncs @ 0dc8d87080 libfuncs: Update library. 4 years ago
.gitignore Add .gitignore file. 6 years ago
.gitmodules Add libfuncs as git submodule. 6 years ago
COPYING Initial import. 6 years ago
ChangeLog Add support for detecting encrypted input 1 year ago
Makefile Add web status/info/control interface 2 years ago
README Add more info in the README file. 6 years ago
README.WEB_ACCESS Add web status/info/control interface 2 years ago
TODO Release tomcast as free software. 6 years ago
bitstream.h Detect if the input is encrypted and switch the input 1 year ago
channels.conf-example Release tomcast as free software. 6 years ago
config.h Fix 'detect encrypted inuot' logic, it was reversed 1 year ago
tomcast.c Fix 'detect encrypted inuot' logic, it was reversed 1 year ago
web_pages.c Use proper funtion prototypes 2 years ago
web_pages.h Add web status/info/control interface 2 years ago
web_server.c Add web status/info/control interface 2 years ago
web_server.h Add web status/info/control interface 2 years ago

README.WEB_ACCESS

To enable the web access start tomcast with -b (listen address) and
-p (listen port parameters).

For example: tomcast -b 127.0.0.1 -p 8081

Now you can access the web interface exposed by tomcast at

http://127.0.0.1:8081/

The following endpoints are accessible:

http://127.0.0.1:8081/getconfig

Return currently configured channels in channels.conf format
that tomcast uses.


http://127.0.0.1:8081/reconnect

Reconnect all sources. If channels have more than one source
the source will be changed to the next available source.


http://127.0.0.1:8081/reload

Reload config file. This would start/stop new/removed channels.


http://127.0.0.1:8081/status

Return current channels status. The status looks like this:

# Status DestAddr ConnTime ReadBytes ChanName ChanSource ProxyStatus
CONN_OK 239.78.78.78:5000 123 148708 chan1 http://example.com:8080/stb/chan1.mpg Synced
CONN_ERROR 239.79.79.79:5000 60 65800 chan2 http://ux.iptv.bg:8080/stb/chan2.mpg Synced
CONN_ERROR 239.80.80.80:5000 0 0 chan3 udp://239.1.2.3:5000/ Connected

"Status" - current channel status which can be CONN_OK or CONN_ERROR

CONN_ERROR - Means that the source of the channel is currently
not connected or bytes read are at least 1316 or
ConnTime is 0

"ProxyStatus" - Last connection status

Connected
Working

Reconnecting

Dying
Forced reconnect

ERROR: Can not connect to source
ERROR: Can not resolve source host
ERROR: Can not sync mpeg
ERROR: Dns resolve timeout
ERROR: Read timeout
ERROR: Source returned invalid HTTP code
ERROR: Source returned no-signal
ERROR: Source returned unhandled error code
ERROR: Timeout while syncing mpeg
ERROR: Too many zero reads
ERROR: fdread() timeout while syncing mpeg
ERROR: fdread() timeout while syncing mpeg