Инструкции, Софт, рекомендации

Здесь обмениваемся советами относительно разного применяемого в нашем деле софта по записям трансляций, обработке видеофайлов.
Рекомендуем программы, делимся опытом использования, разъясняем инструкции, как по софту, так и по другим техническим вопросам по теме форума.













---


КОММЕНТАРИИ

Новичок
Рег: 25.10.2018
Ком-ев: 33
Рейтинг: 11
rolik_anabolik 9 февраля 2024 19:38 #94194
попробовал ctbrec, стрипчат пишет сразу в читаемом .ts виде, фиксить ненужно.
  • 0

Местный
Рег: 22.09.2021
Ком-ев: 194
Рейтинг: 241
sam 9 февраля 2024 01:02 #94180
@crazyborder,
хорошо написал! согласен про 8k и best
на чатуре некоторые модели стримят в 4k 60fps, мне например, вообще не нужны 60фпс, место занимают, как собственно и FHD
720 - для массовой записи и последующей умеренно-быстрой обработки, а с 1080 возьни много
правда, на чатуре бывают такие подставы

тогда уже пишу в максимальном
на стрипчате еще добавили параметр в плейлист: FRAME-RATE (FRAME-RATE=30.000, FRAME-RATE=60.000) - а раньше не было, только в NAME (NAME=720p60,NAME=1080p60) - да и то, не везде

с 60 fps вообще интересно получается, часто попадаются фейковые 60 кадров, как понимаю, 30 к/с где каждый кадр дублируется и получается 60 фпс, программы вроде fraps рапортуют о 60 кадрах, хотя видно что движения явно не как в 60 (если ускорить в плеере видео с 30 кадрами то картинка оживает, но при этом все ускоряется) - в общем, нафига оно такое нужно )
  • 1

Редактор
Рег: 15.03.2017
Ком-ев: 906
Рейтинг: 2669
crazyborder 8 февраля 2024 23:45 #94174
@Nabludatel
Насчет файла конфигурации config в папке %APPDATA%\streamlink
В шапке по этому пути:
Streamlink GUI ---> Установка Streamlink в Windows ---> Нюансы для портативных версий Streamlink для Windows
указано, что должны быть открыты (без "решетки" в начале строки) только эти строки (теперь 3 строки для современных версий стримлинка вместо 2, ну и номер версии свой конкретный):
player=C:\Program Files\VideoLAN\VLC\vlc.exe
player-args=--file-caching=5000
ffmpeg-ffmpeg=C:\streamlink-6.3.1\ffmpeg\ffmpeg.exe

Не вижу никакой необходимости добавлять в шапку инфу про default-stream=best и hls-timeout=15
Зачем писать о том, чего и так не было в шапке? Другое дело, если бы это рекомендовалось ранее, тогда да, есть резон опровергать рекомендацию.

Еще несколько слов о затронутых параметрах настройки стримлинк.

1. default-stream=best
Добавлять вручную в конфиг этот параметр было уместно лет так 8-10 назад, когда трансляции в основном были 640x480, 640x360 и т.п. Даже 800x450 (были и такие) воспринимались, как "вау".
Тогда и записывали по максимальному разрешению кадра - куда уж тут выбирать меньше.
Сейчас времена другие. Взять для примера Taanni - эта примадонна порой стримит на 4K с битрейтом более 20 Мбит/сек. Это примерно 8 ГБ за 1 час записи! Она может просидеть половину суток:
https://nightwillcam.com/BongaCams/Taanni

Под сотку гигов потянет одна такая трансляция! Кто будет ТАК записывать? А если еще и выкладывать на видеохостинги, то там еще зачастую сожмут. А у кого-то устройство не сможет воспроизводить такую картинку.
Это, конечно, нетипичный случай, но если взять 1080p, то это доступно подавляющему большинству моделей. Отсюда очевидна бессмысленность прописывать в конфиг этот default-stream=best, потому как и Full HD записывать многим накладно, особенно тем, кто занимается массовой записью.
Можно возразить, что, мол, если указывать конкретное качество в строке команды на запуск стримлинка, то это имеет приоритет над аналогичным параметром в конфиге. Да, имеет. Но тогда в чем смысл писать в конфиг свой параметр, который и так будет перебиваться тем, что указано в команде запуска?

