2008/01/26


Testando a M-Audio Fast Track Pro

Assim como fiz com uma "placa" de som Sound Blaster Audigy externa a uns tempos atrás, hoje eu medi a função de transferência da M-Audio Fast Track Pro que meu irmão comprou.

Usei o método do time-streched pulse com 2**14 amostras, 44100 amostras por segundo, curva "otimizada" a partir da fórmula original do Aoshima (eu acho, peguei um programa velho meu, sem comentários :D)

(((O programa pra gerar o sinal, só por referência, é:

N = 2**14;
m=4410;
f = [0:N/2]';
AA = exp(i* ( f*2*pi*(N/2-m)/N +4*m*pi* f.**2 / N**2) );
A = [AA; conj(AA(end-1:-1:2))];
a = real(ifft(A));
)))


A função de transferência completa mostra uma cara boa...


Notem que esse final tem um aspecto mais "arredondado", bem diferente de um filtro "teórico" com uma queda de x Db/década. É pq tb é uma ordem muito alta... Eu plotei em log-log e não teve graça nenhuma.

Aqui é um zoom nas altas freqüências:


É bom lembrar que o mais importante não é garantir boa reprodução em altas freqs, mas sim atenuar o máximo possível antes da freqüência de Nyquist. No design eles devem considerar só que é preciso manter a região plana até uns 20kHz mesmo, e os 2k é o espaço que nós temos pra reduzir de 0 a -100 dB...

Aliás, notem que não chegou nos -100dB não hein!... Tá mesmo é bem feinha essa região na freq de Nyquist... Gostaria de fazer uma medição mais rigorosa, e ter certeza de se é a placa mesmo que tá permitindo um bocadinho de aliasing ali, ou se é meu método que não teve poder o suficiente pra ver como é mesmo.


Agora a região de baixas freqs... Nada demais, curva bem bonitinha...


Agora o mais interessante de sempre, um zoom na banda de passagem, mostrando bem o "ripple"!...


Acho que a variação máxima dos ripples foi coisa de 0.1dB, e ainda tem uma certa elevação ali no meio do caminho... Pra comparar, aqui vai o gráfico que eu fiz uma vez da func de transferência da Audigy do CEFALA.

A Audigy tb tem essa deformação lenta, além do ripple, só no caso dela é estritamente decrescente. E o ripple tem mais pontinhas, imagino que seja um filtro de ordem maior. A impressão que eu fiquei é que o ripple da Audigy é mais freqüente e de menor amplitude, mas a variação "lenta" é mais intensa (varia mais).

Por fim, a resposta a impulso estimada... Apaixonei! Tem cara de sinc mesmo!... Outra coisa que gostaria de medir com mais rigor algum dia.

2008/01/24


Potência da USB

Dispositivos USB estão ganhando bastante espaço, vieram mesmo para ficar. Uma característica importante deles é poderem receber alimentação de potência pela própria porta. É interessante saber quais são essas características de alimentação, pra gente ter noção no nosso dia-a-dia do que que dá pra alimentar pela USB ou não...

Segundo o oráculo do homem contemporâneo, a wikipédia, uma porta USB possue um par de fios para alimentação de potência, em uma tensão de aproximadamente 5V, e precisa ser sempre capaz de fornecer um mínimo de 100mA. 5x0.1 = 0,5watts...

Meio watt, essa é a potência máxima mínima que um dispositivo pode puxar de uma porta USB. Já dá pra alimentar caixinhas de som para os menos exigentes... Uma vez eu escrevi uma thread no DIYaudio sobre os chips que geralmente são usados nessas caixinhas, a potência máxima deles é de 1W.

Isso daí é a potência que vc vai obter se ligar uma carga qualquer lá na porta... Lâmpadas e caixinhas de som devem ser limitadas a isso. Mas parece que um dispositivo digital pode querer mais potência, chegando até a 400mA, ou seja, 2W.

Um LED aceso só pra avisar algo geralmente consome coisa de 1-10mA, o que dá (x0,7V) míseros 7mW. Mas acho que alguns podem chegar a 100mW, senão mais. Uma boa lanterninha de USB deve ser feita empilhando-se uns 5 ou 6 LEDs, e chupando os 100mA da especificação.

