by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Bohumír Zámečník
    @bzamecnik
    Welcome to a Gitter channel intended for interested in combining audio processing and machine learning. Feel free to join, it is open and public. Let's discuss and make something useful together. :)
    Bohumír Zámečník
    @bzamecnik

    First steps with chord recognition from audio on the Beatles annotations dataset using several ML models, including deep convolutional neural networks. Python/scikit-learn/Keras/Theano.

    https://github.com/bzamecnik/ml-playground/blob/master/beatles/simple_chord_classification.ipynb

    Bohumír Zámečník
    @bzamecnik

    http://bohumirzamecnik.cz/blog/2015/harmoneye-hard-won-experience/

    HarmonEye: Hard-won Experience After Three Years of My Life

    In this article I’d like to summarize lessons learned during three years of development of software for music analysis, visualization and machine learning and of my life. You can find a lot of experience and advice not to repeat the mistakes I did.

    The goal: see what you hear in music. When you think you’re genius and can do all features at once, stop… It’s a trap! Go by small steps and get much further.

    Bohumír Zámečník
    @bzamecnik

    http://www.visualmusictheory.com/the-beatles-twist-and-shout.html

    Let's start dissecting songs with Twist and Shout by The Beatles from the album Please, Please Me.

    It is a quite simple rock'n'roll song, a nice one to start with. Although it's not complicated it doesn't mean it's boring or there's nothing to explore and learn about. Quite opposite. Even I was surprised what interesting things we can figure out from such a three-chord song.

    ajinkya-git
    @ajinkya-git
    I should probably start by introducing myself, name's Ajinkya from Mumbai India. I recently completed my engineering in IT about 6 months ago. I like to consider myself a music enthusiast, I play a little bit of Guitar and keyboard. And currently taking Basuri(Indian bamboo flute) lessons from Himanshu Nanda(disciple of Pt. Hariprasad Chaurasiya). The ASPMA course was my first ever experience with music computing or signal processing itself. The projects you have undertaken seemed interesting and would love to help. But at this moment your articles are a bit overwhelming for me. If you don't think of it as too much trouble can you point at something/somewhere I can start from
    Bohumír Zámečník
    @bzamecnik
    Hi Ajinkya, glad to meet you! :) Congrats to the IT graduation. The Basuri flute sounds quite interesting. I'm happy you are full of enthusiasm. Maybe start with dreaming a bit of your goals. How would you imagine your projects or experience eg. after a year? What task would you like to solve or which questions would you like to answer? Dream big and act small. Try to pick some simple topic, do your best to explore it and share your progress and findings. Then iterate. When you have the goals you can find tools and methods to achieve that goals. And the people around you can point you where to find useful resources.
    hoinx
    @hoinx
    Hi Bohumír, hi all, I was already frightened the ASPMA forum will close and I have to spend my nights making music again ;-) just a joke! Actually it really took some time, but got me a good feeling that time was the only problem, apart from stupid misunderstandings (in which I'm good in ;-) like mixing up test-cases and still trying to find the error :-) About me: I'm happy working in the music-software industry but my daily subjects are more craftsmanship than research, unfortunately. By staying updated with you I will fulfill my desire of to dive deeper into the math behind sound and music.
    drlids
    @drlids
    Hi Bohumír, thanks for keeping the ASPMA conversation alive! Hi everyone, looking forward to the discussion, and extending my very surface knowledge of DSP and ASP.
    Bohumír Zámečník
    @bzamecnik
    Hey, hoinx and drlids, and be warmly welcome :) I'm very excited that there are so many people interested in music audio processing. By the way, what are your goals in this area? Or what questions would you like to answer for yourself / fun project you like to build? As for me I'd love to make songs understandable by sight, eg. visualize the structure of songs visually.
    Bohumír Zámečník
    @bzamecnik
    By reading through the fora on ASPMA it seems to me as a recurring theme that there's a lot of interesting audio libraries (at least sms-tools, Essentia, smspd, SMS for Essentia), out there from the academic sphere but they are very hard to install due to missing or non-ideal build system and usually no packages. Do you also feel this? IMHO I'd like that each such library would be infinitely more useful if it could be installed by simple apt-get install $FOO_LIB or brew install $FOO_LIB instead of spending all night by digging through Stack Overflow. What do you think?
    drlids
    @drlids
    +1 for brew install. -1 for all night digging through Stack Overflow (I have a lot of minuses after the ASPMA course!).
    Bohumír Zámečník
    @bzamecnik
    :)
    hoinx
    @hoinx
    Yes, a straight forward installation (and up to unit tests across all APIs) would be a big benefit +1 from me. Which platforms do you work with Bohumír? I want everything as platform independent as possible. Choosing a UI of my choice. I'm thinking of playing with some of the analysis and transformations lerned in the course from within a VST plugin, well if there is a nice multi platform plugin-SDK that would be an option. Do you have experience building audio/instrument plugins for DAWs?
    MGarvinNYC
    @MGarvinNYC
    Hoinx: There are two books by Will Pirkle that have a platform for creating VST plugins. You should be able to find them easily on Amazon. I have both, so let me know if you have questions. They may be Windows-only, but you should be able to find Will's website to verify. There is also a VST plugins mailing list. I think the email is: vst-plugins@lists.steinberg.net but I can also find out more about that too if you wish.
    MGarvinNYC
    @MGarvinNYC
    Bohumir: Very much agreed about the convoluted installation process. The next rev of the ASPMA course should benefit from better support also, so perhaps something could be coordinated with them. Support for Essentia seems almost non-existent. They need to correct that before the next round.
    DonHorrell
    @DonHorrell
    I'm planning to implement the timeshift and frequency shifting code in Java (and hopefully it will also be fast enough to work in Android). It will be focused on streaming i.e. read a frame, process it and output it. Limited time though, due to job and family. Anyway, the results will be on GitHub in a few weeks.
    Bohumír Zámečník
    @bzamecnik
    @hoinx As for the VST, it is certainly a possibility to create real-time effects. Personally, I don't have any experience creating them, I only used them a few times years ago. What might be possibly a simpler path is trying to make effects/instruments in something like Max or Pure Data. However, integration with DAWs would not be probably perfect. Except for a good integration between Max and Ableton Live (which we're going to explore in the last assignment of the Ableton Live course at Coursera).
    Bohumír Zámečník
    @bzamecnik
    By the way, the Ableton Live course was really nice. In a few lessons we were able to create our own basic music compositions and arrangements and publish the results. The only drawback we just used a 30-day trial. But the software is very practical and powerful. I wish I played with electronic music years ago :)
    @DonHorrell Nice, I'm looking forward.
    MGarvinNYC
    @MGarvinNYC
    @DonHorrell In case you are not familiar, "Phase Vocoders" are often used for time/freq shift. There are some clever applications, including SeventhStringSystems' "Transcribe!" program, which allows musicians to cop fast lines by slowing them down without altering pitch.
    hoinx
    @hoinx
    @MGarvinNYC, @bzamecnik thanks for the tips! Max and Pure Data is definitely attracting me, but there is currently not much time for them. Getting know how about vst is not a problem, I have some nice colleagues who are familiar with vst, and I have already a little experience with VST2 and VSTGui on the Mac, but my code has gotten a bit outdated, very old XCode on OS Leopard. What I am looking for and currently looking into is something like Juice: A framework which, I guess, completely abstracts OS tasks. I just installed it...
    hoinx
    @hoinx
    @bzamecnik Ableton Live course? Interesting! How much time did it take? Thanks for sharing your results,... and another platform to discover,... :-), nice!
    hoinx
    @hoinx
    Not "Juice": Juce
    This message was deleted
    Bohumír Zámečník
    @bzamecnik
    @hoinx The Ableton course took a few hours a week. It was rather simple, definitely way simpler than eg. DSP :) Nevertheless, it is nice that it shows you the basic usage so you don't have to wander through the vast documentation. And also you have to produce some artifact as a result of each lesson.
    Bohumír Zámečník
    @bzamecnik
    The first step towards better SMS tools is done. I've written a regression test which runs all the models and transformations and compares the outputs to previously saved good outputs. Now it is much safer to refactor the code. Most errors which would break the code should be easily spotted. Also now it is possible to run the examples non-interactively (without GUI) by saving the plots to PNGs. https://github.com/bzamecnik/sms-tools/commits/master,
    https://github.com/bzamecnik/sms-tools/issues
    Bohumír Zámečník
    @bzamecnik
    Hooray, essentia finally work on my Mac! The missing piece was setting DYLD_FALLBACK_LIBRARY_PATH. Still, it work only in plain python, in ipython it segfaults.
    Bohumír Zámečník
    @bzamecnik
    Merry Christmas! :)
    MGarvinNYC
    @MGarvinNYC
    @bzamecnik , That's quite the accomplishment getting Essentia running at all, if what I've seen is any indication. Now just get it running under Windows, OK? :-)
    Merry Christmas to all!
    Bohumír Zámečník
    @bzamecnik
    @MGarvinNYC Yes, that would be useful. From the Essentia docs it seems it can be cross-compiled for Windows on Linux with MinGW, but without Python bindings. Maybe another possible way would be to run Essentia in Docker and either all other components (python, sms-tools, ipython) also in Docker or connect it to native windows python via some socket API.
    Bohumír Zámečník
    @bzamecnik
    It seems that building Python project for Windows can be done in cloud. Eg. pytest has Windows builds done via Appveyor. The harder part is to make the essentia Python bindings working at all.
    Bohumír Zámečník
    @bzamecnik
    Great, I'm happy that now it is possible to build and install sms-tools as an ordinary python package (including the cython extension). What remains is to to document and commit all the things.
    Bohumír Zámečník
    @bzamecnik

    Good news: smst-0.1.0 released on PyPI (https://pypi.python.org/pypi/smst)!

    Now you can install it via pip install smst and run as smst-ui-models.

    Bohumír Zámečník
    @bzamecnik
    smst-0.2.0 is out. It has a new simplified API! Something like this (except the model is just a tuple, not an object):
    from smst.models import hps
    model = hps.fromAudio(...)
    model_transformed = hps.morph(...)
    audio_transformed = hps.toAudio(...)
    Bohumír Zámečník
    @bzamecnik
    Check out our new Slack group https://audio-ml.slack.com/! :)
    Bohumír Zámečník
    @bzamecnik
    A Slack community for people interested in processing audio and teaching machines to understand it. Let's discuss our projects, data, methods, tools, solve the problems together and make the next awesome thing! Sign-up at http://audioml.club