Autor |
Mensagem |
nichendrix Veterano
 |
# jun/14
· votar
Ismah Cara genericamente é assim. Humanamente é possível perceber que uma válvula reage bem diferente de sua simulação (e não entremos nos méritos da discussão).
Isso não é sempre um fato. Por exemplo, o Amp Farm é um plug in pra Pro Tools que é conhecido por enganar a maioria das pessoas que são renomadas por reconhecer timbres de valvulados. O MMI, por exemplo, tem um Kemper Profiling Amplifier, é um amplificador que funciona por modelagem digital de sinal, além de já vir com o som de diversos amplificadores clássicos, ele dá a opção de você ligar um amplificador a ele e ele fazer a análise e chupar toda a curva de resposta desse amplificador e criar um modelo digital que você pode gravar como um preset.
Já fiz alguns teste como ele com vários amps, em especial com os amps que o proprio MMI tem, que incluem Mesa/Boogie, Hughes&Kettner, Fender, Polytone, entre outros. E todos sairam muito fieis, eu notei algumas diferenças no som em relação a alguns amps quando ele é ligado direto em linha, mas quando o som passa por um power, não dá pra notar fica muito próximo dos amps originais. No caso dos amps do MMI, a gente testou o som dos amps dele modelado no Kemper, ligados direto no power dos amps, aí a diferença basicamente some.
Aqui vai o link pro review que ele fez aqui pro fórum.
http://forum.cifraclub.com.br/forum/10/306257/
Agora é um equipamento relativamente caro, não é absurdamente caro, mas vai o preço de um cabeçote Mesa/Boogie. Por exemplo, ele é considerado melhor que o Axe FX da Fractal Audio que é considerado um simulador que já chega bem perto de ficar igual aos originais.
|
Bog Veterano
 |
# jun/14
· votar
Ismah é possível perceber que uma válvula reage bem diferente de sua simulação (e não entremos nos méritos da discussão).
Mas eu não fiz qualquer afirmação sobre isso. Uma simulação soar diferente do circuito simulado não significa que ela faz todas as guitarras soarem iguais entre si. Não existe relação entre as duas afirmações.
|
Alex guitar man Veterano |
# jun/14
· votar
Cara genericamente é assim. Humanamente é possível perceber que uma válvula reage bem diferente de sua simulação (e não entremos nos méritos da discussão). Ismah
Realmente, nunca coloquei amps reais lado a lado pra comparar, muito menos testei grandes amps famosos, mas é sim possivel perceber, na verdade, creio que até um pedal analogico responde melhor que uma simulação, não que ela seja ruim, mas a dinamica, sabe.. é outra coisa..
Por exemplo, o guitar rig 5 que é muito bom e usado por guitarrista famosos na gravação de CD, eu não me sinto confortavel, tenho a impressão que não so eu que to tocando, a resposta...
Bom, mas não vamos desvirtuar o topico em analogico vs digital
Bog
Quanto tempo!! Lembra de mim e minhas duvidas? rsrs
|
nichendrix Veterano
 |
# jun/14
· votar
Alex guitar man Realmente, nunca coloquei amps reais lado a lado pra comparar, muito menos testei grandes amps famosos, mas é sim possivel perceber, na verdade, creio que até um pedal analogico responde melhor que uma simulação, não que ela seja ruim, mas a dinamica, sabe.. é outra coisa..
Cara, na boa, tudo depende pra caramba, já toquei em Fuzz e distorção digital que é melhor que a maioria dos analógicos de baixo e até alguns de médio custo que já vi. Eu não acho que analógico responda melhor que digital quando você compara as coisas na mesma faixa de qualidade.
É como a comparação de amp SS com valvulado, que dizem que sempre valvulado é melhor, que distorção de SS não presta, etc. Só que a maioria das pessoas que diz isso quer comparar Meteoro com Fender, Mesa/Boogie, etc. Pega um Pritchard ou um Polytone ou um Lab Series, que são amps SS tão caros quanto a maioria dos valvulados de marca famosa e alguns até tão caros quanto valvulados de boutique, e você vai ter uma comparação justa. Aí você entende porque o B.B. King trocou os Fender pelos Lab Series SS (aquela distorção linda com sustains quase infinito dele é a distorção de um amp transitorizado, nem é canal drive é a distorção do clean do amp), porque a esmagadora maioria dos guitarristas de jazz prefere Polytone a qualquer Fender para som limpo. Você vai ver amps como os Pritchard que vão ter um som distorcido que não deve nada a nenhum Fender e ainda dão um clean tão bom quanto um Polytone.
Por exemplo, o guitar rig 5 que é muito bom e usado por guitarrista famosos na gravação de CD, eu não me sinto confortavel, tenho a impressão que não so eu que to tocando, a resposta...
Aqui reside 90% da diferença de qualidade de som entre analógico e digital, SS e Valvulado, etc. No fator psicológico, isso guitarrista tem muito mais que a maioria dos outros instrumentistas.
|
Ismah Veterano |
# jun/14
· votar
nichendrix
Realmente os digitais estão cada vez mais complexos. Ouvir esse polytone de 85 mostra o quanto evoluímos, mas no sentido oposto ao progresso.
Culpa do grunge e seus pensamento minimalista?! Ou de fato estávamos (meio estranho me incluir numa época que nem existia) exagerados nos anos 70 e 80? __________________________
Enfim, voltando aos circuitos digitais, e as fórmulas...
Pergunto aos especialistas: é viável desenvolver e fabricar pedais desse tipo em casa?
É verídico que pra programar basta um computador, o programa certo e conhecimento para... Mas para colocar isso no DSP, a tal "interface" USB mencionada acima é acessível aos meros mortais?
|
Bog Veterano
 |