Sempre que vc achar estranho ter que alimentar externamente um dispositivo USB, dê uma olhada no transformador (ou fonte chaveada) que vem junto. Provavelmente vc vai ver que o negócio agüenta entregar algo acima de 4W...

Estou curioso pra descobrir como a M-Audio consegue fazer tantos dispositivos "parrudos" que se viram com tão pouca potência!!... PArece ser na verdade uma tendência no mercado, seria uma nova linha de processadores de baixo consumo?...

http://www.m-audio.com/products/en_us/MobilePreUSB-main.html


Personalidade discreta

O filme THX1138 todo mundo conhece, ou devia conhecer... Se passa numa sociedade bizarra ultra-sistemática. As pessoas lá tem esses nomes estranhos, com letras e números, igualzinho placa de carro brasileiro atualmente.

Não sei exatamente o que o GL tinha em mente quando bolou isso. Não sei também o que os autores do filme 21-87, que ins-pirou Lucas, tinham em mente com esse lance de números inteiros pra lá e pra cá.

Isso de fornecer números inteiros pra pessoas é sempre tido como uma coisa desumanizadora. Isso é sempre explorado quando se fala de prisioneiros, como os dos campos da WWII. No prório recente Tropa de Elite isso aparece também... O grito de rebelião "eu não sou (apenas) um número!!" é relativamente manjado.

Apesar de parecer que os autores de todas estas obras intencionavam criar um lance de desumanização, no final das contas isso não acontece. O próprio THX1138 é relativamente famoso, e pessoas (eu inclusive) gostam de jogas esse número prum lado e pro outro. O próprio GL tinha mania de estampar esse e oturos números pra todo lado em seus filmes. O Kubrick tem um lance assim tb.

O código do agente 007 é tanto ou mais conhecido quanto seu nome. No Tropa, é o 07 que passa a 12 David Blaine tem o número que era de Primo Levi tatuado em seu braço (174517).

Não adianta, eles tentam "desumanizar", mas os números acabam ficando célebres, tal como nomes convencionais. Se um diretor escolhe um número prum personagem, com a intenção de querer dizer que era um número qualquer, se fode, porque aquele número qualquer acaba se tornando um número específico, especial...

Que dizer da "Rua S...", perto da "Ponte K..." do Crime e Castigo? Mais uma forma de ocultação que torna célebre algo que alguns consideram que seria pra significar "qqr coisa aí, isso não importa"...

As pessoas tem uma relação muito negativa com os números...

2008/01/23


Feliz desaniversário

Fotos do aniversário do meu irmão na Obra.

Aniversário do Daniel


Meu programa de discotecagem funcionou sem problemas!... ;)
E o rock rolou sem fronteiras!!...

2008/01/22


The Midnight Disc Commander

This is the story about how I crated my own DJ system to use in my Linux box. It is based on midnight commander, mplayer and a small JACK/GTKmm application. Here is the screenshot!

Free Image Hosting at www.ImageShack.us

(( If you are interested in computer audio, you might enjoy this text I wrote about a measurement of the filters in an M-Audio Fast Track Pro... ))

I'm about to go to my brother's birthday party, where I'll serve as a DJ for a bit. For the first time I'll use my notebook to play the songs. It is a Compaq with an AMD Sempron 3500+, and has Debian. I'm an old-school guy, and my window manager is VTWM.

There are lots of Linux programs for disc-jockeys. Mixxx and xwax are two fine programs that emulate vinyl turntables, and let you scratch and make loops... Mixxx can be used with joysticks and other specialized hardware. They also measure the BPM of the musics, and let you change the speed, and apply effects... And of course, they have a window for you to select the files you want to load.

I was going to use mixxx, but I decided it was not good for me. I didn't want all the options, and I wanted easier access to do the few things I was going to do: load new songs alternating the tracks, and make a crossfade.

