audio2midi 0.10.0__tar.gz → 0.12.0__tar.gz

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: audio2midi
3
- Version: 0.10.0
3
+ Version: 0.12.0
4
4
  Summary: Audio To Midi
5
5
  Author-email: dummyjenil <dummyjenil@gmail.com>
6
6
  Provides-Extra: all
@@ -88,6 +88,8 @@ Requires-Dist: pretty-midi-fix; extra == 'violin-pitch-detector'
88
88
  Requires-Dist: scipy; extra == 'violin-pitch-detector'
89
89
  Requires-Dist: torch; extra == 'violin-pitch-detector'
90
90
  Requires-Dist: torchaudio; extra == 'violin-pitch-detector'
91
+ Provides-Extra: yourmt3-music-transcription
92
+ Requires-Dist: yourmt3; extra == 'yourmt3-music-transcription'
91
93
  Description-Content-Type: text/markdown
92
94
 
93
95
  [Audio2Midi Demo](https://huggingface.co/spaces/shethjenil/Audio2Midi)
@@ -97,7 +99,7 @@ Description-Content-Type: text/markdown
97
99
  ---
98
100
 
99
101
  ```bash
100
- pip install audio2midi[all] audio2midi[pop2piano] audio2midi[violin_pitch_detector] audio2midi[crepe_pitch_detector] audio2midi[crepe_pitch_detector_tf] audio2midi[melodia_pitch_detector] audio2midi[basic_pitch_pitch_detector] audio2midi[librosa_pitch_detector] audio2midi[magenta_music_transcription]
102
+ pip install audio2midi[all] audio2midi[pop2piano] audio2midi[violin_pitch_detector] audio2midi[crepe_pitch_detector] audio2midi[crepe_pitch_detector_tf] audio2midi[melodia_pitch_detector] audio2midi[basic_pitch_pitch_detector] audio2midi[librosa_pitch_detector] audio2midi[magenta_music_transcription] audio2midi[yourmt3_music_transcription] audio2midi[mt3_music_transcription]
101
103
  ```
102
104
  ---
103
105
 
@@ -130,9 +132,12 @@ from platform import system as platform_system , architecture as platform_archit
130
132
 
131
133
  import nest_asyncio
132
134
  from audio2midi.mt3_music_transcription import MT3
135
+ from yourmt3_music_transcription import YMT3
133
136
  nest_asyncio.apply()
134
137
  unpack_archive(hf_hub_download("shethjenil/Audio2Midi_Models","mt3.zip"),"mt3_model",format="zip")
135
138
  MT3("mt3_model").predict(audio_path)
139
+ name = "YMT3+"
140
+ YMT3(hf_hub_download("shethjenil/Audio2Midi_Models",f"{name}.pt"),name,"32" if str(device) == "cpu" else "16").predict("audio.mp3")
136
141
 
137
142
  unpack_archive(hf_hub_download("shethjenil/Audio2Midi_Models",f"melodia_vamp_plugin_{'win' if (system := platform_system()) == 'Windows' else 'mac' if system == 'Darwin' else 'linux64' if (arch := platform_architecture()[0]) == '64bit' else 'linux32' if arch == '32bit' else None}.zip"),"vamp_melodia",format="zip")
138
143
  environ['VAMP_PATH'] = str(Path("vamp_melodia").absolute())
@@ -168,6 +173,7 @@ from audio2midi.melodia_pitch_detector import Melodia
168
173
  from audio2midi.pop2piano import Pop2Piano
169
174
  from audio2midi.violin_pitch_detector import Violin_Pitch_Det
170
175
  from audio2midi.mt3_music_transcription import MT3
176
+ from yourmt3_music_transcription import YMT3
171
177
  from audio2midi.magenta_music_transcription import Magenta
172
178
  from os import environ
173
179
  from huggingface_hub import hf_hub_download
@@ -229,6 +235,7 @@ gr.TabbedInterface([
229
235
  gr.Interface(CrepeTF(getenv("crepe_model_capacity","full")).predict,[gr.Audio(type="filepath",label="Input Audio"),gr.Checkbox(False,label="viterbi",info="Apply viterbi smoothing to the estimated pitch curve"),gr.Checkbox(True,label="center"),gr.Number(10,label="step size",info="The step size in milliseconds for running pitch estimation."),gr.Number(0.8,label="minimum confidence"),gr.Number(32,label="batch size")],gr.File(label="Midi File")),
230
236
  gr.Interface(Pop2Piano(device).predict,[gr.Audio(label="Input Audio",type="filepath"),gr.Number(1, minimum=1, maximum=21, label="Composer"),gr.Number(2,label="Details in Piano"),gr.Number(1,label="Efficiency of Piano"),gr.Radio([1,2,4],label="steps per beat",value=2)],gr.File(label="MIDI File")),
231
237
  gr.Interface(MT3(str(Path("mt3_model").absolute())).predict,[gr.Audio(label="Input Audio",type="filepath"),gr.Number(0,label="seed")],gr.File(label="MIDI File")),
238
+ gr.Interface(YMT3(hf_hub_download("shethjenil/Audio2Midi_Models",f"{name}.pt"),name,"32" if str(device) == "cpu" else "16",device).predict,gr.gr.Audio(label="Input Audio",type="filepath"),gr.File(label="MIDI File"))
232
239
  midi_viz_ui
233
- ],["Normal Pitch Detection","Guitar Based Pitch Detection","Melodia","Spotify Pitch Detection","Magenta Pitch Detection","Violin Based Pitch Detection","Crepe Pitch Detection","Crepe Pitch Detection TF","Pop2Piano","MT3","Midi Vizulizer"]).launch()
240
+ ],["Normal Pitch Detection","Guitar Based Pitch Detection","Melodia","Spotify Pitch Detection","Magenta Pitch Detection","Violin Based Pitch Detection","Crepe Pitch Detection","Crepe Pitch Detection TF","Pop2Piano","MT3","YourMT3","Midi Vizulizer"]).launch()
234
241
  ```
@@ -5,7 +5,7 @@
5
5
  ---
6
6
 
7
7
  ```bash
