Changes

Jump to: navigation, search

Engine API

6,475 bytes added, 18:09, 11 April 2016
Настройки транскодирования
Начать проигрывание acemedia-файла c:\acestream\test.acemedia:
START EFILE file%3A%2F%2F%2Fc%3A%5Cacestream%5Ctest.acemedia
</nowiki></tt>
 
======<span id="transcode_settings"></span>Настройки транскодирования======
Начиная с версии 3.1.5 есть возможность задавать формат вывода потока и параметры транскодирования аудио.
* <tt>''output_format=hls|http''</tt>: формат вывода потока
* <tt>''transcode_audio=0|1''</tt>: транскодировать все аудио в AAC
* <tt>''transcode_mp3=0|1''</tt>: транскодировать MP3 (данная опция применима только если transcode_audio=1)
* <tt>''transcode_ac3=0|1''</tt>: транскодировать только AC3 в AAC (данная опция применима только если transcode_audio=0)
 
:В версии 3.1.5 данные настройки касаются только live-потоков.
:Если оригинал потока вещается в формате HLS, то формат вывода будет HLS независимо от настроек.
:Настройки транскодирования аудио влияют только на выдачу в формате HLS (по HTTP всегда выдается оригинальный поток)
:Если настройки формата вывода или транскодирования не передаются в команде <tt>START</tt>, то используются настройки, заданные пользователем на движке
 
;Примеры:
<tt><nowiki>Запустить в формате HLS:
>> START PID 1ccf192064ee2d95e91a79f91c6097273d582827 0 output_format=hls
 
Запустить в формате HLS, транскодировать все аудио-кодеки в AAC:
>> START PID 1ccf192064ee2d95e91a79f91c6097273d582827 0 output_format=hls transcode_audio=1 transcode_mp3=1
 
Запустить в формате HLS, транскодировать все аудио-кодеки, кроме MP3, в AAC:
>> START PID 1ccf192064ee2d95e91a79f91c6097273d582827 0 output_format=hls transcode_audio=1 transcode_mp3=0
</nowiki></tt>
<<SHUTDOWN</tt>
===Ошибка запуска воспроизведения, отсутствует необходимая платная опцияproxyServer===остановить загрузку контента<div id="example-missing-option-on-start"></div>В этом примере описана ситуация, когда движок не может начать воспроизведение, так как для этого требуется наличие у пользователя активированной платной опции. В случае отсутствия платной опции необходимо уведомить пользователя о необходимости приобрести данную опцию. Это может сделать либо клиент, либо движок. Если клиент хочет самостоятельно уведомить пользователя, он должен сообщить движку о готовности получать событие <tt>download_stopped</tt> с помощью команды <tt>SETOPTIONS</tt>. Если клиент этого не сделал, то движок самостоятельно уведомит пользователя (открыв окно либо страницу в браузере). Первый пример описывает ситуацию, когда клиент не хочет уведомлять пользователя (в этом сценарии уведомление пользователю выдаст движок): рукопожатие <tt>>>STOPHELLOBG version=3 <<HELLOTS version=3.1.1 version_code=3003400 key=5eb1f78f http_port=6878 >>READY key=123456-fd2a247d83adffed56d82cca150d5fab225f1408 <<AUTH 5</tt> старт воспроизведения <tt>>>START PID c894b23a65d64a0dae2076d2a01ec6bface83b01 0 <<STATE 1 <<STATUS main:starting</tt> ошибка старта <tt><<STATE 0 <<STATUS main:idle <<STATUS main:err;0;You need to buy Proxy Server option to continue</tt> Второй пример описывает ситуацию, когда клиент хочет уведомлять пользователя: рукопожатие <tt>>>HELLOBG version=3 <<HELLOTS version=3.1.1 version_code=3003400 key=5eb1f78f http_port=6878 >>READY key=123456-fd2a247d83adffed56d82cca150d5fab225f1408 <<AUTH 5 >>SETOPTIONS use_stop_notifications=1</tt> старт воспроизведения <tt>>>START PID c894b23a65d64a0dae2076d2a01ec6bface83b01 0 <<STATE 1 <<STATUS main:starting</tt> ошибка старта <tt><<EVENT download_stopped reason=missing_option option=proxyServer <<STATE 0 <<STATUS main:idle</tt> ===Воспроизведение прервано, так как отсутствует необходимая платная опция proxyServer=== Этот сценарий отличается от предыдущего тем, что воспроизведение начинается, но через некоторое время после старта останавливается по причине отсутствия платной опции. рукопожатие <tt>>>HELLOBG version=3 <<HELLOTS version=3.1.1 version_code=3003400 key=5eb1f78f http_port=6878 >>READY key=123456-fd2a247d83adffed56d82cca150d5fab225f1408 <<AUTH 5 >>SETOPTIONS use_stop_notifications=1</tt>
разорвать соединениестарт воспроизведения <tt>>>SHUTDOWNSTART PID c894b23a65d64a0dae2076d2a01ec6bface83b01 0 <<SHUTDOWNSTATE 1 <<STATUS main:starting <<STATUS main:prebuf;0;0;0;0;8;0;0;1;0;16384;0;0 <<START http://127.0.0.1:6878/content/6d12f958332ef0bd258053ba1afd833ddf9b74f9/0.289607197304 stream=1 <<STATE 2</tt>
некоторое время воспроизведения идет без остановки <tt><<STATUS main:dl;0;0;832;0;0;1;0;2392064;0;0 <<EVENT livepos last=1448977939 live_first=1448976139 pos=1448977939 &crarr; first_ts=1448976139 last_ts=1448977939 is_live=1 live_last=1448977939 buffer_pieces=15 <<STATUS main:dl;0;0;1339;0;8;3;0;5242880;0;65536 <<EVENT livepos last=1448977939 live_first=1448976139 pos=1448977939 &crarr; first_ts=1448976139 last_ts=Воспроизведение прервано, так как отсутствует необходимая платная опция1448977939 is_live=1 live_last=1448977939 buffer_pieces=15остановить загрузку контента <<STATUS main:dl;0;0;1165;0;18;3;0;5767168;0;163840 <tt>>>STOP<EVENT livepos last=1448977941 live_first=1448976141 pos=1448977941 &crarr; first_ts=1448976141 last_ts=1448977941 is_live=1 live_last=1448977941 buffer_pieces=15 <<STATE STATUS main:dl;0;0;396;0;175;4;0;35127296;0;10534912 <<EVENT livepos last=1448978010 live_first=1448976210 pos=1448978010 &crarr; first_ts=1448976210 last_ts=1448978010 is_live=1 live_last=1448978010 buffer_pieces=15</tt>
разорвать соединениеостановка воспроизведения <tt>>>SHUTDOWN<<EVENT download_stopped reason=missing_option option=proxyServer <<STOP <<STATE 0 <<STATUS main:idle <<SHUTDOWNSTATUS main:err;0;Download stopped</tt>

Navigation menu