I searched for other Linux program with the "crossfade" and "playlist" features, but most of them only make the crossfade between the currently playing song and the next one, emulating the work I wanted to do by hand.

So, I realised Linux had advanced applications for composer-DJs, and DJ-emulator programs, but no proper application for a humble "just play the tunes" DJ like me... I believe idjc would be the closest to my wishes, but I couldn't run it. Plus it is based on QT, and I prefer GTK, or console applications, possibly with ncurses.

As a JACK fan, I even considered using something as puredata to do the work. But in the end I decided that all I needed was a small program to make the mixing (directed to do just the cross-fading), then I could select and play the songs with other programs. I decided to do something the unix way, full of pipes and running external applications...

I couldn't find a proper simple JACK mixer program, so first I made my own. It has a scrollbar to select the mixing level, and a bunch of radiobuttons to change the mixing style between linear, fixed-then-linear, sudden and quadratic. The jack part just outputs the weighted sum of the two inputs. There is also a simple first-order IIR filter in the scrollbar reading, to make the transitions more continuous and slow.

To load the songs in the two tracks I made two small bash scripts. This was already enough to work from two xterm windows.

Then I started to enhance my general interface. I created scripts that open an xterm windows and call mplayer inside it. Mplayer already lets you pause and move forward, backwards and to the beginning of the song using the keyboard. I created key short-cuts in my vtwm configuration so F6 F7 F8 alternate between the two tracks (mplayer) and the mixer windows.

Finally, to browse through the files and load the songs in the tracks, I decided I wanted something similar to moc... I wanted something like midnight commander... Then I thought: "hey, why not midnight commander itself???" And voilà!... I configured MC to load my magical script when I select ogg or mp3 files!... The result is the screenshot above. The mc window won the F5 short cut, so I never have to use the mouse. Just push buttons, the way I like it!...

It is not enough to use Linux to play your songs, you have to make your own mixer program and make it interact with midnight commander! THIS is a true DJ hacker! ;)



The system worked successfully. The house almost went down with Search and Destroy and Territorial Pissings!... You can see the pictures of the party at my picasa album.

The greatest success, of course, was being cited at Music Thing. Thanks for the attention, guys! :)



I have detailed some more my system at this later blog post. The mixer program is still not in the Internet, but I can send to anyone interested... It's a very basic jack client integrated into a GTKmm application.


Miscelânea da mixórdia

Não basta ser metido a hacker, e discotecar num bar usando um notebook com Debian instalado. Tem que ser um hacker desvairado, e fazer seu próprio programa (ou programas) pra discotecar, de preferência explorando ao máximo possível os recursos de seu sistema operacional.

Free Image Hosting at www.ImageShack.us

Eu tava com raiva dos programas bons de DJzar que eu vi, porque são mais voltados pra quem faz música eletrônica maluca, e faz scratch e o escambau. Eu não queria nada disso, só quero o básico do básico...

Procurei por outros programas de Linux que possuíssem "crossfade" e "playlist"... E só achei programas em que vc programa uma playlist e ele faz crossfade sozinho entre a música tocando e apróxima da lista, ou seja, emulando exatamente oq ue eu quero fazer na mão!!!...

Fiquei com raiva de não existir algo que me atendesse, e animei de fazer um programa eu memso, já que eu queria tão pouco!...

Aproveitando meus conhecimentos de JACK e GTKmm, fiz esse pequeno mixer em que vc liga duas entradas, e ele faz a soma ponderada e joga na saída. O controle é só um scrollbar, e em baixo tem radiobuttons pra escolher o tipo de fade que é pra fazer. O nome desse programa é "crossjazz" (tentativa bizarra de fazer um trocadilho abstrato com "crossdress")

Pra tocar as músicas tem que chamar o mplayer, e mandar ele entrar na entrada certa do meu mixer. Fiz dois scripts pra isso, com nomes bem simples, e ainda montei um terceiro script que lembra onde entrou a última música, e carrega a próxima música na outra porta. Com isso já dá pra ser feliz.

Por fim, pra carregar as músicas, tou usando o midnight commander. Configurei ele pra executar meus script quando o arquivo executado for ogg ou mp3...

