Using Chat gpt AI Tool to generate music

I just tried to ask chat gpt to create a song for sonic pi as a professional programmer and musician and got after changing my questions this result.
It is a running code and it is not too bad. Whats your opinion about this?

Welcome to Sonic Pi

use_bpm 120

Drums

live_loop :drums do
sample :drum_heavy_kick
sleep 0.5
sample :drum_snare_hard
sleep 0.5
sample :drum_heavy_Kick
sleep 0.5
sample :drum_snare_hard
sleep 0.5
end

Bass

live_loop :bass do
use_synth :tb303
play :c2, release: 0.1, cutoff: rrand(70, 130)
sleep 0.5
play :g1, release: 0.1, cutoff: rrand(70, 130)
sleep 0.5
end

Chords

live_loop :chords do
use_synth :piano
play_chord [:c4, :e4, :g4], release: 2
sleep 2
play_chord [:e4, :g4, :b4], release: 2
sleep 2
end

Lead melody

live_loop :melody do
use_synth :blade
play :c5, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :e5, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :g5, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :b5, release: 2, cutoff: rrand(70, 130)
sleep 0.5
end

Structure

in_thread do
4.times do
sync :drums
cue :bass
cue :chords
cue :melody
sleep 8
end
sync :drums
stop
end

Effects

live_loop :reverb do
use_synth :piano
play :c4, release: 2, cutoff: rrand(70, 130), reverb: 0.8
sleep 2
end

Drop

define :drop do
with_fx :reverb, room: 0.8 do
with_fx :distortion, distort: 0.8 do
sample :drum_heavy_kick
sleep 0.5
sample :drum_snare_hard
sleep 0.5
end
end
end

Refrain

define :refrain do
with_fx :reverb, room: 0.8 do
use_synth :piano
play_chord [:c4, :e4, :g4], release: 2
sleep 2
play_chord [:e4, :g4, :b4], release: 2
sleep 2
end
end

additional instruments

live_loop :strings do
use_synth :chipbass
play :e4, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :g4, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :b4, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :d5, release: 2, cutoff: rrand(70, 130)
sleep 0.5
end

live_loop :guitar do
use_synth :pluck
play :e3, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :g3, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :b3, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :d4, release: 2, cutoff: rrand(70, 130)
sleep 0.5
end

live_loop :vocals do
use_synth :saw
play :c3, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :e3, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :g3, release: 2, cutoff: rrand(70, 130)
sleep 0.5
play :b3, release: 2, cutoff: rrand(70, 130)
sleep 0.5
end

Drops and refrains

in_thread do
sync :drums
drop
sleep 8
refrain
sleep 8
drop
sleep 8
refrain
sleep 8
stop
end

Welcome to in thread. I copied your code and gave it a play. Sounds not bad. By the way, it would be helpful if in future you could paste code between two sets of ``` characters one on the line before the other the line after the code. This makes it much easier to copy and paste the code straight into Sonic Pi.

In the case of the code you supplied it was fairly straight forward to extract, and I just had to comment out the bold headings such as Drums, Chords, Lead melody etc

It would be interesting to get more detail on the actual interaction you had with the robot. What questions did you actually ask? Unfortunately it is oversubscribed at present, but I would like to have a go later.

1 Like