gfto / tomcast

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.
GNU General Public License v2.0
34 stars 12 forks source link

Aug 18 10:59:05 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000 #1

Open celevra opened 11 years ago

celevra commented 11 years ago

Hi,

i have a eyetv Netstream, and want to descramble sky discovery with tsdecrypt. But tsdecrypt only supports multicast, and the netstream only http unicast. so, here comes tomcast. before the release of tomcast, i've tried vlc, but because of the encryption, vlc was not able to proxy from http to udp, here is a detailed vlc log:

acid@obelix ~ $ cvlc -vvv "http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF" --sout '#udp{dst=0.0.0.0:1234}'
VLC media player 2.0.8 Twoflower (revision 2.0.8a-0-g68cf50b)
[0x1fc5108] main libvlc debug: VLC media player - 2.0.8 Twoflower
[0x1fc5108] main libvlc debug: Copyright © 1996-2013 VLC authors and VideoLAN
[0x1fc5108] main libvlc debug: revision 2.0.8a-0-g68cf50b
[0x1fc5108] main libvlc debug: configured with ./configure  '--enable-static' '--build=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro' '--config-cache' '--disable-maintainer-mode' '--disable-silent-rules' '--disable-update-check' '--enable-fast-install' '--prefix=/usr' '--docdir=/usr/share/doc/vlc-nox' '--sysconfdir=/etc' '--with-binary-version=0ubuntu0.12.04.1' '--enable-a52' '--enable-aa' '--enable-bluray' '--enable-bonjour' '--enable-caca' '--enable-dbus' '--enable-dca' '--enable-dirac' '--enable-directfb' '--enable-dvbpsi' '--enable-dvdnav' '--enable-faad' '--enable-flac' '--enable-fluidsynth' '--enable-freetype' '--enable-fribidi' '--enable-gnutls' '--enable-jack' '--enable-kate' '--enable-libass' '--enable-libmpeg2' '--enable-libproxy' '--enable-libxml2' '--enable-lirc' '--enable-live555' '--enable-mad' '--enable-mkv' '--enable-mod' '--enable-mpc' '--enable-mtp' '--enable-mux_ogg' '--enable-ncurses' '--enable-notify' '--enable-ogg' '--enable-oss' '--enable-pulse' '--enable-qt4' '--enable-realrtsp' '--enable-samplerate' '--enable-schroedinger' '--enable-sdl' '--enable-shout' '--enable-skins2' '--enable-smb' '--enable-speex' '--enable-svg' '--enable-taglib' '--enable-theora' '--enable-twolame' '--enable-upnp' '--enable-vcd' '--enable-vcdx' '--enable-vorbis' '--enable-x264' '--enable-zvbi' '--with-kde-solid=/usr/share/kde4/apps/solid/actions/' '--disable-dxva2' '--disable-gnomevfs' '--disable-goom' '--disable-portaudio' '--disable-projectm' '--disable-sqlite' '--disable-telx' '--enable-alsa' '--enable-atmo' '--enable-dc1394' '--enable-dv' '--enable-fbosd' '--enable-libva' '--enable-linsys' '--enable-omxil' '--enable-pvr' '--enable-udev' '--enable-v4l2' '--enable-crystalhd' '--enable-mmx' '--enable-sse' '--disable-neon' '--disable-altivec' 'build_alias=x86_64-linux-gnu'
[0x1fc5108] main libvlc debug: searching plug-in modules
[0x1fc5108] main libvlc debug: loading plugins cache file /usr/lib/vlc/plugins/plugins.dat
[0x1fc5108] main libvlc debug: recursively browsing `/usr/lib/vlc/plugins'
[0x1fc5108] main libvlc debug: saving plugins cache /usr/lib/vlc/plugins/plugins.dat
[0x1fc5108] main libvlc debug: plug-ins loaded: 420 modules
[0x1fc5108] main libvlc debug: opening config file (/home/acid/.config/vlc/vlcrc)
[0x1fc5108] main libvlc debug: translation test: code is "de"
[0x1fc5108] main libvlc debug: CPU has capabilities MMX 3DNow! MMXEXT SSE SSE2 SSE3 FPU
[0x1fc5108] main libvlc debug: looking for memcpy module: 4 candidates
[0x1fc5108] main libvlc debug: using memcpy module "memcpymmxext"
[0x21f92d8] main input debug: Creating an input for 'Medienbibliothek'
[0x21f92d8] main input debug: Input is a meta file: disabling unneeded options
[0x21f92d8] main input debug: using timeshift granularity of 50 MiB, in path '/tmp'
[0x21f92d8] main input debug: `file/xspf-open:///home/acid/.local/share/vlc/ml.xspf' gives access `file' demux `xspf-open' path `/home/acid/.local/share/vlc/ml.xspf'
[0x21f92d8] main input debug: creating demux: access='file' demux='xspf-open' location='/home/acid/.local/share/vlc/ml.xspf' file='/home/acid/.local/share/vlc/ml.xspf'
[0x1ff4758] main demux debug: looking for access_demux module: 3 candidates
[0x1ff4758] main demux debug: no access_demux module matching "file" could be loaded
[0x1ff4758] main demux debug: TIMER module_need() : 3.101 ms - Total 3.101 ms / 1 intvls (Avg 3.101 ms)
[0x21f92d8] main input debug: creating access 'file' location='/home/acid/.local/share/vlc/ml.xspf', path='/home/acid/.local/share/vlc/ml.xspf'
[0x2090e48] main access debug: looking for access module: 2 candidates
[0x2090e48] filesystem access debug: opening file `/home/acid/.local/share/vlc/ml.xspf'
[0x2090e48] main access debug: using access module "filesystem"
[0x2090e48] main access debug: TIMER module_need() : 1.857 ms - Total 1.857 ms / 1 intvls (Avg 1.857 ms)
[0x2090f98] main stream debug: Using stream method for AStream*
[0x2090f98] main stream debug: starting pre-buffering
[0x2090f98] main stream debug: received first data after 5 ms
[0x2090f98] main stream debug: pre-buffering done 299 bytes in 0s - 44 KiB/s
[0x20911f8] main stream debug: looking for stream_filter module: 7 candidates
[0x20911f8] main stream debug: no stream_filter module matching "any" could be loaded
[0x20911f8] main stream debug: TIMER module_need() : 4.261 ms - Total 4.261 ms / 1 intvls (Avg 4.261 ms)
[0x20911f8] main stream debug: looking for stream_filter module: 1 candidate
[0x20911f8] main stream debug: using stream_filter module "stream_filter_record"
[0x20911f8] main stream debug: TIMER module_need() : 1.201 ms - Total 1.201 ms / 1 intvls (Avg 1.201 ms)
[0x21f92d8] main input debug: creating demux: access='file' demux='xspf-open' location='/home/acid/.local/share/vlc/ml.xspf' file='/home/acid/.local/share/vlc/ml.xspf'
[0x2094308] main demux debug: looking for demux module: 1 candidate
[0x2094308] playlist demux debug: using XSPF playlist reader
[0x2094308] main demux debug: using demux module "playlist"
[0x2094308] main demux debug: TIMER module_need() : 1.981 ms - Total 1.981 ms / 1 intvls (Avg 1.981 ms)
[0x2094c18] main demux meta debug: looking for meta reader module: 2 candidates
[0x2094c18] lua demux meta debug: Trying Lua scripts in /home/acid/.local/share/vlc/lua/meta/reader
[0x2094c18] lua demux meta debug: Trying Lua scripts in /usr/lib/vlc/lua/meta/reader
[0x2094c18] lua demux meta debug: Trying Lua playlist script /usr/lib/vlc/lua/meta/reader/filename.luac
[0x2094c18] lua demux meta debug: Trying Lua scripts in /usr/share/vlc/lua/meta/reader
[0x2094c18] main demux meta debug: no meta reader module matching "any" could be loaded
[0x2094c18] main demux meta debug: TIMER module_need() : 21.612 ms - Total 21.612 ms / 1 intvls (Avg 21.612 ms)
[0x21f92d8] main input debug: `file/xspf-open:///home/acid/.local/share/vlc/ml.xspf' successfully opened
[0x1ff6fe8] main xml reader debug: looking for xml reader module: 1 candidate
[0x1ff6fe8] main xml reader debug: using xml reader module "xml"
[0x1ff6fe8] main xml reader debug: TIMER module_need() : 14.226 ms - Total 14.226 ms / 1 intvls (Avg 14.226 ms)
[0x2094308] playlist demux debug: parsed 0 tracks successfully
[0x21f92d8] main input debug: EOF reached
[0x2094308] main demux debug: removing module "playlist"
[0x20911f8] main stream debug: removing module "stream_filter_record"
[0x2090e48] main access debug: removing module "filesystem"
[0x21f92d8] main input debug: TIMER input launching for 'Medienbibliothek' : 49.859 ms - Total 49.859 ms / 1 intvls (Avg 49.859 ms)
[0x1ff4448] main interface debug: looking for interface module: 1 candidate
[0x1ff4448] main interface debug: using interface module "hotkeys"
[0x1ff4448] main interface debug: TIMER module_need() : 1.459 ms - Total 1.459 ms / 1 intvls (Avg 1.459 ms)
[0x21fa868] main interface debug: looking for interface module: 1 candidate
[0x21fa868] inhibit interface error: Failed to connect to the D-Bus session daemon: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
[0x21fa868] main interface debug: no interface module matching "inhibit,none" could be loaded
[0x21fa868] main interface debug: TIMER module_need() : 1.626 ms - Total 1.626 ms / 1 intvls (Avg 1.626 ms)
[0x21fa868] main interface error: no suitable interface module
[0x208fc78] main playlist debug: playlist threads correctly activated
[0x208fc78] main playlist debug: adding item `http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF' ( http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF )
[0x208fc78] main playlist debug: rebuilding array of current - root Wiedergabeliste
[0x208fc78] main playlist debug: rebuild done - 0 items, index -1
[0x208fc78] main playlist debug: no fetch required for (null) (art currently (null))
[0x21fa868] main interface debug: looking for interface module: 1 candidate
[0x21fa868] main interface debug: no interface module matching "globalhotkeys,none" could be loaded
[0x21fa868] main interface debug: TIMER module_need() : 10.345 ms - Total 10.345 ms / 1 intvls (Avg 10.345 ms)
[0x21fa868] main interface error: no suitable interface module
[0x1fc5108] main libvlc error: interface "globalhotkeys,none" initialization failed
[0x21fa868] main interface debug: looking for interface module: 1 candidate
[0x21fa868] dummy interface: using the dummy interface module...
[0x21fa868] main interface debug: using interface module "dummy"
[0x21fa868] main interface debug: TIMER module_need() : 1.500 ms - Total 1.500 ms / 1 intvls (Avg 1.500 ms)
[0x208fc78] main playlist debug: processing request item: null, node: Wiedergabeliste, skip: 0
[0x208fc78] main playlist debug: rebuilding array of current - root Wiedergabeliste
[0x208fc78] main playlist debug: rebuild done - 1 items, index -1
[0x208fc78] main playlist debug: starting playback of the new playlist item
[0x208fc78] main playlist debug: resyncing on http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF
[0x208fc78] main playlist debug: http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF is at 0
[0x208fc78] main playlist debug: creating new input thread
[0x7f579c000b28] main input debug: Creating an input for 'http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF'
[0x7f5794000ea8] main stream output debug: using sout chain=`udp{dst=0.0.0.0:1234}'
[0x7f5794000ea8] main stream output debug: stream=`udp'
[0x7f5794001188] main stream out debug: looking for sout stream module: 1 candidate
[0x7f5794001188] main stream out debug: set config option: sout-standard-dst to 0.0.0.0:1234
[0x7f5794003fc8] main access out debug: looking for sout access module: 1 candidate
[0x7f5794003fc8] main access out debug: net: connecting to [0.0.0.0]:1234
[0x7f5794003fc8] access_output_udp access out debug: source: 127.0.0.1 port 32997
[0x7f5794003fc8] access_output_udp access out debug: destination: 127.0.0.1 port 1234
[0x7f5794003fc8] main access out debug: using sout access module "access_output_udp"
[0x7f5794003fc8] main access out debug: TIMER module_need() : 6.025 ms - Total 6.025 ms / 1 intvls (Avg 6.025 ms)
[0x7f57940056e8] main mux debug: looking for sout mux module: 1 candidate
[0x7f57940056e8] mux_ts mux debug: shaping=200000 pcr=70000 dts_delay=400000
[0x7f57940056e8] main mux debug: using sout mux module "mux_ts"
[0x7f57940056e8] main mux debug: TIMER module_need() : 18.626 ms - Total 18.626 ms / 1 intvls (Avg 18.626 ms)
[0x7f5794000ea8] main stream output debug: muxer support adding stream at any time
[0x7f5794000ea8] main stream output debug: muxer prefers to wait for all ES before starting to mux
[0x7f5794001188] stream_out_standard stream out debug: using `udp/ts://0.0.0.0:1234'
[0x7f5794001188] main stream out debug: using sout stream module "stream_out_standard"
[0x7f5794001188] main stream out debug: TIMER module_need() : 35.114 ms - Total 35.114 ms / 1 intvls (Avg 35.114 ms)
[0x7f579c000b28] main input debug: using timeshift granularity of 50 MiB, in path '/tmp'
[0x7f579c000b28] main input debug: `http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF' gives access `http' demux `' path `192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF'
[0x7f579c000b28] main input debug: creating demux: access='http' demux='' location='192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF' file='(null)'
[0x7f57940023b8] main demux debug: looking for access_demux module: 0 candidates
[0x7f57940023b8] main demux debug: no access_demux module matched "http"
[0x7f57940023b8] main demux debug: TIMER module_need() : 4.122 ms - Total 4.122 ms / 1 intvls (Avg 4.122 ms)
[0x7f579c000b28] main input debug: creating access 'http' location='192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF', path='(null)'
[0x7f5794002668] main access debug: looking for access module: 2 candidates
[0x7f5794002668] access_http access debug: asking libproxy about url 'http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF'
[0x7f5794002668] access_http access debug: libproxy suggest to use 'direct://'
[0x7f5794002668] access_http access debug: http: server='192.168.10.25' port=80 file='/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF'
[0x7f5794002668] main access debug: net: connecting to 192.168.10.25 port 80
[0x7f5794002668] main access debug: connection succeeded (socket = 7)
[0x7f5794002668] access_http access debug: protocol 'HTTP' answer code 302
[0x7f5794002668] access_http access debug: this frame size=0
[0x7f5794002668] access_http access debug: Connection: close
[0x7f5794002668] access_http access debug: Server: lighttpd/1.4.22
[0x7f5794002668] access_http access debug: redirection to http://192.168.10.25:10001
[0x7f5794002668] access_http access debug: asking libproxy about url 'http://192.168.10.25:10001'
[0x7f5794002668] access_http access debug: libproxy suggest to use 'direct://'
[0x7f5794002668] access_http access debug: http: server='192.168.10.25' port=10001 file=''
[0x7f5794002668] main access debug: net: connecting to 192.168.10.25 port 10001
[0x7f5794002668] main access debug: connection succeeded (socket = 7)
[0x7f5794002668] access_http access debug: protocol 'HTTP' answer code 200
[0x7f5794002668] access_http access debug: Connection: close
[0x7f5794002668] access_http access debug: Content-Type: application/octet-stream
[0x7f5794002668] main access debug: using access module "access_http"
[0x7f5794002668] main access debug: TIMER module_need() : 1542.330 ms - Total 1542.330 ms / 1 intvls (Avg 1542.330 ms)
[0x7f579400f178] main stream debug: Using stream method for AStream*
[0x7f579400f178] main stream debug: starting pre-buffering
[0x7f579400f178] main stream debug: received first data after 15 ms
[0x7f579400f178] main stream debug: pre-buffering done 1024 bytes in 0s - 64 KiB/s
[0x7f57940037f8] main stream debug: looking for stream_filter module: 7 candidates
[0x7f57940037f8] main stream debug: no stream_filter module matching "any" could be loaded
[0x7f57940037f8] main stream debug: TIMER module_need() : 1.020 ms - Total 1.020 ms / 1 intvls (Avg 1.020 ms)
[0x7f57940037f8] main stream debug: looking for stream_filter module: 1 candidate
[0x7f57940037f8] main stream debug: using stream_filter module "stream_filter_record"
[0x7f57940037f8] main stream debug: TIMER module_need() : 0.526 ms - Total 0.526 ms / 1 intvls (Avg 0.526 ms)
[0x7f579c000b28] main input debug: creating demux: access='http' demux='' location='192.168.10.25:10001' file='(null)'
[0x7f579400d7d8] main demux debug: looking for demux module: 54 candidates
[0x7f579400d7d8] mod demux debug: MOD validation failed (ext=)
[0x7f579400d7d8] ts demux debug: pid[3071] unknown
[0x7f579400d7d8] ts demux debug: pid[3072] unknown
[0x7f579400d7d8] ts demux debug: pid[1] unknown
[0x7f579400d7d8] ts demux debug: pid[107] unknown
[0x7f579400d7d8] ts demux debug: pid[32] unknown
libdvbpsi error (PSI decoder): TS discontinuity (received 13, expected 0) for PID 0
[0x7f579400d7d8] ts demux debug: PATCallBack called
[0x7f579400d7d8] ts demux debug: new PAT ts_id=4 version=28 current_next=1
[0x7f579400d7d8] ts demux debug:   * number=14 pid=107
libdvbpsi error (PSI decoder): TS discontinuity (received 7, expected 0) for PID 107
[0x7f579400d7d8] ts demux debug: PMTCallBack called
[0x7f579400d7d8] ts demux debug: new PMT program number=14 version=3 pid_pcr=3071
[0x7f579400d7d8] ts demux debug:  * descriptor : CA (0x9) SysID 0x1702
[0x7f579400d7d8] ts demux debug:  * descriptor : CA (0x9) SysID 0x1833
[0x7f579400d7d8] ts demux debug:  * descriptor : CA (0x9) SysID 0x9c4
[0x7f579400d7d8] ts demux debug:  * descriptor : CA (0x9) SysID 0x9af
[0x7f579400d7d8] ts demux debug:  * descriptor : CA (0x9) SysID 0x98c
[0x7f579400d7d8] ts demux debug:   * es pid=32 type=6 dr->i_tag=0x52
[0x7f579400d7d8] ts demux debug:   * es pid=32 type=6 dr->i_tag=0x56
[0x7f579400d7d8] ts demux debug:     * ttxt type=Teletext lan=deu page=100
[0x7f579400d7d8] ts demux debug:     * Stream Component Identifier: 10
[0x7f579400d7d8] ts demux debug:   * es pid=32 type=6 fcc=telx
[0x7f579c000b28] main input debug: selecting program id=14
[0x7f579400d7d8] ts demux debug:   * es pid=3071 type=2 dr->i_tag=0x52
[0x7f579400d7d8] ts demux debug:   * es pid=3071 type=2 fcc=mpgv
[0x7f579400d7d8] ts demux debug:   * es pid=3072 type=3 dr->i_tag=0xa
[0x7f579400d7d8] ts demux debug:   * es pid=3072 type=3 dr->i_tag=0x52
[0x7f579400d7d8] ts demux debug: found language: deu
[0x7f579400d7d8] ts demux debug:   * es pid=3072 type=3 fcc=mpga
[0x7f5794002668] access_http access warning: unimplemented query in control
[0x7f579400d7d8] main demux debug: using demux module "ts"
[0x7f579400d7d8] main demux debug: TIMER module_need() : 105.383 ms - Total 105.383 ms / 1 intvls (Avg 105.383 ms)
[0x7f5794c0f308] main decoder debug: looking for packetizer module: 21 candidates
[0x7f5794c0f308] main decoder debug: using packetizer module "packetizer_mpegvideo"
[0x7f5794c0f308] main decoder debug: TIMER module_need() : 6.269 ms - Total 6.269 ms / 1 intvls (Avg 6.269 ms)
[0x7f5794ca0758] main decoder debug: looking for packetizer module: 21 candidates
[0x7f5794ca0758] main decoder debug: using packetizer module "mpeg_audio"
[0x7f5794ca0758] main decoder debug: TIMER module_need() : 1.672 ms - Total 1.672 ms / 1 intvls (Avg 1.672 ms)
[0x7f579400d7d8] ts demux debug: DEMUX_SET_GROUP 0 (nil)
[0x7f579c000b28] main input debug: starting in async mode
[0x7f5794ca98f8] main demux meta debug: looking for meta reader module: 2 candidates
[0x7f5794ca98f8] lua demux meta debug: Trying Lua scripts in /home/acid/.local/share/vlc/lua/meta/reader
[0x7f5794ca98f8] lua demux meta debug: Trying Lua scripts in /usr/lib/vlc/lua/meta/reader
[0x7f5794ca98f8] lua demux meta debug: Trying Lua playlist script /usr/lib/vlc/lua/meta/reader/filename.luac
[0x7f5794ca98f8] lua demux meta debug: Trying Lua scripts in /usr/share/vlc/lua/meta/reader
[0x7f5794ca98f8] main demux meta debug: no meta reader module matching "any" could be loaded
[0x7f5794ca98f8] main demux meta debug: TIMER module_need() : 3.064 ms - Total 3.064 ms / 1 intvls (Avg 3.064 ms)
[0x7f579c000b28] main input debug: `http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF' successfully opened
[0x7f579400d7d8] ts demux warning: first packet for pid=3071 cc=0xc
[0x7f579400d7d8] ts demux warning: scrambled state changed on pid 3071 (0->1)
[0x7f579400d7d8] ts demux warning: first packet for pid=3072 cc=0xa
[0x7f579400d7d8] ts demux warning: scrambled state changed on pid 3072 (0->1)
[0x7f579400d7d8] ts demux warning: first packet for pid=32 cc=0xd
[0x7f579c000b28] main input debug: Buffering 0%
[0x7f579c000b28] main input debug: Buffering 3%
[0x7f579c000b28] main input debug: Buffering 7%
[0x7f579c000b28] main input debug: Buffering 11%
[0x7f579400d7d8] ts demux debug: pid[6688] unknown
[0x7f579400d7d8] ts demux debug: pid[7968] unknown
[0x7f579400d7d8] ts demux debug: pid[6944] unknown
[0x7f579c000b28] main input debug: Buffering 15%
[0x7f579400d7d8] ts demux warning: invalid header [0x89:f9:dc:35] (pid: 3072)
[0x7f579400d7d8] ts demux warning: invalid header [0xfe:a1:2d:8f] (pid: 3071)
[0x7f579400d7d8] ts demux warning: invalid header [0x7c:a5:ba:36] (pid: 3071)
[0x7f579c000b28] main input debug: Buffering 18%
[0x7f579400d7d8] ts demux warning: invalid header [0x5f:5c:3d:5e] (pid: 3071)
[0x7f579400d7d8] ts demux warning: invalid header [0x1e:85:64:af] (pid: 3071)
[0x7f579c000b28] main input debug: Buffering 22%
[0x7f579400d7d8] ts demux warning: invalid header [0x21:44:6f:ae] (pid: 3071)
[0x7f579400d7d8] ts demux debug: pid[5920] unknown
[0x7f579400d7d8] ts demux debug: pid[6176] unknown
[0x7f579c000b28] main input debug: Buffering 26%
[0x7f579400d7d8] ts demux warning: invalid header [0x62:91:f3:73] (pid: 3071)
[0x7f579400d7d8] ts demux warning: invalid header [0x81:ed:c6:0e] (pid: 3071)
[0x7f579400d7d8] ts demux warning: invalid header [0xb4:e7:3e:03] (pid: 3072)
[0x7f579c000b28] main input debug: Buffering 30%
[0x7f579400d7d8] ts demux warning: invalid header [0xfa:7b:bd:17] (pid: 3071)
[0x7f579c000b28] main input debug: Buffering 33%
[0x7f579400d7d8] ts demux warning: invalid header [0xf9:fc:ae:2d] (pid: 3071)
[0x7f579400d7d8] ts demux warning: invalid header [0x6a:83:9c:48] (pid: 3071)
[0x7f579c000b28] main input debug: Buffering 37%
[0x7f579c000b28] main input debug: Buffering 38%
[0x7f579400d7d8] ts demux warning: invalid header [0xb1:58:93:d4] (pid: 3071)
[0x7f579c000b28] main input debug: Buffering 41%
[0x7f579400d7d8] ts demux warning: invalid header [0x12:60:47:8a] (pid: 3072)
[0x7f579c000b28] main input debug: Buffering 45%
[0x7f579c000b28] main input debug: Buffering 48%
[0x7f579c000b28] main input debug: Buffering 52%
[0x7f579c000b28] main input debug: Buffering 56%
[0x7f579400d7d8] ts demux warning: invalid header [0xa4:b2:42:9a] (pid: 3072)
[0x7f579c000b28] main input debug: Buffering 60%
[0x7f579c000b28] main input debug: Buffering 63%
[0x7f579400d7d8] ts demux warning: invalid header [0x43:4b:71:4e] (pid: 3071)
[0x7f579400d7d8] ts demux warning: invalid header [0xe7:b3:ef:4e] (pid: 3071)
[0x7f579400d7d8] ts demux warning: invalid header [0x73:7d:99:d2] (pid: 3071)
[0x7f579c000b28] main input debug: Buffering 67%
[0x7f579400d7d8] ts demux warning: invalid header [0x4e:bb:64:26] (pid: 3071)
[0x7f579c000b28] main input debug: ^CBuffering 71%
[0x1fc5108] main libvlc debug: deactivating the playlist
[0x208fc78] main playlist debug: deactivating the playlist
[0x7f579400d7d8] ts demux warning: invalid header [0x87:9b:0e:56] (pid: 3071)
[0x208fc78] main playlist debug: incoming request - stopping current input
[0x7f579400d7d8] ts demux warning: invalid header [0x48:5d:4d:26] (pid: 3071)
[0x7f5794002668] main access debug: waitpipe: object killed
[0x208fc78] main playlist debug: dying input
[0x208fc78] main playlist debug: dying input
[0x7f5794c0f308] main decoder debug: removing module "packetizer_mpegvideo"
[0x7f5794c0f308] main decoder debug: killing decoder fourcc `mpgv', 0 PES in FIFO
[0x7f5794ca0758] main decoder debug: removing module "mpeg_audio"
[0x7f5794ca0758] main decoder debug: killing decoder fourcc `mpga', 0 PES in FIFO
[0x7f579400d7d8] main demux debug: removing module "ts"
[0x7f579400d7d8] ts demux debug: pid list:
[0x7f579400d7d8] ts demux debug:   - pid[0] seen
[0x7f579400d7d8] ts demux debug:   - pid[1] seen
[0x7f579400d7d8] ts demux debug:   - pid[32] seen
[0x7f579400d7d8] ts demux debug:   - pid[107] seen
[0x7f579400d7d8] ts demux debug:   - pid[3071] seen
[0x7f579c000b28] main input debug: Program doesn't contain anymore ES
[0x7f579400d7d8] ts demux debug:   - pid[3072] seen
[0x7f579400d7d8] ts demux debug:   - pid[5920] seen
[0x7f579400d7d8] ts demux debug:   - pid[6176] seen
[0x7f579400d7d8] ts demux debug:   - pid[6688] seen
[0x7f579400d7d8] ts demux debug:   - pid[6944] seen
[0x7f579400d7d8] ts demux debug:   - pid[7968] seen
[0x7f579400d7d8] ts demux debug:   - pid[8191] seen
[0x7f57940037f8] main stream debug: removing module "stream_filter_record"
[0x7f5794002668] main access debug: removing module "access_http"
[0x208fc78] main playlist debug: dead input
[0x7f5794000ea8] main stream output debug: destroying useless sout
[0x7f5794001188] main stream out debug: destroying chain... (name=udp)
[0x7f5794001188] main stream out debug: removing module "stream_out_standard"
[0x7f57940056e8] main mux debug: removing module "mux_ts"
[0x7f5794003fc8] main access out debug: removing module "access_output_udp"
[0x7f5794001188] main stream out debug: destroying chain done
[0x7f579c000b28] main input debug: TIMER input launching for 'http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF' : 1741.026 ms - Total 1741.026 ms / 1 intvls (Avg 1741.026 ms)
[0x1ff4888] main playlist export debug: saving Medienbibliothek to file /home/acid/.local/share/vlc/ml.xspf
[0x1ff4888] main playlist export debug: looking for playlist export module: 1 candidate
[0x1ff4888] main playlist export debug: using playlist export module "export"
[0x1ff4888] main playlist export debug: TIMER module_need() : 1.380 ms - Total 1.380 ms / 1 intvls (Avg 1.380 ms)
[0x1ff4888] main playlist export debug: removing module "export"
[0x208fc78] main playlist debug: playlist correctly deactivated
[0x1fc5108] main libvlc debug: removing all services discovery tasks
[0x1fc5108] main libvlc debug: removing all interfaces
[0x1fc5108] main libvlc debug: exiting
[0x21fa868] main interface debug: removing module "dummy"
[0x1ff4448] main interface debug: removing module "hotkeys"
[0x208fc78] main playlist debug: destroying
[0x1fc5108] main libvlc debug: TIMER ML Load : Total 82.272 ms / 1 intvls (Avg 82.272 ms)
[0x1fc5108] main libvlc debug: TIMER Items array build : Total 1.536 ms / 2 intvls (Avg 0.768 ms)
[0x1fc5108] main libvlc debug: TIMER ML Dump : Total 4.500 ms / 1 intvls (Avg 4.500 ms)
[0x1fc5108] main libvlc debug: removing stats
[0x1fc5108] main libvlc debug: removing module "memcpymmxext"