2. stream-timeout=15 (бывший hls-timeout=15)
Ну такое...)
Что на этот счет имеется в Help:
--stream-timeout TIMEOUT
Таймаут для чтения данных из потоков.
Это относится к различным типам потоков, таким как DASH, HLS, HTTP и т. д.
По умолчанию 60.0

С версии Streamlink 6.0.0 появился новый параметр, который по сути съел --stream-timeout
--hls-segment-queue-threshold FACTOR
Коэффициент умножения целевой длительности плейлиста HLS, после которого поток будет остановлен досрочно, если после обновления плейлиста (многократного) в очереди не окажется новых сегментов.
Целевая длительность определяет максимальную продолжительность одного сегмента. Это означает, что в течение этого периода времени должны быть доступны новые сегменты, иначе могут возникнуть проблемы с воспроизведением.
Смысл этого порога очереди - иметь возможность останавливаться раньше, когда сервер еще не объявляет об окончании потока, поэтому стримлинку не нужно ждать, пока истечет время ожидания чтения (параметр --stream-timeout).
Установите значение 0, чтобы отключить.
По умолчанию: 3

Если я правильно понимаю, длительность сегмента около 2 сек - умножить на дефолтный коэффициент 3 - равняется 6 сек. На неважных по качеству трансляциях уже не раз доводилось видеть, как при зависании трансляции мой Streamlink 6.3.1, действительно, заканчивал процесс как раз через 6 сек, даже сообщение об этом выводилось.

Как итог, мое мнение, что не нужно в конфиг добавлять свои параметры. Если есть причина что-то применить (изменить с дефолтного на своё) дополнительно для улучшения процесса записи - нет никакой проблемы указать параметры в строке команды запуска стримлинка, в батнике или ином скрипте.
  • 4

Редактор
Рег: 15.03.2017
Ком-ев: 906
Рейтинг: 2669
crazyborder 8 февраля 2024 05:11 #94162
@Nabludatel
Ну так в конфиге то что теперь прописывать? Чтоб грамотно было.
...
hls-timeout=15 ?

Чтобы грамотно - НИЧЕГО!
Качество однозначно лучше задавать конкретно для поставленной цели. Если на Бонге появится 8K, то default-stream=best в конфиге быстро уроет любой хард))
А насчет hls-timeout=15 (точнее, stream-timeout=15) я же тебе ссылку дал - почитай. Это очень-очень капризная штука в зависимости от камеры модели, ее сети, твоей сети, урагана за окном и может от того, позавтракал ли вовремя сомалийский пират)
  • 2

Любитель
Рег: 19.04.2018
Ком-ев: 106
Рейтинг: 358
Nabludatel 8 февраля 2024 04:55 #94161
@crazyborder,
Ну так в конфиге то что теперь прописывать? Чтоб грамотно было.
Я так понимаю, строку default-stream=best надо удалить.
А hls-timeout=15 оставить?
Или stream-timeout=15 ?
  • 0

Редактор
Рег: 15.03.2017
Ком-ев: 906
Рейтинг: 2669
crazyborder 8 февраля 2024 04:39 #94160
@Nabludatel
default-stream=best