8
- pip install audio2midi[all] audio2midi[pop2piano] audio2midi[violin_pitch_detector] audio2midi[crepe_pitch_detector] audio2midi[crepe_pitch_detector_tf] audio2midi[melodia_pitch_detector] audio2midi[basic_pitch_pitch_detector] audio2midi[librosa_pitch_detector] audio2midi[magenta_music_transcription]
8
+ pip install audio2midi[all] audio2midi[pop2piano] audio2midi[violin_pitch_detector] audio2midi[crepe_pitch_detector] audio2midi[crepe_pitch_detector_tf] audio2midi[melodia_pitch_detector] audio2midi[basic_pitch_pitch_detector] audio2midi[librosa_pitch_detector] audio2midi[magenta_music_transcription] audio2midi[yourmt3_music_transcription] audio2midi[mt3_music_transcription]
9
9
  ```
10
10
  ---
11
11
 
@@ -38,9 +38,12 @@ from platform import system as platform_system , architecture as platform_archit
38
38
 
39
39
  import nest_asyncio
40
40
  from audio2midi.mt3_music_transcription import MT3
41
+ from yourmt3_music_transcription import YMT3
41
42
  nest_asyncio.apply()
42
43
  unpack_archive(hf_hub_download("shethjenil/Audio2Midi_Models","mt3.zip"),"mt3_model",format="zip")
43
44
  MT3("mt3_model").predict(audio_path)
45
+ name = "YMT3+"
46
+ YMT3(hf_hub_download("shethjenil/Audio2Midi_Models",f"{name}.pt"),name,"32" if str(device) == "cpu" else "16").predict("audio.mp3")
44
47
 
45
48
  unpack_archive(hf_hub_download("shethjenil/Audio2Midi_Models",f"melodia_vamp_plugin_{'win' if (system := platform_system()) == 'Windows' else 'mac' if system == 'Darwin' else 'linux64' if (arch := platform_architecture()[0]) == '64bit' else 'linux32' if arch == '32bit' else None}.zip"),"vamp_melodia",format="zip")
46
49
  environ['VAMP_PATH'] = str(Path("vamp_melodia").absolute())
@@ -76,6 +79,7 @@ from audio2midi.melodia_pitch_detector import Melodia
76
79
  from audio2midi.pop2piano import Pop2Piano
77
80
  from audio2midi.violin_pitch_detector import Violin_Pitch_Det
78
81
  from audio2midi.mt3_music_transcription import MT3
82
+ from yourmt3_music_transcription import YMT3
79
83
  from audio2midi.magenta_music_transcription import Magenta
80
84
  from os import environ
81
85
  from huggingface_hub import hf_hub_download
@@ -137,6 +141,7 @@ gr.TabbedInterface([
137
141
  gr.Interface(CrepeTF(getenv("crepe_model_capacity","full")).predict,[gr.Audio(type="filepath",label="Input Audio"),gr.Checkbox(False,label="viterbi",info="Apply viterbi smoothing to the estimated pitch curve"),gr.Checkbox(True,label="center"),gr.Number(10,label="step size",info="The step size in milliseconds for running pitch estimation."),gr.Number(0.8,label="minimum confidence"),gr.Number(32,label="batch size")],gr.File(label="Midi File")),
138
142
  gr.Interface(Pop2Piano(device).predict,[gr.Audio(label="Input Audio",type="filepath"),gr.Number(1, minimum=1, maximum=21, label="Composer"),gr.Number(2,label="Details in Piano"),gr.Number(1,label="Efficiency of Piano"),gr.Radio([1,2,4],label="steps per beat",value=2)],gr.File(label="MIDI File")),
139
143
  gr.Interface(MT3(str(Path("mt3_model").absolute())).predict,[gr.Audio(label="Input Audio",type="filepath"),gr.Number(0,label="seed")],gr.File(label="MIDI File")),
144
+ gr.Interface(YMT3(hf_hub_download("shethjenil/Audio2Midi_Models",f"{name}.pt"),name,"32" if str(device) == "cpu" else "16",device).predict,gr.gr.Audio(label="Input Audio",type="filepath"),gr.File(label="MIDI File"))
140
145
  midi_viz_ui
141
- ],["Normal Pitch Detection","Guitar Based Pitch Detection","Melodia","Spotify Pitch Detection","Magenta Pitch Detection","Violin Based Pitch Detection","Crepe Pitch Detection","Crepe Pitch Detection TF","Pop2Piano","MT3","Midi Vizulizer"]).launch()
146
+ ],["Normal Pitch Detection","Guitar Based Pitch Detection","Melodia","Spotify Pitch Detection","Magenta Pitch Detection","Violin Based Pitch Detection","Crepe Pitch Detection","Crepe Pitch Detection TF","Pop2Piano","MT3","YourMT3","Midi Vizulizer"]).launch()
142
147
  ```
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "audio2midi"
3
- version = "0.10.0"
3
+ version = "0.12.0"
4
4
  description = "Audio To Midi"