as you can see, the the starting url is http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF, it set the tuner to tune to discovery, after the tuningrequest is done, it redirects to http://192.168.10.25:10001 where the stream is located

so i have tried two config configurations with tomcast, one with the tuning url and one with the direct one, here are the two logs:

obelix tomcast-1.20 # ./tomcast -c test.conf
tomcast 1.15
Copyright (C) 2010-2013 Unix Solutions Ltd.

Configuration:
    Server ident      : unixsol/tomcast
    Channels file     : test.conf
    Output iface addr : 0.0.0.0
    Multicast ttl     : 1
    Syslog disabled.
    Do not daemonize.
Aug 18 10:56:44 host unixsol-tomcast: INIT : tomcast 1.15 (unixsol/tomcast)
Aug 18 10:56:44 host unixsol-tomcast: CONF : 1 channels loaded
Aug 18 10:56:44 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:56:44 host unixsol-tomcast: INFO : 1 proxy threads spawned
Aug 18 10:56:44 host unixsol-tomcast: NEW  : Chan: discovery Src: http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF Dst: udp://192.168.10.6:5000 SrcIP: 192.168.10.25 SrcFD: 4 DstFD: 3
Aug 18 10:57:00 host unixsol-tomcast: DEBUG: Server returned not valid HTTP code | srv_fd: 4
Aug 18 10:57:01 host unixsol-tomcast: DEBUG: reconnect srv_fd: 4 | Channel: discovery
Aug 18 10:57:01 host unixsol-tomcast: NEW  : Chan: discovery Src: http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF Dst: udp://192.168.10.6:5000 SrcIP: 192.168.10.25 SrcFD: 4 DstFD: 3
^CAug 18 10:57:02 host unixsol-tomcast: INFO : 1 proxy threads killed
Aug 18 10:57:03 host unixsol-tomcast: KILL : Signal 2 | tomcast 1.15 (unixsol/tomcast)

