Gerenciar a reprodução de vídeo

Os controles de reprodução cumprem com as normas do RTSP e com a Especificação de Transmissão ONVIF.

Resumo da gravação

Você pode obter uma visão geral de todos os vídeos gravados disponíveis no dispositivo usando o comando GetRecordingSummary. Isso não é necessário, mas fornece informações úteis antes de realizar uma pesquisa.

Você pode usar GetRecordingSummary e/ou GetMediaAttributes para obter a marcação de tempo da primeira e da última gravação, mas você deve primeiro ativar a definição Usar configurações de câmeras na guia Configurações avançadas no plug-in Milestone ONVIF Bridge no XProtect Management Client.

ONVIF Bridge_Use camera configurations

Gere um proxy para o serviço RecordingSearch usando o ponto final retornado pelo GetServices. Gere objetos de solicitação e resposta, em seguida, chame GetRecordingSummary.

SearchBindingProxy searchProxy( &soapSearch );

std::string searchEndpoint = "http://" + host + "/onvif/recording_search_service";

_tse__GetRecordingSummary tse__GetRecordingSummary;

_tse__GetRecordingSummaryResponse tse__GetRecordingSummaryResponse;

result = searchProxy.GetRecordingSummary( searchEndpoint.c_str(), NULL,

&tse__GetRecordingSummary, &tse__GetRecordingSummaryResponse );

Pesquisar gravações

O método do serviço de pesquisa FindRecordings inicia uma pesquisa assíncrona na câmera. FindRecordings retorna um token que faz referência aos resultados da pesquisa. Mesmo que exista apenas uma gravação disponível, uma pesquisa é a maneira correta de obter uma referência para essa gravação.

Envie uma solicitação FindRecordings com os seguintes parâmetros obrigatórios:

Por exemplo:

boolean(//Track[TrackType = “Video”]),2016-12-06T08:07:43Z,99999999,20,99999999,20

Você receberá uma resposta com um SearchToken, que é exclusivo para os critérios de pesquisa.

Passe o SearchToken para GetRecordingSearchResults e você receberá uma lista com todas as faixas correspondentes ao critério de pesquisa.

Iniciando a reprodução

Quando estiver visualizando uma reprodução de vídeo, a velocidade padrão é 1 (reprodução normal na direção de avanço).

A reprodução é iniciada por meio do método Reprodução do RTSP. Um intervalo pode ser especificado. Se nenhum intervalo for especificado, o fluxo é reproduzido do início até o final ou, se o fluxo for pausado, é retomado do ponto em que foi parado. Neste exemplo, "Intervalo: npt=3-20" instrui o servidor de RTSP para iniciar a reprodução a partir do terceiro segundo até o vigésimo segundo.

Por exemplo:

REPRODUZIR rtsp://basic:basic@bgws-pvv-04:554/vod/943ffaad-42ser-4584-bc2c-c8238ed96373 RTSP/1.0

CSeq: 123

Sessão: 12345678

Necessário: onvif-replay

Intervalo: npt=3-20

Controle de Frequência: nenhum

Reprodução em recuo

Os dispositivos ONVIF PODEM suportar a reprodução em recuo. A reprodução em recuo é indicada utilizando o campo da plataforma Escala com um valor negativo. Por exemplo, para reproduzir em recuo sem perda de dados, um valor de -1,0 seria usado.

O Milestone ONVIF Bridge suporta os valores [-32 : 32].

REPRODUZIR rtsp://basic:basic@bgws-pvv-04:554/vod/943ffaad-42ser-4584-bc2c-c8238ed96373 RTSP/1.0

CSeq: 123

Sessão: 12345678

Necessário: onvif-replay

Intervalo: relógio=20090615T114900.440Z

Controle de Frequência: nenhum

Escala: -1.0

Mudança de velocidade

A velocidade é controlada pela plataforma do Controle de Frequência do RTSP. Se "Controle de Frequência=sim", então o servidor está no controle da velocidade de reprodução. O fluxo é entregue em tempo real usando os mecanismos de temporização padrão do RTP. Se "Controle de Frequência=Não", então o cliente está no controle da velocidade de reprodução. A reprodução com frequência controlada normalmente será utilizada apenas por não clientes ONVIF específicos porque eles não irão especificar "Controle de Frequência=Não".

Para controlar a velocidade da reprodução em um cliente, use os controladores fornecidos. Por exemplo, com o media player VLC, selecione Reprodução > Velocidade > Mais rápido ou Mais lento. Isso aumenta ou diminui a velocidade em 0,5.

Fim mais rápido e Fim mais lento alteram a velocidade em 0,25.

Gerenciar a reprodução do media player VLC com entradas na linha de comando

Você pode gerenciar a reprodução de vídeos no media player VLC usando linhas de comando. Consulte Ajuda da linha de comando VLC para obter detalhes.

Estes comandos permitem, por exemplo, inverter a reprodução e alterar a hora de início da reprodução.

Um exemplo típico de uma linha de comando:

>vlc.exe --frequência=-1.0 --hora-de-início=3600 "rtsp://basic:basic@bgws-pvv-04:554/vod/943ffaad-42be-4584-bc2c-c8238ed96373"

Onde:

A seguir, estão os controles de reprodução para o media player VLC:

entrada-repetir=

<integer [-2147483648 .. 2147483647]>

Repetições de entrada

Número de vezes que a mesma entrada será repetida

hora-de-início=

<float>

Hora de início

O fluxo vai começar nesta posição (em segundos)

hora-do-fim=

<float>

Hora do fim

O fluxo irá parar nesta posição (em segundos)

tempo-de-execução=

<float>

Tempo de execução

O fluxo será executado nesta duração (em segundos)

busca--rápida-pela-entrada

nenhuma-busca-rápida-pela-entrada

Busca rápida (padrão desativado)

Favorecer a velocidade sobre a precisão durante a busca

frequência=

<float>

Vel. de reprodução

Isto define a velocidade de reprodução (a velocidade nominal é de 1,0)

lista-de-entrada=

<string>

Lista de entrada

Você pode dar uma lista de entradas separadas por vírgula que serão concatenadas juntas após a normal

entrada-escravo=

<string>

Entrada escravo (experimental)

Isto permite a reprodução a partir de várias entradas ao mesmo tempo. Este recurso é experimental, nem todos os formatos são suportados. Use uma lista de entradas separadas por '#'

marcadores=

<string>

Lista de marcadores para um fluxo

Você pode dar manualmente uma lista de marcadores para um fluxo na forma "{name=bookmark-name,time=optional-time-offset,bytes=optional-byte-off set},{...}"

© 2019 Milestone Systems A/S