Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Баг записи следующей трансляции одного и того же пользователя или ограничение на одновременное количество записей/скачиваний #75

Open
ghost opened this issue Feb 21, 2017 · 18 comments

Comments

@ghost
Copy link

ghost commented Feb 21, 2017

Проблема вот в чём: допустим пользователь закончил трансляцию и начал новую через 5 минут, но её запись не началась. В чём может быть причина? Существует ли ограничение на одновременное количество скачиваний? Также запись трансляции может начинаться не сначала.

@Pmmlabs
Copy link
Owner

Pmmlabs commented Feb 21, 2017

Конкретно в моей программе никаких ограничений нет. Не сначала может начинаться запись в том случае, если пользователь начал трансляцию через 5 минут, а в настройках стоит частота проверки новых трансляций раз в 15 минут и тогда запись начнется в тот момент, когда произойдет очередная проверка подписок, т.е. на 10-й минуте стрима.
А если запись вообще не началась, то возможно что трансляция закончилась раньше, чем прошла очередная проверка, т.е. продолжительность транслсяции меньше периода проверки. В таком случае в подписках трансляция появляется сразу в виде повтора, а повторы исключены из автоматической загрузки. (баг #36)

@Pmmlabs Pmmlabs closed this as completed Feb 21, 2017
@ghost
Copy link
Author

ghost commented Feb 24, 2017

Проблема всё равно имеет место быть. Параметр проверки этот: Notifications refresh interval? Он выставлен на 1 секунду.

@Pmmlabs Pmmlabs reopened this Feb 24, 2017
@unicorn-style
Copy link

unicorn-style commented Mar 1, 2017

@Copelaw, Я могу вам сказать сразу, что проверка раз в секунду чревата временным баном по IP. У меня бот ходит по топ-листу и где-то на 80 запросе с периодом 10 секунд API выдает 403 Too much requests. Приходится иметь 10 ботов с разными IP, чтобы между запросами было больше времени. Я точно не знаю какие лимиты, но они даже срабатывают когда юзаешь приложение на iPhone и быстро передвигаешься по поискам и прочее.
Поэтому с 1 секундой вы явно погорячились.

@ghost
Copy link
Author

ghost commented Mar 2, 2017

@lxprost Понятно, попробую увеличить. Неплохо бы тогда добавить предупреждение на этот счёт или ограничить этот параметр. А можете поподробнее рассказать про различные IP. Как это организовано?

@unicorn-style
Copy link

@Copelaw на сколько я понимаю, OpenPeriscope – клиент. Чтобы можно баловаться было с компьютера. Если я правильно понимаю, то у вас запросы явно не побаловаться. Proxy вам в помощь и прочее. В любом случае, это минимум разработка собственного софта, – довольно трудоемкий процесс.
Мы на этом деньги зарабатываем и даже уже ушли с платных прокси серверов. Нет, не продаем технологии накрутки ботов. Это заказ оплачиваемый от блогеров, который попросили сделать некоторый фрюли в том числе для Periscope, к примеру:

  1. Более хорошую статистику
  2. Размер аудитории на текущий момент (для этого топ и отсматриваем)
  3. Фильтрация чата ботом
  4. Транслирование потока не только в Periscope, но и в другие сервисы

По поводу записей, да тоже делается. Но у нас отслеживается просто начало эфира и его конец. Легче просто по ID записи слить эфир youtube-dl инструментом по её окончанию.

@Pmmlabs
Copy link
Owner

Pmmlabs commented Mar 4, 2017

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

@Vol-2016
Copy link

Vol-2016 commented Mar 5, 2017

@lxprost

Легче просто по ID записи слить эфир youtube-dl инструментом по её окончанию.

Это - наихудший (по времени) вариант скачивания replay :)

@unicorn-style
Copy link

@Pmmlabs А я знаю, что если пустить бота в трансляцию и ожидать её END то можно слить трансляцию в легкую. Да необязательно ждать END, достаточно ключи получить в самом начале. Видео само не удаляется, а ранее выданные ключи доступа действуют. Притом действуют они сутки.
PS: Для неверующих, зайдите в любую трансляцию с айфона перед концом. Она закончится, её удалят. А проиграть её можно с любого место, если не закрывать видео. Хоть через час, хоть через два

@Vol-2016 Это наилучший по времени вариант скачивания. Поток youtube-dl льется на скорости ~2.5 мбит, поток с айфона в режиме трансляции 600кбит + 64кбит звук. По скорости, после трансляции скачивается быстрее, более того в записи отсутствуют пустые куски когда связь лагала.

@Vol-2016
Copy link

Vol-2016 commented Mar 5, 2017

@lxprost

Это наилучший по времени вариант скачивания.

"По скорости, после трансляции скачивается быстрее" - это ясно и это ни о чем.
Поэтому лучше так: за сколько скачивается replay часового live (при связи без лагов, без "пустых кусков") ?

@unicorn-style
Copy link

@Vol-2016

  • это ясно и это ни о чем.

НЕТ! Вот конкретно вот это ни о чем:

Это - наихудший (по времени) вариант скачивания replay 😀

