ellagranger commited on
Commit
5f82d8a
·
1 Parent(s): 171115d

Shape fix

Browse files
Files changed (1) hide show
  1. app.py +11 -6
app.py CHANGED
@@ -3,6 +3,7 @@ from audioseal import AudioSeal
3
  import gradio as gr
4
  import soundfile as sf
5
  import librosa
 
6
 
7
  from pyharp.core import ModelCard, build_endpoint
8
  from pyharp.media.audio import save_audio
@@ -19,24 +20,28 @@ model_card = ModelCard(
19
  print("Initializing AudioSeal model...")
20
  generator = AudioSeal.load_generator("audioseal_wm_16bits")
21
  detector = AudioSeal.load_detector("audioseal_detector_16bits")
 
 
22
 
23
  def load_audio(audio_path):
24
  try:
25
  wav, sr = librosa.load(audio_path, sr=16000, mono=True)
26
- return wav
27
 
28
  except Exception as e:
29
  print(f"Audio preprocessing failed: {e}")
30
  raise ValueError(f"Failed to load audio: {str(e)}")
31
 
32
  def process_fn(inp_audio, option_text):
33
- wav = load_audio(inp_audio)
34
  sr = 16000
35
  if option_text == "Generate Watermark":
36
- watermark = generator.get_watermark(wav, sr)
37
- output_audio = watermark + wav
38
- sig = AudioSignal(output_audio.astype("float32"), sample_rate=sr)
39
- return save_audio(sig)
 
 
40
  else:
41
  result, message = detector.detect_watermark(wav, sr)
42
 
 
3
  import gradio as gr
4
  import soundfile as sf
5
  import librosa
6
+ import torch
7
 
8
  from pyharp.core import ModelCard, build_endpoint
9
  from pyharp.media.audio import save_audio
 
20
  print("Initializing AudioSeal model...")
21
  generator = AudioSeal.load_generator("audioseal_wm_16bits")
22
  detector = AudioSeal.load_detector("audioseal_detector_16bits")
23
+ generator.eval()
24
+ detector.eval()
25
 
26
  def load_audio(audio_path):
27
  try:
28
  wav, sr = librosa.load(audio_path, sr=16000, mono=True)
29
+ return wav[None, None, :]
30
 
31
  except Exception as e:
32
  print(f"Audio preprocessing failed: {e}")
33
  raise ValueError(f"Failed to load audio: {str(e)}")
34
 
35
  def process_fn(inp_audio, option_text):
36
+ wav = torch.from_numpy(load_audio(inp_audio))
37
  sr = 16000
38
  if option_text == "Generate Watermark":
39
+ with torch.no_grad():
40
+ watermark = generator.get_watermark(wav, sr)
41
+ output_audio = watermark + wav
42
+ output_audio = output_audio.detach().cpu().numpy()[0]
43
+ sig = AudioSignal(output_audio.astype("float32"), sample_rate=sr)
44
+ return save_audio(sig)
45
  else:
46
  result, message = detector.detect_watermark(wav, sr)
47