# jun/14
· votar
Ismah Mas para colocar isso no DSP, a tal "interface" USB mencionada acima é acessível aos meros mortais?
Sim. Você pode comprar development kits que já vêm com uma plaquinha cheia de interfaces montadas para o DSP, além de um compilador adequado. O preço desses kits varia bastante, acho que os mais baratinhos custam em torno de uns 100 dólares.
|
pedrolake Veterano |
# jun/14
· votar
SIM, hoje VC pode usar alem do DSP, tecnologias Como Arduino, Raspberry Pi. Da uma olhada no aliexpress ten kits a partir de 15 dolares
|
Alex guitar man Veterano |
# jun/14
· votar
nichendrix
Que guitarra é essa do video que voce postou pro ismah?
Que modelo de corpo é esse? é a primeira do video, testada com o marshall
|
Bog Veterano
 |
# jun/14
· votar
Alex guitar man
Só olhando o screenshot, deve ser uma PRS.
pedrolake
Nossa, barateou bastante! As plaquinhas que eu usava ficavam na faixa dos 250 dólares!
|
pedrolake Veterano |
# jun/14
· votar
È para lo-fi e med-fi caiu mas dsp achei para o texas por 70 dolares
http://www.aliexpress.com/item/Free-shipping-Dsp-development-board-tms 320vc5509a-development-board-easy5509-development-board-usb/1863723622 .html
|
pedrolake Veterano |
# jun/14 · Editado por: pedrolake
· votar
E para ver como a tecnologia é cara a placa de desenvolvimento do TigerShark me custou 2000 dolares. isso porque eu sou ex-funcionário da AD, e ela serve para toda linha shark e tiger.
|
MMI Veterano
 |