obelix tomcast-1.20 #
obelix tomcast-1.20 # ./tomcast -c test.conf
tomcast 1.15
Copyright (C) 2010-2013 Unix Solutions Ltd.

Configuration:
    Server ident      : unixsol/tomcast
    Channels file     : test.conf
    Output iface addr : 0.0.0.0
    Multicast ttl     : 1
    Syslog disabled.
    Do not daemonize.
Aug 18 10:49:46 host unixsol-tomcast: INIT : tomcast 1.15 (unixsol/tomcast)
Aug 18 10:49:46 host unixsol-tomcast: CONF : 1 channels loaded
Aug 18 10:49:46 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:49:46 host unixsol-tomcast: INFO : 1 proxy threads spawned
Aug 18 10:49:46 host unixsol-tomcast: NEW  : Chan: discovery Src: http://192.168.10.25:10001 Dst: udp://192.168.10.6:5000 SrcIP: 192.168.10.25 SrcFD: 4 DstFD: 3
Aug 18 10:49:46 host unixsol-tomcast: SYNC : TS synced after 0 bytes | Channel: discovery
Aug 18 10:49:51 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001
Aug 18 10:49:51 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:49:51 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001
Aug 18 10:49:51 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:49:51 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001
Aug 18 10:49:51 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:49:51 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001
Aug 18 10:49:51 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:49:51 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001
Aug 18 10:49:51 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:49:51 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001
Aug 18 10:49:51 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
^CAug 18 10:49:51 host unixsol-tomcast: INFO : 1 proxy threads killed
Aug 18 10:49:51 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001
Aug 18 10:49:51 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000
Aug 18 10:49:51 host unixsol-tomcast: DEBUG: quit srv_fd: 4 | Channel: discovery
Aug 18 10:49:51 host unixsol-tomcast: STOP : Chan: discovery Src: http://192.168.10.25:10001 Dst: udp://192.168.10.6:5000 SrcIP: 192.168.10.25 SrcFD: 4 DstFD: 3
Aug 18 10:49:51 host unixsol-tomcast: KILL : Signal 2 | tomcast 1.15 (unixsol/tomcast)

