LINUX.ORG.RU
решено ФорумAdmin

[vlc][debian][dvb] VLC не стартует.

 , ,


0

1

Пытаюсь настроить стриминг dvb-s на debian при помощи vlc.

root@iptv2:~/build-src/vlc-1.1.3# vlc --version
VLC media player 1.1.3 The Luggage (revision exported)
VLC version 1.1.3 The Luggage (exported)
Compiled by buildd on biber.debian.org (Feb  9 2011 22:35:06)
Compiler: gcc version 4.4.5 (Debian 4.4.5-8) 
При старте таким скриптом:
#!/bin/bash

# Sirius

/usr/bin/vlc -vvv --color -ttl 12 --ts-es-id-pid \
        --programs=6120,6130 \
        dvb: --dvb-adapter=0 --dvb-frequency=11766000 -dvb-srate=27500000 --dvb-voltage=18 \
        --sout '#duplicate{ \
                dst="standard{access=http,mux=ts,url=0.0.0.0:8001}",select="program=6120" \
                dst="standard{access=http,mux=ts,url=0.0.0.0:8002}",select="program=6130" \
        }'

Получаю такой выхлоп:
root@iptv2:~/build-src/vlc-1.1.3# /etc/iptv/cards/0
VLC media player 1.1.3 The Luggage (revision exported)
[0x8a2c8fc] main libvlc debug: VLC media player - 1.1.3 The Luggage
[0x8a2c8fc] main libvlc debug: Copyright © 1996-2010 the VideoLAN team
[0x8a2c8fc] main libvlc debug: revision exported
[0x8a2c8fc] main libvlc debug: configured with ./configure  '--build=i486-linux-gnu' '--config-cache' '--disable-maintainer-mode' '--disable-silent-rules' '--disable-update-check' '--enable-fast-install' '--prefix=/usr' '--sysconfdir=/etc' '--with-binary-version=1squeeze3' '--enable-a52' '--enable-aa' '--enable-bonjour' '--enable-caca' '--enable-dca' '--enable-dirac' '--enable-dvb' '--enable-dvbpsi' '--enable-dvdnav' '--enable-faad' '--enable-flac' '--enable-fluidsynth' '--enable-freetype' '--enable-fribidi' '--enable-ggi' '--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-mozilla' '--enable-mpc' '--enable-mtp' '--enable-mux_ogg' '--enable-ncurses' '--enable-notify' '--enable-ogg' '--enable-pulse' '--enable-qt4' '--enable-realrtsp' '--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-zvbi' '--with-kde-solid=/usr/share/kde4/apps/' '--with-mozilla-pkg=libxul' '--disable-dxva2' '--disable-gnomevfs' '--disable-goom' '--disable-libva' '--disable-osso_screensaver' '--disable-portaudio' '--disable-projectm' '--disable-sqlite' '--disable-telx' '--disable-x264' '--enable-alsa' '--enable-atmo' '--enable-dc1394' '--enable-dv' '--enable-pvr' '--enable-udev' '--enable-v4l' '--enable-v4l2' '--enable-svgalib' 'build_alias=i486-linux-gnu' 'CFLAGS=-g -O2' 'LDFLAGS=-Wl,--as-needed' 'CPPFLAGS=' 'CXXFLAGS=-g -O2'
[0x8a2c8fc] main libvlc debug: translation test: code is "C"
root@iptv2:~/build-src/vlc-1.1.3# echo $?
0

Вот последние строки вывода strace:
write(2, "[\33[32;1m0x8c068fc\33[0m] main libv"..., 80[0x8c068fc] main libvlc debug: translation test: code is "C"
) = 80
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7599728) = 13576
exit_group(0)                           = ?

Когда пускаю без параметров - работает. Пробовал дебажить, нашел, что отваливается(точно не уверен) после вызова daemon() в libvlc_InternalInit().

Заранее благодарен.

★★

Последнее исправление: grouzen (всего исправлений: 1)

Ответ на: комментарий от lazyklimm

Не пробовал. Как можно проверить?

grouzen ★★
() автор топика
Ответ на: комментарий от lazyklimm

Проверил - стримиться. Например так:

cvlc -vvv test.mpg --sout '#duplicate{dst="standard{access=http,mux=ts,url=0.0.0.0:8002}"' --ttl 12

grouzen ★★
() автор топика

Нашел опечатку в "-dvb-srate"(нужно "--dvb-srate"). Теперь vlc печатает мне список модулей, среди которых есть http и udp, но все равно не запускается:

