• Nenhum resultado encontrado

IntroduçãoaVídeoDigital

N/A
N/A
Protected

Academic year: 2021

Share "IntroduçãoaVídeoDigital"

Copied!
30
0
0

Texto

(1)

Introdução a Vídeo Digital e Prática de codificação e

transmissão de vídeo

Carlos Eduardo Coelho Freire Batista e Lincoln David Nery e Silva

Outubro de 2005

Treinamento em Aplicações de Vídeo Digital - RNP

A RNP conta com uma Rede de Vídeo Digital, através da qual é possível ter acesso a um acervo de Vídeo sob Demanda (VoD), além de transmissões Ao Vivo de eventos e canais de televisão. Para que todos os usuários da RNP possam utilizar as ferramentas atreladas aos serviços oferecidos pela Rede de Vídeo Digital, é importante que as equipes de suporte nas instituições conectadas entendam como funciona o serviço. Esse curso inicialmente introduz aspectos gerais de vídeo digital e em seguida são apresentadas as aplicações que viabilizam o serviço, abordando instalação, configuração e operação, além de identificação e solução de problemas relacionados.

(2)

Sumário

1. Persistência da Visão Humana... 3

2. Vídeo ... 4

2.1. Características de um fluxo de vídeo... 4

2.2. Captura e exibição de vídeo ... 5

3. Vídeo Digital ... 7

3.1. Codificação de Vídeo Digital... 7

3.2. Técnicas de compressão de vídeo digital... 8

3.2.1. MPEG-1... 8

3.2.2. MPEG-2... 9

3.2.3. MPEG-4... 9

3.2.4. Windows Media Vídeo (WMV) ...10

3.2.5. Outros Formatos...10

4. Protocolos de Transmissão de Vídeo Digital ...11

4.1. UDP ...11

4.2. RTP, RTSP e RTCP ...11

4.3. HTTP ...11

5. Aplicações de Vídeo Digital ...12

5.1. Vídeo sob Demanda (VoD)...12

5.2. Vídeo ao Vivo ...12

5.3. Videoconferência ...13

6. Práticas de codificação e transmissão de vídeo...14

6.1. VLC...14

6.1.1. Instalação ...14

6.1.2. Codificação e transcodificação de vídeo ...15

6.1.3. Transmissão de vídeo ...19

6.2. Windows Media Encoder ...20

6.2.1. Instalação ...20

6.2.2. Capturando e codificando vídeo ...20

6.2.2. Transmitindo vídeo ao vivo ...26

(3)

1.

Persistência da Visão Humana

De acordo com a teoria da persistência da visão, os processos perceptuais do cérebro ou da retina do olho humano retém uma imagem por uma fração de segundo. Essa característica permitiria que uma série de imagens progressivas projetadas no olho cause a ilusão de movimento, ou seja, ao invés de a mente captar um grupo de imagens se alternando, ela identifica a ilusão do movimento.

O período de tempo (fração de segundo) que uma imagem fica retida na visão é dependente do nível de iluminação da projeção. Com base nesse período, podemos determinar uma freqüência onde a cintilação (flicker) não seja perceptível, ou seja, não se perceba a sobreposição de imagens. Essa freqüência é chamada de Flicker fusion threshold (Ponto inicial de fusão de cintilação, em tradução livre). Esse ponto inicial é estatístico, ou seja, não é um valor absoluto. Há uma faixa de freqüências na qual cada cintilação é percebida ou não, e o ponto inicial é a freqüência onde a cintilação é detectada em 50% das tentativas.

Esse ponto inicial é importante para todas as tecnologias de representação de imagens em movimento, praticamente todas dependem da representação rápida de uma sucessão de imagens (exemplo: quadros em um filme no cinema). Se essa taxa de exibição cai para abaixo do ponto inicial (Flicker fusion threshold) para as condições específicas da exibição em questão, a cintilação vai ser visível ao observador, e os movimentos dos objetos exibidos perderão seu realismo. Para o propósito de apresentação de imagens em movimento, o Flicker fusion threshold humano é geralmente tida como 16 Hz (hertz). Na prática, filmes são geralmente gravados utilizando taxas de 24 fps (quadros por segundo, do inglês frames per second), e câmeras de TV operam entre 25 ou 30 fps, dependendo do sistema de TV em questão.

Entretanto, mesmo utilizando essas taxas, o movimento pode não parecer contínuo, o brilho pode parecer cintilar às vezes. Para alcançar uma margem de erro aceitável, no cinema exibe-se um quadro duas vezes no projetor (48 Hz) e na TV utiliza-se uma técnica chamada entrelaçamento (interlace) que será discutida mais adiante. Os computadores modernos possuem CRTs (Cathode ray tube, tubo de raios catódicos) que possuem usualmente preenchimento vertical utilizando taxas superiores a 60 Hz, e são considerados livres de cintilações.

(4)

2. Vídeo

A palavra “vídeo” vem do latim video (“eu vejo”) e atualmente podemos contextualizar como o objeto de uma tecnologia de processamento de sinais eletrônicos para representação de imagens em movimento. Porém o termo vídeo é utilizado comumente para referenciar um elemento pertencente a um formato de gravação, podendo este elemento ser analógico (uma fita VHS por exemplo) ou digital (um arquivo de vídeo MPEG). Vídeos podem ser capturados utilizando-se câmeras mecânicas (capturando em filmes de celulóide), câmeras de vídeo (capturando sinais elétricos nos formatos PAL ou NTSC, por exemplo) ou câmeras digitais (capturando sinais digitais em DV ou MPEG-4, por exemplo). A palavra vídeo também pode ser utilizada para designar aparelhos de reprodução, tais como videocassetes.