i don't know whats the exact problem, is there anything that i should provide you?

gfto commented 11 years ago

The address you used as source in vlc is not the same as you used in tomcast. http://192.168.10.25:10001 is not like http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF you need a lot of things set up before you can decrypt a stream and restreaming it to multicast pretty much the last one.

First, use curl to record 10-20 seconds from the http stream (since tsdecrypt do not support http input). Then use tsdecrypt to decrypt it (you have to have working oscam that will give you the keys in response to ECM requests coming from tsdecrypt). If you successfully decrypt the file, then you can setup tomcast to read the stream and output it to multicast group and then use tsdecrypt to do live decryption. Do you have working oscam at all, because there is most of the setup.

celevra commented 11 years ago

thank you for your fast anwser, i have tried two configs with tomcast, one with http://192.168.10.25/stream/tunerequest00040000C0FFFFFF00B79800000400FF0085000E010102FF and one with http://192.168.10.25:10001

above are two logs, the first is with the long adress, the second with the short one. oscam is working perfectly, so i will do what you suggested with curl

celevra commented 11 years ago

as expected, downloading with curl: curl 'http://192.168.10.25:10001' > test.ts

and decrypting with tsdecrypt: tsdecrypt --camd-server 192.168.10.6:12345 --camd-user xxx --camd-pass xxx -A NEWCAMD --input test.ts --output decrypted.ts --ca-system NAGRA

