<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pt-BR">
	<id>http://wiki.nosdigitais.teia.org.br/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Qazav</id>
	<title>Pontão Nós Digitais - Contribuições do usuário [pt-br]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.nosdigitais.teia.org.br/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Qazav"/>
	<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/Especial:Contribui%C3%A7%C3%B5es/Qazav"/>
	<updated>2026-04-22T09:09:09Z</updated>
	<subtitle>Contribuições do usuário</subtitle>
	<generator>MediaWiki 1.39.0</generator>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Oficina_34_-_Est%C3%BAdio_Teia_de_Cria%C3%A7%C3%A3o&amp;diff=32414</id>
		<title>Oficina 34 - Estúdio Teia de Criação</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Oficina_34_-_Est%C3%BAdio_Teia_de_Cria%C3%A7%C3%A3o&amp;diff=32414"/>
		<updated>2013-11-05T01:28:08Z</updated>

		<summary type="html">&lt;p&gt;Qazav: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Descrição da Oficina&lt;br /&gt;
Edição de vídeo em Blender (para usuários intermediários e avançados_&lt;br /&gt;
&lt;br /&gt;
Oficineiro: Flavio Soares de Freitas&lt;br /&gt;
&lt;br /&gt;
Apoio e registro:Daniel Chico e Silioa&lt;br /&gt;
&lt;br /&gt;
Conteúdos:Customização de interface e atalhos de teclado no Blender, edição de vídeo, tratamento de cor em video e modelagem 3d, tudo em Blender&lt;br /&gt;
&lt;br /&gt;
==02/11/2013==&lt;br /&gt;
&lt;br /&gt;
'''Manhã'''&lt;br /&gt;
&lt;br /&gt;
* Começamos a oficina baixando o Blender para todas as máquinas;&lt;br /&gt;
* Vimos juntos as configurações gerais do programa para edição de vídeo;&lt;br /&gt;
* Vimos como instalar os plugins de extensão da série blender_velvet, para melhorar o fluxo de trabalho de edição;&lt;br /&gt;
* Vimos os principais atalhos para edição de vídeo e como usar a linha do tempo do Blender VSE.&lt;br /&gt;
* Adaptamos um script em bash para gerar proxies de edição (a 1/3 da resolução original) de todos os vídeos de uma pasta e o deixamos rodando enquanto fizemos uma pausa para o almoço.&lt;br /&gt;
&lt;br /&gt;
'''Pausa para o almoço'''&lt;br /&gt;
&lt;br /&gt;
'''Tarde'''&lt;br /&gt;
* Na volta do almoço, cada um pegou um projeto próprio para começar uma edição básica. O objetivo era exercitar o que havíamos visto pela manhã e gerar mais dúvidas, típicas do processo de edição;&lt;br /&gt;
* As pessoas ficaram livres para usar abordagens pessoais, ou seja, definir seus próprios objetivos e interesses sobre o que lhes interessava mais aprender naquele momento;&lt;br /&gt;
* Dúvidas pessoais, dentro do projeto de edição pessoal de cada um, eram generalizadas para todas as pessoas presentes, de modo que todas compreendessem a dúvida/problema e vissem a solução;&lt;br /&gt;
* Com isso, vimos mais coisas essenciais como keyframes de fade, efeitos básicos de transição, inserção de créditos 2D etc;&lt;br /&gt;
* Saímos do primeiro dia com níveis diversos de resposta a demandas:&lt;br /&gt;
&lt;br /&gt;
** Houve quem saiu do primeiro dia sabendo o básico de edição (como se situar na interface do Blender);&lt;br /&gt;
** Houve quem saiu já entendendo o suficiente sobre o básico para pensar em entrar nas partes de 3D ou composite nodes do Blender no dia seguinte;&lt;br /&gt;
** Houve quem saísse com várias dúvidas típicas de edição para serem trazidas no dia seguinte;&lt;br /&gt;
** Houve quem não pudesse voltar no dia seguinte e aproveitou para entrar em partes mais avançadas (máscaras animadas para correção de cor) ainda no primeiro dia;&lt;br /&gt;
** Houve quem aproveitou o tempo do primeiro dia para ver o funcionamento do plugin blue_velvet, e como a linha do tempo de áudio do Blender aparecia no Ardour;&lt;br /&gt;
** Houve quem tenha pesquisado o tratamento de cores a partir da própria interface de edição 2D.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==03/11/2013==&lt;br /&gt;
&lt;br /&gt;
'''Manhã'''&lt;br /&gt;
&lt;br /&gt;
* Revimos como funcionam os keyframes;&lt;br /&gt;
* Aproveitamos para tirar várias dúvidas que haviam ficado pendentes no dia anterior;&lt;br /&gt;
* Vimos como transformar um projeto de edição com proxies finalizado em um projeto com resolução total para tratamento de cores e render;&lt;br /&gt;
* Vimos como se configura a renderização de um projeto;&lt;br /&gt;
* A partir de uma decisão do grupo, vimos juntos como funcionam as máscaras para tratamento de imagem - como é a interface, como usá-la com o Node Editor, o que é importante ou não saber quando se lida com finalização de cores. Isso nos levou a uma discussão rápida sobre fotografia e captação de imagens;&lt;br /&gt;
* No final do dia anterior, uma das máquinas havia apresentado travamentos na tela de edição de keyframes. Após conseguirmos isolar o foco do problema, usamo-lo como base para ver mais uma coisa: como importar projetos já iniciados de edição em outra máquina, usando os arquivos de vídeo e .blends.&lt;br /&gt;
&lt;br /&gt;
'''Pausa para o almoço'''&lt;br /&gt;
&lt;br /&gt;
'''Tarde'''&lt;br /&gt;
&lt;br /&gt;
* Usamos a tarde do domingo para terminar dois processos: a edição básica de um vídeo do Rochedo de Ouro e o tratamento de uma cena de vídeo da Teia, onde uma janela aparecia estourada, ao fundo;&lt;br /&gt;
* Aproveitamos para rever o conceito da criação de proxies e fizemos na hora um script específico de Blender para gravações com a câmera Sony, usadas pelo pessoal do Rochedo e da Teia - por este novo método, o script bash geraria apenas proxies a 1/3 da resolução e o render final será feito direto a partir dos arquivos .MTS originais vindos da câmera, em vez de haver uma equalização geral de todos os vídeos em MJPEG a 30FPS, como fizemos durante a oficina;&lt;br /&gt;
* Conseguimos chegar ao final dos três processos acima, o que nos permitiu fazer uma incursão relâmpago pela interface 3D, com o objetivo principal só de situar como se usa esta parte do Blender.&lt;br /&gt;
&lt;br /&gt;
==Página online com a documentação==&lt;br /&gt;
&lt;br /&gt;
https://szaszak.wordpress.com/linux/blender-como-editor-de-video/&lt;br /&gt;
&lt;br /&gt;
==Ajustes de Usuário==&lt;br /&gt;
&lt;br /&gt;
Procure deixar a resolução igual a propriedade do vídeo.&lt;br /&gt;
&lt;br /&gt;
==velvet_goldmine==&lt;br /&gt;
&lt;br /&gt;
Onde baixar as extensões (plugins) para edição de vídeo?&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet&lt;br /&gt;
&lt;br /&gt;
==Atalhos de teclado importantes para edição de vídeos==&lt;br /&gt;
&lt;br /&gt;
 Geralmente a adição da tecla &amp;quot;alt&amp;quot; ou &amp;quot;control&amp;quot; ou &amp;quot;shift&amp;quot; aplica uma variação ao comando inicial&lt;br /&gt;
&lt;br /&gt;
home = ver tudo da timeline&lt;br /&gt;
&lt;br /&gt;
Del (numpad) = zoom na trilha selecionada&lt;br /&gt;
&lt;br /&gt;
a = seleciona tudo&lt;br /&gt;
&lt;br /&gt;
alt + e = &amp;quot;estica&amp;quot; a timeline&lt;br /&gt;
&lt;br /&gt;
k = cortar video em dois (no leitor)&lt;br /&gt;
&lt;br /&gt;
g = &amp;quot;grab&amp;quot; as seleções grudam para serem arrastadas&lt;br /&gt;
&lt;br /&gt;
b = seletor por box (alt + b = soma box à seleção)&lt;br /&gt;
&lt;br /&gt;
shift + s = &amp;quot;snap&amp;quot; colar seleção no cursor&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Oficina_34_-_Est%C3%BAdio_Teia_de_Cria%C3%A7%C3%A3o&amp;diff=32413</id>
		<title>Oficina 34 - Estúdio Teia de Criação</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Oficina_34_-_Est%C3%BAdio_Teia_de_Cria%C3%A7%C3%A3o&amp;diff=32413"/>
		<updated>2013-11-05T01:26:10Z</updated>

		<summary type="html">&lt;p&gt;Qazav: Atualizando - link online de documentação&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Descrição da Oficina&lt;br /&gt;
Edição de vídeo em Blender (para usuários intermediários e avançados_&lt;br /&gt;
&lt;br /&gt;
Oficineiro: Flavio Soares de Freitas&lt;br /&gt;
&lt;br /&gt;
Apoio e registro:Daniel Chico e Silioa&lt;br /&gt;
&lt;br /&gt;
Conteúdos:Customização de interface e atalhos de teclado no Blender, edição de vídeo, tratamento de cor em video e modelagem 3d, tudo em Blender&lt;br /&gt;
&lt;br /&gt;
==02/11/2013==&lt;br /&gt;
&lt;br /&gt;
'''Manhã'''&lt;br /&gt;
&lt;br /&gt;
* Começamos a oficina baixando o Blender para todas as máquinas;&lt;br /&gt;
* Vimos juntos as configurações gerais do programa para edição de vídeo;&lt;br /&gt;
* Vimos como instalar os plugins de extensão da série blender_velvet, para melhorar o fluxo de trabalho de edição;&lt;br /&gt;
* Vimos os principais atalhos para edição de vídeo e como usar a linha do tempo do Blender VSE.&lt;br /&gt;
* Adaptamos um script em bash para gerar proxies de edição (a 1/3 da resolução original) de todos os vídeos de uma pasta e o deixamos rodando enquanto fizemos uma pausa para o almoço.&lt;br /&gt;
&lt;br /&gt;
'''Pausa para o almoço'''&lt;br /&gt;
&lt;br /&gt;
'''Tarde'''&lt;br /&gt;
* Na volta do almoço, cada um pegou um projeto próprio para começar uma edição básica. O objetivo era exercitar o que havíamos visto pela manhã e gerar mais dúvidas, típicas do processo de edição;&lt;br /&gt;
* As pessoas ficaram livres para usar abordagens pessoais, ou seja, definir seus próprios objetivos e interesses sobre o que lhes interessava mais aprender naquele momento;&lt;br /&gt;
* Dúvidas pessoais, dentro do projeto de edição pessoal de cada um, eram generalizadas para todas as pessoas presentes, de modo que todas compreendessem a dúvida/problema e vissem a solução;&lt;br /&gt;
* Com isso, vimos mais coisas essenciais como keyframes de fade, efeitos básicos de transição, inserção de créditos 2D etc;&lt;br /&gt;
* Saímos do primeiro dia com níveis diversos de resposta a demandas:&lt;br /&gt;
&lt;br /&gt;
** Houve quem saiu do primeiro dia sabendo o básico de edição (como se situar na interface do Blender);&lt;br /&gt;
** Houve quem saiu já entendendo o suficiente sobre o básico para pensar em entrar nas partes de 3D ou composite nodes do Blender no dia seguinte;&lt;br /&gt;
** Houve quem saísse com várias dúvidas típicas de edição para serem trazidas no dia seguinte;&lt;br /&gt;
** Houve quem não pudesse voltar no dia seguinte e aproveitou para entrar em partes mais avançadas (máscaras animadas para correção de cor) ainda no primeiro dia;&lt;br /&gt;
** Houve quem aproveitou o tempo do primeiro dia para ver o funcionamento do plugin blue_velvet, e como a linha do tempo de áudio do Blender aparecia no Ardour;&lt;br /&gt;
** Houve quem tenha pesquisado o tratamento de cores a partir da própria interface de edição 2D.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==03/11/2013==&lt;br /&gt;
&lt;br /&gt;
'''Manhã'''&lt;br /&gt;
&lt;br /&gt;
* Revimos como funcionam os keyframes;&lt;br /&gt;
* Aproveitamos para tirar várias dúvidas que haviam ficado pendentes no dia anterior;&lt;br /&gt;
* Vimos como transformar um projeto de edição com proxies finalizado em um projeto com resolução total para tratamento de cores e render;&lt;br /&gt;
* Vimos como se configura a renderização de um projeto;&lt;br /&gt;
* A partir de uma decisão do grupo, vimos juntos como funcionam as máscaras para tratamento de imagem - como é a interface, como usá-la com o Node Editor, o que é importante ou não saber quando se lida com finalização de cores. Isso nos levou a uma discussão rápida sobre fotografia e captação de imagens;&lt;br /&gt;
* No final do dia anterior, uma das máquinas havia apresentado travamentos na tela de edição de keyframes. Após conseguirmos isolar o foco do problema, usamo-lo como base para ver mais uma coisa: como importar projetos já iniciados de edição em outra máquina, usando os arquivos de vídeo e .blends.&lt;br /&gt;
&lt;br /&gt;
'''Pausa para o almoço'''&lt;br /&gt;
&lt;br /&gt;
'''Tarde'''&lt;br /&gt;
&lt;br /&gt;
* Usamos a tarde do domingo para terminar dois processos: a edição básica de um vídeo do Rochedo de Ouro e o tratamento de uma cena de vídeo da Teia, onde uma janela aparecia estourada, ao fundo;&lt;br /&gt;
* Aproveitamos para rever o conceito da criação de proxies e fizemos na hora um script específico de Blender para gravações com a câmera Sony, usadas pelo pessoal do Rochedo e da Teia - por este novo método, o script bash geraria apenas proxies a 1/3 da resolução e o render final será feito direto a partir dos arquivos .MTS originais vindos da câmera, em vez de haver uma equalização geral de todos os vídeos em MJPEG a 30FPS, como fizemos durante a oficina;&lt;br /&gt;
* Conseguimos chegar ao final dos três processos acima, o que nos permitiu fazer uma incursão relâmpago pela interface 3D, com o objetivo principal só de situar como se usa esta parte do Blender.&lt;br /&gt;
&lt;br /&gt;
==Página online com a documentação==&lt;br /&gt;
&lt;br /&gt;
https://szaszak.wordpress.com/linux/blender-como-editor-de-video/&lt;br /&gt;
&lt;br /&gt;
==Ajustes de Usuário==&lt;br /&gt;
&lt;br /&gt;
Procure deixar a resolução igual a propriedade do vídeo.&lt;br /&gt;
&lt;br /&gt;
==velvet_goldmine==&lt;br /&gt;
&lt;br /&gt;
==Atalhos de teclado importantes para edição de vídeos==&lt;br /&gt;
&lt;br /&gt;
 Geralmente a adição da tecla &amp;quot;alt&amp;quot; ou &amp;quot;control&amp;quot; ou &amp;quot;shift&amp;quot; aplica uma variação ao comando inicial&lt;br /&gt;
&lt;br /&gt;
home = ver tudo da timeline&lt;br /&gt;
&lt;br /&gt;
Del (numpad) = zoom na trilha selecionada&lt;br /&gt;
&lt;br /&gt;
a = seleciona tudo&lt;br /&gt;
&lt;br /&gt;
alt + e = &amp;quot;estica&amp;quot; a timeline&lt;br /&gt;
&lt;br /&gt;
k = cortar video em dois (no leitor)&lt;br /&gt;
&lt;br /&gt;
g = &amp;quot;grab&amp;quot; as seleções grudam para serem arrastadas&lt;br /&gt;
&lt;br /&gt;
b = seletor por box (alt + b = soma box à seleção)&lt;br /&gt;
&lt;br /&gt;
shift + s = &amp;quot;snap&amp;quot; colar seleção no cursor&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=32211</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=32211"/>
		<updated>2013-10-23T23:19:15Z</updated>

		<summary type="html">&lt;p&gt;Qazav: /* Semana 6 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==Vídeo explicativo==&lt;br /&gt;
&lt;br /&gt;
Explique-me como se eu fosse um editor de vídeo, e não um desenvolvedor: [http://youtu.be/mKGhPkCSCzQ veja o vídeo demonstrativo no YouTube].&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masterização do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia conteúdo estático e o transforme em um XML.  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.  - '''FEITO - S4'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (bloqueio de trilhas, mute etc).  - '''FEITO - S4'''. [http://youtu.be/mKGhPkCSCzQ Vídeo demonstrativo]&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?  - '''FEITO - S5'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;  - '''FEITO - S5'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avaliação - é possível ler keyframes de fade/pan e volume variável via Blender API?  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/commits/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;br /&gt;
&lt;br /&gt;
==Semana 3==&lt;br /&gt;
&lt;br /&gt;
* XML mais objetivo: limpei referências a Punch e Loop -&amp;gt; Ardour os recria automaticamente;&lt;br /&gt;
* XML mais preciso: incluí informações referentes a SampleFormat (bits) e FPSs aceitos pelo Ardour - não usar esses parâmetros no Blender pode gerar um erro;&lt;br /&gt;
* Teste com trilha única estática criada pelo Blender funciona no Ardour;&lt;br /&gt;
* Comecei preparativos para conteúdo dinâmico (timeline do Blender);&lt;br /&gt;
* Extensa pesquisa sobre a relação dos parâmetros do XML do Ardour e dos elementos do Blender - consegui estabelecer relações bem-sucedidas entre ambos para praticamente todos os parâmetros que importam;&lt;br /&gt;
* Revisão de código: transformei todas as declarações de atributos do XML em funções, para receberem conteúdo dinâmico;&lt;br /&gt;
* Problema da numeração de IDs resolvido - IDs agora estão sendo atribuídos corretamente, inclusive relações internas no XML;&lt;br /&gt;
* Quebrei a geração das seções dinâmicas do XML em várias funções, para tornar o código mais claro;&lt;br /&gt;
* Revisão geral e limpeza do código - excluí temporariamente parte do código no github para refletir estado atual da revisão;&lt;br /&gt;
* Primeira seção do XML gerada a partir de conteúdo dinâmico parcialmente bem sucedida.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar revisão de código para receber conteúdo dinâmico;&lt;br /&gt;
* Resolver problemas de inter-relação entre Sources e Regions para conteúdos dinâmicos repetidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Informações de dados das strips estão sendo armazenadas em dicionários, dentro de uma lista. Seria melhor criar uma classe?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 4==&lt;br /&gt;
&lt;br /&gt;
* Fim da revisão e adaptação de código para conteúdo dinâmico - código voltou a ficar integral no GitHub;&lt;br /&gt;
* Correção de bugs na geração das Sources no XML do Ardour;&lt;br /&gt;
* Correção de bugs na geração de Playlist Regions no XML do Ardour;&lt;br /&gt;
* Exclusão da seção Regions no código do '''::blue_velvet::''' - a seção é recriada automaticamente pelo Ardour a partir das Playlist Regions;&lt;br /&gt;
* Correção de bugs relativa à geração interna de IDs no XML do Ardour;&lt;br /&gt;
* Geração da primeira timeline de Ardour a partir de conteúdo dinâmico: este ponto significa o marco de 1/3 do desenvolvimento alcançado. Agora é possível gerar timelines de Ardour a partir de trilhas de áudio vindas do Blender (falta fazer funcionar com áudios que estão em trilhas de vídeo);&lt;br /&gt;
* Limpeza de código e correção do modo como a ordem as trilhas aparecem no Ardour - agora, as trilhas aparecem na mesma ordem que na timeline do Blender;&lt;br /&gt;
* Correção de bug na ordem das trilhas para quando há mais de 10 tracks na timeline;&lt;br /&gt;
* Publicação de vídeo de documentação - agora o funcionamento do plugin pode ser compreendido por &amp;quot;pessoas comuns&amp;quot;. [http://youtu.be/mKGhPkCSCzQ Link do vídeo no YouTube]&lt;br /&gt;
* Contato inicial na lista da Blender Foundation - Python Development sobre o '''::velvet_goldmine::'''. A ideia é saber como se faz para o plugin ser parte da distribuição contrib do Blender;&lt;br /&gt;
* Contato com 3pointEdit, do blog Blender VSE, sobre o o '''::velvet_goldmine::''' e o '''::blue_velvet::'''. A ideia é que ele veja os plugins e dê algum feedback a respeito.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Pesquisa sobre o FFMPEG - como usar o FFMPEG a partir do Blender;&lt;br /&gt;
* Pesquisa sobre menus - como inserir itens de menus no Blender para chamar o plugin;&lt;br /&gt;
* Pesquisa sobre multiplataforma - quais são as diferenças entre Linux e Windows, ou seja, como fazer o plugin rodar tanto para quem tem Linux como para quem tem Windows (devido ao FFMPEG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Apenas as relacionadas ao uso multiplataforma do '''::blue_velvet::'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 5==&lt;br /&gt;
&lt;br /&gt;
* Semana dedicada a pesquisas sobre como implementar o FFMPEG e os menus no Blender;&lt;br /&gt;
* Pesquisa sobre reconhecimento de sistemas operacionais e de diferenças entre eles, no que se refere à utilização do plugin;&lt;br /&gt;
* Pesquisa sobre como chamar um FFMPEG local, não instalado, em máquinas Windows;&lt;br /&gt;
* Transformação da função principal do plugin (ExportArdour) em classe, para ser lida como addon pelo Blender - essa é uma atualização grande porque muda a estrutura do código;&lt;br /&gt;
* Mapeamento e correção de bugs referentes a essa transformação - tive de inserir duas variáveis globais no código para isso, o que não me deixou muito feliz. É possível que eu incorpore a função de gerar XML à classe para não ter que declarar essas variáveis globais. A classe também é de onde sairá o chamado para o FFMPEG.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar depuração da Classe: como deixar o usuário chamar um FFMPEG local?&lt;br /&gt;
* Se possível, implementar o FFMPEG&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Dúvidas relacionadas a classes e funções - como mudar o valor de self.path? Como permitir a escolha de uma segunda pasta além da primeira? Qual a melhor forma de implementar o FFMPEG levando isso em consideração?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 6==&lt;br /&gt;
&lt;br /&gt;
* Adaptação do código para excluir uma das duas variáveis globais - exluir a outra deixaria o código bem menos legível, o que não compensa;&lt;br /&gt;
* O script virou um addon propriamente dito, com uma entrada no menu;&lt;br /&gt;
* A API do Blender não permite, para a minha surpresa, chamar o FFMPEG interno. Com isso, a abordagem havia mudado para chamar um FFMPEG instalado na máquina do usuário. Mas isso levantava uma questão: e se o usuário não tivesse um FFMPEG instalado? Ou, mais provavável para usuários de Windows: e se fosse um FFMPEG local em vez de um instalado? Pesquisei bastante sobre como lidar com esse problema. Minha solução inicial foi a de fazer o addon exibir uma mensagem de erro, mas não me pareceu satisfatório, pois o erro acabava ficando muito hermético e assustaria as pessoas;&lt;br /&gt;
* Contato com a equipe da Blender Foundation sobre como lidar com um aviso de erro. A sugestão deles foi a de implementar preferências de usuário no addon, ou seja, o usuário poderia apontar para um binário ou executável caso o FFMPEG não houvesse sido reconhecido automaticamente pelo addon. Como era um caminho melhor do que o meu, estudei como fazer essa parte e implementei assim;&lt;br /&gt;
* Com as pesquisas anteriores, foi fácil implantar a chamada do FFMPEG;&lt;br /&gt;
* Primeiro teste com exportação de vídeo e áudio em uma timeline foi bem sucedido;&lt;br /&gt;
* Testes com projetos mais reais de edição simples apontaram um bug no modo como as sources estavam sendo geradas, fazendo com que parte das trilhas de áudio não aparecessem no Ardour (mais especificamente, as trilhas cuja referência original ao nome do arquivo havia sido excluída da timeline por cortes de edição);&lt;br /&gt;
* Correção do bug;&lt;br /&gt;
* Novos testes apontaram que as trilhas estão sendo geradas corretamente na timeline do Ardour;&lt;br /&gt;
* Pesquisas referentes a como fazer um &amp;quot;leitor de keyframes&amp;quot; para as strips de áudio no Blender - a implantação da relação entre keyframes de áudio blender &amp;lt;-&amp;gt; ardour não está prevista para ser feita agora, mas as pesquisas apontam que, sim, é possível fazer caso isso se prove importante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O addon está feito. A partir dessa semana, o foco muda para o de gerar um projeto real de edição. Um desses projetos será o making of do Floresta Vermelha.&lt;br /&gt;
* A documentação do plugin também deve esperar novos testes com projetos mais reais para ser feita.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Nenhuma.&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=32210</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=32210"/>
		<updated>2013-10-23T23:04:00Z</updated>

		<summary type="html">&lt;p&gt;Qazav: Atualização referente à semana 6 de edição&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==Vídeo explicativo==&lt;br /&gt;
&lt;br /&gt;
Explique-me como se eu fosse um editor de vídeo, e não um desenvolvedor: [http://youtu.be/mKGhPkCSCzQ veja o vídeo demonstrativo no YouTube].&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masterização do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia conteúdo estático e o transforme em um XML.  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.  - '''FEITO - S4'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (bloqueio de trilhas, mute etc).  - '''FEITO - S4'''. [http://youtu.be/mKGhPkCSCzQ Vídeo demonstrativo]&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?  - '''FEITO - S5'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;  - '''FEITO - S5'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avaliação - é possível ler keyframes de fade/pan e volume variável via Blender API?  - '''FEITO - S6'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/commits/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;br /&gt;
&lt;br /&gt;
==Semana 3==&lt;br /&gt;
&lt;br /&gt;
* XML mais objetivo: limpei referências a Punch e Loop -&amp;gt; Ardour os recria automaticamente;&lt;br /&gt;
* XML mais preciso: incluí informações referentes a SampleFormat (bits) e FPSs aceitos pelo Ardour - não usar esses parâmetros no Blender pode gerar um erro;&lt;br /&gt;
* Teste com trilha única estática criada pelo Blender funciona no Ardour;&lt;br /&gt;
* Comecei preparativos para conteúdo dinâmico (timeline do Blender);&lt;br /&gt;
* Extensa pesquisa sobre a relação dos parâmetros do XML do Ardour e dos elementos do Blender - consegui estabelecer relações bem-sucedidas entre ambos para praticamente todos os parâmetros que importam;&lt;br /&gt;
* Revisão de código: transformei todas as declarações de atributos do XML em funções, para receberem conteúdo dinâmico;&lt;br /&gt;
* Problema da numeração de IDs resolvido - IDs agora estão sendo atribuídos corretamente, inclusive relações internas no XML;&lt;br /&gt;
* Quebrei a geração das seções dinâmicas do XML em várias funções, para tornar o código mais claro;&lt;br /&gt;
* Revisão geral e limpeza do código - excluí temporariamente parte do código no github para refletir estado atual da revisão;&lt;br /&gt;
* Primeira seção do XML gerada a partir de conteúdo dinâmico parcialmente bem sucedida.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar revisão de código para receber conteúdo dinâmico;&lt;br /&gt;
* Resolver problemas de inter-relação entre Sources e Regions para conteúdos dinâmicos repetidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Informações de dados das strips estão sendo armazenadas em dicionários, dentro de uma lista. Seria melhor criar uma classe?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 4==&lt;br /&gt;
&lt;br /&gt;
* Fim da revisão e adaptação de código para conteúdo dinâmico - código voltou a ficar integral no GitHub;&lt;br /&gt;
* Correção de bugs na geração das Sources no XML do Ardour;&lt;br /&gt;
* Correção de bugs na geração de Playlist Regions no XML do Ardour;&lt;br /&gt;
* Exclusão da seção Regions no código do '''::blue_velvet::''' - a seção é recriada automaticamente pelo Ardour a partir das Playlist Regions;&lt;br /&gt;
* Correção de bugs relativa à geração interna de IDs no XML do Ardour;&lt;br /&gt;
* Geração da primeira timeline de Ardour a partir de conteúdo dinâmico: este ponto significa o marco de 1/3 do desenvolvimento alcançado. Agora é possível gerar timelines de Ardour a partir de trilhas de áudio vindas do Blender (falta fazer funcionar com áudios que estão em trilhas de vídeo);&lt;br /&gt;
* Limpeza de código e correção do modo como a ordem as trilhas aparecem no Ardour - agora, as trilhas aparecem na mesma ordem que na timeline do Blender;&lt;br /&gt;
* Correção de bug na ordem das trilhas para quando há mais de 10 tracks na timeline;&lt;br /&gt;
* Publicação de vídeo de documentação - agora o funcionamento do plugin pode ser compreendido por &amp;quot;pessoas comuns&amp;quot;. [http://youtu.be/mKGhPkCSCzQ Link do vídeo no YouTube]&lt;br /&gt;
* Contato inicial na lista da Blender Foundation - Python Development sobre o '''::velvet_goldmine::'''. A ideia é saber como se faz para o plugin ser parte da distribuição contrib do Blender;&lt;br /&gt;
* Contato com 3pointEdit, do blog Blender VSE, sobre o o '''::velvet_goldmine::''' e o '''::blue_velvet::'''. A ideia é que ele veja os plugins e dê algum feedback a respeito.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Pesquisa sobre o FFMPEG - como usar o FFMPEG a partir do Blender;&lt;br /&gt;
* Pesquisa sobre menus - como inserir itens de menus no Blender para chamar o plugin;&lt;br /&gt;
* Pesquisa sobre multiplataforma - quais são as diferenças entre Linux e Windows, ou seja, como fazer o plugin rodar tanto para quem tem Linux como para quem tem Windows (devido ao FFMPEG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Apenas as relacionadas ao uso multiplataforma do '''::blue_velvet::'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 5==&lt;br /&gt;
&lt;br /&gt;
* Semana dedicada a pesquisas sobre como implementar o FFMPEG e os menus no Blender;&lt;br /&gt;
* Pesquisa sobre reconhecimento de sistemas operacionais e de diferenças entre eles, no que se refere à utilização do plugin;&lt;br /&gt;
* Pesquisa sobre como chamar um FFMPEG local, não instalado, em máquinas Windows;&lt;br /&gt;
* Transformação da função principal do plugin (ExportArdour) em classe, para ser lida como addon pelo Blender - essa é uma atualização grande porque muda a estrutura do código;&lt;br /&gt;
* Mapeamento e correção de bugs referentes a essa transformação - tive de inserir duas variáveis globais no código para isso, o que não me deixou muito feliz. É possível que eu incorpore a função de gerar XML à classe para não ter que declarar essas variáveis globais. A classe também é de onde sairá o chamado para o FFMPEG.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar depuração da Classe: como deixar o usuário chamar um FFMPEG local?&lt;br /&gt;
* Se possível, implementar o FFMPEG&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Dúvidas relacionadas a classes e funções - como mudar o valor de self.path? Como permitir a escolha de uma segunda pasta além da primeira? Qual a melhor forma de implementar o FFMPEG levando isso em consideração?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 6==&lt;br /&gt;
&lt;br /&gt;
* Adaptação do código para excluir uma das duas variáveis globais - exluir a outra deixaria o código bem menos legível, o que não compensa;&lt;br /&gt;
* O script virou um addon propriamente dito, com uma entrada no menu;&lt;br /&gt;
* A API do Blender não permite, para a minha surpresa, chamar o FFMPEG interno. Com isso, a abordagem havia mudado para chamar um FFMPEG instalado na máquina do usuário. Mas isso levantava uma questão: e se o usuário não tivesse um FFMPEG instalado? Ou, mais provavável para usuários de Windows: e se fosse um FFMPEG local em vez de um instalado? Pesquisei bastante sobre como lidar com esse problema. Minha solução inicial foi a de fazer o addon exibir uma mensagem de erro, mas não me pareceu satisfatório, pois o erro acabava ficando muito hermético e assustaria as pessoas;&lt;br /&gt;
* Contato com a equipe da Blender Foundation sobre como lidar com um aviso de erro. A sugestão deles foi a de implementar preferências de usuário no addon, ou seja, o usuário poderia apontar para um binário ou executável caso o FFMPEG não houvesse sido reconhecido automaticamente pelo addon. Como era um caminho melhor do que o meu, estudei como fazer essa parte e implementei assim;&lt;br /&gt;
* Com as pesquisas anteriores, foi fácil implantar a chamada do FFMPEG;&lt;br /&gt;
* Primeiro teste com exportação de vídeo e áudio em uma timeline foi bem sucedida;&lt;br /&gt;
* Testes com projetos mais reais de edição simples apontaram um bug no modo como as sources estavam sendo geradas, fazendo com que parte das trilhas de áudio não aparecessem no Ardour (mais especificamente, as trilhas cuja referência original ao nome do arquivo havia sido excluída da timeline por cortes de edição);&lt;br /&gt;
* Correção do bug;&lt;br /&gt;
* Novos testes apontaram que as trilhas estão sendo geradas corretamente na timeline do Ardour;&lt;br /&gt;
* Pesquisas referentes a como fazer um &amp;quot;leitor de keyframes&amp;quot; para as strips de áudio no Blender - a implantação da relação entre keyframes de áudio blender &amp;lt;-&amp;gt; ardour não está prevista para ser feita agora, mas as pesquisas apontam que, sim, é possível fazer caso isso se prove importante.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O addon está feito. A partir dessa semana, o foco muda para o de gerar um projeto real de edição. Um desses projetos será o making of do Floresta Vermelha.&lt;br /&gt;
* A documentação do plugin também deve esperar novos testes com projetos mais reais para ser feita.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Nenhuma.&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=32123</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=32123"/>
		<updated>2013-10-16T18:37:37Z</updated>

		<summary type="html">&lt;p&gt;Qazav: Atualização relativa à Semana 5 de desenvolvimento&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==Vídeo explicativo==&lt;br /&gt;
&lt;br /&gt;
Explique-me como se eu fosse um editor de vídeo, e não um desenvolvedor: [http://youtu.be/mKGhPkCSCzQ veja o vídeo demonstrativo no YouTube].&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masterização do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia conteúdo estático e o transforme em um XML.  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.  - '''FEITO - S4'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (bloqueio de trilhas, mute etc).  - '''FEITO - S4'''. [http://youtu.be/mKGhPkCSCzQ Vídeo demonstrativo]&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?  - '''FEITO - S5'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;  - '''FEITO - S5'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avaliação - é possível ler keyframes de fade/pan e volume variável via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/commits/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;br /&gt;
&lt;br /&gt;
==Semana 3==&lt;br /&gt;
&lt;br /&gt;
* XML mais objetivo: limpei referências a Punch e Loop -&amp;gt; Ardour os recria automaticamente;&lt;br /&gt;
* XML mais preciso: incluí informações referentes a SampleFormat (bits) e FPSs aceitos pelo Ardour - não usar esses parâmetros no Blender pode gerar um erro;&lt;br /&gt;
* Teste com trilha única estática criada pelo Blender funciona no Ardour;&lt;br /&gt;
* Comecei preparativos para conteúdo dinâmico (timeline do Blender);&lt;br /&gt;
* Extensa pesquisa sobre a relação dos parâmetros do XML do Ardour e dos elementos do Blender - consegui estabelecer relações bem-sucedidas entre ambos para praticamente todos os parâmetros que importam;&lt;br /&gt;
* Revisão de código: transformei todas as declarações de atributos do XML em funções, para receberem conteúdo dinâmico;&lt;br /&gt;
* Problema da numeração de IDs resolvido - IDs agora estão sendo atribuídos corretamente, inclusive relações internas no XML;&lt;br /&gt;
* Quebrei a geração das seções dinâmicas do XML em várias funções, para tornar o código mais claro;&lt;br /&gt;
* Revisão geral e limpeza do código - excluí temporariamente parte do código no github para refletir estado atual da revisão;&lt;br /&gt;
* Primeira seção do XML gerada a partir de conteúdo dinâmico parcialmente bem sucedida.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar revisão de código para receber conteúdo dinâmico;&lt;br /&gt;
* Resolver problemas de inter-relação entre Sources e Regions para conteúdos dinâmicos repetidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Informações de dados das strips estão sendo armazenadas em dicionários, dentro de uma lista. Seria melhor criar uma classe?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 4==&lt;br /&gt;
&lt;br /&gt;
* Fim da revisão e adaptação de código para conteúdo dinâmico - código voltou a ficar integral no GitHub;&lt;br /&gt;
* Correção de bugs na geração das Sources no XML do Ardour;&lt;br /&gt;
* Correção de bugs na geração de Playlist Regions no XML do Ardour;&lt;br /&gt;
* Exclusão da seção Regions no código do '''::blue_velvet::''' - a seção é recriada automaticamente pelo Ardour a partir das Playlist Regions;&lt;br /&gt;
* Correção de bugs relativa à geração interna de IDs no XML do Ardour;&lt;br /&gt;
* Geração da primeira timeline de Ardour a partir de conteúdo dinâmico: este ponto significa o marco de 1/3 do desenvolvimento alcançado. Agora é possível gerar timelines de Ardour a partir de trilhas de áudio vindas do Blender (falta fazer funcionar com áudios que estão em trilhas de vídeo);&lt;br /&gt;
* Limpeza de código e correção do modo como a ordem as trilhas aparecem no Ardour - agora, as trilhas aparecem na mesma ordem que na timeline do Blender;&lt;br /&gt;
* Correção de bug na ordem das trilhas para quando há mais de 10 tracks na timeline;&lt;br /&gt;
* Publicação de vídeo de documentação - agora o funcionamento do plugin pode ser compreendido por &amp;quot;pessoas comuns&amp;quot;. [http://youtu.be/mKGhPkCSCzQ Link do vídeo no YouTube]&lt;br /&gt;
* Contato inicial na lista da Blender Foundation - Python Development sobre o '''::velvet_goldmine::'''. A ideia é saber como se faz para o plugin ser parte da distribuição contrib do Blender;&lt;br /&gt;
* Contato com 3pointEdit, do blog Blender VSE, sobre o o '''::velvet_goldmine::''' e o '''::blue_velvet::'''. A ideia é que ele veja os plugins e dê algum feedback a respeito.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Pesquisa sobre o FFMPEG - como usar o FFMPEG a partir do Blender;&lt;br /&gt;
* Pesquisa sobre menus - como inserir itens de menus no Blender para chamar o plugin;&lt;br /&gt;
* Pesquisa sobre multiplataforma - quais são as diferenças entre Linux e Windows, ou seja, como fazer o plugin rodar tanto para quem tem Linux como para quem tem Windows (devido ao FFMPEG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Apenas as relacionadas ao uso multiplataforma do '''::blue_velvet::'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 5==&lt;br /&gt;
&lt;br /&gt;
* Semana dedicada a pesquisas sobre como implementar o FFMPEG e os menus no Blender;&lt;br /&gt;
* Pesquisa sobre reconhecimento de sistemas operacionais e de diferenças entre eles, no que se refere à utilização do plugin;&lt;br /&gt;
* Pesquisa sobre como chamar um FFMPEG local, não instalado, em máquinas Windows;&lt;br /&gt;
* Transformação da função principal do plugin (ExportArdour) em classe, para ser lida como addon pelo Blender - essa é uma atualização grande porque muda a estrutura do código;&lt;br /&gt;
* Mapeamento e correção de bugs referentes a essa transformação - tive de inserir duas variáveis globais no código para isso, o que não me deixou muito feliz. É possível que eu incorpore a função de gerar XML à classe para não ter que declarar essas variáveis globais. A classe também é de onde sairá o chamado para o FFMPEG.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar depuração da Classe: como deixar o usuário chamar um FFMPEG local?&lt;br /&gt;
* Se possível, implementar o FFMPEG&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Dúvidas relacionadas a classes e funções - como mudar o valor de self.path? Como permitir a escolha de uma segunda pasta além da primeira? Qual a melhor forma de implementar o FFMPEG levando isso em consideração?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31981</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31981"/>
		<updated>2013-10-08T16:02:58Z</updated>

		<summary type="html">&lt;p&gt;Qazav: /* Semana 2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==Vídeo explicativo==&lt;br /&gt;
&lt;br /&gt;
Explique-me como se eu fosse um editor de vídeo, e não um desenvolvedor: [http://youtu.be/mKGhPkCSCzQ veja o vídeo demonstrativo no YouTube].&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masterização do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia conteúdo estático e o transforme em um XML.  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.  - '''FEITO - S4'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (bloqueio de trilhas, mute etc).  - '''FEITO - S4'''. [http://youtu.be/mKGhPkCSCzQ Vídeo demonstrativo]&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avaliação - é possível ler keyframes de fade/pan e volume variável via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/commits/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;br /&gt;
&lt;br /&gt;
==Semana 3==&lt;br /&gt;
&lt;br /&gt;
* XML mais objetivo: limpei referências a Punch e Loop -&amp;gt; Ardour os recria automaticamente;&lt;br /&gt;
* XML mais preciso: incluí informações referentes a SampleFormat (bits) e FPSs aceitos pelo Ardour - não usar esses parâmetros no Blender pode gerar um erro;&lt;br /&gt;
* Teste com trilha única estática criada pelo Blender funciona no Ardour;&lt;br /&gt;
* Comecei preparativos para conteúdo dinâmico (timeline do Blender);&lt;br /&gt;
* Extensa pesquisa sobre a relação dos parâmetros do XML do Ardour e dos elementos do Blender - consegui estabelecer relações bem-sucedidas entre ambos para praticamente todos os parâmetros que importam;&lt;br /&gt;
* Revisão de código: transformei todas as declarações de atributos do XML em funções, para receberem conteúdo dinâmico;&lt;br /&gt;
* Problema da numeração de IDs resolvido - IDs agora estão sendo atribuídos corretamente, inclusive relações internas no XML;&lt;br /&gt;
* Quebrei a geração das seções dinâmicas do XML em várias funções, para tornar o código mais claro;&lt;br /&gt;
* Revisão geral e limpeza do código - excluí temporariamente parte do código no github para refletir estado atual da revisão;&lt;br /&gt;
* Primeira seção do XML gerada a partir de conteúdo dinâmico parcialmente bem sucedida.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar revisão de código para receber conteúdo dinâmico;&lt;br /&gt;
* Resolver problemas de inter-relação entre Sources e Regions para conteúdos dinâmicos repetidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Informações de dados das strips estão sendo armazenadas em dicionários, dentro de uma lista. Seria melhor criar uma classe?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 4==&lt;br /&gt;
&lt;br /&gt;
* Fim da revisão e adaptação de código para conteúdo dinâmico - código voltou a ficar integral no GitHub;&lt;br /&gt;
* Correção de bugs na geração das Sources no XML do Ardour;&lt;br /&gt;
* Correção de bugs na geração de Playlist Regions no XML do Ardour;&lt;br /&gt;
* Exclusão da seção Regions no código do '''::blue_velvet::''' - a seção é recriada automaticamente pelo Ardour a partir das Playlist Regions;&lt;br /&gt;
* Correção de bugs relativa à geração interna de IDs no XML do Ardour;&lt;br /&gt;
* Geração da primeira timeline de Ardour a partir de conteúdo dinâmico: este ponto significa o marco de 1/3 do desenvolvimento alcançado. Agora é possível gerar timelines de Ardour a partir de trilhas de áudio vindas do Blender (falta fazer funcionar com áudios que estão em trilhas de vídeo);&lt;br /&gt;
* Limpeza de código e correção do modo como a ordem as trilhas aparecem no Ardour - agora, as trilhas aparecem na mesma ordem que na timeline do Blender;&lt;br /&gt;
* Correção de bug na ordem das trilhas para quando há mais de 10 tracks na timeline;&lt;br /&gt;
* Publicação de vídeo de documentação - agora o funcionamento do plugin pode ser compreendido por &amp;quot;pessoas comuns&amp;quot;. [http://youtu.be/mKGhPkCSCzQ Link do vídeo no YouTube]&lt;br /&gt;
* Contato inicial na lista da Blender Foundation - Python Development sobre o '''::velvet_goldmine::'''. A ideia é saber como se faz para o plugin ser parte da distribuição contrib do Blender;&lt;br /&gt;
* Contato com 3pointEdit, do blog Blender VSE, sobre o o '''::velvet_goldmine::''' e o '''::blue_velvet::'''. A ideia é que ele veja os plugins e dê algum feedback a respeito.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Pesquisa sobre o FFMPEG - como usar o FFMPEG a partir do Blender;&lt;br /&gt;
* Pesquisa sobre menus - como inserir itens de menus no Blender para chamar o plugin;&lt;br /&gt;
* Pesquisa sobre multiplataforma - quais são as diferenças entre Linux e Windows, ou seja, como fazer o plugin rodar tanto para quem tem Linux como para quem tem Windows (devido ao FFMPEG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Apenas as relacionadas ao uso multiplataforma do '''::blue_velvet::'''.&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31980</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31980"/>
		<updated>2013-10-08T15:52:54Z</updated>

		<summary type="html">&lt;p&gt;Qazav: Semana 4 de desenvolvimento&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==Vídeo explicativo==&lt;br /&gt;
&lt;br /&gt;
Explique-me como se eu fosse um editor de vídeo, e não um desenvolvedor: [http://youtu.be/mKGhPkCSCzQ veja o vídeo demonstrativo no YouTube].&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masterização do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia conteúdo estático e o transforme em um XML.  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.  - '''FEITO - S4'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (bloqueio de trilhas, mute etc).  - '''FEITO - S4'''. [http://youtu.be/mKGhPkCSCzQ Vídeo demonstrativo]&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avaliação - é possível ler keyframes de fade/pan e volume variável via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 3==&lt;br /&gt;
&lt;br /&gt;
* XML mais objetivo: limpei referências a Punch e Loop -&amp;gt; Ardour os recria automaticamente;&lt;br /&gt;
* XML mais preciso: incluí informações referentes a SampleFormat (bits) e FPSs aceitos pelo Ardour - não usar esses parâmetros no Blender pode gerar um erro;&lt;br /&gt;
* Teste com trilha única estática criada pelo Blender funciona no Ardour;&lt;br /&gt;
* Comecei preparativos para conteúdo dinâmico (timeline do Blender);&lt;br /&gt;
* Extensa pesquisa sobre a relação dos parâmetros do XML do Ardour e dos elementos do Blender - consegui estabelecer relações bem-sucedidas entre ambos para praticamente todos os parâmetros que importam;&lt;br /&gt;
* Revisão de código: transformei todas as declarações de atributos do XML em funções, para receberem conteúdo dinâmico;&lt;br /&gt;
* Problema da numeração de IDs resolvido - IDs agora estão sendo atribuídos corretamente, inclusive relações internas no XML;&lt;br /&gt;
* Quebrei a geração das seções dinâmicas do XML em várias funções, para tornar o código mais claro;&lt;br /&gt;
* Revisão geral e limpeza do código - excluí temporariamente parte do código no github para refletir estado atual da revisão;&lt;br /&gt;
* Primeira seção do XML gerada a partir de conteúdo dinâmico parcialmente bem sucedida.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar revisão de código para receber conteúdo dinâmico;&lt;br /&gt;
* Resolver problemas de inter-relação entre Sources e Regions para conteúdos dinâmicos repetidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Informações de dados das strips estão sendo armazenadas em dicionários, dentro de uma lista. Seria melhor criar uma classe?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 4==&lt;br /&gt;
&lt;br /&gt;
* Fim da revisão e adaptação de código para conteúdo dinâmico - código voltou a ficar integral no GitHub;&lt;br /&gt;
* Correção de bugs na geração das Sources no XML do Ardour;&lt;br /&gt;
* Correção de bugs na geração de Playlist Regions no XML do Ardour;&lt;br /&gt;
* Exclusão da seção Regions no código do '''::blue_velvet::''' - a seção é recriada automaticamente pelo Ardour a partir das Playlist Regions;&lt;br /&gt;
* Correção de bugs relativa à geração interna de IDs no XML do Ardour;&lt;br /&gt;
* Geração da primeira timeline de Ardour a partir de conteúdo dinâmico: este ponto significa o marco de 1/3 do desenvolvimento alcançado. Agora é possível gerar timelines de Ardour a partir de trilhas de áudio vindas do Blender (falta fazer funcionar com áudios que estão em trilhas de vídeo);&lt;br /&gt;
* Limpeza de código e correção do modo como a ordem as trilhas aparecem no Ardour - agora, as trilhas aparecem na mesma ordem que na timeline do Blender;&lt;br /&gt;
* Correção de bug na ordem das trilhas para quando há mais de 10 tracks na timeline;&lt;br /&gt;
* Publicação de vídeo de documentação - agora o funcionamento do plugin pode ser compreendido por &amp;quot;pessoas comuns&amp;quot;. [http://youtu.be/mKGhPkCSCzQ Link do vídeo no YouTube]&lt;br /&gt;
* Contato inicial na lista da Blender Foundation - Python Development sobre o '''::velvet_goldmine::'''. A ideia é saber como se faz para o plugin ser parte da distribuição contrib do Blender;&lt;br /&gt;
* Contato com 3pointEdit, do blog Blender VSE, sobre o o '''::velvet_goldmine::''' e o '''::blue_velvet::'''. A ideia é que ele veja os plugins e dê algum feedback a respeito.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Pesquisa sobre o FFMPEG - como usar o FFMPEG a partir do Blender;&lt;br /&gt;
* Pesquisa sobre menus - como inserir itens de menus no Blender para chamar o plugin;&lt;br /&gt;
* Pesquisa sobre multiplataforma - quais são as diferenças entre Linux e Windows, ou seja, como fazer o plugin rodar tanto para quem tem Linux como para quem tem Windows (devido ao FFMPEG).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Apenas as relacionadas ao uso multiplataforma do '''::blue_velvet::'''.&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31916</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31916"/>
		<updated>2013-10-02T17:01:00Z</updated>

		<summary type="html">&lt;p&gt;Qazav: /* O que esperar? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masterização do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia conteúdo estático e o transforme em um XML.  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avaliação - é possível ler keyframes de fade/pan e volume variável via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 3==&lt;br /&gt;
&lt;br /&gt;
* XML mais objetivo: limpei referências a Punch e Loop -&amp;gt; Ardour os recria automaticamente;&lt;br /&gt;
* XML mais preciso: incluí informações referentes a SampleFormat (bits) e FPSs aceitos pelo Ardour - não usar esses parâmetros no Blender pode gerar um erro;&lt;br /&gt;
* Teste com trilha única estática criada pelo Blender funciona no Ardour;&lt;br /&gt;
* Comecei preparativos para conteúdo dinâmico (timeline do Blender);&lt;br /&gt;
* Extensa pesquisa sobre a relação dos parâmetros do XML do Ardour e dos elementos do Blender - consegui estabelecer relações bem-sucedidas entre ambos para praticamente todos os parâmetros que importam;&lt;br /&gt;
* Revisão de código: transformei todas as declarações de atributos do XML em funções, para receberem conteúdo dinâmico;&lt;br /&gt;
* Problema da numeração de IDs resolvido - IDs agora estão sendo atribuídos corretamente, inclusive relações internas no XML;&lt;br /&gt;
* Quebrei a geração das seções dinâmicas do XML em várias funções, para tornar o código mais claro;&lt;br /&gt;
* Revisão geral e limpeza do código - excluí temporariamente parte do código no github para refletir estado atual da revisão;&lt;br /&gt;
* Primeira seção do XML gerada a partir de conteúdo dinâmico parcialmente bem sucedida.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar revisão de código para receber conteúdo dinâmico;&lt;br /&gt;
* Resolver problemas de inter-relação entre Sources e Regions para conteúdos dinâmicos repetidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Informações de dados das strips estão sendo armazenadas em dicionários, dentro de uma lista. Seria melhor criar uma classe?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31915</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31915"/>
		<updated>2013-10-02T16:56:59Z</updated>

		<summary type="html">&lt;p&gt;Qazav: Atualização - Semana 3&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia conteúdo estático e o transforme em um XML.  - '''FEITO - S3'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avaliação - é possível ler keyframes de fade/pan e volume variável via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 3==&lt;br /&gt;
&lt;br /&gt;
* XML mais objetivo: limpei referências a Punch e Loop -&amp;gt; Ardour os recria automaticamente;&lt;br /&gt;
* XML mais preciso: incluí informações referentes a SampleFormat (bits) e FPSs aceitos pelo Ardour - não usar esses parâmetros no Blender pode gerar um erro;&lt;br /&gt;
* Teste com trilha única estática criada pelo Blender funciona no Ardour;&lt;br /&gt;
* Comecei preparativos para conteúdo dinâmico (timeline do Blender);&lt;br /&gt;
* Extensa pesquisa sobre a relação dos parâmetros do XML do Ardour e dos elementos do Blender - consegui estabelecer relações bem-sucedidas entre ambos para praticamente todos os parâmetros que importam;&lt;br /&gt;
* Revisão de código: transformei todas as declarações de atributos do XML em funções, para receberem conteúdo dinâmico;&lt;br /&gt;
* Problema da numeração de IDs resolvido - IDs agora estão sendo atribuídos corretamente, inclusive relações internas no XML;&lt;br /&gt;
* Quebrei a geração das seções dinâmicas do XML em várias funções, para tornar o código mais claro;&lt;br /&gt;
* Revisão geral e limpeza do código - excluí temporariamente parte do código no github para refletir estado atual da revisão;&lt;br /&gt;
* Primeira seção do XML gerada a partir de conteúdo dinâmico parcialmente bem sucedida.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Continuar revisão de código para receber conteúdo dinâmico;&lt;br /&gt;
* Resolver problemas de inter-relação entre Sources e Regions para conteúdos dinâmicos repetidos.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Informações de dados das strips estão sendo armazenadas em dicionários, dentro de uma lista. Seria melhor criar uma classe?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31883</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31883"/>
		<updated>2013-09-25T15:02:27Z</updated>

		<summary type="html">&lt;p&gt;Qazav: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia timeline de edição e a transforme em um XML.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (pan, volume, bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avalização - é possível ler keyframes de fade/pan via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31882</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31882"/>
		<updated>2013-09-25T15:01:27Z</updated>

		<summary type="html">&lt;p&gt;Qazav: /* Semana 1 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia timeline de edição e a transforme em um XML.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (pan, volume, bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avalização - é possível ler keyframes de fade/pan via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31881</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31881"/>
		<updated>2013-09-25T15:01:06Z</updated>

		<summary type="html">&lt;p&gt;Qazav: /* Semana 2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia timeline de edição e a transforme em um XML.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (pan, volume, bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avalização - é possível ler keyframes de fade/pan via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31880</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31880"/>
		<updated>2013-09-25T15:00:45Z</updated>

		<summary type="html">&lt;p&gt;Qazav: /* Semana 2 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia timeline de edição e a transforme em um XML.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (pan, volume, bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avalização - é possível ler keyframes de fade/pan via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvolvimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31879</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31879"/>
		<updated>2013-09-25T14:59:08Z</updated>

		<summary type="html">&lt;p&gt;Qazav: /* ::blue_velvet:: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==Onde está o código?==&lt;br /&gt;
&lt;br /&gt;
Aqui: https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia timeline de edição e a transforme em um XML.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (pan, volume, bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avalização - é possível ler keyframes de fade/pan via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvovimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31878</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31878"/>
		<updated>2013-09-25T14:55:22Z</updated>

		<summary type="html">&lt;p&gt;Qazav: Atualização  - Semana 2 de desenvolvimento&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO - S1'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre? - '''FEITO - S2'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia timeline de edição e a transforme em um XML.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do '''blender_velvet'''. - '''FEITO - S2'''. [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py Link ::blue_velvet::].&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (pan, volume, bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avalização - é possível ler keyframes de fade/pan via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semana 2==&lt;br /&gt;
&lt;br /&gt;
* Baixei o Ardour3 para já codar usando a versão nova do programa e do XML;&lt;br /&gt;
* Pesquisei sobre os IDs na XML - eles não importam. Os únicos que importam são o de contagem geral (id-counter) e os que se referenciam entre si na timeline, relacionados a sources de áudio;&lt;br /&gt;
* Início da leitura do manual do Ardour, para compreender melhor a relação programa &amp;lt;-&amp;gt; XML;&lt;br /&gt;
* Criação de página no wiki Nós Digitais e documentação de desenvolvimento - atualizações serão às quartas-feiras;&lt;br /&gt;
* Cheguei ao XML esqueletal básico, sem trilhas. Ele tem 32 linhas;&lt;br /&gt;
* Uma trilha de áudio adiciona 4 elementos novos no XML, fazendo com que fique com 53 linhas;&lt;br /&gt;
* Início de código: '''::blue_velvet::''' agora é capaz de gerar o XML básico a partir do Blender (Python) e salvar em um arquivo;&lt;br /&gt;
* Código do '''::blue_velvet::''' está no github, como um branch do main trunk, '''blender_velvet'''. Agora o desenvovimento pode ser [https://github.com/szaszak/blender_velvet/blob/blue_velvet/blue_velvet.py acompanhado a partir dos commits].&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* Testar se XML esqueletal é lido pelo Ardour3 (os atributos do XML são gerados em ordem diferente ao original);&lt;br /&gt;
* Trabalhar na geração de um XML com uma trilha, e testar se ela é lida pelo Ardour3.&lt;br /&gt;
* Continuar leitura do manual do Ardour.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* XML não funciona no Ardour sem informações de Tempo e Meter. Há outro jeito ou isso é fundamental?&lt;br /&gt;
* Elemento Location: o que são as flags? Por que existe um elemento &amp;quot;punch&amp;quot;? XML funcionaria sem ele?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
	<entry>
		<id>http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31877</id>
		<title>Blue velvet</title>
		<link rel="alternate" type="text/html" href="http://wiki.nosdigitais.teia.org.br/index.php?title=Blue_velvet&amp;diff=31877"/>
		<updated>2013-09-23T16:11:20Z</updated>

		<summary type="html">&lt;p&gt;Qazav: Início da documentação de desenvolvimento + semana1&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=::blue_velvet::=&lt;br /&gt;
Página de desenvolvimento do plugin '''::blue_velvet::''', para integração entre as timelines de áudio do Blender e do Ardour.&lt;br /&gt;
&lt;br /&gt;
==O que esperar?==&lt;br /&gt;
&lt;br /&gt;
Workflow de trabalho:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Editor faz a montagem completa do vídeo.&lt;br /&gt;
    &amp;lt;li&amp;gt;Addon reconhece as trilhas usadas na timeline e:&lt;br /&gt;
    &amp;lt;ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Checa se as trilhas pertencem a um vídeo ou se são áudios separados;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;a. Se trilha pertence a um vídeo, usa o FFMPEG do Blender para isolar a trilha de áudio (WAV) e as salva em uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
            &amp;lt;li&amp;gt;b. Se trilha for áudio separado, copia esse áudio para uma pasta &amp;quot;Audio (Bundle)&amp;quot;, onde será lida pelo Ardour;&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
        &amp;lt;li&amp;gt;Gera XML .ardour;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Designer de som abre o arquivo .ardour no Ardour;&lt;br /&gt;
        &amp;lt;ul&amp;gt;&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour completa itens faltantes do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Ardour cria visualização de &amp;quot;peaks&amp;quot; a partir do XML-base (automático);&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de áudio reabre a mesma sessão, e a timeline de áudio é a mesma vista pelo montador no Blender.&lt;br /&gt;
            &amp;lt;li&amp;gt;Mixagem e masteriação do áudio.&lt;br /&gt;
            &amp;lt;li&amp;gt;Designer de som exporta trilhas finais.&lt;br /&gt;
        &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Montador insere trilha final no projeto de edição.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Programação de desenvolvimento==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;Estudo de funcionamento geral das coisas - Blender, Ardour, geração de XML pelo Ardour, geração de XML via Python - '''FEITO'''.&lt;br /&gt;
    &amp;lt;li&amp;gt;Qual é o XML mínimo possível que o Ardour abre?.&lt;br /&gt;
    &amp;lt;li&amp;gt;Onde estão as coisas relativas a áudio (pan, mono/estéreo, trilhas bloqueadas, trilhas mutadas) no Blender e no XML?&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de um XML esqueletal básico por Python via Blender, que leia timeline de edição e a transforme em um XML.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa: abrir track paralelo de desenvolvimento no github do blender_velvet.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline.&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML com vários áudios na timeline e várias mudanças de parâmetros relativos a áudio (pan, volume, bloqueio de trilhas, mute etc).&lt;br /&gt;
    &amp;lt;li&amp;gt;Pesquisa - qual o melhor jeito de se usar o FFMPEG nativo do Blender em vários ambientes?&lt;br /&gt;
    &amp;lt;li&amp;gt;Extrair áudio de vídeos via Blender API (Python).&lt;br /&gt;
    &amp;lt;li&amp;gt;Geração de XML a partir de timeline com áudios misturados - fontes são vídeos e áudios;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - item no menu;&lt;br /&gt;
    &amp;lt;li&amp;gt;Adicionar funcionalidades de interface (UI) - diálogos de aviso para conversão do FFMPEG;&lt;br /&gt;
    &amp;lt;li&amp;gt;Teste de funcionalidade - usar o plugin em um projeto real de edição;&lt;br /&gt;
    &amp;lt;li&amp;gt;Documentação - geração de vídeo explicativo + README no github.&lt;br /&gt;
    &amp;lt;li&amp;gt;Pós-documentação - contato com desenvolvedores do Blender, publicação no blenderartists.org;&lt;br /&gt;
    &amp;lt;li&amp;gt;Avalização - é possível ler keyframes de fade/pan via Blender API?&lt;br /&gt;
    &amp;lt;li&amp;gt;Adaptação do código segundo sugestões do blenderartists.org.&lt;br /&gt;
    &amp;lt;li&amp;gt;Inserir '''::blue_velvet::''' nos addons do Blender (branch community contrib).&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Relatórios de desenvolvimento=&lt;br /&gt;
Relatórios semanais publicados na quarta-feira.&lt;br /&gt;
&lt;br /&gt;
==Semana 1==&lt;br /&gt;
&lt;br /&gt;
* Instalei o Ardour 2 no lap reciclado para começo das pesquisas.&lt;br /&gt;
* Com o Ardour 2 e Jack rodando, salvei algumas sessões de Ardour sem trilhas e com uma trilha de áudio. Objetivo: entender o XML.&lt;br /&gt;
* Estudei qual o melhor modo de implementar a exportação da timeline do Blender por XML. A melhor opção seria o lxml, mas essa é uma biblioteca externa. O Blender tem suporte nativo a MiniDom e ao ElementTree, então serão esses os métodos escolhidos.&lt;br /&gt;
* Estudei como gerar um XML do zero com Python. A alternativa seria modificar um template XML do Ardour vazio, mas seria ruim distribuir isso junto com o addon.&lt;br /&gt;
* Estudei como transformar o output XML do Blender de bytes em string e em como deixá-lo em formato human-readable (pretty printing).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''A fazer, semana que vem'''&lt;br /&gt;
&lt;br /&gt;
* O XML do Ardour é cheio de tags e IDs. Muitas IDs não querem dizer nada, mas outras são marcadores internos referentes ao modo que as fontes ficam dispostas na timeline. Preciso entender melhor isso.&lt;br /&gt;
* Trabalhar na geração de um primeiro XML esqueletal, com as seções de um XML do Ardor;&lt;br /&gt;
* Estudar melhor o Ardour, para entender como ele lida com fontes estéreo, mono ou multicanais, e como faz as pans desses áudios.&lt;br /&gt;
&lt;br /&gt;
'''Dúvidas'''&lt;br /&gt;
&lt;br /&gt;
* Quais IDs do XML são realmente importantes?&lt;br /&gt;
* Como o Ardour lida com fontes de diferentes canais?&lt;br /&gt;
* Quais as diferenças entre XMLs para Ardour 2 e Ardour 3?&lt;/div&gt;</summary>
		<author><name>Qazav</name></author>
	</entry>
</feed>