# jun/14 · Editado por: MMI
· votar
nichendrix
A questão é que o Kemper modela tudo num "pacotão", então ele copia (eles chamam de fazer um profiling) do amp, gabinete/alto falantes, microfone e por que não dizer, posicionamento do microfone e ambiente que foi gravado. Ou seja, neste ponto há uma margem para que existam "profilings" melhores e piores. Há o forum do Kemper que se pode baixar profilings da fábrica e de usuários, há também sites com profilings gratuitos e pagos. No fórum há bastante discussão a respeito de profilings melhores e piores. (obs.: depois de feito o profiling dá para alterar o cabinet também, aí já é algo do processamento)
Por exemplo, existem umas 3 séries (digo séries porque muitas vezes fazem um clean, um crunch e um bem distorido de cada amp) feitas com Dumble. Eu fui meio afoito e baixei um que no fórum diziam que não estava muito bom. Pior que eu achei legal... kkkkk
Alex guitar man
Que guitarra é essa do video que voce postou pro ismah?
Você fala da PRS David Grissom?
|
pedrolake Veterano |
# jun/14
· votar
Pra quem quiser brincar, segue DSP java:
/* ElmGen - DSP Development Tool * Copyright (C)2011 - Andrew Kilpatrick * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. * */ package org.andrewkilpatrick.elmGen.test.simTest;
import org.andrewkilpatrick.elmGen.ElmProgram;
public class Distortion extends ElmProgram { /** * Creates a mute program. */ public Distortion() { super("Distortion"); int filt = REG1; int filt2 = REG2; int filt3 = REG3; int filt4 = REG4; readRegister(ADCL, 1.0); mulx(POT0); scaleOffset(-2.0, 0.0); readRegister(filt, 0.9); writeRegister(filt, 1.0); scaleOffset(-2.0, 0.0); readRegister(filt2, 0.3); writeRegister(filt2, 1.0); scaleOffset(-2.0, 0.0); readRegister(filt3, 0.7); writeRegister(filt3, 1.0); readRegister(filt4, -0.3); writeRegister(filt4, 1.0); writeRegister(DACL, 1.0); writeRegister(DACR, 0.0); }
}
|
Ismah Veterano |
# jun/14
· votar
É minha impressão, ou a tendência é as linguagens se assemelharem entre si, apenas alteraram as finalidades?
Como eu preveni, e o Bog se mostrou favorável, alguns não consideram HTML programação (mas não deixa de ser uma linguagem de programação para páginas da web - e mesmo com o desenvolvimento de outras, ainda o HTML é o mais leve).
pedrolake
Achei bem legal a parte de comentários (e reza a lenda que alguns erros se corrige assim - via vida de programador).
Quanto a parte do código, achei esse beeeeem mais fácil, mas ainda não estou entendendo o que seriam os valores entre parenteses... Seriam eles um fator de multiplicação?
readRegister(ADCL, 1.0); mulx(POT0);
Ali entendi que ele vai ler algum registro (input?!)
scaleOffset(-2.0, 0.0)
aparenta ser uma compressão sussa
e em seguida começa a ser aplicado filtros baseados no que os pot informam etc... _____________
Uma curiosidade que a tempos venho tentando entender: como funciona esses pots "digitais", do tipo que vc gira "sem fim"?
|
pedrolake Veterano |
# jun/14 · Editado por: pedrolake
· votar
pots digitais são chips, que precisam ser inter-faceados por componentes analógicos como chaves, botãos, potenciometros e decodes,
Exemplo
it works
|
nichendrix Veterano
 |