É importante salientar que, para fins desse curso, o suporte a áudio nos vídeos não é desconsiderado, porém a característica de exibição de imagens é tratada com mais ênfase.

2.1.

Características de um fluxo de vídeo

Número de quadros (frames) por segundo – fps (do inglês frames per second, como já visto) ou

frame rate (taxa de quadros).

Entrelaçamento – Vídeos podem ser entrelaçados ou de varredura progressiva. O entrelaçamento de vídeos foi uma técnica inicialmente desenvolvida para alcançar uma boa qualidade de vídeo através de uma estreita largura de banda para transmissão. Cada quadro possui dois campos: um campo contém as linhas ímpares do quadro e o outro campo possui as linhas pares. Os formatos de TV analógica (NTSC, PAL e SECAM) utilizam essa técnica. Nos sistemas progressivos, os quadros são completos (incluem todas as linhas a serem exibidas).

Resolução do Vídeo – é o tamanho de um quadro em linhas (para vídeos analógicos) ou em pixels (para vídeos digitais, um pixel é um ponto da imagem). Por exemplo, o formato SDTV

(Standard-definition television) define seu quadro como possuindo 640x480 pixels (lê-se 640 por 480, largura x

altura).

Aspect Ratio – Relação de aspecto, em tradução livre do inglês. Descreve a relação entre a altura e a largura de um quadro do vídeo. Uma TV analógica convencional possui aspect ratio de 4:3 ou 1.33:1 (largura : altura). Uma TV de alta definição usa aspect ratio de 16:9 ou aproximadamente 1.78:1. Espaço de cores e Bits por pixel – O modelo de cores codifica informações sobre a representação das cores em um vídeo. Podemos citar modelos como o YIQ, utilizado no padrão de TV americano (NTSC). É muito aproximado do YUV, esquema utilizado nas TVs PAL e também do YDbDr, que é o esquema utilizado pelo padrão SECAM.

O número de cores distintas que podem ser representadas por um pixel depende do número de bits por pixel, bpp (bits per pixel).

