kjysmu commited on
Commit
d4fe711
·
verified ·
1 Parent(s): 537c090

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -7
app.py CHANGED
@@ -154,24 +154,48 @@ def resample_waveform(waveform, original_sample_rate, target_sample_rate):
154
  return resampler(waveform), target_sample_rate
155
  return waveform, original_sample_rate
156
 
 
 
 
157
  def split_audio(waveform, sample_rate):
158
  segment_samples = segment_duration * sample_rate
159
  total_samples = waveform.size(0)
160
 
161
  segments = []
162
- for start in range(0, total_samples, segment_samples):
163
- end = start + segment_samples
164
- if end <= total_samples:
 
 
 
 
165
  segment = waveform[start:end]
166
  segments.append(segment)
167
 
168
- # In case audio length is shorter than segment length.
169
- if len(segments) == 0:
170
- segment = waveform
171
- segments.append(segment)
172
 
173
  return segments
174
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
175
 
176
  def safe_remove_dir(directory):
177
  """
 
154
  return resampler(waveform), target_sample_rate
155
  return waveform, original_sample_rate
156
 
157
+
158
+
159
+
160
  def split_audio(waveform, sample_rate):
161
  segment_samples = segment_duration * sample_rate
162
  total_samples = waveform.size(0)
163
 
164
  segments = []
165
+ # If the audio is shorter than the segment duration, just use the entire audio
166
+ if total_samples <= segment_samples:
167
+ segments.append(waveform)
168
+ else:
169
+ # Split the audio into segments of the specified duration
170
+ for start in range(0, total_samples, segment_samples):
171
+ end = min(start + segment_samples, total_samples)
172
  segment = waveform[start:end]
173
  segments.append(segment)
174
 
175
+ # Ensure we have at least one segment
176
+ if len(segments) == 0:
177
+ segments.append(waveform)
 
178
 
179
  return segments
180
 
181
+ # def split_audio(waveform, sample_rate):
182
+ # segment_samples = segment_duration * sample_rate
183
+ # total_samples = waveform.size(0)
184
+
185
+ # segments = []
186
+ # for start in range(0, total_samples, segment_samples):
187
+ # end = start + segment_samples
188
+ # if end <= total_samples:
189
+ # segment = waveform[start:end]
190
+ # segments.append(segment)
191
+
192
+ # # In case audio length is shorter than segment length.
193
+ # if len(segments) == 0:
194
+ # segment = waveform
195
+ # segments.append(segment)
196
+
197
+ # return segments
198
+
199
 
200
  def safe_remove_dir(directory):
201
  """