runapi-suno 0.3.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0dd793483d6ace66eaf84f7f4e28a88642782e620169c4c7a442a71f36e6f9a4
4
- data.tar.gz: a50038bc7efa5ff36f1f490eb1630c0d094dbce6ad13469ed765451aa710c2d1
3
+ metadata.gz: 4cda222e9b13dec6c8ac64c11a6b26134ff2d3fce676c1d8da6e7bd423ad5828
4
+ data.tar.gz: 9302a47df81ad3b92ef578d7e2f9d094c2530898870025faa766429f80eb7542
5
5
  SHA512:
6
- metadata.gz: 460bb0e80a4d86ec69eab534b8d28e9a257186f860c2cc92afb5a910a34082bbdf408fc5e07829a5bc6c2334cbe4daf9a3d7f334937a2ea12d044f6f40542f0d
7
- data.tar.gz: dba87b509ef5f8a088176775925c720852c277c18d76009be43a490de2bd0ece54611381d462b3697cb6db298d1919f1cba54c3f0be24e20ce65b8ec313986ba
6
+ metadata.gz: a134219a14df5c64732b6fde3558e54f958fa35b970ae30767a30a6d060c7f18d2a39490e2f02967a31c7c6bc794770a47a072167a8d720872aeb9aed5d1b3af
7
+ data.tar.gz: 3b03725a042d52cd01a9b80afc7cec2e8f75a27bcadef5d0f210a34caa7e93b322accad64af747a91a32dfefb5043147e9b408e51c6735d9984eac0f21bdf9de
@@ -16,7 +16,7 @@ module RunApi
16
16
  attr_reader :text_to_music
17
17
  # @return [Resources::ExtendMusic] continues an existing track from a specified timestamp
18
18
  attr_reader :extend_music
19
- attr_reader :stitch_audio, :remaster_audio, :add_samples
19
+ attr_reader :stitch_audio, :remaster_audio, :add_samples, :inspire_music
20
20
  # @return [Resources::GenerateArtwork] creates cover artwork for an existing music task
21
21
  attr_reader :generate_artwork
22
22
  # @return [Resources::CoverAudio] re-records vocals over an uploaded audio file with a new style or voice
@@ -66,6 +66,7 @@ module RunApi
66
66
  @stitch_audio = Resources::StitchAudio.new(http)
67
67
  @remaster_audio = Resources::RemasterAudio.new(http)
68
68
  @add_samples = Resources::AddSamples.new(http)
69
+ @inspire_music = Resources::InspireMusic.new(http)
69
70
  @generate_artwork = Resources::GenerateArtwork.new(http)
70
71
  @cover_audio = Resources::CoverAudio.new(http)
71
72
  @add_instrumental = Resources::AddInstrumental.new(http)
@@ -699,6 +699,61 @@ module RunApi
699
699
  }
700
700
  }
701
701
  },
