Spaces:
Sleeping
Sleeping
Upload myinfer_latest.py
Browse files- myinfer_latest.py +10 -2
myinfer_latest.py
CHANGED
|
@@ -22,6 +22,9 @@ import werkzeug
|
|
| 22 |
from pydub import AudioSegment
|
| 23 |
import uuid
|
| 24 |
from threading import Semaphore
|
|
|
|
|
|
|
|
|
|
| 25 |
|
| 26 |
|
| 27 |
|
|
@@ -34,7 +37,7 @@ shutil.rmtree(tmp, ignore_errors=True)
|
|
| 34 |
os.makedirs(tmp, exist_ok=True)
|
| 35 |
os.environ["TEMP"] = tmp
|
| 36 |
split_model="htdemucs"
|
| 37 |
-
|
| 38 |
# Define the maximum number of concurrent requests
|
| 39 |
MAX_CONCURRENT_REQUESTS = 2 # Adjust this number as needed
|
| 40 |
|
|
@@ -166,7 +169,7 @@ def api_convert_voice():
|
|
| 166 |
vocal_path = f"output/{spk_id}_{unique_id}/{split_model}/{spk_id}_input_audio_{unique_id}/vocals.wav"
|
| 167 |
inst = f"output/{spk_id}_{unique_id}/{split_model}/{spk_id}_input_audio_{unique_id}/no_vocals.wav"
|
| 168 |
print("*****before making call to convert ", unique_id)
|
| 169 |
-
output_path =
|
| 170 |
output_path1= combine_vocal_and_inst(output_path,inst,unique_id)
|
| 171 |
|
| 172 |
processed_audio_storage[unique_id] = output_path1
|
|
@@ -184,6 +187,11 @@ def api_convert_voice():
|
|
| 184 |
#else:
|
| 185 |
# return jsonify({"error": "File not found."}), 404
|
| 186 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 187 |
@app.route('/')
|
| 188 |
def upload_form():
|
| 189 |
return render_template('ui.html')
|
|
|
|
| 22 |
from pydub import AudioSegment
|
| 23 |
import uuid
|
| 24 |
from threading import Semaphore
|
| 25 |
+
from threading import Lock
|
| 26 |
+
|
| 27 |
+
|
| 28 |
|
| 29 |
|
| 30 |
|
|
|
|
| 37 |
os.makedirs(tmp, exist_ok=True)
|
| 38 |
os.environ["TEMP"] = tmp
|
| 39 |
split_model="htdemucs"
|
| 40 |
+
convert_voice_lock = Lock()
|
| 41 |
# Define the maximum number of concurrent requests
|
| 42 |
MAX_CONCURRENT_REQUESTS = 2 # Adjust this number as needed
|
| 43 |
|
|
|
|
| 169 |
vocal_path = f"output/{spk_id}_{unique_id}/{split_model}/{spk_id}_input_audio_{unique_id}/vocals.wav"
|
| 170 |
inst = f"output/{spk_id}_{unique_id}/{split_model}/{spk_id}_input_audio_{unique_id}/no_vocals.wav"
|
| 171 |
print("*****before making call to convert ", unique_id)
|
| 172 |
+
output_path = convert_voice_thread_safe(spk_id, vocal_path, voice_transform,unique_id)
|
| 173 |
output_path1= combine_vocal_and_inst(output_path,inst,unique_id)
|
| 174 |
|
| 175 |
processed_audio_storage[unique_id] = output_path1
|
|
|
|
| 187 |
#else:
|
| 188 |
# return jsonify({"error": "File not found."}), 404
|
| 189 |
|
| 190 |
+
def convert_voice_thread_safe(spk_id, vocal_path, voice_transform, unique_id):
|
| 191 |
+
with convert_voice_lock:
|
| 192 |
+
return convert_voice(spk_id, vocal_path, voice_transform, unique_id)
|
| 193 |
+
|
| 194 |
+
|
| 195 |
@app.route('/')
|
| 196 |
def upload_form():
|
| 197 |
return render_template('ui.html')
|