Вот где собака зарыта!!!
А я что-то зациклился на этом hls-timeout))
Там в батнике есть такой кусок:
if "%quality%"=="720p" (
for /f "tokens=*" %%a in ('streamlink https://edge-hls.doppiocdn.com/hls/%user_id%/master/%user_id%_auto.m3u8') do set out_line=%%a

Как видишь, после ссылки m3u8 не указано качество - это сделано с целью вывода сообщения о доступных потоках. Затем искалось 720p и принималось решение, если есть такое - идти далее на запись, если нет - показать фигу пользователю.
Так вот, дурацкая запись в конфиге, что "best" - это по умолчанию, и подставляла этот "best" в команду. Так как указания сохранять в файл в строке команды нет - победно запускался твой VLC!

Вообще, хранить в конфигах что-то своё, пользовательское иногда очень чревато. Тупо можно забыть и пожалуйста, проблемы..
********
Это дело такое. Народ будет пользоваться батником, а sleep будет лениться устанавливать. Тем более, без подробной инструкции.

Ну, тут уж каждый сам себе хозяин - барин..
CMD - отсталый по современным меркам инструмент. Зачастую требуются всякие мелочевки типа sleep.exe, touch.exe, jq.exe, paste.exe, grep.exe - какие-то несчастные килобайты, но разрабы винды не желают нагружать этими функциями CMD.
Рациональный выход - пользоваться PowerShell, но тут тоже не для всех..
Добавлено.
Внешнюю утилиту sleep.exe можно заменить встроенной командой timeout, которая, к сожалению, поддерживает только целые значения в секундах.
То есть, можно заменить:
sleep 0.5

на
timeout 1 >nul

>nul - означает, что вывода сообщения на экран не будет.
  • 3

Любитель
Рег: 19.04.2018
Ком-ев: 106
Рейтинг: 358
Nabludatel 8 февраля 2024 04:05 #94159
@crazyborder,
Это дело такое. Народ будет пользоваться батником, а sleep будет лениться устанавливать. Тем более, без подробной инструкции.

Цитата: crazyborder, 08.02.2024 03:36, №94158
Дык что было то? hls-timeout=15 не мог так повлиять...

А пёс его знает? bk
Вспомнил, что я где то прописывал этот hls-timeout. Вспомнил где. Вот и
Удалил из конфигурационного файла эти две строки. Запись в 720р пошла. VLC больше самопроизвольно не запускается.

Цитата: crazyborder, 08.02.2024 03:36, №94158
я бы объяснил тебе причину, почему этот вариант не прокатил именно с теми упомянутыми моделями))
Тссс. Болтун - находка для шпиона. ap

Цитата: crazyborder, 08.02.2024 03:36, №94158
Жаль, что ты не можешь принимать личку

А это не ко мне, это к Александру Васильевичу. @ Шутка КВН.

Цитата: crazyborder, 08.02.2024 03:36, №94158
руки не доходят((

Руки даны человеку не для того, чтобы ими ходить. А чтобы ими кушать.
Ну иногда ещё, по клаве стучать. ap
  • 0

Редактор
Рег: 15.03.2017
Ком-ев: 906
Рейтинг: 2669
crazyborder 8 февраля 2024 03:36 #94158
@Nabludatel
Да любая модель запустится без sleep)) Суть в том, что без паузы хотя бы в несколько миллисекунд идет выстрел дуплетом по одному и тому же URL (нужен парсинг двух необходимых параметров, которые лежат в одном каталоге). Раньше, в версии v20240207 запрос к этому URL производился один раз, ответ сохранялся в переменную page и уже из нее извлекались нужные два значения (да хоть миллион).
Жаль, что ты не можешь принимать личку - я бы объяснил тебе причину, почему этот вариант не прокатил именно с теми упомянутыми моделями))

Без использования пауз между запросами к одному и тому же URL имитируется ситуация, напоминающая DDoS-атаку со всеми вытекающими последствиями.
DDoS-атака – это способ заблокировать работу сайта путем подачи большого количества запросов, превышающих пропускную способность сети.

Впрочем, надеюсь, это чрезмерная предосторожность, но, как говорится, раз в год и палка стреляет.....

Добавлено.
Проблема с VLC решена.

Дык что было то? hls-timeout=15 не мог так повлиять...
Насчет шапки - там много чего обновлять требуется - руки не доходят((
******
А я эти строки по старой привычке так и продолжал прописывать в новых версиях.

Насчет hls-timeout я когда-то давно писал:
https://forumsmotri.com/index.php?do=search&subaction=search&search_start=0&full_search=1&result_from=1&story=hls-timeout%3D15&titleonly=1&searchuser=crazyborder&exactname=yes&replyless=0&replylimit=0&searchdate=0&beforeafter=after&sortby=date&resorder=desc&showposts=0&catlist%5B%5D=0#comment-id-82129
Короче, лучше этот Default is 60.0 не трогать)

Удалил из конфигурационного файла эти две строки. Запись в 720р пошла. VLC больше самопроизвольно не запускается.

Жееесть..
  • 2

Любитель
Рег: 19.04.2018
Ком-ев: 106
Рейтинг: 358
Nabludatel 8 февраля 2024 03:02 #94157
@crazyborder,
Фрея запустилась без всякого слипа. bw
По Анне пока не знаю. )
Слип это обязательно?
=======================
Проблема с VLC решена.

Крэзи, напиши в шапке, где Установка Streamlink в Windows:
не прописывать в файле config, расположенном по адресу
C:\Users\Имя\AppData\Roaming\streamlink

default-stream=best
hls-timeout=15

А я эти строки по старой привычке так и продолжал прописывать в новых версиях.
  • 0

