[Python] Essayez d'analyser le fichier wav (Ver sans plug-in supplémentaire)

Le kit GUI par défaut fourni avec Python, Dessinons la forme d'onde wav par la force en utilisant le canevas de tkInter.

Aucun plug-in supplémentaire n'est requis. Tout ce que vous avez à faire est de préparer Python et la source sonore que vous souhaitez lire.

python


#!/usr/bin/env python
# -*- coding: utf8 -*-
import sys
import Tkinter
import wave
import numpy as np

window_width = 600
window_height = 500

root = Tkinter.Tk()
root.title(u"Software Title")
root.geometry(str(window_width) + "x" + str(window_height))

#Lire les données wav
wav = wave.open("./test.wav")

#Aller au début de la partie audio
wav.rewind()

#Lecture binaire
wavdata = wav.readframes(wav.getnframes())

#Convertir en int
wavdata = np.frombuffer(wavdata,'int16')


#
#Zone de toile
#
canvas = Tkinter.Canvas(root, width = window_width, height = window_height)

#Nombre d'étapes sur l'axe X
step = float(window_width)/float(wav.getnframes())
x = 0			#Axe X
b_i = 0			#Valeur précédente

for c,i in enumerate(wavdata):
	#Conservez les coordonnées précédentes
	if (c%2 == 0):
		b_i = i
		x = x + step
		continue
	
	#Créer un graphique de forme d'onde en utilisant les coordonnées précédentes et les coordonnées actuelles
	canvas.create_line(int(x), (b_i/window_height)+(window_height/2), int(x+step), (i/window_height)+(window_height/2), fill = "blue")
	
	#Avancez la coordonnée X pas à pas
	x = x + step
	print "(x,y) = ("+ str(x) +","+ str(i) +")"

#Voie centrale
canvas.create_line(0, window_height/2, window_width, window_height/2, fill = "black")


#
#Reliure en toile
#
canvas.place(x=0,y=0)


#
#fermer wav
#
wav.close()

root.mainloop()

スクリーンショット 2015-06-02 14.44.40.png

Bien que ce soit approximatif, c'est comme ça.

Recommended Posts

[Python] Essayez d'analyser le fichier wav (Ver sans plug-in supplémentaire)
Essayez d'analyser les tendances Twitter
Essayez de comprendre Python soi
[Python] Utilisez ceci pour lire et écrire des fichiers wav [wavio]
Essayez d'analyser le mahjong familial en ligne à l'aide de Python (PARTIE 1: Prendre des données)
Comment lire des fichiers musicaux (wav / mp3) sur Raspberry Pi python
Essayez d'exploiter Facebook avec Python
[Python] Fichiers wav POST avec requêtes [POST]
Conversion MP3 → WAV avec Python
Essayez de calculer Trace en Python
Essayez de convertir la CLI cloudmonkey en python3 -1
Mettez Cabocha 0.68 dans Windows et essayez d'analyser la dépendance avec Python
Essayez de vous connecter à qiita avec Python
Je veux analyser les journaux avec Python
Essayez d'utiliser Excel en utilisant Python (Xlwings)
Python amateur tente de résumer la liste ①
[Python] Ajouter un commentaire au fichier d'entrée standard