Gram z dźwiękiem wysokim. Chciałbym wygenerować plik MP3 z 1-sekundową serią 15Khz. Czy istnieje prosty sposób na to zrobić z C lub Python? Nie chcę używać MATLAB.Generowanie pliku dźwiękowego z dźwiękiem 15Khz
Odpowiedz
Można użyć modułu Pythona wave
do utworzenia pliku wave, który można następnie skompresować do formatu MP3. Aby utworzyć jeden sekund 15kHz sinusoidy:
import math
import wave
import struct
nchannels = 1
sampwidth = 2
framerate = 44100
nframes = 44100
comptype = "NONE"
compname = "not compressed"
amplitude = 4000
frequency = 15000
wav_file = wave.open('15khz_sine.wav', 'w')
wav_file.setparams((nchannels, sampwidth, framerate, nframes, comptype, compname))
for i in xrange(nframes):
sample = math.sin(2*math.pi*frequency*(float(i)/framerate))*amplitude/2
wav_file.writeframes(struct.pack('h', sample))
wav_file.close()
Czy próbowałeś:
#include<dos.h>
#include<iostream.h>
#include<conio.h>
main()
{
sound(500); // Frequency
delay(1000); // Time
nosound(); // Stop
}
Ta biblioteka to taki podmuch z przeszłości, ale jakie platformy działają dzisiaj? –
Jak to jest wznawiane? Nie tylko przestarzałe praktyki C (ukryte wartości zwracane), ale specyficzne dla platformy, gdy żadna platforma określona w tagach lub pytaniu ... Nie ma też nic wspólnego z generowaniem plików MP3. – dreamlax
chciałbym złamać to na 2 części:
- Utwórz plik wave za pomocą C++ biblioteki (jak libsndfile biblioteka)
- przekonwertować plik Wave mp3 za pomocą narzędzia (np. lame). Jest to narzędzie linii poleceń, które można wywołać również z twojego programu C. patrz
-t
do konwersji fali na mp3.
Jedna rzecz, na którą należy zwrócić uwagę to 15KHz to bardzo wysoka częstotliwość, którą człowiek może usłyszeć i wydaje mi się, że większość głośników nie jest w stanie jej odtwarzać, ponieważ przekracza częstotliwość graniczną. Więc nie zdziw się, jeśli nie usłyszysz wyniku.
+1, ale w zakresie głośników wiele słuchawek ma częstotliwości odpowiedzi do 20 000 Hz. Niezależnie od tego, czy możesz go usłyszeć, to inna historia! – dreamlax
- 1. pocketsphinx_continuous udało się otworzyć urządzenia dźwiękowego
- 2. MEDIA_ERR_SRC_NOT_SUPPORTED problemy z dźwiękiem html5
- 3. Osadź YouTube z wyłączonym dźwiękiem
- 4. Odtwarzanie pliku dźwiękowego z Internetu po kliknięciu przycisku
- 5. Generowanie pliku PDF z OpenXml
- 6. Generowanie pliku Excel z HTML
- 7. Maven generowanie pliku pom
- 8. Sterowanie dźwiękiem MVC odtwarzanie utworu z bajtów
- 9. Generowanie losowego pliku binarnego
- 10. Generowanie unikatowej nazwy pliku
- 11. Jak połączyć wideo w .mp4 z dźwiękiem .wav z offsetem w ffmpeg z wiersza poleceń?
- 12. Jaki typ pliku jest parametrem "fragmentu dźwiękowego" dla audioop?
- 13. Generowanie pliku XML z danych modelu
- 14. VBA - Generowanie pliku Excel z Access (QueryTable)
- 15. Generowanie obrazu kształtu fali z pliku audio
- 16. generowanie formatu pliku a.out z gcc
- 17. Generowanie pliku wojny z katalogu webapp tomcat
- 18. Generowanie spłaszczonego pliku PDF z pythonem
- 19. Generowanie kodu żądania/odpowiedzi z pliku WSDL
- 20. Generowanie pliku XML przy użyciu pliku XSD
- 21. IE (HTTPS): generowanie pliku pdf z pliku php nie działa
- 22. Generowanie pliku PDF w .NET
- 23. Generowanie miniatury dowolnego pliku audio
- 24. Widoki Drupala: Generowanie pliku xml
- 25. Android: odtwarzanie klipu dźwiękowego onClick
- 26. Generowanie pliku CSV w ASP.Net
- 27. Generowanie usługi WWW z pliku WSDL z formatem dokumentu/literału
- 28. Generowanie DataContract z XSD
- 29. Jak wyzwolić z Pythona odtwarzanie pliku dźwiękowego WAV lub MP3 na komputerze Mac?
- 30. iOS 4: Zdalne sterowanie dźwiękiem w tle
pamiętać, że ton 15kHz może mieć wiele kształtów, czyli sinus, kwadrat, trójkąt, piłę i itp – dreamlax
byłbym bardzo zainteresowany w roztworze, który generuje mp3 bezpośrednio. Tworzenie pliku wave i kompresowanie go lame jest dość oczywistym, ale nudnym rozwiązaniem. Niektóre małe C prog, które generują mp3 z tonem (15kHz lub czymkolwiek), które może być odtwarzane przez każdy dekoder byłoby niesamowite. Jakieś maniaki plików mp3 tutaj? –