Giter VIP home page Giter VIP logo

deeptune's People

Contributors

sbenthall avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar

deeptune's Issues

better output path for transfers

Tranfered fragments are being dumped into a directory with raw fragments.

This muddies the training/testing/product data categories.

This has to be better configured with distinct paths for each.

explore use of multiple targets in style extractor

The style extractor currently cargo-culted from the tutorial looks like it supports multiple content and style targets.

This might be a preferable way of dealing with the fragment matching problems than lining them up 1-by-1.

Look into this? See #16

Style transfer for two whole songs with trained model

Building on #12

Somehow (lots of free parameters here) do a style transfer of two whole songs, reconstructing the new merged song from the fragments.

Since the style transfer from #12 is between two fragment, this raises a question of how to match fragments from one song to fragments of the other.

Can do something messy to start with, such as looping the style song. Using 15 second beat loops from the Yrevocnu Organ could be appropriate here.

training/test data from steve morrell corpus

For training of neural network models, I need training/test data for music.

Goal:

  • Start with a directory of MP3s*
  • Break each MP3 into fragments -- parameter: length of time
  • MP3 fragment into array of data
  • arrays of data as X, with song/file title as Y, category label.
  • Export to file
  • Import into tensorflow
  • for training, can use genre diverse openly available music, such as the Steve Morrell corpus.

Loss of signal in song roundtrip -- try keeping in amplitude space

There is some loss of signal in the roundtrip of a song from mp3 -> wav -> numpy -> wav (-> mp3).

On possibility is that this is being lost in the conversion from amplitude to decibel spaces.
Another is that it's being lost in the short term Fourier transform step.

Experiment with

  • reducing the amount of preprocessing and seeing which steps are causing the information loss
  • checking which "purer" forms are still exportable to numpy and feasible to import into the CNN

Fragments as a Class

The song fragments ("chunks") are being handled in an ad hoc way.

It would be better to encapsulate these as a class.

Reconstruct song (in mp3 form) from fragment series

The neural network operates on 'fragments' of a song: a numerical array representing a ~1 second clip.

The plan for music style transfer (for now) is to operate on these fragments.
But we need a way to reconstruct a listenable some from these fragments after the transfer.

Build the song reconstruction steps.

3D convolutional network for harmonic features.

The current method of preprocessing the music data is to split it into equal-time chunks, convert into an array of dB at each frequency at each time step (~1024 x 44 array, where the x axis is frequencies), and then run these 2D arrays through a convolutional neural network.

The timbre of a musical note is a function of the amplitude at the lowest frequency of the note as well as its harmonic frequencies. The convolutional features are not yet accounting for timbre.

Try reshaping the input data into a 3D array such that each frequency is adjacent in the z axis to its nearest harmonic frequencies (is this possible?). Then try using a 3D convolutional layer and see if it alters performance..

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.