root@iptv2:/etc/iptv/cards# ./1 | grep http
...
[0x94f58fc] main libvlc debug: translation test: code is "C"
[0x94f58fc] main libvlc debug: checking plugin modules
[0x94f58fc] main libvlc debug: loading plugins cache file /usr/lib/vlc/plugins/plugins-04041e-28.dat
[0x94f58fc] main libvlc debug: recursively browsing `/usr/lib/vlc/plugins'
[0x94f58fc] main libvlc debug: saving plugins cache /usr/lib/vlc/plugins/plugins-04041e-28.dat
[0x94f58fc] main libvlc debug: module bank initialized (390 modules)
  oldhttp                HTTP remote control interface
  access_output_http     HTTP stream output
  access_http            HTTP input
root@iptv2:/etc/iptv/cards# ./1 | grep udp
...
[0x85ff8fc] main libvlc debug: translation test: code is "C"
[0x85ff8fc] main libvlc debug: checking plugin modules
[0x85ff8fc] main libvlc debug: loading plugins cache file /usr/lib/vlc/plugins/plugins-04041e-28.dat
[0x85ff8fc] main libvlc debug: recursively browsing `/usr/lib/vlc/plugins'
[0x85ff8fc] main libvlc debug: saving plugins cache /usr/lib/vlc/plugins/plugins-04041e-28.dat
[0x85ff8fc] main libvlc debug: module bank initialized (390 modules)
  access_output_udp      UDP stream output
  access_udp             UDP input

grouzen ★★
() автор топика

Вообщем поигрался со скриптом, сейчас он у меня такой:

#!/bin/bash

# Sirius

        /usr/bin/vlc -vvv --color --ttl 12 \
                --programs=6120 \
                dvb:// --dvb-adapter=0  --dvb-frequency=11766000 --dvb-srate=27500000 --dvb-voltage=18 --sout-standard-access=http --sout-standard-mux=ts \
                --sout '#duplicate{dst="standard{dst=0.0.0.0:8001}",select="program=6120"}'
