O maior problema enfrentado por quem tentou usar o Custom ringtones for your contacts é a demora para o N900 começar a tocar quando uma chamada é recebida. Levava até 4 segundos!
O autor do programa começou a investigar o motivo dessa demora. Basicamente o programa deve fazer 3 coisas: ser avisado que uma chamada chegou, localizar o autor da chamada nos contatos do aparelho, e mandar tocar o toque personalizado.
Os dois primeiros passos acontecem relativamente rápido, portanto o problema era a parte responsável por fazer o toque funcionar.
O autor originalmente fazia o que é correto: mandava o arquivo para o Gstreamer, que por sua vez enviava para o PulseAudio. O primeiro é uma biblioteca que dá muita facilidade para mexer com áudio e vídeo, e também é o responsável pelo uso dos CODECs (ou seja: para tocar um MP3 obrigatoriamente você passará pelo Gstreamer).
Já o PulseAudio é o cara que faz a comunicação direta com o hardware de som do aparelho.
O que foi feito no programa foi alterar essa lógica: passar o áudio diretamente para o PulseAudio. Então tudo deveria passar a funcionar bem e rápido. Ele notou, monitorando os processos do aparelho, que entre o instante que se recebe uma chamada e que o áudio começa a ser enviado ao PulseAudio se passam menos de 0.1 segundos. Então há algo mais errado ainda!
Investigando mais ele descobriu que há um bug no Maemo que provoca a lentidão. Ele disse que já gente tentando corrigir o problema, mas eu não encontrei o bug no Bugzilla.
De qualquer forma eu testei o programa novamente, e realmente a lentidão não acontece mais. Porém, há 3 problemas: o primeiro é que o programa é incompatível com o My Contacts.
O segundo problema, e que o autor conhece e pretende corrigir na próxima versão é que quando há um toque personalizado pelo programa o telefone não vibra mais.
E o terceiro problema que alguns usuários estão reportando (e que eu confirmei), é que ao definir um toque personalizado o telefone não toca mais!! Esse é mais complicado… 🙂
ATUALIZAÇÃO: Já foi corrigido!! Testei e funcionou 100%. Os outros dois problemas permanecem.
fonte: Marco Barisione’s Weblog