Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
Need to find if there is a open source project for audio signal processing, just as we have openCV for image processing.
Thanks
In my course for the more technical part, we were introduced to signal processing, we had to use Octave with the audio package and gnu plot for plotting.
For the fun part of the course used MaxMSP/Jitter which is a commercial project,
but there's always PureData which is opensource and the Jitter equivalent would be PD Gem, but just for audio signal processing you should be fine with PureData.
In short, if you're into the number crunching bit, Octave should be fine.
We also did the image processing in Octave too, it's two dimensions as opposed to one(sound), but it's still signal processing. You can apply a high-pass or a low pass filter to an image too, you can try an echo/delay on images for fun if you like.
Pure Data is a bit different, since you patch cords instead of typing lots of code, but it's pretty fun and one of the advantages is that you can make changes live, while your patch/program is running which makes it great for fast prototyping.
Straying a bit from audio signal processing, if you're into generative music, you should have a look at some opensource projects like ChucK, SuperCollider, ixi
or fluxus...some do cool stuff with Haskell.
Update
On the c++ side you can also check out Dr. Mick Grierson's Maximilian library which also includes a nice little addon for OpenFrameworks
It's also worth checking out Sonic Visualiser and Vamp Plugins (a lot of nice goodies there)
HTH
Related
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
I have a small application I have been working on for some time to help my son with his speech delay. I am using gstreamer to play phonemes, small audio clips about 100ms long.
Things are fine but I find it a bit distasteful to use a library that has such powerful video features for an audio only application.
I was thinking that an audio programing language might be able to play short audio clips on-the-fly too.
I've been reading about these DSLs and there are quite a few of them. However it seems that csound, Supercollider and Chuck are the front runners.
All I really need to do right now is to play small audio clips, preferably from a C binding, in near real time and I only need to run on Linux.
Could anyone help me pick a language for this? There are so many features I "can't see the forest for the trees".
Once I have one picked out, I will have a tool for my immediate needs and a platform to grow with as my needs change.
SuperCollider has great real-time capabilities and makes it pretty easy to play sound files via its sclang interpreter. It's also not that hard to communicate with the supercollider server (scsynth, the part of supercollider that actually synthesize sounds) via open sound control (OSC) messages, so you can control the synth from another, separate application.
Don't know much about chuck but I hear it's good for on-the-fly, live audio programming too so it might work.
I wouldn't recommand CSound since it's meant to be used for composition, more like a "compiled" language vs interpreted. You basically write a score file and generate a whole sound file from that, so it's probably not what you want.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I need to add some mp3 file playing functionality to my Linux based embedded application. Until now I used a system call (mpg123 -qm list of mp3 files). But now I don't have all the elements of the playlist, but get the next one only when I'm ready with the previous one. With mpg123 it means that I have some stupid noise between the tracks, as I always have to restart the mpg123 binary.
I was looking around for some libraries and found libmad, lame, sdl and co. But they seem to be a bit overcomplicated at first to handle. I found the fmod (http://www.fmod.org/index.php/download) library easy to use. But it's available only in binary format, which doesn't fit my ARM-based target (not to mention the licensing problems). Does anybody know about any similar, open source library capable of playing mp3 files similar to fmod?
mpg123 has an API, perhaps you could use that instead of calling the binary?
OK, finally with the help of houbysoft's hint i found a solution which uses libmpg123 and libao, here, and with some tuning i managed to get pretty smooth file-by-file playing. Thx for the hint!
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I enjoy the game of Go (also known as weiqi in China or baduk in Korea). I want to create a program (an evaluation function) to play it.
I would prefer if the framework handled two important tasks:
Handle rules for the game, including captures, ko rules, and final scoring.
Handle communication between a server like KGS and my program.
Also, my home machines run Linux or Mac OS X; I cannot use any only-Windows platforms.
Thank you!
GNU Go is a great open source Go program. Its evaluation function is well-documented and it provides an easy way to output the explanation for every move the program made. You can either replace the evaluation function from scratch with your own, or tinker with the existing one.
Open Go is an open source tool with code for communicating using the Go Modem Protocol. I believe that's what you need for the second part of your question.
This is an old question, but for people out there interested in an Android implementation of Go (Baduk/Weiqi) take a look at my project on https://github.com/amgreg/AndroidGo
It's a simple validator with a user-interface attached. Drawbacks are: No AI; no scoring; no server connection.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I'm looking for (linux) command line tools that can help with video editing. I am mostly interested in:
Cutting
Transitions
Effects
Any pointers would be appreciated (I know ffmpeg can do basic cutting, but not much beyond that afaik).
Two tools I use are transcode and mencoder.
Transcode is a suite of command line
utilities for transcoding video and
audio codecs, and for converting
beween different container formats.
A variety of video and audio pre and
post-processing filters are available,
including (but not limited to):
framerate conversion
smoothing
cutting
MEncoder is a free command line video decoding, encoding and filtering tool based on mplayer.
Avisynth under WINE is your best bet. You can use ffmpeg or mencoder to do the actual encoding, and avisynth .avs files for the actual editing. You may have to use mencoder under WINE to access the avs files as well. I haven't tried this myself, but it should work, barring any WINE issues.
If this is part of some production app, if there's any way you can farm the work out to an actual windows computer you'll save yourself a lot of pain.
If you want to get your hands dirty you could try using the gstreamer and Gnonlin to make your own CLI video app. You can actually use a language like Ruby to call gstreamer from, so you don't have to use C.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I recently found out about livecoding where someone will program something on the fly to make music. Apparently there are special languages and libraries for this sort of thing. So I'd like to know if anyone has any experience with it and if they have any languages, libraries or tools to suggest.
Check these resources:
SuperCollider (Environment and programming language for real time audio synthesis and algorithmic composition)
ChucK (Strongly-timed, Concurrent, and On-the-fly Audio Programming Language)
TOPLAP (temporary organization for the proliferation of live audio programming)
I want to second the recommendation for Impromptu as well:
Wholesale utilization of your Mac: audio units, camera, openGL...etc (I actually ended up buying a Mac after playing around with this app.)
Very simple and easy to start : The tutorial gets to the fun fast. Perhaps the clumsiest aspect is getting the keybindings installed : (you will need to install in ~/Library/KeyBindings/DefaultKeyBinding.dict)
It uses Scheme(Lisp dialect) a highly iterative language, suitable for prototyping apps one line at a time.
Now there is also Sonic Pi which is a lot of fun.
It is an Open Source live coding environment based on Ruby that runs in a variety of environments including the Raspberry Pi and is build on top of the Supercollider synthesis engine.
Sonic Pi has been designed with the aim to find a harmonious balance between three core principles:
Simple enough for the 10 year old within you
Joyful enough for you to lose yourself through play
Powerful enough for your own expressions
Sample code:
loop do
sample :perc_bell, rate: (rrand 0.125, 1.5)
sleep rrand(0, 2)
end
You should check out RTcmix (Real-time Cmix). I saw a great livecoding demo by one its developers, but I haven't been able to find any videos online.
I've been using RTcmix with its Python front-end module to experiment with algorithmic composition. It's very easy to use and has nice results.
EDIT
I've been investigating livecoding further recently, and RTcmix is not intended for this, but in some cases, it can work. It's much better for pre-processed scores. Sorry for any confusion. :)