Форум XBMC и Kodi. Помощь, поддержка, обсуждение, плагины.
   

Вернуться   Форум XBMC и Kodi. Помощь, поддержка, обсуждение, плагины. > Помощь и поддержка > Поддержка платформы Linux \ Live

Ответ
 
Опции темы Опции просмотра
Старый 06.09.2012, 17:18   #11
mcpc_alex
Senior Member
 
Регистрация: 04.01.2012
Адрес: Киев Украина
Сообщений: 200
По умолчанию

Цитата:
Сообщение от Meg@DED Посмотреть сообщение
В общем удалось заставить показывать только через скрипт vlc2iptv, я оттуда вырезал опции перекодирования и сделал просто перенаправление потока, показывает плохо.
Покажите Ваш "vlc2iptv".
__________________
MSI E350IA-E45, 2 Gb DDR-3, TBS-6920, USB-flash 8 Gb, OpenELEC
mcpc_alex вне форума   Ответить с цитированием
   
Старый 06.09.2012, 17:41   #12
Meg@DED
Member
 
Регистрация: 14.10.2011
Адрес: п. Ново-Иркутcкий
Сообщений: 51
По умолчанию

Код:
#!/bin/sh
#
# vlc2iptv is used by the VDR iptv plugin to transcode external sources
#
# (C) 2007 Rolf Ahrenberg, Antti Seppälä
# (C) 2007 Tobias Grimm
#
# vlc2iptv is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This package is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this package; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
# MA 02110-1301, USA.
#

#
# <Global Settings>
#

CHANNELS_CONF=/var/lib/vdr/channels.conf
CHANNEL_SETTINGS_DIR=/etc/vdr/plugins/iptv/vlcinput/
VIDEO_BITRATE=2400
AUDIO_BITRATE=320

#
# </Global Settings>
#

exit_with_error()
{
    logger "vlc2iptv: error: $*"
    exit 1
}

