Este artigo descreve passo-a-passo o processo direto de como fazer (termo correto: "masterizar") um VCD numa forma que será possível substituir as antigas fitas VHS por vídeos digitais até para o mais leigo Linuxer. E isso fazendo uso de um recurso simples, mas visualmente muito atraente, que são os menus interativos.
Informações sobre o disco. Esta sessão contém informações do disco, que não precisam ser modificadas. De fato, na maioria dos DVD player os dados colocados aqui jamais serão visualizados. A única coisa que alguém pode se interessar em modificar é a marca <album-id>, que contém o "label" do disco.
Descrição do volume primário (PVD). De novo, mais informações sobre o disco. Você pode querer modificar ou acrescentar o <volume-id> (informação de volume, pode ser a mesma do <album-id>) e <publisher-id> para colocar seu nome.
Aqui as coisas começam a ficar interessantes. Este trecho do XML trata dos itens de segmento, que são justamente os menus e dos itens de seqüência, que são os filmes em si. Esta é apenas uma declaração dos mesmos, que serão referenciados daqui para frente por nomes como seq-menu-1 e seq-title-3.
Se você ainda não dormiu, essa é uma péssima hora para fazê-lo. Conforme foi dito antes, dentro do XML é que é feita a masterização de verdade, quando definimos como o DVD player reagirá aos eventos de teclado e vídeo.
Como é possível perceber, é uma grande quantidade de texto a ser destrinchada, mas a maioria são métodos que se repetem em vários vídeos. Explicaremos um tipo de cada, a começar pelo menu:
<bsn> é a base de seleção numérica, e diz em que número começar a contar as entradas. O que vier abaixo dele responderá aos botões do aparelho de DVD, em seqüência. Exemplo: Se <bsn> for 4, o primeiro vídeo será acessível através da tecla 4, o segundo na tecla 5 e assim por diante.
<timeout> especifica a ação a ser tomada depois de decorrido <wait> segundos. No caso acima ao terminar a trilha de áudio do menu principal (que dura 298s) ele irá automaticamente para o menu secundário 1. E, como você pode observar, daí ele irá para o menu secundário 2 e então para o menu principal, num looping entre os menus.
<loop> especifica quantas vezes o menu deve ser reproduzido antes de ir para a referência de <timeout>. Neste caso ele não se repetirá, sendo reproduzido apenas uma única vez.
<select> é a ação a se tomar quando os botões de número <bsn> forem digitados. Neste caso o botão 1 do aparelho de DVD chamará o menu secundário 1 e o botão 2 chamará o menu secundário 2.
Aqui vemos como será a seqüência de reprodução dos filmes. Neste em particular a reprodução de meuvideo5.mpg, que está aqui referenciado por title-5.
Podemos ver claramente (através da marca <prev>) que ao pressionar a tecla "anterior" («) do DVD player ele irá iniciar a reprodução do vídeo 4, enquanto a tecla "próximo" (») o levará de volta ao menu secundário 2 (a ação <next> também se aplica ao fim do vídeo sem interrupção do usuário).
Resumindo todo este arquivo, o que ele quer dizer é que o VCD, ao ser inserido no DVD player, será reproduzido da seguinte maneira:
O vídeo principal tem sua reprodução iniciada;
Se nenhuma interação for feita por parte do usuário ele será reproduzido uma única vez e então pulará automaticamente para o menu secundário 1;
Se nenhuma interação for feita por parte do usuário ele será reproduzido uma única vez e então pulará automaticamente para o menu secundário 2;
Se nenhuma interação for feita por parte do usuário ele será reproduzido uma única vez e então pulará automaticamente para o menu principal;
No menu principal, o usuário pode alcançar manualmente os menus secundários através das teclas 1 (secundário 1) e 2 (secundário 2);
Uma vez dentro de algum dos menus secundários, a reprodução dos vídeos pode ser iniciada através das teclas 1 - 3 no menu 1 (4 volta ao menu principal) e 4 - 5 no menu 2 (6 volta ao menu principal);
Ao se iniciar a reprodução de um dos vídeos, ela prosseguirá sequencialmente passando por todos os vídeos depois dele até chagar ao último.
Ao final do último vídeo o DVD player volta ao menu secundário que chamou o vídeo.
Com alguma paciência é possível ter idéias bem interessantes sobre o comportamento do VCD somente com estas marcas. Deixo a cargo do leitor esta tarefa, pois já estamos perto de chegar ao resultado final: a gravação do VCD.
[1] Comentário enviado por fabio em 03/10/2005 - 02:07h
Fala Tango,
Em primeiro lugar, meus parabéns pelo artigo, sem dúvida um dos melhores que já foram publicados aqui no VOL. Antes de perdermos os 3 meses de banco, seu artigo estava na fila de espera e masterização de VCDs era algo que eu já queria pesquisar fazia tempo, pois estava louco pra queimar uns VCDs de vídeos pessoais.
Por incrível que pareça, seu artigo foi o primeiro que me veio em mente quando pensei: "putz, perdi 3 meses de artigos". Fique danado por não tê-lo lido enquanto estava na fila de espera :), ainda bem que tinhas backup em casa.
[5] Comentário enviado por lordello em 03/10/2005 - 21:05h
Cara, seu artigo ficou show e sua sobrinha é linda mesmo :-)
Eu trabalho com vídeo e adoro assuntos sobre multimídia.
Crio DVD com auxílio de programas fechados, infelizmente, por falta de opções realmente eficazes e rápidas na criação de DVDs complexos :-/
Tem umas coisas que gostaria de dizer:
- A resolução 352x288 citada é para imagens em PAL, sistema europeu. Aqui no Brasil usamos o sistema ntsc para criar DVDs e VCDs, portanto a resolução correta seria 352x240.
- Audacity: é melhor editar e converter as músicas usando ele, assim pode adicionar fades e alterar o volume da música como achar melhor. É bom que a música de fundo de menu seja baixa, para não incomodar na hora de assistir.
- Margens: as margens de segurança são de 10% nas bordas da imagem e não 30 pixeis como você disse. Ou seja, se a imagem vai ter 352x240 a margem fica em torno de 35x24. Isso vale para qualquer imagem que seja reproduzida em televisores normais, telas LCD, plasma etc.. não seguem esse cálculo.
- A opção --speed do cdrdao é dispensável, se nada for especificado ele irá gravar na velocidade máxima do gravador. O dispositivo pode ser especificado como um dispositivo comum para quem já usa o Linux 2.6, o comando ficaria assim:
$ cdrdao write --device /dev/hda videocd.cue
[6] Comentário enviado por Tango em 04/10/2005 - 12:54h
Valeu pelos adenos, Lordello. A dica do Audacity fop muito boa mesmo, evita um bocado de passos.
A questão do PAL e NTSC me deixou meio perdido. Todo o sistema de televisão brasileiro segue o padrão PAL (-M para ser mais específico). Por que o formato de VCD's e DVD's deveria ser diferente?
A opção --speed estava aí com o objetivo de ser auto-explicativa. Nem todas as distros gravam em velocidade máximo por padrão, alguras gravam a 2x ou 4x quando não especificado. E se você especificar o dispositivo como /dev/hdX o cdrdao usará a interface ATAPI para comunicação. É mais aconselhável usar a ATA, que é mais rápida e requer menos processamento.
[7] Comentário enviado por lordello em 04/10/2005 - 17:49h
Na verdade o sistema aqui do Brasil é uma mistureba feita usando o NTSC e PAL, criando um sistema completamente diferente dos dois.
Resumindo, técnicamente PAL-M é NTSC+PAL piorado, sacou?
A transmissão de TV fica assim:
NTSC 330x525 30 quadros/seg
PAL 330x625 30 quadros/seg
PAL-M 330x625 30 quadros/seg
No caso de DVD/VCD/SVCD não existe PAL-M, só NTSC e PAL. Existe uma variação do NTSC que possui 24 quadros/seg, mas é o mesmo NTSC com menos quadros, usado em filmes somente. Não sei se você sabe, mas os filmes que vemos no cinema têm 24 quadros/seg.
DVD/VCD/SVCD
NTSC 720x480/352x240/480x480 30 quadros/seg
PAL 720x576/352x288/480x576 30 quadros/seg
Dizem as más linguas que PAL é muito melhor do que o NTSC, mas como nunca vi uma TV PAL.
Quanto ao "--speed", acho que você deve ter se engado, já usei quase todas as distribuições e nenhuma delas limita (nas configurações) a velocidade de gravação. Mas tudo bem, é sempre bom lembrar ao pessoal da existência dessa função.
[9] Comentário enviado por Tango em 07/10/2005 - 08:37h
Atualização quanto a opção "--speed", sendo mais específico: Fedora Core 4, se a velocidade não for especificada ele gravará numa velocidade máxima de 8x, mesmo que sua gravadora suporte mais que isso.
[11] Comentário enviado por zereis em 10/10/2005 - 08:54h
Caro colega Tango,
Excelente artigo... Me embaralhei numa situação: como fazer menus com o Gimp? Não tenho habilidades com a ferramenta e imaginei: como o cada item desenvolvido pelo menu será identificado? Se tiver algum artigo que explique isto no Gimp, me envie, por favor, pois fiquei no meio da estrada...
[12] Comentário enviado por Tango em 10/10/2005 - 20:33h
Olá Zé,
O menu do GIMP não é nada além de uma imagem e ponto final. Quem define como o menu se comporta é o XML. A finalidade do mesmo é somente de informar ao usuário quais teclas do controle remoto estão disponíveis e a função de cada uma.
Nada impede que você faça um menu completamente branco, só vai ser mais complicado para quem estiver assistindo de descobrir o que apertar para ver o vídeo. ;-)
Você pode utilizar a ferramenta que bem entender, o GIMP foi somente a mais acessível e prática. A única exigência é que a mesma salve figuras no formato PPM RAW.
[13] Comentário enviado por andersonmo7 em 11/12/2005 - 16:24h
Primeiramente parabéns pelo excelente artigo.
Eu capturei um VHS pela placa de captura. Foi gerado um avi (audio: 8bit mono, 44100, com 12 frames/sec, e resolucao de 384x288)
Quando eu abro ele no avidemux, ele corta parte do começo do video.
Além disso quando tento selecionar o "VCD res" ele informa: cannot find PAL/NTSC type". Entretanto se eu tento com um arquivo mpeg, ele funciona certinho, conforme seu artigo.
[14] Comentário enviado por Tango em 31/12/2005 - 21:18h
Anderson,
O problema que você está tendo se deve ao fato de que o seu vídeo possui um framerate bem peculiar (12fps). O Avidemux não sabe que tipo de formato dar ao vídeo, se PAL ou NTSC. Já enfrentei este problema antes com um vídeo Quicktime e na época não havia solução disponível.
Agora porém existe uma maneira bem simples (para Avidemux >= 2.0.40): Siga todos os passos descritos acima até chegar em V Filter. Neste momento, antes de selecionar "VCD res" clique em "Adicionar" e escolha "Resample FPS". Mude para 25 ou 30 quadros por segundo e todo o procedimento pode ser seguido normalmente.
Por favor, me dê um retorno se isso foi suficiente para resolver seu problema, reamostragem de quadros ainda é algo que não experimentei extensivamente e apesar de estar bem certo de que irá funcionar, não posso dar garantias.
[16] Comentário enviado por kazzttor em 07/07/2007 - 19:03h
Vamos lá, meu povo!
Umas observações legais para serem feitas:
1. Audacity - Façam uso dele caso desejem uma trilha sonora para o menu mais incrementada, depois salve como wav. Uma dica: Execute o efeito "Compressor" no áudio, caso acho que o som contenha clippings, e em seguida, o "Normalize", para ajustar o som a um volume mais agradável.
2. Padrão de Cor - Essa é a grande questão. Se você grava programas da televisão, não recomendo você salvar o arquivo em PAL e sim em NTSC. Eu explico: O sistema de cor daqui do Brasil é PAL-M, que é o vídeo em formato PAL, mas com a taxa de 29,97 frames por segundo, a mesma do NTSC. Ao salvar um vídeo em PAL com a gravação de TV daqui, o vídeo perde qualidade, pois o video PAL roda a 25 quadros por segundo e por isso o programa tem que jogar fora quase 5 frames a cada segundo e o vídeo, evidentemente perde qualidade. Só utilize o formato Pal, se você, evidentemente gravou o vídeo de uma câmera que opere em modo PAL (e não PAL-M) também.
3. Queimando etapas com o K3b - Como sabemos, o K3b é um aplicativo do gerenciador de janelas kde para gravação de CD's. O K3b, na verdade é um frontend de vários aplicativos úteis em gravação e autoria de CD's e DVD's, inclusive da maioria dos citados nesse tutorial. Se você puder utilizá-lo, você criará facil e rapidamente uma ferramenta poderosa para criação de seus VCD's.
4. Margens do menu - A questão da margem é importante, mas pode ser descartada, visto que grande parte dos televisores modernos não cortam a imagem.
5. Juntando audio e vídeo no menu - Esse ponto é importantíssimo. pois pode causar um efeito indesejado ao menu. Duas coisas podem ocorrer com o menu: ou o som acaba e o vídeo continua, ou o vídeo acaba antes da música e corta o som de repente. Qual a dica? Calcular quantos frames serão necessários para que áudio e vídeo terminem juntos. O cálculo é simples: Mutiplique o tempo da música em segundos pela taxa de frames por segundo utilizada pelo vídeo.
6. Gravação de boa qualidade - A premissa de que a pressa é inimiga da perfeição é válida para a gravação de CD's. Não utilize a velocidade máxima para gravar o CD, e sim uma velocidade menor, pois assim a qualidade dos dados gravados será superior. Uma gravação boa utiliza uma velocidade de 12x ou menos. Eu costumo usar 8x.
Esse tutorial é estupendo, sobretudo na criação de menus. Um abraço.