Прежде всего, убедитесь что штатный софт вашей DVB карты работает. Если TV работает, значит все нормально. Настройтесь на транспондер провайдера спутникового интернета и убедитесь, что уровень сигнала достаточен для приема без потерь. Лучше всего в этом вопросе ориентироваться по BER, он должен изредка показывать очень малые значения, а лучше полностью стоять на нуле. Если же софт вашей карты не показывает BER, смотрите на уровень сигнала. Как минимум индикатор уровня сигнала должен быть зеленый. А лучше - далеко в зеленом секторе (то есть очень зеленый)
Скайнет может работать под windows и linux. Если есть возможность выбирать, рекомендую linux
Если же у вас другая карта, попробуйте поискать для нее нужную библиотеку. Возможно ее не существует, тогда проверьте, не поддерживается ли ваша карта драйверами linuxtv, скайнет под linux по умолчанию работает лучше В конце концов, поинтересуйтесь у производителя карты, почему для их устройства до сих пор не написан streamreader.dll?
Библиотеку надо распаковать и положить в директорию с программой. Без нее скайнет не запустится.
Для работы под linux: вам понадобится X-Window и оконный менеджер (KDE, Gnome...) Кроме того, необходимы установленные и работающие драйвера linuxtv. Их установка может вызвать много вопросов, поэтому лучше поищите информацию в интернете на эту тему.
Теперь о настройке программы. Вам нужно прописать в .ini файле параметры транспондера провайдера. Замечательная табличка со спутниками и частотами есть здесь: http://lyngsat.com/, каналы с данными там обозначены фиолетовым цветом (подойдут конечно не все, но многие - именно спутниковый интернет)
В файле есть несколько примеров настройки на транспондер, думаю все будет понятно.
Кроме настройки тюнера нужно узнать пиды по которым идет интернет трафик. Часто их можно найти на сайте провайдера где-нибудь в разделе технической информации. Если там их нет, можно поискать пиды самому с помощью плагина PidScanner для моей любимой программы просмотра спутникового телевидения ProgDVB.
Когда найдете пиды, запишите их в ini. Ваша запись должна выглядеть примерно так (для провайдера SatGate на спутнике 42E TurkSat-2A aka Eurasiasat):
Напротив остальных строк начинающихся с tuner или pids поставьте # чтобы программа не обращала на них внимания.
Если вы используете карту SkyStar1 под windows раскомментируйте строку "ss1=1"
Если вы используете ресивер DreamBox - ваши настройки dream_ip, dream_port и pids, библиотека streamreader.dll не нужна.
Теперь можно запустить. Признаком успешной настройки будет изменение статистики в верхней части окна программы. Если счетчик in начал отсчитывать мегабайты и tcp threads начало увеличиваться, значит все в порядке - программа видит поток и в потоке tcp/ip протокол. Если нет - значит что-то неправильно.
Нажмите букву G и внимательно рассмотрите появившуюся справа табличку. Тут работают стрелки, плюс/минус на цифровой клавиатуре, delete, и цифры. Вобщем это фильтр для файлов по типам и размерам.
При приеме поглядывайте на счетчик discontinuity, если он меняется - значат у вас проблемы. Вам нужен практически идеальный поток без сбоев, ведь достаточно чтобы в файле отсутствовал всего один пакет чтобы архивы и exe ушли в мусор.
Что делать? Прежде всего, обратите внимание КАК они увеличиваются. Это можно сделать посмотрев файл лога, там записан пид и точное время когда произошла бяка. Когда вы грабите одновременно по нескольким пидам, будет хорошо видно что происходит. 232909.88 ts: discontinuity (pid = 1327, cc = 8, must be 5) 232909.88 ts: discontinuity (pid = 1328, cc = 13, must be 9) 232909.99 ts: discontinuity (pid = 1498, cc = 13, must be 8) 232910.49 ts: discontinuity (pid = 1499, cc = 3, must be 10)
Странные цифры вначале - это время, так сделано для экономии места: 232909.88 -> 23:29:09 + 88 сотых.
Здесь хорошо видно, что несчастье произошло одновременно со всеми элементарными потоками. Попросту говоря, произошел обрыв всего принимаемого потока, что и отразилось на всех (или почти всех) элементарных. Почему это могло произойти? Лично у меня такое всегда происходит при инициализации софтмодема. Его драйвер настолько ужасно написан, что приостанавливает на короткое время работу всей системы. Для потока с dvb карты это смертельно. Устройство не обладает достаточным запасом памяти чтобы на время задержать идущий с огромной скоростью поток данных.
Почему такое происходит у вас, если вы не инициализируете софтмодем? Не знаю. Наиболее вероятная причина - маленький буфер для потока в драйвере карты. Современные карты рассчитаны на прием телевидения и радио, и размер буфера задан исходя из этих потребностей. Ситуация усугубляется если у вас в системе есть еще устройства или программы которые требуют к себе пристального внимания со стороны ЦПУ (грубо говоря тормозят систему) К тому же Windows не является ОС реального времени, любая программа может быть остановлена на неопределенный период, и неизвестно когда продолжится ее выполнение.
Что делать? Во первых, попробуйте увеличить размер буфера в драйвере. Позже я объясню как это сделать с драйвером SkyStar2. Во вторых, уберите все ненужное железо, поотключайте лишние устройства в Bios Setup, в том числе и порты, чтобы освободить прерывания. Посадите каждое устройство на отдельное прерывание. Для этого вам скорее всего придется отключить APIC, и расставить прерывания вручную. И даже переставлять устройства по слотам. Как это сделать - ищите в интернете (никто не говорил что будет легко) Причиной ваших бед может являться любое устройство, в том числе и интегрированное в системную плату. Нет, я не предлагаю ничего выпиливать Просто попробуйте на другой машине с другим железом. В третьих, возможно самый легкий выход - патч драйвера или переход на другую более правильную ОС
Да, еще отключите резидентные антивирусы и другие ненужные для процесса программы, причина может быть и в них.
Если же discontinuity проскакивают по одному, через довольно большие промежутки времени, скорее всего дело в уровне сигнала. Впрочем, это могут быть и ошибки которые уже идут в потоке, в этом случае вы ничего не можете сделать, но и файлы скорее всего не побьются.
Верхняя часть экрана отображает общую статистику. in - объем принятых и обработанных данных. discontinuity - количество разрывов потока. Каждый из них может быть смертельным для одного или более файлов. tcp threads - количество открытых tcp потоков. Программа следит за всеми потоками. files - количество файлов загружающихся сейчас. zoom - размер экрана по горизонтали. cache - количество операций записи в кэше программы. written - объем данных сохраненных на диск. memory - объем памяти занимаемой кэшем.
Большую часть экрана занимают полоски, показывающие какие файлы в данный момент загружаются и прогресс загрузки. Цвет полоски зависит от типа файла. Аудио файлы зеленые, архивы - темно зеленые, видео файлы - салатовые, изображения - красные и т.д. Белым показывает уже загруженные сегменты. В конце каждого сегмента рисуется тоненькая красная вертикальная полосочка, это позволяет видеть мелкие разрывы при любом увеличении.
Тонкие горизонтальные красные полосы перечеркивающие файлы - таймауты. Они показывают сколько уже времени не приходило данных относящихся к этому файлу.
В новых версиях файлы бледнеют после 15 секунд неактивности.
Слева от списка файлов находится маленький белый треугольник - курсор. Его можно перемещать по списку файлов стрелками.
Внизу отображается подробная информация по текущему файлу. Слева направо: Пид, мак адрес, ip адрес приемник, ip адрес источник (ip сервера), объем уже загруженных данных, полный размер файла, процент загруженных от полного объема, количество потоков которыми загружается файл. Вторая строка содержит самый лучший уникальный идентификатор файла. Чаще всего - это время модификации. Третья строка - присвоенное файлу имя.
По старой доброй традиции (кому доброй, а кому не очень) программа управляется исключительно с помощью клавиатуры.
Кнопки
G - включает и выключает таблицу для настройки принимаемых типов и размеров файлов.
Разберем таблицу на примере одной строки:
+ - признак того что файлы из данной группы будут загружаться программой.
ARCHIVE - Название группы / расширения. Группы могут включать в себя несколько расширений. Например, ARCHIVE включает в себя zip, rar, ace, 7z. Название группы отображается немного другим цветом и для убедительности пишется большими буквами.
1.M - Минимальный размер файлов которые будут загружаться. В данном случае 1 мегабайт. 1.00G - Максимальный размер файлов.
Курсор перемещается стрелками, есть дополнительный модификатор перемещения по вертикали - клавиша Shift. Значок + устанавливается и сбрасывается плюсом и минусом на цифровой клавиатуре. Те же плюс и минус увеличивают и уменьшают минимальный и максимальный размер. Цифры используются для установки круглых размеров. Delete стирает размер (устанавливает в ноль). Комбинация клавиш Ctrl-S сохраняет настройки в файл на диске.
При отключенной таблице, действуют следующие клавиши: Плюс/минус на цифровой клавиатуре - изменяют масштаб по горизонтали. Стрелки влево-вправо - прокручивают полоски в соответствующем направлении. Стрелки вверх-вниз - перемещают курсор по списку файлов. Цифры - изменяют масштаб на предустановленный. E/Shift-E - изменяют ширину полосок в списке файлов. Delete - удаляет файл под курсором. M/N - изменяют размер области просомотра содержимого файла. Модфикатор - Shift Ctrl-I - принудительно отправляет недокачанный файл в incomplete S - режим "stop download" - новые файлы игнорируются, только догружаются старые. Ctrl-R - перезагрузка rules.txt и regex.txt K - метка keep для файла. Файл не удаляется по таймауту и также его нельзя случайно удалить Del.