read_arguments()
{
    [ $# -ne 2 ] && exit_with_error "Invalid parameter count '$#' $*"
    PARAMETER=$1
    PORT=$2
}

lookup_channel_and_pids()
{
    [ ! -e "$CHANNELS_CONF" ] && \
      exit_with_error "channels.conf not found ($CHANNELS_CONF)"

    local CHANNEL_RECORD=`grep "[:]S=[10][|]P=[10][|]F=EXT[|]U=vlc2iptv[|]A=$PARAMETER[:]I" $CHANNELS_CONF`
    [ -z "$CHANNEL_RECORD" ] && \
      exit_with_error "no iptv channel with parameter $PARAMETER found"

    CHANNEL_NAME=`echo $CHANNEL_RECORD | awk "-F[;,:]" '{print $1}'`
    VPID=`echo $CHANNEL_RECORD | awk -F: '{print $6}'`
    APID=`echo $CHANNEL_RECORD | awk -F: '{print $7}'`
    SPID=0
}

load_channel_configuration()
{
    local CHANNEL_SETTINGS_FILE="$CHANNEL_SETTINGS_DIR/$CHANNEL_NAME.conf"

    [ ! -e $CHANNEL_SETTINGS_FILE ] && \
      exit_with_error "No vlc input configuration for channel '$CHANNEL_NAME'"
    . $CHANNEL_SETTINGS_FILE
    
    [ -z "$URL" ] && \
      exit_with_error "No URL specified for channel '$CHANNEL_NAME'"
}

read_arguments $*
lookup_channel_and_pids
load_channel_configuration

#
# Start VLC 
#

if [ -n "$WIDTH" -a -n "$HEIGHT" ] ; then
    RESIZE_OPTIONS=",width=${WIDTH},height=${HEIGHT}"
else
    RESIZE_OPTIONS=""
fi

vlc "${URL}" \
  --sout "#standard{access=udp,mux=ts{pid-video=${VPID},pid-audio=${APID},pid-spu=${SPID}},dst=127.0.0.1:${PORT}}" \
  --intf dummy &

PID=${!}

trap 'kill -INT ${PID} 2> /dev/null' INT EXIT QUIT TERM

# Waiting for the given PID to terminate
wait ${PID}
Я поменял только
Код:
--sout "#transcode{vcodec=mp2v$RESIZE_OPTIONS,acodec=mpga,vb=${VIDEO_BITRATE},ab=${AUDIO_BITRATE}}:standard{access=udp,mux=ts{pid-video=${VPID},pid-audio=${APID},pid-spu=${SPID}},dst=127.0.0.1:${PORT}}"
на
Код:
--sout "#standard{access=udp,mux=ts{pid-video=${VPID},pid-audio=${APID},pid-spu=${SPID}},dst=127.0.0.1:${PORT}}"
__________________
Я нашел поле "На чем работает XBMC" в профиле
Meg@DED вне форума   Ответить с цитированием
Старый 06.09.2012, 18:20   #13
mcpc_alex
Senior Member
 
Регистрация: 04.01.2012
Адрес: Киев Украина
Сообщений: 200
По умолчанию

В общем - все правильно, должно нормально показывать. Хотя, я бы добавил в начало скрипта:
Код:
if [ $(pidof vlc) ]; then        
    killall -9 vlc  > /dev/null 2>&1
    while [ $(pidof vlc) ]; do
        usleep 50000
    done
fi
"trap" не всегда срабатывает.
__________________
MSI E350IA-E45, 2 Gb DDR-3, TBS-6920, USB-flash 8 Gb, OpenELEC
mcpc_alex вне форума   Ответить с цитированием
Старый 06.09.2012, 18:25   #14
Meg@DED
Member
 
Регистрация: 14.10.2011
Адрес: п. Ново-Иркутcкий
Сообщений: 51
По умолчанию

В общем всегда считал, что vdr это набор костылей и подпорок и только утвердился в этом мнении...

Собственно настроил один канал, минут 15 показывает нормально, к картинке претензий нет, дальше начинает все чаще рассыпаться, еще дальше - затыкаться. Стоп-старт и снова все в порядке. Без прослоек в расширении IPTV проблем нет, в VLC на ноуте - тоже. Походу надо с буферами и таймаутами какими-нибудь поиграть...

Не знаю насколько лучше будет по прямому показывать через U=http, но хотелось бы все-таки заставить. Может кто подскажет проксик, который бы никаких заголовков не добавлял? А то изначально провайдер отдает
Код:
Запрос HTTP послан, ожидание ответа... 
  HTTP/1.1 200 OK
  Content-Type:application/octet-stream
Длина: нет данных [application/octet-stream]
Сохранение в каталог: ««/dev/null»».
а после проксирования через nginx у меня получается
Код:
Запрос HTTP послан, ожидание ответа... 
  HTTP/1.1 200 OK
  Server: nginx
  Date: Thu, 06 Sep 2012 14:23:46 GMT
  Content-Type: application/octet-stream
  Transfer-Encoding: chunked
  Connection: keep-alive
Длина: нет данных [application/octet-stream]
Сохранение в каталог: ««/dev/null»».
Вот эти точно удалить никак нельзя
Код:
Server: nginx
  Date: Thu, 06 Sep 2012 14:23:46 GMT
З.Ы. код для убиения внедрил , действительно если вдруг не завершится сам лучше по 9-ке прибить.
__________________
Я нашел поле "На чем работает XBMC" в профиле

Последний раз редактировалось Meg@DED; 06.09.2012 в 18:31.
Meg@DED вне форума   Ответить с цитированием
Старый 07.09.2012, 08:10   #15
Meg@DED
Member
 
Регистрация: 14.10.2011
Адрес: п. Ново-Иркутcкий
Сообщений: 51
По умолчанию

И еще одна кривулька нашлась, которая, похоже, ставит крест на всей затее с vdr.
При включении в XBMC pvr-клиента vdr-vnsi каналы импортируются только с него, tvheadend игнорируется, хотя включен и настроен. Да и вообще работа с больше чем одним pvr-сервером как-то поглюкивает...
Короче, наверное, попробую еще mediaportal'овский tvserver для полноты, так сказать, картины, и по итогам уже думать буду.

Кстати есть еще вариант переходить на прием спутника vdr'ом, но так хотелось все-таки, хотя бы дома от нетрадиционного секаса с компьютерами отдыхать...
__________________
Я нашел поле "На чем работает XBMC" в профиле
Meg@DED вне форума   Ответить с цитированием
Старый 07.09.2012, 10:43   #16
Meg@DED
Member
 
Регистрация: 14.10.2011
Адрес: п. Ново-Иркутcкий
Сообщений: 51
По умолчанию

Хм, я похоже нашел-таки, чем запроксировать провайдерский поток, чтобы получить tcp-юникаст, с нормальными адресами без лишних двоеточий, или даже вообще мультикаст, который прожуется tvheadend'ом. getstream_a84 умеет брать поток как со спутников так и из сети.
Короче потестирую - отпишусь, хорошо, все-таки что у меня профессия такая искать решения для возникающих проблем
__________________
Я нашел поле "На чем работает XBMC" в профиле
Meg@DED вне форума   Ответить с цитированием
Старый 07.09.2012, 11:53   #17
mcpc_alex
Senior Member
 
Регистрация: 04.01.2012
Адрес: Киев Украина
Сообщений: 200
По умолчанию

Цитата:
Сообщение от Meg@DED Посмотреть сообщение
Хм, я похоже нашел-таки, чем запроксировать провайдерский поток, чтобы получить tcp-юникаст, с нормальными адресами без лишних двоеточий, или даже вообще мультикаст, который прожуется tvheadend'ом. getstream_a84 умеет брать поток как со спутников так и из сети.
Не думаю что getstream подойдет в Вашем случае. Вы же не один канал собираетесь смотреть? Хотя, зависит от ширины Вашего интернет канала + мощность сервера. Я бы подумал .
__________________
MSI E350IA-E45, 2 Gb DDR-3, TBS-6920, USB-flash 8 Gb, OpenELEC
mcpc_alex вне форума   Ответить с цитированием
Старый 07.09.2012, 12:29   #18
Meg@DED
Member
 
Регистрация: 14.10.2011
Адрес: п. Ново-Иркутcкий
Сообщений: 51
По умолчанию

IPTV у нас ресурс внутренний, доступный без обрезания скорости, попробуем... вообще там маленькая надежда на наличие мультикаста в нашем сегменте появилась.
__________________
Я нашел поле "На чем работает XBMC" в профиле
Meg@DED вне форума   Ответить с цитированием
Старый 08.09.2012, 20:57   #19
denisov999
Senior Member
 
Регистрация: 29.03.2012
Сообщений: 118
По умолчанию

очень интересно с гетсрим - как то пробывал такое реализовать не получилось. для фри есть утилитка малюченькая умеет это делать на ура а вот линукс пока хм... перекомпилировать не получилось там сокет во фре немного другой - линукчс просто сильно начинает нагружаться и виснет.
__________________
Openelec, Homebrew com-IR, Zotac IONITX-A, 2GB RAM, RC-26-1 remote
denisov999 вне форума   Ответить с цитированием
Старый 09.09.2012, 20:41   #20
delta
Junior Member
 
Регистрация: 09.09.2012
Сообщений: 5
По умолчанию

http://openelec.tv/forum/84-iptv-sup...-hts-tvheadend
delta вне форума   Ответить с цитированием
Ответ

Метки
iptv, tvheadend, unicast, vdr, xvdr
 


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Системный раздел монтируется в режиме read-only vallhund Поддержка платформы Linux \ Live 2 21.03.2012 00:13
IPTV www.piranya.com dreambox8 Помощь по плагинам 2 19.10.2011 02:06
iptv dobrwobr Помощь по плагинам 18 17.08.2011 18:12
Просмотр iptv sandros08 Общие темы для обсуждения 2 13.06.2011 23:30
Не заполняется раздел "сериалы" dimakolpakov Поддержка платформы Windows 17 31.05.2011 11:04


Текущее время: 01:31. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.