Qualidade do Vídeo – A qualidade de um vídeo pode ser medida através de métodos formais e métricos como o PSNR (Peak signal-to-noise ratio) ou através de especialistas (MOS - Mean Opinion

(5)

Método de Compressão (apenas para vídeos digitais) – O método (padrão) de compressão utilizado para se codificar um vídeo. Dados referentes à composição de um vídeo possuem redundância espacial e temporal, assim sendo, métodos de compressão podem codificar o vídeo de forma a registrar inteligentemente a informação (diminuindo a redundância, registrando as diferenças), diminuindo assim a carga de dados referentes a um vídeo.

O áudio sincronizado ao vídeo também pode ser comprimido, porém utilizando metodologia diferente, tratando características inerentes ao som (por exemplo, freqüências inaudíveis ao ouvido humano não são registradas e técnicas de sampling também são utilizadas).

Bitrate (apenas para vídeos digitais) – é a medida de velocidade de um fluxo de vídeo. É quantificada utilizando-se a unidade bit/s (bits por segundo ou bps). Bitrates altos significam (na maioria das vezes) melhor qualidade de vídeo. Para maximizar a qualidade do vídeo, alguns padrões de compressão se valem de bitrates variáveis (VBR, variable bitrate). Em cenas onde há muita movimentação dos objetos (por exemplo, uma luta) são usados mais bits. Em cenas onde há pouca movimentação (por exemplo, um telejornal) são utilizados menos bits. Para transmissão de vídeo com limitações de banda (como por exemplo, videoconferências) o bitrate utilizado é constante (CBR,

constante bitrate).

2.2.

Captura e exibição de vídeo

Existem duas técnicas de captura (e, consequentemente, de representação em tela) de vídeo: entrelaçada e de varredura progressiva (progressive scan). Câmeras entrelaçadas varrem uma imagem alternando conjuntos de linhas (Figura 1): linhas pares e ímpares são varridas em momentos diferentes, alternadamente. O conjunto de linhas (pares ou ímpares) é chamado de campo. Dois campos consecutivos e opostos (de diferente paridade, ou seja um par e um ímpar) juntos formam um quadro (frame).

Na varredura progressiva (progressive scan), um quadro inteiro é varrido (para captura ou exibição, Erro! Fonte de referência não encontrada.) na mesma fração de segundo (por exemplo, 1/60 segundos) em que um campo é varrido no método entrelaçado. Câmeras e aparelhos de reprodução com suporte a varredura progressiva tendem a ser mais caros que os de varredura entrelaçada, possuindo mesma taxa de quadros (frames rate).

Figura 1. Na varredura entrelaçada cada quadro é desenhado em dois campos, primeiro linhas ímpares e depois as pares.

(6)

Figura 2. Na varredura entrelaçada cada quadro é desenhado em dois campos, primeiro linhas ímpares e depois as pares.

Na captura do vídeo, a varredura é feita nos pontos de luz canalizados pela lente da câmera para o tonalizador (imager). Um tonalizador é usualmente um CCD (Charge-coupled device) que é um sensor específico para gravação de imagens. O tonalizador, então, converte a luz incidente em sinal elétrico que pode ser armazenado ou manipulado (como já mencionado anteriormente). A reprodução de um vídeo pode ser feita por muitos tipos de dispositivos, que utilizam tecnologias tais como CRT (Cathode

ray tube), tela de plasma, LCD (Liquid Crystal Display, telas de cristal líquido), OLED (Organic Light-emitting diode, diodo de emissão luminosa orgânico), etc. Basicamente esses dispositivos convertem

sinais elétricos de forma a preencher um conjunto de pontos luminosos formando, assim, imagens na tela. O preenchimento desses pontos é feito utilizando-se um dos dois métodos de varreduras apresentados, sendo que alguns dispositivos têm suporte a ambos.

Para captura de áudio utiliza-se um microfone, que basicamente converte ondas sonoras em sinais elétricos. Estes sinais podem ser armazenados de maneira sincronizada ao vídeo analógica ou digitalmente. Na reprodução o processo é invertido, convertendo-se sinais elétricos em som, através de dispositivos eletromecânicos (caixas de som).

(7)

3.

Vídeo Digital

Um vídeo é dito digital quando o sistema de gravação o codifica se valendo apenas de 0s (zeros) e 1s (uns), ou seja, utilizando o alfabeto binário. A representação do vídeo é codificada digitalmente, e não analogicamente. Um vídeo digital é geralmente gravado em uma fita e depois redistribuído em sistemas de armazenamento ótico (atualmente o DVD). Há também a possibilidade de se digitalizar um vídeo analógico, assim como também existem equipamentos que gravam vídeos digitais em outros dispositivos de armazenamento (direto em DVD, em cartões de memória, hard discs, etc).

Classificar um vídeo como digital não determina que este artefato sofreu algum tipo de compressão., simplesmente define que todas as informações relacionadas ao mesmo estão codificadas em alfabeto binário.

3.1.

Codificação de Vídeo Digital

Codificar um vídeo digital significa utilizar um padrão de forma gravar e recuperar um vídeo, digitalmente. Dependendo da qualidade do vídeo, ou seja, da quantidade de informações que serão armazenadas e/ou transmitidas, um vídeo apenas convertido para forma binária pode demandar muita memória (para armazenamento) e largura de banda (para transmissão). Para diminuir essa demanda, faz-se necessária a compressão dos dados de um vídeo.

Existem vários métodos de se comprimir dados digitalmente descritos, porém um vídeo possui características específicas que podem ser exploradas para criação de técnicas mais eficientes de compressão, visando fidelidade quando da recuperação dos dados comprimidos.

Para compressão das imagens de um vídeo, podemos imagina-lo como uma matriz de 3 dimensões de pixels coloridos. Duas dimensões atendem as direções espaciais das imagens e uma dimensão representa o domínio tempo. Dados referentes à descrição de um vídeo possuem redundância espacial e temporal. Assim, um método de codificação inteligente armazena as diferenças em um quadro (redundância espacial) e entre quadros (redundância temporal, Figura 3).

(8)

Para eliminar essas redundâncias e assim diminuir a quantidade de informação armazenada, facilitando armazenamento e transmissão do vídeo, usa-se compressão com perda. Técnicas de compressão de imagens (como a DCT, Discrete Cosine Transform) são aplicadas nos quadros do vídeo a fim de reduzir a redundância espacial (compressão intraquadro) e técnicas como a de compensação de movimento são utilizadas para diminuir a redundância temporal (compressão interquadro).

Para a compressão do áudio em um vídeo técnicas como sampling e quantização são utilizadas, e tem como parâmetro a qualidade do áudio desejada, visto que são técnicas onde informações podem ser perdidas.

3.2.

Técnicas de compressão de vídeo digital

Existem diversos tipos de padrões de compressão de dados, porém podemos classificá-los em duas categorias distintas: padrões de compressão para armazenamento e padrões de compressão para transmissão (streaming). Além disso, alguns métodos de compressão atendem a características específicas de um determinado ambiente (exemplo, vídeo para celulares). Alguns dos parâmetros para avaliação de uma determinada técnica são: carga de processamento (para compressão e descompressão), disponibilidade de memória (para armazenamento ou bufferização), resolução do vídeo (para reprodução em dispositivos compatíveis), etc. A harmonização desses parâmetros define a qualidade de uma técnica. Apresentaremos aqui algumas das técnicas mais utilizadas, principalmente:

 MPEG-1 – utilizada nos VCDs (Video CD), qualidade comparada a de um vídeo armazenado em VHS.

 MPEG-2 – utilizada nos DVDs (Digital Vídeo Disc) além de na maioria das transmissões de TV digital disponíveis.

 MPEG-4 (Parte 2) – padrão MPEG que pode ser utilizado para internet, transmissão, e armazenamento. Possui codificação orientada a objeto.

 WMV – (Windows Media Video) padrão da Microsoft, adaptável para vídeos desde acessíveis pela internet através de conexão discada até vídeos de alta resolução (HD, High Definition). Foi feito baseado no MPEG-4.

Alguns outros padrões também serão brevemente apresentados, tais como DivX, XViD, Theora, RealVideo, etc.

Através desses padrões são desenvolvidos codecs (coder-decoder), que é um programa capaz de efetuar as transformações descritas na definição do padrão.

3.2.1. MPEG-1

O MPEG (Moving Pictures Expert Group) é um grupo de trabalho da ISO (Internation Organization for

Standardization) em parceria com a IEC (International Electrotechnical Comission). Esse grupo de

trabalho foi encarregado pelo desenvolvimento de padrões de codificação de áudio de vídeo. Desde sua primeira reunião em 1988 em Hanover, na Alemanha, o grupo cresceu ao ponto de incluir aproximadamente 350 membros de várias instituições acadêmicas e não acadêmicas.

(9)

O MPEG-1 é utilizado nos VCDs, possuindo qualidade similar à de uma fita VHS. As definições MPEG-1 consistem de algumas partes, são elas: Sincronização e multiplexação de vídeo e áudio,

Codec de compressão para sinais de vídeo não entrelaçados, Codec de compressão para codificação

perceptual de sinais de áudio (dividido em 3 camadas), procedimentos de teste de conformidade e softwares de referência.

O padrão MPEG-1 foi inicialmente desenvolvido para suportar taxas de 1.5M bit/s com resolução de 352 x 240 pixels. Melhorias feitas mais tarde aumentaram a taxa máxima para 4 M bit/s, com intuito de melhoria na qualidade do vídeo. Atualmente o MPEG-1 é o formato mais compatível de vídeo que existe, sendo possível de ser reproduzido em qualquer computador pessoal e tocadores de DVD/VCD. Uma desvantagem do MPEG-1 é o fato de que o padrão suporta apenas varredura progressiva (progressive scan).

3.2.2. MPEG-2

MPEG-2 é tipicamente usado para codificar áudio e vídeo para transmissão, incluindo transmissão via satélite e TV a cabo. MPEG-2, com algumas modificações, também é utilizado para codificar vídeo em DVDs.

MPEG-2 inclui um parte de Sistemas (MPEG-2 Systems, parte 1) que define um mecanismo de transporte (Transport Streams) para transmissão de áudio e vídeo através de mídia não confiável, e esse mecanismo é utilizado nas transmissões (broadcast).

A parte de vídeo das definições MPEG-2 é similar ao MPEG-1, porém também dá suporte à vídeo entrelaçado (formato esse utilizado para transmissão de TV). MPEG-2 não é otimizado para baixas taxas (menos de 1M bit/s), mas supera o MPEG-1 em taxas superiores a 3 M bit/s. Decodificadores com suporte a MPEG-2 também são compatíveis com MPEG-1. O MPEG-2 também é utilizado para codificação de vídeos de alta resolução (HDTV).

A parte 3 das definições (áudio) melhora definições feitas no MPEG-1, permitindo a codificação de programas de áudio com mais de dois canais. A compatibilidade retroativa com decodificadores de áudio MPEG-1 permite que os mesmos decodifiquem os dois canais principais de áudio.

A parte 7 das definições cria a possibilidade de codificação de áudio diferenciada (MPEG-2 AAC, compatibilidade não retroativa).

3.2.3. MPEG-4

MPEG-4 absorveu muitas das características das definições MPEG-1 e MPEG-2 e outros padrões relacionados, adicionando novas funcionalidades tais como o suporte a VRML (Virtual Reality

Modeling Language) para renderização 3D, arquivos compostos orientados a objetos (incluindo áudio,

vídeo e objetos VRML), e vários tipos de interatividade.

A maioria das características encontradas no MPEG-4 foi deixada para desenvolvedores independentes, portanto é provável que não exista nenhuma implementação completa das definições

(10)

MPEG-4. Para flexibilizar o uso das definições, são criados conceitos como perfis (profiles) e níveis (levels), permitindo que um conjunto de definições possa ser utilizado separadamente por aplicações. O uso primário previsto para o MPEG-4 é a transmissão na web (streaming), aplicações conversacionais (vídeo conferência) e transmissões de televisão.

A parte 2 das definições MPEG-4 (Visual) possui mais de vinte perfies, destacando-se dois: o Simple

Profile e o Advanced Simple Profile. O Simple Profile é voltado para dispositivos com baixo poder de

processamento, como celulares. O Advanced Simple Profile é usado como base para compressão de vídeo em codecs como DivX, XviD, WMV, etc.

3.2.4.

Windows Media Vídeo (WMV)

Windows Media Video (WMV) é o nome dado ao conjunto de tecnologias de transmissão e

armazenamento de vídeo da Microsoft, como parte do framework Windows Media. O padrão WMV não foi totalmente desenvolvido com tecnologia da Microsoft. Desde sua versão 7, a Microsoft utilizou uma implementação própria do MPEG-4 Parte 2. O fluxo de vídeo é comumente combinado com um fluxo de áudio Windows Media Audio (WMA).

Arquivos WMV podem ser empacotados utilizando os formatos container AVI (Audio Video Interleave) ou ASF (Advanced Systems Format).

O AVI foi inicialmente desenvolvido pela Microsoft, em 1992, como parte da tecnologia Video for

Windows. Arquivos AVI contém dados tanto de áudio quanto de vídeo, de forma que possam ser

simultaneamente executados. Arquivos AVI podem empacotar vídeo puro (raw, full frames), Motion JPEG (MJPEG), MPEG-4, XviD, DivX, etc.

O ASF é uma tecnologia proprietária da Microsoft, especialmente desenvolvida para transmissão (streaming) de mídia. ASF é parte do Windows Media framework. Esse formato container não especifica como vídeo deve ser codificado, o que significa que basicamente, um ASF pode conter vídeos em qualquer formato (codec).

A Microsoft submeteu a versão 9 do codec para a Society of Motion Picture and Television Engineers (SMPTE) para aprovação como padrão internacional (o nome utilizado para o draft do padrão para revisão foi VC-1). Essa nova versão dá suporte a codificação de vídeos de alta resolução, que a Microsoft chama de WMV HD. Uma versão trial do codec foi disponibilizada pela SMPTE em setembro de 2005.

3.2.5.

Outros Formatos

Alguns outros formatos merecem menção, como o Theora, desenvolvido pela Fundação Xiph.org como parte do projeto Ogg. A fundação Xiph.org desenvolve formatos e ferramentas multimídia de domínio público. Além do Theora, a fundação desenvolveu o Vorbis, formato de compressão de áudio. O QuickTime é uma tecnologia desenvolvida pela Apple Computer, compatível com MPEG-4. O

RealVideo é um codec proprietário desenvolvido pela RealNetworks, cuja finalidade principal é a

(11)

4.

Protocolos de Transmissão de Vídeo Digital 4.1.

UDP

Protocolos de datagrama, como o UDP (User Datagram Protocol), enviam o fluxo de vídeo em uma série de pacotes pequenos, chamados de datagramas. Esse método é simples e eficiente, porém os pacotes podem ser perder ou serem corrompidos em trânsito. Dependendo da extensão da perda, o cliente pode ser capaz de corrigir os dados recepcionados através de técnicas de correção de erros, pode ignorar a perda e continuar o playback do vídeo ou a exibição pode ser interrompida.

4.2.

RTP, RTSP e RTCP

Os protocolos Real-time Transport Protocol (RTP), Real Time Streaming Protocol (RTSP) e Real Time

Control Protocol (RTCP) foram desenvolvidos especialmente para transmissão de mídia. Esses

protocolos em conjunto possuem capacidades de sincronização de áudio e vídeo, monitoração de entrega de pacotes (delivery monitoring), além de oferecer funcionalidades (na forma de comandos RTSP) comumente encontrados em videocassetes (play, pause, stop, etc). Esses protocolos foram desenvolvidos sobre o UDP.

4.3. HTTP

Protocolos mais confiáveis, baseados em TCP (Transmission Control Protocol), garantem a entrega correta de cada bit no fluxo de vídeo. Isso se dá através de mecanismos de controle e validação, de forma que quando há erro na transmissão, uma retransmissão é efetuada. Clientes podem minimizar esse efeito (que aumenta o uso da rede) bufferizando dados, evitando que o fluxo seja interrompido para uma eventual retransmissão.

O HTTP (HyperText Transfer Protocol), que é um protocolo baseado em TCP, é o método primário de comunicação na World Wide Web (WWW). O propósito original era de providenciar uma maneira de se publicar e recuperar páginas HTML (HyperText Markup Language) , porém qualquer tipo de informação pode ser recuperada e transmitida através de HTTP.

HTTP é um protocolo de requisição/resposta entre clientes e servidores. Um cliente HTTP (um navegador web, por exemplo), tipicamente inicia uma requisição estabelecendo uma conexão TCP em uma porta particular (geralmente 80). Um servidor HTTP estaria aguardando requisições nessa porta, sendo essas requisições feitas com uma semântica específica. Uma vantagem de se usar o HTTP é que, muitas vezes, firewalls bloqueiam tráfego de protocolos de datagrama, porém, muito dificilmente o tráfego de informações por meio de HTTP é bloqueado.

(12)

5.

Aplicações de Vídeo Digital 5.1.

Vídeo sob Demanda (VoD)

Um serviço de Vídeo sob Demanda (VoD, do inglês Video on Demand) típico, permite que usuários remotos tenham acesso a uma coletânea de vídeos variados. Tipicamente os arquivos destes vídeos são armazenados em um conjunto centralizado de servidores e distribuídos através de uma conexão de rede de alta velocidade para clientes dispersos geograficamente. Ao receber uma requisição de um cliente, o servidor envia a resposta como um fluxo de vídeo, sem necessidade de sincronização. Para que isso seja possível, é necessária uma infra-estrutura de armazenamento e uma rede de distribuição com banda passante suficiente para que uma transmissão de vídeo contínua seja possível.

Um sistema de VoD é composto basicamente por três entidades: um servidor VoD (que armazena o acervo de vídeos), clientes remotos (que fazem requisições e exibem o conteúdo dos vídeos) e finalmente uma rede de distribuição de conteúdo (responsável por interconectar clientes e servidores). Os sistemas de vídeo sob demanda podem ser classificados de acordo com o grau de interatividade que eles proporcionam, variando desde o sistema de difusão tradicional, que não oferece nenhuma interação ao usuário, até os sistemas totalmente interativos de vídeo sob demanda. A diferença entre essas classes é que quanto menos interativa, mais a aplicação de VoD se assemelha com um convencional sistema de TV a cabo, em que o usuário apenas escolhe o programa, mas não pode exercer nenhuma alteração na exibição do mesmo. Conforme os sistemas ficam mais interativos, a aplicação torna-se semelhante à exibição de um filme no vídeo cassete. A seguir é apresentada uma possível divisão dos tipos de serviço de vídeo que costumam ser citados na literatura:

 Broadcast (No-VOD)

 Pay-Per-View (PPV)

 Quasi Video on Demand (QVOD) ou Near Video on Demand (NVOD)

 Staggered Video on Demand (SVOD)

 Interactive Video on Demand (IVOD)

5.2.

Vídeo ao Vivo

Transmissão de mídias (Streaming media) relaciona-se com o ato de se consumir mídia de alguma fonte. No caso de transmissão de vídeo ao vivo, essa fonte seria uma câmera (webcam ou câmera convencional ligada a uma placa de captura digitalizadora) que capta um evento e repassa para os clientes do serviço.

Formatos utilizados para transmissão ao vivo geralmente são desenvolvidos com base em alguns aspectos inerentes às transmissões. O fato de que um cliente pode acessar uma transmissão em qualquer ponto da mesma (ao contrário de um arquivo, onde o acesso é sempre feito no início do mesmo) cria a necessidade de decodificação de segmentos. Dentro desse contexto também, para viabilizar a sincronização do fluxo (com seus elementos internos, como vídeo e áudio), mecanismos de transporte sinalizado são utilizados, quer seja na forma de protocolos de transmissão ou de sinalização na codificação do vídeo.

(13)

Outros fatores importantes são relacionados à infra-estrutura necessária para transmissão de vídeo ao vivo, o que guia um desenvolvimento que otimize os recursos de rede, processamento e memória, de forma a atingir um maior número de possíveis clientes.

Para evitar o “nivelamento por baixo”, ou seja, que a presença de clientes com pouco poder de processamento ou pouca banda de acesso acabe forçando a transmissão de vídeo de baixa qualidade, muitas vezes uma mesma transmissão é replicada com diferentes taxas de codificação ou é utilizada a chamada “codificação hierárquica”, um mecanismo que divide o vídeo em camadas, permitindo que uma mesma transmissão atinja pontos com diferentes taxas de transmissão, porém quanto maior a quantidade de informações que chega a um determinado cliente, maior a qualidade do vídeo.

5.3.

Videoconferência

A ITU-T, através da recomendação F.730, define um serviço de videoconferência como um serviço de teleconferência audiovisual de conversação interativa que provê uma troca bidirecional, e em tempo real, de sinais de áudio (voz) e vídeo entre grupos de usuários em dois ou mais locais distintos. A ITU-T introduz a seguinte terminologia na sua recomendação F.730:

 Organizador - Quem convoca os participantes para a reunião e faz todos os arranjos necessários.

 Apresentador - Quem controla a informação visual em discussão.

 Membro da audiência - Quem participa da conferência sem ser o apresentador.

 Condutor - Quem gerencia a conferência.

 Unidade de Controle Multiponto (Multipoint Control Unit, MCU) - Equipamento para interconexão

de três ou mais estações.

 Muting - Função que evita que sinais de áudio/vídeo sejam enviados por uma determinada

estação.

Qualquer sistema de videoconferência deve, pelo menos, prover a transmissão das mídias de áudio e vídeo, cuja qualidade define dois tipos de videoconferência, a básica e a de alta qualidade. A videoconferência de alta qualidade fornece uma qualidade de áudio e vídeo similar à difusão de sinais de televisão (CCIR 601, entre outros). A videoconferência básica fornece uma transmissão de sinais de áudio e vídeo com qualidade reduzida (G.711 e H.261, por exemplo).

Sistemas de videoconferência devem poder ser utilizados para várias aplicações onde a comunicação humana através de troca de informações audiovisuais é fundamental. Dentre elas pode-se destacar: Reuniões de negócios (conduzidas ou não); Consultas remotas; Suporte remoto em manutenções técnicas, diagnóstico médico etc.; Tele-educação; Painel de discussões.

(14)

6.

Práticas de codificação e transmissão de vídeo 6.1.

VLC

O VideoLan Client (VLC) é um player de mídia multiplataforma livre e de código aberto. O VLC é capaz de reproduzir diversos formatos de áudio e vídeo como: MPEG-1, MPEG-2, MPEG-4, DivX, mp3, ogg, WMV entre outros; reproduz ainda CD, DVD, VCD e vários protocolos de transmissão. Além disso, pode ser utilizado como servidor de mídia para transmissão unicast ou multicast em IPv4 ou IPv6 em redes de alta velocidade.

6.1.1. Instalação

Para instalar o VLC, basta fazer o download do site http://www.videolan.org e seguir as instruções do

wizard de instalação. As informações nesse documento são baseadas na versão “VLC media player 0.8.2”.

Ao executar o VLC, caso perceba que ele esteja em inglês, siga os passos a seguir para deixar sua interface em português:

1. Vá ao menu “Settings”, clique em “Preferences”, ou utilize o atalho de teclado “Ctrl+S”. 2. Na árvore da esquerda, expanda a opção “Interface” e selecione “General”. Na opção

“Language”, escolha “Brazilian”. Veja figura 4. 3. Clique em “Save” e reinicie o VLC.

(15)

6.1.2.

Codificação e transcodificação de vídeo

Nessa seção você vai aprender como capturar e codificar o vídeo de uma fonte (como câmera ou internet) para um arquivo. Também é possível fazer a transcodificação de um arquivo de vídeo já existente, codificando-o em outro formato.

Passos para codificação/transcodificação:

1.

Na janela inicial do VLC clique no botão “Abrir”, indicado na figura 5.

Figura 5: Botão “Abrir”.

2.

Na janela “Abrir...” será escolhida a fonte para o vídeo a ser codificado. Essa fonte pode ser um arquivo, um disco (CD, DVD, VCD), um fluxo da rede ou um vídeo via DirectShow (uma câmera, microfone), existe uma aba na janela para especificação de cada uma dessas fontes, veja exemplos de cada um desses tipos a seguir:

2.1. Para codificar um vídeo de um arquivo já existente (transcodificar), basta selecionar a aba “Arquivo”, clicar em “Navegar” e escolher o arquivo desejado. Selecione a opção “stream de saída” e clique no botão “Configurações”. Veja figura 6.

2.2. Para codificar de um disco, basta selecionar a aba “Disco”, escolher o tipo de disco e informar qual o dispositivo desejado, capitulo e legendas, por exemplo, caso seja um DVD, veja figura 7. Selecione a opção “stream de saída” e clique no botão “Configurações”.

2.3. Para criar um arquivo de um fluxo da rede (Internet), basta selecionar a aba “Rede”, escolher o protocolo do fluxo e indicar seu endereço. Veja a figura 8 para um exemplo de captura de um vídeo por HTTP do DVoD. Selecione a opção “stream de saída” e clique no botão “Configurações”.

2.4. Para selecionar um fluxo de um dispositivo como câmera ou microfone selecione a aba “DirectShow” e especifique um dispositivo de vídeo e um de áudio. Caso os dispositivos desejados não apareçam nas listas, clique nos botões “Refresh list”. Selecione a opção “stream de saída” e clique no botão “Configurações”. Veja exemplo na figura 9.

3.

Na janela “stream de saída” selecione a opção “Arquivo” e defina um arquivo para salvar o vídeo. Defina ainda um método para encapsulação e os codecs de áudio e vídeo, tais parâmetros estão intimamente ligados a extensão do arquivo, pois eles definem o formato do vídeo. Veja figura 10 para um arquivo MPEG-4, e a figura 11 para um arquivo MPEG-2.

(16)

Figura 6: Selecionando um arquivo para transcodificação.

(17)

Figura 8: Configurando um fluxo da Internet.

(18)
(19)

Figura 11: Exemplo de parâmetros para capturar vídeo MPEG-2.

6.1.3.

Transmissão de vídeo

Nessa seção você vai saber como capturar e transmitir o vídeo de uma fonte (como câmera ou arquivo) para a Internet. Também é possível fazer a retransmissão de um vídeo recebido da Internet, codificando-o em outro formato.

Para transmitir vídeo você deve seguir os mesmos passos descritos na seção “5.1.3 – Codificação e Transcodificação de vídeo”, substituindo apenas o passo de número 3:

3. Na janela “stream de saída” selecione o protocolo de transmissão e defina seus parâmetros, por exemplo HTTP na porta 8080. Defina ainda um método para encapsulação e os codecs de áudio e vídeo, tais parâmetros definem o formato do vídeo. Veja exemplo figura 12 para transmitir MPEG-4 com qualidade média.

Para assistir o vídeo por HTTP configurado nesse exemplo bastaria abrir a URL em outro VLC: http://ip_vlc_transmissao:8080/

(20)

Figura 12: Exemplo de parâmetros para transmissão de vídeo MPEG-4.

6.2.

Windows Media Encoder

O Windows Media Encoder (WME) ou “Codificador do Windows Mídia” é o codificador de vídeo da Microsoft para o Windows. O WME codifica vídeos apenas no formato Windows Media Vídeo (WMV), sendo possível converter arquivos de vídeo em outros formatos para o WMV, captura de vídeo para um arquivo WMV ou ainda fazer transmissões ao vivo. O WME transmite por HTTP.

6.2.1. Instalação

Para instalar o WME, procure pelo “Codificador do Windows Media” no site da Microsoft. As informações nesse documento são baseadas na versão “Codificador do Windows Media 9 Series”. 6.2.2.

Capturando e codificando vídeo

Nessa seção você vai aprender como capturar e codificar o vídeo de uma fonte (como câmera ou internet) para um arquivo.

(21)

Passos para captura e codificação:

1.

Ao abrir o WME a janela “Nova Sessão” será apresentada, caso isso não ocorra, clique no botão “Nova Sessão” na barra de ferramentas.

2.

Na janela “Nova Sessão” selecione “Capturar áudio ou vídeo” e clique “OK”. Veja figura 13.

Figura 13: Sessão para captura de áudio e/ou vídeo.

3.

Na sessão “Opções de Dispositivo” indique os dispositivos de áudio e vídeo a serem utilizados, clique nos botões “Configurar...” caso seja necessário fazer alguma configuração especifica. Ao concluir clique “Avançar”. Veja figura 14.

(22)

Figura 14: Sessão para captura de áudio e/ou vídeo.

4.

Na sessão “Arquivo de saída” escolha o arquivo onde será armazenado o vídeo capturado e codificado e clique “Avançar”. Veja figura 15.

5.

Na sessão “Distribuição de Conteúdo” defina o formato do arquivo, de acordo com a maneira que ele será distribuído. Prefira a opção “Servidor do Windows Media (fluxo contínuo)”, conforme figura 16. Clique “Avançar” ao concluir.

(23)

Figura 15: Definir arquivo de saída.

Figura 16: Formato distribuição.

6.

Na sessão “Opções de Codificação” será definido a taxa de codificação para vídeo e áudio. A taxa de codificação limita a qualidade do vídeo. A codificação mostrada na figura 17 apresenta uma boa qualidade. Ao concluir a configuração, clique “Avançar”.

7.

Na sessão “Informações para Exibição” informe os dados sobre o conteúdo do arquivo, clique “Avançar” ao concluir. Veja figura 18.

(24)

8.

Na sessão “Revisão das Configurações” é apresentada as configurações realizadas. Selecione a opção “Iniciar a captura quando eu clicar em concluir” e clique em “Concluir” (veja figura 2.3.2.7). A captura será então iniciada.

Figura 17: Taxas de codificação.

(25)

Figura 2.3.2.7: Concluir e iniciar.

9.

Na janela principal do WME selecione a opção “Exibir: Ambos” e veja o vídeo capturado e o vídeo codificado. Para parar a codificação clique no botão “Parar”. Veja figura 2.3.2.8.

(26)

Figura 2.3.2.8: Janela principal.

6.2.2.

Transmitindo vídeo ao vivo

Nessa seção você vai aprender como capturar, codificar e transmitir ao vivo o vídeo de uma fonte (como câmera ou internet) para a Internet.

Passos para captura e codificação:

1.

Ao abrir o WME a janela “Nova Sessão” será apresentada, caso isso não ocorra, clique no botão “Nova Sessão” na barra de ferramentas.

2.

Na janela “Nova Sessão” selecione “Transmitir um evento ao vivo” e clique “OK”. Veja figura 2.3.3.1.

(27)

Figura 2.3.3.1: Sessão para transmissão ao vivo.

3.

Na sessão “Opções de Dispositivo” indique os dispositivos de áudio e vídeo a serem utilizados, clique nos botões “Configurar...” caso seja necessário fazer alguma configuração especifica. Ao concluir clique “Avançar”. Veja figura 14.

4.

Na sessão “Método de Difusão” você deve escolher a forma como o WME distribuirá o vídeo. Devemos usar o WME como servidor, escolhendo a opção “Recepção do codificador”, conforme indicado na figura 19. Ao concluir clique “Avançar”.

5.

Na sessão “Conexão de Difusão” é configurado o método de difusão selecionado no passo 4. No nosso caso, devemos configurar a porta HTTP do WME, escolha “8080”, ou outra desejada, clicando “Avançar” ao concluir. Veja figura 20.

6.

Na sessão “Opções de Codificação” será definido a taxa de codificação para vídeo e áudio. A taxa de codificação limita a qualidade do vídeo. A codificação mostrada na figura 17

apresenta uma boa qualidade. Ao concluir a configuração, clique “Avançar”.

7.

Na sessão “Arquivo Morto” você pode escolher um arquivo onde será arquivada a transmissão. Caso deseje fazê-lo, escolha um arquivo, como indicado na figura 21. Ao concluir clique “Avançar”.

8.

Na sessão “Incluir Arquivos de Vídeo” pode ser escolhido arquivos adicionais à transmissão. Para compatibilidade com os servidores da RNP escolha “Não”, como mostrado na figura 2.3.3.5 e clique “Avançar”.

9.

Na sessão “Informações para Exibição” informe os dados sobre o conteúdo da transmissão, clique “Avançar” ao concluir. Veja figura 18.

10.

Na sessão “Revisão das Configurações” é apresentada as configurações realizadas. Selecione a opção “Iniciar a difusão quando eu clicar em concluir” e clique em “Concluir” (veja figura 2.3.2.7). A transmissão será então iniciada.

11.

Na janela principal do WME selecione a opção “Exibir: Ambos” e veja o vídeo capturado e o vídeo codificado. Para parar a transmissão clique no botão “Parar”. Veja figura 2.3.2.8.

(28)

Figura 19: Método de difusão.

(29)

Figura 21: Escolhendo arquivo para armazenar a transmissão.

(30)

6.

Referências

Vários artigos da WikiPedia (http://en.wikipedia.org), com destaque para: • http://en.wikipedia.org/wiki/Film

• http://en.wikipedia.org/wiki/Video • http://en.wikipedia.org/wiki/Digital_video • http://en.wikipedia.org/wiki/Video_compression

Vídeo da Figura 3: http://www.cc.gatech.edu/gvu/animation/Areas/humanMotion/runner.html Referência MPEG-4: http://www.chiariglione.org/mpeg/standards/mpeg-4/mpeg-4.htm VideoLan: http://www.videolan.org

Windows Media Technologies: http://www.microsoft.com/windowsmedia/

MA, H., SHIN, K. G.. Multicast Video-on-Demand Services. In: ___. ACM Computer Communication Review. vol. 32, no. 1, Janeiro, 2002.

Pinho, L. B., Ishikawa, E., and Amorim, C. L.. Glove : A distributed environment for scalable video-on-demand systems. In: ___. International Journal of High Performance Computing Applications, vol. 17 n.2. Sage Publications, Maio, 2003.

Referências

Documentos relacionados

-Refere ainda que garantir o controlo sobre os processos subcontratados não absolve a organização da responsabilidade do cumprimento dos requisitos do cliente, regulamentares

Bahia (GGB) mapeou que em 2010 mais de 200 pessoas foram assassinadas em razão da orientação sexual. Este número estava em ascendência desde 2008 e 2009, quando 190 e 198

Monitor Produtor 1 Produtor 2 Produtor 3 Consumidor 1 Consumidor 2 FilaCheia FilaVazia wait() signal() wait() signal() Monitor Fila Procedure inserir Procedure remover

Em um bom sorvete, go- tas de gordura, bolhas de ar e cristais de gelo são igual- mente dispersos em uma es- pessa solução de açúcar para formar a matriz semi-sólida,

Toxicidade para órgãos-alvo específicos – exposição repetida: Não é esperado que o produto apresente. toxicidade ao órgão-alvo específico por

Modeladora  –   Equipamento profissional para indústria alimentícia destinado à. modelar massas pela sua passagem entre

A Figura 51 apresenta a tela de Autorização Remota de Vendas do módulo de Gestão Administrativa, e destaca a opção “Autorizado”, para quando o usuário com maior limite

Em “Dados dos X-STRs – Outras Informações” são apresentados vários dados dos marcadores, tais como: outros nomes conhecidos para estes, identificação em