2016-06-22 5 views
0

У меня есть медиа-серверное приложение, реализованное с помощью Wowza (на Linux, Centos). В моем локальном каталоге хранятся некоторые файлы mp4. Я передаю эти файлы всякий раз, когда любой клиент их запрашивает. В какой-то момент все эти файлы необходимо удалить из локального каталога, используя скрипт bash/python. Перед удалением я должен убедиться, что ни один клиент не обращается к видеофайлам. Как я могу узнать, будет ли данный видеофайл потоковым или нет в настоящее время?Как узнать, занят ли конкретный видеофайл (.mp4) или нет?

Я пробовал следующие команды, но не повезло.

1) термоэлемента xyz.mp4

2) Lsof | grep xyz.mp4

Plz, предположим, если вы знаете другую альтернативу.

ответ

0

Это не решение для OS-платформы, а скорее внедряет встроенные HTTPProviders в ваше программное обеспечение Wowza. Если вы запрашиваете следующий URL-адрес:
http://localhost:8086/connectioncounts?flat
Он должен вернуть выход XML, в котором перечислены имена потоков, которые в настоящее время воспроизводятся. Например:

<WowzaStreamingEngine> 
 
<Stream vhostName="_defaultVHost_" applicationName="vod" appInstanceName="_definst_" streamName="sample.mp4" sessionsFlash="0" sessionsCupertino="3" sessionsSanJose="0" sessionsSmooth="0" sessionsRTSP="0" sessionsMPEGDash="0" sessionsTotal="3"/> 
 
</WowzaStreamingEngine>

приведенный выше вывод показывает, что sample.mp4 в настоящее время играет. Опция «flat» упрощает выход. Тогда вам нужно будет только проанализировать потоки.