Редактор
Рег: 15.03.2017
Ком-ев: 906
Рейтинг: 2669
crazyborder 8 февраля 2024 02:50 #94156
@Nabludatel
Проблему с parse error: Invalid numeric literal at line 1, column 7 решил. Версию батника обновил.
Насчет включения у тебя VLC вместо записи 720p - решай проблему у себя. На приложенном скриншоте видно, что у eva_m1racle_ исходное разрешение 1080p, запись идет с нужным 720p.
Отпишись тогда по этим AnnaSweet18 и FREYA_-

Добавлено.
Там у тебя еще вот это фигурирует:
[warnings][streamlinkdeprecation] `hls-timeout` has been deprecated in favor of the `stream-timeout` option

Этот ключ hls-timeout давно устарел, нужно вместо него использовать stream-timeout
Только возникает вопрос. В батнике этой опции нет, значит, это откуда-то из другого скрипта. Хотя, не важно, раз проблема с парсингом решилась.
  • 3

Редактор
Рег: 15.03.2017
Ком-ев: 906
Рейтинг: 2669
crazyborder 7 февраля 2024 21:33 #94147
@Nabludatel
На 720р, вместо записи, почему то открывается VLC. Проверил на нескольких моделей

У меня на 720p ОК:

Добавлено.
Если в строке команды в конце указан ключ -o <путь к файлу> - будет запись, если нет - вывод потока в плейер.
streamlink.exe URL 720p -o "%dir%\%file%"

streamlink.exe URL 720p
  • 1

Любитель
Рег: 19.04.2018
Ком-ев: 106
Рейтинг: 358
Nabludatel 7 февраля 2024 21:06 #94145
@crazyborder,
Спасибо Огромное! ay Ты как всегда, наша Палочка-Выручалочка!!!

Есть пара нюансов.
На 720р, вместо записи, почему то открывается VLC. С другими разрешениями проблем нет. Запись идёт. Проверил на нескольких моделях.
======================================
@crazyborder,
Возможно ты меня не правильно понял. Или я не правильно объяснил. Проблем с записью моделей, у которых исходное разрешение 720р, нет. Проблема с теми, у кого исходное разрешение 1080р. Нет, они спокойно пишутся. Но если я хочу понизить разрешение записи допустим до 160р, 240р или 480р, то проблем нет. А вот если поставить 720р и нажать enter, то вместо записи запускается VLC.

Так же имеются проблемы с запуском некоторых моделей. Я таковых пока нашёл две:

AnnaSweet18

FREYA_-

В обоих случаях ошибка одна

Причём, прежний стрипчатовский батник пишет обоих на ура. Но только в 720р. А этот не хочет ни в какую.

Лично для меня эти проблемы с новым батником не имеют принципиального значения. А судя по реакции местной аудитории, народу так и вообще похер. Я так, чисто для "чистоты эксперимента" ap

В любом случае, огромное сосибо за батник! az
  • 1

Редактор
Рег: 15.03.2017
Ком-ев: 906
Рейтинг: 2669
crazyborder 7 февраля 2024 20:06 #94144
Батник для записи Стрипчата с выбором качества

Запустить батник, вставить никнейм модели, нажать Enter.
Появится приглашение ввести качество. Просто нажать Enter, если нужно качество "best" (по умолчанию). Если требуется другое, то сначала ввести нужное число (720, 480, 240, 160).

Добавлено.


Обновление.
Версию батника v20240207 заменил на v20240208
Дополнительно нужна утилита sleep.exe - это инструмент командной строки, который заставляет компьютер ждать в течение определенного периода времени.
С помощью sleep пришлось добавить паузу в полсекунды между двумя запросами к одному и тому же URL.
Утилита входит в различные популярные сборки полезного инструментария для Windows. Свежую версию можно скачать, например, здесь:
https://git-scm.com/download/win
32-bit Git for Windows Portable
Скачать архив. Файл оканчивается на .7z.exe
Можно удалить расширение .exe и вручную распаковать обычным архиватором. Нужная утилита находится здесь:
...\usr\bin\sleep.exe
Цитата:
Я когда-то создал папку DIRECT_PATH и прописал путь к ней в Переменные среды. Ну и пихаю туда мелкие утилиты типа sleep.exe, touch.exe, jq.exe и т.д. - удобно для батников, не нужно прописывать в них полный путь к экзешникам.

