Ich kann Audio in ein Jupyter-Notizbuch einbetten, aber ich möchte es in eine HTML-Tabelle einbetten, um eine große Menge von Audiodaten aufzulisten und abzuspielen. Mit anderen Worten, ich möchte die folgende Tabelle erstellen.
F0 | Stimme |
---|---|
440Hz | [Spielleiste] |
880Hz | [Spielleiste] |
1320Hz | [Spielleiste] |
Wenn Sie jedoch nur "IPython.display.Audio" anzeigen, wird die Wiedergabeleiste an Ort und Stelle angezeigt und Sie können sie nicht wie oben gezeigt in die Tabelle einbetten.
IPyhton.display.Audio Objekt Audio.src_attr()Da die Audiodaten jedoch base64-codiert sind, ist es eine gute Idee, sie zum Abspielen von HTML zu verwenden.
# Weise
So erstellen Sie einen Tisch für die Wiedergabe von 1 Sekunde Audiodaten mit 440 Hz, 880 Hz und 1320 Hz
```python
from IPython.display import Audio, HTML
import numpy
#Grundeinstellung
duration = 1
fs = 16000
f0s = [440, 880, 1320]
#HTML-Tabelle generieren
html = "<table><tr><th>F0</th><th>Stimme</th></tr>"
for f0 in f0s:
#Audioobjekt generieren
wave = numpy.sin(f0 * 2 * numpy.pi * numpy.linspace(0, duration, duration * 16000))
audio_obj = Audio(data=wave, rate=fs)
#Eingebettetes Audioobjekt
html += """
<tr><td>%s Hz</td><td>
<audio controls>
<source src="%s" type="audio/wav">
</audio></td>
</tr>
""" % (f0, audio_obj.src_attr())
#Tabelle schließen
html += "</table>"
HTML(html)
Jetzt können Sie Audio wie folgt in Tabellenform einbetten.
Recommended Posts