is working without any problems

but tomcast with a config with this content: discovery 192.168.10.6:5000 http://192.168.10.25:10001

only gives this errors: Aug 18 17:04:12 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001 Aug 18 17:04:12 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5000

gfto commented 11 years ago

I think I've already pointed out that the url you are using is NOT a valid http url. Where is the PATH component? Please read my first reply.

celevra commented 11 years ago

i'm very pleased for your code and for your help but i think you heavn't read my postings the long url is only to tune and redirects to the short one with the port, but tomcast doesn't support redirection... the url with the port is the streaming url and there is no path... its a perfectly valid url, the first "document" the webserver is putting out, is the stream itself...

i have posted the logs, with the url with the path and without, please see them in my first post

curl with curl http://192.168.10.25:10001 > test.ts and decrypting the file with cat test.ts | tsdecrypt ... is working perfektly

curl http://192.168.10.25:10001 | tsdecrypt ist not working, i don't know why cut pipe works and curl not

gfto commented 11 years ago

No, it is not a valid url. http://192.168.10.25:10001/ is a valid url http://192.168.10.25:10001 is not.

celevra commented 11 years ago

obelix tomcast # cat test.conf discovery 192.168.10.6:5050 http://192.168.10.25:10001/

obelix tomcast # ./tomcast -c test.conf tomcast 1.15 Copyright (C) 2010-2013 Unix Solutions Ltd.