Вы не пробовав и не разбираясь в вопросе написали фигню. Я со своей стороны все уже объяснил.
Читайте внимательно! Я вам написал скорость при которой качает youtube-dl ~ 2.5мбитс.
Скорость трансляции с айфона 600кбитс, те это тот максимум который вы получите когда трансляции идет (вы же не можете скачивать то чего еще не показали).
2500/600 ~> 4 раз
Считайте, скачивание готовой трансляции идет быстрее в 4 раза. Недавно руками сливал на макбук трансляцию c помощью youtube-dl, скорость скачивания 2 час 09 минут составила 16 минут. Скорость скачивания готовой, может быть выше, тут как отдает конкретно periscope.

Я вообще мало представляю, для каких целей люди скачивают записи трансляций. Ад перескопа?! Если автор удаляет - значит запрещает дальнейшую републикацию и прочее.

@Vol-2016
Copy link

Vol-2016 commented Mar 5, 2017

@lxprost

Вы не пробовав и не разбираясь в вопросе написали фигню.

Не без удовольствия цитирую ваш спесивый треп. Потому как у меня replay качается всегда не менее чем в 10 раз быстрее соотв. live (разъяснять как именно - ассу вроде вас без надобности).

@unicorn-style
Copy link

unicorn-style commented Mar 5, 2017

Не без удовольствия цитирую ваш спесивый треп. Потому как у меня replay качается всегда не менее чем в 10 раз быстрее соотв. live (разъяснять как именно - ассу вроде вас без надобности).

Молодой человек - вы бредите. Если вы скачиваете live – то оно скачивается ровно столько, сколько идет трансляция. Если вы скачиваете запись, т.е hls - то можете его скачать в два раза быстрее запустив в два потока скачивания кусков HLS, но вас ждет неминуемый автобан на серваках AWS, где собственно и стоит periscope.
Вы можете брызгать здесь слюной, доказывать обратное. HLS сервер обеспечивается NGINX, судя по цифровой подписи, т.е это докрученный nginx-rtmp скорее всего. Там просто в базе вшита защита при скачивании m3u2 кусков. Собственно, в API выдается ссылка именно на m3u2 файл листа с кусками. Без прокси скачивать быстрее можно в два раза, но с вероятностью автобана. Вы можете хоть в 10 потоков лить куски и доказывать с пеной у рта, что вот у вас там быстрее. Но сервер обработки наших ботов стоит как раз на AWS, не думаю что скорость скачивания у вас будет выше чем на площадке где это все стоит.
youtube-dl посути скачивает куски в m3u2 листе один за другим, а потом ffmpeg скручивает в один файл.

Хотите еще поспорить, чтоб что-то доказать? Не спорили со мной, если бы хоть чуток понимали как работают видеотрансляции, как работает periscope и какие ключи и ограничения там работают.

@unicorn-style
Copy link

@Vol-2016 я только сейчас заметил, что вы сами разработчик проги для записи. Ответ для вас выше и менять его не буду. И судя по вашим комментариям, я настоятельно не рекомендую ваш софт к использованию. Это называется я сделал софт as is, забанят - ваши проблемы.
Мы баны уже получали при разработке софта в перископе, знаем не понаслышке. И знаем как лимиты на запросы сжимались за этот год, и знаем сколько банов в день выставляется.

Я думаю @Pmmlabs тоже знает, что защитой Periscope занимается очень активно. И возможно сам испытал при разработке баны и прочее.

@Vol-2016
Copy link

Vol-2016 commented Mar 5, 2017

К сожалению не молодой, знаю цену времени, и тратить его на самоуверенного незнайку не собираюсь. Повзрослеете - возможно, чему и научитесь. Успехов.

@Pmmlabs
Copy link
Owner

Pmmlabs commented Mar 5, 2017

Видео само не удаляется, а ранее выданные ключи доступа действуют.

Вот этого не знал, хорошо что такая фича есть.

@Vol-2016 не разработчик, он форкнул чей-то bat-скрипт который использует параллельную загрузку частей hls - не знаю как сейчас, а раньше никаких банов за это не было. Перископ действительно постоянно вводит какие-то ограничения, лично я сталкивался несколько раз когда авторизация в моем приложении отваливалась, и связано это было отнюдь не с какими-то новыми фичами мобильного приложения. Так что тут надо держать нос по ветру, это точно.

@unicorn-style
Copy link

@Pmmlabs Только сказал и пум, они обновились. Ключи уничтожаются в тот момент, как трансляцию ведущий убивает. Все кто смотрит во время трансляции kick 😧
Но! В любом случае, использовали запись трансляции через youtube-dl в реал-тайм. Работает!

@a1ex7
Copy link

a1ex7 commented Mar 25, 2017

@lxprost а чем вам не подходит скачивание с помощью бат-скрипта? Любое видео скачивается практически мгновенно (иногда даже автор трансляции не успевает ее удалить до того, как она уже скачалась). Бан при скачивании здесь в принципе не возможен, т.к. скачивание не требует авторизации. Собственно говоря банить то некого )

@unicorn-style
Copy link

@a1ex7 речь идет о том, как только пользователь нажимает удалить - сразу теряется доступ к кускам. Длинную трансляцию час и более быстро скатать не получится.
А отвечая на ваш вопрос, почему не с помощью бат-скрипта - у нас винды нет. :)
Потому что не являюсь пользователем этого софта. У нас сторонний софт для других целей, более профессиональных и нам за это платят деньги.
Я нахожусь в этом репо для отслеживания изменений. Не все удается заметить нам.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants