MusicGen Stereo
https://medium.com/r/?url=https%3A%2F%2Fhuggingface.co%2Ffacebook%2Fmusicgen-stereo-medium
Run MusicGen on Google Colab T4
<span># install packages </span><span>!</span><span>python3</span> <span>-</span><span>m</span> <span>pip</span> <span>install</span> <span>-</span><span>U</span> <span>git</span><span>+</span><span>https</span><span>:</span><span>//</span><span>github</span><span>.</span><span>com</span><span>/</span><span>facebookresearch</span><span>/</span><span>audiocraft</span><span>#egg=audiocraft </span><span># import packages </span><span>from</span> <span>audiocraft.models</span> <span>import</span> <span>musicgen</span><span>from</span> <span>audiocraft.utils.notebook</span> <span>import</span> <span>display_audio</span><span>import</span> <span>torch</span><span># generate music # In this case, we'll try to generate a couple of music </span><span>prompts</span> <span>=</span> <span>[</span><span>'</span><span>futuristic rock music</span><span>'</span><span>,</span> <span>'</span><span>futuristic jazz music</span><span>'</span><span>]</span> <span># describe the music you want to generate </span><span>model</span> <span>=</span> <span>musicgen</span><span>.</span><span>MusicGen</span><span>.</span><span>get_pretrained</span><span>(</span><span>'</span><span>facebook/musicgen-stereo-medium</span><span>'</span><span>)</span><span>model</span><span>.</span><span>set_generation_params</span><span>(</span><span>duration</span><span>=</span><span>60</span><span>)</span><span>res</span> <span>=</span> <span>model</span><span>.</span><span>generate</span><span>(</span><span>prompts</span><span>,</span><span>progress</span><span>=</span><span>True</span><span>)</span><span>display_audio</span><span>(</span><span>res</span><span>,</span> <span>32000</span><span>)</span><span># install packages </span><span>!</span><span>python3</span> <span>-</span><span>m</span> <span>pip</span> <span>install</span> <span>-</span><span>U</span> <span>git</span><span>+</span><span>https</span><span>:</span><span>//</span><span>github</span><span>.</span><span>com</span><span>/</span><span>facebookresearch</span><span>/</span><span>audiocraft</span><span>#egg=audiocraft </span> <span># import packages </span><span>from</span> <span>audiocraft.models</span> <span>import</span> <span>musicgen</span> <span>from</span> <span>audiocraft.utils.notebook</span> <span>import</span> <span>display_audio</span> <span>import</span> <span>torch</span> <span># generate music # In this case, we'll try to generate a couple of music </span><span>prompts</span> <span>=</span> <span>[</span><span>'</span><span>futuristic rock music</span><span>'</span><span>,</span> <span>'</span><span>futuristic jazz music</span><span>'</span><span>]</span> <span># describe the music you want to generate </span> <span>model</span> <span>=</span> <span>musicgen</span><span>.</span><span>MusicGen</span><span>.</span><span>get_pretrained</span><span>(</span><span>'</span><span>facebook/musicgen-stereo-medium</span><span>'</span><span>)</span> <span>model</span><span>.</span><span>set_generation_params</span><span>(</span><span>duration</span><span>=</span><span>60</span><span>)</span> <span>res</span> <span>=</span> <span>model</span><span>.</span><span>generate</span><span>(</span><span>prompts</span><span>,</span> <span>progress</span><span>=</span><span>True</span><span>)</span> <span>display_audio</span><span>(</span><span>res</span><span>,</span> <span>32000</span><span>)</span># install packages !python3 -m pip install -U git+https://github.com/facebookresearch/audiocraft#egg=audiocraft # import packages from audiocraft.models import musicgen from audiocraft.utils.notebook import display_audio import torch # generate music # In this case, we'll try to generate a couple of music prompts = ['futuristic rock music', 'futuristic jazz music'] # describe the music you want to generate model = musicgen.MusicGen.get_pretrained('facebook/musicgen-stereo-medium') model.set_generation_params(duration=60) res = model.generate(prompts, progress=True) display_audio(res, 32000)
Enter fullscreen mode Exit fullscreen mode
export music as a wav file.
<span>from</span> <span>audiocraft.data.audio</span> <span>import</span> <span>audio_write</span><span>for</span> <span>idx</span><span>,</span> <span>one_wav</span> <span>in</span> <span>enumerate</span><span>(</span><span>res</span><span>):</span><span>audio_write</span><span>(</span><span>f</span><span>'</span><span>generated_music_</span><span>{</span><span>idx</span><span>}</span><span>'</span><span>,</span> <span>one_wav</span><span>.</span><span>cpu</span><span>(),</span> <span>model</span><span>.</span><span>sample_rate</span><span>,</span> <span>strategy</span><span>=</span><span>"</span><span>loudness</span><span>"</span><span>)</span><span>from</span> <span>audiocraft.data.audio</span> <span>import</span> <span>audio_write</span> <span>for</span> <span>idx</span><span>,</span> <span>one_wav</span> <span>in</span> <span>enumerate</span><span>(</span><span>res</span><span>):</span> <span>audio_write</span><span>(</span><span>f</span><span>'</span><span>generated_music_</span><span>{</span><span>idx</span><span>}</span><span>'</span><span>,</span> <span>one_wav</span><span>.</span><span>cpu</span><span>(),</span> <span>model</span><span>.</span><span>sample_rate</span><span>,</span> <span>strategy</span><span>=</span><span>"</span><span>loudness</span><span>"</span><span>)</span>from audiocraft.data.audio import audio_write for idx, one_wav in enumerate(res): audio_write(f'generated_music_{idx}', one_wav.cpu(), model.sample_rate, strategy="loudness")
Enter fullscreen mode Exit fullscreen mode
The following is what I generated. Both of prompts were generated by ChatGPT
Cosmic Rhythm
https://soundcloud.com/koji-kanao/cosmic-rhythm
Fusion Flow
https://soundcloud.com/koji-kanao/fusion-flow
© 版权声明
THE END
暂无评论内容