You are on page 1of 65

PRÓLOGO

O DESAFIO DA CRIATIVIDADE
Base de Utilizadores
Possibilidades Criativas
Uma descrição de senso comum de multimedia pode ser: A capacidade de combinar as
possibilidades criativas da rádio e televisão, jornais, livros, revistas, filmes animados e discos de
música, num conjunto de ficheiros de computador acessíveis pela mesma peça de software para
proporcionar uma experiência integrada semelhante, onde as entradas do utilizador dentro de
certos limites, determina a maneira na qual o material é acessado. É pois interactivo.
Tem um grande poder criativo.
Interactividade
A mudança de formas analógicas lineares para estruturas criativas não-lineares digitais será
gradual.
Vinho Velho em Garrafas Novas
Editores digitais não-lineares são agora usados para criar narrativas lineares tradicionais, mas
este filme é digitalizado e editado não linearmente.
Mas ensinar crianças a ler usando livros multimedia falantes correndo num computador que
regista o seu progresso adiciona um valor e cria uma nova ordem de experimentação.
A enciclopédia.
O conteúdo é fundamental para novas capacidades tais como arquitectura da informação. Deste
ponto de vista, a produção ultimedia é mais como a feitura de um filme.
Igualmente, o papel da profissão de designer gráfico no desenvolvimento multimedia, não deve
ser substimado, tendo sido movidos para o domínio audio-visual, o que constitui um enorme
desafio para a profissão.
Investigação e Multimedia
Teóricos culturais, muitos dos quais nunca tentaram praticar o fenómeno acerca do qual falam.
Mas jovens que trabalham individualmente ou em grupo, criam uma indústria de sucesso onde tal
trabalho inventivo de pequena escala é muito difícil. Comunidades virtuais podem formar-se
rapidamente.
O crescimento do media digital é facilitado parpopriadamente pela velocidade de comunicação
permitida hoje.
E crescerão num virtualmente infinito nº de maneiras.
Taxonomia do Multimedia
O livro de referência, seja diconário ou enciclopédia; o atlas multimedia; Museus virtuais.
Educação é uma área onde o potencial de desenvolvimento é enorme. existe já muita coisa mas
de forma rudimentar, mas infinitas possibilidades mantêm-se para ser realizadas.
Jogos de computador – alguns destes utilizadores seguirão e tornar-se-ão criadores sofisticados
de produtos multimedia, que advirá da sua experiência como jogadores.
Em termos de aplicações para adultos, não há multimedia equivalentes aos killer applications, não
há paradigma criado, ainda.
Conclusão
A criatividade analógica deve enformar a tecnologia digital. Aqueles que usam algum media de
comunicação, novo ou vleho, digital ou analógico, devem ter algo de interessante e que valha a
pena, para dizer.
CAP. 1 INTRODUÇÃO
A escura e tempestuosa noite pode ser representada em diferentes media; cada qual nos conta a
história através de diferentes meios, apellando a diferentes sentidos. Uma das visões chave em
computadores é que todos esses media podem ser representados digitalmente, como uma
colecção estruturada de bits, e podem depois ser manipulados por programas em computador,
guardados em discos e outros dispositivos de armazenamento, e transmitidos sobre redes. A sua
representação digital partiçhada significa que diferentes media podem ser combinados naquilo
que é pobremente chamdo de multimedia.
A integração dos media é natural – tal como percebemos o mundo.
O que distingue o multimedia digital das prévias formas de combinar os media? É o facto de que
os bits que representam texto, som, imagens, etc. poderem ser tratados como dados pelos
programas de computador.
O multimedia digital pode ser interactivo.
Diferentes opções de interface podem ser oferecidas para utilizadores com diferentes gostos e
necessidades.
CONTEXTO HISTÓRICO
Mas, na escala de tempo das mudanças culturais, o multimedia chegou há muito pouco.
Mais tarde, tudo o que não fosse um écran de cinema para projectar um filme, era dado como
excêntrico.
Como o cinema adoptou as mesmas formas do texto dos jornais, da mesma forma, o multimedia
ainda adopta o formato dos anteriores media. O exemplo mais óbvio é a enciclopédia.
No multimedia, parte do que presentemente falta é uma real compreensão de como podemos tirar
vantagens do facto do multimedia digital ser dados, integrar a apresentação do multimedia com a
computação.
TERMINOLOGIA
O que se chama a uma mistura de media sob o controlo de software?
Assim, há um continuum de produções que simplesmente apresentam o material de uma forma
fixa, através de interactividade complexa incrementada, até aplicações que geram multimedia
dinamicamente.
Não há um termo satisfatório ainda para o acto da pessoa que “vê” um produto multimedia,
embora se use o termo vago de utilizador.
Pode ser útil distinguir entre multimedia e múltiplos media. A distinçãoé melhor compreendida
do ponto de vista do utilizador.
Uma produção em media múltiplo requer que mudemos entre modalidades. O verdadeiro
multimedia requer que combinemos modalidades (como fazemos na vida real, andando numa loja
por ex.).
Consideraremos o multimedia como qualquer combinação de dosi ou mais media, representados
de forma digital, suficientemente bem integrados para ser apresentados via uma única interface,
ou manipulados por um único programa de computador.
ENTREGA
É útil distinguir entre entrega online e offline.
Quando o multimedia é entregue offline, algum media de armazenamento removível tem de ser
usado.
O CR-Rom nos meados dos 90s, apesar de passar um vídeo em écran total, de forma suave, dum
CD-Rom é ainda impossível sem suporte adicional de hardware.
O CD-Rom nunca apnhou totalmente a imaginação do público. Os altos custos de
desenvolvimento -> preço alto, sendo que a entrega online é largamente vista como o futuro do
multimedia.
Em 1995 a indústria criou o DVD (Digital Video Disk, que mudou depois para Versatile como forma
de emendar a mão pois dá para qualquer dado digital). A sua cpacidade pode ir até aos 17Gbytes
num disco de dupla face, com relações de transferência similares aos drives de CD-Rom. Apesar
de serem por vezes usados para distribuir software, DVDs não se tornaram um substituto do CD-
Rom, sendo mais usados para o seu propósito original de distribuir video de alta-qualidade.
Assim, o DVD tornou-se num novo menu para o multimedia interactivo, embora de uma natureza
rudimentar.
A entrega online, contudo, oferece possibilidades que não estão disponíveis offline. permite a
entrega de conteúdo multimedia (quase) ao vivo, o que permite a vídeoconferência, emissão
multimedia.
NÃO-LINEARIDADE
Há correntemente 2 modelos em uso para combinar elementos de media de diferentes tipos:
page-based e time-based.
No primeiro, texto, imagens, e vídeo são colocados num arranjo bidimensional que se assemlha à
maneira em que textos e imagens são colocados em livros e magazines. Os elementos time-
based, tais como vídeo clips e som, são embebidos na página como se fossem imagens,
ocupando uma área fixa. Há controlos para play,...
Páginas individuais podem ser combinadas usando links.
Essas páginas multimedia ligadas são conhecidas como hypermedia. O exemplo mais ebm
conhecido de um sistema hypermadia é a WWW.
Em contraste, o multimedia time-based faz do tempo o princípo central organizador. Os elementos
são arranjados no tempo, frequentemente usando uma linha do tempo, de modo a que sejam
apresenatdos como uma sequência.
Uma apresentação multimedia (como chamaremos a uma tal produção timeline-based) incorpora
frequentemente o paralelismo. Os elementos podem ser sincronizados.
A tecnologia multimedia time-based mais largamente usada na Web é a Flash.
Os slideshows em Powerpoint fornecem o mais básico tipo de apresentação multimedia.
*** Um 3º modelo para combinar media é exemplificado pelo VRML, e em certa medida, pelo
MPEG-4. Aqui, os elementos são colocados num cenário tridimensional. O utilizador pode mover-
se no espaço 3-D e inspeccionar as imagens ou objectos que encontrar. Podem ser incorporados
links. É mais encontrado em jogos. A aparente falha no VRML em conseguir larag aceitação e a
falate de suporte comercial do MPEG-4 standard, significa que actualmente não há standard para
multimedia baseado em cenas***.
As produções multimedia baseadas em ambos os modelos são frequentemente aumentadas com
características de interactividade.
Loops e estruturas de salto, que em certa medida relembram os links das páginas de hypermedia.
scripts podem também ser escritos para causar acções que ocorrem depois de um certo período
de tempo, ou em resposta a eventos tais como fim dos video clips.
A distinção entre os nossos modelos de combinação de media está pois de certa forma nublada.
Um conceito que une os 2 modelos á a não-linearidade.
INTERACTIVIDADE
É frequentemente tida como a característica que distingue o multimedia digital dos outros formatos
de combinar media, tais como a televisão.
Ainda é limitada.
Contudo, prover escolhas num programa de computador é mais fácil que via um dispositivo de
hardware.
As possibilidades expandem-se combinatoriamente. Ex. 4 escolhas de 5 níveis permitem 1024
possibilidades de experienciar uma produção.
Mas o controlo último permanece com o produtor mesmo que umj crescente nº de escolhas não
enriqueça necessariamente uma produção. Ex. horários de comboios. E nenhuma quantidade de
interactividade pode compensar um conteúdo pobre.
O carácter da interacção pode ser apreciado como ele acontece num jogo popular – Myst, que nos
dá um mundo fantástico para explorar. Ele demonstra como a interactividade, quando embebida
num ambiente rico com gráficos de alta-qualidade e som evocativo, pode aumentar
dramaticamente a atractividade de um produto.
*** ‘Interactividade é na realidade um nome impróprio. a verdadeira interacção só é possível
quando outra pessoa está envolvida***.
A interactividade pode ainda ser inapropriada e redundante e deve ter-se em conta que o
multimedia não é aprpopriado para tudo – ex. ler um livro.
Interfaces de Utilizador
Os meios pelos quais as escolhas podem ser apresentadas aos utilizadores podem variar
enormemente. Num extremo temos um conjunto estilizado de elementos de interface de utilizador
– menus, caixas de diálogo,...; no outro extremo, interacção em alguns jogos é essencial.mete de
forma-livre, com qualquer parte do écran capaz de causar uma resposta em algum momento.
Uma desvantagem é que os utilizadores que não estão ainda familiarizados com as convenções
das interfaces podem achá-las mais difíceis de usar uma interface convencional madura que uma
especialmente desenhada e simples. Outra desvantagem é que tudo parece o mesmo. podemos
querer então diferenciar a nossa interface da do sistema operativo. Fazendo isso enquanto ao
memso tempo tornar claro como os nossos controlos trabalham pode ser árduo.
Os requisitos para incorporar media time-based deram pois origem a novas convenções de
interfaces. como sempre, estas convenções podem ser ignoradas.
CONSIDERAÇÕES ÉTICAS E SOCIAIS
Acesso a Multimedia: Consumo
No caso do multimedia, o assunto que tem principalmente a ver com a natureza da tecnologia ela
própria é o acesso. Basta pensar nos países menos desenvolvidos.
Mesmo nos desenvolvidos, a banda larga não chega aos rurais, e sabemos como ela é essencial
para os conteúdos multimedia.
A Internet é um fenómeno global em princípio, mas na prática tem diferentes faces em diferentes
lugares, e em muitos não face sequer.
Outro item tem a ver com a literacia básica para manusear.
certamente os mais novos estão mais expostos, mas as competências que adquirem são muitas
vezes superficiais, sendo muitas vezes adquiridas no trabalho, pelo que grandes disparidades se
vêem entre profissões.
Finalmente, incapacidades físicas ou dificuldades de aprendizagem podem interferir com a
capacidade pessoal de usar computadores. Muitos livros de design oferecem conselhos em como
escolher combinações de cores para minimizar os problemas mas poucos designers os aplicam.
É preciso compreender que o acesso não é, e provavelmente nunca o será, universal.
Em todo o caso, se o acesso ao multimedia for tido como uma norma numa sociedade, não ter
esse acesso torna-se uma influência de marginalização. Significa que negar o acesso é negar
acesso à informação.
Em casos extremos, o simples acesso à informação salva vidas, como é ex. os programas de
educação para a saúde. Acesso à informação dá poder.
Acesso a Multimedia: Produção
Computadores relativamente acessíveis, juntos com um acesso à Internet de baixo custo também,
trouxeram uma revolução espalhada por todo o lado ao acesso aos meios de produção e
distribuição de material digital.
Provavelmente o media mais acessível é o livro. As imagens são espaljhadas pelas revistas.
Contudo, bons artistas, com os seus hábitos de explorarem os media, podem estar na melhor
posição para tirar vantagem de novas oportunidades que o media digital e o multimedia oferecem.
Na música, as companhias tentam assegurar-se que só editam discos que venedem, o que
dificulta a vida aos novos. De novo, o contraste é que canções de toda a gente podem ser
colocadas na Internet para downloading.
Qualquer um com uma câmara digital, um PC e um Web site pode emitir os seus próprios vídeos
sobre a Internet.
É de convir pois que o acesso aos media tradicionais é altamente exclusivo em comparação com
o acesso à www – que tem o bónus de suportar multimedia interactivo. Mas, e há sempre um mas,
não basta pôr na net, as pessoas têm de visitar.
CONTROLO DE MULTIMEDIA
Em teoria, todos os sites da web tem igual atenção, mas na prática, alguns exercem um maior
apelo que outros. Depois, há os portais...
Podem ser mais convenientes para compradores a partir de casa, mas a forma dos catálogos
online mimetizam os originais offline, e muito poucas funcionalidades extra são oferecidas para
além das básicas de busca.
Em adição a importar formas estabelecidas, a www também está a importar conteúdo de formas
estabelecidas. Em 1999, a apple lançou a QuickTime TV, fornecendo video streamed sobre a
Internet. Como um serviço de cabo ou satélite convencional, é organizado como uma colecção de
canais.
Tal como a relação um-para-muitos das emissões convencionais, estamos a assistir a um novo
desenvolvimento de relações alguns-para-alguns , entre pequenos grupos de indivíduos com
interesses especializados, o que é negado pela política e economia dos media estabelecidos.
O CONTROLO DOS CONTEÚDOS
O rápido crescimento da Internet, que uma disseminação sem precedentes de material
possivelmente inaceitável ou não adequado, deu um novo ímpeto aos debates acerca da censura.
Multimedia ainda não lidou em construir qualquer novo assunto de conteúdo – e parece
improvável que pessoas que tenham algo para dizer neste media não tenha sido expresso já
muitas vezes antes, de outras formas. A nova dimensão é inteiramente de acesso e distribuição.
Não há alternativa à aceitação desta diversidade, então como há-de ela acomodar-se no contexto
da Internet e outros sistemas de comunicação modernos?
A Plataforma para a Internet Content Selection (PICS) é uma tentativa de fornecer um mecanismo
que suporte uma diversidade de atitudes dirigidas aos conteúdos e à censura. Ela restringe a
recepção, não a distribuição.
PICS almeja permitir aos utilizadores eles próprios que se previnam contra material inaceitável. a
ideia subjacente é simples: etiquetas são associadas com cada página web, para prover uma
classificação do seu conteúdo que pode ser usada para acessar a sua desejabilidade. Material
indesejável é rejeitado por software de écran que é incorporado no web browser.
Tudo o que os PICS estipulam é um formato standard para etiquetar conteúdos; não diz nada
sobre o que as etiquetas devm conter, nem como o software deve lidar com elas. PICS, assim
permitem um critério arbitrário seja usado para acessar conteúdos, e estratégias arbitrárias para
lidar com eles. Ao fim ao cabo, deferem as decisões difíceis.
Em teoria, PICS permitem que as páginas sejam etiquetadas com, digamos, classificação verde,
de modo a que páginas que advogam práticas que causam prejuízo ao ambiente possam ser
filtradas. Para isso o software de filtragem deve saber ver a etiqueta verde e ser configurado com
um determinado critério.
Uma descrição serviço de PICS é um documento que especifica o formato de alguns serviços de
classificação de etiquetas. Software de filtragem pode descarregar descrições de serviço de modo
a que os utilizadores possam especificar controlos baseados nas etiquetas que eles descrevem.
Qaundo os PICS foram introduzidos, a maior parte da filtragem era executada pelos browsers que,
por defeito, apenas entendiam o sistema de etiquetas da RSAC (Recreational Software Advisory
Council), que foi sucedido pelo Internet Content Rating Association (ICRA). Este não etiqueta os
sites; ele provê um questionário que os webmasters preenchem, detalhando os items e
características em categorias gerais de nudez, material sexual, violência, linguagem, etc.
ICRA persegue a sua missão como protecção das crianças. Ao mesmo tempo, ele pretende
preservar a liberdade de expressão. Os pais podem colocar os seus browsers para permitir ou
negar acesso a sites na base de combinação das características.
Contudo, se não houver uma terceira parte que partilhe as tuas preocupações, e não confies
necessariamente nos autores da web para etiquetar as suas páginas, não tens maneira de
prevenir que material que não queres ver de te chegar, excepto pela evitação completa de
qualquer coisa que penses ser inaceitável.
Ironicamente, o mecanismo intendido para restringir o acesso a certo material (etiquetas PICS) é,
ele próprio o meio pelo qual esse material pode ser mais facilmente localizado.
CAP. 2 PERMITINDO TECNOLOGIAS
No presente, apenas um computador programável pode adicionar total interactividade à
multimedia, mas oparece ser inevitável que, à medida que a tecnologia amadurece, dispositivos
de consumidor que funcionam como players de multimedia serão comprados no mercado. É
expectável que esses dispositivos sejam significativamente mais baratos que os PCs, e que eles
possam trazer acerca da transformação do multimedia digital numa verdadeira forma de
comunicação de massas.
REPRESENTAÇÕES DIGITAIS
Computadores são construídos de dispositivos que podem estar apenas num de 2 estados. Estes
dispositivos armazenam e operam bits, unidades de dados que podem ter paenas um de 2
valores (0V ou 3.5V).
podem ser agrupados em bytes e estes em palavras (frequentemente 4 bytes, dependendo do
computador).
Podem ser lidos como números de base 2; 01100001 é 97 em decimal.
Não há, contudo, nada intrinsecamente numérico acerca dos bits e bytes. Podemos escolher
interpretar padrões de bits em diferentes formas, e é assim que dados pertencentes a media
diferentes podem ser representados digitalmente. O padrão 0100001 pode denotar uma particular
sombra de cinzento ocorrendo numa imagem, se escrevermos software e construirmos hardware
de display que o interprete dessa maneira.
O conjunto de caracteres ASCII, por ex., é uma associação entre caracteres e números.
Uma associação similar pode ser feita entre nºs e quantidades tais como brilho de uma imagem
num ponto, ou a amplitude instantânea de uma onda sonora.
Cada byte pode ser identificado pela sua posição na sequência, a que chamamos endereço.
É possível organizar colecções de bytes em estruturas de dados. Por exemplo, uma imagem a
preto e branco é frequentemente representada pelos valores correspondentes ao brilho de cada
ponto de uma grelha fina rectangular. podemos guardar estes valores numa sequência de bytes, e
depois usar o endereço do primeiro byte para aceder aos dados da imagem.
DIGITALIZAÇÃO
A representação digital é mais conveniente que a analógica para a computação rigorosa.
Em multimedia, encontramos valores que mudam continuamente de várias formas. Por ex., a
amplitude de uma onda sonora.
Diremos sempre um sinal, não distinguindo entre variando-no-temo ou variando-no-espaço.
Ambos os valores que medimos, e os intervalos nos quais podemos medir o sinal, podem variar
infinitesimalmente. Em contraste, se o formos converter num sinal digital, teremos de restringir
ambos a um conjunto discreto de valores. Isto é, a digitalização consiste em 2 passos:
amostragem, quando medimos o valor do sinal em intervalos discretos, e quantização, quando
restringimos o valor a um conjunto fixo de níveis.
Temos de ter conversores analógico digitais (ADCs).
O intervalo entre amostragens sucessivas é fixo; o nº de amostras num certo intervalo de tempo
ou espaço é conhecido pela taxa de amostragem.
Similarmente, os níveis de quantização são igualmente espaçados.
Uma das grandes vantagens dos sinais digitais é o facto de que apenas certos valores de sinal
são válidos, o que limita a influência do ruído.
Os sinais digitais são assim muito mais robustos que os analógicos, e não sofrem degradação
quando são copiados, ou transmitidos sobre medias com ruído.
Contudo, alguma informação é perdida durante o processo de digitalização. A única medida
significativa de precisão tem de ser quanto próximo do original pode ser reconstruido o sinal.
Temos pois de decidir o que pôr nos intervalos entre amostras.
Uma possibilidade é o sample and hold, que produz um sinal com transições abruptas, mas que
quando passam num display CRT ou num altofalante as imperfeições destes dispositivos físicos
fazem suavizar e o resulatdo realmente aproxima-se do óptimo teórico muito bem.
Os efeitos da subamostragem são manifestados como distorções e artefactos que são sempre
indesejáveis.
Há sempre alguma taxa à qual podemos estar certos que as amostargens estão suficientemente
próximas para permitir que o sinal seja recosntruído com precisão, e se há, como próximo é
suficientemente próximo.
Estão provavelmente familiarizados com a ideia que uma nota musical tocada num instrumento
consiste em ondas de várias frequências somadas. Há a fundamental, que é o pitch (volume do
som) associado à nota, mas, dependendo do instrumento, diferentes nºs de harmónicos, ou
sobretons, estão também presentes, e isto dá à nota um timbre distintivo. A fundamental e cada
harmónica são tons puros – ondas sinusoidais de uma única frequência. qualquer onda periódica
pode ser decomposta numa colecção de componentes de diferentes frequências, cada uma onda
pura sinusoidal.
As frequências, como os sinais, podem ser também temporais ou espaciais.
Como se pode ver, à medida que pomos mais harmónicos, o sinal começa a parecer-se mais com
uma onda quadrada; quanto mais componentes de frequência acrescentamos, melhor é a
aproximação.
odemos usar as frequências e ampliotudes destes componentes para representar o nosso sinal. a
colecção de frequências e amplitudes é a representação do sinal no domínio da frequência. Isso
pode ser computado usando uma operação matemática conhecida como Transformada de
Fourier. O resultado de aplicar a TF a um sinal pode ser vista no écran, tal como o sinal original,
na forma de um gráfico, onde o eixo horizontal representa a frequência e o vertical a amplitude.
Espectro de Frequência do sinal, é como é chamado.
Frequências negativas são uma conveniência notacional que nos permite lidar com mudanças de
fase. o pico na f=0, é a componente DC, que é igual ao integral do sinal, e fornece uma medida
do seu valor médio.
Compontes de alta frequência estão associados com transições abruptas.
Então, operações como afiar (sharp) ou suavizar uma imagem podem ser descritas e
implementadas em termos de filtros que removem certas frequências.
O Teorema da Amostragem diz que, se o componete e maior frequência de um sinal é fh, o sinal
pode ser apropriadamente reconstruído se tiver sido amostrado com uma taxa maior que 2fh (taxa
de Nyquist).
Por isto e´que as rodas das diligências do filmes de cowboys parecem andar para trás.
De notar que devemos ir para além da taxa de Nyquist.
Em geral, se amostramos a uma taxa baixa, algumas compontes de certas frequências no original,
são transformadas noutras frequências quando o sinal é reconstruído. Este fenómeno é conhecido
como aliasing. com o som, é ouvido como distorção; em imagem, é visto na forma de denteado
ou, onde a imagem contém pequenos detalhes repetidos, padrões moiré; nos filmes há
estremecimentos da imagem.
Os efeitos de um nº insuficiente de níveis de quantização são, em geral, mais fáceis de perceber
intuitivamente do que os de inadequadoas taxasde amostargem.
Nas imagens, é como que se fossemos forçados a usar apenas algumas cores. A diferença entre
o escarlate e o carmim perde-se, por ex., e qualquer fronteira entre áreas dessas cores é elidida.
Numa imagem menos regular, manifesta-se como uma posterização, mais formalmente
conhecida como contornos de brilho, onde as áreas coloridas se juntam.
A razão mais comum para limitar o nº de níveis de quantização é reduzir a quantidade de
memória.
No som, há uma forma de distorção, conhecida por ruído de quantização, porque a sua
manifestação pior é um assobiar áspero. Também leva à perda das passagens mais calmas, e a
uma confusão geral. É perceptível a 8 bits ams não a 16 (CDs).
REQUISITOS DE HARDWARE E DE SOFTWARE
Hardware
Som, vídeo e a maioria das imagens, requer largas quantidades de espaço em disco e em
memória.
Estas grandes quantidades de dados para serem manipulados implicam requisitos para
processadores mais rápidos e buses de dados capazes de transferências a altas velocidades. Nas
redes é preciso muita largura de banda.
Quanto a requistos de hardware há 2 casos distintos a considerar: requisitos para consumo de
multimedia e requsitos para a sua produção.
Um consórcio de fabricantes de PCs definiu o PC multimedia durante os 90s. o último foi o Nível 3
MPC como tendo 75Mhz Pentium, 8Mbytes de RAM, correndo Windows 3.11, com pelo menos
500Mbytes de disco rígido, um drive de CD-Rom de 4x, saída de audio de qualidade CD, e a
capacidade de passar quarter-frame vídeo em cores de 15-bits. Hoje é de rir.
Mais realisticamente, um G4 iMac, correndo MacOs X num processador de 1.25Ghz, com
512Mbytes de RAM, 160Gbytes de disco rígido, um gravador de DVD-R, um modem de 56k
incorporado, altifalantes stereo, uma poderosa placa aceleradora de gráficos e um monitor de 17”,
capaz de até resoluções de 1440x900 pixels.
É de ter em conta que os utilizadores normais tipicamente fazem upgrade dos seus sistemas
menos frerquentemente, e há pois milhões de máquinas relativamente antigas ligadas à Internet.
Isto apresenat um desafio aos designers Web para produzir páginas que sejam acessíveis quer de
poderosas máquinas de secretária quer de telefones e PDAs. Quer dizer que as arquitecturas
multimedia devem ser escaláveis, permitindo diferentes versões.
Para a produção, os sistema são mais poderosos e são frequentemente aumentados com
hardware de aceleração gráfica especial e dispositivos de entrada e saída para vídeo e audio.
Processadores de 2Ghz, placas gráficas com 64Mbytes de memória vídeo, mais de 2Gbytes de
memória principal, discos de alta velocidade adicionais e outros periféricos especializados.
No extremo oposto, estações de trabalho de alta-potência, tais com as produzidas pela SGI ou
sun, são também usadas, especialmente para tarefas que exigem computação intensiva, tal como
renderização de animação 3-D e efeitos de vídeo.
Durante a sua preparação, as produções frequentemente requerem substancialmente mais
espaço de armazenamento do que o produto final precisa.
A compressão só é aplicada no estado final do produto.
Transferir para e de grandes discos é o factor mais limitativo, particularmente no vídeo digital,
onde taxas de transferência de mais de 3,5Mbytes por segundo (30mbytesps por ex.) são
desejáveis durante a captura. Os buses ATA, que equipam os PCs normais, só conseguem lidar
com taxas para vídeo comprimido.
Contudo há novas interfaces standard, tais como Firewire 400 e 800 que oferecem velocidades
teóricas até 400 e 800 Mbits por segundo (50 e 100 Mbytes, pois), USB 2.0pode suportar
60Mbytes por seg. enquanto novas versões do SCSI vão até 160Mbytes por seg.
***É importante que os discos usados em trabalhos vídeo, sejam frequentemente
desfragementados***
Com estes novos interfaces, o factor limitativo começa a ser a que velocidade os dados podem
mover-se para fora e apar dentro dos computadores.
Canais de Fibra Óptica ou Ethernet Gigabit podem fornecer as taxas de trabsferência.
Relativamente caros discos de alta-velocidade podem ser usados para armazenamento, mas uma
alternativa popular é o array RAID, em que a leitura e escrita é feita em paralelo.
Mais precisamente, RAID especifica 8 diferentes níveis, que oferecem graus diferentes de
desempenho e tolerância a falatas.
O nível mais baixo, o 0, especifica uma técnica ‘data striping’, onde um bloco de dados a ser
escrito no array é dividido em segmentos que são escritos em diferentes discos.
O array parece-se com um único drive de alta-capacidade e rápido.
Os níveis mais elevados do RAID são desenhados para protecção contra falhas, incorporando
redundância.
Uma opção popular é combinar os níveis 0 e 1, ganhando assim o desempenho do data striping e
a protecção do disk mirroring.
A multimedia requer também outros, mais especializados periféricos. Uma tablete gráfica sensível
à pressão é essencial para todos os trabalhos de todos os tipos gráficos.
Scanners de alta resolução; Câmaras digitais; Câmaras de vídeo sobre firewire.
A captura de vídeo e audio de equipamento analógico requer conversores analógicos-digitais e
hardware de compressão.
Software
Diferentes aplicações foram desenvolvidas para os diferentes tipos de media.
A essência do multimedia é a combinação. Uma maneira de levara a cabo essa combinação seria
escrever um programa que lê os dados dos diferentes media e os apresenta duma forma
combinada. Embora isto seja a máxima flexibilidade, requer grandes capacidades de
programação.
Sistema de Autor foram elaborados para levara a cabo a tarefa dentro duma framework
organizacional que permite automatização de muito do trabalho que, de outra forma, requereria
programação. Podem ser baseados num modelo de layout com uma linguagem de marcas, ou
numa linha de tempo. Alguma programação, pelo menos numa linguagem de script é usualmente
requerida, se a interactividade for fornecida.
A produção de multimedia de qualidade profissional requer uma equipa.
Essencial. a chave para a integração é uma framework que pode acomodar uma multiplicidade de
media e apresentálos ao utilizador. Há 3 diferentes abordagens:
A WWW tira o principal de uma: define um formato (neste caso, uma linguagem de markup, HTML
ou XML) que pode acomodar media diferentes, e vê-los usando um browser dedicado. Os
elementos media estão embebidos.
A segunda aproximação é definir uma arquitectura, englobando um formato que pode conter
diferentes tipos de media, juntamente com uma API (Application Programming Interface) que
fornece um conjunto rico de funções para manipular os dados naquele formato. ex. Quicktime.
Nós podemos imaginar adicionar código que interpreta o HTML a qualquer programa, mas desde
que o Quicktime seja incorporado no nível sistema e está disponível para qualquer programa, o
esforço requerido para adicionar suporte ao QuickTime é mínimo, em comparação.
A 3ª aproximação é praticamente o oposto da 2ª: Entrega-se a produção multimedia como um
stan alone, que não precisa de software adicional. Ex. Flash.
Filmes em QuickTime são frequentemente embebidos em páginas web, tal como animações flash,
tendo os Web browsers apenas de ter os plug-ins necessa´rios.
REDES
As redes, e a Internet em particular, oferecem grandes oportunidades para distribuir multimedia,
mas também apresentam grandes dificuldades técnicas.
É preciso adicionar valor (geralmente na forma de interactividade) para compensar a qualidade
inferior do som e imagem, o que pode mudar com tecnologias de alta velocidade.
A maioria dos acesso à Internet aindfa é do tipo conexão dial-up a 56Kbps e 33.6kbps na direcção
oposta. factores de ruído e dist^ncia entre o modem e a comutação telefóncia trazem estes
valores para 34 e 48kbps.
Correntemente, o ADSL (Asymetric Digital Subscriber Line) é o novo método líder para acesso
sobre a rede de cobre telefónica existente. Provê velocidades até 6,1Mbps na direcção
downstream e até 640kbps upstream. mas o ADSL não atinge casas remotas, apenas cidades.
Os modems de cabo podem transferir dados a taxas de 500kbps a 30Mbps. Para os utilizadores
remotos estão disponíveis satélites mas a um custo superior. Outros modos de acesso são sobre
a rede eléctrica e sem cabo.
Não se deve esquecer que a banda larga ainda é usada em muito poucos lares.
Utilizadores da Internet comerciais usam por vezes linhas dedicadas para se ligarem aos ISPs.
Linhas T1 e T3 fornecem 1.544Mbps e 44.736Mbps.
***O termo banda larga é só jargão do marketing. Uma definição oficial é “mais rápida do que uma
taxa primária ISDN”, o que dá taxas de 1.5 ou 2Mbps, o que era suficiente para suportar video a
quarter size, mas as bandas largas dos utilizadores não chega a isto. Então o FCC sugeriu uma
definição mais conservadora: mais de 200kbps***
A ligação entre o utilizador e o ISP não é sempre o factor que limita a velocodade de transferência
dos dados sobre a Internet. A capacidade das conexões entre redes de ISPs e o poder
computacional das máquinas das quais os dados são descarregados podem ser tão importantes.
As vantagens de um acesso mais rápido entre o utilizador e o ISP podem apenas ser mantidas se
as conexões entre ISPs forem upgraded proporcionalmente à medida que mais utilizadores se
inscrevem no serviço e os dados puderem ser entregues à mesma taxa que podem ser entregues
– à medida que o nº de utilizadores cresce, sites populares tÊm de servir mais pedidos duma vez.
As LAN são mais rápidas. 10 base T Ethernet fornece 10Mbps, e tem sido substituída pela 100
base T, a 100Mbps. A largura de banda tem de ser partilhada por todas as comunicações
existentes na rede ao mesmo tempo, pelo que a largura de banda efectiva é menor, mas ainda
suficiente para aplicações multimedia que são actualmente infazíveis sobre a Internet, em
particular a video-conferência, que só o pode a baixa qualidade.
CLIENTES E SERVIDORES
Servidores web e clientes comunicam uns com os outros usando o Hypertext Transfer Protocol
(HTTP), que é um protocolo muito simples, desenhado para a transmissão rápida de hypertexto
(HTML).
O nome de domínio identifica um servidor Web (www.digitalmultimedia.org) e o resto
(/DMM2/index.html) identifica um ficheiro no sistema de ficheiros daquela máquina.
O servidor responde com alguma informação extra, tal como o tipo dos dados (HTML, texto,
gráficos GIF, som, etc.) que envia.
Clientes www são usualmente browsers. Praticamente todos permitem descarregar ficheiros
usando o File Transfer Protocol (FTP). Os modernos também suportam streaming de dados em
tempo-real para o audio e video usando diversos protocolos para estes propósitos.
As companhias maiores mantÊm os seus próprios sites e servidores.
Muitos servidores aumentam a sua página básica web, servindo funções com interface para
outros programas correndo na mesma máquina, o que permite a geração dinâmica de páginas,
incorporando, por ex., informação encontrada de uma base de dados, ou performar computações
baseadas no preenchimento de formulários. A Common Gateway Interface (CGI) é o standard de
facto para tais interfaces mas há outros proprietários tais como Microsoft’s ASP, e open PHP e
JSP.
Se dados multimedia forem servidos usando HTTP dizemos que temos uma intranet.
MIME TYPES
Alguns outros modos de identificar o tipo dos conteúdos é necessário num ambiente de rede.
MIME (Multipurpose Internet Mail Extension) é uma extensão aos protocolos de mail da Internet,
que suportam a inclusão de dados para além de texto ASCII pleno nas mensagens de mail.
Em particular, uma resposta HTTP inclui um cabeçalho do tipo de conteúdo MIME, que toma a
forma:
Contente-type: type/subtype
Onde o type fornece uma indicação geral do tipo de dados: texto, imagem e subtype especifica o
formato preciso, tal como HTML, GIF ou AIFF, por ex.
Os tipos disponíveis são: text, image, audio, video, model para o caso de dados que modelam
dados 3-D, tal como VRML, message e application.
Por ex., o tipo de conteúdo MIME video/x-msvideo é reconhecido pelo Internet Explorar e
Netscape Navigator como identificando filmes AVI, apesar de este formato não estar entre os
subtipos de video registados com IANA.
STANDARDS
“Standards são acordos documentados contendo especificações técnicas ou outros critérios
precisos para serem empregues como regras, guias, ou definições de características, para
assegurar que materiais, produtos, processos e serviços são adequados para o seu propósito.”
O que seguir o mesmo standard e intercambiável.
Mas não é nada que sejamos obrigados a fazer.
Nem quer dizer que fazer da forma standard seja a melhor maneira sempre.
Em multimedia, os standards definem interfaces, formatos de ficheiros, linguagens de markup,
protocolos de rede, etc.
Se tivermos um ficheiro num formato standard para dados de imagem, por ex., então podmeos
incorporar imagens numa produção multimedia sem a preocupação acerca de que programa foi
usado para o produzir. similarmente, satndards para todos os outros tipos de media permitem
sistemas de autor multimedia serem construídos independentemente das aplicações usadas para
preparar os elementos media.
Os standards são de particular importância nas redes.
3 organizações são relavantes para o multimedia: ISO, International Electrotechnical commission
(IEC) e ITU (International Telecommunication Union). ISO para os campos técnicos excepto os
eléctricos e electrónicos.
Os standards ITU cobrem formatos de vídeo e telecomunicações são os mais importantes para o
multimedia.
Como isto muda tudo muito depressa, os standards semi-formais e arranjos ad hoc têm um papel
muito importante nestas áreas.
Os standards da Internet são um paradigma destes standards semi-formais. Pois a Internet é, por
definição, uma rede de arquitectura aberta.
A vantagem destes arranjos ad-hoc é que acomodam a mudança rápida. a desvantagem é que os
fabricantes se sentem mais à vontade em ignorar, adaptar e estender os standards.
CAP. 3 INTRODUÇÃO À COMPUTAÇÃO GRÁFICA
Usamos o termo gráfico, duma forma muito lata, para referir as tecnologias hardware e software
usadas num sistema de computador para criar, modificar e exibir imagens paradas guardadas
numa forma digital.
É pois a tecnologia que permite trabalhar com todos os elementos visuais do multimedia.
As imagens digitais podem ter muitas origens.
A familiaridade que temos com as imagens pode tornar as imagens difíceis de lidar nos sistemas
digitais, porque são criadas expectativas sobre o que pode ser atingido, que as limitações dos
sistemas disponíveis para nós frquenetemente frustram.
Apesar de alguns programas de painting serem muito bons e haver scanners de alta-qualidade, na
produção final da tuas imagens multimedia serão certamente exibidas num monitor de baixa
resolução que não pode atingir a qualidade de reprodução permitida pelos métodos fotográficos
usados nas revistas. Pior, a gama de cores pode ser limitada, e a reprodução ser diferente em
diferentes sistemas.
Usualmente são entregues em CR-ROM, DVD ou sobre uma rede, frequentemente a Internet.
Pode ser necessário adaptar essas imagens para uso em multimedia. Para isso é preciso ter em
conta as diferentes características dos displays e impressoras particularmente no que toca à cor.
Uma notável carcaterística eé que os designers gr´ficos habituados à impressão falharam a
apreciar a diferença com a Internet/displays.
Deve ter-se pois em conta as limitações da tecnologia de displays.
GRÁFICOS VECTORIAIS E GRÁFICOS MAPA DE IMAGENS
A exibição de imagens é, em última instância, controlada por algum programa.
Os monitores exibem as imagens como um array rectangular de pixels.
Para exibir uma imagem num monitor, o programa tem de colocar cada pixel numa cor ou tom de
cinzento apropriado, em ordem a que o padrão de pixels no écran produza a imagem desejada.
As operações de baixo nível requeridas para colocar os valores dos pixels são usualmente
desempenhadas por uma biblioteca gráfica, que comunica com o hardware do display, e fornece
um interface de alto nível para o programa de aplicação.
Uma aplicação gráfica tem, de qualquer forma, guardar um modelo interno da imagem a ser
exibida. O processo de gerar um padrão de pixels a partir de um modelo é chamado de
renderização. O modelo gráfico toma geralmente a forma de uma estrutura de dados explícita
que mantém uma descrição da imagem, mas pode estar implícita na sequÊncia de chamadas à
biblioteca gráfica que é feita à medida que o program é executado. Quando os dados da imagem
têm de ser persistentes, um modelo similar tem de ser guardado num ficheiro. a sequência de
eventos para exibir a imagem começa então com a leitura, pela aplicação, do ficheiro de imagem,
a partir da qual constrói uma estrutura interna de dados correspondente à descrição da imagem
no ficheiro; o programa então renderiza a imagem para o display através de chamadas a funções
de uma biblioteca gráfica, fornecendo argumentos derivados do modelo da imagem.
Há 2 diferentes aproximações à modelação gráfica:
Nos gráficos mapa de imagens (bitmapped graphics), a imagem é modelada por um array de
valores de pixels. Temos pois pixels lógicos e pixels físicos (os que vão ser exibidos). No caso
mais simples, os lógicos correspondem um-a-um aos físicos: o modelo é um mapa da imagem
exibida. Mais geralmente, o modelo pode ser gravado numa resolução diferente da imagem
exibida, e assim alguma escalação tem de ser aplicada aos lógicos; O modelo pode também
descrever uma imagem maior do que a que vai ser exibida, e então algum clipping tem de ser
aplicado para extrair a parte desejada para se exibida. Escalar e Clipar são as únicas
computações necessárias para exibir uma imagem bitmap.
Nos gráficos vectoriais, a imagem é guardada como uma descrição matemática de umacolecção
de linhas individuais, curvas e formas que forma a imagem. Exibir uma imagem vectorial requer
alguma computação em ordem a interpreatr o modelo e gerar o array de pixels a ser exibido.
Para armazenamento persistente num disco, este modelo é frequentemente implementado como
um programa numa linguagem gráfica, por exemplo SVG ou PDF.
Há diferenças profundas entre os 2. Por ex. num quadrado de 45mm; se for guardado com 72
pixels lógicos por polegada (significando que pode ser exibido num monitor de 72 dpi no seu
tamanho natural) será um quadrado de 128 pixels e o bitmap igual a 1282=16384 pixels. Se
assumirmos que o monitor é cpaz de exibir milhões de cores (24 bits), precisamos de 48kbytes
para guardar a imagem. Em SVG basta 284 bytes.
Mas é preciso ter em conta que para exibir, é mais lento e precisa de um plug-in SVG instalado no
computador.
Então, o tamanho da imagem e a resolução a que será guardada são os únicos factores
determinantes da memória ocupada (para a mesma gama de cores) qualquer que seja a
“complicação” da imagem.
Num vector, quanto mais complexa é a figura, mais objectos terá, e maior será a descrição
necessária. mas o tamanho é independente da resolução.
Pelo menos tão importante é o que se pode fazer facilmente com imagens usando as diferentes
aproximações. Uma divisão habitual são os painting programs para trabalhar com bitmaps e os
drawing programs para os vectores.
Com a representação vectorial, é fácil seleccionar as formas individuais – pétalas, caule, estames
– e mover, rodar ou transformá-los independentemente. Cada elemento da imagem retém a sua
unidade e pode ser editado como um objecto porque a posição e atributos de cada objecto são
guardados no modelo da imagem. Por outro lado, aplicar um efeito especial, tal como distorção ou
enevoamento, à imagem bitmap é mais simples.
Uma outra diferença importante é o modo como se comportam quando escalados ou
redimensionados. Se um bitmap for exibido num tamanho maior que o seu tamanho natural, cada
pixel lógico tem de ser mapeado para mais que um físico no dispositivo final de saída. Isto pode
ser conseguido multiplicando/aumentando os pixels lógicos, efectivamente aumentando o seu
tamanho (por ex. para dobrar as dimensões lineares, cada valor de pixel no modelo deve ser
usado para um bloco de 4 pixels no display), ou interpolando novos pixels no meio dos guardados.
em ambos os casos, leva a uma deterioração da qualidade. Por seu lado escalar pode ser feito
facilmente como uma operação matemática no vectorial e sem perda de qualqidade.
***Problemas relacionados aparecem quando imagens bitmap são exibidas em dispositivos com
diferentes resoluções em que também elas serão do tamanho errado ou exibirão a mesma perda
de qualidade que ocorre quando são escaladas. Isto é um problema maior quando as imagens
são preparadas para imprimir do que se multimedia, pois no último caso sabemos que as imagens
irão ser exibidas num monitor. As resoluções dos monitores variam. Como resultado, as imagens
podem aparecer em tamanhos diferentes em monitores diferentes. Isto é geralmente considerado
aceitável, mas deve ser tido em conta pelos designers***.
Os programas de desenho e de pintura usam um diferente conjunto de ferramentas.
Para muitas aplicações, tais como apresentar dados para fins científicos ou de negócios,
ilustração técnica, e alguns tipos de design gráfico, a expressividade de programas de pintura e
gráficos bitmap não é precisa, ou até é indesejável.
Gráficos, diagramas, e outras visualizações geradas por um programa a aprtir de dados usam,
geralmente, gráficos vectoriais.
COMBINANDO VECTORES E BITMAPS
Não é incomum encontrar tarefas que requerem uma combinação das qualidades que chamam
por imagens contendo elementos de ambos os tipos. Por ex., um designer gráfico pode querer
usar uma imagem scaneada como fundo sobre o qual aparecerá um desenho (vectorial). Há
várias maneiras de isso ser conseguido.
A primeira é transformar vectores em bitmaps, ou vice-versa. É relativamente fácil transformar um
vector num bitmap. O processo de interpretar a descrição do vector, conhecido por rasterizing,
pode ser conseguido usando os mesmos algoritmos que são usados para exibir a imagem no
monitor. O contrário é mais problemático. O Flash faz. Mas não será tão fácil de editar como se a
imagem tivesse sido criada de raiz como vector. de facto, o ficheiro contendo a imagem vectorial é
mais do dobro maior que a bitmap de onde foi extraída.
A vectorização pode também ser usada duma forma controlada para gerar um ponto de início para
uma nova imagem vectorial. esta ferramenta meramente traça a fronteira da forma, produzindo os
caminhos mostrados na fig. 3.11. De novo, essa pode ser a partida para um novo desenho.
A maioria dos programas de desenho permitem que se importe bitmaps sem os vectorizar.
Comumente, os programas de desenho permitem o uso de apontadores para imagens de bitmaps.
Ex. o Illustrator e Freehand, permitem ‘toques de pincel’ sejam aplicados a linhas e curvas,
fazendo formas vectoriais, de forma a que pareçam feitos com media naturais, tais como tinta de
água ou lápis.
LAYERS/CAMADAS
Aplicam-se a ambos os tipos.
Uma camada é frequentemente parecida com uma versão digital de uma folha de acetato
transparente. Uma imagem pode ser construída empilhando camadas em cima umas das outras.
Mas uma camada permite-te juntar as partes de uma imagem e tratá-la como uma unidade.
Uma consequência imediata desta capacidade é que fornece uma maneira de distinguir objectos
numa imagem bitmap.
Um modo específico em que os artistas tiram vantagem da separação que as camadas permitem
é usar uma camada como fundo e em que objectos noutras camadas são sobrepostos.
Combinar (ou compositing) camadas, podemos usar a ferramenta lasso magnética. As 2 camadas
são combinadas usando o modo Normal blend (mistura).
Uma maneira diferente de usar camadas é como um papel traçado digitalmente. Por ex., em vez
de tentar vectorizar uma imagem como a nossa íris, pode ser preferível importá-la para um
programa de desenho na sua forma bitmap, e depois criar um novo layer no seu cimo, no qual
podemos desenhar com as ferramentas de vectores, usando a imagem importada como um guia.
Quando uma imagem está terminada, é normal apagar os layers invisíveis, e juntar todos os
restantes numa única camada pois isso ocupa menos espaço.
FORMATOS DE FICHEIROS
Há uma considerável gama para codificar os dados, comprimi-los e adicionar-lhe informação
suplementar.
Para imagens bitmap, uma das maiores diferenças entre os formatos dos ficheiros é o modo no
qual os dados da imagem são comprimidos. Há a compressão sem perda e com perda.
Um modo de reduzir o tamanho dum bitmap é restringir o nº de diferentes cores que ele pode
conter.
A WWW trouxe alguns standards ad hoc. O primeiro é o GIF, que usa uma técnica de compressão
sem perda, e é restringido a 256 cores. Uma das características mais úteis deste formato é que
uma cor pode ser considerada como transparente, de modo que, se uma imagem GIF é exibida
contra um fundo colorido ou outra imagem, o fundo vê-se através das áreas transparentes. Os
GIFs são mais adequados a imagens simples, do tipo cartoon e imagens sintéticas produzidas em
computadores. Têm menos sucesso com imagens scaneadas e imagens fotográficas, que têm
normalmente uma gama maior de cores e variações tonais.
Para estas imagens é preferível o JPEG, que é uma técnica de compressão com perda e as
imagens que tiverem sido comprimidas usando essa técnica podem ser armazenadas em vários
formatos. Informalmente JPEG é usado para formato JFIF. Para complicar foi recentemente
desenvolvido o formato SPIFF...
O 3º e mais recente formato largamente suportado na web é o PNG, que irá certamente substituir
o GIF, que tem o problema da patente ser da Unysis.
Fora da WWW, há o TIFF, BMP e TGA (Targa).
TIFF (Tag Image File Format) é formato de ficheiro elaboradamente extensível que pode
armazenar bitmaps com todas as cores usando diversos esquemas de compressão, incluindo o
JPEG.
O BMP apenas suporta uma simples forma de compressão sem perda, e os ficheiros BMP são
habitualmente guardados sem compressão. Os ficheiros TGA obtiveram sucesso, porque o
formato foi um dos primeiros a suportar mais que 256 cores nos PCs.
Por um grande período, os gráficos vectoriais forma dominados pelo PostScript. O PostScript é
intendido como uma linguagem de layout de páginas, o que não o torna adequado para guardar
simples imagens isoladamente. O EPS (Encapsulated PostScript) aplica certas convenções ao
uso do PostScript para assegurar que as imagens num ficheiro EPS são auto-contidas de modo a
poderem ser incorporadas em outros documentos., mas um interpretador PostScript completo é
necessa´rio para exibir imagens EPS, pelo que este não é o formato ideal para a web.
A W3C definiu então o SVG que é definido em XML, mas na essÊncia, é um derivado do
PostScript, mas mais fácil de implementar, e mais compacto para transmissão sobre redes.
Ao mesmo tempo o SWF, agora aberto, é largamente usado para vectoriais. É um formato
altamente compacto, e pode ser renderizado muito rapidamente.
EPS, SVG e SWF não são apenas formatos vectoriais. É possível incorporar bitmaps nestes
ficheiros, como objectos auto-contidos, o que lhe dá a característica de metaficheiro gráfico
(WMF também é).
CAP. 4 GRÁFICOS VECTORIAIS
Fornecem uma forma elegante de construir imagens digitais cuja representação é compacta,
escalável, independente da resolução e facilmente editável.
Apesar de terem sucumbido perante os bitmaps na 2-D, na 3-D ainda são mandatórias.
FUNDAMENTOS
As imagens são construídas usando formas que facilmente são descritas matematicamente.
Coordenadas e Vectores
Pacotes e linguagens como o Java Abstract Windowing Toolkit e SVG, frequentemente usam a
convenção oposta, com os valores de y crescendo para baixo, o que corresponde mais de perto
ao mod como os pixels são desenhados nos dispositivos físicos de saída.
Esta conversão é um exemplo de uma transformação de coordenadas, que são inevitáveis se
queremos produzir imgans independentes dos dispositivos.
Um outro exemplo de transformação de coordenadas ocorre quando uma imagem é renderizada
numa janela ou display. Não é possível usar as coordenadas absolutas do écran para especificar
os objectos do desenho. Em vez disso, o desenho é preparado nas coordenadas do espaço do
utilizador, e transformadas para os espaço do écran quando são exibidas.
Pares de coordenadas podem ser usados não só para definir pontos, mas também para definir
deslocamentos, à direita e para cima, por ex. (4.-4). Em geral, o deslocamento de P1 para P2 é
(x2-x1, y2-y1), que escrevemos P2-P1. Quando um par de valores é usado para especificar um
deslocamento desta forma, dizemos que é um vector de 2 dimensões.
O poder da geometria de coordenadas vem de usar letras para representar valores desconhecidos
e usar equações nesses valores para especificar relações entre coordenadas.
Quando é necessa´rio renderizar um desenho vectorial, os valores armazenados são usados, em
conjunção com a forma geral da descrição de cada classe de objecto, para colocar os valores dos
pixels para formar uma imagem do objecto descrito. Ex. uma linha que começa no ponto (0,1) e
acaba em (12,31) tem a equação y=5x/2 + 1, e assim, para qualquer valor ímpar de x, y tem de
ser arredondado. então a linha é aproximada por uma escada irregular. Isto é inevitável, pois os
dispositivos de saída trabalham com uma grelha discreta de pixels. Se a resolução do dispositivo
de saída for baixa (pixels grandes) o denteamento da linha e outros efeitos podem ser ofensivos.
ANTI-DESCONTINUIDADE (ANTI-ALIASING)
Vistos sob este prisma, o denteamento são uma forma de aliasing causado pelo subamostragem.
Em particular, os gráficos vectoriais serão habitualmente renderizados num monitor com resolução
entre 72 e 120 dpi, e o aliasing será bem visível. Para reduzir os eu impacto uma técnica
conhecida por anti-aliasing é frequentemenete usada.
O efeito de escada é o resultado do contraste pronunciado entre o preto e o branco dos pixels.
Podemos suavizar o efeito usando valores intermédios de cinzento para alguns pixels.
O anti-aliasing é atingido colorindo cada pixel numa sombra de cinzento cujo brilho é proporcional
à área da intersecção. A resoluções normais, os efeitos de aliasing são assim reduzidos, embora
à custa de uma certa confusão/falta de clareza.
FORMAS
Usualmente o reportório de formas é restringido a rectângulos e quadrados (possivelmente com
os cantos arredondados), elipses e círculos, lihas rectas, polígonos, e uma classe de curvas
suaves, chamadas de Curvas Bézier.
Deve notar-se que os programas vectoriais são muito limitados nas suas capacidades gráficas,
mas podem ser usados para atingir efeitos complexos e subtis, especialmente uma vez que se
compreenda como trabalhar com as curvas bézier. Usaremso o Illustrator.
Em SVG, uma linha pode ser representada pelo elemento linha, com as coordenadas dos seus
pontos finais como seus atributos. Uma sequência de linhas conectadas é chamada uma
polilinha.
Um par de pontos é suficiente para determinar a forma e a posição da elipse, e as suas
coordenadas podem ser transformadas numa das muitas convenientes representações do
objecto.
CURVAS
Uma curva Bézier é completamente especificada por apenas 4 pontos: os seus 2 pontos finais, e
mais 2 pontos, chamados pontos de direcção, os quais habitualmente não ficam na própria
curva. Colectivamente, os 4 são chamados de pontos de controlo.
Os comprimentos das linhas de cada ponto final para o seu ponto de direcção determina quão
larga é a curva. Podemos pensar nos comprimentos destas linhas como a representação da
velocidade com a qual a curva se coloca na direcção do ponto de direcção: quanto mais rápido
for, mais fora/distante é a curva.
CAMINHOS
Em princípio, porque os pixels nos monitores e impressoras são dum tamanho finito, qualquer
forma, não interessa quão curva, pode ser aproximada por uma colecção de linhas direitas ou por
outro método.
O que faz as curvas de bézier úteis é a facilidade com que podem ser combinadas para fazer
curvas mais elaboradas e formas irregulares.
A suavidade das junções quando os pontos de controlo se alinham e as linhas de direcção têm o
memso tamanho, é a razão por detrás do display de linhas de direcção nos programas de
desenho.
Por vezes queremos que a nossa curva mude de direcção em vez de continuar suavemente. Para
isso, é só preciso arranjar de forma a que as linhas de direcção de segmentos adjacentes não
fiquem alinhadas.
Misturando cliques e arrastos, é possível combinar curvas e linhas rectas de várias formas.
Uma colecção de linhas e curvas é chamada de path/caminho, que pode ser open/aberto ou
closed/fechado. Cada linha individual ou curva é um segmento do caminho. Os pontos onde os
segmentos se juntam (os pontos finais originais dos segmentos) são os pontos de âncora.
A maneira habitual de construir um caminho é construindo os segmentos individuais com a
ferramenta caneta. Contudo, se quer fazer trabalho de arte com um look de feito à mão, pode usar
a ferramenta de lápis do Illustrator.
Os segmentos das curvas bézier e linhas a direito são criadas para aproximar o caminho que o
cursor segue. Uma vez o caminho completo, pode seleccioná-lo e ver os pontos âncora que pode
ajustar do modo habitual. A fidelidade da aproximação pode ser controlada por uma tolerância
setada. Uma maior tolerância conduz a um mais eficiente caminho, com menos pontos de âncora,
que podem, contudo, suavizar alguns pequenos movimentos que tenha feito com a ferramenta
lápis.
PINCELAR E PREENCHER
Um caminho, falando estritamente, é uma entidade matemática abstracta.
Podemos, contudo, usá-lo como especificação de algo que podemos ver. De 2 maneiras: aplicar
um pincel ao caminho, ou tratar o caminho como a borda de uma forma, e preenchê-la.
Os pincéis têm características de largura e cor. Os programas suportam também tracejados,
assim como o comprimento dos traços e dos buracos.
Uma característica mais subtil dos pinceis é a forma do seu fim – o chapéu da linha/ line cap. Se o
pincel tiver grossura apreciável, cortá-lo faz-lhe em quadrado no fim com um butt cap, o que pode
ser feio. Se quisermos um round cap. Uma terceira opção é um projecting cap, com o pincel a
continuar para além do ponto final do caminho mais metade da largura, de forma a que o peso do
pincel relativo ao caminho seja o mesmo em todoas as direcções.
Juntas nos cantos – Há 3: mitre – como numa moldura; round – um arco circular é usado para
produzir um canto arredondado, e bevel – os segmentos são finalizados em quadrado.
Isto significa que, entre outras possibilidades, podemos usar uma forma preenchida com a cor de
fundo para tapar àreas de objectos debaixo.
Mais interessante e atractivo são os efeitos usando preenchimentos em gradiente e padrões. O
primeiro é uma transição gradual entre cores ou tons; no caso mais simples – um gradiente
linear... Há também o gradiente radial. Os gradientes mais sofisticados usados na fig. 4.21 foram
criados usando a ferramenta de combinar gradientes do Illustrator.
Preenchimento em gradiente são muito usados em trabalhos de arte criada em programas de
gráficos vectoriais, e contribuem para a característica look escova de ar de muitos dos design
gráficos que são produzidos usando este programa.
Padrões de preenchimento, como o nome sugere, permitem usar um padrão repetido para
preencher uma área. Padrões são construídos de elementos chamados tiles/telhas. Uma tile é
apenas uma pequena peça de trabalho de arte.
Tiles podem ser usadas para produzir padrões geométricos, tal como são apropriadas para
desenhar texteis ou papel de parede, mas podem também ser desenhados de forma a produzir
texturas. Padrões de preenchimento são muito usados como fundos.
Alguns programas de desenho permitem usar padrões para pincelar caminhos, produzindo uma
borda texturada, por exemplo.
A interpretação de preenchimento de figuras complexas segue o algoritmo non-zero winding
number rule: Para determinar se um ponto está dentro de um caminho, desenha uma
(conceptualmente infinito) linha desde o ponto em qualquer direcção. começa por setar o winding
number a zero. Segue a linha construída, e cada vez que o caminho a atravessa da esquerda
para a direita, soma um ao winding number e vice-versa. No fim os cruzamenstos foram contados;
se o winding number é zero, o ponto está fora do caminho, se não, está dentro.
TRANSFORMAÇÕES E FILTROS
Transformamos a imagem editando o modelo que está armazenado no computador. Desta forma,
as transformações mais importantes são: translacção (um movimento linear do objecto),
escalação, rotação sobre um ponto, reflexão sobre uma linha e shearing (uma distorção dos
ângulos dos eixos de um objecto). Para pormenores de como se faz matematicamente consultar
caixa da pg.101.
Outras, menos estruturadas, transformações podem ser atingidas movendo (ie mudando as
coordenadas) os pontos de âncora e de controlo dos caminhos. Isto é feito normalmente de forma
interactiva. Os pontos de âncora e de controlo podem ser apagados e adicionados aos caminhos,
também.
Alguns efeitos comuns que recaem entre os altamente estruturadas transformações e a livre
manipulação dos pontos de controlo são fornecidos pelos filtros. Incluídos no Illustrator temos o
roughening, que produz um contorno rugoso a um objecto pela movimentação dos pontos de
âncora do seu caminho num padrão denteado; scribbling, que move os pontos de âncora duma
forma aleatória; e arredondamento de cantos. A maioria dos filtros é parametrizada.
O importante a compreender acerca destas transformações é que são atingidas simplesmente
pela alteração das coordenadas de definição do objecto, alterando o modelo armazenado usando
nada mais que operações aritméticas que podem ser desempenhadas eficientemente.
GRÁFICOS 3-D
Modelos de objectos tridimensionais correspondem mais de perto ao modo como percebemos o
espaço. É-nos permitido gerar imagens bidimensionais como projecções em perspectiva.
Um modelo tridimensional permite-nos gerar muitas diferentes imagens dos mesmos objectos.
É um ramo complicado.
Em abstractos termos matemáticos, generalizar as coordenadas geométricas de 2 para 3
dimensões é directo.
As formas 2-D são substituídas por formas 3-D: esfera, cubo.
Rotações sobre uma linha arbitrária podem ser construídas de rotações sobre os eixos, mas isso
deixa-nos 3 rotações distintas a considerar.
Agora, em vez de caminhos, temos de definir objectos por superfícies, que requerem mais
matemática complicada e são muito mais difíceis de visualizar. O facto de que podemos apenas
trabalhar com representações bidimensionais enquanto construímos torna a visualização
geralmente difícil. o problema é exacerbado pelo facto de que apenas poderosas estações de
trabalho podem prover renderização em tempo-real de modelos 3-D.
A modelação hierárquica é uma forma bem estabelecida de lidar com a complexidade em muitos
campos.
Temos de considerar o ponto de vista.
Temos também de considerar a iluminação – a posição das fontes de luz, e a intensidade e tipo
de iluminação que têm.
Software 3-D é mais complexo e difícil de usar; é computacionalmente mais caro o processo e
requer adicional hardware tal como placas aceleradoras PCI 3-D.
MODELOS 3-D
Latamente falando, há 3 aproximações gerais ao problema de modelar objectos 3-D, que são
usualmente usados em conjunto. A mais simples, que tem o nome de constructive solid
geometry, usa uns poucos sólidos geométricos primitivos, tais como o cubo, cilindro, esfera e
pirâmide, como elementos a partir dos quais constrói objectos mais complexos. estes elemeentos
podem ser distorcidos, por achatamento ou esticão, para produzir variações de formas simples.
Também podem ser combinados usando os operadores união, intersecção e diferença.
É um modelo especialmente útil para modelar objectos manufacturados e característcias
arquitectónicas e para o CAD.
A modelação forma livre usa a representação da fronteira superficial do objecto como base do
seu modelo. É uma generalização do uso dos caminhos. Em vez de construir caminhos de linhas
e curvas, temos de construir supefícies de polígonos lisos ou embutimentos curvos. Quando a
renderização ráoida é precisa, como nos jogos 3-D, os polígonos são frerquentemente reduzidos a
triângulos).
A ideia básica é tratar uma forma de 2 dimesões como um cruzamento de secções, e definir um
volume varrendo a secção cruzada ao longo do caminho. O caminho mais simples é uma linha
recta. Uma forma cria um objecto com uma secção cruzada uniforme à medida que viaja ao longo
da linha recta. Por ex., um círculo cria um cilindro desta forma. Este processo é conhecido por
extrusão.
Devido à semelhança dos objectos resultantes com o tradicionais objectos torneados, este caso
especial é frequentemente chamado de lathing.
A 3ª aproximação é a modelação procedimental. Aqui, em vez de usar modelos que podem ser
descritos por equações, e guardar apenas as constantes que definem a instância particular,
usamos objectos que são descritos por um algoritmo ou procedimento. Ex. ‘Desenha uma curva
que mantém uma distância constante r da origem’. É útil para objectos mais complexos, menos
tratáveis matematicamente.
A técnica mais conhecida deste tipo é baseada nos fractais. São formas que exibem a mesma
estrutra a todos os níveis de detalhe.
O apareceimento de certas naturais características, tais como linhas de costa, montanhas e
margens das nuvens, aproximam-se desta propriedade, e são facilmente descritos por um
algoritmo recursivo. Um elemento de aleatoriedade é habitualmente introduzido.
Duas outras técnicas merecem uma breve menção. Metaballs são usadas por vezes para
modelar objectos suaves.
Nenhuma das técnicas que descrevemos é adequada para modelar chuva, fontes, incêndios ou
erva, que consistem num grande nº de elementos semi-independentes. Clamam por uma
dedicação ao detalhe, e uma quantidade de tempo, que muitos artistas de 3-D não têm. Sistemas
de Partículas permitem que característcias deste tipo sejam especificadas em termos de
parâmetros, a partir dos quais as posições das partículas individuais podem ser computadads
algoritmicamente. Esta técnica conduz à última modelação procedimental: física, que baseia o
modelo em característcias físicas dos objectos: massa e sua distribuição, elasticidade,
propriedades ópticas, etc. – a aparência pode ser deduzida usando as leis físicas. pode ser usado
para descrever objectos em movimento e gerar animação. Infelizmente, modelar coisas como as
roupas que trazemos vestidas está para além das teorias físicas mas é objecto de investigação.
RENDERIZAÇÃO
Devido à complexidade da renderização, e às suas exigências computacionais, é comum esse
processo ser manipulado por um módulo especializado, habitualmente referido como o motor de
renderização. Pode ser optimizado para multiprocessamento.
Quase todos os gráficos 3-D contemporâneos aspiram a um tipo de realismo associado com as
fotografias. Isto é, usa as convenções da perspectiva Renascentista (objectos distantes são mais
pequenos que os próximos). Usam também as leis da óptica para os efeitos da luz.
é relativamente fácil o motor renderizar os pontos que correspondem aos nodos do modelo 3-D.
Juntando esses pontos para mostrar amargem dos objectos e dos polígonos que forma as
superfícies, é possível produzir uma imagem wire frame do modelo, que são usadas muito em
preview image e podem também ser úteis em sistemas de CAD.
A característica mais notável nas wire frames é a ausência de qualquer superfície, o que é uma
desvantagem pois não mostarndo detalhes da superfície, por vezes é difícil determinar as
orientações dos objectos sem ambiguidade. Em ordem a mostrar as superfícies dos objectos, é
preciso determinar quais são as visíveis. Determinando-as, começando apenas de um modelo
baseado nas coordenadas dos cantos dos objectos não é uma tarefa trivial. Há vários testados e
tentados algoritmos para desempenhar a hidden surface removal. Uma vez isto feito, a próxima
tarefa é determinar como renderizar as visíveis.
Uma resposta é colori-las arbitrariamente, assegurando que não há faces adjacentes com a
mesma cor. esta aproximação não tem pretensões de realismo fotográfico, ams assegura que as
formas dos objectos são claramente visíveis. Uma alternativa é associar uma cor a cada objecto e
renderizar a sua superfície total nessa cor. É mais consistente com as nossas expectativas mas
conduz a ambiguidade visual. Para a resolver, temos de ter em conta o modo como a luz interage.
em muitos programs de modelagem de 3-D, as características das superfícies podem ser
associadas com um objecto setando valores a alguns parâmetros, incluindo a cor e refexividade.
Diferentes algoritmos, chamados algoritmos de sombreamento, são usados para esta tarefa,
cada qualq incorporando diferentes modelos de como a luz interage com superfícies.
A maneira mais simples de sombrear um objecto cuja superfície é feita de polígonos é calcular um
valor de cor para cada polígono, baseado na incidência de luz e nas suas proprioedades ópticas,
e usar esse valor para colorir todo o polígono. Isto pode provocar descontinuidades que podem
ser disfarçadas através de algoritmos mais sofisticados que interpolam cor ao longo dos
polígonos. Temos o Gouraud Shading, o Phong Shading.
Estes algoritmos lidam com o objecto isolado, mas de facto, a aparência de um objecto pode ser
afectada pela presença de outros. O Ray Tracing é um algoritmo que tenta entrar em conta com
isso. trabalha traçando o caminho de um raio de luz até cada pixel na imagem renderizada. Pode
produzir excelenetes resultados, particularmente em cenas que incluam objectos transparentes ou
semi-transparentes.
Uma aproximação alternativa é a radiosidade, que tenta modelar as complexas reflexões que
ocorrem entre diferentes superfícieas que estão próximas. bom para cenas interiores. É mais
baseado nas leis da física que os outros. também difere na computação da luz num modelo
independente de qualquer visão renderizada dele.
Estes algoritmos de sombreamento dependem da informação acerca do material de que o objecto
é composto.
Um modo popular de adicionar detalhes à superfície nos modelos 3-D é o mapeamento de
textura. Uma imagem, tipicamente um padrão representando algum tipo de aparência de
superfície, tal como cabedal, areia, mármore, etc, é matematicamente empacotada sobre a
superfície do objecto. Isto é, transformações matemática são aplicadas aos pixels daquele objecto
renderizado, baseado na imagem, para produzir um objecto com uma imagem que a empacota.
CAP. 5 IMAGENS BITMAP
Há uma área em que os bitmaps são menos simples que os vectores, e essa é a resolução.
Resolução
É uma medida de como finamente um dispositivo aproxima imagens contínuas usando pixels
finitos.
Há 2 formas comuns de especificar a resolução. Para as impressoras e scanners, a resolução é
usualmente dada em nº de dots per unidade de comprimento (dpi). Neste momento as
impressoras têm 600 dpi enquanto os imagesetters para impressão de livros têm 1200 a 2700 dpi;
os flat scaners vão de 300 a 3600 dpi.
Em vídeo, a resolução é normalmente especificada dando o tamanho de uma frame, medida em
pixels. Por ex. uma frame PAL tem 768x576 pixels; NTSC 640x480. Obviamente se soubermos as
dimensões físicas do monitor, podemos traduzir para dpis. As mesmas considerações se aplicam
a câmaras digitais.
Sabendo as dimensões em pixels, sabemos quanto detalhe está contido na imagem; o nº de dpis
no dispositivo de saída diz-nos o tamanho que a mesma imagem terá, e quão fácil será ver os
pixels individuais.
Os monitores de computador são baseados na mesma tecnologia, logo é comum ver a sua
resolução especificada como um tamanho de imagem, tal como 640 por 480 (VGA) ou 1924 por
768. contudo, a resolução é dada por vezes em dpis, devido à tendência nos sistemas de
computador de manter este valor fixo e aumentar as dimensões dos pixels da imagem exibida
quando um monitor maior é usado. assim, um monitor de 14” provê umdisplay de 640x480 a cerca
de 72dpi; um de 17” 832x624 pixels ao mesmo nº de dpis.
***Há uma complicação extra com as cores das impressoras. Como veremos, em ordem a
produzir uma gama completa de cores usando apenas 4 ou 6 tinteiros, as impressoras a cores
arranjam os dots em grupos, usando um padrão de diferentes tintas de cor dentro de cada grupo
para produzir a cor desejada por mistura óptica. Então, o tamanho do pixel colorido é maior que
um ponto de tinta individual. A resolução de uma impressora tomando em conta desta maneira de
misturar as cores é dada em linhas por polegada (ou outra unidade de medida), seguindo a
prática estabelecida na impressão. Esta figura é por vezes chamda a regulação do écran,
seguindo novamente a terminologia da indústria tradicional da impressão. O nº de linhas por
polegada será tão menor como 1 quinto do nº de dpis – a exacta relação depende de como os
dots são arranjados, o que varia de impressora para impressora, e muitas podem ser ajustadas
pelo operador. Deve perceber-se que, apesar de uma impressora a cores ter uma resolução de
1200 dpi, isto não significa a necessiadade de usar uma tão alta resolução para as nossas
imagens. Uma resolução de 137 por polegada é comumente usada para imprimir revistas (neste
livro – 150)***.
Nas imagens guardadas os pixels não têm dimensões físicas. Na ausência de mais informação, o
tamanho físico da imagem vai depender da resolução do dispositivo. Por ex. o quadrado da pg.75
é de 128 pixels de largura. quando exibido a 72 dpi, terá uma medida de 45mm; mas exibido num
écran de 115dpi terá apenas 28mm. Numa impressora de 600dpi terá 5mm. Em geral, temos:
dimensão física = dimensão em pixels / resolução do dispositivo
Mas as imagens têm um tamanho natural. Frequentemente queremos que a imagem a ser exibida
o seja nesse tamanho natural e não esticada ou encolhida com a resolução do dispositivo de
saída. em ordem a permitir isto, muitos formatos de imagem guardam a resolução com os dados
da imagem (em ppi – só para distinguir dos dispositivos físicos). A resolução gravada será
habitualmente aquela do dispositivo de onde ela é originária. Por ex, se a imagem é scaneada a
600dpi, a resolução da imagem gravada será 600ppi. Como os pixels da imagem foram gerados
a esta resolução, as dimensões físicas da imagem podem ser calculadas das dimensões dos
pixels e da resolução da imagem. É então uma simples questão do software que exibe assegurar
que aparece no tamanho natural, escalando pelo factor do resolução do dispositivo / resolução
da imagem.
Se a resolução de uma imagem é menor que a do dispositivo, deverá ser escalada, um processo
que requere a interpolação de pixels. Isto nunca pode ser feito sem a perda de qualidade, logo
devemos tentar assegurar que qualquer imagem que usemos nas nossas produções multimedia
tenham uma resolução de imagem pelo menos tão alta como as dos monitores onde vão ser
vistas.
Se, por outro lado, acontecer o contrário, alguns pixels são descartados – downsampling. Aqui
temos um paradoxo aparente. A qualidade subjectiva da lata resolução da imagem será
frequentemente melhor que a de uma imagem cuja resolução seja igual à do display.
A técnica de amostrar uma imagem (ou outro sinal) a uma alta resolução do que aquela a que
será exibida é chamada de oversampling.
Os browsers são notoriamente pobres no downsampling, e usualmente produzem um resultado
não melhor do que aquele que seria obtido começando de uma baixa resolução original. Por esta
razão, imagens intendidas para a Internet devem ser downsampled antes usando o Photoshop,
por ex.
O tamanho de uma imagem aumenta com o quadrado da resolução. Mesmo a resoluções baixas
como 72 ou 96 dpi, ficheiros de imagem podem tornar-se ingeríveis, especialmente sobre redes.
Por isso...
COMPRESSÃO DE IMAGENS
Em vez de armazenar o valor de cada pixel explicitamente, podemos guardar um valor, seguido
de uma contagem para indicar o nº seguinte de pixels daquele valor. A simples técnica de
substituir uma série de pixels consecutivos da mesma cor por uma cópia única do valor e uma
contagem do nº de pixels na série é conhecida por run-lenght encoding (RLE). A sua efectividae
depende da imagem a ser comprimida.
Mais realisticamente, imagens com tons misturados contínuos não darão origem a séries que
possam ser eficientemente codificadas, enquanto imagens com planos de cores sim.
É uma propriedade geral de qualquer esquema de compressão que haverá dados para os quais a
versão comprimida será maior que a não comprimida.
RLE é um exemplo de uma técnica de compressão sem perdas.
A compressão com perdas é adequada para dados, tais como imagens ou som, pois são
originadas em analógicas e já são aproximadas por isso. Algoritmos de compressão bem
desenhados asseguram que apenas os dados que são insignificantes à percepção da imagem ou
som são descartados, e assim substanciais ganhos de espaço de aramazenamento podem ser
atingidos com uma pequena e imperceptível perda de qualidade. Contudo, como há perda de
dados numa compressão, se os dados forem repetidamente comprimidos e descomprimidos, a
sua qualidade deteriora-se progressivamente.
COMPRESSÃO SEM PERDAS
Mais sofisticados que o RLE, caem em 2 classes: os que recodificam os dados de modo a que os
valores mais frequentes ocupem menos bits, por ex. usando códigos de comprimento variável,
conforme a utilização das cores (nº) na imagem. O melhor desta classe é o código de Huffman.
Embora usados foram substituídos em grand parte por esquemas de compressão baseados em
dicionários. Estes trabalham constuindo uma tabela, ou dicionário, na qual são guardados strings
de bytes (não necessariamente correspondentes a caracteres) que são encontrados nos dados de
entrada; todas as ocorrências de uma string são depois substituídas por um ponteiro para o
dicionário. O processo é parecido com a tokenização de nomes feito por um analisador lexical
dum compilador. Em contraste aos anteriores, estes usam códigos de comprimento fixo, mas
estes apontam para strings de tamanho variável no dicionário. A efectividade deste tipo de
compressão depende de escolher as strings para entrar no dicionário de modo a que seja salvado
espaço na memória produzido por repô-las pelos seus códigos. Idealmente, as entradas devem
ser strings longas que ocorrem frequentemente. Há dois métodos destes, um dá origem ao GIF e
outro ao PNG.
COMPRESSÃO JPEG
A compressão sem perdas é a única que pode ser aplicada a executáveis, folhas de cálculo, texto.
Mas a imagens não. A mais importante técnica de compressão com perdas para imagens é a
compressão JPEG. É melhor para fotografias e imagens similares que são caracterizadas por
detalhes finos e tons contínuos.
No cap. 2 considerámos os valores do brilho ou da cor de uma imagem como um sinal, que pode
ser decomposto nas suas frequências constituintes. Uma maneira de encarar isto é esquecer que
os valores dos pixels guardados denotam cores, mas considerar meramente que são valores de
uma determinada variável z. baseados na experiência, as pessoas não percebem o efeito das
altas frequências muito bem, especialmente nas imagens a cores.
JPEG funciona realmente transformando a imagem nas suas componentes de frequência. Não
pela TFourier, mas uma operação relacionada Discrete Cosine Transform (DCT). Em termos
computacionais, toma uma array de pixels e produz um array de coeficientes, representando a
amplitude das componentes de frequência na imagem. Este array terá o mesmo tamanho que o
de pixels original. DCT é computacionalmete pesado. Mesmo agora, permanece impraticável
aplicar DCT a uma imagem inteira de uma vez só. em vez disso, as imagens são divididas em 8x8
pixels, cada qual é transformado separadamente.
Esta transformação no domínio da frequência não leva a qualquer compressão, apenas muda os
dados de forma, de mod a que possam ser comprimidos duma forma que minimiza o efeito
perceptível de descaratar informação, porque as frequências estão agora explicitamente
separadas. Isto permite que informação acerca das altas frequências que não contribuem muito
para a qualidade perceptível da imagem, sejam descartadas. Por ex. se cada valor produzido pelo
DCT para cada frequência puder ter 256 níveis, para as altas usamos apenas 128. Isto é, as
diferentes frequências são quantizadas a diferentes nºs de níveis, com menos níveis sendo
usados para as alatas frequências. Na compressão JPEG, o nº de níveis de quantização usados
para cada coeficiente de frequência pode ser especificado separadamente na matriz de
quantização, contendo um valor para cada coeficiente.
Este processo de quantização reduz o espaço requerido para guardar a imagem, de 2 formas.
Primeiro, muito componentes ficarão com zero coeficientes. Segundo, menos bits serão precisos
para guardar coeficientes não-zero. Para tirar vantagem da redundância que foi gerada na
representação dos dados, 2 processo de compressão sem perdas são aplicados ao array dos
coeficientes quantizados: os zeros são codificados em run-lenght e os outros em Huffman. Em
ordem a maximizar o comprimento do run de zeros os coeficientes são processados numa
sequência zigue-zague, isto porque as frequências crescem à medida que andamos do canto
superior esquerdo em ambas as direcções – o canto inferior direito está cheio de zeros e assim
encontramos longas sequências de zeros.
Na descompressão (processo inverso), de notar que não há passo de quantização inverso. a
informação que foi perdida durante a quantização foi-o para sempre.
Uma característica útil do JPEG é que é possível controlar o grau de compresão.
JPEG é muito eficiente quando aplicado a tipos de imagem para que foi desenhado: imagens
fotográficas e scaneadas com tons contínuos. Tais imagens podem ser comprimidas a 5% do seu
original sem aparente perda de qualidade.
Para níveis mais altos de compressão, as fronteiras dos quadrados 8x8 a que o DCT foi aplicado
tendem a tornar-se visíveis no écran, porque as descontinuidades entre eles significam que
diferentes componentes de frequências são descartados em cada quadrado. A níveis de
compressão baixo isto não interessa pois suficiente informação é retida pelas característcias
comuns dos quadrados adjacentes. Estas indesejáveis característcias numa imagem comprimida,
são chamdas de artefactos de compressão. Outros artefactos podem surgir especialmente nas
formas aguçadas que se tornam enevoados, e é mais importante no texto que se pode tornar
ilegível. Para imagens com muitas pontas aguçadas, JPEG deve ser evitada. Deve ser usado o
PNG.
MANIPULAÇÃO DE IMAGEM
Uma imagem bitmap explicitamente guarda um valor para cada pixel, de modo que podemos, se
quisermos, alterar esse valor ou dum grupo de pixels, para alterar a imagem.
Em ordem para a edição da imagem ser conveniente, é necessário que as operações sejam
fornecidas a um grau mais elevado que apenas um único pixel.
porquê manipular as imagens? Há 2 razões gerais: uma é corrigir sa suas deficiências, a outra é
criar imagens que seria difícil ou impossível de fazer naturalmente. Um ex. é a remoção dos olhos
vermelhos (é causado pela reflexão da luz na retina das pessoas) por se ter usado um flash muito
perto da lente.
O desenvolvimento de plug-ins para o Photoshop tornou-se uma indústria por direito próprio e
muitos outros programas podem usá-los agora.
Uma operação que é típica de trabalhos multimedia, por outro lado, é a alteração da resolução de
uma imagem ou tamanho (essencialmente são a mesma operação). Frequentemente, imagens
que são para ser exibidas num monitor foram originadas a alta resolução e têm de ser
dowsampled; o tamanho de uma imagem pode precisar de ajuste para caber num layout, por ex.
uma web page.
***O Photoshop é, sem dúvida, a aplicação líder para a manipulação de imagem. Um nº de
pacotes, tal como o Adobe´s ImageReady e Macromedia’s Fireworks, que são dedicados a
preparar imagens para a WWW, omitem características orientadas para a impressão.
Selecções, Máscaras e Canais Alfa
Ironicamente, talvez, algumas das ferramentas que são usadas para fazer selecções de imagens
bitmap são mais ou menos as mesmas que são usadas para desenhar formas nos gr´ficos
vectoriais. As mais simples ferramentas de selecção são o marquee rectangular e elíptico.
Para o caso de formas irregulares, temos o lasso tool, que pode ser usado pra desenhar curvas
tipo à mão; o polygon lasso.
Para facilitar a tarefa de fazer selecções, são disponibilizadas duas ferramentas que fazem uso
dos valores dos pixels para ajudar a definir a área deleccionada. São a magic wand (varinha
mágica) e o lasso magnético.
A primeira é usada para seleccionar áreas na base da cor. com esta ferramenta seleccionada,
clicando na imagem causa que todos os pixels adjacentes ao cursor que tenham cor similar ao
pixel debaixo do cursor sejam seleccionadas. A tolerância, isto é, a quantidade em que a cor pode
variar mas ainda assim ser considerada suficientemente similar para ser incluída na selecção,
pode ser especificada.
O lasso magnético trabalha com um princípio diferente. Como outras ferramentas lasso, é
arrastada à volta da áqrea a ser seleccionada, mas em vez de simplesmente seguir a fronteira
desenhada pelo utilizador, auto-ajusta-se de modo a que se agarra Às margens dentro de uma
certa distância do cursor. Qualquer grande mudança no contraste é considerada uma margem.
Ambas a distância em que as margens são detectadas e o grau de variação de contraste podem
ser especificadas.
Uma vez a selecção feita, qualquer alteração, tal como aplicar filtros, por ex., é restringida aos
pixels da área seleccionada. Uma outra forma de dizer isto é que a selecção define uma máscara.
Podemos guardar uma máscara digital com um comportamento similar ‘tudo ou nada’ usando um
único bit para cada pixel na imagem, colocando-o a 1 para tudo o que está fora da máscara e 0
para os que estão na selecção. A máscara é então um novo array, ie, uma nova imagem. Esta
imagem será puramente monocromática; por analogia com as máscaras fotográficas, as partes
brancas da imagem são consideradas transparentes e as preats opacas.
Usando mais que um bit, a máscara fica uma imagem cinzenta, podemos especificar mais de um
grau de transparência – esta máscara é chamada de canal alfa. Qualquer pintura, filtro ou outras
modificações feitas aos pixels cobertos pelas àreas semi-transparentes da máscara serão
aplicadas num grau proporcional ao valor armazenado no canal alfa. É comum usar 8 bits para
permitir 256 graus de transparência.
Um uso de tal stencil será produzir uma margem suave à volta de uma forma cortada. Duma
forma similar, a margem de uma selecção pode ser ‘feathered’, isto e´, a transição abrupta do
preto para o branco no canal alfa é substituída por um gradiente.
Normalmente, uma camada numa imagem Photoshop, obscurece tudo debaixo dela. contudo,
todos os layers podem ter associada uma máscara de camada, a qual é essencialmente um
canal alfa aplicado a essa camada. Quando 2 camadas são sobrepostas, se a superior tem a
máscara aplicada, a debaixo maotrará através das partes sem máscara da camada superior. No
caso da máscara de 1 bit, isto significa que a camada debaixo se mostrará onde a máscara é
preta. Se a máscara for de escala cinzentos, o de baixo mostar-se-à parcialmente através das
áreas cinzentas. O valor p de um pixel como resultado da imagem composta é calculado como
p=αp1 + (1-α)p2, onde p1 e p2 são os valores dos correspondentes pixels nos 2 layers e α é
normalizado entre 0 e 1.
PROCESSAMENTO DE PONTOS DE PIXEL
O procesamento da imagem é feito pixel a pixel, logo, para um pixel com valor p, claculamos um
novo valor p’=f(p), onde f é chamada a função de mapeamento. Tais funções executam
processamento por ponto pixel. Um ex. simples, e raro, é a construção de um negativo de uma
imagem de escal de cinzentos, onde f(p)=W-p, onde W é o valor do pixel que representa o branco.
Mais sofisticados são os processamentos relacionados com a correcção de cor e altearção.
Aqui vamos considerar o brilho e o contraste, alterações que são típicas do PPP a imagens de
escala de cinzentos.
O controlo de ajuste do brilho funciona ajustando o valor de cada pixel para cima ou baixo
uniformemente. Assim, aumentar o brilho torna cada pixel mais brilhante, com mais luz. O
contraste é mais subtil: ajusta a gama de valores, quer enriquecendo ou reduzindo a diferença
entre as áreas com mais e menos luz da imagem.
Ambos estes ajustes produzem uma relação linear que poderia ser representada por uma linha
recta num gráfico: ajustando o brilho muda a intercepção entre a linha e o eixo dos y; ajustar o
contraste altera o gradiente da linha.
Mais controlo é fornecido pelos níveis de diálogo, que permitem mover os pontos finais de uma
função de mapeamento linear individualmente, setando os níveis de branco e o preto na imagem.
Graficamente, estes ajustes esticam ou encolhem a função de mapeamento horizontal ou
verticalmente. Para ajudar a escolher níveis adequados, um display chamado o histograma da
imagem é usado. Ele é um histograma mostrando a distribuição dos valores dos pixels: o eixo
horizontal representa os possíveis valores (0 a 255 numa imagem de escala de cinzentos de 8-
bits), as barras mostram o nº de pixels setados para cada valor.
...
CAP. 6 COR
Talvez a mais importante coisa a compreender acerca da cor é que nem sempre precisamos dela.
Por vezes, variações no brilho são suficientes.
Na produção multimedia de laraga escala é avisado assegurar que há pessoas artisticamente
formadas, e deixar as decisões de cores com eles.
COR E CIÊNCIA
Como a luz é uma forma de radiação electromagnética, podemos medir o seu comprimento de
onda – o da luz visível varia entre 400nm e 700nm – e a sua intensidade. Podemos combinar
estas medidas numa distribuição espectral de potência (SPD), uma descrição de como a
intensidade de luz de uma particular fonte varia com o comprimento de onda.
Experiências subjectivas mostram que um SPD corresponde de perto ao que chamamos cor, no
sentido que observadores podem com sucesso associar a luz com um particular SPD a uma cor
específica. Mas os SPDs são enfadonhos de trabalhar quando queremos especificar cores para
usar no computador, logo temos de usar uma abordagem diferente.
Os olhos humanos contém 2 tipos de células recetoras: rods, que fornecem a visão nocturna e
não conseguem distinguir a cor, e cones, que vêm em 3 diferentes tipos, que respondem a
diferentes comprimentos de onda – isto conduz à teoria dos 3 estímulos.
Embora inadequadamante costuma dizer-se que cada tipo de cone responde ao vermelho, verde
e azul, logo uma combinação das 3 cores dá uma qualquer. Chamamos a estas cores as cores
aditivas primárias. Segue-se que podemos construir écrans de TV e computador usando pixels
cada um feito de 3 pontos diferentes de fósforo, emitindo luz vermelha, verde e azul, e excitá-los
usando 3 feixes electrónicos, cuja intensidade podemos ajustar, um para cada cor.
A mistura óptica da luz emitida pelos 3 pontos componentes de cada pixel faz parecer como um
pixel da cor desejada.
Podemos construir monitores com esta teoria e funcionam mais ou menos. Contudo, é uma teoria
simplificada e alguns problemas subtis se ignorarmos a natureza mais complexa da luz.
Felizmente os maiores problemas relacionam-se com a impressão e não acontecem
frequentemente com trabalho multimedia.
CORES RGB
A ideia de que as cores podem ser construídas de luz vermelha, verde e azul conduz-nos ao
modelo de cores RGB., no qual uma cor é representada por 3 valores, que dão as proporções de
luz vermelha (R), verde (G) e azul (B) que devem ser combinadas para fazer a luz da cor
desejada. Estes RGB são os 3 primários standards SPDs. Em geral o azul primário é mais ‘blue-
violet’ e o vermelho, ‘laranja sombreado’) Na computação, contudo, ao contrário das TVs, não há
um standard universalmente aceite. Asssim, as cores produzidas em resposta a uma valor RGB
específico podem variar fortemente entre monitores.
É também importante estar prevenido que não é sempre possível representar qualquer cor visível
como uma combinação de componentes red, green e blue. Relembrar o RGB colour gamut.
Na prática, a amioria das cores perceptíveis no mundo caiem no RGB gamut., que assim provê
um modelo útil, simples e eficiente de representar as cores.
Como o preto representa a ausência de luz, o seu valor RGB é (0%, 0%, 0%). Enfatizamos que os
3 valores representam as quantidades de luz das 3 cores primárias que devem ser misturadas
para produzir luz de uma cor specífica. Não confundir esta mistura aditiva de cores com mistura
de cores para pintura, que é um processo de mistura subtractiva, pois a tinta absorve luz. Os
monitores de computador emitem-na. Os scanners trabalham detectando a luz refelectida do
documento scaneado, logo trabalham com cores aditivas.
Os valores de r,g e b não são absolutos e só os seus relativos valores interessam.
Muito poucas pessoas, se alguma, conseguem distinguir mais as cerca de 16,8 milhões de
combinações distintas fornecidas pelo uso de 256 valores para cada valor de cada componente
rgb.
PROFUNDIDADE DE COR
Este nº de 256 é conveniente pois corresponde a 1 byte para codificação. Assim, uma cor RGB
pode ser representada por 3 bytes, ou 24 bits (é a profundidade de cor – o nº de bits).
A profundidade de cor de 8 bits, ilustrada na 2ª fotografia da fig.6.3 em que um único byte é usado
para guardar uma cor, fornece 256 cores, e tem largo uso, quer em monitores de PCs domésticos
quer na WWW.
No caso em os valores RGB têm profundidade 16, que não é divisível por 3, ao green são
alocados 6 bits e às outras cores 5 cada. Isto porque o olho humano é mais sensível à luz verde.
Apesar dos 24 bits ser o mais usado, 30, 36 ou até 48 bits, estão a ser cada vez mais usados,
especialmente por scanners. Suporte para 48 bits é incluído na especificação do formato de
ficheiros PNG. Estes grande depths tÊm 2 motivos: 1º a informação adicional dos bits extra torna
possível aproximações mais apuradas quando a imagem a uma profundidade menor para
exibição. Segundo, é possível fazer distinções extremamente finas entre cores, de modo a que
efeitos como o chroma-key possam ser aplicados apuradamente.
Por vezes há a distinção: 24 bits – milhões de cores; 16 bits – milhares de cores e 8 bits – 256
cores. Os nomes true colour e hi colour são também usados para 24 e 16 bits respectivamente.
A profundidade de cor é um factor crucial na determinação do tamanho da imagem bitmapped.
Se a profundidade da cor tiver de ser reduzida, e a escala de cinzentos não for desejada, então
uma estratégia alternativa tem de ser empregada.
CORES INDEXADAS
Implicitamente assumimos que os vaolres RGB são usados directamente para controlar a
intensidade dos 3 feixes electrónicos, assim determinando a cor a ser exibida. este modo é
conhecido por cor directa. Há, todavia, uma alternativa, que largamente usada em computadores
low-end e WWW, conhecido como cor indexada.
Nestes sistemas pode dar-se o caso de a VRAM (RAM de vídeo) fornecida pelo monitor não ser
suficiente para manter uma imagem de 3 bytes por pixel. Outra restrição é o tamanho do espaço
disponível em disco, ou para transmitir em rede.
O sistema de cores indexadas fornecem um meio de associar uma palette de 256 cores
específicas a cada imagem.
Uma maneira de pensar acerca das cores indexadas é que é o equivalente digital de pintar com
números. No nosso caso, os pixels guardam um pequeno nº que identifica uma cor de 24 bits da
palette associada com a imagem, assim a palette inclui apenas os valores de RGB a 24-bits para
as cores usadas na imagem. Quando a imagem é exibida, o sistema gráfico procura a cor da
palette correspondente a cada valor de byte único guardado em cada pixel e usa o valor
encontarado para colorir esse pixel.
Os programadores experimentados reconhecem a estratégia: é um ex. do axioma que diz que
todos os problemas podem ser resolvidos adicionando um nível de indirecção. Então, em vez de
tenatr usar 8 bits para guardar um valor RGB, usamo-lo para guardar um índice para uma tabela,
com 256 entradas, cada qual guarda um valor de cor RGB 24-bit completo. Essa tabela indexada
de valores de cores é chamada de Colour Lookup Table (CLUT) ou, mais simplesmente, uma
palette.
Mesmo se o hardware de display suportar 24-bit cor directa, cor indexada pode ser por vezes
usada para reduzir o tamanho dos ficheiros de imagem; nesse caso, a procura CLUT pode ser
feita por software.) Se não for fornecida uma palette, uma de defeito do sistema é usada (as
palettes de sistema das maiore plataformas são diferentes.
Para 2 imagens no mesmo écran há problema e cada palette associada a acad imagem pode
ainda ter de ser reduzida. Notar, no entanto, que se o hardware suportar cores de 24-bits, tudo o
que é necessa´rio é que o software (ex. os web browsers) interpretem a palette de cada imagem.
Se a cor indexada vai ser usada um ficheiro de imagem precisa de gaurdar a palette juntamente
com os dados da imagem, mas os dados da imagem podem ser menores num factor de 3 o que
conduz sempre a um aproveitamento de espaço.
Dos formatos de ficheiros mencionados no cap. 3, PNG, BMP, TGA e TIFF, permitem o uso de
palettes de cores; o GIF requere-o pois só suporta imagens de cores indexadas de 8-bit. Imagens
JPEG guardadas em cores 24-bit têm de ser reduzidas a 8-bit se necessário, ao mesmo tempo
que são exibidas.
Contudo, em imagens que já existem (fotografias, scaneadas) em 24-bits, será necesa´rio cortar o
nº de cores para preparar uma versão que use cores indexadas e 8-bit. O que pode ser feito com
as áreas que deviam ser exibidas com cores que não estão na aplette reduzida?
Obviamente, as cores em falta devem ser substiuídas por uma das que estão na palette. Há 2
maneiras populares de fazer isto. a primeira é substituir o valor da cor de cada pixel individual com
a CLUT indexada da cor mais próxima. Isto pode levar a efeitos indesejáveis: não apenas
distorções de cores, mas perda de detalhe quando duas cores parecidas são substituídas por uma
mesma e outros visíveis artefactos – posterização portanto.
Quando ela não é aceitável, há outro método, em que áreas de uma única cor são substituídas
por um padrão de pontos de várias diferentes cores, duma maneira que a mistura óptica no olho
produz o efeito de uma cor que na realidade não está presente. Ex. a área é pink que não tenho
na palette. Então faço uma mistura óptica para a obter. este processo é conhecido por dithering.
O processo é uma extensão do uso do meio-tom usado para imprimir escalas de cinzentos. a
baixas resoluções, o dithering pode causar resultados pobres, logo é mais indicado para trabalhos
em alta resolução.
Em geral, um bloco de nxn pixels pode simular n2+1 tons de cinzento, mas a expensas da
resolução.
Se cada pixel pode ser de uma de 256 diferentes cores, em vez de apenas preto e branco, então
os padrões correspondentes podem simular milhões de cores. contudo, estas cores simuladas
são, com efeito, aplicadas a pixels 4 vezes maiores daqueles do écran, então a efectiva resolução
da imagem é meada, resultando numa perda de detalhe. Enquanto isto é aceitável para impresão,
onde resoluções de 600dpi são comuns, é frequentemente intrusivo quando as imagens são
exibidas em écrans de 72dpi.
Isto deixa o problema de que cores devem estar na palette. Idealmente deverão ser as cores mais
importantes da imagem, o que é feito facilmente pelo Photoshop. Por vezes é preciso fazer à mão.
e não podemos assegurar-nos que todos os programas usem essa palette, alguns usam logo a de
defeito do sistema. Quando há essa suspeita o melhor é logo usarmos a palette de sistema e
fazer melhoramentos. Infelizmente, as palettes de sistema das maiores paltaformas são
diferentes. Um conjunto restrito de 216 cores, usulamnete referido como a Web-safe palette, é a
única palette em que podemos confiar que será reproduzida pelos browsers em qualquer sistema
usando cores de 8-bits. É a melhor opção.
OUTROS MODELOS DE CORES
CMYK
Cada um destes 3 é formado adicionando 2 das aditivas primárias. Como todas as 3 aditivas
primárias se combinam para formar a luz branca, podemos dizer igualmente que o cyan, por ex.,
que é a mistura de azul e verde, é produzido subtraindo a primária restante, vermelha, da luz
branca. algebricamente:
C = G+B = W-R
M = R+B = W-G
Y = R+G = W-B
Em cada equação, a cor da esquerda é chamada a cor complementar da da extrema direita.
A relevância desta experiência tem 2 aspectos. Primeiro, é a base para uma teoria de cores que
teve grande influência no uso da cor em arte e design. Segundo, a ideia de formar cores por
subtracção de luz em vez de adição fornece um modelo de cores paropriado para tinta e pintura,
pois são substâncias que têm a cor devido ao facto de absorverem luz.
Quando, por ex., falamos de tinta cyan, significamos tinta que quando aplicada a papel branco e
iluminada por luz branca absorve o vermelho, permitindo que o verde e azul, que combinados
produzem o cyan, sejam reflectidas.
Misturas contendo diferentes proporções de tinta cyan, magenta e amarelo, absorverá luz
vermelha, verde e azul nas correspondentes proporções, assim (em teoria) produzindo a mesma
gama de cores como a adição de vermelho, verde e azul luzes primárias. São conhecidas como
as primárias subtractivas.
Na prática, não é possível manufacturar tintas que absorvem apenas luz de precisamente (e
apenas) as cores complementares. Como resultado, o gamut é diferente do do RGB. aléms disso,
combinar tintas das 3 cores não produz um bom preto. Por estas razões, na impressão as 3 são
aumentadas com o preto, que dá ao sistema destas 4 cores de processamento o nome de
CMKY. O seu gamut é menor que o do RGB, mas não é um subconjunto.
Para o multimedia o CMYK não tem relevância, apenas para impressão, e aí devemos garantir
que as nossas produções só têm cores do gamut CMYK.
HSV
Dividir as cores em 3 componentes faz sentido do ponto de vista teórico e reflecte a maneira como
os dispositivos funcionam, mas como maneira de descrever cores, não corresponde à maneira
como nós experenciamos as cores do mundo. Olhando para um pálido (cyan) azul, não o
relacionamos como uma mistura de luz verde e azul-violeta, mas em vez disso a outros azuis, de
acordo com a proximidade ao azul puro, ou quanto esverdeado aparenta, ou quanto escuro ou
luminoso é.
Em termos mais formais, podemos considerar para a cor: um hue (tonalidade), uma saturação e
um brilho. Em termos físicos, hue é o comprimento de onda particular em que a maioria da
energia da luz está concentrada (o dominante). em termos menos científicos, identificamos os hue
por nomes. Newton identificou 7 – arco-íris. Embora ele tivesse razões místicas para escolher 7
cores no arco-íris, mais normal é distinguir 4: vermelho, amarelo, verde e azul, e definir
informalmente o hue como a extensão à qual a cor se parece, ou uma mistura de 2 destas.
Um hue puro pode ser mais ou menos ‘diluído’ por mistura com o branco O hue dominante
(comprimento de onda) permanece o mesmo, mas a presença de outros hues torna a cor mais
pálida. A saturação de uma cor é uma medida da sua pureza. Cores saturadas são hues puros; à
medida que o branco se mistura, a saturação diminui. O brolho de uma cor é a medida de quanto
luminosa ou escura ela é.
Em termos de pintura, um hue é uma cor pura. Adicionando branco diminui a sua saturação,
produzindo uma tint/matiz. Adicionando preto diminui o brilho produzindo uma tonalidade.
Desde o séc. XIX os pintores sistematizaram a roda das cores. As subtractivas primárias ficam
igualmente espaçadas e as aditivas primárias ente elas, de modo que cada primária é oposta à
sua complementar. Como as subctrativas é que eram chamadas de primárias, os seus
complementos são cores secundárias e as cores produzidas por misturas são terciárias.
Esta roda pode ser extendida para produzir um modelo alternativo de cores. Qualquer hue pode
ser especificado como um ângulo à volta do círculo, com red a 0 graus. A saturação pode se
adicionada ao modelo pondo o branco no centro e depois mostrar uma gradação de matizes dos
hues satuardos no perímetro até ao branco no centro. Para adicionar o brilho a este modelo,
temos uma terceira dimensão que forma um cilindro.
Uma cor particular pode ser identificada pelo seu hue (H), a sua saturação (S) e brilho (V).
Apesar do modelo HSV ser aplicável, de relembrar que é um bocado arbitrário.
Podemos escolher cores interactivamente usando uma caixa de diálogo picker colour.
Espaços de Cores Baseados nas Diferenças das Cores
Para alguns fins é útil separar a informação do brilho de uma imagem da sua cor. Historicamente
para transmitir tv a cores para velhos televisores a preto e branco.
Em particular, é prática comum na emissão analógica usar menos largura de banda para transmitir
a cor do que o brilho, pois o olho é menos sensível à cor que ao brilho. Há evidência que sugere
que o olho humano processa o brilho e a cor separadamente.
No modelo RGB, o brilho está misturado nas cores mas não é RGB/3 pois o olho não é
igualmente sensível às 3 cores, o verde contribui mais. Há pois várias fórmulas mas a mais
recomendada para os tubos de raios catódicos, como usados nos monitores dos computadores e
TVs, é: Y=0,125R + 0,7154G + 0,0721B, em que Y define a luminância. Por razões técnicas as
cores são representadas em função dos valores de 2 diferenças de cores, habitualmente: B-Y
ou R-Y. E então o sistema é conhecido como YUV.
ESPAÇOS DE CORES INDEPENDENTES DO DISPOSITIVO
O RGB e o CMYK são dependentes dos dispositivos.
A Comission Internationale de LÉclairage (CIE) tentou um objectivo de arranjar uma definição de
cores independente dos dispositivos. O seu modelo básico, o espaço de cores CIE XYZ , usa
3 componentes X, Y e Z para aproximar os 3 estímulos aos quais as partes sensíveis do olho
respondem. Só que é inepto para trabalhar e impossível de relizar com fontes de luz físicas. Sofre,
como os osutros modelos, de não ser perceptualmente uniforme. Um sistemas destes seria um
em que a mesma mudança num dos valores produziria a mesma mudança na aparência. Ex. R de
1 para 11 produziria o mesmo aumento de vermelhidade que de 101 para 111.
Eles continuaram a tentar e o mais perto que conseguiram do perceptualmente uniforme, são o
L*a*b e o L*u*v. Em ambos os modelos a componete L* é uma luminância uniforme, o primeiro é
subtractivo e o segundo aditivo.
Estes modelos não correspondem a uma maneira fácil de entender a cor, por isso não os
podemos usar directamente. Mas são usados como ponto de referência para sistemas que tentam
garantir que as cores que especificamos nas nossas imagens se parecerão o mais possível, seja
qual for o dispositivo em que sejam exibidas.
CANAIS E CORRECÇÃO DE CORES
Em vez do 24 bits de um sistema RGB ficarem guardados num array, vamos é gaurdá-los em 3
arrays, o que traz vantagens computacionais. Cada um dos arrays pode ser considerado uma
imagem. Cada uma das 3 imagens em escala de ‘cinzentos’ é chamado um canal. Cada canal
pode ser manipulado independentemente, logo há manipulações de imagem do Photoshop que se
aproveitam disso. Em particular níveis e curvas podem ser usados para alterar o brilho e contraste
de cada canal independentemente.
...
CAP. 7 VÍDEO
Todos os métodos correntes de mostrar imagens em movimento, dependem do fenómeno
conhecido por persistência da visão – um hiato na resposta do olho humano a estímulos visuais
que resulta em ‘after-images’ – para a sua eficácia.
Se forem passadas a uma taxa superior à frequência de fusão, experimentamos uma sensação
visual de continuidade em vez de perceber imagens individuais (que devem diferir pouco entre
uma e a seguinte, para percebermos como movimento dos elementos dentro das imagens).
A frequência de fusão depende do brilho da imagem relativamente ao seu ambiente, mas é cerca
de 40 imagens por segundo. Abaixo é percebido um efeito de flickering/vacilação.
Há 2 maneiras de gerar imagens em filme numa forma digital para inclusão numa produção
multimedia. Podemos usar uma câmara de vídeo para capturar uma sequência de frames
gravando movimento rel como acontce no mundo real, ou podemos criar cada frame
individualmente. Usamos o termo vídeo para a 1ª opção e animação para a segunda.
O vídeo coloca várias dificuldades no seu processamento, armazenamento e transmissão aos
sistemas de computadores. Isto porque as expectativas dos consumidores são altas (televisão). É
talvez a área do multimedia presentemente mais sujeita a mudanças técnica. Possivelmente o
vídeo vai ser passado a reduzidas taxas de frames, com jittering de frames desprezadas, em
janela spequenas e exibindo artefactos visíveis de compressão.
DIGITALIZANDO VÍDEO
A coisa que devemos manter na cabeça quando consideramos vídeo digital é o tamanho. Usam-
se imagens bitmap – geradas pelos aparelhos. O tamanho de uma imagem produzida para cada
frame de vídeo NTSC, é de 640x480 pixels. se usarmos cores de 24 bits, cada frame ocupa
640x480x3bytes, que é 900kbytes. Um segundo compreende 30 frames, o que dá 26MBytes,
cada minuto 1.6GBytes. No PAL, 768x576 a 25 frames por segundo, dá 31 MBytes por seg. ou
1,85 GBytes por min.
Não é pois de estranhar o uso de compressão, quer para transmissão, via Internet por ex., ou até
para tocar de CD-ROM.
Para capturar vídeo em tempo real, esta compressão tem de ser feita tão rapidamente que é
necessário hardware dedicado.
O vídeo digital pode ser capturado directamente da câmara, ou indirectamente de um VTR (vídeo
tape recorder). A tecnologia actual oferece dois sítios para fazer a digitalização e compressão: na
câmara ou no computador.
No caso de se usar a circuitaria da câmara , o sinal puro digital (data stream) é então passado ao
computador via uma interface de alta velocidade. A combinação de hardware mais usada para
capturar vídeo desta forma compreende uma câmara digital ou VTR usando uma das variantes de
formato DV – mini-DV, DVCAM ou DVCPRO – ligado a um computador por uma interface
FireWire, ou iLink segundo a denominação da Sony.
Todos os equipamentos DV suportam device control.
Apesar da qualidade subjectiva do DV ser muito boa, é um formato comprimido.
Se a digitalização for deita no computador, um sinal de vídeo analógico, conforme com algum
standrad de emissão de vídeo, é alimentado como input de uma placa de captura vídeo ligada
ao computador. Dentro dessa placa, o sinal analógico é convertido para digital. Usualmente o
resultado é comprimido na placa, apesar de por vezes se usar software.
A digitalização na câmara tem uma grande vantagem. Quando um sinal analógico é transmitido
sobre um cabo, mesmo a curta distância, será inevitavelemente corrompido, mesmo que pouco,
por ruído, ruído esse que també aparece quando dados analógicos são armazenados em fita
magnética. Sinais de vídeo composto (usados nos aparelhos domésticos) também estão sujeitos a
distorção, causada pela interferência entre a cor e o brilho, especialmente quando armazenados
em tapes VHS. Este fenómeno pode reduzir a efectividade da compressão. As pequenas
flutuações na cor, faz com que áreas que deviam ser compostas da mesma cor deixem de o ser, o
que torna a compressão fácil em perda de compressão e mais difícil.
A desvantagem da digitalização na câmara é que o utilizador não tem controle sobre ela. A
quantidade de compressão a ser aplicada é automática.
Os dispositivos de DV e as placas de captura de vídeo, além da compressão e digitalização,
também fazem, habitualmente, inversão, descompressão e conversão analógico-digital – são
conhecidos por codecs. É possível capturar os sinais de vídeo, armazenálos num computador, e
depois passá-los num monitor de TV ligado à linha de saída (analógica) câmara ou à saída da
placa de vídeo.
Quando se distribui multimedia, contudo, não há a certeza se o receptor tem um codec hardware
e, se tiver, qual é; aliás, normalmente é para ver no computador. Assim, precisam-se de codec
software: um programa que faz a mesma função como um codec de hardware dedicado, em
ordem a ssegurar que a audiência será capaz de passar o vídeo no monitor do computador
normal.
STREAMED VÍDEO (VÍDEO CORRIDO)
significa entregar dados de vídeo de forma corrida de um servidor remoto, para ser passado
assim que chega.
Tal streamed vídeo parece emissão de televisão.
Qualquer computador devidamente equipado pode actuar como receptor e transmissor, e assim
os utilizadores podem comunicar visualmente, tomando parte daquilo que se chama vídeo-
conferência.
O obstáculo principal ao streamed vídeo é a largura de banda. Mesmo o vídeo altamente
comprimido e downsampled a um quarto do normal do tamanho das frames requer uma largura de
banda de 1,86Mbits por seg. Por agora, quyalidade decente é restringida a redes locais, linhas T1
e conexões de banda larga (modems ADSL e cabo).
Pode ajudar a perceber a natureza do que se chama true streaming por contraste com o que se
vê na www. O método mais simples é o vídeo embebido em que o filme é transferido para o disco
rígido do receptor ao fim de ter todo chegado. Um refinamento é o chamado progressive
download ou HTTP streaming, em que também há transferência mas o filme arranca logo que
quantidade suficiente dele chegou. O filme fica no disco rígido – pelo menos na cache do web
browser – e assim deve haver espaço suficiente para armazenar todo o filme, de modo que o
progressive daownload não pode ser usado para ficheiros grandes.
Em contraste, o true streaming vídeo nunca é armazenado no disco, embora possa ser usado um
pequeno buffer para suavizar o jitter, e assim o true streaming pode ser usado para vídeo ao vivo.
Acesso aleatório a pontos específicos num stream é possível, excepto para streams ao vivo. True
streaming é assim adequado para aplicações ‘vídeo on demand’.
STANDARDS DE VÍDEO
Os novos dispositivos digitais devem manter compatibilidade com os velhos equipamentos
anlógicos em carcaterísticas essenciais tais como o tamanho das frames e a taxa de frames.
STANDARDS DE EMISSÃO ANALÓGICA
Há 3 conjuntos de standards em uso para emissão analógica de televisão a cores. O mais velho é
o NTSC (National Television Systems Committee). Na Europa é o PAL (Phase Alternating Line), e
em França é o SECAM (Séquential Couleur avec Memóire)
Tal como os monitores dos computadores, as televisões trabalham em segundo o princípio de
varrimento raster (desenho formado por linhas). Conceptualmente, o écran é dividido em linhas
horizontais. Num CRT (Tubo de raios catódicos), 3 feixes de electrões, um por cada cor aditiva
primária, são emitidos e deflectidos por um campo magnético de tal forma que varrem o écran,
traçando uma linha; depois movem-se para baixo para traçar a próxima, e assim sucessivament. A
sua intensidade é modificada de acordo com o sinal de chegada de forma a que os pontos de
fósfor emitem uma adequada quantidade de luz quando os electrões chocam com eles. A imagem
que vemos é assim construída do cimo para o fundo como uma sequência de linhas horizontais
(podemos vê-las se nos aproximarmos o suficiente do écran). Mais uma vez, a persistência da
visão é precisa, para fazer esta série de linhas parecer como uma única imagem.
O écran deve ser refrescado a 40 vezes por segundo, o que requer grande largura de banda para
transmissão, o que era impraticável. em vez disso, cada frame é dividida em 2 campos, um de
linhas numeradas ímpar e outro par. São transmitidas uma após a outra, de modo a que cada
frame (imagem parada) é construída por entrelaçamento dos campos. Originalmente, a taxa a
que os campos eram transmitidos foi escolhida para bater com a frequência da rede elétrica local,
na europa Ocidental 50 por seg., e assim uma taxa de frames de 25 por seg usado no PAL. O
NTSC é 29.97.
Num monitor de computador não, em gearl, entrelaçamento. Isto é conhecido por progressive
scanning. Como todo o écran é refrescado do buffer das frames a alta velocidade, não ocorre
flickering, e de facto taxas de frames muito mais baixas podem ser usadas do que as necessárias
para emissão. Os campos podem ser combinados em frames quando o vídeo analógico é
digitalizado, ou podem ser armazenados separadamente e apenas combinados quando o material
é passado.
Quando os campos são combinados numa única frame para display progressivo (ou exportado
como uma imagem parada), as fronteiras dos objectos em movimento têm uma aparência de
conmbinação quando são deslocados entre campos. Para prevenir este efeito pode ser preciso
‘de-interlace’ por média dos 2 campos quando se constrói a frame única. mas isto é um
compromisso pobre. Uma outra opção é descartar metade dos campos (por ex. os pares) e
interpolar a informação que falta, o que dá também resulatdos pobres.
Cada standard de emissão define um padrão de sinais para indicar o começo de cada linha, e
uma forma de codificar a informação da imagem ela própria dentro da linha. algumas linhas extra
são transmitidas com cada frame, contendo a sincronização e outra informação. Uma frame NTSC
contém 525 linhas, das quais 480 são imagem; o PAL e o SECAM usam 625 linhas, das quais 576
são imagem.
STANDARDS PARA VÍDEO DIGITAL
Um standard CCIR 601 define a amostragem do vídeo digital. Como a frame de vídeo é bi-
dimensional, deve ser amostrada em ambas as direcções. É definido 720 amostras de luminância
e 2 conjuntos de 360 diferenças de cores por linha. Assim, ignorando a crominância e
entrelaçamento por um instante, uma frame NTSC amostrada segundo o CCIR 601 consistirá de
720x480 pixels, enquanto uma frame PAL 720x576 pixels.
O valor para o nº de pixels numa linha é produzido tomando o nº de linhas da imagem (576 ou
480) e multiplicando-o pela relação de aspecto (a relação da largura com a altura) da frame.
A assumpção é que os pixels são quadrados. Relaxando esta assunção, o CCIR 601 é capaz de
especificar uma taxa de amostragem que é idêntica para ambos os sistemas, e tem as propiedaes
desejáveis tal como prover o mesmo nº de amostragens horizontais em todas as linhas. Os pixels
CCIR 601 não são pois quadrados.
O espaço de cores é tecnicamente o Y’CBCR – podemos considerar os 3 componentes como a
luminância Y, e as diferenças B-Y e R-Y. Como 1º passo para reduzir o tamanho do vídeo digital,
o nº de amostras é baixo, um processo conhecido como chrominance sub-sampling. É
justificado porque os olhos humanos são mais sensíveis ao brilho que à variação de cores. Este
arranjo é conhecido como 4:2:2.
A taxa de dados resultante para o vídeo CCIR 601, usando 8 bits para cada componente, é de
166Mbits por seg.
DV E MPEG
Amostragem produz uma representação digital de um sinal de vídeo. Esta tem de ser comprimida
e depois formado o data stream para transmissão. Outros standards são precisos para especificar
o algoritmo de compresão e o formato do stream de dados.
Como dissémos antes o equipamento de vídeo digital intendido para os utilizadores domésticos e
não só é baseado no standard DV; o equipamento de estúdio, emissão digital de TV e DVD são
baseados no MPEG-2.
O DV e as suas principais variações – DVCAM e DVPRO – usam uma taxa de dados de 25Mbits
(cerca de 3Mbytes) por seg. e uma taxa de compressão de 5:1 usando uma amostragem 4:1.1.
Cada um dos MPEGS foi desenhado como uma família de standards, organizada em diferentes
perfis e níveis. Cada perfil define um subconjunto de características do stream de dados.
Cada nível define certos parâmetros, nomeadamente o tamanho da frame e a taxa de dados, e a
sub-amostragem da crominância. Nem todas as combinações de perfis e níveis são permitidas. A
mais comum em MPEG-2 é Main Profile at Main Level (MP@ML) que usa o CCIR 601 com 4:2:0
de sub-amostragem de crominância; suporta taxas de dados de 15Mbits por seg. É o formato
usado em televisão digital e DVD vídeo.
MPEG-4 é um standard ambicioso desenhado para suportar uma gama de dados multimedia a
taxas de bits do mais baixo como 10kbps até 1,8Mbps ou mais, o que permite usá-lo desde
telefones móveis a HDTV. Para acomodar isto define vários perfis. Em particular o Visual Simple
Profile (SP) pode ser usado para streaming de vídeo de baixa largura de banda sobre a Internet e
PDAs. O mais sofisticado Visual advanced Simple Profile (ASP) é adequado para streaming de
vídeo de banda larga para computadores de secretária. Para cada um destes perfis, diferentes
níveis especificam os valores dos parâmetros tais como o tamanho da frame e a taxa de dados.
Potencialmente pode suceder ao MPEG-2 mas o investimento existente em DVDs usando o
MPEG-2 faz parecer que vão coexistir durante algum tempo.
A compressão MPEG-4 é suportada no QuickTime e RealMedia, e é a base para o codec do
Sorensen Squeeze usado para adicionar vídeo aos filmes em Flash. Também é suportado pelo
Windows Media mas foi agora sucedido pelo codec proprietário no Windows Media 9. Também é
usado pelo sistema DivX. Os ficheiros vídeo DivX usam o formato de ficheiro AVI, com codec
MPEG-4 que suporta SP e ASP.
INTRODUÇÃO À COMPRESSÃO DE VÍDEO
A forma de compressão aplicada pelas câmaras digitais e placas de captura é habitualmente
optimizada para passar através dos mesmos dispositivos. Por ex., DV vídeo é melhor passado
através de um deck ou câmara de DV, não directamente num monitor de computador.
Para produção multimedia, preparamos usualmente o material vídeo usando um codec de
software, para aplicar uma forma de compressão mais adequada às capacidades do hardware
que será usado pelos consumidores. Asim, tipicamente, os nossos dados de vídeo precisarão de
ser comprimidos 2 vezes. Primeiro durtante a captura e depois na preparação para distribuição.
Precisamos pois compreender as características gerais dos algoritmos de compressão
empregados em ambos os estágios.
Há 2 modos, tendo em conta que são imagens bitmap: cada imagem individual pode ser
comprimida isoladamente ou sub-sequências de frames podem ser comprimidas armazenando
apenas as diferenças entre elas: são a compressão espacial (intra-frame) ou compressão
temporal (inter-frame) e pode ser usadas juntas.
Na compressão espacial há que distinguir entre métodos lossless e lossy. geralmente os lossless
não produzem compressão suficiente para reduzir os dados de vídeo a proporções manuseáveis.
Os lossy apesar de conduzirem a deterioração são quase sempre inevitáveis.
Para pós-produção há que descomprimir, o que requer suficiente espaço no disco.
Há uma ironia no facto de que uma das coisas mais ditas sobre as vantagens do vídeo digital é
que não gera perdas; mas a compressão e o facto de ser feito um considerável esforço para
divisar métodos que impeçam as pessoas de fazer cópias exactas é a ironia.
O princípio por detrás da compressão temporal é simples: Certas frames numa sequência são
designadas por key frames, frequentemente a intervalos regulares. Estas key frames são
deixadas descomprimidas ou só comprimidas espacialmente. Cada uma das que ficam no meio é
substituída por uma difference frame.
A compressão e descompressão de uma peça de vídeo não precisam de levar o mesmo tempo;
geralmente a compressão leva mais. Se levarem o memso tempo o codec diz-se simétrico, caso
contrário assimétrico.
MOTION JPEG
Muitos esquemas de compressão de vídeo, tal como a compressão de imagem JPEG, baseiam-se
no uso da Discrete Cosine Transformation. A aproximação mais directa é aplicar compressão
JPEG a cada frame sem compressão temporal.
Usando-se Y’CBCR, a compressão JPEG pode ser aplicada directamente a estes dados, tomando
vantagem da compressão já atingida por este sub-sampling. Esta técnica é conhecida por Motion
JPEG ou MJPEG e é usada na maioria das placas de captura analógicas.
Na ausência de standard há um consórcio que concordou no MJPEG-A que é suportado pelo
QuickTime e permite assim a portabilidade.
Como as imagens paradas JPEG, os codecs MJPEG permitem ao utilizador especificar a
qualidade, negócio entre a alta compresão contra a qualidade da imagem. Normalmente é
permitido a especificação da máxima taxa de dados. Taxas de dados à volta de 3Mbytes por seg.,
correspondendo a taxa de compressão à volta de 7:1 são comuns nas placas de captura low e
mid-range (Quanto mais pagas pela compresão menos dela temos).
DV
Também usa o DCT e quantização subsequente para reduzir a quantidade de dados no stream de
vídeo mas aplica alguns truques espertos para atingir maior qualidade de imagem dentro de uma
taxa de dados constante de 25Mbits (3.25Mbytes) por seg., que o JPEG produz à mesma taxa.
Começa com sub-sampling da crominância – PAL: 4:2:0; NTSC: 4:1:1)
Blocos de 8x8 pixels usam a compressão JPEG. Primeiro, o DCT pode ser aplicado a 64 pixels
em cada bloco de 1 de 2 formas. Se a frame é estática a transformação é aplicada ao bloco
inteiro; se é movimentada o bloco é partido e 2 de 8x4, cada qual transformado
independentemente.
Uma stream DV deve usar exactamente 25Mbits por seg; 14 bytes estão disponíveis para cada
bloco. Para alguns blocos, cuja representação transformada tem muito scoeficiente iguais a zero,
isso pode ser muito, enquanto para outros, insuficiente, levando ao descartar de dados. Então
usa-se o shuffling. Sem shuffling, partes da imagem com detalhes finos podem ter de ser
comprimidas mais fortemente que as partes menos detalhadas.
Como resultado destes passos adicionais, o DV é capaz de atingir maior qualidade de imagem a
25Mbps que o MJPEG à mesma taxa.
VÍDEO MPEG
Vídeo MPEG-4 é baseado no anterior MPEg-1 usado para vídeo na Web e CD-ROM.
... MPEG-1 ... MPEG-4 ... Other Codecs For Multimedia
COMPARAÇÃO DE CODECS
As figuras 7.19-7.24 fornecem uma comparação simples da qualidade dos 3 codecs líderes,
comparado com um DV original.
Como podemos ver, o MPEG-4 e o DV são virtualmente indistinguíveis, mas os outros dois
codecs mostram degradação da imagem, e verificável mudança no brilho. A versão Cinepak é
extremamente pobre.
A quantidade de memória média por frame foi de 161Kbytes para o original DV, 95Kbytes para o
MPEG-4, 114 Kbytes para o Sorenson vídeo e 68.5 Kbytes para o Cinepak.
O MPEG-4 é a melhor escolha para codec, a menos que a eficiência de descompressão seja
importante.
QUICKTIME
Dentro de cada codificação há uma gama para definir formatos de ficheiro incompatíveis – alguns
standards, tais como os MPEGs, apenas definem um stream de dados, não um formato de
ficheiro.
Uma aproximação mais profícua à standardização é baseá-la na arquitectura das frameworks,
definida a um nível suficientemente abstracto para caomodar uma multiplicidade de
representações vídeo. Algumas dessas aproximações foram propostas, mas o QuickTime
estabeleceu-se como o standard de facto.
Os objectos que o QuickTime manipula são movies.
Originalmente, o foco do QuickTime foi nos aspectos temporais dos media baseados-no-tempo,
incluindo o vídeo. Todos os movies têm uma time base, a qual grava a taxa a que deve ser
passada e a sua posição corrente.
O sucesso do QuickTime é largamente devido a ser uma arquitectura baseada-nos-componentes.
Isto significa que é possível plugar componentes, em ordem a lidar com novos formatos e fornece
um conjunto de componentes standard, tais como componentes de compressão,
implementando codecs MPEG-4, Sorenson, Cinepak e Intel Indeo.
Sequence Grabber (tomadores à força) Components são usados para digitalizar vídeo.
Um standard componente movie controller é usado para fornecer a interface para passar
movies. Há também componentes chamados transcoders, os quais traduzem dados entre
formatos que usam o mesmo algoritmo de compressão, sem a necessidade de descompressão e
recompressão.
O QuickTime também pode ser usado para streaming de vídeo, que é baseada no RSTP (Real
Time Streaming Protocol). Estas streams podem ser embebidas em páginas web e em qualquer
aplicação que incorpore o QuickTime.
Com a tecnologia corrente, os melhores resultados são obtidos com o codec MPEG-4 do
QuickTime.
O QuickTime tem o seu próprio formato de ficheiro, que fornece uma maneira flexível de
armazenar vídeo e outros media.
Componentes foram adicionados para tornar possível manipular ficheiros em outros formatos,
sendo suportados MPEG-1, MPEG-4 e DV, OMF, AVI da Microsoft. e a sua arquitectura é
facilmente extensível.
Qualquer aplicação baseada no QuickTime pode capturar e passar vídeo usando a nova placa.
Qualquer pessoa que divise um novo formato de vídeo ou codec não tem de implementar todas as
operações de edição de alto nível que são necessária spara o tornar útil. Esta abstracção dos
formatos de ficheiros é passada para os utilizadores finais do software edição e passagem de
vídeo. Novo codec, a mesma interface.
Há outros 2 formatos muito utilizados em multimedia. Real Networks’ RealVideo, é baseado nos
mesmos protocolos e suporta MPEG-4, mas também tem o seu próprio codec proprietário, que
reclama melhor compressão que o MPEG-4.
O outro é o AVI, sendo que os ficheiros avi são o formato nativo do Windows Media da Microsoft,
mas falhou a atingir o status do QuickTime como o standard de facto no cruzamento de
plataformas.
EDIÇÃO E PÓS-PRODUÇÃO
Filmar e gravar vídeo apenas fornece material em bruto. Edição é o processo de construir um
todo a partir de uma colecção de partes. Compreende a selecção, corte e organização do material
em bruto e a combinação com o som. Transições tais como a dissolução, podem ser aplicadas
entre cenas, mas não são feitas mudanças ao filme ele próprio. Contrastamos isso com a pós-
produção, que se refere com a feitura de alterações ou adição ao material.
Os espectadores esperam que o filme seja editado de acordo com as convenções. Todos os
filmes e vídeos são construídos. Ex. a conversação entre 2 pessoas é criada na edição, é um
artifício.
EDIÇÃO DE FILME E VÍDEO
Editar um filme é um processo físico. Embora fazer corts seja directo, podem criar-se outros tipos
de transição que requerem equipamento especial. Ex. alguém a dormir que se dissolve numa
sequência de sonho. Usa-se muito o chamdo optical printer, sendo que as ópticas são feitas por
especialista do laboratório. Isto deixa pouca margem para a experimentação.
A edição de vídeo tradicional é muito diferente na prática. A única maneira de rearranjar imagens
gravadas na tape de vídeo é copiá-las numa nova tape na ordem desejada. Precisamos de 2 tape
machines (A e B) para montar o material na ordem desejada.
Um arranjo mais poderoso é usar 3 máquinas (A, B e C). A suite de edição 3-máquinas é ainda
um paradigma para a maioria do software de edição vídeo de computador de secretária.
Marcamos o in point (primeira frame) e o out point (última frame). Um dispositivo conhecido
como um edit controller podem então começar a máquina A no in point da 1ª cena, copiá-la para
a máquina C até ao out point, quando a máquina B é iniciada no seu in point, adicionada a seguna
cena para a tape da máquina C. Uma virtude deste arranjo é que o cena pode ser pré-visualizada,
correndo as máquinas A e B sem realmente granar na C, de modo a que é possível experimentar
com ajustes nos in e out points até a perfeição ser atingida.
Note-se que estas operações requerem que as máquinas sejam capazes de começar e terminar
com precisão no sírio certo. É sempre preciso um certo pre-roll.
Este método de edição requere não apenas mecanismos de controle de alta precisão mas
também algum meio de identificar posições nas tapes. O Timecode é usado, geralmente o
SMPTE timecode standard, tipo 01:14:35:06 sendo o último número a frame.
Editar vídeo em 2 ou 3 máquinas requer que as tapes sejam copiadas sempre que uma alteração
seja feita, o que gera perdas por ruído. Com tapes VHS, apenas 2 operações de cópia é suficiente
para sérias perdas de qualidade.
EDIÇÃO DE VÍDEO DIGITAL E PÓS-PRODUÇÃO
A digitalização abriu caminho a um modo diferente de trabalhar, que trouxe a edição de vídeo
mais perto, em género, da edição de filmes, mas sem o processo físico.
Além do acesso aleatório, a edição digital de vídeo tem uma outra grande vantagem que é ser
não-destrutivo (podemos cortar e recortar potencialmente para sempre) , para além de poder ser
passado assim que o hardware em que está a ser editado o permita.
Cada editor tem as suas facilidades mas elas são basicamente as mesmas.
A operação de corte inical deixará o editor com material que deve aparecer no filme final. O
próximo passo é arranjar os clips na ordem desejada na timeline. Quase sempre temos de acertar
o som com a imagem. depois há as transições, como as dissoluções, wipes/esfregas, spins e
page-turns, etc. Muitas das transições são parametrizadas.
Há 2 importantes diferenças práticas entre cortes e outras transições. Primeiro, num corte, os 2
clips são golpeados; em todas as outras transições eles são sobrepostos. As transições devem
ser renderizadas, ao contrário dos cortes.
A edição de vídeo preocupa-se primeiramente com o arranjo da imagem através do tempo e da
sua sincronização com o som.
São no fundo imagens bitmap.
Duas importantes classe da operação de pós-produção são a correcção da imagem e a
composição. Também podem ser aplicadas a sequências de imagens em vez de a uma única
imagem.
Também aqui se pode combinar níveis separados num resultado composto. Em vídeo, seleccionar
áreas transparentes é chamado de keying. O método do écran azul usado em vídeo para inserir
elementos isolados em cenas.
Pode ser usado o chroma keying ou o luma keying.
Em filme e vídeo, uma máscara usada para composição é chamada de matte. A cena dianteira
parece ter lugar em frente de uma montanha ou um castelo medieval, por ex.
A transparência pode ser feita para variar sobre o curso da sequência.
Em ordem a produzir máscara que varia ao longo do tempo, é necessário usar uma sequência de
máscaras como matte. Tal sequência – frequentemente chamada travelling matte – é
naturalmente armazenada numa faixa separada de vídeo, quando é chamada uma track matte.
PREPARAÇÃO DE VÍDEO PARA ENTREGA MULTIMEDIA
Edição e pós-produção são executadas grosso modo da mesma forma se o vídeo for intendido
para entrega multimedia – off-line ou on-line – ou para transmissão convencional ou gravação em
tape. Para multimedia, um passo adicional de preparação do material é habitualmente requerido.
O que deve ser então sacrificado? As possibilidades incluem tamanho da frame, taxa de frames,
profundidade de cor e qualidade de imagem. Uma imagem downsampled.
Usando um quarto das frames e reduzindo a taxa de frames de 30 para 15fps, o volume de dados
é reduzido por um factor de 8. 24 bits são usualmente usados podem passar para 8. A
compressão tem um custo de perda da qualidade da imagem. Também é necessa´rio assegurar
que se adapta a passar em qualquer plataforma.
CAP.8 ANIMAÇÃO
Pode ser definida como a criação de imagens em movimento, uma frame de cada vez.
Se quisermos transportar a ilusão de movimento rápido ou mudança, as diferenças entre imagens
sucessivas numa sequência devem ser muito maiores do que se a mudança é para ser gradual,
ou o movimento lento.
‘Animar’ significa ‘trazer à vida’ literalmente, o que captura a essência de todo o processo.
Tecnicamente é requerido 24 desenhos por seg. de filme, isto é, 1440 desenhos por minuto. Mas
podemos, na prática, usar gravação e passagem a ‘2s’, o que quer dizer que 2 frames de cada
desenho, o que dá uma taxa de frames efectiva de 12 por seg, poupando trabalho.
Há outras técnicas. a mais conhecida e mais usada é a cel animation, em que aqueles elementos
que se movem – Homer Simpson por ex. – são desenhados em folhas transparentes conhecidas
por ‘cel’, e postas sobre um fundo – a sala de estar dos Simpsons, talvez – desenhado
separadamente. Na produção de uma sequÊncia, apenas os elementos que se movem da cel
precisam de ser redesenhados para cada frame; as partes fixas na cena precisam apenas de ser
feitas uma vez. Muitas ‘cels’ podem ser sobrepostas juntamente.
Para tomar esta aproximação mais além, o fundo pode ser desenhado numa folha longa, e movida
entre shots por detrás das cels, para produzir um efeito de travelling através de uma cena.
Isto é particularmente adequado para ser trazido para o reino do digital.
A série de TV Monthy Python é um exemplo bem conhecido de uma animação cut-out. Há
também o écran de pinos do Alexeieff e Parker.
Uma alternativa distinta é a animação a 3 dimensões, ou stop-motion, que contém diversas
técnicas, mas todas usam conjuntos de miniaturas tri-dimensionais, como conjuntos de palco, nos
quais os objectos são movidos cuidadosamente entre shots. Pode-se usar, por ex. plasticina. É
frequentemente chamada de clay animation.
Formas híbridas de animação são frequentemente produzidas – mistura de cel e 3-D, por ex. Há
também uma longa tradição de combinar animação com filamgens reais.
Todas as formas tradicionais de animação têm a sua contrapartida no reino do digital.
ANIMAÇÃO CAPTURADA/APRISONADA E SEQUÊNCIAS DE IMAGENS
A tecnologia digital trouxe novas formas de criar animação, mas os computadores pode também
ser usados efecientemente em conjunção com os antigos métodos discutidos acima. Oferecem é
possibilidades expressivas muito mais ricas.
Uma câmara de vídeo é ligada directamente a um computador, para capturar cada frame da
animação para o disco – quer seja desenhada em papel ou cel, construída num conjunto 3-D ou
feita usando outra técnica. Em vez de armazenar o stream de dados completo que chega da
câmara, como se faria se estivéssemos a capturar vídeo ao vivo, apenas armazenamos a versão
digital de uma única frame de cada vez que tivermos um shot correcto – isto é o chamado frame
grabbing, havendo muitos softwares que o fazem. O premiere, por ex. oferece um comando Stop
Frame no seu menu de Captura. Os frame grabbers/agarradores trabalham todos de maneira
semelhante: uma janela de gravação mostra a vista corrente através da câmara.
Depois mudamos o nosso desenho e tomamos outro shot. Usualmente, uma opção permite
vermos uma imagem fantasma da frame capturada anteriormente, para ajudar com o alinhamento
e fazer as alterações necessárias.
Depois gravamos como um movie quickTime ou um conjunto de ficheiros de imagens numeradas
sequencialmente. Isto abre as possibilidades de edição a pós-produção não linear.
Para certos tipos de animação tradicional, nem sequer é preciso usar câmara, basta usar o
scanner.
Para desenhada ou pintada animação pode-se dispensar com as formas exteriores e o processo
de digitalização pode ser feito usando inteiramente um programa gráfico para fazer o trabalho
artístico.
Mesmo quando estamos a produzir uma frame de cada vez, o programa pode, por vezes, guardar
o teu trabalho, deizxando-nos gravar macros ou scripts para desenhar elementos repetidos ou
aplicar filtros a muitas frames.
O Painter e o Flash deixm-nos abrir um movie e modificar as suas frames individuais. (O Photohop
pode abrir ficheiros num formato especial de filmstrip, que o Premiere pode exportar e re-importar,
para propósitos semelhantes). Isto oferece novas possibilidades. Podemos, por ex., pintar ou
alterar omaterial original, que é uma maneira de adicionar animação a acção ao vivo. Uma outra
opção é marcar, frame a frame numa camada, elementos seleccionados de um vídeo clip de
acção ao vivo, que é depois apagado. Este processo, seja atingido digitalmente ou de outras
formas, é chamado de rotoscoping, e é de há muito usado para criar animação que
adequadamente reproduz as formas e movimentos naturais de pessoas e animais.
Também se pode usar um único ficheiro de ‘image’ para gravar muitas imagens. O formato mais
conhecido é o GIF, que é uma forma divertida e barata de animação para páginas web.
A versão GIF89a do formato fornece alguns items de dados opcionais que controlam o
comportamento de um animated GIF, como estes ficheiros são chamados. Em particular, uma
flag pode controlar o loop e um tempo mínimo de atraso entre frames, e até a taxa de frames pode
ser especificada. Mas este formato não fornece uma maneira confiável de colocar figuras
animadas nas páginas web.
A principal vantagem dos GIFs animados é que não precisam de um plug-in ou uso de script, logo
é visível num grande nº de browsers. Há muitas ferramentas utilitárias para combinar um conjunto
de imagens num GIF animado. O Premiere e o Flash permitem gravar um movie nesta forma e
progaramas gráficos dedicados à web, tais como o ImageReady e o Fireworks, podem ser usados
para criar GIFs animados desde o início ou alterando imagens existentes. Mas o GIF animado tem
muitas desvantagens: não se pode juntar som, estamos restringidos a 256 cores, as imagens são
comprimidas sem perda, o que não provê muita compressão.
Eles não são usados para animação realística, mas frequentemente parecem anúncios de néon.
Tem sido usado para produzir alguma da pior animação produzida desde sempre e nos últimos
tempos, talvez por isso, tem caído em declínio.
Para animação capturada de qualquer duração, especialmente se acompanahda por som, os
melhores resultados sãoatingidos usando um formato de vídeo. O QuickTime.
Certos tipos de desenho tendem a usar formas e áreas de cores flat, o que faz com que seja mais
rentável usar compressão sem perdas. O codec de Animação do QuickTime foi desenhado para
tirar partido destas caracter´siticas de animação desenhada estilo-cartoon. A compressão é
baseada no run-lenght encoding (RLE).
‘DIGITAL CEL’ E ANIMAÇÃO SPRITE/FANTASMA
Usar camadas como o equivalente digital das cel poupa ao animador tempo, como descrevemos,
não afecta o modo no qual a animação completa é armazenada: cada frame é guardada como um
ficheiro de imagem, e a sequência será mais tarde transformada num movie QuickTime, um GIF
animado, ou outra representação convencional. Também há claramente uma grande redundância
numa sequência cujas frames foram todas construídas com o memso conjunto de elementos.
Mas a compressão depois do evento não é razoável que tenha tanto sucesso como armazenar a
sequência numa forma que explora a redundância logo de início. Em termos gerais, isto quer dizer
armazenar uma cópia única de todas as camadas estáticas e todos os objectos (isto é, as partes
não-transparentes) das outras camadas, juntos com uma descrição de como os elementos em
movimento são transformados entre frames.
Esta forma de animação, baseada em objectos em movimento, é chamada de sprite animation,
como os objectos sendo referidos como sprites. Um movimento mais sofisticado pode ser
atingido associando um conjunto de imagens, por vezes chamadas de faces, como cada sprite.
Isto pode ser adequado para criar um ‘walk cycle’ para um caracter humanóide.
O QuickTime suporta pistas sprite, as quais armazenam uma animação na forma de uma ‘key
frame sample’ seguida por alguns ‘override samples’. A key frame sample contém as imagens
para todas as faces de todos os sprites usados nessa animação, e valores para as propriedades
espaciais (posição, orientação, visibilidade, etc.) de cada sprite, tal como uma indicação de que
face deve ser visualizada. Os amples override não contêm dados de imagem, apenas novos
valores para as propriedades de qualquer sprite que mudem de qualquer forma. Isto tudo pode ser
combinado com vídeo normal.
Frequentemente, em vez de armazenar as mudanças das propriedades dos sprites, os valores
mudados podem ser gerados dinamicamente por um programa. SequÊncias de movimentos
simples que podem ser descritas algoritmicamente podem ser guardadas ainda de forma mais
compacta e, mais interessantemente, a computação das propriedades dos sprites podem ser
feitas dependentes de eventos externos, tais como o movimento de um rato ou outra entrada do
utilizador. Isto é muito usado em jogos de computador e simulações.
KEY FRAME ANIMATION
Durante os anos 30 e 40 a Walt Dsiney começou com a divisão do trabalho. A produção das cels
finais para um filme, o papel de animadores treinados foi largamente confinado à criação de key
frames.
Key frames são aquelas que são guardadas inteiramente, enquanto as frames entre elas são
guardadas apenas como diferenças. Na animação tradicional habitualmente as key frames
ocorrem apenas nos extremos de um movimento. As frames intermédias, frames que podem ser
desenhadas quase mecanicamente pelos ‘in-betweeners’.
Isto parece-se com a interpolação, que é uma operação em que os computadores são muito
bons.
As imagens vectoriais são mais amenas para a interpolação.
Se apenas considerarmos o movimento numa direcção recta, a maneira mais fácil de interpolar é
a linear. Isto significa que um objecto se move uma distância igual entre cada frame. Mas isto
causa 2 problemas: Primeiro, o movimento começa e termina instantaneamente. Então podemos
fazer antes com que a transição da quietude para o movimento seja gradual – é o chamado
easing in, havendo o correspondente easing out. Pode ser usada a interpolação quadrática, e
mais complicados estilos são possíveis no Flash.
O segundo problema é porque cada sequência é interpolada separadamente como uma linha
direita, há uma descontinuidade impetuosa no fim, em kf2. Usando curvas Bézier em vez de linhas
direitas para interpolar as frames entre as key, o movimento é suavizado.
O Falsh não oferece a opção de qualquer interpolação não-linear.
ANIMAÇÃO PARA WEB E O FLASH
O formato mais popular para animação na web é o Shockwave Flash (SWF), o qual é um formato
de animação vectorial adequado para a animação web, pois os objectos gráficos podem ser
representados de forma compacta na forma vectorial, precisando pois de largura de banda baixa.
O Flash é mais que um programa de animação Ele suporta uma linguagem de script poderosa,
chamada ActionScript, a qual torna possível adicionar interactividade às animações e construir
aplicações web com interfaces de utilizador criados no Flash. O scripting também pode ser usado
para criar animações usando algoritmos, usando por ex. as leis da física para descrever o
comportamento, tal como a maneira que os flocos de neve caiem ou os pássaros se movem num
grupo.
A LINHA DO TEMPO/TIMELINE E O PALCO/STAGE
Uma animação a ser criada no Flash é organizada usando uma linha do tempo, uma
representação gráfica de uma sequência de frames. O palco do Flash é uma sub-janela na qual
as frames são criadas desenhando objectos.
JPEG e PNG, podem também ser importados e auto-seguidos para fazer objectos gráficos;
imagens podem ser usadas em bitmap para dentro duma frame Flash, mas não podem depois ser
rodadas ou escaladas sem degradação potencial da imagem.
Uma maneira eficiente de trabalhar é adicionando key frames incrementalmente no fim da
sequência corrente e fazer alterações ao seu conteúdo. Para assistir a este tipo de animação, o
Flash incorpora uma facilidade onion-skinning.
SÍMBOLOS E TWEENING (entre)
Os objectos gráficos podem ser armazenados numa biblioteca numa forma especial, chamada
símbolo, que permite que sejam reutilizados. Múltiplas instâncias de um símbolo podem ser
colocadas no palco, transformações podem ser aplicadas. As instâncias pemranecem ligadas ao
símbolo.
Como as animações interpoladas, quase por definição, reusam objectos, interpolar (ou tweening,
como o Flash lhe chama) o movimento de um objecto torna-o num símbolo. Podemos então criar
movimento tweened de várias formas. A mais simples, uma key frame é seleccionada no timeline
e um objecto é desenhado no palco. O comando Create Motion Tween é seleccionado do menu
Insert; isto activa o tweening e, como efeito lateral, armazena o objecto na biblioteca como um
símbolo. Outra key frame é criada no fim da sequência de tween, e o símbolo é movido para uma
nova posição nesta nova frame.
Otweening pode ser aplicado a diferentes camadas, com key frames em diferentes lugares,
apesar, permitindo a animação de muitos símbolos, cada um dos quais pode ser parte de um
único caracter. Um objecto pode ser movido ao longo de um caminho desenhado numa camada
escondida – o motion path.
O tamanho de um objecto, a orientação, opacidade e cor podem também ser interpolados da
mesma forma.
O Flash suporta o shape tweening ou morphing como é habitualmente conhecido.
Há, de facto, 3 diferentes tipos de símbolos em Flash. Símbolos Gráficos são simplesmente
objectos vectoriais reutilizáveis. Símbolos Botão são um tipo especializado, usado para adicionar
interactividade aos movies Flash. Símbolos Movie Clip são animações auto-contidas com as
suas próprias timelines, que passam dentro do movie principal.
A natureza do desenho vectorial e tweening conduz a uma representação compacta das
animações criadas desta forma. Um ficheiro SWF consiste em itens, os quais são divididos em
duas grandes classes: definições e itens de controlo. Os primeiros são usados para armazenar
definições dos símbolos usados na animação num dicionário. Os últimos são instruções para
colocar, remover, ou mover um símbolo (identificado pelo seu nome no dicionário).
Os dados SWF são codificados numa forma binária e comprimidos, resultando em pequenos
ficheiros.
GRÁFICOS EM MOVIMENTO
A interpolação entre key frames pode ser aplicada a imagens bitmap. Como os bitmaps não
contêm objectos identificáveis, o uso de camadas para isolar diferentes elementos de uma
animação é essencial. A analogia com a animação por cels é mais ou menos completa – cada
camada é como uma folha transparente de acetato com algo desenhado nela. Camadas podem
ser movidas independentemente, e assim uma animação pode ser construída por colocação de
diferentes elementos em diferentes camadas, e movendo ou alterando as camadas entre frames.
Tipicamente, entre key frames, uma camada pode ser movida para uma posição diferente, rodada
ou escalada, mas as imagens bitmap, requerem reamostragem, e consequentemente perda de
qualidade da imagem.
O AfterEffects é a aplicação líder para animações deste tipo nos computadores de secretária. Ele
trabalha bem em conjunção com o Photoshop e o Illustrator.
Um modo comum de trabalhar, então, é usar as ferramentas e facilidades do Photoshop ou
Illustrator para preparar os elementos de uma animação em camdas separadas, e importar o
resultado para o AfterEffects onde as camadas são animadas.
Combinando camadas e adicionando efeitos e filtros que também variam no tempo, o desenho de
gráficos em movimento são obtidos.
Movimento e filtros variando no tempo em imagens bitmap tem mais em comum com design
gráfico do que com os cartoons mainstream ou animações artísticas. São pois mais
sugestivamente chamados gráficos em movimento e usam-se muito, por ex., em sequências de
títulos e créditos de filmes.
A interpolação pode ser aplicada a outras propriedades da camada, em particular o seu ângulo de
rotação; escalar; movimento de aproximação; zoom, podem também ser activados nas key frames
e interpolados.
O AfterEffects suporta interpolação linear e de Bézier, quer no espaço quer no tempo.
Outra aplicação popular é a animação de texto.
Nas bitmapped, alterações baseadas no tempo mais radicais podem ser atingidas, com múltiplos
efeitos e filtros, que podem ter parâmetros tais como o raio de um blur/mancha/névoa Gaussiano,
ou o brilho das fronteiras brilhantes. Tais parâmetros podem ser activados de modo a variar ao
longo do tempo, usando o mesmo mecanismo de interpolação.
O blur vago, torna-se brilhante e fogoso. Isso é atingido aplicando o blur Gaussiano variando no
tempo ao texto, em conjunção com a variação do brilho.
ANIMAÇÃO 3-D
É fácil de descrever, mas muito difícil de fazer. Não há novos conceitos. As propriedades dos
modelos 3-D são definidas numericamente: posição no espaço, rotação, características de
superfície e até a forma. A intensidade e direcção das fontes de luz e a posição e orientação de
uma câmara também são numericamente definidas.
Em ordem a animar usam-se frames interpoladas entre as key frames.
Enquanto as animações 3-D simples, como logotipos a cair e globos a rodar, realmente podem ser
feitos muito facilmente, as animações de alta-qualidade de foto-realismo, tal como empregue em
anúncios de televisão, vídeos de música e efeitos especiais de filems, requerem grandes recurso.
A primeira dificuldade é que muitas pessoas têm dificuldade em ver em 3 dimensões. Quando
adiconameos o tempo há 4 dimensões. O segundo problema é a quantidade de poder de
processamento preciso para renderizar a 3-D.
Grandes orçamentos, paciência e prática podem ultrapassar estes problemas, fornecendo uma
interface rica dando ao animador controlo completo sobre o movimento.
Consideráveis esforços de pesquisa têm sido feitos de modo a produzir movimento em 3
dimensões convincente e de forma automática.
Uma das aproximações chave é fornecer certos tipos de comportamento que podem ser aplicados
a objectos e ao modo como eles interagem. Um comportamento simples é fazer um objecto
apontar para outro, o que é útil para as câmaras ou a luz. Uma variação é um perseguir outro.
Alguns sistemas de animação 3-D incorporam movimento baseado nas lesi físicas do movimento.
Assim os objectos em movimento podem ser feitos a colidir realisticamente ou a saltar superfícies
sólidas. Infelizmente, muitos tipos de movimento realísticos não podem ser tão facilmente
descritos, e outros métodos têm de ser usados.
A Kinematics/Cinemática é o estudo do movimento dos corpos sem referência a massa e força.
Apenas se preocupa em como as coisas se movem. Para produzir movimento realístico a 3-D de
um braço, tem de obedecer aos mesmos constrangimentos cinemáticos de um braço real. É
usualmente as extremidades que impõem as limitações de movimentos. É preciso grande
compreensão de como os membros se movem para ssegurar que isto acontece correctamente
movendo a coxa, assim é preferível para o software trabalhar os movimentos da perna pela
colocação do pé do animador, etc. Este tipo é conhecido como cinemática inversa, pois trbalha
da frente para trás, do efeito para a causa. Mas isto não é computacinalmente directo.
REALIDADE VIRTUAL
Originalmente, a frase ‘virtual reality’ era usada para descrever uma experiência sensitiva imersiva
num mundo sintético. Exigia écrans montados-na-cabeça, luvas de dados, interfaces tácteis.
Tomada ao extremo, a realidade virtual deste tipo seria a última em multimedia, estiulando todos
os sentidos em simultâneo.
O alto custo da interface de hardware e a relutância dos adultos confinou-a simulação industrial e
de voo e galerias de especialistas de jogos.
Uma visão mais modesta de realidade virtual (VR), como gráficos 3-D que podem ser exploardos
evoluiu.
2 tecnologias de VR merecem uma breve mençaõ, pois podem ser incorporadas em páginas web.
VRML
Virtual Reality Modeling Language (VRML) foi criada em 1994. A intenção era fornecer um
mecanismo para distribuir mundos virtuais sobre a Internet, usando browsers da web como
interface. Para este fim, o VRML era uma linguagem basead-em-texto, que permitia objectos 3-D
e cenas serem descritas numa notação como-linguagem de programação. Na versão 1.0 era
ainda permitido hyperlinks nas cenas usando URLs. Na versão 2.0 foi adicionado suporte para
interactividade, via scripting, embeber audio e vídeo.
A descrição é explícita: por exemplo, um terreno pode ser modelado como uma grelha de
elevação, um tipo de objecto do VRML que especifica um conjunto de pontos, formando uma
grelha, cada um de diferentes alturas.
A maioria dos modeladores de 3-D geram VRML como saída das suas ferramentas de modelação
interactivas.
Para criar a ilusão de movimento através de um espaço 3-D, o VRML tem de ser renderizado em
tempo-real, o que implica que existam placas aceleradoras gráficas. Esse é um dos principais
obstáculos à larga disseminação do uso do VRML.
QUICKTIME VR
Parte do QuickTime oferece uma muito básica experiência de VR. Há 2 tipos de movies VR do
QuickTime: movies panorâmicos e movies objectos. Os primeiros apresentam uma visão de
360º da cena – o interior de um quarto, por exemplo. Usando o seu rato, um utilizador pode
arrastar a cena à medida que olha à volta, fazendo ou não zoom.
Os object movies, em contraste, permitem ao utilizador examinar um objecto de diferentes
ângulos, como se andasse À sua volta, também por arrastamento com o rato.
Ambos contêm hot spots que são áreas activas que contêm links para outros movies. Um uso
típico dos hotspots é passar através de uma porta de uma sala para outra.
QTVR movies podem ser geardos por alguns programas de 3-D, tais como o Bryce. Podem ser
conmbinados com audio e vídeo. O plug-in do QuickTime para browsers da web permite que
QTVR seja embebido nas páginas web.
CAP. 9 SOM
O som é diferente pois é outro sentido, é ouvido. É uma mistura complexa de factores físicos e
psicológicos, que dificultam a exactidão do modelo.
Uma outra característica que o som tem em comum com a cor é que não precisamos sempre
dele.
Há 2 tipos de som que são especiais: Música e Discurso.
A NATUREZA DO SOM
Se um garfo de afinação for batido com severidade numa superfície dura, os dentes vibrarão a
uma frequência precisa. À medida que se movem para afrente e para trás, o ar é comprimido e
rarefeito em fase com as vibrações. Interacções entre moléculas de ar adjacentes causam que
esta flutuação de pressão periódica seja propagada como uma onda. Quando a onda sonora
chega ao ouvido, faz com que o tímpano vibre à mesma frequência. A vibração é transmitida
através do ouvido interno e convertida em impulsos nervosos, que interpretamos como som do
tom puro produzido pelo garfo vibrante.
Tal como no caso geral de representação de um sinal no domínio da frequência, referimo-nos a
uma descrição de um som em termos das amplitudes relativas das suas componetes de
frequência como o seu espectro de frequência.
O ouvido humano, em geral, consegue detectar frequências entre 20Hz e 20Khz. No topo apenas
ocorrem como componentes de ataques transitórios dos sons (a regra geral que as altas
frequências estão associadas com transições abruptas, aplica-se aqui. A nota mais alta de um
piano ordinário – que mais ou menos define o limite da maioria da música ocidental – tem uma
frequência fundamental de 4186Hz. Contudo, é o comprtamento transitório das notas que contribui
mais para o distintivo timbre dos instrumentos.
Os sons interessantes mudam ao longo do tempo. Vimos que uma nota tem um distinto ataque e
depois cai, mudando a o seu espectro de frequência primeiro à medida que cresce e depois À
medida que morre. Sons que se extendem por longos períodos de tempo, tal como discurso ou
música, exibem um constante mudança de espectro de frequência. Podemos exibir a forma de
onda de um som plotando a sua amplitude ao longo do tempo.
***Uma análise de espectro é tipicamente obtida por uma janela através da onda para obter a
sequência de espectros, mostrando como as componetes de frequência do sinal mudam ao longo
do tempo***.
Num discurso, podemos claramente identificar as sílabas, e reconhecer que a memsa frase é
repetida, da segunda vez mais rápido e com maior ênfase (fig.91.1). Vemos que é possível extrair
as sílabas individuais e recombiná-las para sintetizar novas palavras, e podemos comprimir o
discurso removendo os silênciso entre frases. As claramente demarcadas sílabas também
fornecem uma boa base para sincronização do som com o vídeo, como veremos.
O som do didgeridoo é um dron contínuo, com modulação rítmica. Uma peça de boogie-woogie
tocada por um pianista acompanhado de um pequeno grupo, o ritmo é claramente visível mas não
é possível distinguir a melodia tocada pela sua mão direita. Um trabalho contemporâneo tem uma
granda gama de dinâmicas. Cantar combina as carcaterísticas do discurso e da música: as
sílabas de cada palavra são facilmente identificáveis, tal como o ritmo.
Isto faz da análise da estrutura temporal do som – que é particularmente importante para efeitos
de sincronização – relativamente simples comparado com performar a mesma análise no
dinamicamente alterável som ele próprio, o qual é apenas ouvido um instante de cada vez.
Uma das mais úteis ilusões na percepção do som é a estereofonia. O cérebro identifica a fonte de
um som com base nas diferenças de intensidade e fase entre sinais recebidos pela orelha direita e
esquerda. Se sons idênticos forem enviados para ambos os ouvidos, o cérebro interpreta o som
como vindo de uma fonte não-existente que está em frente. Por extensão e regulação da
intensidade dos canais, é permitida a familiar ilusão de um palco entre os altifalantes.
DIGITALIZAÇÃO DO SOM
SAMPLING / AMOSTRAGEM
Uma taxa de amostragem tem de ser escolhida de forma a preservar pelo menos a gama de
frequências audíveis. Então uma taxa mínima de 40Khz é requerida pelo Teorema da
Amostragem. Nos CDs audio usa-se 44.1Khz – a precisão tem a ver com a escolha dos
fabricantes para produzir um exacto tempo de reprodução dado o tamanho do media – 9ª sinfonia
de Beethoven por Von Karajan, de acordo com a lenda. A mesma taxa é usada pelos mini-discs. e
por causa da ubiquidade do CD, a mesma é usada também pelas palacas de som do sPCs, para
prover compatibilidade.
Quando uma qualidade de som mais baixa é aceitável, ou requerida por limitação de largura de
banda, usam-se submúltiplos: 22.05Khz para a Internet é muito usado; 11,025 é muito usado para
discurso. O DAT é a 48KHz.
Onde um sinal digital não possa ser produzido, ou quando o computador não está equipado com a
apropriada entrada de audio digital, uma placa digitalizadora de som tem de ser acrescentada ao
PC, da mesma amneira que uma placa de captura de vídeo tem de ser usada para vídeo
analógico. Entradas de audio digitais são surpreendentemente raras, logo é frequentemenete
necessário para a (analógica) linha de saída do DAT ou leitor de CD ser redigitalizado pela placa
de som, o que é mau devido ao ruído introduzido e eventual incompatibilidade de taxas de
amostragem. Resamplar é mau com som tal como com imagens.
A amostragem baseia-se em impulsos de relógio precisos para determinar os intervalos entre
amostragens. Se o relógio desacerta, também os intervalos. Essas variações de timing são
chamadas de jitter / nervoso. O seu efeito é introduzir ruído no sinal recosntruído. Para som de
qualidade CD, o jitter no ADC deve ser de menos de 200 pseg.
Mesmo se inaudíveis, frequências acima dos 20Khz no espectro de muitos sons. Se a taxa de
cerca de 40Khz é usada estes componentes manifestam-se como aliasing. Para evitar isso, usa-
se um filtro que remove antes as frequências superiores a metadae da taxa de amostragem.
Quantização
Para o som, a escolha mais comum do tamanho da amostra é de 16 bits, usados no CD audio,
dando 65536 níveis de quantização. Isto é geralmente suficiente para eleiminar o ruído de
quantização, se o sinal for dithered. Como nas imagens por vezes é preciso profundidades
menores; no som o mínimo aceitável é os 8 bits e memso assim devido ao ruído de quantização
só podem ser aplicados em aplicações de comunicação de voz, onde a distorção é tolerada.
O ruído de quantização será pior para sinais de pequena amplitude. Uma técnica mais económica
que aumnetar os níveis de quantização pode ser usada; parece-se com o anti-aliasing das
imagens. É de certa maneira contra-intuitiva. Antes de amostrar, uma pequena quantidade de
ruído aleatório é adicionado ao sinal analógico (dithering, aqui, é isto). As transições abruptas
foram suavizadas, ou doutra forma, o erro de quantização foi randomizado. O preço a pagar para
a melhoria do som é o ruído introduzido, mas que é menos intrusivo que o de quantização original.
PROCESSAMENTO DE SOM
GRAVANDO E IMPORTANDO SOM
O som gravado nos microfones no computador não é satisfatório porque os microfones são fracos
e por outro lado, estão inevitavelmente próximos da ventoinha da máquina de drives de disco, o
que lhes introduz ruído. É muito melhor ligar um microfone externo numa placa de som, mas se
possível, devemos gravar em DAT usando um microfone profissional, e capturar depois numa
operação separada. Para o PC ser um bom estúdio é bom artilhá-lo primeiro.
Antes de gravar, é necessa´rio escolher uma taxa de amostragem e um tamanho de amostragem.
Se o original é analógico há que ter em consideração o espaço e a largura de banda disponíveis.
Como regra geral, devem ser usados os valores mais altos possíveis, para minimizar a
deterioração do sinal quando é processado. Se um compromisso tiver de ser feito, o efeito na
qualidade de reduzir o tamanho da amostra é mais drástico que reduzir a taxa de amostargem. Se
o sinal original for digital, ex. DAT, o tamanho da amostra deve bater com a taxa de chegada, se
possível.
Cada segundo de som digital ocupa rs/8 bytes. Então, para qualidade CD, r=44,1x103 e s=16, logo
cada segundo ocupa para cima de 86kbytes, e cada minuto cerca de 5Mbytes. Há que dobrar
para o stereo.
O aspecto mais vexante da gravação é colocar os níveis certos. Se o nível de entrada é muito
baixo, a gravação será baixa e mais susceptível ao ruído. Se o nível for alto de mais, ocorrerá
cliping, o que origina um tipo muito desconfortável de distorção. Idealmente, um sinal deveria ser
gravado ao mais alto nível possível que evitasse o cliping. As aplicações de som usualmente
fornecem medidores de nível, de modo a que o nível possa ser monitorado, com alertas de cliping.
Algumas placas de som não possuem a opção de controlo de ganho e aí a única solução é ajustar
o nível de saída da fonte do som.
Escolhar o nívle correctamente é mais fácil de dize rque fazer, especialmente em registos ao vivo,
em que e experiência é muito importante, para não haver clipping nem perda da dinâmica do som.
Alguns softwares incluem controlo automático de ganho, que variam o ganho dinamicamente, de
acordo com a amplitude do sinal, para prevenir o clipping. Mas aí, precisam de reduzir o volume
das pasagens mais fortes, logo, como efeito colateral, reduzem a gama dinâmica do som.
EDIÇÃO DE SOM E EFEITOS
Há várias classes de operação que podemos querer aplicar ao som gravado. Muitas delas têm a
sua contraparte na edição de vídeo e são feitas pelas mesmas razões.
Primeiro, há a edição, no sentido de enfeite, combinação e rearranjo dos clips.
Edição é feita pelo cut e paste, ou arrastando e deixando, partes seleccionadas da faixa. Cada
gravação stereo ocupa 2 pistas, uma para cada canal. Durante o processo de edição muitas pistas
podem ser usadas para combinar sons de gravações separadas. Consequentemente, eles serão
mixados em uma ou as duas pistas, para a saída final de mono ou stereo. Quando misturamos, os
níveis relativos de cada uma das pistas pode ser ajustado para produzir o equlíbrio desejado –
entre diferentes instrumentos por ex.
Um tipo especial de edição tornou-se muito comum no audio: a criação de loops. loops muito
pequenos são precisos para criar vozes para os instrumentos musicaios electrónicos conhecidos
como samplers, cujas funções são feitas por software. Aqui, a ideia é criar uma secção do som
que representa o tom prolongado de um instrumento, como uma guitarra, notas arbitrariamente
longas podem ser produzidas por interpolação de cópias da secção entre uma amostra do ataque
dos instrumentos e no seu decaimento. É vital que as amostras prolongadas loopem claramente,
pois não deve haver descontinuidades abruptas entre o fim e o princípio, senão há clicks na
junção das cópias.
Loops longos são usados na música de dança, que é baseada na combinação de secções
repetidas. O loop tem de ser limpo, mas desta vez no nível áspero da continuidade rítmica.
A mais correntemente requerida correcção é a remoção de ruído indesejável. Uma porta de ruído
é um instrumento brusco que é usado para este propósito. elimina todas as amostras cujo valor
aci abaixo de um especificado limiar (ex. na gravação a kicrofone em local aberto). Também se
costuma especificar um tempo mínimo que deve passar ate´que uma sequência de baixa
amplitude seja considerada como silêncio, e um limite similar antes da sequência cujos valores
excedam o limite do limiar. Isto previne a porta de ser ligada e desligada por pequenas falhas
(glitches) transitórios.
Todavia o silêncio entre palavras pode ser mais distractivo que o ruído original. Isto ilustra um
problema geral com a remoção de ruído: o ruído está intimamente combinado com o sinal, e
apesar das pessoas poderem distinguir, os programas de computador, não.
As portas de ruído podem ser eficientes a remover o hiss (ssobio) da música. Há maneiras mais
sofisticadas de reduzir o ruído do que o tudo ou nada da noise gate. Os filtros que removem certas
bandas de frequências podem ser aplicados a ruído que cai dentro duma gama específica de
frequeências. Há os passa-baixo, que tiram o assobio, os passa-alto, removem o rumble
(rumor/rugido), ruído de baixa frquência causado pelas vibrações mecânicas. Um filtro notch
(fenda) remove uma estreita faixa de frequências, logo usam-se para remover o hum (zunido) dos
cabos de alimentação, que tem exactamente a frequência de 50 ou 60Hz.
Um de-esser é um filtro que pretende remover a sibilância que resulta de falar ou cantar muito
perto do microfone. Reparadores de clicks são para remover cilcks (estalidos) de gravações
tiradas de estragados ou sujos vinis.
Apesar destes filtros serem mais discrimantes que uma noise gate, não são infalíveis. A única
maneira segura de obter um som perfeito é começar com um perfeito take.
Quando consideramos outros efeitos que alteram a qualidade do som, há um contínuo desde
aqueles que desempenham embelezzamentos menores até aqueles que alteram radicalmente o
som, ou criam até novos do original.
Um efeito único pode ser usado de diferentes formas, em diferentes pontos neste contínuo,
dependendo dos valores dos parâmetros que afectam a sua operação. Por ex. um reverb é
produzido adicionando cópias do sinal, atrasadas no tempo e atenuadas, ao original. Estas cópias
modelam refexões das superfícies ressonantes, com o atraso correspondente ao tamanho do
espaço e o grau de atenuação modelando superfícies com diferentes reflexividades acústicas.
Equalização gráfica é um banco de filtros.
Envelope shaping mudam as margens da forma de onda. Ex. faders, tremolo, que causa que a
amplitude oscile periodicamente de zero até ao valor máximo.
Time Stretching (esticamento) e alteração do pitch são dois efeitos intimamente relacionados
que são bem adequados ao som digital. Com gravações analógicas, alterar a duração de um som
só pode ser conseguido alterando a velocidade de reprodução e isso altera o pitch. com som
digital, a duração pode ser alterada sem alterar o pitch, inserindo ou removendo amostras.
Similarmente, o pitch pode ser alterado sem afectar a duração. Time stretching é requerido
quando o som é para ser sincronizado com vídeo ou outro som. Na música podemos combinar
assim loops que foram amostrados de peças originalmente com diferentes tempos (ritmos).
A alteração de pitch pode ser usada de várias formas. Uniformemente para alterar o pitch de um
instrumento, compensando uma guitarra desafinada. Pode ser aplicado periodicamente para
adicionar um vibrato (variação periódica de pitch) a uma voz ou a um instrumento, ou aplicado
gradualmente para produzir uma ‘nota curva’.
COMPRESSÃO
Então, quando audio é usado no multimedia, especialmente quando é entregue sobre a Internet,
há uma necessidade de compressão. Em geral, é preciso alguma forma de compresão com perda.
Uma técnica de compressão óbvia que pode ser aplicada a um discurso é a remoção de silêncios,
em vez de codificarmos esses períodos a 44.100Hz guardamos o tamnaho do silêncio, logo não
há perdas, o problema é que não há silêncio puro, pelo que devemos tratar como silêncio aquelas
amostras que caem abaixo de um limiar.
Os princípios por detrás da compressão audio com perdas são diferentes dos de imagens, por
causa das diferentes maneiras como percepcionamos os 2 media. em particular, enquanto as
altas frequências estão associadas, nas imagens, com mudanças rápidas de cor, podem ser
descartadas, no som têm alto significado logo há que encontrar outro princípio para decidir que
dados descartar.
COMPRESSÃO DE DISCURSO
As companhias telefónicas usam audio digital desde os 60s e lidam com falata de largura de
banda, e por isso desenvolveram técnicas. Uma primeira foi a compandig. A ideia é usar níveis
de quantização não-lineares, com os níveis mais altos mais espaçados que os baixos, de modo a
que os sons baixos são representados em maior detalhe. Isto joga com a maneira com que
percebemos diferenças no volume. Logaritmicamente. Diferentes funções de companding não-
linear podem ser usadas. A recomendação G.711 do ITU recomenda a função μ-law (EUA e
Japão). Uma diferente é a A-law.
Os sinais de telefone são habitualmente amostrados a 8Khz. a esta taxa, a compressão μ-law é
capaz de comprimir uma gama dinâmica de 12 bits em apenas 8, dando uma redução de 1 terço
na relação de dados.
Uma outra importante técnica, é a Adaptative Pulse Code Modulation (ADPCM). Está
relacionada com a compressão inter-frame do vídeo, na qual é baseada ao guardar a diferença
entre amostras consecutivas, em vez do valor absoluto de cada amostra.
A Differential Pulse Code Modulation (DPCM) por sua vez computa um valor prevísivel para a
amostra, baseado nas amostras precedentes, e guarda a diferença entre a predição e o valor
certo.
A recomendação ITU G.721 especifica uma forma de representação ADPCM para uso na
telefonia, com taxas de dados de 16kbps e 32kbps. O Linear Predictive Coding usa um modelo
matemático do estado do tracto voval como sua representação do discurso. Na outra ponta usa-se
o modelo ao contrário; conseguem-se assim, com esta compressão da voz, taxas de transmissão
a 2,4kbps. Porque o som é reconstruído algoritmicamente, tem uma qualidade parecida com uma
máquina, podendo usar-se onde o conteúdo é mais importante.
COMPRESSÃO BASEADA NA PERCEPÇÃO
O segredo da efectividade da compressão com perdas é identificar os dados que não interessam
– no sentido de que não afectam a percepção do sinal.
2 fenómenos em particular causam que alguns dons não sejam ouvidos, apesar de fisicamente
presentes: Um som pode ser demasiado baixo para ser ouvido, ou pode estar obscurecido por
outro som.
O limiar de audição é o menor nível ao qual um som pode ser ouvido. Varia não linearmente com
a frequência (‘parábola’) . então os sons que estão abaixo podem ser desprezados, usando pois
um algoritmo que use um modelo psico-acústico.
No 2º caso o efeito é mais complexo, e depende das frequências relativas dos 2 tons. Máscara,
como este fenómeno é conhecido, pode ser convenientemente descrito como uma modificação do
limiar de audição para a região do tom mais alto. O limiar aumenta na vizinhança do tom máscara.
A porção de aumento ou curva de mascaramento é não-linear, e assimétrica, crescendo mais
rapidamente do que cai. Qualquer som que caia dentro da curva de mascaramento é inaudível, o
que implica mais uma oportunidade de descartar dados. Onde o som máscara está presente, o
sinal pode ser quantizado de forma mais grosseira, usando menos bits.
A aproximação usualmente adoptada é usar um banco de filtros para partir o sinal em bandas de
frequências; 32 bandas é comum. A média do sinal em cada banda é calculada e usando estes
valores e um modelo psico-acústico, um nível de máscara para cada banda é computado.
Os standards MPEG, MPEG-1 e MPEG-2 são primitivamente standards de vídeo, mas, como a
maioria do vídeo tem som associado, também incluem compressão áudio.
MPEG-1 especifica 3 camadas de compressão audio, usando os princípios referidos. O processo
de codificação aumenta de complexidade com os níveis pelo que a taxa de compressão desce. a
qualidade de compressão a 192kbps para cada canal na camada 1 apenas precisa de 128kbps na
camada 2 e 64kbps na 3 (dobrar para stereo).MPEG-1 camada 3 audio, ou MP3, atinge taxas de
compressão de 10:1, mantendo alta qualidade. Reclama qualidade de CD, mas é um exagero.
Codificação VBR (Variable Bit Rate)também é possível, com a taxa de bits sendo mudada, de
forma a que passagens que não podem ser comprimidas facilmente podem ser codificadas a uma
taxa mais elevada das que podem. O MP3 também pode ser codificado a uma taxa menor, por ex.
para streaming: a 64kbps reclama-se qualidade radio FM.
A parte audio do MPEG-2 é essencialmente idêntica ao MPEG-1, excepto algumas extensões
para lidar com som surround. O standard MPEG-2 também define um novo codec audio,
Advanced Audio Coding (AAC). Ao contrário do MP3, o AAC não é compatível, para trás, com
os anteriores standards MPEG. Abandonado a retro compatibilidade, pôde atingir mais altas taxas
de compressão a mais baxas taxas de bits que o MP3. O AAC tem qualidade superior ao MP3 às
mesmas taxas de bits. POr ex., a 96kbps é considerado superior ao MP3 a 128kbps.
Como qualquer outra forma com perdas, o MP3 deteriora-se com a compressão/descompressão
várias vezes. É pois apenas adequado como um formato de distribuição.
FORMATOS
O uso do som digital em computadores é uma área pouco regulada, onde uma vasta gama de
formatos proprietários incompatíveis e standards ad-hoc podem ser encontrados. Cada plataforma
tem o seu: AIFF para o MacOs, WAV para o Windows, AU para Unix, mas suporte para as 3 por
aplicações é comum em todas as plataformas.
QuickTime, Windows Media e RealAudio são largamente usadas como formatos contentores para
audio comprimido com diferentes codecs. A popularidade do MP3 torna-o no leader formato de
audio na Internet.
MP3
É, contudo, primeiramente uma codificação, não um formato de ficheiro, e os dados MP3 podem
ser armazenados noutros tipos de ficheiros, em particular o QuickTime e o SWF usam-no.
FORMATOS DE AUDIO PARA STREAMING
Audio stream parece-se com as emissões rádio. É distribuída sobre uma rede e tocada à medida
que chega, sem ser armazenada no computador do utilizador primeiro.
O primeiro formato com sucesso foi o RealAudio, da Real Networks. Também usa downsampling
para reduzir as necessidade de largura de banda. O streaming QuickTime inclui um codec AAC,
para maior qualidade. O Windows Media Audio também pode ser usado em streaming. Todos os
3, mais o MP3, são usados para trx. de eventos live.
MIDI
Também há um equivalente para distribuição de música em pauta, isto é, uma maneira de
entregar instruções acerca de como produzir música, que pode ser interpreatda por software ou
hardware adequados.
Para instruções, temos de ter software que possa interpretar as instruções, e algum meio de
produzir sons que correspondam aos instrumentos apropriados.
MIDI (Musical Instruments Digital Interface) fornece uma base para satisfazer estes requisitos.
Mais significativamente, talvez, o MIDI permite que os instrumentos sejam controlados
automaticamente por dispositivos que podem ser programados para enviar sequÊncias de
instruções MIDI. Originalmente, os sequenciadores, como estes dispositivos são conhecidos,
eram dispositivos de hardware dedicados, programados usando os seus interfaces próprios e
desajeitados.
Mas rapidamente os sequenciadores baseados em computador tornaram-se disponíveis. Um
software sequenciador fornece funções de edição e composição, e por isso precisa de guardar
sequências MIDI em ficheiros.
Tocar ficheiros MIDI requer um instrumento que entenda MIDI, mas um computador, equipado
com hardware adequado ou software, pode ser esse instrumento ele próprio. Os ficheiros MIDI
são muito mais compactos que os actuais ficheiros de som.
MENSAGENS MIDI
Uma mensagem MIDI é uma instrução que controla alguma aspecto da perfomance de um
instrumento. Um byte de status indica o tipo da mensagem, seguindo-se um ou 2 bytes de
dados dando o valor dos parâmetros. MIDI é marcadamente influenciado por instrumentos de
teclas. Assim, por ex., a mais comum das mensagens é ‘Note On’, que toma 2 parâmteros: um nº
entre 0 e 127 indicando a nota a soar, e uma velocidade de tecla, indicando quão rápido a tecla foi
premida, e ainda o ataque da nota.
Outras mensagens importantes MIDI são ‘Note Off’, que termina uma nota, ‘Key Pressure’ que
indica o grau de ‘depois de toque’ a ser aplicado e ‘Pitch Bend’ para mudar os valores das notas
dinamicamente.
Os bytes de status e dados diferem no 1º bit o que permite uma optimização: onde uma sequência
de mensagens tem o mesmo byte de status, ele pode ser omitido das subsequentes mensagens –
este arranjo é conhecido por running status.
MIDI GERAL
Já sabemos como as notas são produzidas, mas como são associadas com sons particulares?
Tipicamente, uma série de instrumentos controlados por MIDI – sintetizadores e samplers –
fornecem uma variedade de voices; nos sintetizadores são diferentes sons sintetizados –
patches. No caso dos samplers são diferentes amostras de instrumentos. Uma mensagem MIDI
‘Program Change’ selecciona uma nova voice, usando um valor entre 0 e 127. O mapeamento
destes valores para voices não é especificado no standard MIDI, e pode depender do instrumento
particular a ser controlado. Isto pode fazer que uma nota para piano (ficheiro) seja tocado por um
trombone. Para prevenir estas situações há uma adenda ao standard MIDI, conhecida como
General MIDI, que especifica 128 voices standard que correspondem a valores usados pelas
mensagnes ‘Program Change’.
Mas apenas associa nºs de programa a nomes de voices. Não há garantia que sons idênticos
sejam gerados por diferentes instrumentos – um placa de som barata pode tentar sintetizar todos,
enquanto um bom sampler pode usar samples de alta qualidade dos correspondentes
instrumentos reais.
O QuickTime incorpora funcionalidades MIDI.
SOFTWARE MIDI
Os programas de sequenciador MIDI, tais como o Cakewalk Metro e Cubase, desempenham a
captura e edição de funções equivalente àquelas do software de edição vídeo. Suportam múltiplas
pistas, que podem ser alocadas a diferentes voices, permitindo assim a criação de música
politímbrica. Em adição, tais pacotes suportam composição.
A música pode ser capturada como é tocada nos controladores de MIDI ligados a um computador
via uma interface MIDI.
MIDI pode ser transformado em áudio, tal como os gráficos vectoriais podem ser rasterizados e
transformados em pixels. A transformação inversa é por vezes suportada, mas é mais difícil de
implementar. O MIDI captura a estrutura do som, pois os eventos MIDI correspondem a notas.
Ser capaz de transformar audio em MIDI permite que a música seja gravada de instrumentos
normais em vez de controladores MIDI – até pode ser gravado do assobio de alguém – e depois
editada ou transcrita em termos de de notas musicais.
COMBINANDO SOM E IMAGEM
Tem de haver sincronização. Em ordem a estabelecê-la, é necessa´rio ser capaz de identificar
pontos específicos no tempo. O filme é dividido em frames, o que provê um meio natural de
identificar o tempo.
As tapes de audio podem ser similarmente aumentadas com código de tempo, e os códigos
podems er usados para sincronizar os gravadores de tapes, ambos audio e vídeo.
Isso permite pistas de som e de imagem numa aplicação de edição de vídeo tal como o Final Cut
Pro e que estas sejam arranjadas na mesma linha de tempo.
A sincronização pode assim ser estabelecida num programa de edição de vídeo, mas tem de ser
mantida quando é passada/tocada, possivelmente numa rede. Se o som e o vídeo são fisicamente
independentes – viajando separados através das redes, por exemplo – a sincronização é por
vezes perdida (é um facto da vida). Os dados de stream de audio e vídeo devem antes carregar o
equivalente do código de tempo, de modo a que a sincronização possa ser checkada, e possam
ser resincronizados, se necessário. Habitualmente isto requer que algumas frames de vídeo sejam
desprezadas.
CAP. 10 CARACTERES E FONTES
O texto tem uma natureza dual: é uma representação visual da linguagem; e um elemento gráfico
por direito próprio.
Estes assuntos de visualização são tradicionalmente a preocupação da arte de tipografia.
CONJUNTOS DE CARACTERES
Há pois (dual) que distinguir entre o conteúdo lexical e a sua aparência.
Para expressar a sua identidade fundamental, distinguimos entre um caracter abstracto e as
suas representações gráficas.
Os caracteres abstractos são agrupados em alfabetos.
Para representar o texto digitalmente, é necessário definir um mapeamento entre os caracteres
(abstractos) num alfabeto e os valores que podem ser armazenados num sistema de computador.
Vamos pois mapear caracteres para inteiros, o que associa cada caracter de interesse com
exactamente um número – tal associação é chamada um character set; o seu domínio é
chamado o character repertoire; para cada caracter no reportório o conjunto de caracteres define
um valor de código na sua gama, o que é conhecido por conjunto de code points.
A mera existência de um character set é adequado para suportar operações tais como editar e
procurar num texto.
Há vantagens de usar um character set com alguma estrutura em vez de completamente
arbitrário. Em particular, é útil usar inteiros dentro de uma pequena gama, que pssa ser facilmente
manipulada por um computador. Pode ser útil, também, que os códigos para letras consecutivas
sejam inteiros consecutivos, o que simplifaica algumas operações sobre texto, tal como a
ordenação.
STANDARDS
A consideração mais importante acerca dos conjuntos de caracteres é a standardização.
ASCII (American Standard Code for Information Interchange) é o character set dominate desde os
anos 70. Usa 7 bits para armazenar cada valor de código, e assim há um total de 128 pontos de
código. O character repertoire do ASCCI é, contudo, apenas de 95 caracateres. Os valores 0 a 31
e 127 são associados a caracteres de controlo.
Uma solução melhor que as variantes nacionais do character set 7-bit ISO 646: Os 7 bits de um
carácter ASCII são ivariavelmente armazenados num byte; o 8ª bit era para paridade mas caiu em
desuso este uso.
Como é costume, os diferentes fabricantes, cada um desenvolveu as suas próprias (e
incompatíveis) extensões de 8-bit ao ASCII. Todas compartilham algumas características: a
metade mais baixa (pontos de código 0-127) são idênticas ao ASCII; a metade superior (pontos de
código 128-255) são para letras acentuadas, pontuação extra e símbolos matemáticos.
Porque os reportórios dos character sets são diferentes, nem sempre é possível executar uma
tradução entre eles, por isso a transferência de texto entre plataformas é problemática.
Durante os anos 80 o standard ISO 8859 foi produzido. O ISO 8859-1, é usualmente referido
como ISO Latin1, e cobre a maioria das linguagens Ocidentais Europeias. ISO 8859 tem várias
desvantagens. Em termos práticos, a pior é que continua a usarcharacter sets não-standard
propriedade dos fabricantes. O principal problema é simplesmente que 256 não um nº suficiente
de pontos de código.
UNICODE E ISO 10646
Um character set de 16 bits tem 65536 pontos de código, isto é, pode acomodar 256 variantes de
um character set de 8-bit simultaneamente. O ISO (em conjunção com o IEC) desenvolveu um
character set de 32 bits, designado de ISO 10646, estruturado ao longo das 2 frases prévias: uma
colecção de 232 caracteres pode ser arranjada como um hipercubo (de 4 dimensões) consistindo
de 256 grupos, cada qual consistindo de 256 planos de 256 linhas, cada qual compreendendo 256
caracteres (o qual pode ser o reportório de caracteres de um character set de 8-bit).
Cada caracter pode ser identificado especificando o seu grupo g, o seu plano p, e uma linha r e
coluna c. Assim (0,0,0,*) corresponde ao ISO Latin1.
Ao mesmo tempo, um consórcio industrial trabalhou num character set de 16-bit, conhecido por
Unicode. Ele não é suficiente para acomodar caracteres Chinese, Japoneses e coreanso, mas
como há uma base comum ele usa o mesmo código para caracteres comuns.
Adicionalmente às letras acentuadas incluídas em muitos alfabetos, marcas típicas, tais como
acentos e tis, estão disponíveis e é fornecido um mecanismo para construir caracteres compostos
combinando estas marcas com outros símbolos.
O Unicode e ISO 10646 foram trazidos para linha em 1991 quando o ISO concordou que o plano
(0,0,*,*), conhecido como o Basic Multilingual Plane (BMP) devia ser idêntico ao Unicode.
Uma codificação é um outro nível de mapeamento, o qual transforma um valor de código numa
sequência de bytes para armazenamento e transmissão.
Porque o ASCII de 7-bit era o código de caracteres dominante à longo tempo, há protocolos de
rede que assumem que todos os caracteres de dados são ASCII, e removem o bit de top. Para
ultrapassar esta limitação, pode ser necessário codificar caracteres de 8-bit como sequências de
7-bit. Uma codificação usada é a chamada Quoted Printable (QP): qualquer caracter com um
código na gama 128-255 é codificado como uma sequência de 3 bytes. O 1ª é o código ASCII de
=; os outros 2 são códigos para os dígitos hexadecimais do valor do código. Ex. é tem o valor 233
em ISO Latin, sendo então codificado como =E9.
Para interpretar uma sequência de bytes correctamente precisamos de saber que codificação e
character set é empregado. Muitos sistemas baseia-mse na convenção que o texto é ISO Latin1.
Uma aproximação mais flexível é usar uma característica adicional das especificações do
conteúdo MIME ;charset=character set.
Um conjunto de nomes de carhacetr sets é mantido pela IANA. Por ex., o tipo de uma web page
compsta em ISO Latin1 é text/html; charset=ISO-8859-1
esta transformação deve ser incluída nos cabeçalhos de resposta HTTP e mensagens de email
MIME-encoded.
Para o ISO 10646 o óbvio esquema de codificação, conhecido por UCS-4, emprega 4 bytes.
Qualquer valor do BMP terá os 2 bytes de top setados a zero. UCS-2 é idêntico ao Unicode.
Os códigos Unicode vão mais longe. Há 3 UCS Transformation Formats (UTFs) as quais podem
ser palicadas aos valores de código Unicode. UTF-8 toma o mesmo raciocínio que aplicámos aos
valores 32-bit. Ou seja, os caracteres ASCII são enviados como eles próprios. Por outro lado, os 2
bytes do valor UCS-2 são codificados usando até 6 bytes, com cada bit de cada byte setado a 1
para indicar que é parte de uma string codificada e não um carácter ASCII. Texto codificado com
UTF-8 é assim uma string de bytes de 8-bit, e é assim vulnerável a mutilações por protocolos que
conseguem apenas lidar com ASCII. UTF-7 é uma alternativa de codificação que usa uma técnica
similar à descrita para o QP para transformar os caracteres Unicode em streams de puro ASCII
texto, o qual pode ser transformado seguramente.
O UTF-16 permite pares de valores de 16-bit sejam combinados num único valor de 32-bit,
extendendo assim o reportório do Unicode para além do BMP.
Para sumarizar: ISO 10646 é um código de caracteres de 32-bit, arranjado em 256 grupos, cada
qual consiste em 256 planos acomodando 65536 caracteres cada. O UCS-4 utiliza 4 bytes para
manter o valor do código de 32-bit completo para todos os caracteres; o UCS-2 utiliza apenas 2
bytes, para manter valores de 16-bit para caracteres no plano (0,0,*,*). UCS-2 é idêntico ao
Unicode. ISO LAtin1 é o código de 8-bit equivalente à linha (0,0,0,*) do ISO 10646, e o ASCII é um
subconjunto do ISO Latin1. UTF-8 permite qualquer valor Unicode ou ISO 10646 seja codificado
como uma sequência de bytes de 8-bit, tais como os valores ASCII são deixados inalterados num
único byte. UTF-16 é uma extensão do mecanismo que fornece Unicode com acesso a 15 planos
extra do character set ISO 10646 completo.
As linguagens de markup HTML e XML e a linguagem de programação Java usam Unicode.
FONTES
Para exibir uma peça de texto, cada valor de carácter armazenado tem de ser mapeado para uma
representação visual (glyph) da forma do carácter.
Os glyphs são arrumados em colecções chamadas fontes.
Neste contexto, uma fonte é uma colecção de peças de tipografia.
Todas as formas numa fonte particular terão sido feitas de mestres produzidas por um designer de
tipografia, de forma a que partilhem certas características visuais, e combinem bem umas com as
outras para fazer uma página harmoniosa e legível.
Hoje em dia estão num ficheiro de computador, que contém uma descrição das formas gráficas
dos glyphs.
ACESSO ÀS FONTES
As representação gráfica do texto é insuficiente porque não tira vantagem da natureza repetitiva
do texto.
Devido a estas considerações, é normal manter o texto numa dada forma baseada-em-caracteres,
e usar os glyphs apenas quando é exibido ou incorporado numa imagem gráfica. O caso mais
simples é o texto monostyled. Quando tal ficheiro é mostrado, os códigos de carácter são usados
para seleccionar glyphs de uma fonte, mas informação adicional é necessária para controlar a
selecção das fontes.
Onde estão as fontes? Há 2 possibilidades. Ou em fontes armazenadas no sistema, ou
embebidas no ficheiro de texto. Neste último caso, as fontes devem ter sido originalmente
armazenadas no sistema usado para preparar o texto, e aí reside a maior vantagem desta
abordagem: os designers multimedia podem usar fontes da sua exclusiva escolha, confiando que
elas estarão disponíveis quando forem precisas, porque estão embebidas no mesmo ficheiro que
o texto. Se não estiverem, há a possibilidade de algumas fontes requeridas pelo texto não estejam
disponíveis. A probabilidade de isso ocorrer aumenta se o designer escolher fontes esotéricas.
Poquê então preferir não embeber fontes nos ficheiros de texto? Uma razão potente é que nem
todos os formatos de ficheiro de texto permitem isso. Em particular, o HTML não tem a facilidade
de embeber fontes. A outra razão é que usar meia dúzia de fontes numa página torna os ficheiros
muito grandes.
Se a fonte não estiver disponível, no extremo o sistema crasha. mais provavelmente, o texto
nessas fontes não é visualizado ou é substituído por outra.
CLASSIFICAÇÃO E ESCOLHA DE FONTES
A maior distinção é entre fontes monospaced (ou de largura fixa) e proporcionais.
Paradoxalmente, as segundas são geralmente sentidas como mais fáceis de ler; e permitem,
adicionalmente que caibam mais palavras numa linha. As primeiras paracem oriundas de uma
máquina de escrever e podem ser efectivas para cabeçalhos, mas são especialmente adequadas
para listar listas de instruções de programas de computadores. Também para parecer ‘low-tech’,
por ex. para correspondência mais informal.
Provavelmente a fonte monospaced mais usada é a Courier. Neste livro a usada é proporcional
ITC Slimbach. A maioria das fontes clássicas de livros, tais como Times, Baskerville, Bembo e
Garamond são também proporcionais, tal como muitas novas, como a Helvetica.
Uma outra distinção é entre serifed e sans serif. Serifs são os pequenos ‘tracinhos’ adicionados
aos finais das formas dos caracteres – por vezes são conhecidas como Romans.
No século XIX, as fontes sans serif eram realmente muito grotescas.A mais conhecida é sem
dúvida a Helvetica, outras são Univers e Arial, e Gill Sans.
Texto numa fonte serifed é mais difícil de ler num écran de computador.
Uma 3ª classificação é baseada em categorias largas de forma: upright shape e italic shape
que imita um certo estilo de escrita à mão. Ao princípio eram só transformadas (inclinadas) das
upright, mas agora são usadas por direito próprio. Diz-se que têm uma forma inclinada / slanted.
São usadas onde algo mais humano que uma tipografia convencional é desejada.
A tecnologia digital tornou relativamente fácil criar novas fontes, como por exemplo ‘fantasy fonts’.
Algumas fontes parecem ter sido esmagadas horizontalmente; são as condensed fonts e são
adequadas para notas marginais ou colunas estreitas de jornal. Em contraste há as extended
fonts, que são esticadas horizontalmente e se adequam a cabeçalhos, por ex.
Finalmente, as fontes podem ser classificadas de acordo com a sua largura/weight, isto é, a
grossura dos traços que fazem as letras – são as boldface fonts ou só bold. Existe um caso
semelhante ao itálico com elas.
A convenção (tipográfica) é que o boldface é intrusivo, e deve ser reservado a cabeçalhos e
similares. Por causa das limitações do display do computador, é por vezes avisado usar o
boldface. As fontes bold também são muito usadas para títulos de janela e itens de menu, porque
se vêem bem.
Porque faz sentido falar acerca de uma versão itálica ou de uma versão bold de uma font upright,
as fontes podem ser agrupadas em famílias, que corresponde ao tradicionalmente chamado de
typeface. Uma fonte é um estilo particular de algum typeface.
Variações são muitas vezes combinadas para produzir versões adicionais, tal como bold italic,
slanted sans serif. A família Lucida Bright é um ex. extremo consistindo de 20 fontes. O Lucida
Fax é uma variante para ser especialmente legível a baixa resolução.
Como regra geral, se queremos combinar fontes, devem ser da mesma família.
Há uma classificação mais subjectiva baseada na série de usos para que uma fonte é mais
adequada. A distinção básica é entre text fonts e display fonts.
As de texto não devem ser intrusivas para o texto, devem ser facilmente legíveis e não causar
fadiga. Invariavelmente são upright, mais frequentemente serifed e de uma largura média.
As fontes de dispaly têm a função de passar através de uma mensagem curta, pelo que devem
ser captadoras do olho; e estão sujeitas à moda.
A baixa resolução de muitos monitores podem conduzir à distorção das formas das letras, fazendo
com que fontes que funcionam bem no papel sejam difíceis de ler, especialmente em pequenos
tamanhos. A solução óbvia é usar fontes de maior tamanho do que o costume em livros, e isso é
frequentemente feito. É muitas vezes 60% mais largo que em livros ordinários. Uma alternativa é
procurar uma fonte que foi desenhada para ser legível a baixa resolução; Verdana e Arial são
exemplos disso. As sans serif tendem a sobreviver melhor a baixas resoluções.
A maneira como os glyphs são agrupados em fontes deve mais à tradição da impressão do que à
influência dos standards de codificação de caracteres, com o alfabeto a ser o foco do design.
Símbolos especializados não-alfabéticos, tais como os símbolos matemáticos, são habituyalmente
agrupados nas suas próprias fontes, conhecidas como symbol fonts ou pi fonts. Fontes
contendo apenas imagens gráficas são as dingbat fonts.
Como resultado disto, outro nível de codificação é requerido em ordem a mapear os códigos de
caracter armazenados de um qualquer conjunto de caracteres, em glyphs. Adicionalmente, algum
mecanismo pode ser necessário para combinar fontes separadas, por ex., uma fonte alfabética e
uma font de símbolo, para prover glyphs para todos os caracteres de um documento.
TERMINOLOGIA DAS FONTES
Muito da descrição das características de uma fonte consiste em medidas. estas são
habitualmente dadas em unidades de pontos / points (pt); corresponde a 1/72 de uma polegada,
o que faz 1 pt = 0,3528mm – é uma unidade pequena.
Para distâncias entre linhas de texto, por ex., usa-se frequentemente a pica (pc), que é igual a
12pt (ou 1/6 de polegada, ou 4,2333mm).
O tamanho de uma fonte é dado em pontos, como em ‘12pt Times Roman’. O valor especificadop
é tecnicamente o tamanho do corpo da fonte, que era a altura dos tipos metálicos na tipografia
tradicional. Agora, o tamanho de corpo é a menor altura que pode acomodar todos os símbolos da
fonte. É usulamente a altura entre o topo do caracter mais alto e o fundo do mais baixo. Contudo,
a altura de corpo é realmente um valor arbitrário, escolhida para prover um adequado espaço
vertical para as letras ficarem bem quando são colocadas em linhas consecutivas.
A baseline é a linha horizontal onde assentam todos os caracteres. O espaço entre sucessivas
baselines é chamado de leading. Uma importante dimensão da fonte é a altura entre a baseline e
o topo da letra minuscula x. Este valor é o x-height da fonte. A maioria das letras cabem nesse
espaço, outras, como o h, são os ascenders e o y – descenders.
Os ascenders não são a única coisa que pode ir além do x-height. Na maioria dos caso as
maiúsculas também sobem embora não tanto como o ascent; isso dá origem ao cap height.
A relação do x-height com o tamanho de corpo é uma das mais importantes características visuais
da fonte.
O x-height da fonte é usado como unidade de medida, habitualmente escrita ex e é uma medida
relativa o que é bom, pois mantém a mesma relação com a altura das minúculas, sendo bom pois
para expressar medidas verticais. Uma medida similar mas horizontal é o em. Tradicionalmente
um em é a largura da letra M, mas agora é a unidade de comprimento igual ao tamanho da fonte;
para uma 10pt font, 1 em é igual a 10pt. Os traços – são 1 em, por isso conhecidos como em-
dashes. O en é a medida do N e é igual a ½ em. Um en-dash é 1 en comprido.
Outras características que caracterizam o look de uma fonte são o tamanho e forma dos serifs, e a
relação da grossura de grossos e finos traços. Por ex. as fontes modernas são caracterizadas
por grande contraste entre os traços finos e grossos, e serifs sem curvas que juntam... Os seus
fans dizem que produz efeito brilhante, aparência sofisticada; os detractores dizem que afectado e
ilegível.
Importante é também como as letras se combinam. Cada letra tem uma bounding box que é a
caixa mais pequena que a consegue conter. As letras seguintes são postas ( a sua bounding box)
a uma certa distância conhecida por left side bearing.
Por vezes, quando 2 letras particulares são colocadas perto uma da outra, o espaço total entre
elas parece muito grande ou muito pequeno. Os tipógrafos normalmente ajustam o espaço para
parecer mais uniforme – o processo é conhecido por kerning. Os pares kerning para uma fonte
são definidos pelo seu designer e é guardado como valor parte da fonte.
As medidas que descrevem o tamanho de caracteres individuais e o espaço entre eles são
colectivamente conhecidas como font metrics. Programas que executam tipografia precisam
aceder a estas métricas, em ordem a determinar onde colocar cada glyph à medida que
constroem as linhas, parágrafos e páginas. A organização desta informação depende do formato
da fonte, sistema de computador e software de tipografia usados.
Certas combinações de letras ficam sempre mal qualquer que seja o spaço entre elas, pelo que se
usam as chamadas ligatures que são caracteres compostos, usados por ex. nas combinações ff,
fl, fi e ffl.
Software de layout de texto de alta qualidade lida automaticamente com o kerning e ligatures. Os
processadores de texto e web browsers em geral não fazem isso.
TECNOLOGIA DIGITAL DE FONTES
Os gplyphs são simplesmente pequenas imagens, que podem ser pois bitmapped fonts e
outline fonts (vectoriais).
A principal vantagem das bitmapped é que os glyphs podem ser renderizados no écran simples e
rapidamente, usando uma operação de cópia de bits. Esta vantagem é actualmente erodida com o
avanço dos sistemas de computadores. Uma desvantagem é que não odem ser escaladas
graciosamente. As irregularidades que resultam de escalar um bitmap são especialmente
intrusivas com as formas do caracter, falhando no detalhe. Quando são usadas, é normal prover
versões de cada fonte em diversos tamanhos.
Cada plataforma tem o seu próprio nativo formato de bitmap font, usualmente optimizado de
alguma forma para funcionar eficientemente com as rotinas de sistema responsáveis pelo display
do texto. Em contraste, as fontes outline são usalmente armazenadas num formato plataforma-
cruzada. As 2 mais usadas são Adobe Type 1 (PostScript) e TrueType fonts.
Os glyphs numa fonte Type 1 são simplesmente pequenos programas, escritos num restrito (para
que sejam eficientemente renderizadas no écran) subconjunto do Postscript. Um carácter outline
numa finte TrueType é guardada como uma série de pontos os quais definem as linhas e curvas
que fazem a forma.
Um novo formato recentement desenvolvido, Opentype, unifica o Type 1 e TrueType, sendo mais
portável pois o seu formato permitem que as 2 sejam guardadas nesse formato. São superiores
aos velhos formatos em vários pontos. A sua codificação é baseada no Unicode e podem
acomodar muito mais que 256 caracteres; também suportam melhor os embelezamentos da
tipografia fina.
Para além das descrições dos glyphs a Type 1 e TrueType incluem informação extra para
melhorar a renderizaçãoa abaixas resoluções. No Type 1 tomam a forma de dicas/hints
declarativas.
Tal como nos outros tipos de gráficos vectoriais também é possível usar o anti-aliasing, mas deve
fazer-se isso judiciosamente pois a suavização pode tornar-se borrado e ilegível, principalmente
no caso de tamanhos pequenos.
CAP. 11 TEXTO E LAYOUT
Quando os caracteres são combinados em palavras.
Comandos de layout e características visuais podem ser especificados usando uma linguagem
de markup baseada-em-texto.
É, contudo, prática comum usar um sistema dedicado para preparar o texto, que é depois
importado para o ambiente de authoring já formatado.
TEXTO EM GRÁFICOS
A flexibilidade máxima no layout de texto pode ser obtida tratando o texto como um gráfico e
manipulando-o com um programa gráfico. É a abordagem usada em posters, booklets, logotipos
de companhias, páginas web, etc.
Se os itens de texto são criados por fontes de desenho, podem ser tratadas como objectos num
programa de vectores gráficos: podem ser arranjadas na página arbitrariamente, e todas as
transformações e efeitos que podem ser aplicados a objectos gráficos podem-lhes ser aplicados.
O texto permanece editável, e pode ser alterado usando as ferramentas normais de edição
vectorial.
tratando o texto como gráficos de bitmaps, diferentes resultados podem ser obtidos. Uma vez que
o texto foi convertido em pixels, torna-se susceptível a todos os retoques e filtros que os
programas de painting fornecem.
Este texto foi incorporado numa imagem bitmap e não pode mais ser editada como texto.
Usando a terminologia do cap.10, texto em gráfico vectorial retém o seu conteúdo lexical,
enquanto em bitmap é reduzido inteiramente a aparência.
Ambas as aproximações têm os seus usos. Era anteriormente comum para os designers
prepararem texto no Illustrator e depois importá-lo para o Photoshop, onde era rasterizado de
modo a que os efeitos bitmap pudessem ser aplicados.
Os programas gráficos oferecem controlo completo sobre a aparência e localização do texto, mas
não é sempre isso que é requerido. Pelo contrário num artigo normal, queremos ser capazes de
simplesmente digitar as palavras, e ter um programa que faça o máximo no que toca ao layout por
nós.
LAYOUT
É habitual distinguir entre formatação inline ou de caracter, e formatação de nível bloco ou
parágrafo. A um mais alto nível ainda, há a questão como posicionar os blocos relativamente uns
aos outros, como num magazine.
Os processadores de texto fornecem um conjunto de facilidades básicas adequadas para
documentos de negócios, mas têm falata de muitas lindezas tipográficas oferecidas por aplicações
de layout de página tais como o InDesign.
A tipografia para páginas web é limitada pelas facilidades das linguagens de markup e pelas
capacidades dos browsers.
Layout de texto para imprimir tem de lidar com coisas como o make-up da página, como o texto é
partido em páginas, a localização de elementos fixos, tais como cabeçalhos e nºs de página, em
cada página.
FORMATAÇÃO INLINE
É aplicada a sequências de caracteres, frequentemente chamados de spans, dentro de um bloco.
especifica as propriedades das fontes descritas no cap. 10, a família da fonte, a variante, o
tamanho, as cores.
FORMATAÇÃO DE BLOCO
Preocupa-se com o modo como o espaço é adicionado às linhas dentro do bloco e com o modo
como o bloco é colocado relativamente aos outros blocos que o cercam.
Se o espaço entre palavras é mantido uniforme, o texto pode ser alinhado à esquerda, de modo
a que a margem esq. é imediata, mas a direita é irregular; alinhada à direita (ao contrário);
centrada (com ambas irregulares). Para publicações mais formais, o texto é justificado. espaço
extra é adicionado entre as palavras, se necessário, para fazer cada linha, excepto a última, do
mesmo tamanho. Isto pode ser feito de diversas formas: a mais crua, ou a hifenizada. Algoritmos
mais elaborados que consideram parágrafos inteiros, em vez de linhas individuais podem ser
empregues. Contudo, mesmo que queira uma aparência formal, a justificação é melhor evitada
para texto a ser visualizado num monitor, pois causa rios de espaço.
Todos os blocos de texto podem ser cercados por espaço em todos os 4 lados. O espaço entre o
lado esq. do bloco e o canto da página ou janela é usualmente chamado de indent. As primeiras
linhas também podem ser extendidas (indentação negativa), o que é usado muito em listas. Os
itens numa lista podem ser numerados, ou introduzidos por balas ou outros caracteres dingbat.
Por vezes frames são postas à volta dos blocos. É comum também permitir que os blocos tenham
uma cor de fundo; as frames também podem ser coloridas.
O uso de tabelas deve ser evitado.
MARKUP
O autor, o editor e possivelmente o designer do livro devem anotar o manuscrito, usando uma
variedade de canetas de diferentes cores e vocabulário especial de símbolos para indicar como o
texto deve ser formatado pelo tipógrafo quando for impresso. Este processo de anotação foi
chamado de marking up, e a sua função foi transferida para instruções inseridas no ficheiro de
texto que agora corresponde ao manuscrito. A forma destas instruções é determinada pelo
programa.
Uma distinção é entre sistemas de formatação WYSIWYG e sistemas baseados-em-tags.
O markup, apesar de presente, é invisível.
As tags fazem o mesmo papel dos comandos num sistema WYSIWYG, mas o seu efeito não é
necessariamente imediatamente visível. Uma fase separada de processamento é habitualmente
requerida.
O Word é WYSIWYG, tal como Quark Express e Adobe InDesign. Baseadas em tags temos o troff
e Latex. Em anos mais recente temos o HTML.
Mas as susas diferenças são superficiais e concernem à interface muito mais do que ao modo no
qual o layout é realmente controlado. Debaixo de qualquer sistema WYSIWYG está um
formatador de texto tag-based, apesar das tags serem mais códigos binários de controle que tags
de texto legível, e são inacessíveis ao utilizador do editor WYSIWYG.
Uma vantagem de usar markup textual, em vez de códigos binários ou alguma estrutura de dados,
é que o documento marked up é texto pleno, que pode ser lido em qualquer computador e pode
ser transmitido incólume sobre uma rede.
Uma distinção mais profunda é aquela entre visual markup e estrutural markup. No primeiro, as
tags ou comandos são usadas para especificar aspectos da aparência do texto (fontes e
tamanhos de impressão). Na segunda, as tags identificam elementos lógicos de um documento,
tais como cabeçalhos, listas, tabelas, ...
A estrutural tem vantagens distintas sobre a visual. Talvez a mais óbvia é permitir alterar a
aparência de um documento globalmente, alterando as definições dos estilos apenas uma vez.
Por ex. podemos ter a definição de sectionheading e depois editar essa definição e alterar toda
essa secção. Uma vantagem mais substancial é a fácil localização de documentos que ela
permite. Ainda melhor, um sistema suficientemente poderoso baseado no markup estrutural
permitirá redefinir o efeito dos tagas de markup para diferentes media de saída.
Uma vantagem relacionada do markup estrutural é que ele permite uma separação de
preocupações, e uma divisão do trabalho, entre a aparência de um documento e a sua estrutura.
A vantagem final do markup estrutural é que identificando os elementos estruturais por nome torna
mais fácil a um programa de computador analisar a estrutura do documento.
Um filtro importante permite que os documentos de Word sejam colocados no InDesign, enquanto
mapeia estilos com nome do Word para estilos com nome no InDesign.
STYLESHEETS / FOLHAS DE ESTILO
Se levarmos a ideai do markup estrutural à sua conclusão lógica, ele conduz a uma completa
separação entre a estrutura e a aparência. Os tags de markup devem apenas indicar a estrutura.
Contudo, quando os documentos são visualizados ou impressos, eles têm alguma aparência, e é
natural querermos especificá-la. Ond o markup estrutural puro é usado, a especificação da
aparência é deixada a um mecanismo separado.
Se o mesmo conjunto de tags é usado para marcar uma classe suficientemente larga de
documentos, faz sentido construir software de visualização específico para essa classe de
documentos, e ligar as regras de layout ao software. Uma variação é permitir ao utilizador o
controlo de alguns aspectos do layout.
A alternativa é fornecer uma especificação separada do layout, complementando o documento
tagado. Tal especificação de layout é habitualmente chamada de stylesheet. Para cada tag
usada, uma folha de estilo fornece uma regra descrevendo o modo no qual os elementos com
aquela tag devem ser visualizados. Pode haver mais que uma stylesheet para um documento
particular ou classe de documentos.
LAYOUT DE TEXTO USANDO HTML E CSS
Originalmente, a WWW era para disseminar pesq uisa científica, pelos que os tags do HTML
correpondiam aos elementos principais de um artigo científico.
Estes tags estão mais no espírito de markup estrutural do que as tags explicitamente tipográficas.
Revisões postreiores do HTML adicionaram tabelas e formas interactivas no seu reportório.
O nosso interesse principal em descrever o HTML é ilustrar o markup estrutural. Similarmente,
com CSS queremos mostrar como as folhas de estilo podem fornecer controlo sofisticado do
layout para complementar o markup.
O HTML evoluiu, nem sempre da forma mais apropriada. Como resultado tem inconsistências,
especialmente entre o seu coreente ethos de markup estrutural e o resto das características de
markup visual de uma fase inicial da sua evolução.
Vamos usar o (mais restrito) XHTML 1.0, que é compatível, na maior parte com o HTML 4.0.
Usaremos o termo agente utilizador para significar qualquer programa que interprete o markup
HTML. Os Web Browsers são exemplos de visual user agente; um conversor de texto-para-
discurso é um ex. de um agente utilizador não-visual.
ELEMENTOS, TAGS, ATRIBUTOS E REGRAS
O markup HTML divide um documento em elementos, correspondendo às suas divisões lógicas,
tal como secções e parágrafos. Em geral elementos podem conter outros elementos. Cada
elemento é introduzido por uma start tag e termina com uma end tag. entre elas está o content
do elemento. Os elementos devem estar adequadamente aninhados, o que significa que cada
elemento forma parte do conteúdo de um único parent element que o contém.
Todos os tipos de elementos disponíveis em HTML têm um nome. A sua tag inicial consiste do
nome fechado em <>.
Um problema inevitável surge se os tags são escritos nos mesmos caracteres que o texto:
devemos distinguir lexicalmente tags do texto, usando alguns caracteres especiais. Em HTML, um
símbolo pode ser representado pelo character entity reference &lt;. Isto deixa agora com o
problema de representar o &, que é &amp;. > é &gt;.
Os comments são começados por <!-- e terminados por -->
Alguns elementos não têm conteúdo; são chamados de elementos vazios. Um ex. é o elemento
hr, que produz uma régua horizontal (linha). como não há conteúdo, não é preciso um end tag.
Apesar de não ter conteúdo tem algumas propriedades, como a largura e a cor. Em HTML as
propriedades são chamadas atributos. Os atributos associados com com um elemento particular
são especificados como parte da sua definição na linguagem. Valores para cada atributo podem
ser atribuídos dentro da start tag de um elemento. Por ex. <hr size=”12” width=”50%” />
Os nomes dos atributos devem ser em letras minúsculas e os valores fechados em aspas.
Alguns atributos funcionam como flags ou Booleanos. Tal flag é ligada atribuindo o seu próprio
nome a si. Ex. noshade=”noshade”, e são desligadas omitindo-as.
A maioria dos atributos de eleemntos de texto simples são desprezados porque controlam algum
aspecto da aparência. Issso pode agora ser controlado muito melhor usando stylesheets. Em
princípio, como a informação da stylesheet é separada do markup, qualquer linguagem de
stylesheet pode ser usada com HTML. Na prática, muitos Web browsers apenas suportam
Cascading Style Sheets (CSS).
CSS permite especificar várias propriedades visuais de cada elemento do documento.
Especificamos que a 1ª linha de cada parágrafo deve ser indentada por 4:
p{
text-indent: 4pc;
}
A regra tem 2 partes: um selector (aqui p) que indica a que elementos a regra se aplica, e
algumas declarações (aqui apenas 1).
Precisamos de uma maneira de distinguir entre diferentes classes de parágrafo, tais como os que
são indentados e os que não. O atributo HTML class pode ser usado para este fim. Este atributo é
uma propriedade de virtualemnte todos os elementos HTML; o seu valor é um nome distinto que
identifica um subconjunto desses elementos. Por ex. podemos usar a class noindent para
parágrafos que queiramos ver visualizados sem indentação.
p.noindent {
text-indent: 0pc;
}
As regras podem ser usadas para controlar uma gama de propriedades; até mesmo uma simles
regra com um par de declarações pode produzir efeitos que não estão habitualmente dispobníveis
em HTML. Por ex.
P.hang {
text-indent: -4pc;
margin-left: 4pc;
} causa que um parágrafo seja visualizado com uma indentação suspensa.
... As primeira linha é uma declaração de tipo de documento, que identifica a versão do HTML a
ser usada, neste caso o XHTML 1.0
Há apenas 2 elementos de documento que podem vir imediatamente dentro do elemento html:
head seguido de body. O head do documento contém a informação acerca do documento, e não
é visualizada; o body contém o texto real.
O elemento meta deve ser a primeira coisa do head. O elemento title contém um pequeno título
que geralmente é visualizado na barra de título da janela do browser. O elemento seguinte no
head é um style, que é onde as regras de stylesheet que governam o layout da página devem ser
colcoadas. O tag inicial tem um atributo type cujo valor é o tipo MIME da folha de estilo. Para
regras CSS, é sempre text/css.
ELEMENTOS HTML E ATRIBUTOS
tem 91 elementos, dos quais 10 são desprezados. Apenas poucos destes elementos se referem
puramente com o layout do texto. Esses podem ser convenientemente divididos em nível-bloco e
inline.
O elemento de block-level textual frequentemente mais usado é o elemento parágrafo (p). Outro
são os níveis de 1 a 6 de cabeçalhos, com os nomes h1, h2,...; br causa uma quebra de linha e
hr, a régua horizontal. o elemento blockquote é usado para longas citações; o elemento pre, é
usado para texto ‘pré-formatado’ e causa que o seu conteúdo seja visualizado exactamente como
é deixado. As únicas estruturas elaboradas que o HTML suporta como block-level são as listas e
as tabelas.
As listas ordenadas, na forma de elementos ol, listas não ordenadas – elementos ul, e as listas de
definições – elementos dl. os elementos ol e ul podem conter itns de lista (elementos li).
A diferença é que os agentes de utilizador numeram automaticamente os items duma lista
ordenada; os de lista não-ordenada são marcados por um caracter adequado, usualmente uma
bala. Os items de um elemento dl são diferentes, pois cada um consiste em 2 elementos: um
termo (dt) e uma definição (dd).
O elemento de nível-bloco mais abstracto é o div, que simplesmente identifica uma divisão dentro
do documento que será tratada como uma unidade.
Os elementos inline são usados para especificar a formatação de frases dentro de um elemento
de nível-bloco.
Temos em para ênfase, e strong para ênfase forte. i e b especificam explicitamente itálico e bold.
Há um equivalente inline ao div: é o span. Em conjunção com o atributo class, o span pode ser
usado para aplicar formatação arbitrária ao texto, como veremos.
Há um elemento que pode substituir/replace o body, e é o frameset: divide uma página numa
colecção de framse individuais, que podem ser actualizadas independentemente, arranjadas
numa grelha rectangular. Pode apenas conter elementos frame ou outros framesets. Cada
frameset é um elemento vazio; usa um atributo chamado src (‘source’) para especificar outro
ficheiro HTML, cujo conteúdo será visualizado dentro da frame. O valor do atributo src é um URL.
Os utilizadores acham as frames confusas, por ex. para imprimir; além disso o bookmarking de
frames é impossível e conduz a confusão nas listas de histórico. As frames nunca foram uma
parte oficial do HTML, e a posição do CSS oferece agora melhores facilidades de layout, e assim
as frames devem ser, em geral, evitadas.
Todos os elementos que descrevemos podem possuir um atributo class, que permite dividi-los em
subconjuntos. Adicionalemte, cada pode ter um atributo id para identificar uma ocorrência única
particualr desse elemento. Ex. <p id=”para1”>. O identificador pode ser usado de várias maneiras,
uma das quais é um selector de CSS. Ex. p#para1 {text-indent: 6pc; }
PROPRIEDADES CSS
Estilos para parágrafos e caracteres num processador de texto, executam uma função muito
similar à que as stylesheets e são aplicados ao texto de um documento via o seu markup duma
forma similar.
5 propriedades controlam as característcias das fontes descritas. Ex.
p.elegant {font-family: “The sans”, Verdana, Helvetica, sans-serif } diz que, com efeito,
gostaríamos idealmente que os parágrafos do texto da classe elegante sejam mostrados numa
fonte muito rebuscada chamada “the Sans”. Se não estiver disponível pode ser Verdana,...
Css provê 5 famílias genéricas: serif, sans-serif, monospace, cursive, e fantasy.
As 2 propriedades font-style e font-variant são usadas para seleccionar diferentes formas das
fontes. O primeiro pode ter os valores normal, italic e oblique. O segundo, normal ou small-caps.
A propriedade font-weight lida com o facto de os termos usados para font weights fazerem
apenas sentido dentro de uma família de fontes. Podemos usar os valores normal e bold.
algumas fontes permitem mais que 2 weights mas não há nome universal. O CSS usa números
para identificar os diferentes weights – 9 valores: 100, 200, ..., 900, podendo ainda usar-se os
valores bolder e lighter.
Todas as propriedades que não sejam explicitamente mudadas por uma regra para um elemento
são deixadas com os valores que têm no elemento pai – são herdados.
Uma opção similar está disponível para a propriedade font-size. Pode tomar os valores smaller e
larger, que causam uma alteração do tamanho relativo. também podem ser especificados como
percentagem do elemento pai, ou múltiplo do em ou ex da fonte herdada. também podem ser
especificados independentemente da font pai. Aqui a gama de valores pode ser de xx-small, x-
small, small, medium, large, x-large e xx-large – há uma progressão geométrica de 1:5.
também podem ser especificados como comprimentos absolutos, em qualquer unidade, apesar de
os points ser geralemente o preferido.
Normalmente, quando seleccionamos um type size, também especificamos o principal. Em CSS, a
propriedade line-height é usada para este propósito. O valor defeito, normal, permite que o
agente utilizador um tamanho razoável. Isto é invariavelmente muito pequeno. Muitos agentes
utilizadores (seguindo o aviso na especificação CSS) escolhem um valor entre 1.0 e 1.2 vezes o
tamanho da fonte. Ex:
line-height: 150%;
line-height: 1.5;
line-height: 1.5em:
Todas as propriedades das fontes podem ser combinadas numa declaração pequena para a font
property. O seu valor é uma lista compreendendo os valores para as 5 propriedades das fontes;
os valores da propriedade individual são separados por espaços, deixando suficiente contexto
para identificar uma lista de estilo de fontes separadas por vírgulas. Ex.
p {font: italic bold 14pt/21pt “The sans”, Verdana, Helvetica, sans-serif }
Quando um atributo não é fornecido para uma propriedade de font (tal como font-variant no ex.) o
valor por defeito é usado.
Uma combinação de cinzento pálido texto dentro de um fundo cinzento escuro é
surpreendentemente efectivo: o fundo escuro reduz o esforço causado pela luz, e o menor
contraste reduz ou elimina a distorção aparente.
As 2 propriedades CSS background-color e color controlam a cor do fundo e do texto,
respectivamente. Os seus valores especificam as cores no espaço de cores sRGB. A forma mais
intuitiva é rgb(r%,g%,b%). A mais comum é, todavia, #CC66CC por ex.
O controle sobre o alinhamento em CSS é fornecido pela propriedade text-align, que toma os
valores left, right, center or justify.
Para multimedia o texto de layout – Uma aproximação estabelecida é colocar blocos individuais de
texto numa grelha. Os designers usam tabelas e grelhas HTML, posicionando cada bloco numa
célula, mas o CSS fornece um controlo directo sobre o posicionamento de elementos de
documento, uma facilidade comparável ao controlo oferecido por programas de layout de páginas
tais como o PageMaker.
Cada elemento é notacionalmente colocado numa caixa. Texto que não está contido em nenhum
elemento inline é colocado numa caixa anónima. Umas e outras são colocadas perto umas das
outras horizontalmente, e depois esta linha de caixas é, dobradas até caberem na largura
disponível. O alinhamento especificado para o elemento pai é usado para controlar a distribuição
de espaço entre as caixas. Neste processo de desdobramento, algumas caixas podem ser
partidas entre linhas adjacentes; por ex., um lemento em pode precisar de ser partido entre linhas.
Quando os elementos inline e o texto contidos num elemento de nível-bloco é arranjado como
descrito, eles são colocados numa caixa correspondente a todo o bloco. As caixas para blocos
são colocadas verticalmente, uma debaixo da outra.
Na ausência de qualquer outra informação da stylesheet, este algoritmo de layout produz a
sequência familiar de blocos uniformemente espaçados de texto, todos ajustados em linhas da
mesma largura. CSS deixa-nos exercer algum controlo sobre a disposição de texto, para produzir
layouts mais efectivos e interessantes.
Cada caixa pode ser cercada por uma border, que é separada do conteúdo por algum padding/
enchimento; para além da fronteira, podem ser usadas margens para separar a caixa das suas
vizinhas ou dos lados da sua caixa cercadora. A largura e altura da caixa pode ser especificada
explicitamente, sujeita a certas restrições. Cor e cor de fundo podem ser especificados para cada
caixa.
Também é possível fazer as caixas flutuar para a margem direita ou esq., enquanto o texto flui à
volta delas. Esta facilidade é muito usada para embeber imagens em parágrafos de texto. A
propriedade float pode tomar os valores left e right. Uma propriedade complementar, clear, é
usada para controlar a colocação de texto que pode fluir por uma caixa flutuante. Toma os valores
left, right, both ou none, indicando que lados da caixa não podem ser adjacentes a uma caixa
flutuante. Ou seja, por ex: um valor left para clear força a caixa a ir para baixo do fundo de
qualquer elemento flutuante-à-esquerda.
Há também os elementos de absolute positioning; a propriedade position é colocada a
absolute, e depois podemos associar comprimentos Às propriedades top e left. Em conjunção
com width e height permitem colocar caixas arbitrariamente no écran. Podemos pois colocar
caixas umas em cima das outras, o que levanta a questão da ordem de empilhamento. A
propriedade z-order pode ser usada para controlar isso: o seu valor é um número; elementos com
z-order mais alta são colocados à frente.
Os cálculos e medidas necessários para posicionamento absoluto podem ser tediosos, e assim a
maioria dos designers prefere um software que lhes permita manipular caixas de texto
interactivamente no écran, e gera o markup e stylesheet automaticamente. Tais programas
essencialmente fornecem as capacidades dos pacotes de layout de páginas convencional.
Não se deve esquecer nunca que os agentes utilizadores podem ignorar (ou falhar a
interpretação) de stylesheets.
Uma stylesheet é usualmente armazenada no seu próprio ficheiro, e incorporada em todo o
documento HTML que precisa dela, através dum lemento link:
<link href=”stylesheet’s URL” rel=”stylesheet” type=text/css” />
Duas características são os selectores e tipos de media sensíveis-ao-contexto. O primeiro permite
estipular uma declaração que deve ser apenas aplicada a elementos que ocorrem dentro doutro
tipo de elemento especificado. Os tipos de media permitem especificar que certas partes da
stylesheet aplicam-se apenas quando o documento é renderizado para um certo media.
O termo ‘cascading’ refere-se ao modo no qual as stylesheets destas fontes são combinadas.
Basicamente, os designers de stylesheets suplementam ou sobrecarregam as dos utilizadores, os
quais por seu turno suplementam ou sobrecarregam os agentes utilizadores; uma stylesheet do
utilizador pode, contudo, designar certas regras como important, e assim sobrecarregam
qualquer conflito de regras com a do designer. Mas estes também podem pôr importante e assim
sobrecarregar as dos utilizadores.
CAP. 12 HIPERTEXTO E HIPERMÉDIA
Hipertexto é texto aumentado com links – apontadores para outras peças de texto, no mesmo
documento, noutro documento ou guardado num local diferente.
O lugar onde o link ocorre é chamado de fonte, o local para que aponta é o seu destino.
Temos de considerar mais que a aparência, não só como o link é visualizado mas temos de
considerar se e como guardar um registo de links que foram seguidos, para permitir fazer
backtracking, e outras facilidades de navegação.
Esta rede (www) de elementos de media conectados por links é um exemplo de hypermedia, do
qual o hipertexto é um caso especial.
UMA PEQUENA HISTÓRIA
1945 – Memex de Vannevar Bush, um dispositivo mecânico baseado em fotosensores e
micropontos e que nunca foi construído.
O ponto de vista de Bush era que a associação de ideias era fundamental para amaneira como
as pessoas pensam.
Outra característica da escrita e pesquisa inicial sobre o hipertexto é a assumpção que os links
sejam adicionados dinamicamente por diferentes utilizadores do sistema, de modo a que a
estrutura interligada se desenvolverá ao longo do tempo na base de interacções entre
comunidades de utilizadores.
1960s e 70s, Ted Nelson experimentou o Xanadu. Outros sistemas experimentais foram feitos a
pensar sobretudo em quiosques, como o Hypercard em 1987. Este foi desenvolvido pela Apple e
vinha gratuitamente em todos os McIntosh. A sua importância não reside na inovação mas sim na
popularização.
Entre as susas características estava uma metáfora baseada em cartões para organizar o material
ligado, suporte para uma variedade de medias, e a provisão de uma linguagem de script que
permitia que acções fossem associadas a eventos e controlos no cartão. A linguagem era o
Hypertalk.
A tecnologia ainda era muito crua e demorou 5 anos para a WWW evoluir de um simples sistema
distribuído de hipertexto para um completo sistema de hipermedia com interactividade.
A NATUREZA DO HIPERTEXTO
Links estão activos: usando um simples gesto, habitualmente o clique de um rato, um utilizador
pode seguir um link para ler o hipertexto para que ele aponta. Para fazer isto acontecer, uma peça
de software chamada browser é necessária.
Os browsers tendem a encorajar as pessoas a ler hipertexto duma forma não-linear.
É comum uma certa confusão de que esse browsing não-linear é a inovação distintiva do
hipetexto. Mas um relance em qualquer magazine, uma enciclopédia, mesmo as comuns
referências cruzadas nos manuais vê-se que não é isso.
Não é difícil compreender que sobre todas as variações de ler, a não-linearidade é a norma
quando se trata de ler texto. A novidade e o que distingue o hipertexto baseado em computador é
a imediatividade com que os links podem ser seguidos, o que cria uma experiência
qualitativamente diferente.
LINKS
O hipertexto faz emergir novos temas sobre armazenamento e visualização. Comosão os links
embebidos num documento? Como é o seu destino identificado? Como se distinguem do texto
circundante?
Os sistemas de hipertexto são geralmente construídos de elementos auto-contidos, análogos a
páginas web, que contêm conteúdo textual. São os nós.
Em geral, os links de hipertexto são conexões entre nós – usualmente a fonte de um link está
embebida algures no conteúdo do nó.
Além diso, um link pode apontar para outra página, ou para um ponto diferente na mesma página,
ou para um ponto específico noutra página. Geralmente os links conectam partes de nós.
Em HTML, cada link conecta um ponto único numa página com um (frequentemente o princípio,
implicitamente) ponto noutra, e pode ser seguido desde a sua fonte na primeira página até ao seu
destino na outra. Chamamos a este tipo de links, links unidireccionais simples. O XML
fornecem uma noção mais geral de link, permitindo que os fins de um link sejam regiões dentro de
uma página (links regionais), links que podem ser seguidos nas duas direcções (links
bidireccionais), e links que têm mais que duas pontas (multi-links). São, em conjunto, os links
extendidos.
NAVEGAÇÃO (BROWSING) E PROCURA
Há a possibilidade de desorientação – ficar perdido no hiperespaço. Navegar intensivamente pode
fazer lembrar um labirinto para o utilizador procurar por um específico pedaço de informação.
Muito do pensamento anterior acerca deste problema concentrava-se na provisão de vistas
gráficas da estrutura de links entre uma colecção de nós. Esta aproximação tem muitos problemas
– para qualquer colecção não trivial de nós e links, o diagrama ele próprio torna-se confuso. É
difícil fornecer informação suficiente acerca do conteúdo dos nós para os utilizadores
determinarem se é interessante, ou relembrarem se já visitaram antes. Estas ajudas gráficas
foram abandonadas em favor da navegação baseada na história da navegação, indexação e
procura.
Apareceu o botão de “voltar-atrás”, que requer que o browser mantenha uma pilha dos nós
recentemente visitados. Apareceu a lista histórica.
Estas têm sempre um tamanho limitado. mesmo que não tivessem, tornavam-se confusas.
Na WWW apontadores são URLs, e, como são apenas strings de texto, manter uma colecção de
bookmarks/favoritos, é simples. Estes podem ser organizados numa hierarquia e ordenados.
Navegar é baseado em procurar para informação pelas suas associações. Uma alternativa, e mais
natural, procedimento é procurar a informação na base do seu conteúdo. Esta aproximação está
próxima na procura/retrieval de informação e consulta de bases de dados.
A procura de texto não é prática. Em vez disso, gostaríamos de construir um índice (que pode ser
mantido num único site da web), consistindo de palavras-chave associadas a URLs de nós que
descrevem, e procurá-las. Esse índice pode também ser organizado em categorias. tal como no
yahoo! por ex., um largo número de URLs é colectado, classificado, e junto com um poderoso
motor de busca que suporta uma vasta gama de consultas booleanas normalmente encontrado
em sistemas de procura de informação.
Há 2 grandes aproximações a construir sites de index: manual e automática. Na primeira, os sites
são classificados por avaliação de pessoas dos seus conteúdos. Um URL para um web site é
normalmente adicionado ao index em resposta a um pedido do autor, que sugere uma posição
inicial na classificação – usualmente uma hierarquia de tópicos – e fornece uma breve descrição
do conteúdo. A facilidade de procura ajuda a compensar a limitação das classificações
hierárquicas. Para ultrapassar este problema, os indexes usam aliases para fazer uma sub-
categoria aparecer em mais que uma categoria. Contudo, seguir um alias conduz-nos a uma
categoria debaixo da qual o tópico é realmente armazenado, e assim se depois vens para trás na
hierarquia, não vamos pelo caminho que fomos.
É evidente que muito depende da estrutura da hierarquia.
Estes desiqulíbrios podem ser aliviados substituindo a classificação hierárquica simples por uma
ou mais esquemas sofisticados desenvolvidos pelos cientistas da informação, ou udando a
estrutura da classificação à medida que o conteúdo do material indexado muda.
A vantagem do manual é que ainteligência humana é aplicada, mas é de trabalho-intensivo.
Os indexs construídos automaticamente evitam este problema. São construídos por programas
conhecidos por robots, spiders ou web crawlers, que simplesmente seguem links, colectando
URLs e palavras-chave das páginas que encontram. O sucesso desta aproximação depende do
sucesso do robot em extrair palavras-chave com significado, na heurística usada para classificar
os sites na base da palavras-chave, e na eficiência e sofisticação do motor de busca.
Esta força bruta pode produzir resultados idiossincráticos. Também é vulnerável a tentativas por
web masters menos escrupulosos que, para atrair mais visitantes, colocam palavras-chave
inapropriadas nas páginas.
O motor de busca do Google estende o uso de palavras-chave olhando também ao nº de links
apontando para uma página, e usando isso como uma medida pesada da sua importância.
É possível, no entanto, que o texto de uma página possa não incluir as palavras que normalmente
são usadas para descrever o seu objecto.
Abrir linhas de texto de uma página web não fornece sempre uma indicação útil do seu conteúdo.
Então, o problema tem de ser aproximado do outro lado fornecendo um meio de adicionar uma
descrição que possa ser facilmente processa´vel por um simples programa para uma página web.
Uma descrição útil para software de indexação é apenas um exemplo útil de metadata – dados
acerca de dados; HTML usa meta elementos para fornecer um mecanismo simples que permite
que metadados sejam anexados a qualquer página web. Em particular, uma colecção de palavras-
chave explícitas e uma curta descrição podem ser dados, de modo a que os web crawlers possam
usar para colectar os dados para indexação. Os meta elementos são vazios e apenas podem
aparecer no cabeçalho de um documento HTML. Dois atributos, nome/name e conteúdo/content
são usados.
2 propriedades nomeadas são reconhecidas pela maioria dos motores de busca: description e
keywords.
<meta name=”description” content=”The life and times of the blues singer Robert Johnson”/>
<meta name=”keywords” content=”blues, music, King of the Delta Blues/>
Embora efectivo este mecanismo é grosseiro, e a ausência de qualquer estrutura nos metadados
torna difícil usá-lo para qualquer processamento complexo.
O uso extensivo de metadados para permitir que a informação seja extraída automaticamente
parece ser o próximo passo na evolução da web, conduzindo ao que se chama a Web
Semântica.
LINKS EM HTML
São simples e unidireccionais. O que os distingue dos sistemas anteriores de hipertexto é o uso
de URLs.
URLs
Na prática, um recurso é algo que pode ser acessado por um dos protocolos de alto nível da
Internet, como HTTP, FTP ou SMTP.
Um recurso é assim algo como um tipo abstracto de dados, identificando alguns dados e
fornecendo um conjunto de operações que podem ser executadas sobre eles.
A sintaxe dos URLs fornece um mecanismo geral para especificar a informação requerida para
aceder a um recurso sobre uma rede. Para páginas web, são necessárias 3 peças de informação:
o protocolo, que é sempre HTTP, um domain name identificando a rede hospedeira correndo um
servidor usando esse protocolo e um path, descrevendo onde, no host da página, está o que
queremos. Usualmente identifica a máquina dentro de uma organização, dentro de um sector
dentro de um país.
Os únicos caracteres que podem ser usados num URL pertecem ao conjunto de caracteres ASCII.
Espaços devem ser escritos num URL como %20.
Um URL com os componentes descritos identificam uma página numa de 3 maneiras. Em todos
os casos, o nome de domínio identifica o host correndo um servidor HTTP. O path tem de ser uma
especificação completa da localização de um ficheiro HTML, como
http://digitalmultimedia.org/downloads/index.html ou, se acaba em / é a localização de um
directório, mas pode ser omitido o /. Quando um path identifica um directório, a configuração do
servidor web determina que recurso o URL especifica, frequentemente é um ficheiro dentro desse
directório com um nome standard, tal como index.html.
A 3ª maneira em que um URL identifica uma página web é via um programa que gera o conteúdo
dinamicamente. Habitualmente esses programas residem num directório específico
frequentemente chamado cgi-bin, ou devem ter uma extensão especial, tal como .acgi. Isso indica
que um mecanismo conhecido por Common Gateway Interface é invocado, e provê uma maneira
de o servidor passar informação e recebê-la de outros programas, conhecidos como scripts CGI.
Estes são comummente usados para fornecer um interface – ou gateway - entre o servidor web e
bases de dados ou outras facilidades. Vários mecanismos são fornecidos para passar parâmetros
a scripts CGI, incluindo adicionar uma string de consulta à ponta do URL usado para invocar o
script. A string de query é separada do caminho por um ?, tal como em
http://ink.yahoo.co.uk/bin/query_uk?p=macavon.
Muitos programas dos servidores de web e sistemas de bases de dados fornecem os seus
próprios métodos de executar a mesma função. O muito usado servidor Apache tem o seu próprio
sistema de módulos, enquanto os servidores da Microsoft suportam o uso de Active Server Pages
(ASP). Outros mecanismos não-proprietários incluem servlets de Java e PHP.
Todos eles são mais eficientes ou fáceis de escrever que os scripts de CGI e têm sido largamente
adoptados em sites comerciais.
Mas os nós (páginas) são agrupados em Web sites. assim, links apontando para outras páginas
no mesmo site são comuns. URLs Parciais fornecem uma maneira prática para esse links locais.
Informalmente, um URL parcial é um URL com alguns dos seus componentes principais (o
protocolo, o nome de domínio, ou os segmentos iniciais do path) omitidos. Quando um URL
parcial é usado para encontrar um recurso, os componentes em falta são preenchidos pelo URL
base do documento em que o URL parcial ocorre.
Por ex., se o URL relativo videoindex.html ocorre dentro de um documento achado via o URL
http://www.digitalmultimedia.org/chapters/index.html será equivalente ao URL completo
http://www.digitalmultimedia.org/chapters/videoindex.html Dentro do mesmo documento,
/catalogue/ será equivalente a http://www.digitalmultimedia.org/ctalogue/
Geralmente, se um URL relativo começa com /, o URL completo correspondente é construído
removendo o pathname do URL base e substituindo-o com o URL relativo. De outra forma,
apenas o segmento último do pathname é substituído com . e ... interpretados como descrito.
Ocasionalmente podemos precisar que o URL base seja independente da localização do
documento contendo URLs relativos (replicação, em vários sites, de tabela de conteúdos de um
site). Assim, se um documento incluir o elemento <base href=http://digital_multimedia.org/>,
então, não importa onde o documento ele próprio está armazenado, o URL relativo
links/index.html será resolvido como http://digital_multimedia.org/links/index.html
Para identificar uma localização dentro de uma página, o URL necessiat de ser extendido com um
identificador de fragmento, consistindo do caracter # seguido por uma sequência de caracateres
ASCII. Um fragment identifier não é realmente parte do URL: não é usado pelos pedidos HTTP,
mas é tirado pelo agente utilizador que fez o pedido, que o retém.
ÂNCORAS
O protocolo HTTP fornece um meio de encontrar uma página web, dado o seu URL, e assim a
combinação de URLs e HTTP pode ser usado para implementar links de hipertexto na WWW
desde que tenhamos meios de embeber URLs como links em documentos HTML. Isto é fornecido
pelo elemento a (âncora), que pode ser usado como fonte ou destino de um link, dependendo dos
atributos href, name e id fornecidos.
O atributo href é usado quando uma âncora é para servir como fonte de um link. O seu valor é um
URL, que pode ser absoluto, se o link apontar para um documento algures na WWW, ou relativo,
se apontar para um documento dentro da mesma hierarquia.
Uma folha de estilo CSS pode fornecer regras para formatar elementos a, tal como outro elemento
qualquer. Para lidar com o desejo de mudar a aparncia de um link quando é visitado, CSS provê
pseudo-classes especiais link visited, hover e active que podem ser aplicados a selectores a.
Formatação especificada para a pseudo-classe activa é aplicada a um link quando o utilizador o
clicou, e àquela do hover é aplicado quando o cursor está sobre o link.
a:link {font-weight: bolder; color:blue; }
a:visited {font-weight: normal; color:green; }
a:hover {font-weight: normal; color:red; }
a:active {font-size: xx-large; }
Apesar da elegância permitida, deve ser usado judiciosamente.
Uma alternativa às âncoras com nomes é fornecida no HTML 4.0 e XHTML: qualquer elemento
pode ter um atributo id (identificador) com um único valor; pode ser usado para vários propósitos,
entre eles a especificação de destinos de link, usando o identificador como identificador de
fragmento. Tem a vantagem que qualquer elemento dum documento (ex. cabeçalho) pode ser
usado como destino de um link, sem a necessidade de o confinar a uma âncora. A desvantagem é
que os velhos browsers não reconhecem identificadores.
<h1>Links and URLs</h1>
<h2 id=”links”>Links</h2>
<p>Hypertext links are implemented in HTML using the &lt;a&gt; element and <a
href=2#urls”>URLs</a>.</p>
[etc, etc.] </p>
<a name=”urls”><h2>URLs</h2></a>
<p> An introduction to the use of URLs in HTML can be found in <a
href=http://www.w3.org/TR/REC-html40/intro/intro.html#h-2.1.1>the HTML4.0 specification</a>
They are the basis of <a href=”#links”>links</a> in Web pages. </p>
Nós não visitamos páginas web, elas vêm até nós. Clicando num link que referencia um
documento separado causa que o recurso identificado pelo URL que é o valor do atributo href da
âncora seja encontrada e trazida via HTTP.
As âncoras HTML são muito gerais e isso pode ser a sua fraqueza. Não há nada que sugira
porque um link foi estabelecido.
Os atributos rel (relationship) e rev (reverse relationship) são uma tentaiva de capturar mais da
semântica do link. O seu valor é um link type, que é uma string designando um tipo de relação
que pode ser expresso através da ligação.
<a href=.../terms.html#url” rel=”glossary”>URL </a>
e
<dt><a name=”url” ver=”glossary”>URL</a></dt> <dd> Uniform Resource Locator…</dd>
Um assunto relacionado são as relações entre documentos, tal como um documento ser uma
tradução. O elemento link é fornecido para expressar tais relações. links podem apenas aparecer
num cabeçalho de um documento. Tem um atributo href.
É de contemplar que podem ser usados para construir menus de propósito geral ou barras de
ferramentas para assistir com a navegação entre um conjunto de documentos relacionados.
Uma colecção de tipos de links standard é definido para designar relações comuns entre
documentos, tais como Next, Prev, e Start.
HTML E HIPERMEDIA
HTTP não se importa com o tipo de recurso. Inclui na sua resposta, tal como os dados do recurso,
uma indicação de que tipo de dados são, na forma de um tipo de conteúdo MIME.
O servidor tem acesso a uma base de dados de configuração, mantida por quem olha depois do
servidor, que fornece um mapeamento das extensões dos ficheiros, ou tipo de ficheiro e códigos
de criador, para tipos MIME.
Os browsers podem ser configurados de forma a que, para cada tipo MIME, um programa é
nomeado para lidar com aplicações de ajuda.
Quando chega, o browser usa as facilidades do SO para começar com outro processo a correr
Adobe Reader, manejando os dados trazidos.
Em ordem a integrar adequadamente a visualização de media em vez de texto formatado num
web browser temos de estender as capacidades do browser de modo a que possa renderizar
outros media, e temos de fornecer alguns tags extra para controlar o layout das páginas com
gráficos, video e som embebidos.
A solução para esye dilema são os plug-ins. Os browsers podem ser configurados para usar um
plug-in em vez de uma aplicação de ajuda para certos tipos de media. Um exemplo é o plug-in
Macromedia Flash Player.
Isto conduz a um modo de apresentação multimedia baseada num modelo de layout de página.
Aumento especial é requerido para embeber estes novos elementos nas páginas Web. em
XHTML, o elemento object é fornecido para embeber medias de todos os tipos. O Netscape
implementa um elemento embed para incluir video, som e outros tipos de media.
Parte da atracção de img é a sua simplicidade. É um elemento vazio; no caso mais simples, tem
um único atributo, src, cujo valor é um URL apontando para um ficheiro de imagem.
O elemento objecto é o preferido para embeber multimedia e executáveis nas páginas web. Para
emebeber imagens, video, som, etc., o atributo data é usado; o valor é um URL que apona para
os dados a serem renderizados como o conteúdo do objecto. É avisado especificar também o tipo
MIME dos dados, como valor do atributo type.
Um objecto tem conteúdo, mas o conteúdo não é o objecto – é antes especificado pelo atributo
data. O conteúdo é visualizado apenas se o agente utilizador for incapaz de mostrar o objecto.
Pa râmetros requeridos para controlar o display de objectos são setados usando um tipo especial
de elemento: param. É similar ao meta. O preciso conjunto de nomes que é aplicável depende do
tipo de dados do objecto (ou do plug-in usado para visualizar o objecto).
<object data=”movies/clip2.mov” type=”video/quicktime”>
<param name=”controller” value=”false”/>
<param name=”autoplay” value=”true”/>
<param name = “loop” value = 2true” />
</object>
LINKS E IMAGENS
Um dos locais em que pode usar imagens é entre o início e o fim da tag de um elemento a com
um atributo href. O efeito é produzir uma imagem clicável que serve como fonte de um link.
Um uso comum é criar ícones clicáveis ou botões; outra é produzir catálogos de imagens
consistindo de pequenos imagens ‘thumbnail’.
Uma imagem mapeada. Para fazer uma imagem numa imagem mapeada, tem de ser associada
com um elemento map, dando-lhe um atributo usemap cujo valor é um identificador de fragmento.
Este tem de bater com o valor do atributo name de um map. Por ex:
<img src=”flower1.jpeg” usemap=”#image-map-1” />
associa a imagem flower1.jpg com um map cuja tag inicial é: <map name=”image-map-1”>
O conteúdo de um map é uma série de elementos area, cada tendo um atributo href,
habitualmente um URL, junto com 2 atributos shape e coords. Ex:
<area shape=”rect” coords=”65,351,166,413” href=”section1.html”/>
Muitas ferramentas que nos permitem construir um map seleccionando uma área e digitando um
URL.

You might also like