Внешнюю утилиту sleep.exe можно заменить встроенной командой timeout, которая, к сожалению, поддерживает только целые значения в секундах.
То есть, можно заменить:
sleep 0.5

на
timeout 1 >nul

>nul - означает, что вывода сообщения на экран не будет.
  • 7

Местный
Рег: 11.05.2015
Ком-ев: 86
Рейтинг: 330
Svetus 7 февраля 2024 12:43 #94136
Цитата: Evgeny.Voloshin, 06.02.2024 21:30, №94126



Спасибо. Правда у меня почему-то процесс powershell в течение несколько часов выжирает всю оперативку. Поэтому пока что вернулся к старому скрипту, где url подправил.
  • 0

VIP-webcam
Рег: 15.04.2019
Ком-ев: 322
Рейтинг: 3126
Evgeny.Voloshin 6 февраля 2024 21:30 #94126
Цитата: D-Pulse, 06.02.2024 20:01, №94121
@Evgeny.Voloshin, подскажи как правильно внести поправки в StreamlinkGUI-2.04 после этих измений на СТРИПЧАТЕ?
что на что там заменить? если вообще возможно еще поправить.


donationalerts
  • 14

Модератор
Рег: 22.10.2014
Ком-ев: 9 872
Рейтинг: 33558
D-Pulse 6 февраля 2024 20:01 #94121
@Evgeny.Voloshin, подскажи как правильно внести поправки в StreamlinkGUI-2.04 после этих измений на СТРИПЧАТЕ?
что на что там заменить? если вообще возможно еще поправить.
  • 0

Местный
Рег: 11.05.2015
Ком-ев: 86
Рейтинг: 330
Svetus 3 февраля 2024 16:09 #94076
Цитата: Evgeny.Voloshin, 03.02.2024 07:08, №94069
$stream_url = 'https://edge-hls.doppiocdn.com/hls/{0}/master/{0}.m3u8' -f $model_id
$stream_url = 'https://edge-hls.doppiocdn.com/hls/{0}/master/{0}_auto.m3u8' -f $model_id

В каком случае качество будет выше? Или как можно вручную задать самое лучшее?
  • 0

VIP-webcam
Рег: 15.04.2019
Ком-ев: 322
Рейтинг: 3126
Evgeny.Voloshin 3 февраля 2024 07:08 #94069
@rolik_anabolik,
$stream_url = 'https://edge-hls.doppiocdn.com/hls/{0}/master/{0}.m3u8' -f $model_id
$stream_url = 'https://edge-hls.doppiocdn.com/hls/{0}/master/{0}_auto.m3u8' -f $model_id
  • 5

Новичок
Рег: 25.10.2018
Ком-ев: 33
Рейтинг: 11
rolik_anabolik 3 февраля 2024 02:31 #94066
$m3u8 = "https://edge-" + $view_server + ".doppiocdn.org/hls/" + $model_id + "/master/" + $model_id + ".m3u8?playlistType=standard"
так нефурычит и так нефурычит
$stream_url = "https://b-" + $view_server + ".doppiocdn.org/hls/" + $model_id + $quality + "/" + $model_id + ".m3u8?playlistType=standard"
прямые ссылки:
https://b-hls-19.doppiocdn.org/hls/92183983/92183983.m3u8?playlistType=standard - если качество auto
https://edge-hls.doppiocdn.org/hls/100232081/master/100232081.m3u8?playlistType=standard - если качество мануал
  • 0

Местный
Рег: 22.09.2021
Ком-ев: 194
Рейтинг: 241
sam 2 февраля 2024 14:16 #94062
на стрипчате произошли некие изменения
если раньше работало так:

"flashphoner-hls":"hls-02"

GET httрs://b-hls-02.doppiocdn.com/hls/99999/99999.m3u8
Location: httрs://b-hls-17.doppiocdn.com/hls/99999/99999.m3u8?

то теперь перекидывает на домен .local - который не резолвится и софт выдаст ошибку:

HTTP/1.1 302 Found
Location: httрs://b-hls-17.doppiocdn.local/hls/99999/99999.m3u8?

для получения исходного (Sourse) качества нужно запрашивать так:

httрs://edge-hls.doppiocdn.com/hls/99999/master/99999.m3u8
  • 6
online
Новый опрос для входящих из РФ
Лента архива smotri.com
открыть
теги
online