5
5
  readme = "README.md"
6
6
  authors = [
@@ -19,6 +19,7 @@ violin_pitch_detector = ["librosa", "numpy","pretty_midi_fix","scipy","torchaudi
19
19
  pop2piano = ["librosa", "numpy==1.26.4","pretty_midi_fix","transformers","essentia","torch","scipy","resampy","pretty_midi","huggingface_hub"]
20
20
  mt3_music_transcription = ["nest_asyncio", "mt3-audio2midi"]
21
21
  magenta_music_transcription = ["librosa","numpy","pretty_midi_fix","tensorflow","huggingface_hub"]
22
+ yourmt3_music_transcription = ['yourmt3']
22
23
  all = ["librosa", "numpy==1.26.4","pretty_midi_fix","transformers","essentia","torch","scipy","torchaudio","torch","mir_eval","hmmlearn","tensorflow","keras","vamp","nnAudio","resampy","pretty_midi","huggingface_hub","nest_asyncio", "mt3-audio2midi"]
23
24
 
24
25
  [build-system]
@@ -913,7 +913,8 @@ class Crepe():
913
913
  inputs = batch[0].to(device)
914
914
  outputs = self.model(inputs)
915
915
  all_outputs.append(outputs.cpu())
916
- progress_callback(i,total_batch)
916
+ if progress_callback:
917
+ progress_callback(i,total_batch)
917
918
  return torch.cat(all_outputs, dim=0)
918
919
 
919
920
  def model_predict(self,audio:np.ndarray,viterbi, center, step_size,progress_callback,batch_size):
@@ -0,0 +1 @@
1
+ from yourmt3 import YMT3
File without changes
File without changes