# jun/14
· votar
Ismah É minha impressão, ou a tendência é as linguagens se assemelharem entre si, apenas alteraram as finalidades?
Em geral as linguagens de programação mais modernas, do C e Pascal pra cá tem muita semelhança entre si sim. Especialmente as linguagens orientadas a objetos e a eventos (C++, Java, Python, C#, Visual Basic .Net, etc.) são ainda mais parecidas entre si.
Todas essas linguagem são linguagens que servem para propostos similares, a verdade é que a distinção de uso entre elas é muitas vezes muito pequena ou virtualmente não existente, sendo praticamente uma preferência do programador ou então uma questão de eficiência computacional, pois existem diferenças entre linguagens interpretadas como Python e Java e linguagens compiladas como C e Visual Basic e linguagens hibridas como o C# ou o Mathematica (que são ao mesmo tempo interpretadas e compiladas ao mesmo tempo).
Outra coisa que a maioria dessas linguagens modernas fazem é a possibilidade de usar mais de um paradima de programação, originalmente Visual Basic era uma linguagem de programação dirigida por eventos (event driven), mas depois passou a oferecer a opção de ser orientada a objetos e hoje você consegue programar nos dois paradigmas ao mesmo tempo. No caso de Java, Python e C++, originalmente eram orientadas a objetos, mas podem se programar usando programação dirigida a eventos e programação funcional nelas.
Hoje você só tem diferença de interpretação entre linguagens se você for mudar de uma linguagem orientada a objetos para uma usando primariamente o paradigma funcional como a Mathematica, LISP, Heskell, F#, J, K, Q, Scala, etc (já que praticamente toas as OOPs também trabalham com eventos), em programação funcional as coisas tendem a ser bem diferentes de programação orientada a objetos, embora praticamente toda linguagem funcional moderna tenha suporte a programação orientada a objetos e quase toda linguagem orientada a objetos também tenha suporte para programação funcional, não é muito comum misturar paradigmas no mesmo código, em geral você só faz isso em partes muito específicas do código para otimizar performance.
Alguns exemplos dessa diferença é possível de se notar nestes dois programas:
http://en.wikipedia.org/wiki/Mathematica#mediaviewer/File:Mathematica_ dinis_surface.png
http://upload.wikimedia.org/wikipedia/commons/3/3e/Mathematica_logisti c_bifurcation.png
Como eu preveni, e o Bog se mostrou favorável, alguns não consideram HTML programação (mas não deixa de ser uma linguagem de programação para páginas da web - e mesmo com o desenvolvimento de outras, ainda o HTML é o mais leve).
HTMP não é uma linguagem de programação em si, como também não são XML e o TeX, elas são linguagens de markups, em essência elas tem uma sintaxe e uma estrutura que se assemelham às linguagens de programação, mas a distinção está no fato de que elas na verdade criam documentos, portanto semanticamente e sintaticamente elas são bem diferentes de linguagens de programação (que criam programas de computador), isso se deve ao fato de que elas tem origem na linguagem usada em tipografia para marcar um manuscrito para futura formatação.
Isso não impede que sejam extremamente úteis para linguagens de programação e que essas tirem proveito e incorporem elementos de linguagens de markup em contextos semanticamente e sintaticamente mais estruturados, por exemplo, eu em geral crio sistemas usando uma plataforma que é baseada em Java e C#, mas todos os formulários criados são em HTML então todo programa é criado usando bibliotecas que me permitam troca de informação com o formulário e que em essência permitem ao Java e ao C# entender HTML, tanto que eu posso criar o formulário em HTML sem nunca entrar num editor de HTML, só usando o programa comandos dessas bibliotecas que geram o HTML.
Outra linguagem de markup que praticamente toda linguagem de programação hoje manipula é o XML, que é muito usado para troca de dados entre programas e entre formulários dentro de um mesmo programa.
Então, embora guardem semelhanças entre si linguagens de markup não são linguagens programação porque não geram programas e sim documentos. Tanto que o JavaScript e o PHP praticamente se tornaram linguagens de programação padrão na web por causa da integração deles com HTML, entre outras coisas. Nesse caso você interage com o HTML que passa os dados para o programa em PHP ou JavaScript, esse programa faz o processamento dos dados e retorna ao HTML o resultado.
Quanto a parte do código, achei esse beeeeem mais fácil, mas ainda não estou entendendo o que seriam os valores entre parenteses... Seriam eles um fator de multiplicação?
Não necessariamente, nesse caso os valores entre parênteses são or argumentos da classe (ou função). Cada pedaço de código em que aparecem esses parênteses com informações dentro é na verdade outro programa ou classe (que é um dos objetos em programação orientada a objetos). Esse outro programa faz parte de uma biblioteca especializada em DSP, e já estão prontos, então o programa da distorção só chama as classes inclusas nessa biblioteca e as usa para o que ele se propõe a fazer, no caso, uma distorção digital.
No caso de importar classes e métodos de uma biblioteca, você tem que passar a eles os argumentos que ele precisa para realizar suas rotinas, esses argumentos são passados entre parênteses e separados por vírgula na ordem especificada na classe que define o a classe ou método.
No caso, por exemplo, a classe scaleOffset faz parte da biblioteca ElmProgram, então ao usá-lo, você tem que passar os argumentos na ordem correta, que são os valores entre parênteses, por isso a chamada da classe fica:
scaleOffset(-2.0, 0.0);
No caso para uso da biblioteca, foi necessário fazer a importação dela, feita pelos comandos:
package org.andrewkilpatrick.elmGen.test.simTest;
import org.andrewkilpatrick.elmGen.ElmProgram;
Ele aqui diz ao interpretador do java para acessar o pacote (biblioteca) elmGen e a classe test e a subclasse ou método simTest e importar a classe ElmProgram da biblioteca elmGen, ao final do programa, esta classe Distortion será adicionada a à Biblioteca elmGen, como uma sub-classe da classe ElmProgram.
A partir daí quem quiser usar a classe distortion em qualquer programa poderá fazê-lo usando o comando:
import org.andrewkilpatrick.elmGen.ElmProgram.Distortion;
|
nichendrix Veterano
 |
# jun/14 · Editado por: nichendrix
· votar
Ismah Realmente os digitais estão cada vez mais complexos. Ouvir esse polytone de 85 mostra o quanto evoluímos, mas no sentido oposto ao progresso.
Não entendi sua afirmação, mas tudo bem.
No caso dos Polytone, assim como os Lab Series, são amplificadores ao mesmo tempo que relativamente simples, bem complexos e sofisticados se comparados a maioria dos SS, os Polytone são considerados a referência máxima em som limpo, muito mais que os Fender para quem só toca com esse tipo de som. E os Lab Series pra mim basta dizer que são os amps de escolha do B.B. King há 41 anos.
Um exemplo de som que eu curto muito de polytone é o som desses dois:
Uma característica engraçada é que até hoje nunca encontrei uma boa simulação de Polytone, em geral estão entre os amps que a maioria das simulações passam é longe, junto com os Vox.
|
nichendrix Veterano
 |
# jun/14 · Editado por: nichendrix
· votar
pedrolake
Engraçado como o Python é mais econômico em código, aqui vai um de um chorus:
#!/usr/bin/env python # encoding: utf-8 """ Hand-written 8 delay lines chorus.
""" from pyo import *
s = Server(sr=44100, nchnls=2, buffersize=512, duplex=0).boot()
sf = SfPlayer('baseballmajeur_m.aif', speed=1, loop=True, mul=.3) sf2 = sf.mix(2).out()
# delay line frequencies freqs = [.254, .465, .657, .879, 1.23, 1.342, 1.654, 1.879] # delay line center delays cdelay = [.0087, .0102, .0111, .01254, .0134, .01501, .01707, .0178] # delay line delay amplitudes adelay = [.001, .0012, .0013, .0014, .0015, .0016, .002, .0023] # modulation depth depth = Sig(1)
lfos = Sine(freqs, mul=adelay*depth, add=cdelay) delays = Delay(sf, lfos, feedback=.5, mul=.5).out()
s.gui(locals())
========================================= E o de uma fuzz:
#!/usr/bin/env python # encoding: utf-8 """ Fuzz distortion. High gain followed by, asymmetrical clipping, hard clip on top, soft compression on bottom.
""" from pyo import *
s = Server(duplex=0).boot()
SOURCE = "../snds/flute.aif" BP_CENTER_FREQ = 250 BP_Q = 2 BOOST = 5 LP_CUTOFF_FREQ = 3500 BALANCE = 0.8
src = SfPlayer(SOURCE, loop=True).mix(2)
# Transfert function for signal lower than 0 low_table = ExpTable([(0,-.25),(4096,0),(8192,0)], exp=10) # Transfert function for signal higher than 0 high_table = CosTable([(0,0),(4096,0),(4598,1),(8192,1)])
# Bandpass filter and boost gain applied on input signal bp = Biquad(src, freq=BP_CENTER_FREQ, q=BP_Q, type=2) boost = Sig(bp, mul=BOOST)
# Split signal into positive and negative part sign = Compare(boost, comp=0, mode=">=") sw = Switch(boost, outs=2, voice=sign)
# Apply transfert function lowsig = Lookup(low_table, sw[0]) highsig = Lookup(high_table, sw[1])
# Lowpass filter on distorted signal lp = Tone(lowsig+highsig, freq=LP_CUTOFF_FREQ, mul=.3)
# Balance between dry and wet signals out = Interp(src, lp, interp=BALANCE).out()
s.gui(locals()) : =================================
Pra mim a grande vantagem do Python em relação ao Java pra é a legibilidade, programa em Java em geral é um inferno pra ler porque cada programador faz do jeito que quer, o código de estilo do Python em geral é seguido por todos os programadores e a semelhança com a linguagem natural faz ficar muito mais fácil de ler o código, além de em geral também ser bem mais econômica em linhas.
Os dois exemplos usa um pacote chamado pyo, que é um conjunto de primitivas basicas para criação de efeitos, internamente ela roda em C, esse chorus, usando outra classe dentro do pyo dá pra ser reduzido a 4 linhas se for um chorus comum.
|
pedrolake Veterano |
# jun/14
· votar
Java não tem essa de cada faz o que quer, se o código não estiver formatado no padrão sun, ele roda mas com muito, muito erros.
|
nichendrix Veterano
 |
# jun/14 · Editado por: nichendrix
· votar
pedrolake Java não tem essa de cada faz o que quer, se o código não estiver formatado no padrão sun, ele roda mas com muito, muito erros.
Cara, Java se não tiver erro de sintaxe, o código roda normal independente de como o cara escrever, por exemplo, se você escrever um código em Java usando só 1 espaço como indentação, o interpretador reconhece e roda o código normalmente, se você não indentar o código que está entre { }, o interpretador reconhece e roda o código normalmente, já peguei código em Java que o cara definia tudo que deveria estar entre { } e devidamente indentado em uma única linha, sem usar quebra de linha ou indentação e o interpretador continuou reconhecendo e executando sem nenhum erro. Isso é fato pro Java e pro JavaScript.
Mais de uma vez não só encontrei código assim, como ele rodava normalmente:
public class Distortion extends ElmProgram {public Distortion() {super("Distortion"); int filt = REG1; int filt2 = REG2; int filt3 = REG3; int filt4 = REG4; readRegister(ADCL, 1.0); mulx(POT0); scaleOffset(-2.0, 0.0); readRegister(filt, 0.9); writeRegister(filt, 1.0); scaleOffset(-2.0, 0.0); readRegister(filt2, 0.3); writeRegister(filt2, 1.0); scaleOffset(-2.0, 0.0); readRegister(filt3, 0.7); writeRegister(filt3, 1.0); readRegister(filt4, -0.3); writeRegister(filt4, 1.0); writeRegister(DACL, 1.0); writeRegister(DACR, 0.0);}}
Isso é menos comum hoje em dia, porque as duas principais IDEs usadas pela comunidade Java, o NetBeans e o Eclipse, estabeleceram um padrão que essas IDEs impõe ao desenvolvedor e em geral apontam como erro essas coisas relacionadas a código de estilo. Muitas outras IDEs copiaram esse padrão, inclusive editores de texto como Notepad++ tem plug-ins pra adicionar o padrão usado no Eclipse e no NetBeans nos códigos e scripts Java feitos nele. Só que isso ao menos até onde eu saiba não é algo imposto pela linguagem, foi imposto pelo mercado e não é seguido por todo mundo, embora seja o padrão entre programadores profissionais. A menos que tenha mudado da versão 5 pra cá, já que de lá pra cá só uso o Eclipse e por isso não tem como fugir das melhores práticas, mas até a transição da versão 1.4 pra 5 o interpretador do Java rodava esses códigos esdrúxulos sem problemas, desde que não tivesse erro de sintaxe,.
No caso do Python, a linguagem é menos rígida com a sintaxe e com a semântica, mas boa parte do que hoje é o código de estilo do Python aos poucos passou a fazer parte da sintaxe do Python, por exemplo: o número de espaços pra indentação.
Como o Python não usa chaves e nem colchetes pra definir blocos de código, então Python reconhece blocos de código por indentação, na versão 2.X ainda dava pra indentar com o número de espaços que você quisesse, mesmo que não cumprisse os 4 espaços do código de estilo. Só que no Python 3.X só soda o código se a indentação for feita com 4 espaços e por aí vai.
Enfim, minha experiência com Java foi muito traumática, especialmente no começo, porque até o Eclipse/NetBeans aparecerem com um padrão e botar todo mundo pra cumprir, era uma panaceia danada. Onde com alguma frequência, embora menor, ainda vejo muito código Java de legibilidade prejudicada é em desenvolvimento web, especialmente se é algo que cai na categoria "DIY".
|
pedrolake Veterano |
# jun/14
· votar
MAs os JDK da Oracle não contam, so dão erro de segurança;
|
nichendrix Veterano
 |
# jun/14 · Editado por: nichendrix
· votar
pedrolake
Cara, eu só por desencargo de consciência botei pra rodar essa classe do distortion do jeito que postei aí em cima usando duas IDEs dessas free não profissionais e quando mandei dar o build e rodar, rodou normal. Quando botei no Eclipse, começou a apontar erro no código inteiro.
Então o Java continua aceitando essas porcarias de boa, quem não aceita é são as IDEs boas.
|
pedrolake Veterano |
# jun/14
· votar
Você pegou a boblioteca do ElmProgram/ Elgem.jar e a RXTX.jar para simular o dsp.
|
pedrolake Veterano |
# jun/14
· votar
Aqui a classe para rodar
import java.io.IOException;
import org.andrewkilpatrick.elmGen.EEPromHandler; import org.andrewkilpatrick.elmGen.simulator.SpinSimulator;
public class SimTest { String programmerPort = "COM5"; /** * Creates code for testing. */ public SimTest(String args[]) { boolean flash = false; // run the flash tool boolean simulate = true; // run the simulator // generate the code /** Distortion distortion = new Distortion(); System.out.println("Code generation complete!"); // build/write the EEPROM if(flash) { try { EEPromHandler eeprom = new EEPromHandler("COM5"); eeprom.fillBank(dist, 0); eeprom.fillBank(null, 1); eeprom.fillBank(null, 2); eeprom.fillBank(null, 3); eeprom.fillBank(null, 4); eeprom.fillBank(null, 5); eeprom.fillBank(null, 6); eeprom.fillBank(null, 7); // eeprom.writeAllBanks(); eeprom.writeBank(2); } catch (IOException e) { e.printStackTrace(); } } // run the simulator if(simulate) { String testWav = "/DSP_Studio/test1.wav"; // input test file name // String outputFile = "caminho"; // write out to a file String outputFile = null; // play out through the sound card SpinSimulator sim = new SpinSimulator(new MyClass, testWav, outputFile, 0.5, 0.6, 0.25); sim.showInteractiveControls(); // sim.showLevelLogger(); sim.setLoopMode(true); sim.run(); } System.exit(0); } public static void main(String args[]) { new SimTest(args); } }
|
Ismah Veterano |
# jun/14
· votar
Marcando pra ler com mais calma...
|
nichendrix Veterano
 |
# jun/14
· votar
pedrolake Você pegou a boblioteca do ElmProgram/ Elgem.jar e a RXTX.jar para simular o dsp.
Sim, como disse o código todo bosta rodou em 2 ides que não tem nenhuma pré-formatação quanto ao código de estilo usado no programa. Só começou a dar erro quando foi para uma que adota previamente um código de estilo.
Na verdade no Eclipse também deu erro porque eu não apontei o diretório onde botei as bibliotecas, já que não coloquei no diretório padrão do Eclipse. Só que ele já aponta erro no código o fato de não ter quebra de linha após " ; " e " { " e nem ter indentação nenhuma, além do erro esperado que era ele não reconhecer as bibliotecas usadas e pedir para apontar o caminho para elas.
|
pedrolake Veterano |
# jun/14
· votar
Nich no eclipse vc tem que referencia-las no classpath e importa-las para o tempo de execução. Alterar o JDK para o JDK 8 ou 7, porque o eclipse tenta usar o versionamento do jdk da ibm que vem com ele.
è estranho porque estou rodando o mesmo codigo nele, no netbeans e no websphere ambos com o JDK8 e as mesmas bibliotecas, só alterei o meu package.
|
nichendrix Veterano
 |
# jun/14 · Editado por: nichendrix
· votar
pedrolake
Eu sei cara, na verdade deixo o Eclipse configurado com um diretório de bibliotecas padrão, depois toda vez que você importa a biblioteca ele as coloca diretamente na pasta em que está o projeto com os arquivos do programa/classe.
Por isso falei que ele não importou automaticamente, porque não botei lá, baixei as bibliotecas só pra ver se o Java ainda aceitava a formatação porca toda errada do meu post anterior (a classe inteira definida em uma única linha), isso rodou no Dr. Java e no BlueJ (duas IDEs fraquinhas que em geral o pessoal usa pra dar aula), essa formatação dá erro tanto no Eclipse quanto no NetBeans, mesmo que eu importe corretamente a biblioteca. Neles só rola se você formatar a classe corretamente (line breaks, indentações, etc.)
Era isso que eu estava falando antes, que no Python, mesmo que tu queira fazer isso, não tem como. Não é comum você pegar código ilegível vindo de programador profissional, até porque as IDEs como o Eclipse, NetBeans, Visual Studio, etc não deixam você programar assim, mas já vi muito mais código ilegível em Java e em C do que em qualquer outras linguagens com que já trabalhei, em geral ou é código de programador não profissional ou código feito por cara que aprendeu há tanto tempo que não existia um padrão do que era um bom código.
Isso é incomum em programadores profissionais, mas muito comum na comunidade de gente que programa sem ser profissionalmente.
Um exemplo de linguagem em que as vezes isso acontece é o Mathematica, embora tenha um código de estilo, e a comunidade reforce bastante um padrão de programação, existem muitos programadores, especialmente os amadores, que criam códigos que depois tu não consegue decifrar nem tomando ácido.
PS: Qual versão do WebSphere vc usa?
|
pedrolake Veterano |
# jun/14
· votar
Eu tenho a 8.1 e a 7 que é bem instavel e temperamental.
|
nichendrix Veterano
 |
# jun/14
· votar
pedrolake No 7, você usa o servidor de aplicações normal ou o Lombardi Edition?
|