Добрый вам. Дублирую сообщение с лички 4pda, по вашей рекомендации.
Добрый вам день. Хотел обсудить с вами возможность увеличение timeout-а ожидания потока в вашем великолепном плеере. Расскажу о сути проблемы... Дело в том, что недавно, для просмотра торентовских телеканалов начал использовать HTTPAceProxy и столкнулся с проблемой, что когда движок асе стрима переходит в состояние буферизации progtv не дожидается появления потока и переходит в состояние соединение потерянно, а когда буфер асе стрима наполнился, он уже поток не подхватывает. Через время он инициирует новое соединение и история повторяется. Все это происходит в режиме openmax. В других режимах, глюк проявляется иначе, в виде показа по кругу одного и того же чанка.
Если посмотреть поведение vlc плеера на компьютере, то он в такой ситуации, замирает на время буферизации асестрим движка, и когда буферизация заканчивается возобновляет воспроизведение.
Справедливости ради, хочу заметить, что при использовании прокси встроенной в асе стрим, такого глюка не наблюдается, но хочется подружить ваш плеер именно с HTTPAceProxy, так как он позволяет просматривать один и тот же канал на разных устройствах, что не позволяет встроенный прокси в acestream.
Вот собственно и вопрос, можно ли увеличить время ожидания плеером потока от прокси?
Логи progtv прикладываю
Re: ProgTV + HTTPAceProxy + timeout
#2Сервер действительно не отдаёт трафик по 12-15 секунд, потом ProgTV обновляет соеденение. В принципе такие большие задержки для torrent tv - это нормально. То есть плохая работа самого torrent tv - это нормальное его(!) состояние. Если интересно сделаю версию с более длинным ожиданием.
С другой стороны вы смотрите не поток а mp4 судя по расширению, и это полный треш. Его нужно читать не последовательно а кусками с разных позиций и в условиях torrent tv это очень увлекательно.
На обычных каналах лучше?
С другой стороны вы смотрите не поток а mp4 судя по расширению, и это полный треш. Его нужно читать не последовательно а кусками с разных позиций и в условиях torrent tv это очень увлекательно.
На обычных каналах лучше?
Re: ProgTV + HTTPAceProxy + timeout
#3Это особенность работы этого прокси...
С обычными каналами от провайдера проблем нет...
Если использовать родной прокси от acestream движка, проблем тоже в принцепи не наблюдается...
Но хотелось бы заставить работать именно с этим прокси, судя по тому как работает vlc, то такая ситуация с провалом потока, возникает как правило только в начале, потом буффер прокси наполняется и буферизаций больше не возникает и vlc больше не остонавливается.
Если можно сделать версию с более длинным таймаут, то было бы замечательно, а ещё лучше, чтобы его можно было менять через настройки или файл конфигурации.
С обычными каналами от провайдера проблем нет...
Если использовать родной прокси от acestream движка, проблем тоже в принцепи не наблюдается...
Но хотелось бы заставить работать именно с этим прокси, судя по тому как работает vlc, то такая ситуация с провалом потока, возникает как правило только в начале, потом буффер прокси наполняется и буферизаций больше не возникает и vlc больше не остонавливается.
Если можно сделать версию с более длинным таймаут, то было бы замечательно, а ещё лучше, чтобы его можно было менять через настройки или файл конфигурации.
Re: ProgTV + HTTPAceProxy + timeout
#4А если без прокси напрямую torrent tv в ProgTV получать? Думаю не виноват прокси. У него нет трафика на входе и не отдаёт на выходе.
Ну и опять же - нужно на обычных (торрент тв но обычных) тестировать. mp4 через торент это как стоя в гамаке ...
Ну и опять же - нужно на обычных (торрент тв но обычных) тестировать. mp4 через торент это как стоя в гамаке ...
Re: ProgTV + HTTPAceProxy + timeout
#5Мы похоже говорим об одном и тоже, разными словами. ProgTV не умеет же торренты качать... а работает через AceStreamEngene, а у того, в свою очередь, есть своя прокся которая собирает скачанные куски в одно целое, или я что - то неправильно понимаю...А если без прокси напрямую torrent tv в ProgTV получать? Думаю не виноват прокси. У него нет трафика на входе и не отдаёт на выходе.
Но суть такая... если я запускаю плейлист с помойки, или тот же лист с помойки, в котором прописываю в конце параметры ?ip=ip_acestream:6878, то проблем с потерей потока нет... всё идет гладко, иногда бывает не с первого раза канал запуститься, но с второго раза запускается железно.
Да я не виню проксю... я потому и написал "особенность". По логам прокси видно, при запросе канала, у движка начинается prebuf, через некоторое время,когда предварительная буферизация заканчивается (очень бысто 2-3 сек) он выдает ссылку на поток плееру, плеер наченает показывать канал, а движок AceStream переходит в состояние dl и молотит..., через 10-15 сек движку видимо не хватает данных и он переходит в состояние buf (буферизации по причине не хватки данных) поток на выходе видимо в этот момент уже отсутствует, но в буфере плеера ещё есть данные и поэтому плеер продолжает воспроизвидение как не в чем не бывало, но я уже знаю, что скоро конец... через ещё некоторое время появится надпись о потери соеденения, а ещё чуть позже остановится видео на экране. Если до появления надписи о потере соединения, движёк успеет набуферить данных и передёт опять в состояние dl, то обрыва не будет, но как правило не успевает... В винде VLC ведёт себя так же, то есть останавливается, но дожидается появления потока и потом уже работает нормально. Наверное это связано с тем, что эйсстриму нужно разогнаться ))))
В общем как мне кажется, что если позволить плееру дольше ждать, то проблема решится.
Re: ProgTV + HTTPAceProxy + timeout
#6Версия с большей задержкой. Лучше стало?
http://test.progdvb.com/1/progtv.beta.2.54.7.delay.apk
http://test.progdvb.com/1/progtv.beta.2.54.7.delay.apk
Re: ProgTV + HTTPAceProxy + timeout
#7Погонял... - лучше не стало
Хотя вроде периодически после появления надписи о потери соединения и успевало подхватить, но при следующей буферизации падает.
При этом всем, наблюдается интересная вещь... если использовать родную проксю движка ace stream (localhost:6878 или acestream_ip:6878), то проблем не каких нет... все идёт гладко, как часы., а с этой проксёй работать не хочет не в какую...
Другие железки в доме (телик LG NetCast, комп с win7 + VLC) работают с этой проксей нормально и даже если запустить один и тот же канал к примеру на компе в VLC и в Prog TV на андройде, то уже и в ProgTV проблем не будет...
И ещё при воспроизведении другими устройствами через httpaceproxy, ace stream реже переходит в состояние buf по сравнению с воспроизведением progtv...
Вот такие пироги...
И да, в проксе есть настройка которая переключает выходной поток с http на hls и в этом варианте обрывов не наблюдается, но минусом является то, что пропадают дополнительные звуковые дорожки.
Хотя вроде периодически после появления надписи о потери соединения и успевало подхватить, но при следующей буферизации падает.
При этом всем, наблюдается интересная вещь... если использовать родную проксю движка ace stream (localhost:6878 или acestream_ip:6878), то проблем не каких нет... все идёт гладко, как часы., а с этой проксёй работать не хочет не в какую...
Другие железки в доме (телик LG NetCast, комп с win7 + VLC) работают с этой проксей нормально и даже если запустить один и тот же канал к примеру на компе в VLC и в Prog TV на андройде, то уже и в ProgTV проблем не будет...
И ещё при воспроизведении другими устройствами через httpaceproxy, ace stream реже переходит в состояние buf по сравнению с воспроизведением progtv...
Вот такие пироги...
И да, в проксе есть настройка которая переключает выходной поток с http на hls и в этом варианте обрывов не наблюдается, но минусом является то, что пропадают дополнительные звуковые дорожки.
Re: ProgTV + HTTPAceProxy + timeout
#9Добрый вам. Прошу прощения за задержку с ответом. Сегдня плеер обновился до 2.54.8 так что это не тестовая версия.
Вот лог который сыпет в консоль прокси во время воспроизведения ProgTV.
В этот момент уже происходит остановка воспроизведения.
Переконект и возобновление воспроизведения происходит гдето здесь.
Опять остановилось приблизительно тут.
И так происходит по циклу.
А вот так выглядит лог при воспроизведении VLC на компьютере.
Вот здесь приблизительно видео замерло....
А вот здесь без переконектов пошло дальше.
И заметте, что статуса buf дальше уже не возникает в случае с VLC.
Вот лог который сыпет в консоль прокси во время воспроизведения ProgTV.
Code: Select all
acehttp.py [LINE:106 ]# INFO [02.05 13:04:19] Accepted connection from 192.168.1.20 path /torrenttv
acehttp.py [LINE:107 ]# DEBUG [02.05 13:04:19] Headers: {'connection': 'keep-alive', 'host': '192.168.1.20:8000'}
acehttp.py [LINE:106 ]# INFO [02.05 13:05:28] Accepted connection from 192.168.1.20 path /torrenttv/channel/Amedia Hit HD.mp4
acehttp.py [LINE:107 ]# DEBUG [02.05 13:05:28] Headers: {'accept-language': 'ru,en-us;q=0.7,en;q=0.3', 'accept-encoding': 'gzip,deflate', 'connection': 'close', 'accept': '*/*', 'user-agent': 'VLC/2.1.3 LibVLC/2.1.3', 'accept-charset': 'utf-8;windows-1251;windows-1252;q=0.7,*;q=0.7', 'host': '192.168.1.20:8000', 'icy-metadata': '1'}
aceclient.py [LINE:84 ]# DEBUG [02.05 13:05:28] Successfully connected to AceStream on 127.0.0.1:62062
clientcounter.py [LINE:24 ]# DEBUG [02.05 13:05:28] AceClient created
aceclient.py [LINE:120 ]# DEBUG [02.05 13:05:28] HELLOBG version=3
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:28] <<< HELLOTS version=3.1.28 version_code=3012800 key=ef969c3255 http_port=6878 bmode=0
aceclient.py [LINE:120 ]# DEBUG [02.05 13:05:28] READY key=n51LvQoTlJzNGaFxseRK-5b04e8f1e415d48898d6bf77e328439f6bb0b3b6
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:28] <<< AUTH 0
aceclient.py [LINE:120 ]# DEBUG [02.05 13:05:28] USERDATA [{"gender": 1}, {"age": 5}]
aceclient.py [LINE:120 ]# DEBUG [02.05 13:05:28] SETOPTIONS use_stop_notifications=1
clientcounter.py [LINE:26 ]# DEBUG [02.05 13:05:28] AceClient initialized
acehttp.py [LINE:203 ]# WARNING [02.05 13:05:28] Create a broadcast "Amedia Hit HD"
aceclient.py [LINE:120 ]# DEBUG [02.05 13:05:28] START PID 06175dc01eb499ffcb5f2d12bd4f747e124e36c2 0 output_format=http
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:29] <<< STATE 1
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:29] <<< STATUS main:starting
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:31] <<< START http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.87115297449 stream=1
aceclient.py [LINE:208 ]# DEBUG [02.05 13:05:31] Open video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.87115297449
aceclient.py [LINE:213 ]# DEBUG [02.05 13:05:31] Get headers from client: {'accept-language': 'ru,en-us;q=0.7,en;q=0.3', 'accept-encoding': 'gzip,deflate', 'connection': 'close', 'accept': '*/*', 'user-agent': 'VLC/2.1.3 LibVLC/2.1.3', 'accept-charset': 'utf-8;windows-1251;windows-1252;q=0.7,*;q=0.7', 'host': '192.168.1.20:8000', 'icy-metadata': '1'}
acehttp.py [LINE:214 ]# WARNING [02.05 13:05:31] Broadcast "Amedia Hit HD" created
acehttp.py [LINE:221 ]# INFO [02.05 13:05:31] Streaming "Amedia Hit HD" to 192.168.1.20 started
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:31] <<< STATE 2
aceclient.py [LINE:120 ]# DEBUG [02.05 13:05:31] EVENT play
acehttp.py [LINE:298 ]# DEBUG [02.05 13:05:31] Sending HTTPAceProxy headers to client: {'Connection': 'Keep-Alive', 'Content-Type': 'application/octet-stream', 'Keep-Alive': 'timeout=15, max=100'}
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:32] <<< STATUS main:dl;0;0;1932;0;0;5;0;5816320;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:32] <<< EVENT livepos last=1525255531 live_first=1525253731 pos=1525255523 first_ts=1525253731 last_ts=1525255531 is_live=1 live_last=1525255531 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:34] <<< STATUS main:dl;0;0;2240;0;0;9;0;11534336;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:34] <<< EVENT livepos last=1525255533 live_first=1525253733 pos=1525255530 first_ts=1525253733 last_ts=1525255533 is_live=1 live_last=1525255533 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:36] <<< STATUS main:dl;0;0;1886;0;0;9;0;13631488;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:36] <<< EVENT livepos last=1525255535 live_first=1525253735 pos=1525255534 first_ts=1525253735 last_ts=1525255535 is_live=1 live_last=1525255535 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:38] <<< STATUS main:dl;0;0;1465;0;0;9;0;13631488;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:38] <<< EVENT livepos last=1525255537 live_first=1525253737 pos=1525255535 first_ts=1525253737 last_ts=1525255537 is_live=1 live_last=1525255537 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:39] <<< PAUSE
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:39] <<< STATE 3
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:40] <<< STATUS main:buf;0;0;0;0;1382;0;0;9;0;15728640;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:40] <<< EVENT livepos last=1525255538 live_first=1525253738 pos=1525255535 first_ts=1525253738 last_ts=1525255538 is_live=1 live_last=1525255538 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:42] <<< STATUS main:buf;9;0;0;0;1249;0;0;9;0;16809984;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:42] <<< EVENT livepos last=1525255541 live_first=1525253741 pos=1525255535 first_ts=1525253741 last_ts=1525255541 is_live=1 live_last=1525255541 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:44] <<< STATUS main:buf;9;0;0;0;1264;0;2;9;0;19628032;0;49152
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:44] <<< EVENT livepos last=1525255543 live_first=1525253743 pos=1525255535 first_ts=1525253743 last_ts=1525255543 is_live=1 live_last=1525255543 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:46] <<< STATUS main:buf;28;0;0;0;1131;0;2;9;0;19922944;0;49152
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:46] <<< EVENT livepos last=1525255545 live_first=1525253745 pos=1525255535 first_ts=1525253745 last_ts=1525255545 is_live=0 live_last=1525255545 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:48] <<< STATUS main:buf;38;0;0;0;1117;0;3;9;0;22020096;0;81920
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:48] <<< EVENT livepos last=1525255546 live_first=1525253746 pos=1525255535 first_ts=1525253746 last_ts=1525255546 is_live=0 live_last=1525255546 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:50] <<< STATUS main:buf;38;0;0;0;1058;0;3;9;0;23068672;0;81920
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:50] <<< EVENT livepos last=1525255548 live_first=1525253748 pos=1525255535 first_ts=1525253748 last_ts=1525255548 is_live=0 live_last=1525255548 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:52] <<< STATUS main:buf;47;0;0;0;1049;0;2;9;0;25018368;0;81920
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:52] <<< EVENT livepos last=1525255551 live_first=1525253751 pos=1525255535 first_ts=1525253751 last_ts=1525255551 is_live=0 live_last=1525255551 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:54] <<< STATUS main:buf;47;0;0;0;1007;0;2;9;0;26214400;0;81920
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:54] <<< EVENT livepos last=1525255553 live_first=1525253753 pos=1525255535 first_ts=1525253753 last_ts=1525255553 is_live=0 live_last=1525255553 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:56] <<< STATUS main:buf;57;0;0;0;1010;0;2;9;0;28311552;0;81920
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:56] <<< EVENT livepos last=1525255555 live_first=1525253755 pos=1525255535 first_ts=1525253755 last_ts=1525255555 is_live=0 live_last=1525255555 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:58] <<< STATUS main:buf;66;0;0;0;949;0;2;9;0;29016064;0;81920
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:58] <<< EVENT livepos last=1525255557 live_first=1525253757 pos=1525255535 first_ts=1525253757 last_ts=1525255557 is_live=0 live_last=1525255557 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:00] <<< STATUS main:buf;66;0;0;0;972;0;2;9;0;31457280;0;98304
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:00] <<< EVENT livepos last=1525255559 live_first=1525253759 pos=1525255535 first_ts=1525253759 last_ts=1525255559 is_live=0 live_last=1525255559 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:02] <<< STATUS main:buf;80;0;0;0;931;0;2;9;0;32505856;0;98304
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:02] <<< EVENT livepos last=1525255561 live_first=1525253761 pos=1525255535 first_ts=1525253761 last_ts=1525255561 is_live=0 live_last=1525255561 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:04] <<< STATUS main:buf;80;0;0;0;922;0;2;9;0;34193408;0;98304
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:04] <<< EVENT livepos last=1525255563 live_first=1525253763 pos=1525255535 first_ts=1525253763 last_ts=1525255563 is_live=0 live_last=1525255563 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:06] <<< STATUS main:buf;95;0;0;0;903;0;2;9;0;35651584;0;98304
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:06] <<< EVENT livepos last=1525255565 live_first=1525253765 pos=1525255535 first_ts=1525253765 last_ts=1525255565 is_live=0 live_last=1525255565 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:06] <<< RESUME
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:06] <<< STATE 2
acehttp.py [LINE:223 ]# INFO [02.05 13:06:06] Streaming "Amedia Hit HD" to 192.168.1.20 finished
aceclient.py [LINE:120 ]# DEBUG [02.05 13:06:06] EVENT stop
aceclient.py [LINE:120 ]# DEBUG [02.05 13:06:06] STOP
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:06] <<< STATE 0
aceclient.py [LINE:283 ]# DEBUG [02.05 13:06:06] Close video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.87115297449
acehttp.py [LINE:226 ]# WARNING [02.05 13:06:06] Broadcast "Amedia Hit HD" stoped. Last client disconnected
aceclient.py [LINE:271 ]# DEBUG [02.05 13:06:06] All clients disconnected - broadcast stoped
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:06] <<< STATUS main:idle
acehttp.py [LINE:106 ]# INFO [02.05 13:06:17] Accepted connection from 192.168.1.20 path /torrenttv/channel/Amedia Hit HD.mp4
acehttp.py [LINE:107 ]# DEBUG [02.05 13:06:17] Headers: {'accept-language': 'ru,en-us;q=0.7,en;q=0.3', 'accept-encoding': 'gzip,deflate', 'connection': 'close', 'accept': '*/*', 'user-agent': 'VLC/2.1.3 LibVLC/2.1.3', 'accept-charset': 'utf-8;windows-1251;windows-1252;q=0.7,*;q=0.7', 'host': '192.168.1.20:8000', 'icy-metadata': '1'}
acehttp.py [LINE:203 ]# WARNING [02.05 13:06:17] Create a broadcast "Amedia Hit HD"
aceclient.py [LINE:120 ]# DEBUG [02.05 13:06:17] START PID 06175dc01eb499ffcb5f2d12bd4f747e124e36c2 0 output_format=http
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:17] <<< STATE 1
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:17] <<< STATUS main:starting
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:20] <<< START http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.0358681279164 stream=1
aceclient.py [LINE:208 ]# DEBUG [02.05 13:06:20] Open video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.0358681279164
aceclient.py [LINE:213 ]# DEBUG [02.05 13:06:20] Get headers from client: {'accept-language': 'ru,en-us;q=0.7,en;q=0.3', 'accept-encoding': 'gzip,deflate', 'connection': 'close', 'accept': '*/*', 'user-agent': 'VLC/2.1.3 LibVLC/2.1.3', 'accept-charset': 'utf-8;windows-1251;windows-1252;q=0.7,*;q=0.7', 'host': '192.168.1.20:8000', 'icy-metadata': '1'}
acehttp.py [LINE:214 ]# WARNING [02.05 13:06:20] Broadcast "Amedia Hit HD" created
acehttp.py [LINE:221 ]# INFO [02.05 13:06:20] Streaming "Amedia Hit HD" to 192.168.1.20 started
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:20] <<< STATE 2
aceclient.py [LINE:120 ]# DEBUG [02.05 13:06:20] EVENT play
acehttp.py [LINE:298 ]# DEBUG [02.05 13:06:20] Sending HTTPAceProxy headers to client: {'Connection': 'Keep-Alive', 'Content-Type': 'application/octet-stream', 'Keep-Alive': 'timeout=15, max=100'}
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:20] <<< STATUS main:dl;0;0;1811;0;0;7;0;5701632;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:20] <<< EVENT livepos last=1525255578 live_first=1525253778 pos=1525255573 first_ts=1525253778 last_ts=1525255578 is_live=1 live_last=1525255578 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:22] <<< STATUS main:dl;0;0;1824;0;0;10;0;11485184;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:22] <<< EVENT livepos last=1525255581 live_first=1525253781 pos=1525255573 first_ts=1525253781 last_ts=1525255581 is_live=1 live_last=1525255581 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:24] <<< STATUS main:dl;0;0;1492;0;0;10;0;12582912;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:24] <<< EVENT livepos last=1525255582 live_first=1525253782 pos=1525255582 first_ts=1525253782 last_ts=1525255582 is_live=1 live_last=1525255582 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:26] <<< STATUS main:dl;0;0;1397;0;0;10;0;14680064;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:26] <<< EVENT livepos last=1525255585 live_first=1525253785 pos=1525255582 first_ts=1525253785 last_ts=1525255585 is_live=1 live_last=1525255585 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:26] <<< PAUSE
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:26] <<< STATE 3
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:28] <<< STATUS main:buf;14;0;0;0;1250;0;0;10;0;15728640;0;16384
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:28] <<< EVENT livepos last=1525255586 live_first=1525253786 pos=1525255582 first_ts=1525253786 last_ts=1525255586 is_live=1 live_last=1525255586 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:30] <<< STATUS main:buf;14;0;0;0;1216;0;0;10;0;17825792;0;16384
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:30] <<< EVENT livepos last=1525255589 live_first=1525253789 pos=1525255582 first_ts=1525253789 last_ts=1525255589 is_live=1 live_last=1525255589 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:32] <<< STATUS main:buf;23;0;0;0;1127;0;0;10;0;18874368;0;16384
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:32] <<< EVENT livepos last=1525255591 live_first=1525253791 pos=1525255582 first_ts=1525253791 last_ts=1525255591 is_live=1 live_last=1525255591 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:34] <<< STATUS main:buf;23;0;0;0;1059;0;0;10;0;19922944;0;16384
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:34] <<< EVENT livepos last=1525255592 live_first=1525253792 pos=1525255582 first_ts=1525253792 last_ts=1525255592 is_live=0 live_last=1525255592 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:36] <<< STATUS main:buf;33;0;0;0;1048;0;1;11;0;21889024;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:36] <<< EVENT livepos last=1525255595 live_first=1525253795 pos=1525255582 first_ts=1525253795 last_ts=1525255595 is_live=0 live_last=1525255595 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:38] <<< STATUS main:buf;47;0;0;0;1004;0;42;11;0;23068672;0;933888
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:38] <<< EVENT livepos last=1525255596 live_first=1525253796 pos=1525255582 first_ts=1525253796 last_ts=1525255596 is_live=0 live_last=1525255596 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:40] <<< STATUS main:buf;47;0;0;0;1007;0;64;11;0;25165824;0;1507328
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:40] <<< EVENT livepos last=1525255599 live_first=1525253799 pos=1525255582 first_ts=1525253799 last_ts=1525255599 is_live=0 live_last=1525255599 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:41] <<< STATUS main:buf;57;0;0;0;961;0;59;11;0;26214400;0;1523712
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:41] <<< EVENT livepos last=1525255600 live_first=1525253800 pos=1525255582 first_ts=1525253800 last_ts=1525255600 is_live=0 live_last=1525255600 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:43] <<< STATUS main:buf;57;0;0;0;919;0;58;11;0;27262976;0;1622016
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:43] <<< EVENT livepos last=1525255602 live_first=1525253802 pos=1525255582 first_ts=1525253802 last_ts=1525255602 is_live=0 live_last=1525255602 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:45] <<< STATUS main:buf;71;0;0;0;929;0;71;11;0;29360128;0;2015232
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:45] <<< EVENT livepos last=1525255604 live_first=1525253804 pos=1525255582 first_ts=1525253804 last_ts=1525255604 is_live=0 live_last=1525255604 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:47] <<< STATUS main:buf;71;0;0;0;891;0;76;11;0;30408704;0;2260992
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:47] <<< EVENT livepos last=1525255606 live_first=1525253806 pos=1525255582 first_ts=1525253806 last_ts=1525255606 is_live=0 live_last=1525255606 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:49] <<< STATUS main:buf;80;0;0;0;904;0;96;11;0;32505856;0;2850816
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:49] <<< EVENT livepos last=1525255608 live_first=1525253808 pos=1525255582 first_ts=1525253808 last_ts=1525255608 is_live=0 live_last=1525255608 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:51] <<< STATUS main:buf;90;0;0;0;869;0;96;11;0;33554432;0;3063808
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:51] <<< EVENT livepos last=1525255610 live_first=1525253810 pos=1525255582 first_ts=1525253810 last_ts=1525255610 is_live=0 live_last=1525255610 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:52] <<< RESUME
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:52] <<< STATE 2
acehttp.py [LINE:223 ]# INFO [02.05 13:06:52] Streaming "Amedia Hit HD" to 192.168.1.20 finished
aceclient.py [LINE:120 ]# DEBUG [02.05 13:06:52] EVENT stop
aceclient.py [LINE:120 ]# DEBUG [02.05 13:06:52] STOP
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:52] <<< STATE 0
aceclient.py [LINE:283 ]# DEBUG [02.05 13:06:52] Close video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.0358681279164
acehttp.py [LINE:226 ]# WARNING [02.05 13:06:52] Broadcast "Amedia Hit HD" stoped. Last client disconnected
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:52] <<< STATUS main:idle
aceclient.py [LINE:271 ]# DEBUG [02.05 13:06:52] All clients disconnected - broadcast stoped
acehttp.py [LINE:106 ]# INFO [02.05 13:07:05] Accepted connection from 192.168.1.20 path /torrenttv/channel/Amedia Hit HD.mp4
acehttp.py [LINE:107 ]# DEBUG [02.05 13:07:05] Headers: {'accept-language': 'ru,en-us;q=0.7,en;q=0.3', 'accept-encoding': 'gzip,deflate', 'connection': 'close', 'accept': '*/*', 'user-agent': 'VLC/2.1.3 LibVLC/2.1.3', 'accept-charset': 'utf-8;windows-1251;windows-1252;q=0.7,*;q=0.7', 'host': '192.168.1.20:8000', 'icy-metadata': '1'}
acehttp.py [LINE:203 ]# WARNING [02.05 13:07:05] Create a broadcast "Amedia Hit HD"
aceclient.py [LINE:120 ]# DEBUG [02.05 13:07:05] START PID 06175dc01eb499ffcb5f2d12bd4f747e124e36c2 0 output_format=http
aceclient.py [LINE:310 ]# DEBUG [02.05 13:07:05] <<< STATE 1
aceclient.py [LINE:310 ]# DEBUG [02.05 13:07:05] <<< STATUS main:starting
aceclient.py [LINE:310 ]# DEBUG [02.05 13:07:05] <<< STATUS main:prebuf;0;0;0;0;0;0;0;0;0;0;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:07:07] <<< START http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.211077525968 stream=1
aceclient.py [LINE:208 ]# DEBUG [02.05 13:07:07] Open video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.211077525968
aceclient.py [LINE:213 ]# DEBUG [02.05 13:07:07] Get headers from client: {'accept-language': 'ru,en-us;q=0.7,en;q=0.3', 'accept-encoding': 'gzip,deflate', 'connection': 'close', 'accept': '*/*', 'user-agent': 'VLC/2.1.3 LibVLC/2.1.3', 'accept-charset': 'utf-8;windows-1251;windows-1252;q=0.7,*;q=0.7', 'host': '192.168.1.20:8000', 'icy-metadata': '1'}
acehttp.py [LINE:214 ]# WARNING [02.05 13:07:07] Broadcast "Amedia Hit HD" created
acehttp.py [LINE:221 ]# INFO [02.05 13:07:07] Streaming "Amedia Hit HD" to 192.168.1.20 started
aceclient.py [LINE:310 ]# DEBUG [02.05 13:07:07] <<< STATE 2
aceclient.py [LINE:120 ]# DEBUG [02.05 13:07:07] EVENT play
aceclient.py [LINE:120 ]# DEBUG [02.05 13:07:07] EVENT stop
aceclient.py [LINE:120 ]# DEBUG [02.05 13:07:07] STOP
aceclient.py [LINE:310 ]# DEBUG [02.05 13:07:07] <<< STATE 0
aceclient.py [LINE:283 ]# DEBUG [02.05 13:07:07] Close video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.211077525968
acehttp.py [LINE:226 ]# WARNING [02.05 13:07:07] Broadcast "Amedia Hit HD" stoped. Last client disconnected
aceclient.py [LINE:271 ]# DEBUG [02.05 13:07:07] All clients disconnected - broadcast stoped
aceclient.py [LINE:310 ]# DEBUG [02.05 13:07:07] <<< STATUS main:idle
aceclient.py [LINE:106 ]# DEBUG [02.05 13:08:20] Destroying AceStream client.....
aceclient.py [LINE:120 ]# DEBUG [02.05 13:08:20] SHUTDOWN
aceclient.py [LINE:310 ]# DEBUG [02.05 13:08:20] <<< STATE 0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:08:21] <<< SHUTDOWN
aceclient.py [LINE:397 ]# DEBUG [02.05 13:08:21] AceClient destroyed
Code: Select all
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:48] <<< STATUS main:buf;38;0;0;0;1117;0;3;9;0;22020096;0;81920
aceclient.py [LINE:310 ]# DEBUG [02.05 13:05:48] <<< EVENT livepos last=1525255546 live_first=1525253746 pos=1525255535 first_ts=1525253746 last_ts=1525255546 is_live=0 live_last=1525255546 buffer_pieces=9
Code: Select all
acehttp.py [LINE:221 ]# INFO [02.05 13:06:20] Streaming "Amedia Hit HD" to 192.168.1.20 started
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:20] <<< STATE 2
aceclient.py [LINE:120 ]# DEBUG [02.05 13:06:20] EVENT play
acehttp.py [LINE:298 ]# DEBUG [02.05 13:06:20] Sending HTTPAceProxy headers to client: {'Connection': 'Keep-Alive', 'Content-Type': 'application/octet-stream', 'Keep-Alive': 'timeout=15, max=100'}
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:20] <<< STATUS main:dl;0;0;1811;0;0;7;0;5701632;0;0
Code: Select all
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:32] <<< STATUS main:buf;23;0;0;0;1127;0;0;10;0;18874368;0;16384
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:32] <<< EVENT livepos last=1525255591 live_first=1525253791 pos=1525255582 first_ts=1525253791 last_ts=1525255591 is_live=1 live_last=1525255591 buffer_pieces=9
А вот так выглядит лог при воспроизведении VLC на компьютере.
Code: Select all
acehttp.py [LINE:106 ]# INFO [02.05 13:33:32] Accepted connection from 192.168.1.2 path /torrenttv/channel/Amedia Hit HD.mp4
acehttp.py [LINE:107 ]# DEBUG [02.05 13:33:32] Headers: {'connection': 'close', 'host': '192.168.1.20:8000', 'icy-metadata': '1', 'range': 'bytes=0-', 'user-agent': 'VLC/2.2.2 LibVLC/2.2.2'}
torrenttv_plugin.py [LINE:51 ]# INFO [02.05 13:33:37] TTV playlist http://ttv.pp.ua/CID-TTV.m3u downloaded
aceclient.py [LINE:84 ]# DEBUG [02.05 13:33:37] Successfully connected to AceStream on 127.0.0.1:62062
clientcounter.py [LINE:24 ]# DEBUG [02.05 13:33:37] AceClient created
aceclient.py [LINE:120 ]# DEBUG [02.05 13:33:37] HELLOBG version=3
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:38] <<< HELLOTS version=3.1.28 version_code=3012800 key=190ac7e4e1 http_port=6878 bmode=0
aceclient.py [LINE:120 ]# DEBUG [02.05 13:33:38] READY key=n51LvQoTlJzNGaFxseRK-8045d52e180e2a7928dd0ba5f187d6f8531f5b4b
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:38] <<< AUTH 0
aceclient.py [LINE:120 ]# DEBUG [02.05 13:33:38] USERDATA [{"gender": 1}, {"age": 5}]
aceclient.py [LINE:120 ]# DEBUG [02.05 13:33:38] SETOPTIONS use_stop_notifications=1
clientcounter.py [LINE:26 ]# DEBUG [02.05 13:33:38] AceClient initialized
acehttp.py [LINE:203 ]# WARNING [02.05 13:33:38] Create a broadcast "Amedia Hit HD"
aceclient.py [LINE:120 ]# DEBUG [02.05 13:33:38] START PID 06175dc01eb499ffcb5f2d12bd4f747e124e36c2 0 output_format=http
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:38] <<< STATE 1
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:38] <<< STATUS main:starting
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:39] <<< START http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.525391276644 stream=1
aceclient.py [LINE:208 ]# DEBUG [02.05 13:33:39] Open video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.525391276644
aceclient.py [LINE:213 ]# DEBUG [02.05 13:33:39] Get headers from client: {'connection': 'close', 'host': '192.168.1.20:8000', 'icy-metadata': '1', 'user-agent': 'VLC/2.2.2 LibVLC/2.2.2'}
acehttp.py [LINE:214 ]# WARNING [02.05 13:33:39] Broadcast "Amedia Hit HD" created
acehttp.py [LINE:221 ]# INFO [02.05 13:33:39] Streaming "Amedia Hit HD" to 192.168.1.2 started
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:39] <<< STATE 2
aceclient.py [LINE:120 ]# DEBUG [02.05 13:33:39] EVENT play
acehttp.py [LINE:298 ]# DEBUG [02.05 13:33:39] Sending HTTPAceProxy headers to client: {'Connection': 'Keep-Alive', 'Content-Type': 'application/octet-stream', 'Keep-Alive': 'timeout=15, max=100'}
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:40] <<< STATUS main:dl;0;0;1729;0;0;2;0;4947968;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:40] <<< EVENT livepos last=1525257219 live_first=1525255419 pos=1525257211 first_ts=1525255419 last_ts=1525257219 is_live=1 live_last=1525257219 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:42] <<< STATUS main:dl;0;0;2104;0;0;10;0;10485760;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:42] <<< EVENT livepos last=1525257221 live_first=1525255421 pos=1525257220 first_ts=1525255421 last_ts=1525257221 is_live=1 live_last=1525257221 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:44] <<< STATUS main:dl;0;0;1778;0;0;10;0;12582912;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:44] <<< EVENT livepos last=1525257222 live_first=1525255422 pos=1525257220 first_ts=1525255422 last_ts=1525257222 is_live=1 live_last=1525257222 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:44] <<< PAUSE
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:44] <<< STATE 3
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:46] <<< STATUS main:buf;4;0;0;0;1575;0;0;10;0;14434304;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:46] <<< EVENT livepos last=1525257225 live_first=1525255425 pos=1525257220 first_ts=1525255425 last_ts=1525257225 is_live=1 live_last=1525257225 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:48] <<< STATUS main:buf;14;0;0;0;1305;0;0;10;0;14680064;0;0
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:48] <<< EVENT livepos last=1525257227 live_first=1525255427 pos=1525257220 first_ts=1525255427 last_ts=1525257227 is_live=1 live_last=1525257227 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:50] <<< STATUS main:buf;28;0;0;0;1335;0;0;10;0;17825792;0;16384
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:50] <<< EVENT livepos last=1525257229 live_first=1525255429 pos=1525257220 first_ts=1525255429 last_ts=1525257229 is_live=1 live_last=1525257229 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:52] <<< STATUS main:buf;28;0;0;0;1182;0;1;10;0;18284544;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:52] <<< EVENT livepos last=1525257231 live_first=1525255431 pos=1525257220 first_ts=1525255431 last_ts=1525257231 is_live=0 live_last=1525257231 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:54] <<< STATUS main:buf;38;0;0;0;1194;0;1;10;0;20971520;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:54] <<< EVENT livepos last=1525257233 live_first=1525255433 pos=1525257220 first_ts=1525255433 last_ts=1525257233 is_live=0 live_last=1525257233 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:56] <<< STATUS main:buf;57;0;0;0;1173;0;1;10;0;23068672;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:56] <<< EVENT livepos last=1525257235 live_first=1525255435 pos=1525257220 first_ts=1525255435 last_ts=1525257235 is_live=0 live_last=1525257235 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:58] <<< STATUS main:buf;57;0;0;0;1084;0;1;10;0;23576576;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:58] <<< EVENT livepos last=1525257237 live_first=1525255437 pos=1525257220 first_ts=1525255437 last_ts=1525257237 is_live=0 live_last=1525257237 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:00] <<< STATUS main:buf;66;0;0;0;1053;0;1;10;0;25165824;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:00] <<< EVENT livepos last=1525257239 live_first=1525255439 pos=1525257220 first_ts=1525255439 last_ts=1525257239 is_live=0 live_last=1525257239 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:02] <<< STATUS main:buf;66;0;0;0;1069;0;1;10;0;27738112;0;49152
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:02] <<< EVENT livepos last=1525257241 live_first=1525255441 pos=1525257220 first_ts=1525255441 last_ts=1525257241 is_live=0 live_last=1525257241 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:04] <<< STATUS main:buf;80;0;0;0;998;0;1;10;0;28409856;0;49152
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:04] <<< EVENT livepos last=1525257243 live_first=1525255443 pos=1525257220 first_ts=1525255443 last_ts=1525257243 is_live=0 live_last=1525257243 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:06] <<< STATUS main:buf;80;0;0;0;992;0;5;10;0;30408704;0;131072
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:06] <<< EVENT livepos last=1525257244 live_first=1525255444 pos=1525257220 first_ts=1525255444 last_ts=1525257244 is_live=0 live_last=1525257244 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:08] <<< RESUME
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:08] <<< STATE 2
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:08] <<< STATUS main:dl;0;0;995;0;7;10;0;32505856;0;196608
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:09] <<< EVENT livepos last=1525257247 live_first=1525255447 pos=1525257233 first_ts=1525255447 last_ts=1525257247 is_live=0 live_last=1525257247 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:10] <<< STATUS main:dl;0;0;948;0;9;10;0;33554432;0;245760
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:10] <<< EVENT livepos last=1525257248 live_first=1525255448 pos=1525257248 first_ts=1525255448 last_ts=1525257248 is_live=1 live_last=1525257248 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:12] <<< STATUS main:dl;0;0;934;0;8;10;0;35209216;0;245760
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:12] <<< EVENT livepos last=1525257251 live_first=1525255451 pos=1525257250 first_ts=1525255451 last_ts=1525257251 is_live=1 live_last=1525257251 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:14] <<< STATUS main:dl;0;0;899;0;7;9;0;36356096;0;245760
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:14] <<< EVENT livepos last=1525257253 live_first=1525255453 pos=1525257251 first_ts=1525255453 last_ts=1525257253 is_live=1 live_last=1525257253 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:16] <<< STATUS main:dl;0;0;926;0;8;9;0;38797312;0;278528
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:16] <<< EVENT livepos last=1525257255 live_first=1525255455 pos=1525257254 first_ts=1525255455 last_ts=1525257255 is_live=1 live_last=1525257255 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:18] <<< STATUS main:dl;0;0;888;0;7;9;0;39845888;0;278528
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:18] <<< EVENT livepos last=1525257257 live_first=1525255457 pos=1525257255 first_ts=1525255457 last_ts=1525257257 is_live=1 live_last=1525257257 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:20] <<< STATUS main:dl;0;0;901;0;6;9;0;41943040;0;278528
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:20] <<< EVENT livepos last=1525257259 live_first=1525255459 pos=1525257258 first_ts=1525255459 last_ts=1525257259 is_live=1 live_last=1525257259 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:22] <<< STATUS main:dl;0;0;867;0;6;9;0;42991616;0;278528
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:22] <<< EVENT livepos last=1525257261 live_first=1525255461 pos=1525257259 first_ts=1525255461 last_ts=1525257261 is_live=1 live_last=1525257261 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:24] <<< STATUS main:dl;0;0;882;0;7;9;0;45088768;0;311296
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:24] <<< EVENT livepos last=1525257263 live_first=1525255463 pos=1525257262 first_ts=1525255463 last_ts=1525257263 is_live=1 live_last=1525257263 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:26] <<< STATUS main:dl;0;0;849;0;6;9;0;46137344;0;311296
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:26] <<< EVENT livepos last=1525257265 live_first=1525255465 pos=1525257263 first_ts=1525255465 last_ts=1525257265 is_live=1 live_last=1525257265 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:28] <<< STATUS main:dl;0;0;818;0;5;9;0;47185920;0;311296
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:28] <<< EVENT livepos last=1525257267 live_first=1525255467 pos=1525257265 first_ts=1525255467 last_ts=1525257267 is_live=1 live_last=1525257267 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:30] <<< STATUS main:dl;0;0;838;0;13;9;0;49283072;0;475136
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:30] <<< EVENT livepos last=1525257269 live_first=1525255469 pos=1525257269 first_ts=1525255469 last_ts=1525257269 is_live=1 live_last=1525257269 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:33] <<< STATUS main:dl;0;0;808;0;11;9;0;50331648;0;475136
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:33] <<< EVENT livepos last=1525257271 live_first=1525255471 pos=1525257269 first_ts=1525255471 last_ts=1525257271 is_live=1 live_last=1525257271 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:34] <<< STATUS main:dl;0;0;778;0;15;9;0;51380224;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:34] <<< EVENT livepos last=1525257272 live_first=1525255472 pos=1525257272 first_ts=1525255472 last_ts=1525257272 is_live=1 live_last=1525257272 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:36] <<< STATUS main:dl;0;0;752;0;14;9;0;52428800;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:36] <<< EVENT livepos last=1525257276 live_first=1525255476 pos=1525257274 first_ts=1525255476 last_ts=1525257276 is_live=1 live_last=1525257276 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:37] <<< STATUS main:dl;0;0;729;0;13;9;0;53477376;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:37] <<< EVENT livepos last=1525257277 live_first=1525255477 pos=1525257274 first_ts=1525255477 last_ts=1525257277 is_live=1 live_last=1525257277 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:39] <<< STATUS main:dl;0;0;752;0;11;8;0;55459840;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:39] <<< EVENT livepos last=1525257278 live_first=1525255478 pos=1525257277 first_ts=1525255478 last_ts=1525257278 is_live=1 live_last=1525257278 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:42] <<< STATUS main:dl;0;0;732;0;10;8;0;56623104;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:42] <<< EVENT livepos last=1525257280 live_first=1525255480 pos=1525257278 first_ts=1525255480 last_ts=1525257280 is_live=1 live_last=1525257280 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:43] <<< STATUS main:dl;0;0;759;0;9;8;0;58720256;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:44] <<< EVENT livepos last=1525257282 live_first=1525255482 pos=1525257281 first_ts=1525255482 last_ts=1525257282 is_live=1 live_last=1525257282 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:46] <<< STATUS main:dl;0;0;736;0;8;8;0;59768832;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:46] <<< EVENT livepos last=1525257285 live_first=1525255485 pos=1525257282 first_ts=1525255485 last_ts=1525257285 is_live=1 live_last=1525257285 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:48] <<< STATUS main:dl;0;0;764;0;7;8;0;61865984;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:48] <<< EVENT livepos last=1525257286 live_first=1525255486 pos=1525257285 first_ts=1525255486 last_ts=1525257286 is_live=1 live_last=1525257286 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:50] <<< STATUS main:dl;0;0;740;0;7;8;0;62914560;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:50] <<< EVENT livepos last=1525257289 live_first=1525255489 pos=1525257286 first_ts=1525255489 last_ts=1525257289 is_live=1 live_last=1525257289 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:52] <<< STATUS main:dl;0;0;767;0;6;8;0;65011712;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:52] <<< EVENT livepos last=1525257290 live_first=1525255490 pos=1525257289 first_ts=1525255490 last_ts=1525257290 is_live=1 live_last=1525257290 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:54] <<< STATUS main:dl;0;0;744;0;5;8;0;66060288;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:54] <<< EVENT livepos last=1525257293 live_first=1525255493 pos=1525257290 first_ts=1525255493 last_ts=1525257293 is_live=1 live_last=1525257293 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:56] <<< STATUS main:dl;0;0;769;0;5;8;0;68157440;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:56] <<< EVENT livepos last=1525257294 live_first=1525255494 pos=1525257294 first_ts=1525255494 last_ts=1525257294 is_live=1 live_last=1525257294 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:58] <<< STATUS main:dl;0;0;746;0;4;9;0;69206016;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:58] <<< EVENT livepos last=1525257297 live_first=1525255497 pos=1525257294 first_ts=1525255497 last_ts=1525257297 is_live=1 live_last=1525257297 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:00] <<< STATUS main:dl;0;0;771;0;4;9;0;71303168;0;589824
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:00] <<< EVENT livepos last=1525257299 live_first=1525255499 pos=1525257297 first_ts=1525255499 last_ts=1525257299 is_live=1 live_last=1525257299 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:02] <<< STATUS main:dl;0;0;751;0;5;9;0;72466432;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:02] <<< EVENT livepos last=1525257301 live_first=1525255501 pos=1525257299 first_ts=1525255501 last_ts=1525257301 is_live=1 live_last=1525257301 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:04] <<< STATUS main:dl;0;0;772;0;4;9;0;74514432;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:04] <<< EVENT livepos last=1525257303 live_first=1525255503 pos=1525257302 first_ts=1525255503 last_ts=1525257303 is_live=1 live_last=1525257303 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:06] <<< STATUS main:dl;0;0;791;0;4;9;0;76546048;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:06] <<< EVENT livepos last=1525257305 live_first=1525255505 pos=1525257304 first_ts=1525255505 last_ts=1525257305 is_live=1 live_last=1525257305 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:08] <<< STATUS main:dl;0;0;765;0;4;9;0;77627392;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:08] <<< EVENT livepos last=1525257307 live_first=1525255507 pos=1525257305 first_ts=1525255507 last_ts=1525257307 is_live=1 live_last=1525257307 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:10] <<< STATUS main:dl;0;0;787;0;3;9;0;79691776;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:10] <<< EVENT livepos last=1525257309 live_first=1525255509 pos=1525257308 first_ts=1525255509 last_ts=1525257309 is_live=1 live_last=1525257309 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:12] <<< STATUS main:dl;0;0;759;0;3;9;0;80740352;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:12] <<< EVENT livepos last=1525257311 live_first=1525255511 pos=1525257309 first_ts=1525255511 last_ts=1525257311 is_live=1 live_last=1525257311 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:14] <<< STATUS main:dl;0;0;783;0;3;9;0;82837504;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:14] <<< EVENT livepos last=1525257312 live_first=1525255512 pos=1525257312 first_ts=1525255512 last_ts=1525257312 is_live=1 live_last=1525257312 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:16] <<< STATUS main:dl;0;0;759;0;2;9;0;83902464;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:16] <<< EVENT livepos last=1525257315 live_first=1525255515 pos=1525257312 first_ts=1525255515 last_ts=1525257315 is_live=1 live_last=1525257315 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:18] <<< STATUS main:dl;0;0;781;0;2;9;0;85983232;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:18] <<< EVENT livepos last=1525257316 live_first=1525255516 pos=1525257316 first_ts=1525255516 last_ts=1525257316 is_live=1 live_last=1525257316 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:20] <<< STATUS main:dl;0;0;774;0;2;9;0;87408640;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:20] <<< EVENT livepos last=1525257319 live_first=1525255519 pos=1525257318 first_ts=1525255519 last_ts=1525257319 is_live=1 live_last=1525257319 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:22] <<< STATUS main:dl;0;0;786;0;2;9;0;89292800;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:22] <<< EVENT livepos last=1525257321 live_first=1525255521 pos=1525257320 first_ts=1525255521 last_ts=1525257321 is_live=1 live_last=1525257321 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:24] <<< STATUS main:dl;0;0;750;0;1;9;0;90177536;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:24] <<< EVENT livepos last=1525257323 live_first=1525255523 pos=1525257321 first_ts=1525255523 last_ts=1525257323 is_live=1 live_last=1525257323 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:26] <<< STATUS main:dl;0;0;774;0;1;9;0;92274688;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:26] <<< EVENT livepos last=1525257325 live_first=1525255525 pos=1525257324 first_ts=1525255525 last_ts=1525257325 is_live=1 live_last=1525257325 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:28] <<< STATUS main:dl;0;0;776;0;1;9;0;93929472;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:28] <<< EVENT livepos last=1525257327 live_first=1525255527 pos=1525257325 first_ts=1525255527 last_ts=1525257327 is_live=1 live_last=1525257327 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:30] <<< STATUS main:dl;0;0;770;0;1;9;0;95420416;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:30] <<< EVENT livepos last=1525257329 live_first=1525255529 pos=1525257328 first_ts=1525255529 last_ts=1525257329 is_live=1 live_last=1525257329 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:32] <<< STATUS main:dl;0;0;791;0;1;9;0;97452032;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:32] <<< EVENT livepos last=1525257331 live_first=1525255531 pos=1525257329 first_ts=1525255531 last_ts=1525257331 is_live=1 live_last=1525257331 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:34] <<< STATUS main:dl;0;0;818;0;1;9;0;99598336;0;622592
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:34] <<< EVENT livepos last=1525257333 live_first=1525255533 pos=1525257332 first_ts=1525255533 last_ts=1525257333 is_live=1 live_last=1525257333 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:36] <<< STATUS main:dl;0;0;797;0;1;9;0;100827136;0;638976
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:36] <<< EVENT livepos last=1525257335 live_first=1525255535 pos=1525257334 first_ts=1525255535 last_ts=1525257335 is_live=1 live_last=1525257335 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:38] <<< STATUS main:dl;0;0;830;0;10;10;0;103202816;0;819200
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:38] <<< EVENT livepos last=1525257337 live_first=1525255537 pos=1525257336 first_ts=1525255537 last_ts=1525257337 is_live=1 live_last=1525257337 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:40] <<< STATUS main:dl;0;0;827;0;138;11;0;104857600;0;3604480
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:40] <<< EVENT livepos last=1525257338 live_first=1525255538 pos=1525257338 first_ts=1525255538 last_ts=1525257338 is_live=1 live_last=1525257338 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:42] <<< STATUS main:dl;0;0;798;0;169;11;0;105922560;0;4571136
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:42] <<< EVENT livepos last=1525257341 live_first=1525255541 pos=1525257340 first_ts=1525255541 last_ts=1525257341 is_live=1 live_last=1525257341 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:44] <<< STATUS main:dl;0;0;778;0;153;10;0;107151360;0;4587520
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:44] <<< EVENT livepos last=1525257343 live_first=1525255543 pos=1525257341 first_ts=1525255543 last_ts=1525257343 is_live=1 live_last=1525257343 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:46] <<< STATUS main:dl;0;0;789;0;179;11;0;109051904;0;5439488
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:46] <<< EVENT livepos last=1525257344 live_first=1525255544 pos=1525257344 first_ts=1525255544 last_ts=1525257344 is_live=1 live_last=1525257344 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:48] <<< STATUS main:dl;0;0;813;0;225;12;0;111149056;0;6799360
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:48] <<< EVENT livepos last=1525257347 live_first=1525255547 pos=1525257346 first_ts=1525255547 last_ts=1525257347 is_live=1 live_last=1525257347 buffer_pieces=9
acehttp.py [LINE:223 ]# INFO [02.05 13:35:49] Streaming "Amedia Hit HD" to 192.168.1.2 finished
aceclient.py [LINE:120 ]# DEBUG [02.05 13:35:49] EVENT stop
aceclient.py [LINE:120 ]# DEBUG [02.05 13:35:49] STOP
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:49] <<< STATE 0
aceclient.py [LINE:283 ]# DEBUG [02.05 13:35:49] Close video stream: http://127.0.0.1:6878/content/f4e0d60ee9136c30f046a7a51fa82eaf920cd084/0.525391276644
acehttp.py [LINE:226 ]# WARNING [02.05 13:35:49] Broadcast "Amedia Hit HD" stoped. Last client disconnected
aceclient.py [LINE:310 ]# DEBUG [02.05 13:35:49] <<< STATUS main:idle
aceclient.py [LINE:271 ]# DEBUG [02.05 13:35:49] All clients disconnected - broadcast stoped
Code: Select all
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:50] <<< STATUS main:buf;28;0;0;0;1335;0;0;10;0;17825792;0;16384
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:50] <<< EVENT livepos last=1525257229 live_first=1525255429 pos=1525257220 first_ts=1525255429 last_ts=1525257229 is_live=1 live_last=1525257229 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:52] <<< STATUS main:buf;28;0;0;0;1182;0;1;10;0;18284544;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:52] <<< EVENT livepos last=1525257231 live_first=1525255431 pos=1525257220 first_ts=1525255431 last_ts=1525257231 is_live=0 live_last=1525257231 buffer_pieces=9
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:54] <<< STATUS main:buf;38;0;0;0;1194;0;1;10;0;20971520;0;32768
aceclient.py [LINE:310 ]# DEBUG [02.05 13:33:54] <<< EVENT livepos last=1525257233 live_first=1525255433 pos=1525257220 first_ts=1525255433 last_ts=1525257233 is_live=0 live_last=1525257233 buffer_pieces=9
Code: Select all
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:08] <<< RESUME
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:08] <<< STATE 2
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:08] <<< STATUS main:dl;0;0;995;0;7;10;0;32505856;0;196608
aceclient.py [LINE:310 ]# DEBUG [02.05 13:34:09] <<< EVENT livepos last=1525257247 live_first=1525255447 pos=1525257233 first_ts=1525255447 last_ts=1525257247 is_live=0 live_last=1525257247 buffer_pieces=9
Re: ProgTV + HTTPAceProxy + timeout
#10Не нужно мучить mp4. Он работать через торент и не должен. Пробуйте обычные каналы в реальном времени.
Тут acestream попросил клиента остановиться, что бы накопить трафик. надеюсь он проигноривал команду.
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:26] <<< PAUSE
Тут попросить продолжить
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:52] <<< RESUME
А вот что вот это? Файл кончился или ProgTV отвалился?
acehttp.py [LINE:223 ]# INFO [02.05 13:06:52] Streaming "Amedia Hit HD" to 192.168.1.20 finished
Тут acestream попросил клиента остановиться, что бы накопить трафик. надеюсь он проигноривал команду.
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:26] <<< PAUSE
Тут попросить продолжить
aceclient.py [LINE:310 ]# DEBUG [02.05 13:06:52] <<< RESUME
А вот что вот это? Файл кончился или ProgTV отвалился?
acehttp.py [LINE:223 ]# INFO [02.05 13:06:52] Streaming "Amedia Hit HD" to 192.168.1.20 finished
Re: ProgTV + HTTPAceProxy + timeout
#11Прокси отдаёт плей лист с такими ссылками.Не нужно мучить mp4. Он работать через торент и не должен. Пробуйте обычные каналы в реальном времени.
Да абсолютно верно... API движка я тоже изучалТут acestream попросил клиента остановиться, что бы накопить трафик. надеюсь он проигноривал команду.
Тут попросить продолжить
ProgTV команду пауза игнорирует, всё так... а останавливается через несколько секунд с сообщением проверьте соединение. Я специально прокоментировал лог с моментом когда происходят остановки.
На сколько я правильно понял автора прокси - это событие происходит когда клиент определённое время не забирает поток у прокси, и она закрывает соединение и перестает забирать поток у движка.А вот что вот это? Файл кончился или ProgTV отвалился?
Re: ProgTV + HTTPAceProxy + timeout
#12Ну такое ... чтоб не получилось что меня без меня женили .. Внесу ясность ....Prog wrote: ↑Thu Apr 26, 2018 7:22 amСервер действительно не отдаёт трафик по 12-15 секунд, потом ProgTV обновляет соеденение. В принципе такие большие задержки для torrent tv - это нормально. То есть плохая работа самого torrent tv - это нормальное его(!) состояние. Если интересно сделаю версию с более длинным ожиданием.
С другой стороны вы смотрите не поток а mp4 судя по расширению, и это полный треш. Его нужно читать не последовательно а кусками с разных позиций и в условиях torrent tv это очень увлекательно.
На обычных каналах лучше?
1) Тип видеопотока отродясь не определялся "расширением" котрое прилеплено к концу ссылки Я там могу написать ЛЮБОЕ из доступных в природе ... Сделано сие исключительно для логики обработки ссылок самой проксей. Могу написать в конце .ts ... От этого что поменяется содержимое ?
3) ПРОКСЯ (как и движок AceStream) - это web-сервер с заданного порта которого клиент получает http progressive download. Посему можно ли увеличить размер буфера данных в самом сабже, а не только timeout?
3) Прокся ПЕРЕД выдачей потока клиенту отправляет ему заголовки в которых есть ИСЧЕРПЫВАЮЩАЯ информация о том что клиент будет получать ... Если говорить от live трансляции то это ВСЕГДА mpegts с заголовками {'Connection': 'Keep-Alive', 'Content-Type': 'application/octet-stream', 'Keep-Alive': 'timeout=15, max=100'}
4) По поводу "порционности" выдачи потока ... Буквально вчера была сделана небольшая дорабока... От движка поток поступает в промежуточный буфер и все клиенты читают только их этого буфера. Буфер "набивается" только данными ... в нем нет "провалов" . Специально добавлена пауза ожидания данных пока движок "буфферит" и НЕ выдает данные на клиента. Размер буфера - более чем достаточен для live просмотра - 60 сек .... Вариантов чтобы движок буфферил более 60 сек в природе не наблюдалось. Более того при превышении лимита ожидания в 60 сек - я просто принудительно отключаю клиента. Доработка - никак не повлияла на работу с данным сабжем при выбранном OpenMAX .... о чем следующий пункт
5) Меня !joy! тоже озадачил данным плеером .... "Странная" работа с проксей наблюдается исключительно при выбранном OpenMAX , при всех остальных вариантах - все "фельдиперсово" . От себя хочу заметить что вышеозвученный OpenMAX , лично у меня , ведет себя по разному с одними и теми же источниками но на разных девайсах с разными процами ... на RK - совсем "грусть-печалька" ... На аmlogic - отлично . Специфика реализации? Заточенность под определенный тип проца?
6) Самое интересное что прокся имеет встроенную возможность транскодирования потока выдаваемого на клиента в ЛЮБЕ что душа пожелает ... с помощью ffmpeg ...
Например будем считать что движок, а следовательно и прокся криво чего-то выдает ... Перенаправим вывод прокси через ffmpeg
'ffmpeg -i - -map 0 -c:a copy -c:v copy -f mpegts -' . Нет возражение что сей простейшей строкой мы получили "нечто" на вход "трубы", а на выходе имеем mpegts? Так вот возвращаясь к п5 .... при выбранном OpenMAX - НЕ работает ... симптомы и поведение точно такое же как и без "прогона" через ffmpeg
!Joy! можешь подразвлечься и выдать от прокси в контейнере mkv - 'ffmpeg -i - -map 0 -c:v copy -c:a copy -f matroska -' ну или в любом другом ... помогает ? При использовании OpenMAX ?
Можно выдать вообще в деревянном и доисторическом виде 'ffmpeg -i - -c:a mp2 -c:v mpeg2video -f mpegts -qscale:v 2 -' ?
В общем предлагаю совместными усилиями победить траблу Что нужно от прокси - я выдам )))
Re: ProgTV + HTTPAceProxy + timeout
#13Вы автор прокси? Отлично. Ну тогда должны разобраться.
Openmax отличается тем что много трафика набирает в свой буфер, который я не контролирую.
Вопрос, почему нет трафика с прокси так долго? Нет на входе или где то кешируется в прокси? В идеале бы ему работать "байт получил - байт передал" зависимо от pause/resume.
Openmax отличается тем что много трафика набирает в свой буфер, который я не контролирую.
Вопрос, почему нет трафика с прокси так долго? Нет на входе или где то кешируется в прокси? В идеале бы ему работать "байт получил - байт передал" зависимо от pause/resume.
Re: ProgTV + HTTPAceProxy + timeout
#14Да, Dorik1972 автор прокси. Попросил его присоединиться к нашему обсуждению, чтобы не играть в испорченный телефон.
Судя по логу, как я понимаю, происходит следуещееЖ
Прокся забирает поток от движка наполняя свой буфер, одновремено отдавая поток плееру, а тот начинает забирать у нее быстрее чем нужно для воспроизведения, т.к. плеер наполняет свой буффер. А так как асе стрим имеет ограничение на скорость закачки скорость потока+30%, то буфер прокси не успевает наполняться и плеер перестает получать данные.
Вот такие мысли, если что не так сказал, пусть Dorik меня поправит.
Да, прокси тоже кеширует поток, это и позволяет подключаться к ней нескольким клиентам к одному и тому же каналу, тоесть клиенты берут поток не от движка, а из буфера прокси.Вопрос, почему нет трафика с прокси так долго?
Судя по логу, как я понимаю, происходит следуещееЖ
Прокся забирает поток от движка наполняя свой буфер, одновремено отдавая поток плееру, а тот начинает забирать у нее быстрее чем нужно для воспроизведения, т.к. плеер наполняет свой буффер. А так как асе стрим имеет ограничение на скорость закачки скорость потока+30%, то буфер прокси не успевает наполняться и плеер перестает получать данные.
Вот такие мысли, если что не так сказал, пусть Dorik меня поправит.
Re: ProgTV + HTTPAceProxy + timeout
#15Уточните пжлста для понимания мной и проведения тестовProg wrote: ↑Thu May 03, 2018 7:02 amВы автор прокси? Отлично. Ну тогда должны разобраться.
Openmax отличается тем что много трафика набирает в свой буфер, который я не контролирую.
Вопрос, почему нет трафика с прокси так долго? Нет на входе или где то кешируется в прокси? В идеале бы ему работать "байт получил - байт передал" зависимо от pause/resume.
Что такое "набирает много трафика"? Прокся отдает на клиента байт в байт . Причем объем кеша данных может регулироваться пользователем от 1 байта до скольугодно и задается в настройке прокси ... Для того чтобы подобрать или рекомендовать оптимальный размер данных за один цикл чтения/записи надо понимать алгоритм работы OpenMAX ... А именно каков размер входного буфера для данных и с какого момента ожидаем следующую порцию? Сколько он ждет по времени следующей порции данных БЕЗ разрыва соединения? В упрощенном виде прокся читает и отдает данные вот так (именно байт в байт)
Code: Select all
while True:
data = self.video.read(BufferSize) - прчитали данные от движка в заданном объеме
if data : self.wfile.write(data) - отдаем плееру прочитанное