Computer music has emerged in the 50s with Max Mathews, an eletric engineer at Bell Labs. He is called "the father of computer music". Mathews is a leader in research of digital audio, synthesis and human-computer interaction in musical performance. He invented the first program extensively used for sound generation: MUSIC I.
MUSIC I had just one voice, triangular waveform and have the control of sound duration, intensity and tuning.
In 1957 an IBM 704, in New York, played a composition of 17 seconds generated by MUSIC I. It was the first time that a computer played a sound. It had not inspiring notes but it was a great technical advance. MUSIC I has inspired the development of languages and APIs to work with sound in a computer:
- MUSIC II to V
- MUSIC 10, MUSIC 360, MUSIC 15
- Csound
- Java Sound
The traditional synthesizers (analog keyboards with oscillators and pots) evolved and became an amazing line of products that covers sound modules and synthesizers softwares.
In 1983 arised MIDI - the Musical Instrument Digital Interface. Its goal was to standardize the communication between electronic instruments.
Nowadays, computer music is widely used over internet. Web radio-stations and online music composition are some examples. Also it is been developed some instruments based on virtual reality, laser, artificial intelligence.
What future do we have ahead? New kinds of musical instruments, new styles of music, new forms to record music and sound, new forms to analyse a sound, new ways to use the sound ?
domingo, 29 de março de 2009
quinta-feira, 19 de março de 2009
Computer Music: Have you ever heard about it?
Computer music is the name given to the area of Computer Science that study the computer application in solving musical and sonic problems. It's like a cousin of Computer Graphics. While the second studies methods, techniques and algorithms for processing, generation, digital representation and storage of images, the other investigates methods, techniques and algorithms for music and sound generation, digital representations and storage of musical and sonic information.
It's a strongly interdisciplinary area. It has foundations in mathematics and music but it contains concepts linked to psychology, physiology, physics, engineering. You can see this in the Journal of the Acoustical Society of America. There are cathegories like "Underwater Sound", "Music and Musical instruments", "Psychological Acoustics", "Physiological Acoustics", among others.
To know Computer Music is not to know just computers and music. It involves a large knowledge in mathematics and physical fundamentals. Besides it, it covers interesting computational problems like:
- real-time device controls
- interaction with users without knowledge in computation
- musical knowledge representation
In summary, computer music deal with a large variety of problems. As an example, see the topics of interest in Brazilian Symposium of Computer and Music (2007):
- Acoustics, and sound broadcasting
- Artificial Intelligence
- Artificial life and evolutionary music systems
- Design of audio equipment
- Digital processing of audio signals
- Computer-aided musical analysis
- Computer-assisted music education
- Musicology aided by computer
- Music distributed
- Internet and Web applications
- Music and audio systems and multimedia applications
- Structure and representation of musical data
- Recovery of musical information
- Musical notation, printing and optical recognition.
- QoS for audio systems
- Psychoacoustics and Cognitive Modeling
- Interactive systems for real-time
- Software, systems and languages for composition
- Synthesis of sound
Next post I'll talk about the history of this discipline. See you!
It's a strongly interdisciplinary area. It has foundations in mathematics and music but it contains concepts linked to psychology, physiology, physics, engineering. You can see this in the Journal of the Acoustical Society of America. There are cathegories like "Underwater Sound", "Music and Musical instruments", "Psychological Acoustics", "Physiological Acoustics", among others.
To know Computer Music is not to know just computers and music. It involves a large knowledge in mathematics and physical fundamentals. Besides it, it covers interesting computational problems like:
- real-time device controls
- interaction with users without knowledge in computation
- musical knowledge representation
In summary, computer music deal with a large variety of problems. As an example, see the topics of interest in Brazilian Symposium of Computer and Music (2007):
- Acoustics, and sound broadcasting
- Artificial Intelligence
- Artificial life and evolutionary music systems
- Design of audio equipment
- Digital processing of audio signals
- Computer-aided musical analysis
- Computer-assisted music education
- Musicology aided by computer
- Music distributed
- Internet and Web applications
- Music and audio systems and multimedia applications
- Structure and representation of musical data
- Recovery of musical information
- Musical notation, printing and optical recognition.
- QoS for audio systems
- Psychoacoustics and Cognitive Modeling
- Interactive systems for real-time
- Software, systems and languages for composition
- Synthesis of sound
Next post I'll talk about the history of this discipline. See you!
domingo, 2 de novembro de 2008
Entrando no clima...
InfoQueue BR
Ontem, sábado, 01 de novembro de 2008, ocorreu o lançamento da InfoQueue BR com a presença de Floyd Marinescu. O evento foi organizado pela Fratech, que está trazendo esta marca para o Brasil.
Iniciativa louvável pois o infoQueue é um dos sites mais influentes na área de T.I. Traz muitas informações, artigos, videos, apresentações e livros sobre vários assuntos. Em destaque: Java, Ruby, SOA, Agile e Arquitetura.
Aproveite para visitar, se cadastrar e participar!
Welcome Back!
Após alguns - vários - dias distantes do blog, vou tentar aparecer mais por aqui e escrever sobre o que tenho visto e estudado nesse mundo de computação e música.
segunda-feira, 15 de setembro de 2008
Agradecimento
Muito obrigado ao pessoal que apareceu na minha palestra no Just Java 2008. Apesar de ter sido bem corrida, acredito que quem foi passou a conhecer um pouco mais sobre a computação musical e Java Sound.
Obrigado!
Obrigado!
quinta-feira, 4 de setembro de 2008
sexta-feira, 22 de agosto de 2008
JustJava 2008
E o Just Java 2008 tá chegando!!
E eu estou preparando minha palestra sobre computação musical. :)
Pretendo fazer uma introdução sobre computação musical e depois falar um pouco sobre como a tecnologia Java trabalha com sons.
Confira a grade de palestras e o site do evento.
E eu estou preparando minha palestra sobre computação musical. :)
Pretendo fazer uma introdução sobre computação musical e depois falar um pouco sobre como a tecnologia Java trabalha com sons.
Confira a grade de palestras e o site do evento.
Playback de Áudio
Existem dois tipos de line que podem ser usados para tocar som: Clip e SourceDataLine. A diferença principal entre estas duas interfaces é que com um Clip você especifica todas as informações do som uma única vez antes da execução. Com um SourceDataLine, escrevemos continuamente em buffers de informação durante a execução. Embora hajam situações em que ambas as classes possam ser utilizadas, o critério seguinte ajuda a identificar que tipo de line é melhor para determinada situação:
- Utilize um Clip quando você não tem informações de som em tempo real que podem ser pré-carregadas na memória.
Ex.: Loops, iniciar o playback em uma posição arbitrária. - Utilize um SourceDataLine para stream de informações tais como um arquivo de som muito longo que não irá caber todo na memória de uma vez, ou um som cuja informações não podem ser conhecidas antes do playback.
Ex.: síntese interativa de sons.
quinta-feira, 21 de agosto de 2008
Permissões para utilizar recursos de áudio
A API Java Sound inclui uma classe chamada AudioPermission que indica quais tipos de acesso uma applet (ou uma aplicação executando com um gerenciador de segurança) pode ter para o sistema de áudio. A permissão para gravação de som é controlada separadamente.
Se o seu programa não possui permissão para gravar (ou executar) som, uma exceção será lançada quando ele tentar abrir um Line. Não há nada que você possa fazer no seu programa a não ser capturar a exceção e apresentá-la ao usuário, pois as permissões não podem ser modificadas por meio da API. (caso contrário tudo seria inseguro). Geralmente as permissões são setadas em arquivos de configuração.
Se o seu programa não possui permissão para gravar (ou executar) som, uma exceção será lançada quando ele tentar abrir um Line. Não há nada que você possa fazer no seu programa a não ser capturar a exceção e apresentá-la ao usuário, pois as permissões não podem ser modificadas por meio da API. (caso contrário tudo seria inseguro). Geralmente as permissões são setadas em arquivos de configuração.
Assinar:
Postagens (Atom)