Configuration: Server ident : unixsol/tomcast Channels file : test.conf Output iface addr : 0.0.0.0 Multicast ttl : 1 Syslog disabled. Do not daemonize. Aug 21 19:30:00 host unixsol-tomcast: INIT : tomcast 1.15 (unixsol/tomcast) Aug 21 19:30:00 host unixsol-tomcast: CONF : 1 channels loaded Aug 21 19:30:00 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5050 Aug 21 19:30:00 host unixsol-tomcast: INFO : 1 proxy threads spawned Aug 21 19:30:00 host unixsol-tomcast: NEW : Chan: discovery Src: http://192.168.10.25:10001/ Dst: udp://192.168.10.6:5050 SrcIP: 192.168.10.25 SrcFD: 4 DstFD: 3 Aug 21 19:30:00 host unixsol-tomcast: SYNC : TS synced after 0 bytes | Channel: discovery Aug 21 19:30:00 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001/ Aug 21 19:30:00 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5050 Aug 21 19:30:00 host unixsol-tomcast: PROXY: Error writing to dst_fd: 3 on srv_fd: 4 | Channel: discovery Source: http://192.168.10.25:10001/ Aug 21 19:30:00 host unixsol-tomcast: CONN : Connected dst_fd: 3 | Chan: discovery Dest: udp://192.168.10.6:5050 ^CAug 21 19:30:00 host unixsol-tomcast: DEBUG: quit srv_fd: 4 | Channel: discovery Aug 21 19:30:00 host unixsol-tomcast: INFO : 1 proxy threads killed Aug 21 19:30:00 host unixsol-tomcast: STOP : Chan: discovery Src: http://192.168.10.25:10001/ Dst: udp://192.168.10.6:5050 SrcIP: 192.168.10.25 SrcFD: 4 DstFD: 3 Aug 21 19:30:00 host unixsol-tomcast: KILL : Signal 2 | tomcast 1.15 (unixsol/tomcast)

obelix tomcast #

gfto commented 11 years ago

nothing is listening on udp://192.168.10.6:5050/

use mutlicast address (239.78.78.78:5000) or let some program listen on this address (192.168.10.6:5050). Besides that everything seems to be working.