fffiloni commited on
Commit
6d9d106
1 Parent(s): 47f0648

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -1
app.py CHANGED
@@ -5,6 +5,7 @@ import shutil
5
  #from huggingface_hub import snapshot_download
6
  import numpy as np
7
  from scipy.io import wavfile
 
8
  """
9
  model_ids = [
10
  'suno/bark',
@@ -25,12 +26,40 @@ model.load_checkpoint(config, checkpoint_dir="checkpoints/bark", eval=True)
25
  from TTS.api import TTS
26
  tts = TTS("tts_models/multilingual/multi-dataset/bark", gpu=True)
27
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
  def infer(prompt, input_wav_file):
29
 
 
 
 
 
30
  print("SAVING THE AUDIO FILE TO WHERE IT BELONGS")
31
 
32
  # Path to your WAV file
33
- source_path = input_wav_file
34
 
35
  # Destination directory
36
  destination_directory = "bark_voices"
 
5
  #from huggingface_hub import snapshot_download
6
  import numpy as np
7
  from scipy.io import wavfile
8
+ from pydub import AudioSegment
9
  """
10
  model_ids = [
11
  'suno/bark',
 
26
  from TTS.api import TTS
27
  tts = TTS("tts_models/multilingual/multi-dataset/bark", gpu=True)
28
 
29
+ def cut_wav(input_path, max_duration):
30
+ # Load the WAV file
31
+ audio = AudioSegment.from_wav(input_path)
32
+
33
+ # Calculate the duration of the audio
34
+ audio_duration = len(audio) / 1000 # Convert milliseconds to seconds
35
+
36
+ # Determine the duration to cut (maximum of max_duration and actual audio duration)
37
+ cut_duration = min(max_duration, audio_duration)
38
+
39
+ # Cut the audio
40
+ cut_audio = audio[:int(cut_duration * 1000)] # Convert seconds to milliseconds
41
+
42
+ # Get the input file name without extension
43
+ file_name = os.path.splitext(os.path.basename(input_path))[0]
44
+
45
+ # Construct the output file path with the original file name and "_cut" suffix
46
+ output_path = f"{file_name}_cut.wav"
47
+
48
+ # Save the cut audio as a new WAV file
49
+ cut_audio.export(output_path, format="wav")
50
+
51
+ return output_path
52
+
53
  def infer(prompt, input_wav_file):
54
 
55
+ print("CUT AUDIO FILE TO MAX 20 SECONDS")
56
+
57
+ cut_input_wav_file = cut_wav(input_wav_file, max_duration=20)
58
+
59
  print("SAVING THE AUDIO FILE TO WHERE IT BELONGS")
60
 
61
  # Path to your WAV file
62
+ source_path = cut_input_wav_file
63
 
64
  # Destination directory
65
  destination_directory = "bark_voices"