702
+ "inspire-music" => {
703
+ "models" => ["suno-v4", "suno-v4.5", "suno-v4.5-plus", "suno-v5", "suno-v5.5"],
704
+ "fields_by_model" => {
705
+ "suno-v4" => {
706
+ "audio_urls" => {
707
+ "required" => true,
708
+ "min_items" => 1,
709
+ "max_items" => 4
710
+ },
711
+ "model" => {
712
+ "required" => true
713
+ }
714
+ },
715
+ "suno-v4.5" => {
716
+ "audio_urls" => {
717
+ "required" => true,
718
+ "min_items" => 1,
719
+ "max_items" => 4
720
+ },
721
+ "model" => {
722
+ "required" => true
723
+ }
724
+ },
725
+ "suno-v4.5-plus" => {
726
+ "audio_urls" => {
727
+ "required" => true,
728
+ "min_items" => 1,
729
+ "max_items" => 4
730
+ },
731
+ "model" => {
732
+ "required" => true
733
+ }
734
+ },
735
+ "suno-v5" => {
736
+ "audio_urls" => {
737
+ "required" => true,
738
+ "min_items" => 1,
739
+ "max_items" => 4
740
+ },
741
+ "model" => {
742
+ "required" => true
743
+ }
744
+ },
745
+ "suno-v5.5" => {
746
+ "audio_urls" => {
747
+ "required" => true,
748
+ "min_items" => 1,
749
+ "max_items" => 4
750
+ },
751
+ "model" => {
752
+ "required" => true
753
+ }
754
+ }
755
+ }
756
+ },
702
757
  "regenerate-validation-phrase" => {
703
758
  "models" => [],
704
759
  "fields_by_model" => {
@@ -887,6 +942,8 @@ module RunApi
887
942
  "fields_by_model" => {
888
943
  "suno-v4" => {
889
944
  "duration_seconds" => {
945
+ "min" => 10,
946
+ "max" => 360,
890
947
  "type" => "integer"
891
948
  },
892
949
  "model" => {
@@ -905,6 +962,8 @@ module RunApi
905
962
  },
906
963
  "suno-v4.5" => {
907
964
  "duration_seconds" => {
965
+ "min" => 10,
966
+ "max" => 360,
908
967
  "type" => "integer"
909
968
  },
910
969
  "model" => {
@@ -923,6 +982,8 @@ module RunApi
923
982
  },
924
983
  "suno-v4.5-all" => {
925
984
  "duration_seconds" => {
985
+ "min" => 10,
986
+ "max" => 360,
926
987
  "type" => "integer"
927
988
  },
928
989
  "model" => {
@@ -941,6 +1002,8 @@ module RunApi
941
1002
  },
942
1003
  "suno-v4.5-plus" => {
943
1004
  "duration_seconds" => {
1005
+ "min" => 10,
1006
+ "max" => 360,
944
1007
  "type" => "integer"
945
1008
  },
946
1009
  "model" => {
@@ -959,6 +1022,8 @@ module RunApi
959
1022
  },
960
1023
  "suno-v5" => {
961
1024
  "duration_seconds" => {
1025
+ "min" => 10,
1026
+ "max" => 360,
962
1027
  "type" => "integer"
963
1028
  },
964
1029
  "model" => {
@@ -977,6 +1042,8 @@ module RunApi
977
1042
  },
978
1043
  "suno-v5.5" => {
979
1044
  "duration_seconds" => {
1045
+ "min" => 10,
1046
+ "max" => 360,
980
1047
  "type" => "integer"
981
1048
  },
982
1049
  "model" => {
@@ -999,7 +1066,7 @@ module RunApi
999
1066
  "vocal_mode" => "auto_lyrics"
1000
1067
  },
1001
1068
  "required" => ["prompt"],
1002
- "forbidden" => ["lyrics", "style", "title"]
1069
+ "forbidden" => ["lyrics", "style", "title", "negative_tags", "vocal_gender", "duration_seconds"]
1003
1070
  }, {
1004
1071
  "when" => {
1005
1072
  "vocal_mode" => "exact_lyrics"
@@ -1011,7 +1078,32 @@ module RunApi
1011
1078
  "vocal_mode" => "instrumental"
1012
1079
  },
1013
1080
  "required" => ["style", "title"],
1014
- "forbidden" => ["prompt", "lyrics"]
1081
+ "forbidden" => ["prompt", "lyrics", "vocal_gender"]
1082
+ }, {
1083
+ "when" => {
1084
+ "model" => "suno-v4"
1085
+ },
1086
+ "forbidden" => ["duration_seconds"]
1087
+ }, {
1088
+ "when" => {
1089
+ "model" => "suno-v4.5"
1090
+ },
1091
+ "forbidden" => ["duration_seconds"]
1092
+ }, {
1093
+ "when" => {
1094
+ "model" => "suno-v4.5-all"
1095
+ },
1096
+ "forbidden" => ["duration_seconds"]
1097
+ }, {
1098
+ "when" => {
1099
+ "model" => "suno-v4.5-plus"
1100
+ },
1101
+ "forbidden" => ["duration_seconds"]
1102
+ }, {
1103
+ "when" => {
1104
+ "model" => "suno-v5"
1105
+ },
1106
+ "forbidden" => ["duration_seconds"]
1015
1107
  }]
1016
1108
  },
1017
1109
  "text-to-sound" => {
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RunApi
4
+ module Suno
5
+ module Resources
6
+ class InspireMusic < AudioAction
7
+ ENDPOINT = "/api/v1/suno/inspire_music"
8
+ ACTION = "inspire-music"
9
+ def create(options: nil, **params) = super
10
+ end
11
+ end
12
+ end
13
+ end
data/lib/runapi/suno.rb CHANGED
@@ -10,6 +10,7 @@ require_relative "suno/resources/audio_action"
10
10
  require_relative "suno/resources/stitch_audio"
11
11
  require_relative "suno/resources/remaster_audio"
12
12
  require_relative "suno/resources/add_samples"
13
+ require_relative "suno/resources/inspire_music"
13
14
  require_relative "suno/resources/generate_artwork"
14
15
  require_relative "suno/resources/cover_audio"
15
16
  require_relative "suno/resources/add_instrumental"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: runapi-suno
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - RunAPI
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - "~>"
17
17
  - !ruby/object:Gem::Version
18
- version: 0.3.2
18
+ version: 0.3.4
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: 0.3.2
25
+ version: 0.3.4
26
26
  description: The Suno Ruby SDK is the language-specific package for Suno on RunAPI.
27
27
  Use this package for song generation, lyrics, vocals, extension, and audio transformation
28
28
  workflows when your application needs request bodies, task status lookup, and consistent
@@ -57,6 +57,7 @@ files:
57
57
  - lib/runapi/suno/resources/generate_persona.rb
58
58
  - lib/runapi/suno/resources/generate_voice.rb
59
59
  - lib/runapi/suno/resources/get_timestamped_lyrics.rb
60
+ - lib/runapi/suno/resources/inspire_music.rb
60
61
  - lib/runapi/suno/resources/regenerate_validation_phrase.rb
61
62
  - lib/runapi/suno/resources/remaster_audio.rb
62
63
  - lib/runapi/suno/resources/replace_section.rb