Depois disso é só montar as janelinhas em coordenadas agradáveis, e configurar mais uns atalhos no vtwm pra quando vc der "F5, F6,..." ele ir direto pra uma das quatro janelas de interesse.

Daí o resto é a contrapartida das interfaces reaproveitadas: usar setinhas pro lado e teclas "home end" e "pgup pgdown" pra navegar em pastas arquivos e variar o mixer...

Não sei se eu podia tar muito mais satisfeito não, viu... Só falta um jeito do script identificar quando houver um erro, e tentar ajudar. Mas isso já é deixar as coisas robustas, e não tirar do chão, que é o mais legal!...

Usei as entidades: JACK, mplayer, midnight commander, gtkmm, c++ emacs, vtwm... e é claro, X, linux, e a máquina... Assim que é legal, tudo modular, tudo conversando. Não é um caixotão que faz tudo...

2008/01/21


Pequeno DJ programador local

Olha que interessante, tou procurando um bom programa de Linux pra discotecar no aniversário do meu irmão... Primeiro achei o tal mixxx, e esse parece quebrar o galho. Só que achei bizarro, muito cheio de frescura, e o que eu precisava mesmo ele não faz

Aí que comecei a reparar que ele é mais pra esses DJ assim de coisas eletrôniacs, de fazer scratch e o escambau. eu simplesmente não quero isso. Quero dois "players" normais que tem crossfade e playlists... só!...

Cara... simplemente não existe!

Ou é um mega mixer cheio de coisa, todo estribado, que não é votaldo pra quem só vai tocar músicas em festa, ou é uma coisa pra vc ouvir sozinho, sem controlar muito... estilo 'jukebox"

o mais gozado: Tem inúmeras aplicações pra tocar música que dizem ter "crossfade", mas é na verdade um programa que faz o crossfade automaticamente entre a música q tá tocando e apróxima od playlist. São programas feitos por pogramadores solitários que queriam ouvir múscia como se eu estivesse ali colocando pra eles, fazendo o crossfade manualmente.

Só tem um program que pareceu que me agradaria, o idjc... Ele é votlado pra discotecar em rádio, fazendo stream pelo shoutcast, o que tem tudo a ver. Mas naõ rolou aqiu :/

Era hora deu encarnar o pequeno programador local e fazer meu próprio programa!!......... até parece! :P

Foda q tem vááários programa modo texto. Só que nenhum é voltado pra fazer 2 tracks e dar crossfade entre eles!...

2008/01/20


Coincidências caretas cabisbaixas

Olha que louco... Não sei se o SRV se ligava em HC, mas que ao menos tem umas coincidências interessantes aqui tem!...

O Minor Threat lançou em Abril de 1983 um disco chamado "Out of Step".

Em 84 saiu uma coletânea com a famosa música Straight Edge, que lançou (por mais que inadvertidamente) uns movimentos onde algumas pessoas são abstêmias. O próprio Ian MacKaye já cantava sobre seu "estilo de vida" sem drogas (e álcool) desde sempre, sendo que a própria música "Out of Step" fala:

"I don't smoke. I don't drink. I don't fuck. At least I can fucking think."

Em algum lugar perto de 1989, o Minor Threat lançou um disco com sua obra completa, com uma foto muito famosa na capa:


Não consegui descobrir direito a data de lançamento, o AMG dá 1988...

Essa capa depois serviu até de inspiração pra capa dum disco do Rancid, de 1995:


Agora, pouco antes ali dos anos 1989, Stevie Ray Vaughan teve seus problemas com dogas (e álcool), chegando ao ponto de ter que fazer um tratamento de reabilitação. Logo depois do seu tratamento ele gravou e lançou um disco, que saiu em Junho de 1989, chamado "In Step". O nome seria justamente uma referência à sua reabilitação, após a qual ele se tornou um total abstêmio (que os gringos chamam de "teetotaler"). A capa do disco está a seguir:



O que vcs me dizem????...

[OBS: Todas imagens e quase todas informações vieram da Wikipédia.]