Spaces:
Running
Running
Synced repo using 'sync_with_huggingface' Github Action
Browse files- gradio_app.py +30 -4
- requirements.txt +7 -4
gradio_app.py
CHANGED
@@ -144,7 +144,7 @@ def generate_hex_random_message(bytes_count):
|
|
144 |
with gr.Blocks(title="AudioSeal") as demo:
|
145 |
gr.Markdown("""
|
146 |
# AudioSeal Demo
|
147 |
-
|
148 |
Find the project [here](https://github.com/facebookresearch/audioseal.git).
|
149 |
""")
|
150 |
|
@@ -181,7 +181,8 @@ with gr.Blocks(title="AudioSeal") as demo:
|
|
181 |
embedding_type.change(
|
182 |
fn=change_embedding_type,
|
183 |
inputs=[embedding_type],
|
184 |
-
outputs=[embedding_msg]
|
|
|
185 |
)
|
186 |
|
187 |
def check_embedding_msg(msg):
|
@@ -192,10 +193,26 @@ with gr.Blocks(title="AudioSeal") as demo:
|
|
192 |
embedding_msg.change(
|
193 |
fn=check_embedding_msg,
|
194 |
inputs=[embedding_msg],
|
195 |
-
outputs=[]
|
|
|
196 |
)
|
197 |
|
198 |
def run_embed_watermark(file, show_specgram, type, msg):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
199 |
if file is None:
|
200 |
raise gr.Erro("No file uploaded", duration=5)
|
201 |
if not re.match(regex_pattern, msg):
|
@@ -234,6 +251,15 @@ with gr.Blocks(title="AudioSeal") as demo:
|
|
234 |
predicted_messages = gr.JSON(label="Detected Messages")
|
235 |
|
236 |
def run_detect_watermark(file):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
237 |
if file is None:
|
238 |
raise gr.Error("No file uploaded", duration=5)
|
239 |
|
@@ -261,4 +287,4 @@ with gr.Blocks(title="AudioSeal") as demo:
|
|
261 |
)
|
262 |
|
263 |
if __name__ == "__main__":
|
264 |
-
demo.launch()
|
|
|
144 |
with gr.Blocks(title="AudioSeal") as demo:
|
145 |
gr.Markdown("""
|
146 |
# AudioSeal Demo
|
147 |
+

|
148 |
Find the project [here](https://github.com/facebookresearch/audioseal.git).
|
149 |
""")
|
150 |
|
|
|
181 |
embedding_type.change(
|
182 |
fn=change_embedding_type,
|
183 |
inputs=[embedding_type],
|
184 |
+
outputs=[embedding_msg],
|
185 |
+
api_name=False
|
186 |
)
|
187 |
|
188 |
def check_embedding_msg(msg):
|
|
|
193 |
embedding_msg.change(
|
194 |
fn=check_embedding_msg,
|
195 |
inputs=[embedding_msg],
|
196 |
+
outputs=[],
|
197 |
+
api_name=False
|
198 |
)
|
199 |
|
200 |
def run_embed_watermark(file, show_specgram, type, msg):
|
201 |
+
"""
|
202 |
+
Embeds a watermark into the given audio file and optionally shows spectrograms.
|
203 |
+
|
204 |
+
Args:
|
205 |
+
file (str): The input file, either a file path.
|
206 |
+
show_specgram (bool): Whether to return spectrograms for debugging.
|
207 |
+
type (str): The type of watermark to embed. Accepts "random" or "input".
|
208 |
+
msg (str): A 2-byte hex string message to embed, e.g., "FFFF".
|
209 |
+
|
210 |
+
Returns:
|
211 |
+
tuple:
|
212 |
+
- filepath: An audio file representing the output with embedded watermark.
|
213 |
+
- dict: A spectrogram image of the original signal (if show_specgram is True).
|
214 |
+
- dict: A spectrogram image of the watermark signal (if show_specgram is True).
|
215 |
+
"""
|
216 |
if file is None:
|
217 |
raise gr.Erro("No file uploaded", duration=5)
|
218 |
if not re.match(regex_pattern, msg):
|
|
|
251 |
predicted_messages = gr.JSON(label="Detected Messages")
|
252 |
|
253 |
def run_detect_watermark(file):
|
254 |
+
"""
|
255 |
+
Detects a watermark in the given audio file.
|
256 |
+
|
257 |
+
Args:
|
258 |
+
file (str): Path to the input audio file.
|
259 |
+
|
260 |
+
Returns:
|
261 |
+
str: A Markdown-formatted string containing detection information.
|
262 |
+
"""
|
263 |
if file is None:
|
264 |
raise gr.Error("No file uploaded", duration=5)
|
265 |
|
|
|
287 |
)
|
288 |
|
289 |
if __name__ == "__main__":
|
290 |
+
demo.launch(server_name="0.0.0.0", server_port=7860, mcp_server=True, ssr_mode=False)
|
requirements.txt
CHANGED
@@ -1,7 +1,10 @@
|
|
1 |
torch==2.5.1
|
2 |
-
gradio==5.
|
3 |
-
huggingface-hub==0.
|
4 |
-
audioseal==0.1.
|
5 |
matplotlib==3.10.0
|
6 |
soundfile==0.12.1
|
7 |
-
torchaudio==2.5.1
|
|
|
|
|
|
|
|
1 |
torch==2.5.1
|
2 |
+
gradio[mcp]==5.28.0
|
3 |
+
huggingface-hub==0.28.1
|
4 |
+
audioseal==0.1.7
|
5 |
matplotlib==3.10.0
|
6 |
soundfile==0.12.1
|
7 |
+
torchaudio==2.5.1
|
8 |
+
|
9 |
+
# gradio[mcp] 5.28.0 depends on pydantic>=2.11
|
10 |
+
pydantic==2.11.4
|