Но vlc все равно не запускается по непонятной мне причине:
root@iptv2:~# /etc/iptv/cards/1
...
[0x889de74] main stream output debug: using sout chain=`duplicate{dst="standard{dst=0.0.0.0:8001}",select="program=6120"}'
[0x889de74] main stream output debug: stream=`duplicate'
[0x889e034] main stream out debug: looking for sout stream module: 1 candidate
[0x889e034] stream_out_duplicate stream out debug: creating 'duplicate'
[0x889e034] stream_out_duplicate stream out debug:  * adding `standard{dst=0.0.0.0:8001}'
[0x889de74] main stream output debug: stream=`standard'
[0x889e634] main stream out debug: looking for sout stream module: 1 candidate
[0x889e634] main stream out debug: set config option: sout-standard-dst to 0.0.0.0:8001
[0x889e634] stream_out_standard stream out debug: creating `http/ts://0.0.0.0:8001'
[0x889e634] stream_out_standard stream out debug: extension is 0:8001
[0x889e634] stream_out_standard stream out debug: extension -> mux=(null)
[0x889e634] stream_out_standard stream out debug: using `http/ts://0.0.0.0:8001'
[0x88a08b4] main access out debug: looking for sout access module: 1 candidate
[0x88a08b4] main access out: creating httpd
[0x88a08b4] main access out debug: net: listening to 0.0.0.0 port 8001
[0x88a08b4] main access out debug: using sout access module "access_output_http"
...
[0x889b1ec] main input debug: `dvb://' gives access `dvb' demux `' path `'
[0x889b1ec] main input debug: creating demux: access='dvb' demux='' path=''
[0x88a306c] main demux debug: looking for access_demux module: 0 candidates
[0x88a306c] main demux debug: no access_demux module matched "dvb"
...
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/frontend0
[0x88a2dc4] dvb access debug: Frontend Info:
...
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/dvr0
[0x88a2dc4] dvb access debug: setting filter on PAT
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/demux0
[0x88a2dc4] dvb access debug: DMXSetFilter: DMX_PES_OTHER for PID 0
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/ca0
[0x88a2dc4] dvb access warning: CAMInit: opening CAM device failed (No such file or directory)
[0x88a2dc4] main access debug: using access module "dvb"
...
[0x889b1ec] main input debug: creating demux: access='dvb' demux='ts' path=''
[0x889ff1c] main demux debug: looking for demux module: 1 candidate
[0x88a2dc4] dvb access debug: frontend has acquired carrier
[0x88a2dc4] dvb access debug: frontend has acquired stable FEC
[0x88a2dc4] dvb access debug: frontend has acquired sync
[0x88a2dc4] dvb access debug: frontend has acquired lock
[0x88a2dc4] dvb access debug: - Bit error rate: 0
[0x88a2dc4] dvb access debug: - Signal strength: 57088
[0x88a2dc4] dvb access debug: - SNR: 65479
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/demux0
[0x88a2dc4] dvb access debug: DMXSetFilter: DMX_PES_OTHER for PID 17
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/demux0
[0x88a2dc4] dvb access debug: DMXSetFilter: DMX_PES_OTHER for PID 20
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/demux0
[0x88a2dc4] dvb access debug: DMXSetFilter: DMX_PES_OTHER for PID 18
libdvbpsi error (PSI decoder): TS discontinuity (received 7, expected 0) for PID 0
[0x889ff1c] ts demux debug: PATCallBack called
[0x889ff1c] ts demux debug: new PAT ts_id=12 version=4 current_next=1
[0x889ff1c] ts demux debug:   * number=6100 pid=6100
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/demux0
[0x88a2dc4] dvb access debug: DMXSetFilter: DMX_PES_OTHER for PID 6100
[0x889ff1c] ts demux debug:   * number=6102 pid=6102
[0x889ff1c] ts demux debug:   * number=6104 pid=6104
[0x889ff1c] ts demux debug:   * number=6106 pid=6106
[0x889ff1c] ts demux debug:   * number=6110 pid=6110
[0x889ff1c] ts demux debug:   * number=6120 pid=6120
[0x889ff1c] ts demux debug:   * number=6130 pid=6130
[0x889ff1c] ts demux debug:   * number=6140 pid=6140
[0x889ff1c] ts demux debug:   * number=6150 pid=6150
[0x889ff1c] ts demux debug:   * number=6160 pid=6160
[0x889ff1c] ts demux debug:   * number=6170 pid=6170
[0x889ff1c] ts demux debug:   * number=6186 pid=6186
[0x889ff1c] ts demux debug:   * number=6190 pid=6190
[0x889ff1c] ts demux debug:   * number=6196 pid=6196
libdvbpsi error (PSI decoder): TS discontinuity (received 11, expected 0) for PID 6100
[0x889ff1c] ts demux debug: PMTCallBack called
[0x889ff1c] ts demux debug: new PMT program number=6100 version=1 pid_pcr=6101
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/demux0
[0x88a2dc4] dvb access debug: DMXSetFilter: DMX_PES_OTHER for PID 6101
[0x889ff1c] ts demux debug:  * descriptor : unknown (0xa)
[0x889ff1c] ts demux debug:   * es pid=6101 type=3 dr->i_tag=0xa
[0x889ff1c] ts demux debug: found language: ukr
[0x889ff1c] ts demux debug:   * es pid=6101 type=3 fcc=mpga
[0x889b1ec] main input debug: selecting program id=6100
[0x889ff1c] main demux debug: using demux module "ts"
[0x889ff1c] main demux debug: TIMER module_need() : 376.784 ms - Total 376.784 ms / 1 intvls (Avg 376.784 ms)
[0x889ff1c] ts demux debug: DEMUX_SET_GROUP -1 0xb57952b4
[0x88a2dc4] dvb access debug: DMXUnsetFilter: closing demux 11
[0x88a2dc4] dvb access debug: DMXUnsetFilter: closing demux 12
[0x88a2dc4] dvb access debug: Opening device /dev/dvb/adapter0/demux0
[0x88a2dc4] dvb access debug: DMXSetFilter: DMX_PES_OTHER for PID 6120
[0x889b1ec] main input debug: starting in async mode
[0x88a2dc4] dvb access warning: unimplemented query in control
[0x88a720c] main demux meta debug: looking for meta reader module: 2 candidates
[0x88a720c] lua demux meta debug: Trying Lua scripts in /root/.local/share/vlc/lua/meta/reader
[0x88a720c] lua demux meta debug: Trying Lua scripts in /usr/lib/vlc/lua/meta/reader
[0x88a720c] lua demux meta debug: Trying Lua playlist script /usr/lib/vlc/lua/meta/reader/filename.luac
[0x88a720c] lua demux meta debug: Trying Lua scripts in /usr/share/vlc/lua/meta/reader
[0x88a720c] main demux meta debug: no meta reader module matching "any" could be loaded
[0x88a720c] main demux meta debug: TIMER module_need() : 1.543 ms - Total 1.543 ms / 1 intvls (Avg 1.543 ms)
[0x889b1ec] main input debug: `dvb://' successfully opened
[0x8879764] main playlist debug: dying input
[0x8879764] main playlist debug: dying input
[0x889ff1c] ts demux debug: pid list:
[0x889ff1c] ts demux debug:   - pid[0] seen
[0x88a2dc4] dvb access debug: DMXUnsetFilter: closing demux 8
[0x88a2dc4] dvb access debug: DMXUnsetFilter: closing demux 10
[0x88a2dc4] dvb access debug: DMXUnsetFilter: closing demux 9
[0x889ff1c] ts demux debug:   - pid[6100] seen
[0x889b1ec] main input debug: Program doesn't contain anymore ES
[0x88a2dc4] dvb access debug: DMXUnsetFilter: closing demux 11
[0x889ff1c] ts demux debug:   - pid[8191] seen
[0x889ff1c] main demux debug: removing module "ts"
[0x889fd1c] main stream debug: removing module "stream_filter_record"
[0x88a2dc4] dvb access debug: DMXUnsetFilter: closing demux 7
[0x88a2dc4] main access debug: removing module "dvb"
[0x8879764] main playlist debug: dead input
[0x889de74] main stream output debug: destroying useless sout
...

grouzen ★★
() автор топика

Плюнул на vlc и за час запустил все на getstream.

grouzen ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.