У меня ACE STREAM PREMIUM - установил на Windows 10 64bit - все было хорошо, пока не нагрузил его одновременными подключениями к нему около 20 потоков - вылетает с ошибкой:
Что значит “одновременными подключениями к нему около 20 потоков” - в смысле, 20 клиентских устройств, подключенных к медиа-серверу, или 20 клиентов для созданной трансляции?
Для внятного ответа по поводу ошибки нам нужен лог-файл.
[details=Spoiler]2018-03-27 23:10:48,039|Thread-22|acestream.webui|error in get(): urlpath=/play/x9Wf6tu/670
Traceback (most recent call last):
File “ACEStream\WebUI\WebUI.pyo”, line 253, in get
File “ACEStream\WebUI\WebUI.pyo”, line 261, in doget
File “ACEStream\WebUI\WebUI.pyo”, line 2343, in process_playlist_request
File “ACEStream\WebUI\WebUI.pyo”, line 1907, in get_playlist_item_playback_url
File “ACEStream\WebUI\WebUI.pyo”, line 1942, in get_playlist_item_data
ValueError: unknown item index
2018-03-27 23:10:49,539|MainThread|acestream.lang|setting up languages: default=en_EN.lang system=ru_RU
2018-03-27 23:10:49,664|MainThread|acestream.SocketHandler.InterruptSocket|bound on 127.0.0.1:58232
2018-03-27 23:10:49,664|MainThread|acestream.SocketHandler.SocketHandler|bind: socket bound: host=0.0.0.0 port=57494
2018-03-27 23:10:49,710|Instance2InstanceThread-52|acestream.APIServer|run: ready to receive remote commands on 57494
2018-03-27 23:10:51,003|BGTaskQueueThread-1|acestream.coreapp|set_allow_sleep_mode: allow=0
2018-03-27 23:11:10,148|Thread-783|acestream.live.download.642da99cba697d13bd58e796b38e00b4e68d1da8|set_max_connections: deprecated
2018-03-27 23:11:10,150|Thread-783|acestream.live.download.642da99cba697d13bd58e796b38e00b4e68d1da8|set_max_upload_slots: deprecated
2018-03-27 23:11:31,678|Thread-1245|acestream.live.download.642da99cba697d13bd58e796b38e00b4e68d1da8|set_max_connections: deprecated
2018-03-27 23:11:31,680|Thread-1245|acestream.live.download.642da99cba697d13bd58e796b38e00b4e68d1da8|set_max_upload_slots: deprecated
2018-03-27 23:12:50,275|AceStreamCoreThread|acestream.LM|_run: error
Traceback (most recent call last):
File “ACEStream\Core\APIImplementation\LaunchManyCore.pyo”, line 485, in _run
File “ACEStream\Core\BitTornado\ServerPortHandler.pyo”, line 283, in listen_forever
File “ACEStream\Core\BitTornado\RawServer.pyo”, line 235, in listen_forever
File “core.c”, line 241, in
TypeError: object of type ‘NoneType’ has no len()
2018-03-27 23:12:50,289|AceStreamCoreThread|acestream.coreapp|object of type ‘NoneType’ has no len()
2018-03-27 23:12:50,430|AceStreamCoreThread|acestream.AppWrapperWx|on_error: exit=True
2018-03-27 23:12:50,430|MainThread|acestream.AppWrapperWx|_on_error: exit=True
2018-03-27 23:12:58,055|Thread-1902|acestream.live.download.b6f034ae25c1b4a9738daf1f6f66d8066c08f683|set_max_connections: deprecated
2018-03-27 23:12:58,055|Thread-1902|acestream.live.download.b6f034ae25c1b4a9738daf1f6f66d8066c08f683|set_max_upload_slots: deprecated
2018-03-27 23:19:20,881|TrafficStatsSenderThread|acestream.TrafficStatsSender|run: error
Traceback (most recent call last):
File “core.c”, line 96, in
File “core.c”, line 115, in
File “core.c”, line 121, in
File “core.c”, line 157, in
File “threading.pyo”, line 736, in start
error: can’t start new thread
2018-03-27 23:19:21,584|Thread-6564|acestream.httpserver|get: error while closing stream
Traceback (most recent call last):
File “ACEStream\Video\VideoServer.pyo”, line 951, in do_GET
File “core.c”, line 12558, in
File “core.c”, line 2749, in
File “threading.pyo”, line 736, in start
error: can’t start new thread
2018-03-27 23:19:42,598|Thread-6669|acestream.httpserver|get: error while closing stream
Traceback (most recent call last):
File “ACEStream\Video\VideoServer.pyo”, line 951, in do_GET
File “core.c”, line 12558, in
File “core.c”, line 2749, in
File “threading.pyo”, line 736, in start
error: can’t start new thread
2018-03-27 23:22:21,786|Thread-7449|acestream.httpserver|get: error while closing stream
Traceback (most recent call last):
File “ACEStream\Video\VideoServer.pyo”, line 951, in do_GET
File “core.c”, line 12558, in
File “core.c”, line 2749, in
File “threading.pyo”, line 736, in start
error: can’t start new thread
2018-03-27 23:23:09,661|Thread-7696|acestream.httpserver|get: error while closing stream
Traceback (most recent call last):
File “ACEStream\Video\VideoServer.pyo”, line 951, in do_GET
File “core.c”, line 12558, in
File “core.c”, line 2749, in
File “threading.pyo”, line 736, in start
error: can’t start new thread
2018-03-27 23:23:30,661|Thread-7804|acestream.httpserver|get: error while closing stream
Traceback (most recent call last):
File “ACEStream\Video\VideoServer.pyo”, line 951, in do_GET
File “core.c”, line 12558, in
File “core.c”, line 2749, in
File “threading.pyo”, line 736, in start
error: can’t start new thread
2018-03-27 23:25:36,427|MainThread|acestream.coreapp|onexit
2018-03-27 23:25:37,161|Thread-8406|acestream.httpserver|get: error while closing stream
Traceback (most recent call last):
File “ACEStream\Video\VideoServer.pyo”, line 951, in do_GET
File “core.c”, line 12558, in
File “core.c”, line 2749, in
File “threading.pyo”, line 736, in start
error: can’t start new thread
2018-03-27 23:25:37,161|MainThread|acestream.AppWrapperWx|shutdown
2018-03-27 23:25:37,161|MainThread|acestream.coreapp|onexit: error
Traceback (most recent call last):
File “core.c”, line 5718, in
File “core.c”, line 294, in
File “threading.pyo”, line 929, in join
RuntimeError: cannot join thread before it is started
2018-03-27 23:25:39,404|MainThread|acestream.AppWrapperWx|OnExit: app exit done[/details]
Flussonic запускается на этом же ПК, или на другом - у ПК достаточно ресурсов (ЦП/диск/память), чтобы качать/стримить 20 каналов одновременно (каждый канал - отдельная копия Ace Stream)?
Да, при этом желательно сначала выполнить рекомендации по приведенной ссылке (т.е удалить старый лог файл), и приложить полный файл, а не выборочные фрагменты - в приведенном фрагменты видны ошибки, но не видна “предистория”.
Критически важного там ничего нет, просто уведомление о том, что некоторые из используемых ключей устарели (deprecated).
Flussonic запускается на другом компе, и он подключается к различным каналам по ссылке стрима канала. т.е. не множественный запуск Ace Stream Media Center, а подключение к его различным каналам (потокам каналов)
Пример одного из канала: http://8.8.8.8:6878/play/xXxXxXG/3
Пример другого канала: http://8.8.8.8:6878/play/xXxXxXG/312
И при каждом таком подключении создается отдельный поток со своим контекстом (я не правильно выразился - “полная копия” только в случае трансляции cоздается, для каждого канала) - и в логе как раз полно ошибок, что очередной такой новый поток “не может быть создан”.
Есть вопросы к плейлисту - при загрузке ошибки. Рекомендуем для проверки остановить движок, убедиться, что среди процесоов не осталось его “зомби”, переименовать либо удалить каталог профиля (%appdata% → .AceStream), и запустить движок снова.
такое впечатление, что клиент (Flussonic) не дожидается ответа от Ace Stream, и посылает запрос повторно, “засыпая” движок запросами. В настройках Flussonic можно попробовать увеличить таймаут соединения.
Я полностью удалил Ace Stream Media Center - и установил снова. Пока как то держится… работает… НО: Ace Stream Media Center сейчас в состоянии подвешаности… не отвечает на нажатие значка и т.п.
Стримы не отдаёт…
Во вложении скрины состояния диспетчера задач
Скрин 1 - диспетчер задач на компе где запущен Ace Stream Media Center
Скрин 2 - состояние Flussonic - не получающий через минут 5-10 стримы от зависшего Ace Stream Media Center
И сам ЛОГ Ace Stream Media Center
Я не смог повторить ошибки в логе, т.е это явно что-то локальное. Ошибки плейлиста тоже никуда не делись - какой плейлист используется при импорте? В движок желательно импортировать плейлист, состоящий из acestream:// ссылок, с остальными вариантами могут быть проблемы.
Ограничение врядли (вот прямо счас у меня 3 канала одновременно работают), а вот то, что давно (за неактуальностью) не проверялось, как оно там при скачке десятка каналов одновременно себя ведет - вполне вероятно. Единственное замечание - как часто Flussonic пытается повторять подключение в случае неудачи? Движок отдает ссылку не сразу (за 1-2 сек минимум), поэтому, если его тупо “долбить” запросами не дожидаясь результата - будет отдавать 500 ошибку и в конце-концов сломается.
В общем, мы еще поизучаем этот вопрос, а пока, чтобы не ждать - можно пробовать альтернативный прокси - Форум ТВ
После изучения вопроса выяснилось следующее - в случае, если к прокси-серверу есть несколько запросов с одного IP, то нужно дополнительно указывать sid (он же Player ID) - http://wiki.acestream.media/Engine_HTTP_API#Player_ID
Сделал всё как Вы посоветовали… к сожалению… или я что то недопонимаю и не так делаю… или всё таки это ПО требует доработки…
Смотрите. Первое - мои ссылки сильно отличаются от Ваших вообще строением.
Я использовал и такие:
http://(адрес):6878/play/OccsTpy/335
http://(адрес):6878/play/OccsTpy/389
и такие
http://(адрес):6878/ace/getstream?url=http%3A%2F%2Fcontent.asplaylist.net%2FRlJ4a1BnYk9PaENlR0Zhc1lqc093c3dZMnEyVGFYaVN
6V3BJWFZBdWlVVk1wdndPQ0RtSDVSNitBT0JyRG1kNzJRdERKY3JvclNWcUF6eXNqbFpyc3c9PQ%2Fcdn%2F719_reg.acelive&hlc=1&transcode_audio=0&transcode_mp3=1
&transcode_ac3=0&preferred_audio_language=rus&sid335